:root{--font-sans:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--color-bg:#f7f7f8;--color-surface:#fff;--color-text:#1b1b1f;--color-muted:#6b6b76;--color-border:#e3e3e8;--color-primary:#3b5bdb;--color-primary-hover:#2f4bc0;--color-primary-text:#fff;--color-danger:#c92a2a;--radius:8px;--shadow:0 1px 2px #0000000f, 0 4px 12px #0000000d;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-6:1.5rem;--space-8:2rem;--space-12:3rem}@media (prefers-color-scheme:dark){:root{--color-bg:#121216;--color-surface:#1c1c22;--color-text:#ececf1;--color-muted:#9a9aa6;--color-border:#2c2c35;--color-primary:#6b85f0;--color-primary-hover:#8399f5;--color-primary-text:#0f1220;--shadow:0 1px 2px #0006, 0 4px 12px #0000004d}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{font-family:var(--font-sans);color:var(--color-text);background:var(--color-bg);margin:0;font-size:16px;line-height:1.5}img,svg,video{max-width:100%;display:block}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4{margin:0 0 var(--space-3);font-weight:600;line-height:1.2}h1{font-size:2rem}h2{font-size:1.5rem}h3{font-size:1.25rem}p{margin:0 0 var(--space-4)}code{font-family:var(--font-mono);background:var(--color-border);border-radius:4px;padding:.1em .35em;font-size:.9em}.container{width:100%;max-width:1080px;padding:0 var(--space-4);margin:0 auto}.site-header{background:var(--color-surface);border-bottom:1px solid var(--color-border)}.site-header .container{justify-content:space-between;align-items:center;height:60px;display:flex}.brand{color:var(--color-text);font-size:1.1rem;font-weight:700}.nav{gap:var(--space-4);display:flex}.nav a{color:var(--color-muted)}.nav a:hover,.nav a[aria-current=page]{color:var(--color-text);text-decoration:none}.site-main{padding:var(--space-12) 0}.site-footer{padding:var(--space-6) 0;color:var(--color-muted);border-top:1px solid var(--color-border);font-size:.875rem}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow);padding:var(--space-6)}.btn{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);font:inherit;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);cursor:pointer;font-weight:500;transition:background .12s,border-color .12s;display:inline-flex}.btn:hover{border-color:var(--color-muted)}.btn-primary{color:var(--color-primary-text);background:var(--color-primary);border-color:var(--color-primary)}.btn-primary:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.btn[disabled],.btn[data-loading]{opacity:.6;cursor:wait}.text-muted{color:var(--color-muted)}.stack{gap:var(--space-4);flex-direction:column;display:flex}.row{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.field{gap:var(--space-1);flex-direction:column;display:flex}.field label{font-size:.9rem;font-weight:500}.input{font:inherit;padding:var(--space-2) var(--space-3);color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius)}.input:focus{outline:2px solid var(--color-primary);outline-offset:1px;border-color:var(--color-primary)}.error{color:var(--color-danger);font-size:.85rem}
