:root{--ground:#151020;--panel:#221a33;--panel-deep:#1b1428;--surface-light:#3b2846;--trim:#7c580a;--trim-soft:rgba(124,88,10,0.45);--ink:#e9d7b0;--ink-soft:#b4a483;--ink-faint:#8b7d63;--gold:#ce8003;--gold-hi:#ffdd65;--gold-pale:#ffe89e;--gem:#5ad8e6;--good:#7db877;--danger:#d06a55;--mono:ui-monospace,"SF Mono",Menlo,Consolas,monospace;--serif:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif}*{box-sizing:border-box}body,html{margin:0;background:var(--ground);color:var(--ink);font-family:var(--serif);font-size:16px;line-height:1.6}a{color:var(--gem)}a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.shell{max-width:1100px;margin:0 auto;padding:0 24px 80px}.topbar{display:flex;align-items:baseline;gap:28px;flex-wrap:wrap;padding:22px 0 14px;border-bottom:1px solid var(--trim-soft)}.topbar .brand{font-size:20px;font-weight:600;color:var(--gold-pale);text-decoration:none;letter-spacing:.01em}.topbar .brand .glyph{color:var(--gold);margin-right:8px}.topbar nav{display:flex;gap:18px;flex-wrap:wrap}.topbar nav a{font-family:var(--mono);font-size:12.5px;letter-spacing:.06em;color:var(--ink-soft);text-decoration:none;text-transform:uppercase;padding:2px 0}.topbar nav a:hover,.topbar nav a[data-active=true]{color:var(--gold-hi)}h1{font-size:30px;margin:34px 0 8px}h1,h2{color:var(--gold-pale);font-weight:600}h2{font-size:21px;margin:28px 0 8px}.sub{color:var(--ink-soft);margin:0 0 24px;max-width:62ch}.panel{background:var(--panel);border:1px solid var(--trim-soft);border-radius:6px;padding:20px 24px;margin:14px 0}.mono{font-family:var(--mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}button.primary{font-family:var(--mono);font-size:13px;letter-spacing:.04em;background:var(--gold);color:#1b1206;border:none;border-radius:4px;padding:9px 18px;cursor:pointer;font-weight:600}button.primary:hover{background:var(--gold-hi)}button.primary:disabled{opacity:.5;cursor:default}input[type=number],input[type=password],input[type=text]{background:var(--panel-deep);border:1px solid var(--trim-soft);border-radius:4px;color:var(--ink);padding:9px 12px;font-family:var(--mono);font-size:14px}.error{color:var(--danger);font-size:14px}@media (prefers-reduced-motion:reduce){*,:after,:before{animation:none!important;transition:none!important}}