*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}:root{--color-primary: #4f46e5;--color-primary-light: #818cf8;--color-secondary: #10b981;--color-danger: #ef4444;--color-warning: #f59e0b;--color-bg: #0f172a;--color-surface: #1e293b;--color-surface-light: #334155;--color-text: #f8fafc;--color-text-muted: #94a3b8}html{font-size:19.8px;color-scheme:dark}body{font-family:Inter,system-ui,-apple-system,sans-serif;background-color:var(--color-bg);color:var(--color-text);line-height:1.5;min-height:100vh}a{color:var(--color-primary-light);text-decoration:none}button{cursor:pointer;border:none;font-family:inherit}input,textarea,select{font-family:inherit;font-size:inherit}.container{max-width:1280px;margin:0 auto;padding:0 1rem}.card{background:var(--color-surface);border-radius:.75rem;padding:1.5rem;border:1px solid var(--color-surface-light)}.grid{display:grid;gap:1rem}.grid-2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1rem;border-radius:.5rem;font-weight:500;font-size:.875rem;transition:background-color .15s}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover{background:#4338ca}.btn-secondary{background:var(--color-surface-light);color:var(--color-text)}.btn-secondary:hover{background:#475569}.btn-danger{background:var(--color-danger);color:#fff}.progress-bar{width:100%;height:.5rem;background:var(--color-surface-light);border-radius:9999px;overflow:hidden}.progress-bar-fill{height:100%;border-radius:9999px;transition:width .3s ease}.text-muted{color:var(--color-text-muted)}.text-sm{font-size:.9rem}.text-lg{font-size:1.2rem}.text-xl{font-size:1.35rem}.text-2xl{font-size:1.75rem}.font-bold{font-weight:700}.font-semibold{font-weight:600}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.gap-2{gap:.5rem}.gap-4{gap:1rem}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.flex-wrap{flex-wrap:wrap}
