@charset "UTF-8";:root{--brand-primary: #2b5fd6;--brand-primary-hover: #1f4ab8;--brand-primary-soft: #eef3fc;--brand-primary-tint: #f5f8ff;--brand-accent: #0ea5e9;--brand-accent-soft: #e0f2fe;--surface-0: #ffffff;--surface-1: #f7f9fc;--surface-2: #f0f3f9;--surface-glass: rgba(255, 255, 255, .8);--text-ink: #0f172a;--text-body: #334155;--text-muted: #64748b;--text-faint: #94a3b8;--border: #e2e8f0;--border-strong: #cbd5e1;--border-focus: var(--brand-primary);--success: #15803d;--success-soft: #dcfce7;--success-border: #86efac;--error: #b91c1c;--error-soft: #fee2e2;--error-border: #fca5a5;--warn: #b45309;--warn-soft: #fef3c7;--radius-sm: 6px;--radius: 10px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 999px;--shadow-xs: 0 1px 2px rgba(15, 23, 42, .04);--shadow-sm: 0 2px 8px rgba(15, 23, 42, .06);--shadow-md: 0 8px 24px rgba(15, 23, 42, .08);--shadow-lg: 0 16px 48px rgba(15, 23, 42, .12);--shadow-focus: 0 0 0 3px rgba(43, 95, 214, .15);--sp-1: .25rem;--sp-2: .5rem;--sp-3: .75rem;--sp-4: 1rem;--sp-5: 1.5rem;--sp-6: 2rem;--sp-7: 2.5rem;--sp-8: 3rem;--sp-10: 4rem;--sp-12: 6rem;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: clamp(1.75rem, 4vw, 2.25rem);--text-4xl: clamp(2rem, 5.5vw, 3.25rem);--container: 1120px;--container-narrow: 760px;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SF Mono", Consolas, monospace;--ease: cubic-bezier(.4, 0, .2, 1);--transition: .18s var(--ease)}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font-sans);color:var(--text-body);background:var(--surface-0);line-height:1.6;font-size:var(--text-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}h1,h2,h3,h4{color:var(--text-ink);line-height:1.2;font-weight:700;letter-spacing:-.02em}a{color:var(--brand-primary);text-decoration:none;transition:color var(--transition)}a:hover{color:var(--brand-primary-hover)}:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.container{max-width:var(--container);margin:0 auto;padding:0 var(--sp-5)}.container-narrow{max-width:var(--container-narrow);margin:0 auto;padding:0 var(--sp-5)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);padding:var(--sp-3) var(--sp-5);border-radius:var(--radius-sm);font-family:var(--font-sans);font-weight:600;font-size:var(--text-base);border:1px solid transparent;cursor:pointer;text-decoration:none;transition:all var(--transition);white-space:nowrap}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--brand-primary);color:#fff;box-shadow:var(--shadow-xs)}.btn-primary:not(:disabled):hover{background:var(--brand-primary-hover);box-shadow:var(--shadow-sm)}.btn-secondary{background:var(--brand-primary-soft);color:var(--brand-primary)}.btn-secondary:not(:disabled):hover{background:#dbe7fb}.btn-ghost{background:transparent;color:var(--brand-primary);border-color:var(--border-strong)}.btn-ghost:not(:disabled):hover{background:var(--surface-1);border-color:var(--brand-primary)}.btn-danger{background:transparent;color:var(--error);border-color:var(--error-border)}.btn-danger:not(:disabled):hover{background:var(--error-soft)}.card{background:var(--surface-0);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--sp-5);box-shadow:var(--shadow-xs)}.badge{display:inline-flex;align-items:center;padding:.15rem .65rem;border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:600;background:var(--brand-primary-soft);color:var(--brand-primary)}.badge-success{background:var(--success-soft);color:var(--success)}.alert{padding:var(--sp-3) var(--sp-4);border-radius:var(--radius);font-size:var(--text-sm);margin-bottom:var(--sp-4)}.alert-error{background:var(--error-soft);border:1px solid var(--error-border);color:var(--error)}.alert-success{background:var(--success-soft);border:1px solid var(--success-border);color:var(--success)}.eyebrow{text-transform:uppercase;letter-spacing:.08em;font-size:var(--text-xs);font-weight:700;color:var(--brand-primary)}.numeric{font-variant-numeric:tabular-nums}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
