/* Calm theme: low-contrast-glare palettes, no neon, no grid, roomier type. Loaded last so it overrides style.css and ui.css. */
:root[data-theme="light"]{--bg:#f6f3ec;--panel:#fffdf9;--panel2:#efeadf;--sunk:#f0ece3;--line:#d9d2c2;--text:#2b2823;--mute:#665f53;--cy:#0f766e;--gold:#8f6310;--pink:#b03a63;--green:#2c7a52;--red:#bd3a2c;--on:#ffffff;--side-bg:#eee9dd;--shadow:0 1px 2px rgba(60,50,30,.08);color-scheme:light}
:root[data-theme="dark"]{--bg:#1d1f23;--panel:#262a30;--panel2:#2e333a;--sunk:#1a1c20;--line:#3b414a;--text:#e4e1da;--mute:#a29d92;--cy:#74c7c1;--gold:#dcb872;--pink:#e594b2;--green:#92d3a0;--red:#ec8b8b;--on:#10201f;--side-bg:#191b1f;--shadow:none;color-scheme:dark}
html{font-size:17px}
body{background:var(--bg)!important;background-image:none!important;line-height:1.72;color:var(--text);-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{letter-spacing:0}
/* surfaces that were hard-coded dark navy */
code,.bar,.choice .key,.ain,.tpl,.fld input,.fld select,kbd,.mfprev,.mfpad button,.demo select{background:var(--sunk)!important}
#side{background:var(--side-bg)!important;border-right:1px solid var(--line)!important;box-shadow:none}
.topbar{background:color-mix(in srgb,var(--bg) 92%,transparent)!important;border-bottom:1px solid var(--line)!important;backdrop-filter:blur(6px)}
/* text colour on accent fills */
.btn,.tabs a.on,.seg button.on,.mode button.on,.choice.sel .key,.chk.done,.dhead span,#calc .keys .eq{color:var(--on)!important}
.btn.ghost{color:var(--text)!important;background:transparent!important;border-color:var(--line)!important}
.btn.ghost:hover{border-color:var(--cy)!important}
.btn.gold{background:var(--gold)!important;color:var(--on)!important}
.btn{box-shadow:none!important}
.nbadge{color:#fff!important;background:var(--pink)!important}
/* sidebar navigation */
#side #nav a{color:var(--text)!important}
#side #nav a:hover{background:color-mix(in srgb,var(--text) 6%,transparent)!important}
#side #nav a.on{background:var(--panel)!important;color:var(--text)!important;box-shadow:var(--shadow)}
.ngroup{color:var(--mute)!important}
.logo b{color:var(--text)}.lint{color:var(--cy)}
/* quieter cards */
.hero,.uhead{background:var(--panel)!important;box-shadow:var(--shadow)}
.ucard::before{display:none!important}
.ucard{background:var(--panel)}.ucard:hover{transform:none!important;box-shadow:0 6px 18px -12px rgba(0,0,0,.35)!important;border-color:var(--c)}
.qcard,.notes,.mcard,.frqpart{box-shadow:var(--shadow)!important;background:var(--panel)}
.mcard:hover{border-color:var(--cy)}
.k{background:color-mix(in srgb,var(--cy) 9%,var(--panel))!important}
.w{background:color-mix(in srgb,var(--pink) 9%,var(--panel))!important}
.x{background:color-mix(in srgb,var(--gold) 10%,var(--panel))!important}
.choice{background:var(--panel)}.choice:hover{border-color:var(--cy)}
.choice.sel{background:color-mix(in srgb,var(--cy) 12%,var(--panel))!important}
.fback{background:color-mix(in srgb,var(--gold) 10%,var(--panel))!important}
.fcard .fface{background:var(--panel)}
.bar i{background:var(--c,var(--cy))!important}
.hpbar i{background:var(--red)!important}
.tnum{background:color-mix(in srgb,var(--c) 16%,transparent)!important;color:var(--c)!important}
.herostats div,.ach,.wtable{background:var(--panel)}
.notes{line-height:1.8}.notes p,.notes li{max-width:74ch}
.notes table{font-size:.95rem}
th{background:var(--panel2)}
.katex{font-size:1.06em}
code{color:var(--gold)}
a{color:var(--cy)}
.toast{box-shadow:0 6px 18px rgba(0,0,0,.2)!important}
:focus-visible{outline:2px solid var(--cy);outline-offset:2px}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
/* calculator + theme button */
#themebtn{display:grid!important}
#calc{background:var(--panel)!important;box-shadow:0 14px 40px rgba(0,0,0,.25)!important}
#calc input,#calc .keys button{background:var(--sunk)!important;color:var(--text)}
#calc .keys .eq{background:var(--cy)!important}
#calc .res{color:var(--cy)}
