:root{--color-void: oklch(.1 .02 260);--color-surface-base: oklch(.14 .025 260);--color-surface-elevated: oklch(.18 .03 260);--color-surface-glass: oklch(.16 .03 260 / .65);--color-surface-glass-heavy: oklch(.12 .025 260 / .85);--color-surface-interactive: oklch(.22 .04 260);--color-border-subtle: oklch(.28 .03 260 / .35);--color-border-medium: oklch(.4 .04 260 / .5);--color-border-glow: oklch(.7 .12 250 / .4);--color-border-focus: oklch(.85 .15 210);--color-text-primary: oklch(.98 .005 260);--color-text-secondary: oklch(.8 .02 260);--color-text-muted: oklch(.6 .025 260);--color-text-dim: oklch(.42 .02 260);--color-tokyo-crimson: oklch(.65 .28 15);--color-tokyo-cyan: oklch(.82 .18 215);--color-tokyo-amber: oklch(.85 .18 80);--color-tokyo-emerald: oklch(.78 .2 155);--color-shibuya-twilight-gold: oklch(.82 .19 65);--color-shibuya-sunset-amber: oklch(.7 .23 42);--color-shibuya-dusk-violet: oklch(.42 .18 315);--color-shibuya-horizon-blue: oklch(.55 .16 250);--color-shibuya-glow: oklch(.75 .22 55 / .35);--color-skytree-steel: oklch(.55 .06 245);--color-skytree-sky-blue: oklch(.8 .15 230);--color-skytree-altitude-cyan: oklch(.9 .11 205);--color-skytree-tembo-deck: oklch(.68 .16 220);--color-skytree-galleria-glow: oklch(.88 .14 215 / .4);--color-teamlab-violet: oklch(.66 .28 320);--color-teamlab-magenta: oklch(.72 .26 355);--color-teamlab-luminous-aqua: oklch(.88 .18 190);--color-teamlab-prism-yellow: oklch(.9 .2 105);--color-teamlab-aura: oklch(.7 .28 330 / .45);--font-display: "Cinzel", "Syne", serif;--font-sans: "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-japanese: "Zen Kaku Gothic New", "Noto Sans JP", sans-serif;--font-mono: "JetBrains Mono", monospace;--text-2xs: .6875rem;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-5xl: 3rem;--text-6xl: 3.75rem;--text-7xl: 4.5rem;--text-hero: clamp(2.5rem, 6vw + 1rem, 5.5rem);--leading-none: 1;--leading-tight: 1.15;--leading-snug: 1.3;--leading-normal: 1.5;--leading-relaxed: 1.65;--leading-japanese: 1.75;--tracking-tighter: -.04em;--tracking-tight: -.02em;--tracking-normal: 0em;--tracking-wide: .05em;--tracking-wider: .12em;--tracking-widest: .25em;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--space-32: 8rem;--radius-xs: 4px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 18px;--radius-xl: 24px;--radius-2xl: 32px;--radius-full: 9999px;--blur-subtle: blur(8px);--blur-medium: blur(16px);--blur-heavy: blur(28px);--shadow-subtle: 0 4px 20px oklch(.05 .01 260 / .4);--shadow-elevated: 0 12px 36px oklch(.04 .01 260 / .6);--shadow-glow-crimson: 0 0 32px var(--color-tokyo-crimson);--shadow-glow-cyan: 0 0 32px var(--color-tokyo-cyan);--shadow-glow-shibuya: 0 0 40px var(--color-shibuya-glow);--shadow-glow-skytree: 0 0 40px var(--color-skytree-galleria-glow);--shadow-glow-teamlab: 0 0 45px var(--color-teamlab-aura);--z-background: 0;--z-canvas: 1;--z-content: 10;--z-header: 100;--z-drawer-backdrop: 200;--z-drawer: 210;--z-modal: 300;--z-toast: 400;--cursor-x: 50%;--cursor-y: 30%}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{background-color:var(--color-void);color:var(--color-text-primary);font-family:var(--font-sans);font-size:16px;line-height:var(--leading-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;color-scheme:dark;scroll-behavior:smooth;min-height:100%}body{background-color:var(--color-void);min-height:100dvh;overflow-x:hidden;position:relative}[lang=ja]{font-family:var(--font-japanese),var(--font-sans);line-height:var(--leading-japanese);letter-spacing:.03em}[lang=ja] h1,[lang=ja] h2,[lang=ja] h3,[lang=ja] h4{letter-spacing:.04em;line-height:var(--leading-snug)}::selection{background-color:var(--color-tokyo-crimson);color:var(--color-text-primary)}.glass-panel{background:var(--color-surface-glass);backdrop-filter:var(--blur-medium);-webkit-backdrop-filter:var(--blur-medium);border:1px solid var(--color-border-subtle)}.glass-panel-elevated{background:var(--color-surface-glass-heavy);backdrop-filter:var(--blur-heavy);-webkit-backdrop-filter:var(--blur-heavy);border:1px solid var(--color-border-medium);box-shadow:var(--shadow-elevated)}:root{--duration-exit: .18s;--duration-enter: .28s;--duration-move: .42s;--duration-cinematic: .65s;--ease-cinematic: cubic-bezier(.16, 1, .3, 1);--ease-smooth: cubic-bezier(.4, 0, .2, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--slide-offset: 30px;--slide-y-offset: 24px}::view-transition{pointer-events:none}::view-transition-old(root){animation:var(--duration-exit) ease-out fade reverse}::view-transition-new(root){animation:var(--duration-enter) var(--ease-cinematic) fade}::view-transition-group(persistent-nav){animation:none;z-index:var(--z-header)}::view-transition-old(persistent-nav),::view-transition-new(persistent-nav){animation:none}html[data-transition=fade-out]::view-transition-old(root){animation:var(--duration-exit) ease-in fade reverse}html[data-transition=fade-in]::view-transition-new(root){animation:var(--duration-enter) ease-out var(--duration-exit) both fade}html[data-transition=nav-forward]::view-transition-old(root){--slide-offset: -50px;animation:var(--duration-exit) ease-in both fade reverse,var(--duration-move) var(--ease-cinematic) both slide reverse}html[data-transition=nav-forward]::view-transition-new(root){--slide-offset: 50px;animation:var(--duration-enter) ease-out var(--duration-exit) both fade,var(--duration-move) var(--ease-cinematic) both slide}html[data-transition=nav-back]::view-transition-old(root){--slide-offset: 50px;animation:var(--duration-exit) ease-in both fade reverse,var(--duration-move) var(--ease-cinematic) both slide reverse}html[data-transition=nav-back]::view-transition-new(root){--slide-offset: -50px;animation:var(--duration-enter) ease-out var(--duration-exit) both fade,var(--duration-move) var(--ease-cinematic) both slide}html[data-transition=slide-down]::view-transition-old(root){animation:var(--duration-exit) ease-out both fade reverse,var(--duration-exit) ease-out both slide-y reverse}html[data-transition=slide-up]::view-transition-new(root){animation:var(--duration-enter) ease-in var(--duration-exit) both fade,var(--duration-move) var(--ease-cinematic) both slide-y}::view-transition-group(.morph){animation-duration:var(--duration-move);animation-timing-function:var(--ease-cinematic)}::view-transition-image-pair(.morph){animation-name:morph-blur;animation-duration:var(--duration-move)}::view-transition-group(.text-morph){animation-duration:var(--duration-move);animation-timing-function:var(--ease-cinematic)}::view-transition-old(.text-morph){display:none}::view-transition-new(.text-morph){animation:none;object-fit:none;object-position:left top}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes slide{0%{transform:translate(var(--slide-offset, 30px))}to{transform:translate(0)}}@keyframes slide-y{0%{transform:translateY(var(--slide-y-offset, 24px))}to{transform:translateY(0)}}@keyframes morph-blur{0%{filter:blur(0px)}35%{filter:blur(4px)}to{filter:blur(0px)}}@keyframes pulse-glow{0%,to{opacity:.45;transform:scale(1)}50%{opacity:.85;transform:scale(1.04)}}@keyframes float-ambient{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-8px) rotate(.5deg)}}@keyframes iridescent-drift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes shimmer-sweep{0%{transform:translate(-100%)}to{transform:translate(200%)}}@keyframes construction-scan{0%{top:0%;opacity:.8}50%{opacity:1}to{top:100%;opacity:.2}}.animate-pulse-glow{animation:pulse-glow 6s infinite ease-in-out}.animate-float{animation:float-ambient 5s infinite ease-in-out}.animate-iridescent{background-size:200% 200%;animation:iridescent-drift 12s infinite ease-in-out}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}::view-transition-old(*),::view-transition-new(*),::view-transition-group(*){animation-duration:0s!important;animation-delay:0s!important}.animate-pulse-glow,.animate-float,.animate-iridescent{animation:none!important}}
