:root{
  --bg:#0b1120; --bg2:#111a2e; --card:#141e35; --line:#22304f;
  --ink:#e8ecf5; --mute:#9aa8c2; --gold:#d8b768; --gold2:#f0d493;
  --serif:'Playfair Display',Georgia,serif; --sans:'Inter',system-ui,sans-serif;
  --read:'Lora',Georgia,serif; --wrap:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);
  font-weight:300;line-height:1.65;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
h1,h2,h3,.serif{font-family:var(--serif);font-weight:700;line-height:1.15;margin:0 0 .5em}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 24px}
.eyebrow{font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-bottom:.9rem}
.gold{color:var(--gold)}
.mute{color:var(--mute)}

/* header */
header.site{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;
  gap:20px;padding:14px 28px;background:rgba(11,17,32,.92);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
header.site .brand{font-family:var(--serif);font-size:1.35rem;font-weight:700;color:var(--gold2)}
header.site nav{display:flex;align-items:center;gap:22px;font-size:.9rem}
header.site nav a:hover{color:var(--gold)}

.btn{display:inline-block;background:linear-gradient(135deg,var(--gold),#c39c4d);color:#1b1400;
  padding:13px 26px;border-radius:999px;font-weight:600;font-size:.92rem;border:0;cursor:pointer;
  font-family:var(--sans);transition:transform .15s,box-shadow .15s}
.btn:hover{transform:translateY(-1px);box-shadow:0 8px 24px rgba(216,183,104,.28)}
.btn.small{padding:9px 18px;font-size:.85rem}
.btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--line)}
.btn.ghost:hover{border-color:var(--gold);color:var(--gold);box-shadow:none}
.btn.block{display:block;width:100%;text-align:center}
.btn[disabled]{opacity:.5;pointer-events:none}

.flash{max-width:var(--wrap);margin:16px auto;padding:13px 18px;border-radius:10px;
  background:rgba(216,183,104,.1);border:1px solid rgba(216,183,104,.35);color:var(--gold2);font-size:.92rem}

/* hero */
.hero{padding:86px 24px 70px;background:
  radial-gradient(900px 460px at 78% 18%,rgba(58,44,120,.5),transparent 60%),
  radial-gradient(700px 400px at 8% 78%,rgba(216,183,104,.08),transparent 60%),var(--bg)}
.hero .in{max-width:var(--wrap);margin:0 auto;display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}
.hero h1{font-size:clamp(2.6rem,6vw,4.3rem);margin-bottom:.35em}
.hero p.lede{font-size:1.1rem;color:#c9d3e6;font-style:italic;font-family:var(--read);max-width:34em}
.hero .cta{display:flex;gap:14px;flex-wrap:wrap;margin-top:32px}
.fan{position:relative;height:400px}
.fan img{position:absolute;width:210px;border-radius:6px;box-shadow:0 30px 70px rgba(0,0,0,.6)}
.fan img:nth-child(1){left:2%;top:8%;transform:rotate(-9deg)}
.fan img:nth-child(2){left:26%;top:0;z-index:3}
.fan img:nth-child(3){left:50%;top:8%;transform:rotate(9deg)}

/* sections */
section{padding:80px 0}
.sec-head{text-align:center;max-width:640px;margin:0 auto 52px}
.sec-head h2{font-size:clamp(2rem,4vw,2.9rem)}
.sec-head p{color:var(--mute)}

/* book grid */
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(285px,1fr));gap:30px}
.card{background:var(--card);border:1px solid var(--line);border-radius:16px;overflow:hidden;
  display:flex;flex-direction:column;transition:transform .2s,border-color .2s}
.card:hover{transform:translateY(-4px);border-color:rgba(216,183,104,.45)}
.card .art{padding:26px;background:linear-gradient(160deg,#1a2542,#0d1526);display:flex;justify-content:center}
.card .art img{width:170px;border-radius:4px;box-shadow:0 16px 34px rgba(0,0,0,.55)}
.card .body{padding:22px 24px 26px;display:flex;flex-direction:column;flex:1}
.tags{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px}
.tag{font-size:.68rem;letter-spacing:.13em;text-transform:uppercase;font-weight:600;
  padding:4px 11px;border-radius:999px;background:rgba(216,183,104,.13);color:var(--gold2)}
.tag.fr{background:rgba(126,110,222,.16);color:#b9aef5}
.tag.owned{background:rgba(80,190,140,.16);color:#7fe0b0}
.price{margin-left:auto;color:var(--gold);font-weight:600;font-size:.95rem}
.card h3{font-size:1.22rem;margin-bottom:.35em}
.card .sub{color:var(--gold);font-size:.82rem;margin:-4px 0 10px;font-style:italic}
.card p.desc{color:var(--mute);font-size:.9rem;flex:1}
.meta{display:flex;gap:16px;color:var(--mute);font-size:.78rem;margin:14px 0 18px;
  padding-top:14px;border-top:1px solid var(--line)}

/* detail */
.detail{display:grid;grid-template-columns:330px 1fr;gap:56px;padding:60px 0}
.detail .art img{width:100%;border-radius:8px;box-shadow:0 30px 70px rgba(0,0,0,.6)}
.detail h1{font-size:clamp(2rem,4vw,2.9rem);margin-bottom:.2em}
.detail .sub{color:var(--gold);font-family:var(--read);font-style:italic;font-size:1.15rem;margin-bottom:1.4em}
.buybox{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:24px;margin:28px 0}
.buybox .amt{font-family:var(--serif);font-size:2.3rem;color:var(--gold2);line-height:1}
.toclist{margin-top:14px;border-top:1px solid var(--line)}
.toclist a,.toclist div{display:flex;gap:14px;padding:12px 4px;border-bottom:1px solid var(--line);font-size:.93rem}
.toclist .n{color:var(--gold);font-family:var(--serif);min-width:32px}
.toclist a:hover{color:var(--gold)}

/* forms */
.auth{max-width:430px;margin:70px auto;padding:0 24px}
.panel{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:34px}
label{display:block;font-size:.85rem;color:var(--mute);margin:16px 0 7px}
input[type=text],input[type=email],input[type=password]{width:100%;padding:13px 15px;border-radius:9px;
  background:#0d1628;border:1px solid var(--line);color:var(--ink);font-family:var(--sans);font-size:.97rem}
input:focus{outline:none;border-color:var(--gold)}
.err{background:rgba(220,90,90,.12);border:1px solid rgba(220,90,90,.4);color:#ff9d9d;
  padding:12px 15px;border-radius:9px;font-size:.9rem;margin-bottom:8px}
.alt{text-align:center;margin-top:20px;font-size:.9rem;color:var(--mute)}
.alt a{color:var(--gold)}

/* footer */
footer.site{border-top:1px solid var(--line);background:#080d18;padding:56px 28px 30px;
  display:grid;grid-template-columns:2fr 1fr 1fr;gap:36px;max-width:var(--wrap);margin:60px auto 0}
footer.site strong{display:block;font-family:var(--serif);margin-bottom:14px;color:var(--gold2)}
footer.site a{display:block;color:var(--mute);font-size:.88rem;margin-bottom:9px}
footer.site a:hover{color:var(--gold)}
footer.site p{color:var(--mute);font-size:.88rem;max-width:32em}
.fbot{grid-column:1/-1;border-top:1px solid var(--line);padding-top:22px;color:#63718c;font-size:.82rem}

@media(max-width:900px){
  .hero .in,.detail{grid-template-columns:1fr}
  .fan{height:300px}.fan img{width:150px}
  footer.site{grid-template-columns:1fr}
  header.site{flex-wrap:wrap;gap:12px;padding:12px 18px}
  header.site nav{gap:14px;font-size:.85rem}
}

/* visually hidden, still read by screen readers and search engines */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0}

/* AI research acknowledgement in the footer */
.ai-note{display:block;margin-top:.5rem;max-width:64ch;font-size:.82em;line-height:1.55;opacity:.68}

/* homepage banner hero: match the centred content column */
.hero.banner{padding:40px 24px 56px;background:none}
.hero.banner picture{display:block;max-width:var(--wrap);margin:0 auto}
.hero.banner picture img{display:block;width:100%;height:auto;border-radius:14px;
  box-shadow:0 20px 56px rgba(0,0,0,.5);background:#0b1120}
.hero.banner .hero-cta{max-width:var(--wrap);margin:34px auto 0}
@media(max-width:820px){
  .hero.banner{padding:22px 16px 38px}
  .hero.banner picture img{border-radius:10px;box-shadow:0 12px 32px rgba(0,0,0,.45)}
  .hero.banner .hero-cta{margin-top:26px}
}

/* external (Gumroad) titles inside the book grid */
.card.ext{border:1px solid rgba(216,183,104,.28)}
.card.ext .art{background:#0f1526}
.card.ext .art img{object-fit:contain}
.tag.ext-tag{background:rgba(216,183,104,.14);color:#d8b768}
.ext-note{margin:.45rem 0 0;font-size:.84em;line-height:1.5;opacity:.62}
.btn.ext-btn{background:transparent;color:#d8b768;border:1px solid rgba(216,183,104,.55)}
.btn.ext-btn:hover{background:rgba(216,183,104,.12)}

/* ---- admin dashboard ---- */
.adm{padding:40px 24px 80px}
.adm .ah{margin:38px 0 12px;font-size:1.15rem;color:#d8b768;letter-spacing:.02em}
.adm .muted{opacity:.6}
.adm .muted.sm{font-size:.85em;margin-top:-6px}
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-top:18px}
.kpi{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);border-radius:12px;padding:16px 18px;display:flex;flex-direction:column;gap:4px}
.kpi.warn{border-color:rgba(216,183,104,.45)}
.kpi .k{font-size:.78em;text-transform:uppercase;letter-spacing:.08em;opacity:.6}
.kpi strong{font-size:1.7rem;font-weight:500;line-height:1.1}
.kpi .s{font-size:.82em;opacity:.55}
.atbl{width:100%;border-collapse:collapse;margin-top:6px;font-size:.93em}
.atbl th{text-align:left;font-weight:500;font-size:.78em;text-transform:uppercase;letter-spacing:.07em;opacity:.55;padding:8px 12px;border-bottom:1px solid rgba(255,255,255,.1)}
.atbl td{padding:11px 12px;border-bottom:1px solid rgba(255,255,255,.05);vertical-align:top}
.atbl tr:hover td{background:rgba(255,255,255,.02)}
.atbl .em{display:block;font-size:.82em;opacity:.5}
.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#5fd08a;margin-right:7px;vertical-align:middle;box-shadow:0 0 0 3px rgba(95,208,138,.16)}
.pill{display:inline-block;padding:2px 9px;border-radius:999px;font-size:.8em;background:rgba(255,255,255,.08)}
.pill.paid{background:rgba(95,208,138,.16);color:#8fe0ae}
.pill.pending{background:rgba(216,183,104,.16);color:#d8b768}
.pill.refunded{background:rgba(255,120,120,.14);color:#ff9d9d}
@media(max-width:640px){.atbl{font-size:.85em}.atbl th,.atbl td{padding:8px 6px}}

/* trial offer panel + book-page trial note */
.trialform{margin-top:10px}
.tgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:8px 18px;margin:10px 0 16px}
.tchk{display:flex;align-items:center;gap:9px;font-size:.93em;opacity:.9;cursor:pointer}
.tchk input{width:16px;height:16px;accent-color:#d8b768;cursor:pointer}
.trow{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.trow label{font-size:.9em;opacity:.75;display:flex;align-items:center;gap:8px}
.trow input[type=number]{width:78px;padding:7px 9px;border-radius:8px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.04);color:inherit}
.trialnote{margin:.6rem 0 0;font-size:.86em;line-height:1.5;opacity:.62;text-align:center}
.trialnote.live{opacity:.95;color:#d8b768}

/* admin email settings */
.mgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px 18px;margin:12px 0 16px;max-width:820px}
.mgrid label{display:flex;flex-direction:column;gap:5px;font-size:.82em;opacity:.7}
.mgrid input{padding:9px 11px;border-radius:8px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.04);color:inherit;font-size:1rem}
.mgrid input:focus{outline:none;border-color:rgba(216,183,104,.6)}
.mailerr{color:#ff9d9d;font-size:.9em}

/* country choice above the buy button */
.ctry{display:block;margin:0 0 12px;font-size:.8rem;letter-spacing:.02em;color:var(--mute)}
.ctry select{display:block;width:100%;margin-top:6px;padding:11px 12px;
  border:1px solid var(--line);border-radius:6px;background:var(--card);
  font:inherit;font-size:.95rem;color:var(--ink);cursor:pointer}
.ctry select:focus-visible{outline:2px solid var(--gold);outline-offset:2px}

/* brand lockup — badge + wordmark */
.brand{display:inline-flex;align-items:center;gap:13px;line-height:1}
.brand img{width:48px;height:48px;display:block;flex:none}
@media (max-width:640px){
  .brand{gap:9px}
  .brand img{width:38px;height:38px}
}

/* ── Interaction: the weekly question ───────────────────────────── */
.qwrap{max-width:640px;padding:52px 20px 70px;margin:0 auto}
.qhead{text-align:center;margin-bottom:26px}
.qhead h1{font-family:var(--serif);font-size:2rem;line-height:1.2;margin:8px 0 0;color:var(--ink)}
.qsub{font-family:var(--serif);font-size:1.05rem;font-style:italic;color:var(--mute);margin:4px 0 0}
.qintro{font-size:.9rem;line-height:1.75;margin:16px auto 0;max-width:520px}
.qen{opacity:.72}
.qpanel{padding:26px 26px 28px;margin-top:18px}
.qquiet{text-align:center}
.qlabel{font-size:.68rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);margin-bottom:8px}
.qlabel2{margin-top:22px}
.qq{font-family:var(--serif);font-size:1.28rem;line-height:1.5;margin:0;color:var(--ink)}
.qq2{font-size:1.06rem;color:var(--mute);font-style:italic}
.qprize{display:flex;gap:16px;align-items:center;margin-top:24px;padding-top:22px;
        border-top:1px solid var(--line)}
.qprize img{width:62px;height:auto;border-radius:3px;flex:none;box-shadow:0 4px 14px rgba(0,0,0,.4)}
.qprize-lab{font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}
.qprize-title{font-family:var(--serif);font-size:1.05rem;margin-top:4px;color:var(--ink)}
.qprize-meta{font-size:.78rem;margin-top:4px;line-height:1.5}
.qclose{font-size:.78rem;margin:18px 0 0}
.qform{margin:0}
.qlab{display:block;font-size:.78rem;letter-spacing:.02em;color:var(--mute);margin-bottom:8px}
.qinput{width:100%;padding:13px 14px;border:1px solid var(--line);border-radius:6px;
        background:var(--card);color:var(--ink);font:inherit;font-size:1rem}
.qinput:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.qnote{font-size:.78rem;margin:14px 0 0;line-height:1.6}
.qbig{font-family:var(--serif);font-size:1.5rem;margin-bottom:10px;color:var(--ink)}
.qwin{border-color:rgba(160,138,75,.5)}
.qwin .qbig{color:var(--gold)}
.qmiss .qbig{color:var(--mute)}
.qfoot{text-align:center;font-size:.78rem;margin-top:30px;line-height:1.7}
@media (max-width:600px){
  .qwrap{padding:34px 16px 54px}
  .qhead h1{font-size:1.6rem}
  .qq{font-size:1.12rem}
  .qpanel{padding:20px}
}

/* Interaction admin */
.qadmin label{display:block;margin:0 0 16px;font-size:.82rem;color:var(--mute)}
.qadmin textarea,.qadmin input[type=date],.qadmin select{
  display:block;width:100%;margin-top:7px;padding:11px 12px;border:1px solid var(--line);
  border-radius:6px;background:var(--card);color:var(--ink);font:inherit;font-size:.95rem}
.qadmin textarea{resize:vertical;line-height:1.55}
.qadmin textarea:focus-visible,.qadmin input:focus-visible,.qadmin select:focus-visible{
  outline:2px solid var(--gold);outline-offset:2px}
.qgrid{display:grid;grid-template-columns:2fr 1fr 1fr 1.4fr;gap:14px;align-items:end}
.qgrid label{margin:0}
.sqlbox{background:rgba(0,0,0,.35);border:1px solid var(--line);border-radius:6px;padding:16px;
  font:11px/1.55 ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--ink);
  white-space:pre;overflow:auto;margin-top:14px;max-height:340px}
.pill.ok{background:rgba(160,138,75,.18);color:var(--gold);border-color:rgba(160,138,75,.45)}
@media (max-width:640px){ .qgrid{grid-template-columns:1fr} }

.admnav{display:flex;justify-content:center;margin:0 0 26px}
.admnav .btn{font-size:.86rem;padding:10px 20px}

/* the weekly question call to action */
.btn.red{background:#c0342b;border-color:#c0342b;color:#fff}
.btn.red:hover{background:#a62a22;border-color:#a62a22;color:#fff}
.btn.red:focus-visible{outline:2px solid #fff;outline-offset:2px}
@media (max-width:640px){ .btn.red{font-size:.86rem} }

/* ═══════════════════════════════════════════════════════════════════
   LIGHT THEME — paper palette taken from the banner.
   Everything below overrides the dark theme above it. To go back to
   dark, delete from this line to the end of the file. Nothing else
   in this stylesheet was changed.
   ═══════════════════════════════════════════════════════════════ */
:root{
  --bg:#f4efe5; --bg2:#eae3d6; --card:#fffdf8; --line:#ddd2c1;
  --ink:#111b2f; --mute:#6d6558; --gold:#8a6a24; --gold2:#7a5c1e;
  --fill:#b8912f;              /* bright gold: fills only, never text */
  --shadow:rgba(58,44,20,.13);
}
body{background:var(--bg);color:var(--ink)}

/* chrome */
header.site{background:rgba(244,239,229,.90);border-bottom:1px solid var(--line)}
header.site nav a{color:#4a4438}
header.site nav a:hover{color:var(--gold)}
footer.site{background:#eae3d6;border-top:1px solid var(--line)}
.fbot{color:#6d6558;border-top:1px solid var(--line)}

/* hero */
.hero{background:none}
.hero p.lede{color:#5f584c}
.hero.banner picture img{box-shadow:0 16px 42px var(--shadow);background:#e9e2d5}
@media(max-width:820px){.hero.banner picture img{box-shadow:0 10px 26px var(--shadow)}}
.fan img{box-shadow:0 24px 54px var(--shadow)}

/* buttons — bright gold stays a fill, with dark text on top */
.btn{background:linear-gradient(135deg,var(--fill),#a8802a);color:#161006}
.btn:hover{box-shadow:0 8px 22px rgba(184,145,47,.34)}
.btn.ghost{background:transparent;border:1px solid #c9bda8;color:#3a3428}
.btn.ghost:hover{background:rgba(138,106,36,.08);color:var(--gold)}
.btn.red{background:#a82a22;border-color:#a82a22;color:#fff}
.btn.red:hover{background:#8f231c;border-color:#8f231c;color:#fff}

/* cards */
.card{box-shadow:0 2px 10px rgba(58,44,20,.07)}
.card:hover{box-shadow:0 14px 30px var(--shadow)}
.card .art{background:linear-gradient(160deg,#efe8dc,#e4dccd)}
.card .art img{box-shadow:0 14px 30px rgba(58,44,20,.22)}
.detail .art img{box-shadow:0 24px 54px rgba(58,44,20,.22)}
.card.ext .art{background:#efe8dc}

/* tags, pills, notices */
.tag{background:rgba(138,106,36,.12);color:var(--gold)}
.tag.fr{background:rgba(91,79,190,.12);color:#5348a8}
.tag.owned{background:rgba(31,122,84,.14);color:#1c6f4c}
.tag.ext-tag{background:rgba(138,106,36,.12);color:var(--gold)}
.flash{background:rgba(184,145,47,.14);border:1px solid rgba(138,106,36,.34);color:#6f5418}
.err{background:rgba(168,42,34,.09);border:1px solid rgba(168,42,34,.32);color:#96271f}
.mailerr{color:#96271f}
.btn.ext-btn{color:var(--gold);border:1px solid rgba(138,106,36,.45)}
.btn.ext-btn:hover{background:rgba(138,106,36,.10)}

/* forms */
input,textarea,select{background:var(--card);border-color:var(--line);color:var(--ink)}
.trow input[type=number],.mgrid input{border:1px solid var(--line);background:var(--card);color:var(--ink)}
.tchk input{accent-color:var(--fill)}

/* admin */
.adm .ah{color:var(--gold)}
.kpi{background:var(--card);border:1px solid var(--line)}
.kpi.warn{border-color:rgba(138,106,36,.5)}
.atbl th{color:var(--mute);border-bottom:1px solid var(--line)}
.atbl td{border-bottom:1px solid rgba(58,44,20,.09)}
.atbl tr:hover td{background:rgba(58,44,20,.035)}
.pill{background:rgba(58,44,20,.07)}
.pill.paid{background:rgba(31,122,84,.14);color:#1c6f4c}
.pill.pending{background:rgba(184,145,47,.16);color:#6f5418}
.pill.refunded{background:rgba(168,42,34,.12);color:#96271f}
.pill.ok{background:rgba(184,145,47,.16);color:#6f5418;border-color:rgba(138,106,36,.4)}
.dot{background:#2f9e63;box-shadow:0 0 3px rgba(47,158,99,.25)}
.sqlbox{background:rgba(58,44,20,.05);border:1px solid var(--line);color:#2c2618}

/* interaction */
.trialnote.live{color:var(--gold)}
.qprize img{box-shadow:0 4px 14px rgba(58,44,20,.22)}
.qwin{border-color:rgba(138,106,36,.5)}
/* the second-language line was too faint on paper */
.qen{opacity:.86;color:#5f584c}
.qintro{color:#5b5347}
.qnote,.qfoot{color:#5f584c}

/* form fields on paper — the dark theme hardcoded a navy fill on
   input[type=...], which outranks a plain .class rule, so these have to
   match that specificity to win. */
input[type="text"],input[type="email"],input[type="password"],
input[type="search"],input[type="url"],input[type="tel"],
input[type="number"],input[type="date"],textarea,select{
  background:var(--card);border:1px solid var(--line);color:var(--ink)}
input[type="text"]::placeholder,input[type="email"]::placeholder,
input[type="password"]::placeholder,textarea::placeholder{color:#a09788}
input::placeholder,textarea::placeholder{color:#a09788}
input[type="text"]:focus,input[type="email"]:focus,input[type="password"]:focus,
input[type="number"]:focus,input[type="date"]:focus,textarea:focus,select:focus{
  border-color:rgba(138,106,36,.55);outline:none}
input:-webkit-autofill,input:-webkit-autofill:focus{
  -webkit-box-shadow:0 0 0 1000px var(--card) inset;-webkit-text-fill-color:var(--ink)}
:root{color-scheme:light}

/* admin security page */
.secgrid{display:grid;grid-template-columns:auto 1fr;gap:22px;align-items:start}
.qrbox{background:#fffdf8;border:1px solid var(--line);border-radius:10px;padding:12px;line-height:0}
.qrbox img,.qrbox canvas{display:block}
.seckey{font:1rem/1.7 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.06em;
  color:var(--ink);background:rgba(58,44,20,.05);border:1px solid var(--line);
  border-radius:6px;padding:10px 12px;margin:8px 0 12px;word-break:break-all}
.admnav{gap:10px}
@media(max-width:640px){.secgrid{grid-template-columns:1fr}}
