:root{--ground:#f5f7f9;--surface:#fff;--surface-2:#eaeef2;--ink:#0d1519;--ink-2:#445159;--ink-3:#6f7f89;--rule:#d3dce2;--accent:#0a6c9e;--accent-ink:#fff;--accent-soft:#dceaf3;--good:#1f6b4d;--good-soft:#d9ece3;--warn:#8a5a12;--radius:10px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--ground:#0a0e12;--surface:#131a20;--surface-2:#1b242c;--ink:#e9f0f4;--ink-2:#adbcc6;--ink-3:#7a8b96;--rule:#253039;--accent:#4cb8e8;--accent-ink:#04141d;--accent-soft:#102c3b;--good:#6fc79f;--good-soft:#10291f;--warn:#d9ab63}}:root[data-theme=dark]{--ground:#0a0e12;--surface:#131a20;--surface-2:#1b242c;--ink:#e9f0f4;--ink-2:#adbcc6;--ink-3:#7a8b96;--rule:#253039;--accent:#4cb8e8;--accent-ink:#04141d;--accent-soft:#102c3b;--good:#6fc79f;--good-soft:#10291f;--warn:#d9ab63}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--ground);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:ui-sans-serif,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:16px;line-height:1.5}a{color:var(--accent);text-underline-offset:.18em}.mono{font-variant-numeric:tabular-nums;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace}.wrap{max-width:46rem;margin:0 auto;padding:2rem 1.1rem 4rem}.top{border-bottom:1px solid var(--rule);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:1.75rem;padding-bottom:1rem;display:flex}.brand{letter-spacing:-.015em;margin:0;font-size:1.1rem;font-weight:650}.brand span{color:var(--accent)}.eyebrow{letter-spacing:.13em;text-transform:uppercase;color:var(--ink-3);margin:0 0 .35rem;font-size:.7rem;font-weight:600}h1{letter-spacing:-.022em;text-wrap:balance;margin:0 0 .3rem;font-size:1.6rem;line-height:1.15}h2{letter-spacing:-.01em;margin:0 0 .2rem;font-size:1.05rem}p{color:var(--ink-2);margin:0 0 .9rem}.list{gap:.6rem;margin:1.25rem 0 0;padding:0;list-style:none;display:grid}.card{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius);color:inherit;padding:.95rem 1.05rem;text-decoration:none;display:block}a.card:hover{border-color:var(--accent)}a.card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.row{justify-content:space-between;align-items:center;gap:1rem;display:flex}.meta{color:var(--ink-3);margin:.2rem 0 0;font-size:.82rem}.tag{letter-spacing:.07em;text-transform:uppercase;background:var(--surface-2);color:var(--ink-2);white-space:nowrap;border-radius:4px;padding:.2rem .45rem;font-size:.68rem;font-weight:600}.tag.latest{background:var(--good-soft);color:var(--good)}.btn{text-align:center;background:var(--accent);width:100%;color:var(--accent-ink);border-radius:var(--radius);cursor:pointer;border:none;padding:1rem 1.25rem;font-family:inherit;font-size:1.05rem;font-weight:650;text-decoration:none;display:block}.btn:active{opacity:.88}.btn:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.btn.secondary{background:var(--surface-2);color:var(--ink)}.field{border-radius:var(--radius);border:1px solid var(--rule);background:var(--surface);width:100%;color:var(--ink);margin-bottom:.7rem;padding:.8rem .9rem;font-family:inherit;font-size:1rem}.field:focus-visible{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}.notice{background:var(--accent-soft);border:1px solid var(--rule);border-radius:var(--radius);color:var(--ink-2);margin:1.25rem 0 0;padding:.85rem 1rem;font-size:.88rem}.notice strong{color:var(--ink)}.err{background:var(--surface-2);border-left:3px solid var(--warn);border-radius:4px;margin-bottom:.9rem;padding:.6rem .8rem;font-size:.88rem}.empty{color:var(--ink-3);text-align:center;padding:2rem 0;font-size:.95rem}.kv{gap:.4rem;margin:1.25rem 0 0;font-size:.86rem;display:grid}.kv div{border-bottom:1px solid var(--rule);justify-content:space-between;gap:1rem;padding-bottom:.4rem;display:flex}.kv dt{color:var(--ink-3)}.kv dd{text-align:right;word-break:break-all;margin:0}.back{color:var(--ink-3);margin-bottom:1rem;font-size:.85rem;text-decoration:none;display:inline-block}.back:hover{color:var(--accent)}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
