*,:before,:after{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}input,button,textarea{font-family:inherit}button{cursor:pointer}:root{--bg:#0a0a0a;--bg-card:#111;--bg-hover:#161616;--border:#1e1e1e;--border-focus:#3b82f6;--text:#f0f0f0;--muted:#888;--faint:#444;--accent:#3b82f6;--accent-hover:#2563eb;--green:#4ade80;--yellow:#fbbf24;--red:#f87171;--purple:#a78bfa;--ease-out:cubic-bezier(.23, 1, .32, 1)}.btn{transition:transform .16s var(--ease-out)}.btn:active{transform:scale(.97)}.card-hover{transition:border-color .16s var(--ease-out)}@media (hover:hover) and (pointer:fine){.card-hover:hover{border-color:#2e2e2e}}.nav-link{transition:color .15s var(--ease-out)}@media (hover:hover) and (pointer:fine){.nav-link:hover{color:var(--text)!important}}@keyframes spin{to{transform:rotate(360deg)}}.icon-spin{animation:.7s linear infinite spin;display:inline-block}@keyframes fade-up{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.stagger-1{animation:fade-up .26s var(--ease-out) both}.stagger-2{animation:fade-up .26s 55ms var(--ease-out) both}.stagger-3{animation:fade-up .26s .11s var(--ease-out) both}.stagger-4{animation:fade-up .26s .165s var(--ease-out) both}@media (prefers-reduced-motion:reduce){.btn{transition:none}.btn:active{transform:none}.card-hover{transition:none}.icon-spin{animation-duration:.01ms}.stagger-1,.stagger-2,.stagger-3,.stagger-4{animation:none}}
