:root{
  --bg:#120d0a; --bg2:#1d1510; --panel:rgba(24,17,12,.82); --line:rgba(232,176,74,.28);
  --gold:#e8b04a; --gold2:#f6d58e; --ink:#f3e9d8; --muted:#bfae95; --ok:#6fc3a8; --bad:#e07a6a;
  --qa:#e07a6a; --qb:#8fa8f0; --qc:#e8b04a; --qd:#6fc3a8;
  --r:1rem;
  color-scheme:dark;
}
*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}
html,body{height:100%}
body{background:var(--bg);color:var(--ink);font-family:"Nunito","Segoe UI",system-ui,sans-serif;line-height:1.4;overflow-x:hidden}
h1,h2,h3,.serif{font-family:"Cormorant Garamond","Georgia",serif;font-weight:700;letter-spacing:-.01em}
button{font:inherit;color:inherit;border:0;background:none;cursor:pointer;touch-action:manipulation}
button:focus-visible,input:focus-visible{outline:3px solid var(--gold2);outline-offset:3px}
.hidden{display:none!important}
.chip{display:inline-flex;align-items:center;gap:.4em;padding:.3em .8em;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);font-weight:700}
.dot{width:.7em;height:.7em;border-radius:50%;display:inline-block}
.fade-in{animation:fadeIn .5s ease both}
@keyframes fadeIn{from{opacity:0;transform:translateY(.6rem)}to{opacity:1;transform:none}}
@keyframes pop{0%{transform:scale(.92);opacity:0}60%{transform:scale(1.03);opacity:1}100%{transform:scale(1)}}
@keyframes shake{0%,100%{transform:none}25%{transform:translateX(-.4rem)}75%{transform:translateX(.4rem)}}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
@media (prefers-reduced-transparency:reduce){:root{--panel:#1d1510}}
@media (prefers-contrast:more){:root{--muted:#e6dccb;--line:var(--gold)}}
