:root{--primary-300:#c4b5fd;--primary:#a78bfa;--primary-500:#8b5cf6;--primary-600:#7c3aed;--primary-700:#6d28d9;--primary-800:#5b21b6;--accent:#06b6d4;--accent-500:#0891b2;--accent-600:#0e7490;--bg-base:#08071a;--bg-surface:#0e0d20;--bg-elevated:#141328;--bg-hover:#1c1a3a;--bg-active:#24214a;--text-primary:#f1f0f7;--text-secondary:#c9c6d8;--text-muted:#8d89a3;--text-disabled:#3a374d;--border:rgba(255,255,255,0.07);--border-subtle:rgba(255,255,255,0.04);--border-focus:rgba(167,139,250,0.5);--border-hover:rgba(255,255,255,0.12);--success:#10b981;--success-bg:rgba(16,185,129,0.1);--warning:#f59e0b;--warning-bg:rgba(245,158,11,0.1);--danger:#ef4444;--danger-bg:rgba(239,68,68,0.1);--info:#3b82f6;--info-bg:rgba(59,130,246,0.1);--btn-disabled-bg:#1e1b2e;--btn-disabled-text:#475569;--focus-ring:0 0 0 2px var(--bg-base),0 0 0 4px rgba(167,139,250,0.5);--font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-mono:"Fira Code","Courier New",monospace;--radius-sm:6px;--radius:10px;--radius-lg:16px;--radius-xl:24px;--shadow-sm:0 1px 2px rgba(0,0,0,0.3);--shadow:0 4px 12px rgba(0,0,0,0.3);--shadow-lg:0 8px 24px rgba(0,0,0,0.4);--shadow-glow:0 0 20px rgba(167,139,250,0.12)}*,:after,:before{box-sizing:border-box}html{scrollbar-color:rgba(167,139,250,.15) transparent;scrollbar-width:thin}body{background-color:var(--bg-base);color:var(--text-primary);font-family:var(--font-family);margin:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:rgba(167,139,250,.15);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:rgba(167,139,250,.25)}::selection{background:rgba(167,139,250,.3);color:#fff}:focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:var(--radius-sm)}a:focus:not(:focus-visible),button:focus:not(:focus-visible){outline:none}a{color:inherit;text-decoration:none}button{font-family:inherit}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}@keyframes spin{to{transform:rotate(1turn)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.card{background:var(--bg-surface);border-radius:var(--radius-lg);padding:28px;border:1px solid var(--border)}