:root{color-scheme:light dark;--background:#f7f8fb;--surface:#ffffff;--surface-2:#f2f4f8;--foreground:#12141a;--muted:#5b6472;--border:#e5e8ef;--border-strong:#d4d9e3;--accent:#4f46e5;--accent-hover:#4338ca;--accent-contrast:#ffffff;--accent-soft:#eef0fe;--accent-ring:rgba(79,70,229,0.35);--success:#067a53;--success-soft:#dff5ec;--warn:#a45b06;--warn-soft:#fdf0dc;--danger:#c02636;--danger-soft:#fde6e8;--shadow-sm:0 1px 2px rgba(18,20,26,0.05);--shadow:0 1px 3px rgba(18,20,26,0.06),0 8px 24px -12px rgba(18,20,26,0.14);--shadow-lg:0 12px 40px -12px rgba(18,20,26,0.22);--radius:0.85rem;--radius-sm:0.55rem;--page-max:60rem}@media (prefers-color-scheme:dark){:root{--background:#0b0d13;--surface:#14171f;--surface-2:#1b1f2a;--foreground:#e8eaf0;--muted:#9aa4b4;--border:#262b37;--border-strong:#333a49;--accent:#8b93ff;--accent-hover:#a3a9ff;--accent-contrast:#0b0d13;--accent-soft:#1c2136;--accent-ring:rgba(139,147,255,0.4);--success:#4ecf9d;--success-soft:#10241d;--warn:#f0b45f;--warn-soft:#2a2011;--danger:#f4879a;--danger-soft:#2a1519;--shadow-sm:0 1px 2px rgba(0,0,0,0.4);--shadow:0 1px 3px rgba(0,0,0,0.5),0 10px 30px -14px rgba(0,0,0,0.7);--shadow-lg:0 16px 48px -14px rgba(0,0,0,0.75)}}:root[data-theme=light]{color-scheme:light}:root[data-theme=dark]{color-scheme:dark}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{min-height:100vh;background:radial-gradient(1200px 600px at 75% -10%,color-mix(in srgb,var(--accent) 7%,transparent),transparent 60%),var(--background);color:var(--foreground);font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3{line-height:1.2;letter-spacing:-.018em;font-weight:680}h1{font-size:clamp(1.7rem,1.2rem + 1.6vw,2.3rem)}::selection{background:color-mix(in srgb,var(--accent) 22%,transparent)}a{color:var(--accent);text-underline-offset:2px;text-decoration-thickness:1px}a:hover{color:var(--accent-hover)}:focus-visible{outline:3px solid var(--accent-ring);outline-offset:2px;border-radius:4px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:1.35rem 1.5rem;margin-top:1.15rem;transition:box-shadow .18s ease,border-color .18s ease,transform .18s ease}.card:hover{box-shadow:var(--shadow);border-color:var(--border-strong)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.55rem 1.05rem;border-radius:var(--radius-sm);border:1px solid transparent;font:inherit;font-weight:600;line-height:1.2;cursor:pointer;text-decoration:none;transition:background .15s ease,border-color .15s ease,transform .08s ease,box-shadow .15s ease}.btn:active{transform:translateY(1px)}.btn:disabled{cursor:not-allowed;opacity:.55}.btn.primary{background:var(--accent);color:var(--accent-contrast);box-shadow:0 1px 2px rgba(18,20,26,.15),0 6px 16px -8px var(--accent-ring)}.btn.primary:hover:not(:disabled){background:var(--accent-hover)}.btn.secondary{background:var(--surface);color:var(--foreground);border-color:var(--border-strong)}.btn.secondary:hover:not(:disabled){background:var(--surface-2);border-color:var(--accent)}.btn.ghost{background:transparent;color:var(--foreground);border-color:transparent}.btn.ghost:hover:not(:disabled){background:var(--surface-2)}.nav-link{color:var(--muted);text-decoration:none;font-weight:550;padding:.35rem .1rem;border-bottom:2px solid transparent;transition:color .15s ease,border-color .15s ease}.nav-link:hover{color:var(--foreground)}.nav-link[aria-current=page]{color:var(--foreground);border-bottom-color:var(--accent)}.input{padding:.6rem .8rem;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface);color:inherit;font:inherit;transition:border-color .15s ease,box-shadow .15s ease}.input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}.app-header{position:-webkit-sticky;position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--surface) 82%,transparent);-webkit-backdrop-filter:saturate(1.2) blur(10px);backdrop-filter:saturate(1.2) blur(10px);border-bottom:1px solid var(--border)}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}