:root{--primary-h: 217;--primary-s: 91%;--primary-l: 60%;--primary: hsl(var(--primary-h), var(--primary-s), var(--primary-l));--primary-hover: hsl(var(--primary-h), var(--primary-s), calc(var(--primary-l) - 5%));--accent-h: 280;--accent-s: 80%;--accent-l: 65%;--accent: hsl(var(--accent-h), var(--accent-s), var(--accent-l));--success: hsl(150, 80%, 40%);--warning: hsl(45, 90%, 50%);--error: hsl(0, 85%, 60%);--bg: hsl(220, 33%, 98%);--fg: hsl(220, 40%, 15%);--surface: hsl(0, 0%, 100%);--border: hsl(220, 20%, 88%);--muted: hsl(220, 10%, 45%);--glass-bg: rgba(255, 255, 255, .7);--glass-border: rgba(255, 255, 255, .4);--font-main: "Inter", system-ui, sans-serif;--font-heading: "Outfit", sans-serif;--radius: 12px;--shadow-sm: 0 1px 2px rgba(0,0,0,.05);--shadow-md: 0 4px 6px -1px rgba(0,0,0,.1), 0 2px 4px -1px rgba(0,0,0,.06);--shadow-lg: 0 10px 15px -3px rgba(0,0,0,.1), 0 4px 6px -2px rgba(0,0,0,.05);--transition: all .3s cubic-bezier(.4, 0, .2, 1)}@media(prefers-color-scheme:dark){:root{--bg: hsl(222, 47%, 11%);--fg: hsl(210, 40%, 98%);--surface: hsl(222, 47%, 15%);--border: hsl(217, 32%, 22%);--muted: hsl(215, 20%, 65%);--glass-bg: rgba(15, 23, 42, .6);--glass-border: rgba(255, 255, 255, .1)}}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;font-family:var(--font-main);background-color:var(--bg);color:var(--fg);line-height:1.6;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:700;color:var(--fg)}a{color:var(--primary);text-decoration:none;transition:var(--transition)}a:hover{color:var(--primary-hover)}.glass{background:var(--glass-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);border-radius:var(--radius)}.container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.6rem 1.2rem;border-radius:var(--radius);font-weight:600;cursor:pointer;transition:var(--transition);border:none;font-family:var(--font-main)}.btn-primary{background-color:var(--primary);color:#fff}.btn-primary:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}.fade-in{animation:fadeIn .5s ease-out forwards}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
