:root,[data-theme=dark]{--bg1: #0a1628;--bg2: #112240;--bg3: #1a3354;--border: #234876;--border-light: #2d5a8a;--text-primary: #e6f1ff;--text-secondary: #8892b0;--text-muted: #5c6a86;--overlay: rgba(0,0,0,.6);--card-shadow: rgba(0,0,0,.4);--cyan: #00d9ff;--cyan-dim: #00a8cc;--green: #00c9a7;--green-dim: #009e84;--coral: #ff6b6b;--coral-dim: #d94f4f;--orange: #ffc145;--orange-dim: #d9a33a;--purple: #bd93f9;--space-xs: 4px;--space-sm: 8px;--space-md: 12px;--space-lg: 16px;--space-xl: 20px;--space-xxl: 24px;--space-xxxl: 32px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--radius-full: 999px;--font-title: 28px;--font-heading: 20px;--font-subhead: 16px;--font-body: 15px;--font-caption: 13px;--font-small: 11px}[data-theme=light]{--bg1: #f5f7fa;--bg2: #ffffff;--bg3: #eef2f7;--border: #d8dee8;--border-light: #c5cdd9;--text-primary: #1a2332;--text-secondary: #5a6577;--text-muted: #8c95a6;--overlay: rgba(0,0,0,.3);--card-shadow: rgba(0,0,0,.08)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background-color:var(--bg1);color:var(--text-primary);line-height:1.5;min-height:100vh}#root{min-height:100vh;display:flex;flex-direction:column}a{color:var(--cyan);text-decoration:none}button{font:inherit;cursor:pointer;border:none;background:none;color:inherit}input,select,textarea{font:inherit;color:inherit;background:var(--bg3);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--space-sm) var(--space-md);outline:none;transition:border-color .15s}input:focus,select:focus,textarea:focus{border-color:var(--cyan)}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--border-light)}:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}button:focus:not(:focus-visible),input:focus:not(:focus-visible){outline:none}@keyframes spin{to{transform:rotate(360deg)}}.tabular-nums{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-width:0}
