*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}:root{--bg-base: #060a14;--bg-sidebar: #080c1a;--bg-card: rgba(255,255,255,.04);--bg-card-solid: #0f1629;--bg-dark: #060a14;--bg-glass: rgba(255,255,255,.05);--bg-input: rgba(255,255,255,.06);--border: rgba(255,255,255,.07);--border-light: rgba(255,255,255,.12);--border-glow: rgba(59,130,246,.35);--text-primary: #f1f5f9;--text-secondary: #e2e8f0;--text-muted: #94a3b8;--text-dim: #475569;--accent-blue: #3b82f6;--accent-purple: #8b5cf6;--accent-green: #22c55e;--accent-yellow: #eab308;--accent-red: #ef4444;--accent-orange: #f97316;--accent-pink: #ec4899;--grad-primary: linear-gradient(135deg, #3b82f6 0%, #8b5cf6 100%);--grad-primary-hover: linear-gradient(135deg, #2563eb 0%, #7c3aed 100%);--grad-accent: linear-gradient(135deg, #f97316 0%, #ef4444 100%);--grad-success: linear-gradient(135deg, #22c55e 0%, #10b981 100%);--grad-logo: linear-gradient(135deg, #60a5fa 0%, #a78bfa 50%, #f472b6 100%);--grad-glass: linear-gradient(135deg, rgba(255,255,255,.08) 0%, rgba(255,255,255,.02) 100%);--grad-bar-low: linear-gradient(90deg, #22c55e 0%, #10b981 100%);--grad-bar-mid: linear-gradient(90deg, #eab308 0%, #f97316 100%);--grad-bar-high: linear-gradient(90deg, #f97316 0%, #ef4444 100%);--grad-cii-great: linear-gradient(135deg, #22c55e, #10b981);--grad-cii-good: linear-gradient(135deg, #3b82f6, #06b6d4);--grad-cii-soso: linear-gradient(135deg, #eab308, #f97316);--grad-cii-low: linear-gradient(135deg, #ef4444, #dc2626);--shadow-card: 0 1px 4px rgba(0,0,0,.5), 0 0 0 1px rgba(255,255,255,.04);--shadow-hover: 0 8px 32px rgba(0,0,0,.6), 0 0 0 1px rgba(255,255,255,.08);--shadow-glow-blue: 0 0 24px rgba(59,130,246,.35), 0 4px 16px rgba(0,0,0,.4);--shadow-glow-purple: 0 0 24px rgba(139,92,246,.35), 0 4px 16px rgba(0,0,0,.4);--shadow-btn: 0 2px 8px rgba(59,130,246,.3), 0 1px 2px rgba(0,0,0,.3);--shadow-btn-hover: 0 4px 20px rgba(59,130,246,.5), 0 2px 8px rgba(0,0,0,.4);--shadow-modal: 0 24px 80px rgba(0,0,0,.7), 0 0 0 1px rgba(255,255,255,.06);--shadow-header: 0 1px 0 rgba(255,255,255,.06), 0 2px 16px rgba(0,0,0,.3);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-7: 28px;--space-8: 32px;--text-xs: 10px;--text-sm: 12px;--text-base: 13px;--text-md: 14px;--text-lg: 16px;--text-xl: 20px;--text-2xl: 24px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 20px}[data-theme=light]{--bg-base: #f0f4f8;--bg-sidebar: #e8edf5;--bg-card: rgba(255,255,255,.8);--bg-card-solid: #ffffff;--bg-dark: #f0f4f8;--bg-glass: rgba(255,255,255,.7);--bg-input: rgba(255,255,255,.9);--border: rgba(0,0,0,.08);--border-light: rgba(0,0,0,.12);--border-glow: rgba(59,130,246,.25);--text-primary: #0f172a;--text-secondary: #1e293b;--text-muted: #475569;--text-dim: #94a3b8;--shadow-card: 0 1px 4px rgba(0,0,0,.08), 0 0 0 1px rgba(0,0,0,.04);--shadow-hover: 0 8px 32px rgba(0,0,0,.15), 0 0 0 1px rgba(59,130,246,.1);--shadow-btn: 0 2px 8px rgba(59,130,246,.25);--shadow-btn-hover: 0 4px 20px rgba(59,130,246,.4);--shadow-modal: 0 24px 80px rgba(0,0,0,.2), 0 0 0 1px rgba(0,0,0,.06);--shadow-header: 0 1px 0 rgba(0,0,0,.08), 0 2px 16px rgba(0,0,0,.06)}[data-theme=light] ::-webkit-scrollbar-track{background:#e8edf5}[data-theme=light] ::-webkit-scrollbar-thumb{background:#cbd5e1}[data-theme=light] ::-webkit-scrollbar-thumb:hover{background:#94a3b8}body{font-family:Pretendard Variable,Pretendard,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg-base);color:var(--text-secondary);overflow:hidden;height:100vh;-webkit-font-smoothing:antialiased}#root{height:100vh;display:flex;overflow:hidden}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#fff3}button{cursor:pointer}input,select,textarea{font-family:inherit}a{text-decoration:none;color:inherit}@keyframes splashFadeIn{0%{opacity:0;transform:scale(.85)}60%{opacity:1;transform:scale(1.02)}to{opacity:1;transform:scale(1)}}@keyframes splashFadeOut{0%{opacity:1}to{opacity:0;pointer-events:none}}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}@keyframes toastSlideIn{0%{opacity:0;transform:translate(24px) scale(.95)}to{opacity:1;transform:translate(0) scale(1)}}@keyframes toastSlideOut{0%{opacity:1;transform:translate(0) scale(1)}to{opacity:0;transform:translate(24px) scale(.95)}}@keyframes shimmer{0%{background-position:-600px 0}to{background-position:600px 0}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulseGlow{0%,to{box-shadow:0 0 8px #3b82f64d}50%{box-shadow:0 0 20px #3b82f699}}@keyframes countUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeUp .25s ease both}.spin,.globalSpin{animation:spin 1s linear infinite}@media(max-width:768px){body{overflow-y:auto}#root{height:auto;min-height:100vh;overflow:visible}}
