:root{--color-bg-primary: hsl(220, 20%, 97%);--color-bg-secondary: hsl(220, 18%, 93%);--color-bg-elevated: hsl(0, 0%, 100%);--color-surface: hsla(220, 20%, 50%, .05);--color-border: hsla(220, 20%, 50%, .12);--color-border-subtle: hsla(220, 20%, 50%, .06);--color-text-primary: hsl(220, 20%, 14%);--color-text-secondary: hsl(220, 10%, 45%);--color-text-muted: hsl(220, 10%, 62%);--accent-h: 172;--accent-s: 66%;--accent-l: 50%;--color-accent: hsl(var(--accent-h), var(--accent-s), var(--accent-l));--color-accent-subtle: hsla(var(--accent-h), var(--accent-s), var(--accent-l), .12);--color-accent-glow: hsla(var(--accent-h), var(--accent-s), var(--accent-l), .18);--color-accent-strong: hsl(var(--accent-h), var(--accent-s), 38%);--purple-h: 270;--purple-s: 60%;--purple-l: 55%;--color-purple: hsl(var(--purple-h), var(--purple-s), var(--purple-l));--color-purple-subtle: hsla(var(--purple-h), var(--purple-s), var(--purple-l), .12);--color-purple-glow: hsla(var(--purple-h), var(--purple-s), var(--purple-l), .18);--pink-h: 330;--pink-s: 65%;--pink-l: 55%;--color-pink: hsl(var(--pink-h), var(--pink-s), var(--pink-l));--color-pink-subtle: hsla(var(--pink-h), var(--pink-s), var(--pink-l), .1);--color-success: hsl(160, 60%, 40%);--color-warning: hsl(38, 92%, 50%);--color-error: hsl(0, 72%, 50%);--font-display: "Clash Display", "Noto Sans JP", sans-serif;--font-body: "General Sans", "Noto Sans JP", sans-serif;--font-mono: "JetBrains Mono", monospace;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.25rem;--text-xl: 1.563rem;--text-2xl: 1.953rem;--text-3xl: 2.441rem;--text-4xl: 3.052rem;--text-hero: 4rem;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--space-8: 64px;--space-9: 96px;--space-10: 128px;--shadow-sm: 0 2px 8px hsla(220, 20%, 50%, .06);--shadow-md: 0 4px 16px hsla(220, 20%, 50%, .08);--shadow-lg: 0 8px 32px hsla(220, 20%, 50%, .1);--shadow-glow: 0 4px 24px var(--color-accent-glow);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 9999px;--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--duration-fast: .15s;--duration-normal: .3s;--duration-slow: .5s}[data-theme=dark]{--color-bg-primary: hsl(230, 15%, 7%);--color-bg-secondary: hsl(230, 14%, 11%);--color-bg-elevated: hsl(230, 14%, 14%);--color-surface: hsla(0, 0%, 100%, .05);--color-border: hsla(0, 0%, 100%, .08);--color-border-subtle: hsla(0, 0%, 100%, .04);--color-text-primary: hsl(0, 0%, 92%);--color-text-secondary: hsl(230, 10%, 60%);--color-text-muted: hsl(230, 10%, 42%);--color-accent-subtle: hsla(var(--accent-h), var(--accent-s), var(--accent-l), .15);--color-accent-glow: hsla(var(--accent-h), var(--accent-s), var(--accent-l), .25);--color-accent-strong: hsl(var(--accent-h), var(--accent-s), 42%);--color-purple-subtle: hsla(var(--purple-h), var(--purple-s), var(--purple-l), .15);--color-purple-glow: hsla(var(--purple-h), var(--purple-s), var(--purple-l), .25);--color-pink-subtle: hsla(var(--pink-h), var(--pink-s), var(--pink-l), .12);--color-success: hsl(160, 60%, 45%);--color-error: hsl(0, 72%, 55%);--shadow-sm: 0 2px 8px hsla(0, 0%, 0%, .2);--shadow-md: 0 4px 16px hsla(0, 0%, 0%, .25);--shadow-lg: 0 8px 32px hsla(0, 0%, 0%, .3)}.aurora-bg{background-color:var(--color-bg-primary);position:relative}.aurora-bg:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 90% 60% at 15% 35%,hsla(172,80%,80%,.25) 0%,transparent 55%),radial-gradient(ellipse 70% 70% at 80% 15%,hsla(270,70%,82%,.2) 0%,transparent 50%),radial-gradient(ellipse 60% 80% at 50% 90%,hsla(330,70%,82%,.15) 0%,transparent 45%),radial-gradient(ellipse 40% 40% at 60% 50%,hsla(200,60%,82%,.08) 0%,transparent 40%);pointer-events:none;z-index:0;animation:auroraShift 20s ease-in-out infinite alternate}[data-theme=dark] .aurora-bg:before{background:radial-gradient(ellipse 90% 60% at 15% 35%,hsla(172,80%,45%,.22) 0%,transparent 55%),radial-gradient(ellipse 70% 70% at 80% 15%,hsla(270,70%,50%,.18) 0%,transparent 50%),radial-gradient(ellipse 60% 80% at 50% 90%,hsla(330,70%,50%,.14) 0%,transparent 45%),radial-gradient(ellipse 40% 40% at 60% 50%,hsla(200,60%,50%,.08) 0%,transparent 40%)}.aurora-bg>*{position:relative;z-index:1}@keyframes auroraShift{0%{transform:translate(0) scale(1);opacity:1}33%{transform:translate(2%,-1%) scale(1.02);opacity:.9}66%{transform:translate(-1%,2%) scale(.98);opacity:1}to{transform:translate(1%,-2%) scale(1.01);opacity:.95}}.aurora-grain:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='1'/%3E%3C/svg%3E");opacity:.02;pointer-events:none;z-index:9999;mix-blend-mode:overlay}[data-theme=dark] .aurora-grain:after{opacity:.04}.glass-card{background:#ffffffbf;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid hsla(220,20%,50%,.1);border-radius:var(--radius-lg);box-shadow:inset 0 1px #ffffff80,0 8px 32px #6677990f}[data-theme=dark] .glass-card{background:#22242fa6;border:1px solid hsla(0,0%,100%,.1);box-shadow:inset 0 1px #ffffff14,0 8px 32px #0000004d}.glass-card-hover{transition:all var(--duration-normal) var(--ease-out-expo)}.glass-card-hover:hover{border-color:#6677992e;background:#ffffffd9;box-shadow:inset 0 1px #fff9,0 16px 48px #6677991a,0 0 40px #2bd4bd0a;transform:translateY(-2px)}[data-theme=dark] .glass-card-hover:hover{border-color:#ffffff2e;background:#272935b3;box-shadow:inset 0 1px #ffffff1a,0 16px 48px #00000059,0 0 40px #2bd4bd0f;transform:translateY(-2px)}.glass-input{background:#6677990a;border:1px solid hsla(220,20%,50%,.12);border-radius:var(--radius-md);color:var(--color-text-primary);font-family:var(--font-body);transition:all var(--duration-fast) ease}.glass-input::placeholder{color:var(--color-text-muted)}.glass-input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-subtle),0 0 12px var(--color-accent-glow);background:#6677990f}[data-theme=dark] .glass-input{background:#ffffff0a;border-color:#ffffff14}[data-theme=dark] .glass-input:focus{background:#ffffff0f}.glass-sidebar{background:#f3f4f7eb;backdrop-filter:blur(24px) saturate(160%);-webkit-backdrop-filter:blur(24px) saturate(160%);border-right:1px solid hsla(220,20%,50%,.08);box-shadow:4px 0 24px #6677990a}[data-theme=dark] .glass-sidebar{background:#15161ed9;border-right:1px solid hsla(0,0%,100%,.08);box-shadow:4px 0 24px #0000004d}.glow-border{position:relative;transition:all var(--duration-normal) var(--ease-out-expo)}.glow-border:before{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border-radius:inherit;background:linear-gradient(135deg,var(--color-accent-glow),var(--color-purple-glow),transparent);opacity:0;transition:opacity var(--duration-normal) var(--ease-out-expo);z-index:-1}.glow-border:hover:before{opacity:1}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 24px;background:var(--color-accent);color:#1d212b;font-family:var(--font-body);font-weight:600;font-size:var(--text-sm);border-radius:var(--radius-md);border:none;cursor:pointer;transition:all var(--duration-normal) var(--ease-out-expo);box-shadow:0 4px 16px var(--color-accent-glow)}.btn-primary:hover{filter:brightness(1.1);box-shadow:0 6px 24px var(--color-accent-glow);transform:translateY(-1px)}.btn-primary:active{transform:scale(.98) translateY(0);box-shadow:none}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 24px;background:#6677990f;color:var(--color-text-primary);font-family:var(--font-body);font-weight:500;font-size:var(--text-sm);border:1px solid hsla(220,20%,50%,.1);border-radius:var(--radius-md);cursor:pointer;transition:all var(--duration-fast) ease}.btn-secondary:hover{background:#6677991a;border-color:#66779926}.btn-secondary:active{transform:scale(.98)}[data-theme=dark] .btn-secondary{background:#ffffff0f;border-color:#ffffff1a}[data-theme=dark] .btn-secondary:hover{background:#ffffff1a;border-color:#ffffff26}.stagger-fade-in>*{opacity:0;transform:translateY(12px);animation:fadeInUp .5s cubic-bezier(.16,1,.3,1) forwards}.stagger-fade-in>*:nth-child(1){animation-delay:.05s}.stagger-fade-in>*:nth-child(2){animation-delay:.1s}.stagger-fade-in>*:nth-child(3){animation-delay:.15s}.stagger-fade-in>*:nth-child(4){animation-delay:.2s}.stagger-fade-in>*:nth-child(5){animation-delay:.25s}.stagger-fade-in>*:nth-child(6){animation-delay:.3s}.stagger-fade-in>*:nth-child(7){animation-delay:.35s}.stagger-fade-in>*:nth-child(8){animation-delay:.4s}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes glowPulse{0%,to{opacity:.6}50%{opacity:1}}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#66779926;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#66779940}[data-theme=dark] ::-webkit-scrollbar-thumb{background:#ffffff1a}[data-theme=dark] ::-webkit-scrollbar-thumb:hover{background:#ffffff2e}.text-display{font-family:var(--font-display);font-weight:500;letter-spacing:-.02em;line-height:1.15}.text-metric{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-weight:300;letter-spacing:-.03em;line-height:1}.text-label{font-family:var(--font-mono);font-size:var(--text-xs);font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted)}.text-body-jp{font-family:var(--font-body);line-height:1.8;letter-spacing:.04em}.recharts-cartesian-grid-horizontal line,.recharts-cartesian-grid-vertical line{stroke:#6677991a!important}[data-theme=dark] .recharts-cartesian-grid-horizontal line,[data-theme=dark] .recharts-cartesian-grid-vertical line{stroke:#ffffff0f!important}.recharts-text{fill:var(--color-text-muted)!important;font-family:var(--font-mono)!important;font-size:11px!important}.recharts-tooltip-wrapper .recharts-default-tooltip{background:var(--color-bg-elevated)!important;border:1px solid var(--color-border)!important;border-radius:var(--radius-md)!important;box-shadow:var(--shadow-lg)!important}::selection{background:var(--color-accent-subtle);color:var(--color-text-primary)}html:not([data-theme=dark]) .bg-white\/5{background-color:#00000008!important}html:not([data-theme=dark]) .bg-white\/10{background-color:#0000000d!important}html:not([data-theme=dark]) .bg-white\/20{background-color:#00000014!important}html:not([data-theme=dark]) .bg-white\/\[0\.01\]{background-color:#00000003!important}html:not([data-theme=dark]) .bg-white\/\[0\.02\]{background-color:#00000005!important}html:not([data-theme=dark]) .bg-white\/\[0\.03\]{background-color:#00000006!important}html:not([data-theme=dark]) .bg-white\/\[0\.04\]{background-color:#00000008!important}html:not([data-theme=dark]) .bg-white\/\[0\.06\]{background-color:#0000000a!important}html:not([data-theme=dark]) .bg-white\/\[0\.08\]{background-color:#0000000d!important}html:not([data-theme=dark]) .border-white\/\[0\.06\]{border-color:#00000014!important}html:not([data-theme=dark]) .border-white\/\[0\.08\]{border-color:#0000001a!important}html:not([data-theme=dark]) .border-white\/20{border-color:#0000001f!important}html:not([data-theme=dark]) .border-white\/\[0\.1\]{border-color:#0000001a!important}html:not([data-theme=dark]) .border-white\/\[0\.15\]{border-color:#0000001f!important}html:not([data-theme=dark]) .hover\:bg-white\/\[0\.04\]:hover{background-color:#00000008!important}html:not([data-theme=dark]) .hover\:bg-white\/\[0\.06\]:hover{background-color:#0000000a!important}html:not([data-theme=dark]) .hover\:bg-white\/\[0\.08\]:hover{background-color:#0000000d!important}html:not([data-theme=dark]) .hover\:bg-white\/5:hover{background-color:#00000008!important}html:not([data-theme=dark]) .hover\:bg-white\/10:hover{background-color:#0000000d!important}html:not([data-theme=dark]) .hover\:bg-white\/20:hover{background-color:#00000014!important}html:not([data-theme=dark]) .divide-white\/\[0\.06\]>:not([hidden])~:not([hidden]){border-color:#0000000f!important}html:not([data-theme=dark]) .border-b-white\/\[0\.06\]{border-bottom-color:#00000014!important}html:not([data-theme=dark]) .border-t-white\/\[0\.06\]{border-top-color:#00000014!important}html:not([data-theme=dark]) .bg-\[\#0F172A\]{background-color:#f0f1f5!important}html:not([data-theme=dark]) .bg-\[\#0F172A\]>.text-white,html:not([data-theme=dark]) .bg-\[\#0F172A\] .text-white:not([class*=bg-]){color:#1d212b!important}html:not([data-theme=dark]) .bg-\[\#0F172A\] .text-slate-400{color:#676f7e!important}html,html *,html *:before,html *:after{transition-property:background-color,border-color,color,box-shadow;transition-duration:.2s;transition-timing-function:ease}.glass-card-hover,.btn-primary,.btn-secondary,.glow-border,.glass-input,.stagger-fade-in>*{transition-property:all}
