:root{--ink: #0b1a2e;--paper: #f7f1e6;--card: #fffaf1;--line: #e3d8c4;--line-soft: #efe5d2;--muted: #6b6457;--accent: #e8573f;--good: #2fae6a;--good-soft: #d6f3e2;--night: #08121f;--night-2: #1d3a5f;--gold: #ffcf4a;--tier-1: #bfe8cf;--tier-2: #f6e08a;--tier-3: #f7c08a;--tier-4: #f2a59c;--radius: 14px;--serif: "Fraunces", Georgia, serif;--sans: system-ui, -apple-system, "Segoe UI", sans-serif;--ease-out: cubic-bezier(.23, 1, .32, 1);--ease-in-out: cubic-bezier(.77, 0, .175, 1);color-scheme:light}*{box-sizing:border-box}html,body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.45 var(--sans);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}a{color:inherit}h1,h2,h3,.serif{font-family:var(--serif);font-weight:500;letter-spacing:-.01em}button{font:inherit;color:inherit}.tnum{font-variant-numeric:tabular-nums}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-radius:999px;padding:11px 18px;font:600 15px var(--sans);background:var(--ink);color:#fff;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:6px;transition:transform .16s var(--ease-out),opacity .15s ease;touch-action:manipulation}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.35;cursor:not-allowed}.btn.accent{background:var(--accent)}.btn.ghost{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--line)}.btn.small{padding:7px 12px;font-size:13px}.btn:focus-visible,.icon-btn:focus-visible,input:focus-visible{outline:2.5px solid #3b6fd8;outline-offset:2px}.icon-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;cursor:pointer;font-size:18px;transition:transform .16s var(--ease-out)}.icon-btn:active{transform:scale(.94)}@media (hover: hover) and (pointer: fine){.icon-btn:hover{background:var(--line-soft)}}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius)}.pill{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;background:var(--line-soft);font-size:13px;color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes rise{0%{opacity:0;transform:translateY(6px)}}@keyframes pop{0%{opacity:0;transform:scale(.96)}}@keyframes fade{0%{opacity:0}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.12s!important;animation-name:fade!important;transition-property:opacity,background-color,color,box-shadow!important}}
