:root{
  --navy:#0a1628; --navy-mid:#112240; --gold:#c9a84c; --gold-light:#e8c97a;
  --cream:#f5f0e8; --white:#fff; --text-muted:#8892a4; --border:rgba(201,168,76,0.15);
}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:'DM Sans',sans-serif;background:#0a1628;color:#dce3ee;line-height:1.7}
body::before{content:'';position:fixed;inset:0;z-index:-1;
  background:radial-gradient(ellipse 80% 50% at 50% 0%,rgba(201,168,76,0.06) 0%,transparent 60%),linear-gradient(160deg,#0a1628,#0d1f3c)}

/* Light mode (app default; toggle persists via localStorage.studyMode) — flip the
   navy palette to cream + override the hardcoded dark body/text and light-on-dark accents. */
body.light-mode{
  --navy:#F5E6C8; --navy-mid:#EEDCB8; --gold:#7B5E2A; --gold-light:#96722E;
  --white:#3A2C18; --text-muted:#8B7355; --border:rgba(95,75,50,0.2);
  background:#FBF0D9; color:#4A3A25;
}
body.light-mode::before{background:radial-gradient(ellipse 80% 50% at 50% 0%,rgba(201,168,76,0.10) 0%,transparent 60%),linear-gradient(160deg,#FBF0D9,#F5E6C8)}
body.light-mode .policy-top{background:rgba(255,255,255,0.82)}
body.light-mode .policy-doc strong{color:#3A2C18}   /* was var(--cream) = near-white */
body.light-mode .policy-doc td{color:#4A3A25}         /* was hardcoded #c4cdda */

/* top bar */
.policy-top{border-bottom:1px solid var(--border);background:rgba(10,22,40,0.85);position:sticky;top:0;z-index:10;backdrop-filter:blur(10px)}
.policy-top-inner{max-width:860px;margin:0 auto;padding:14px 24px;display:flex;align-items:center;justify-content:space-between}
.policy-top .back{color:var(--text-muted);text-decoration:none;font-size:13px;font-weight:600}
.policy-top .back:hover{color:var(--gold)}
.policy-top .brand{font-family:'Playfair Display',serif;font-size:18px;color:var(--white);font-weight:700}
.policy-top .brand span{color:var(--gold)}

/* document */
.policy-doc{max-width:860px;margin:0 auto;padding:44px 24px 60px}
.policy-doc h1{font-family:'Playfair Display',serif;font-size:34px;color:var(--white);margin-bottom:20px;line-height:1.2}
.policy-doc h2{font-family:'Playfair Display',serif;font-size:22px;color:var(--gold-light);margin:34px 0 12px;padding-top:18px;border-top:1px solid var(--border)}
.policy-doc h3{font-size:16px;color:var(--white);font-weight:600;margin:22px 0 8px}
.policy-doc p{margin-bottom:12px;font-size:15px}
.policy-doc strong{color:var(--cream)}
.policy-doc a{color:var(--gold);text-decoration:underline}
.policy-doc code{background:rgba(201,168,76,0.1);border:1px solid var(--border);border-radius:5px;padding:1px 6px;font-size:13px;color:var(--gold-light)}
.policy-doc ul{margin:0 0 14px 22px}
.policy-doc li{margin-bottom:6px;font-size:15px}
.policy-doc hr{border:none;height:1px;background:transparent;margin:8px 0}
.policy-doc blockquote{border-left:3px solid var(--gold);background:rgba(201,168,76,0.06);padding:12px 16px;margin:14px 0;border-radius:0 8px 8px 0;font-size:14.5px}
.policy-doc table{width:100%;border-collapse:collapse;margin:16px 0;font-size:13.5px}
.policy-doc th{text-align:left;background:rgba(201,168,76,0.1);color:var(--gold-light);padding:10px 12px;border:1px solid var(--border);font-weight:600}
.policy-doc td{padding:10px 12px;border:1px solid var(--border);vertical-align:top;color:#c4cdda}
.policy-doc em{color:var(--text-muted);font-style:italic}
@media(max-width:600px){.policy-doc h1{font-size:27px}.policy-doc{padding:28px 18px 48px}.policy-doc table{font-size:12px}}
