:root,[data-theme=dark]{--bg: #0b0e13;--bg-elev: #12171f;--surface: #171d27;--surface-2: #1e2633;--border: #2a3545;--text: #e8eef7;--muted: #8b9bb0;--accent: #5b8cff;--accent-2: #7aa2ff;--good: #3dcb8a;--warn: #e6b84d;--bad: #e85d5d;--radius: 12px;--shadow: 0 8px 28px rgba(0, 0, 0, .35);color-scheme:dark}[data-theme=light]{--bg: #f4f6fa;--bg-elev: #ffffff;--surface: #ffffff;--surface-2: #eef2f8;--border: #d5deea;--text: #142033;--muted: #5c6b80;--accent: #3a6fef;--accent-2: #2f5fd0;--good: #1f9a62;--warn: #b8860b;--bad: #c43c3c;--shadow: 0 8px 24px rgba(20, 32, 51, .08);color-scheme:light}*,*:before,*:after{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;font-family:Segoe UI,system-ui,-apple-system,sans-serif;background:var(--bg);color:var(--text);line-height:1.5;-webkit-font-smoothing:antialiased}a{color:var(--accent-2);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit;color:inherit}.skip-link{position:absolute;left:.75rem;top:.75rem;z-index:1000;padding:.55rem .85rem;border-radius:8px;background:var(--accent, #5b8cff);color:#fff;font-weight:600;text-decoration:none;transform:translateY(-120%);transition:transform .15s ease}.skip-link:focus{transform:translateY(0);outline:2px solid #fff;outline-offset:2px}.app-shell{min-height:100vh;display:flex;flex-direction:column}.container{width:min(1080px,calc(100% - 2rem));margin:0 auto}.nav{position:sticky;top:0;z-index:40;background:color-mix(in srgb,var(--bg-elev) 92%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border)}.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 0}.brand{display:flex;align-items:center;gap:.6rem;color:var(--text);font-weight:700;letter-spacing:.02em;text-decoration:none}.brand:hover{text-decoration:none}.brand-mark{width:28px;height:28px;border-radius:8px;background:linear-gradient(135deg,var(--accent),#9b7bff);display:grid;place-items:center;font-size:.85rem;color:#fff}.nav-links{display:flex;flex-wrap:wrap;gap:.35rem .75rem;align-items:center}.nav-links a{color:var(--muted);padding:.35rem .55rem;border-radius:8px;text-decoration:none;font-size:.95rem}.nav-links a:hover,.nav-links a.active{color:var(--text);background:var(--surface-2);text-decoration:none}.avatar-btn{width:36px;height:36px;border-radius:999px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);cursor:pointer;font-weight:650}.main{flex:1;padding:1.5rem 0 3rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem 1.35rem;box-shadow:var(--shadow)}.card-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}h1,h2,h3{line-height:1.25;margin:0 0 .6rem}.muted{color:var(--muted)}.stack{display:flex;flex-direction:column;gap:1rem}.row{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;border:1px solid transparent;border-radius:10px;padding:.65rem 1.1rem;background:var(--accent);color:#fff;font-weight:600;cursor:pointer;text-decoration:none}.btn:hover{filter:brightness(1.06);text-decoration:none}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-secondary{background:var(--surface-2);border-color:var(--border);color:var(--text)}.btn-ghost{background:transparent;border-color:var(--border);color:var(--text)}.btn-danger{background:var(--bad)}.field{display:flex;flex-direction:column;gap:.35rem}.field label{font-size:.85rem;color:var(--muted)}.field input,.field select,.field textarea{background:var(--bg);border:1px solid var(--border);border-radius:10px;padding:.65rem .8rem;outline:none}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent)}.badge{display:inline-flex;align-items:center;gap:.3rem;font-size:.75rem;font-weight:650;padding:.2rem .55rem;border-radius:999px;background:var(--surface-2);border:1px solid var(--border);color:var(--muted)}.badge-good{color:var(--good);border-color:color-mix(in srgb,var(--good) 40%,var(--border))}.badge-warn{color:var(--warn);border-color:color-mix(in srgb,var(--warn) 40%,var(--border))}.badge-lock{color:var(--warn)}.hero{padding:2.5rem 0 1rem}.hero h1{font-size:clamp(1.8rem,4vw,2.6rem);max-width:16ch}.hero p.lead{font-size:1.1rem;color:var(--muted);max-width:52ch}.notice{font-size:.9rem;color:var(--muted);border-left:3px solid var(--border);padding-left:.75rem}.stat{display:flex;flex-direction:column;gap:.15rem}.stat .value{font-size:1.6rem;font-weight:700}.stat .label{font-size:.8rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.progress-bar{height:8px;background:var(--surface-2);border-radius:999px;overflow:hidden}.progress-bar>span{display:block;height:100%;background:linear-gradient(90deg,var(--accent),#9b7bff)}.option{display:block;width:100%;text-align:left;background:var(--surface-2);border:1px solid var(--border);border-radius:10px;padding:.85rem 1rem;cursor:pointer;margin-bottom:.55rem}.option:hover{border-color:var(--accent)}.option.selected{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 18%,var(--surface-2))}.table{width:100%;border-collapse:collapse;font-size:.95rem}.table th,.table td{text-align:left;padding:.65rem .5rem;border-bottom:1px solid var(--border)}.table th{color:var(--muted);font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em}.disclaimer{font-size:.85rem;color:var(--muted);background:var(--surface-2);border:1px solid var(--border);border-radius:10px;padding:.85rem 1rem}.tabs{display:flex;gap:.35rem;flex-wrap:wrap;margin-bottom:1rem}.tab{border:1px solid var(--border);background:transparent;color:var(--muted);border-radius:999px;padding:.45rem .9rem;cursor:pointer}.tab.active{background:var(--accent);border-color:var(--accent);color:#fff}.lock-overlay{opacity:.85}.markdown h1,.markdown h2,.markdown h3{margin-top:1rem}.markdown p{margin:.55rem 0}.markdown ul{padding-left:1.25rem}.markdown code{background:var(--surface-2);padding:.1rem .35rem;border-radius:4px;font-size:.9em}.markdown pre{background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:.85rem;overflow:auto}.footer-mini{padding:1.5rem 0;border-top:1px solid var(--border);color:var(--muted);font-size:.85rem}.error{color:var(--bad);font-size:.9rem}.success{color:var(--good)}@media (max-width: 720px){.nav-links{gap:.2rem}.nav-links a{padding:.3rem .4rem;font-size:.85rem}}
