/* Real AI Ludo — shared styles for the standalone document pages (privacy, terms, data-deletion)
   and the 404 page. Extracted verbatim from the former per-page inline <style> blocks so the strict
   CSP (style-src 'self', NO 'unsafe-inline') can apply them. Scoped by a <body> class:
   .doc = light legal document layout; .err = dark centered 404. Visual output is byte-for-byte
   equivalent to the previous inline styles. */

/* ---- Legal document pages: privacy.html, terms.html, data-deletion.html (<body class="doc">) ---- */
body.doc { margin: 0; font: 16px/1.6 system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; color: #10231f; background: #f5fff9; }
body.doc header { background: #0c4329; padding: 12px 18px; }
body.doc header a { color: #f4cd66; font-weight: 800; text-decoration: none; display: inline-flex; align-items: center; gap: 9px; min-height: 44px; }
body.doc header img { width: 30px; height: 30px; border-radius: 8px; }
body.doc main { max-width: 860px; margin: 0 auto; padding: 32px 18px 48px; }
body.doc h1, body.doc h2 { color: #09382f; line-height: 1.15; }
body.doc h1 { font-size: 2rem; }
body.doc h2 { margin-top: 28px; font-size: 1.25rem; }
body.doc a { color: #075fa8; }
body.doc .note { padding: 12px 14px; border: 1px solid #b8e3d2; border-radius: 10px; background: #ffffff; }
body.doc footer { max-width: 860px; margin: 0 auto; padding: 0 18px 40px; color: #4c635b; font-size: .9rem; }
body.doc :focus-visible { outline: 3px solid #075fa8; outline-offset: 2px; }

/* ---- 404 page: 404.html (<body class="err">) ---- */
body.err { margin: 0; min-height: 100vh; display: grid; place-items: center; text-align: center;
  font: 17px/1.6 system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; color: #f5ecd4; background: #0e4b2d; }
body.err main { padding: 32px 20px; }
body.err img { width: 84px; height: 84px; border-radius: 20px; margin: 0 auto 18px; display: block; }
body.err h1 { font-size: 2rem; color: #fff; margin: 0 0 8px; }
body.err p { color: #cfdcc9; margin: 0 0 22px; }
body.err a.btn { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 12px 26px;
  border-radius: 999px; background: linear-gradient(135deg, #ffe49a, #f4cd66 45%, #b9822a); color: #3a2a05;
  font-weight: 800; text-decoration: none; }
body.err :focus-visible { outline: 3px solid #8fd8ff; outline-offset: 2px; }
