body.dark{--bg: #0F1117;--surface-1: #1A1D27;--surface-2: #242832;--surface-3: #2E3340;--border: rgba(255,255,255,.08);--border-hover: rgba(255,255,255,.15);--text-primary: #F0F0F3;--text-secondary: #9CA3B4;--text-muted: #5E6577;--shadow-elevated: 0 4px 24px rgba(0,0,0,.3);--shadow-card: 0 1px 3px rgba(0,0,0,.2);--accent-glow: rgba(var(--accent-rgb), .15);--accent-soft: rgba(var(--accent-rgb), .1);--accent-text: var(--accent);--nav-bg: rgba(15,17,23,.85);--nav-border: rgba(255,255,255,.06);--aurora-opacity-1: .12;--aurora-opacity-2: .08;--aurora-opacity-3: .05;--amber: #F59E0B;--amber-soft: rgba(245,158,11,.12);--success: #10B981;--success-soft: rgba(16,185,129,.14);--success-text: #34D399;--warning: #F59E0B;--warning-soft: rgba(245,158,11,.14);--warning-text: #FBBF24;--danger: #EF4444;--danger-soft: rgba(239,68,68,.14);--danger-text: #F87171;--info: #38BDF8;--info-soft: rgba(56,189,248,.14);--info-text: #7DD3FC;--fft: #60A5FA;--fft-soft: rgba(96,165,250,.14);--fft-l: rgba(96,165,250,.22)}body.light{--bg: #F5F7FA;--surface-1: #FFFFFF;--surface-2: #F0F2F5;--surface-3: #E8EBF0;--border: rgba(0,0,0,.08);--border-hover: rgba(0,0,0,.15);--text-primary: #111827;--text-secondary: #6B7280;--text-muted: #9CA3AF;--shadow-elevated: 0 4px 24px rgba(0,0,0,.08);--shadow-card: 0 1px 3px rgba(0,0,0,.06);--accent-glow: rgba(var(--accent-rgb), .1);--accent-soft: rgba(var(--accent-rgb), .08);--accent-text: var(--accent-dark);--nav-bg: rgba(255,255,255,.85);--nav-border: rgba(0,0,0,.06);--aurora-opacity-1: .06;--aurora-opacity-2: .04;--aurora-opacity-3: .03;--amber: #D97706;--amber-soft: rgba(217,119,6,.1);--success: #059669;--success-soft: #D1FAE5;--success-text: #047857;--warning: #D97706;--warning-soft: #FEF3C7;--warning-text: #B45309;--danger: #DC2626;--danger-soft: #FEE2E2;--danger-text: #B91C1C;--info: #0284C7;--info-soft: #E0F2FE;--info-text: #0369A1;--fft: #1D4ED8;--fft-soft: #EFF6FF;--fft-l: #DBEAFE}body{--accent: #25C8BF;--accent-hover: #1FB3AB;--accent-dark: #1A9E97;--accent-rgb: 37, 200, 191;--radius-lg: 16px;--radius: 12px;--radius-md: 8px;--radius-sm: 6px;--radius-pill: 20px}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html,body{min-height:100vh}body{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--bg);color:var(--text-primary);overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background .3s ease,color .3s ease}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;background:radial-gradient(ellipse 900px 600px at 15% 20%,rgba(var(--accent-rgb),var(--aurora-opacity-1)) 0%,transparent 70%),radial-gradient(ellipse 700px 500px at 80% 70%,rgba(var(--accent-rgb),var(--aurora-opacity-2)) 0%,transparent 70%),radial-gradient(ellipse 500px 400px at 50% 50%,rgba(var(--accent-rgb),var(--aurora-opacity-3)) 0%,transparent 60%);transition:background .5s ease}#root{position:relative;z-index:1;min-height:100vh}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}::selection{background:var(--accent-soft);color:var(--accent-text)}body.dark ::-webkit-scrollbar{width:8px;height:8px}body.dark ::-webkit-scrollbar-track{background:#0f1117}body.dark ::-webkit-scrollbar-thumb{background:#2e3340;border-radius:4px}body.dark ::-webkit-scrollbar-thumb:hover{background:#3e4350}body.light ::-webkit-scrollbar{width:8px;height:8px}body.light ::-webkit-scrollbar-track{background:#f5f7fa}body.light ::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:4px}body.light ::-webkit-scrollbar-thumb:hover{background:#9ca3af}@media print{header,footer,nav,button{display:none!important}body:before{display:none!important}body{background:#fff!important;color:#111!important}}.material-symbols-rounded{font-variation-settings:"FILL" 1,"wght" 400,"GRAD" 0,"opsz" 20;-webkit-user-select:none;user-select:none}@keyframes pto-pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes pto-spin{to{transform:rotate(360deg)}}@keyframes pto-modal-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes pto-blink{0%,to{opacity:1}50%{opacity:.3}}@keyframes pto-fade-in{0%{opacity:0}to{opacity:1}}@keyframes pto-slide-down{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.4}}@keyframes pulse-ring{0%,to{box-shadow:0 0 0 4px var(--accent-soft)}50%{box-shadow:0 0 0 8px transparent}}
