@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";
:root{--bg-primary:#0a0a0f;--bg-secondary:#12121a;--bg-tertiary:#1a1a25;--bg-elevated:#1e1e2a;--text-primary:#f0f0f5;--text-secondary:#9898a8;--text-tertiary:#636375;--text-inverse:#0a0a0f;--accent-primary:#3b82f6;--accent-primary-hover:#2563eb;--accent-success:#22c55e;--accent-warning:#eab308;--accent-danger:#ef4444;--accent-info:#6366f1;--border-subtle:#1f1f2e;--border-default:#2a2a3c;--border-focus:#3b82f6;--font-sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-mono:"Courier New",monospace;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--transition-fast:.15s ease}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{font-family:var(--font-sans);background-color:var(--bg-primary);color:var(--text-primary);min-height:100vh;line-height:1.5}a{color:var(--accent-primary);text-decoration:none}a:hover{color:var(--accent-primary-hover)}a.btn,a.btn:hover{color:inherit}a.btn-primary,a.btn-primary:hover{color:#fff}a.btn-secondary:hover{color:var(--text-primary)}h1,h2,h3,h4{letter-spacing:-.01em;line-height:1.3}h1{font-size:1.5rem;font-weight:600}h2{font-size:1.25rem;font-weight:600}h3{font-size:1.125rem;font-weight:500}h4{font-size:1rem;font-weight:500}.btn{justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--radius-md);font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-fast);border:none;outline:none;padding:10px 20px;font-size:.875rem;font-weight:500;display:inline-flex}.btn:focus-visible{box-shadow:0 0 0 2px var(--bg-primary),0 0 0 4px var(--border-focus)}.btn-primary{background-color:var(--accent-primary);color:#fff}.btn-primary:hover{background-color:var(--accent-primary-hover)}.btn-secondary{color:var(--text-secondary);border:1px solid var(--border-default);background-color:#0000}.btn-secondary:hover{background-color:var(--bg-tertiary);color:var(--text-primary)}.btn-danger{color:var(--accent-danger);background-color:#0000;border:1px solid #ef44444d}.btn-danger:hover{background-color:#ef44441a}.btn-sm{padding:6px 14px;font-size:.8125rem}.btn-lg{padding:12px 28px;font-size:1rem}.btn:disabled{opacity:.5;cursor:not-allowed}.input{background-color:var(--bg-tertiary);border:1px solid var(--border-default);border-radius:var(--radius-md);width:100%;color:var(--text-primary);font-family:var(--font-sans);transition:border-color var(--transition-fast);outline:none;padding:10px 14px;font-size:.875rem}.input::placeholder{color:var(--text-tertiary)}.input:focus{border-color:var(--border-focus)}.input:disabled{opacity:.5;cursor:not-allowed}.input-label{color:var(--text-secondary);margin-bottom:var(--space-2);letter-spacing:.02em;font-size:.8125rem;font-weight:500;display:block}.input-error{border-color:var(--accent-danger)}.input-error-message{color:var(--accent-danger);margin-top:var(--space-1);font-size:.8125rem}.card{background-color:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-6)}.badge{border-radius:var(--radius-sm);letter-spacing:.02em;align-items:center;padding:2px 8px;font-size:.75rem;font-weight:500;display:inline-flex}.badge-va{color:var(--accent-info);background-color:#6366f126}.badge-cb{color:#a855f7;background-color:#a855f726}.badge-success{color:var(--accent-success);background-color:#22c55e26}.badge-warning{color:var(--accent-warning);background-color:#eab30826}.badge-danger{color:var(--accent-danger);background-color:#ef444426}.container{width:100%;max-width:1200px;padding:0 var(--space-6);margin:0 auto}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.spinner{border:2px solid var(--border-default);border-top-color:var(--accent-primary);border-radius:50%;width:18px;height:18px;animation:.6s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}
