:root{--bg:#f3f4f1;--ink:#16202e;--muted:#5d6878;--accent:#1d4ed8;--grass:#15803d;--ice:#0284c7;--card:#fff;--line:#e2e5e9}
body{margin:0;background:var(--bg);color:var(--ink);font-family:'Bricolage Grotesque',sans-serif;
background-image:linear-gradient(90deg,rgba(22,32,46,.035) 1px,transparent 1px),linear-gradient(rgba(22,32,46,.035) 1px,transparent 1px);background-size:32px 32px}
.mono{font-family:'IBM Plex Mono',monospace;font-variant-numeric:tabular-nums}
.card{background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:0 1px 2px rgba(0,0,0,.04),0 6px 18px -10px rgba(22,32,46,.18)}
.rise{animation:rise .45s ease both}
@keyframes rise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.skel{background:linear-gradient(90deg,#eceef1 25%,#f7f8fa 50%,#eceef1 75%);background-size:200% 100%;animation:sh 1.2s infinite;border-radius:8px}
@keyframes sh{to{background-position:-200% 0}}
.na{color:#8a93a0;font-style:italic}
.chip{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;font-size:12px;border:1px solid var(--line);background:#fff}
select,input{font-family:inherit}
.tabnav a.active{color:var(--accent);border-color:var(--accent)}
details summary{cursor:pointer;list-style:none}
details summary::-webkit-details-marker{display:none}