@font-face{font-family:Neue Montreal;src:url(/fonts/neueMontreal-Thin.woff2) format("woff2");font-weight:100;font-style:normal;font-display:swap}@font-face{font-family:Neue Montreal;src:url(/fonts/neueMontreal-thinItalic.woff2) format("woff2");font-weight:100;font-style:italic;font-display:swap}@font-face{font-family:Neue Montreal;src:url(/fonts/neueMontreal-light.woff2) format("woff2");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Neue Montreal;src:url(/fonts/neueMontreal-book.woff2) format("woff2");font-weight:380;font-style:normal;font-display:swap}@font-face{font-family:Neue Montreal;src:url(/fonts/neueMontreal-regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Neue Montreal;src:url(/fonts/neueMontreal-Italic.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Neue Montreal;src:url(/fonts/neueMontreal-medium.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Neue Montreal;src:url(/fonts/neueMontreal-bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Neue Montreal;src:url(/fonts/neueMontreal-boldItalic.woff2) format("woff2");font-weight:700;font-style:italic;font-display:swap}@property --bg-top{syntax: "<color>"; inherits: true; initial-value: #000000;}@property --bg-bottom{syntax: "<color>"; inherits: true; initial-value: #000000;}:root{color-scheme:dark light;--font-sans: "Neue Montreal", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: ui-monospace, "JetBrains Mono", monospace;font-family:var(--font-sans);--hero-margin-y: 248px}@media(max-width:1024px){:root{--hero-margin-y: 160px}}@media(max-width:768px){:root{--hero-margin-y: 80px}}:root,:root[data-theme=dark]{--bg-top: #000000;--bg-bottom: #000000;--fg: #f4f4f5;--muted: #9a9aa3;--accent: #6ee7ff;--panel-bg: rgba(0, 0, 0, .7);--panel-bg-soft: rgba(0, 0, 0, .45);--panel-border: rgba(255, 255, 255, .08);--hover-bg: rgba(255, 255, 255, .06)}:root[data-theme=light]{--bg-top: #f4f4f5;--bg-bottom: #f4f4f5;--fg: #0b0b0f;--muted: #6a6a73;--accent: #0066cc;--panel-bg: rgba(244, 244, 245, .82);--panel-bg-soft: rgba(244, 244, 245, .55);--panel-border: rgba(0, 0, 0, .08);--hover-bg: rgba(0, 0, 0, .05)}*{box-sizing:border-box}html,body{margin:0;padding:0;height:100%;background:transparent;color:var(--fg);overflow:hidden;transition:color 2.5s cubic-bezier(.65,0,.35,1) var(--theme-delay, 0ms)}:root:not([data-pointer=touch]) *,:root:not([data-pointer=touch]) *:before,:root:not([data-pointer=touch]) *:after{cursor:none!important}#bg{position:fixed;inset:0;z-index:0;background:radial-gradient(ellipse 210% 130% at 50% 108%,var(--bg-top) 0%,var(--bg-bottom) 100%);transition:--bg-top 2.5s cubic-bezier(.65,0,.35,1),--bg-bottom 2.5s cubic-bezier(.65,0,.35,1) .5s}#gl{position:fixed;inset:0;width:100%;height:100%;display:block;z-index:1;touch-action:none;user-select:none}#gl.canvas-reveal{animation:canvas-reveal-fade .7s cubic-bezier(.22,.61,.36,1) both}@keyframes canvas-reveal-fade{0%{opacity:0}to{opacity:1}}:root[data-layout=index] #gl{pointer-events:none}.debug-overlay{position:fixed;inset:0;z-index:5;pointer-events:none}#app{position:relative;z-index:2;height:100%;pointer-events:none}#app>*{pointer-events:auto}#app>.index-cover,#app>.index-list,#app>.tutorial{pointer-events:none}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.cursor{position:fixed;top:0;left:0;width:18px;height:18px;pointer-events:none;mix-blend-mode:difference;z-index:1000;will-change:transform,opacity;opacity:0;transition:width .36s cubic-bezier(.65,0,.2,1),height .36s cubic-bezier(.65,0,.2,1),opacity .6s ease}.cursor--visible{opacity:1}.cursor--star{width:28px;height:28px}.cursor--locked{width:var(--cursor-locked-size, 24px);height:var(--cursor-locked-size, 24px)}.cursor__circle,.cursor__star{position:absolute;inset:0;transform-origin:50% 50%;transition:opacity .32s cubic-bezier(.65,0,.2,1),transform .36s cubic-bezier(.65,0,.2,1)}.cursor__circle{background:#fff;border-radius:50%;opacity:1;transform:scale(1)}.cursor__star{opacity:0;transform:scale(.5) rotate(-12deg)}.cursor__star svg{width:100%;height:100%;display:block}.cursor__star polygon{fill:#fff;stroke:#fff;stroke-width:2.6;stroke-linejoin:round;stroke-linecap:round}.cursor--star .cursor__circle{opacity:0;transform:scale(.45)}.cursor--star .cursor__star{opacity:1;transform:scale(1) rotate(0)}.cursor__arrow,.cursor__play,.cursor__pause{position:absolute;inset:0;opacity:0;transition:opacity .28s cubic-bezier(.22,.61,.36,1),transform .28s cubic-bezier(.22,.61,.36,1);transform-origin:50% 50%}.cursor--arrow-left,.cursor--arrow-right,.cursor--media-play,.cursor--media-pause{width:48px;height:48px}.cursor--arrow-left .cursor__circle,.cursor--arrow-right .cursor__circle,.cursor--media-play .cursor__circle,.cursor--media-pause .cursor__circle{opacity:0}.cursor--arrow-right .cursor__arrow{opacity:1}.cursor--arrow-left .cursor__arrow{opacity:1;transform:scaleX(-1)}.cursor--media-play .cursor__play,.cursor--media-pause .cursor__pause{opacity:1}:root[data-pointer=touch] .cursor{display:none}.cursor-dot{position:fixed;top:0;left:0;width:4px;height:4px;background:#fff;border-radius:50%;mix-blend-mode:difference;z-index:1001;pointer-events:none;will-change:transform,opacity;opacity:0;transition:opacity .6s ease}.cursor-dot--visible{opacity:1}:root[data-pointer=touch] .cursor-dot{display:none}.loader{position:fixed;inset:0;z-index:100;background:#000;transition:opacity .9s cubic-bezier(.22,.61,.36,1)}:root[data-theme=light] .loader{background:#f4f4f5}.loader--done{opacity:0;pointer-events:none}.loader__bg{position:absolute;inset:0;z-index:0;pointer-events:none}.loader__bg>canvas{width:100%;height:100%;display:block}.header{position:fixed;top:0;left:0;right:0;z-index:50;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:32px 48px;pointer-events:none}.header__zone{display:flex;align-items:center;pointer-events:none}.header__zone--left{justify-content:flex-start}.header__zone--center{justify-content:center;gap:2px;position:relative}.header__zone--right{justify-content:flex-end;gap:6px}.header__nav-item{pointer-events:auto;font-size:12px;font-weight:500;letter-spacing:.04em;color:var(--muted);padding:8px 14px;border-radius:999px;text-decoration:none;display:inline-flex;flex-direction:column;align-items:center;line-height:1;transition:color .25s cubic-bezier(.22,.61,.36,1)}.header__nav-item:before{content:attr(data-label);font-weight:700;height:0;visibility:hidden;pointer-events:none;overflow:hidden}.header__nav-item:hover{color:var(--fg);font-weight:700;text-decoration:none}:root[data-about=open] .header__nav-item[data-id=about]{color:var(--fg);font-weight:700}.header__underline{position:absolute;top:0;left:0;height:1.5px;width:0;background:var(--fg);opacity:0;transform-origin:0 0;transform:translate(0);pointer-events:none;will-change:transform,width,opacity;transition:opacity .25s cubic-bezier(.22,.61,.36,1)}.header__underline--visible{opacity:1;transition:opacity 0s}.header__icon{pointer-events:auto;width:34px;height:34px;border-radius:999px;background:transparent;border:1px solid transparent;color:var(--fg);position:relative;display:grid;place-items:center;cursor:pointer;padding:0;overflow:hidden;transition:color 2.5s cubic-bezier(.65,0,.35,1) var(--theme-delay, 0ms),background-color 2.5s cubic-bezier(.65,0,.35,1) var(--theme-delay, 0ms),border-color 2.5s cubic-bezier(.65,0,.35,1) var(--theme-delay, 0ms)}.header__icon:hover{color:var(--fg);background:var(--panel-bg);border-color:transparent}:root[data-pointer=pen] .header__icon:hover{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.header__icon svg{display:block}.layout-icon{position:absolute;inset:0;margin:auto;width:18px;height:18px;opacity:0;transform:scale(.7) rotate(-30deg);transition:opacity .7s cubic-bezier(.22,.61,.36,1),transform .7s cubic-bezier(.22,.61,.36,1)}.theme-icon{width:18px;height:18px}.theme-icon__sun,.theme-icon__moon{transform-box:view-box;transform-origin:12px 12px;transition:opacity .52s cubic-bezier(.65,0,.2,1),transform .52s cubic-bezier(.65,0,.2,1),filter .3s cubic-bezier(.22,.61,.36,1)}.theme-icon__moon-eater{transform-box:view-box;transform-origin:16px 9px;transition:transform .52s cubic-bezier(.65,0,.2,1)}.theme-toggle.is-dark .theme-icon__sun{opacity:1;transform:scale(1) rotate(0)}.theme-toggle.is-dark .theme-icon__moon{opacity:0;transform:scale(.5) rotate(45deg)}.theme-toggle.is-dark .theme-icon__moon-eater{transform:translate(8px,-8px)}.theme-toggle.is-light .theme-icon__moon{opacity:1;transform:scale(1) rotate(0)}.theme-toggle.is-light .theme-icon__sun{opacity:0;transform:scale(.5) rotate(-45deg)}.theme-toggle.is-light .theme-icon__moon-eater{transform:translate(0)}.theme-icon__rotor{transform-box:view-box;transform-origin:12px 12px;animation:theme-sun-rotate 32s linear infinite;will-change:transform}@keyframes theme-sun-rotate{to{transform:rotate(360deg)}}.theme-ray{transform-origin:0px -5.5px;transition:transform .35s cubic-bezier(.22,.61,.36,1)}.header__icon--theme:hover .theme-ray--alt,.theme-toggle.is-hover .theme-ray--alt{transform:scaleY(1.55)}.theme-toggle.is-hover.is-light .theme-icon__moon{transform:scale(1.08) rotate(0);filter:drop-shadow(0 0 4px currentColor)}.header__icon--layout.is-playground .layout-icon--index,.header__icon--layout.is-index .layout-icon--playground{opacity:1;transform:scale(1)}.layout-rect{transform-origin:center;transform-box:fill-box;will-change:transform}.layout-rect--1{animation:layout-rect-wiggle-1 6s ease-in-out infinite}.layout-rect--2{animation:layout-rect-wiggle-2 9s ease-in-out infinite -2.4s}.layout-rect--3{animation:layout-rect-wiggle-3 7.3s ease-in-out infinite -4.1s}.layout-rect--4{animation:layout-rect-wiggle-4 8.1s ease-in-out infinite -1.2s}@keyframes layout-rect-wiggle-1{0%,to{transform:translate(0)}50%{transform:translate(.9px)}}@keyframes layout-rect-wiggle-2{0%,to{transform:translate(0) rotate(0)}50%{transform:translateY(-.8px) rotate(1.5deg)}}@keyframes layout-rect-wiggle-3{0%,to{transform:translate(0)}35%{transform:translate(-.7px,.5px)}70%{transform:translate(.5px,-.4px)}}@keyframes layout-rect-wiggle-4{0%,to{transform:scale(1) rotate(0)}50%{transform:scale(1.06) rotate(-1.5deg)}}.layout-burger{animation:layout-burger-scroll 6s linear infinite;will-change:transform}@keyframes layout-burger-scroll{0%{transform:translateY(-42px)}to{transform:translateY(0)}}.header__icon--layout:hover .layout-burger,.header__icon--layout.is-hover .layout-burger{animation-play-state:paused}.layout-icon--index{-webkit-mask-image:linear-gradient(to bottom,transparent 0,black 4px,black calc(100% - 4px),transparent 100%);mask-image:linear-gradient(to bottom,transparent 0,black 4px,black calc(100% - 4px),transparent 100%)}.header__icon--burger{display:none}.burger-icon{display:block}.burger-line{transform-box:view-box;transform-origin:12px 12px;transition:transform .52s cubic-bezier(.65,0,.2,1),opacity .52s cubic-bezier(.65,0,.2,1)}.header__icon--burger.is-open .burger-line--top{transform:scale(1.06) rotate(45deg) translateY(4px)}.header__icon--burger.is-open .burger-line--mid{transform:scale(0)}.header__icon--burger.is-open .burger-line--bot{transform:scale(1.06) rotate(-45deg) translateY(-4px)}.mobile-nav{position:fixed;inset:0;z-index:49;background:var(--bg-bottom);display:flex;flex-direction:column;visibility:hidden;opacity:0;pointer-events:none;transition:opacity .8s cubic-bezier(.4,0,.2,1) .2s,visibility 0s linear 1s,background-color 2.5s cubic-bezier(.65,0,.35,1) var(--theme-delay, 0ms)}.mobile-nav__items{display:flex;flex-direction:column;align-items:flex-start;gap:0;padding:140px 24px 0;pointer-events:auto}.mobile-nav__item{font-family:var(--font-sans);font-size:56px;font-weight:700;line-height:1.15;letter-spacing:-.01em;color:var(--fg);text-decoration:none;padding:4px 0;-webkit-tap-highlight-color:transparent;opacity:0;transform:translateY(10px);transition:opacity .8s cubic-bezier(.4,0,.2,1),transform 1.2s cubic-bezier(.4,0,.2,1),color 2.5s cubic-bezier(.65,0,.35,1) var(--theme-delay, 0ms)}.mobile-nav__item:hover,.mobile-nav__item:active{opacity:.6}.mobile-nav__copyright{position:absolute;left:24px;bottom:24px;font-family:var(--font-sans);font-size:14px;font-weight:500;letter-spacing:.02em;color:var(--muted);pointer-events:none;opacity:0;transform:translateY(8px);transition:opacity .8s cubic-bezier(.4,0,.2,1),transform 1.2s cubic-bezier(.4,0,.2,1),color 2.5s cubic-bezier(.65,0,.35,1) var(--theme-delay, 0ms)}:root[data-mobile-nav=open] .audio-toggle,:root[data-mobile-nav=open] .theme-toggle{opacity:0;pointer-events:none;transition:color 2.5s cubic-bezier(.65,0,.35,1) var(--theme-delay, 0ms),background-color 2.5s cubic-bezier(.65,0,.35,1) var(--theme-delay, 0ms),border-color 2.5s cubic-bezier(.65,0,.35,1) var(--theme-delay, 0ms),opacity .36s cubic-bezier(.22,.61,.36,1) 0ms}.brand{position:fixed;top:0;left:0;z-index:50;pointer-events:auto;font-family:var(--font-sans);font-size:12px;font-weight:700;letter-spacing:.02em;color:var(--fg);text-decoration:none;transform:translate(48px,32px);transition:transform .9s cubic-bezier(.65,0,.2,1),color 2.5s cubic-bezier(.65,0,.35,1) var(--theme-delay, 0ms);will-change:transform}.brand:hover{text-decoration:none}.brand:before{content:"";position:absolute;inset:-2px;pointer-events:auto}.brand__dot{color:var(--accent);transition:color 2.5s cubic-bezier(.65,0,.35,1) var(--theme-delay, 0ms)}.brand__suffix{position:relative;display:inline-block}.brand--loading .brand__suffix,.brand--swappable .brand__suffix{clip-path:inset(0)}.brand__word{display:inline-block;white-space:nowrap;will-change:transform,opacity;color:var(--muted);font-weight:500;transition:color 2.5s cubic-bezier(.65,0,.35,1) var(--theme-delay, 0ms)}.brand__word--percent,.brand__word--final{color:var(--fg);font-weight:700}.brand__word--entering{animation:brand-word-in .28s cubic-bezier(.16,1,.3,1) both}.brand__word--exiting{position:absolute;top:0;left:0;animation:brand-word-out .28s cubic-bezier(.16,1,.3,1) both}@keyframes brand-word-in{0%{transform:translateY(110%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes brand-word-out{0%{transform:translateY(0);opacity:1}to{transform:translateY(-110%);opacity:0}}.brand{--brand-prefix-width: 62px}.brand--loading{transform:translate(calc(50vw - var(--brand-prefix-width)),calc(50vh - 50%))!important;pointer-events:none;animation:brand-loading-in 1.1s cubic-bezier(.22,.61,.36,1) both}.brand--above-loader{z-index:110}@keyframes brand-loading-in{0%{opacity:0;filter:blur(6px)}to{opacity:1;filter:blur(0)}}:root[data-grid-fits=yes]:not([data-layout=index]) .brand{transform:translate(48px,calc(50vh - 50%))}.subtitle{position:fixed;top:0;left:0;z-index:30;pointer-events:none;font-family:var(--font-sans);font-size:12px;font-weight:500;letter-spacing:.02em;color:var(--muted);transform:translate(calc(100vw - 48px - 100%),calc(50vh - 50%)) translate(12px);opacity:0;transition:opacity .7s ease .2s,transform .9s cubic-bezier(.65,0,.2,1) .2s,color 2.5s cubic-bezier(.65,0,.35,1) var(--theme-delay, 0ms);will-change:transform,opacity}:root[data-grid-fits=yes] .subtitle{opacity:1;transform:translate(calc(100vw - 48px - 100%),calc(50vh - 50%)) translate(0)}:root[data-layout=index] .subtitle{opacity:0}.audio-toggle,.theme-toggle{position:fixed;bottom:32px;z-index:51;pointer-events:auto;width:36px;height:36px;background:transparent;border:1px solid transparent;border-radius:999px;color:var(--muted);display:grid;place-items:center;padding:0;overflow:hidden;transition:color 2.5s cubic-bezier(.65,0,.35,1) var(--theme-delay, 0ms),background-color 2.5s cubic-bezier(.65,0,.35,1) var(--theme-delay, 0ms),border-color 2.5s cubic-bezier(.65,0,.35,1) var(--theme-delay, 0ms),opacity .5s cubic-bezier(.4,0,.2,1) .5s}.theme-toggle{left:48px}.audio-toggle{left:92px}.audio-toggle:hover,.theme-toggle:hover{color:var(--fg);background:var(--panel-bg);border-color:transparent}:root[data-pointer=pen] .audio-toggle:hover,:root[data-pointer=pen] .theme-toggle:hover{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.brand,.subtitle,.audio-toggle,.theme-toggle{mix-blend-mode:difference}.brand,.brand .brand__word,.brand .brand__word--final,.brand .brand__word--percent,.subtitle,.audio-toggle,.audio-toggle:hover,.theme-toggle,.theme-toggle:hover{color:#fff}.theme-toggle--demo,.theme-toggle--demo:hover,.header__icon--burger-demo,.header__icon--burger-demo:hover,.header__icon--layout-demo,.header__icon--layout-demo:hover{mix-blend-mode:normal;color:var(--fg)}.audio-icon{display:block}.audio-bar{transform-box:fill-box;transform-origin:center;transition:transform .38s cubic-bezier(.22,.61,.36,1)}.audio-bar{transform:scaleY(.25)}.audio-amp{transform-box:fill-box;transform-origin:center;transform:scaleY(1);transition:transform .32s cubic-bezier(.22,.61,.36,1)}.audio-toggle--on.is-hover .audio-amp{transform:scaleY(.55)}.audio-toggle.is-hover:not(.audio-toggle--on) .audio-bar--1{animation:audio-wave 1.6s cubic-bezier(.4,0,.2,1) infinite 0s}.audio-toggle.is-hover:not(.audio-toggle--on) .audio-bar--2{animation:audio-wave 1.6s cubic-bezier(.4,0,.2,1) infinite .13s}.audio-toggle.is-hover:not(.audio-toggle--on) .audio-bar--3{animation:audio-wave 1.6s cubic-bezier(.4,0,.2,1) infinite .26s}.audio-toggle.is-hover:not(.audio-toggle--on) .audio-bar--4{animation:audio-wave 1.6s cubic-bezier(.4,0,.2,1) infinite .39s}@keyframes audio-wave{0%{transform:scaleY(.25)}18%{transform:scaleY(.6)}35%{transform:scaleY(.25)}to{transform:scaleY(.25)}}.audio-toggle--on .audio-bar--1{animation:audio-morph-in .48s cubic-bezier(.22,.61,.36,1) 0ms forwards,audio-pulse .85s ease-in-out .48s infinite}.audio-toggle--on .audio-bar--2{animation:audio-morph-in .48s cubic-bezier(.22,.61,.36,1) 80ms forwards,audio-pulse 1.1s ease-in-out .56s infinite}.audio-toggle--on .audio-bar--3{animation:audio-morph-in .48s cubic-bezier(.22,.61,.36,1) .16s forwards,audio-pulse .7s ease-in-out .64s infinite}.audio-toggle--on .audio-bar--4{animation:audio-morph-in .48s cubic-bezier(.22,.61,.36,1) .24s forwards,audio-pulse .95s ease-in-out .72s infinite}@keyframes audio-morph-in{0%{transform:scaleY(.25)}to{transform:scaleY(1)}}@keyframes audio-pulse{0%,to{transform:scaleY(1)}50%{transform:scaleY(.25)}}.lab-toggle{position:fixed;bottom:32px;left:50%;transform:translate(-50%);z-index:51;pointer-events:auto;width:36px;height:36px;background:transparent;border:1px solid transparent;border-radius:999px;color:var(--muted);display:grid;place-items:center;padding:0;overflow:hidden;transition:color 2.5s cubic-bezier(.65,0,.35,1) var(--theme-delay, 0ms),background-color 2.5s cubic-bezier(.65,0,.35,1) var(--theme-delay, 0ms),border-color 2.5s cubic-bezier(.65,0,.35,1) var(--theme-delay, 0ms)}.lab-toggle:hover{color:var(--fg);background:var(--panel-bg);border-color:var(--panel-border);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.lab{position:fixed;inset:0;z-index:38;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .5s cubic-bezier(.65,0,.2,1),visibility 0s linear .5s}:root[data-lab=open] .lab{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .5s cubic-bezier(.65,0,.2,1),visibility 0s linear 0s}.lab__backdrop{position:absolute;inset:0;background:radial-gradient(ellipse 220% 140% at 50% 105%,color-mix(in srgb,var(--bg-top) 90%,transparent),color-mix(in srgb,var(--bg-bottom) 94%,transparent));backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.lab__stage{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:4rem 1.5rem 2rem}.lab__inner{width:min(1100px,94vw);max-height:86vh;display:flex;flex-direction:column;gap:1.6rem;color:var(--fg);transform:translateY(12px);opacity:0;transition:transform .7s cubic-bezier(.65,0,.2,1) .1s,opacity .5s ease .1s}:root[data-lab=open] .lab__inner{transform:translateY(0);opacity:1}.lab__header{display:flex;flex-direction:column;gap:6px}.lab__eyebrow{font-family:var(--font-mono);font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}.lab__heading{margin:0;font-size:clamp(28px,4vw,48px);font-weight:400;letter-spacing:-.02em;line-height:1}.lab__lede{margin:0;font-size:13px;line-height:1.55;color:var(--muted);max-width:64ch}.lab__layout{display:grid;grid-template-columns:200px 1fr;gap:1.5rem;flex:1;min-height:0}.lab__nav{display:flex;flex-direction:column;gap:4px;border-right:1px solid var(--panel-border);padding-right:1rem;overflow-y:auto}.lab__nav-empty{font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;color:var(--muted);margin:0;padding:6px 0}.lab__nav-item{display:block;text-align:left;background:transparent;border:1px solid transparent;color:var(--muted);font:inherit;font-size:12px;padding:6px 10px;border-radius:6px;cursor:pointer;transition:color .2s ease,background-color .2s ease,border-color .2s ease}.lab__nav-item:hover{color:var(--fg);background:var(--hover-bg)}.lab__nav-item--active{color:var(--fg);border-color:var(--panel-border);background:var(--panel-bg-soft)}.lab__nav-section{display:flex;flex-direction:column;gap:2px}.lab__nav-section+.lab__nav-section{margin-top:14px;padding-top:14px;border-top:1px solid var(--panel-border)}.lab__nav-section-header{display:flex;align-items:center;gap:6px;background:transparent;border:none;color:var(--muted);font-family:var(--font-mono);font-size:9px;letter-spacing:.14em;text-transform:uppercase;padding:4px;text-align:left;cursor:pointer;transition:color .2s ease}.lab__nav-section-header:hover{color:var(--fg)}.lab__nav-section-chevron{display:inline-block;font-size:8px;width:8px;text-align:center;transition:transform .2s cubic-bezier(.22,.61,.36,1)}.lab__nav-section--collapsed .lab__nav-section-chevron{transform:rotate(-90deg)}.lab__nav-section-title{flex:1}.lab__nav-section-count{font-size:8px;opacity:.55}.lab__nav-items{display:flex;flex-direction:column;gap:2px;padding-left:6px}.lab__nav-section--collapsed .lab__nav-items{display:none}.lab__stage-area{position:relative;min-height:320px;border:1px dashed var(--panel-border);border-radius:8px;padding:1rem;overflow:auto}.lab__placeholder{margin:0;padding:1rem;font-family:var(--font-mono);font-size:11px;color:var(--muted);letter-spacing:.05em}.lab__experiment{width:100%;height:100%}.lab-exp{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(220px,1fr);gap:1.25rem;width:100%;height:100%;min-height:360px}.lab-exp__canvas-wrap{position:relative;background:var(--panel-bg-soft);border:1px solid var(--panel-border);border-radius:10px;overflow:hidden;min-height:360px}.lab-exp__canvas-wrap--centered{display:grid;place-items:center}.lab-exp__canvas-wrap--scroll{overflow-y:auto;padding:1.25rem;display:flex;flex-direction:column;gap:1.25rem}.lab-exp__canvas{width:100%;height:100%;display:block}.lab-exp__hint{position:absolute;bottom:10px;left:50%;transform:translate(-50%);font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;color:var(--muted);background:var(--panel-bg);border:1px solid var(--panel-border);padding:5px 9px;border-radius:999px;pointer-events:none;opacity:.85;transition:opacity .4s ease}.lab-exp__hint--hide{opacity:0}.lab-exp__panel{display:flex;flex-direction:column;gap:1rem;padding:.25rem .25rem .25rem .5rem;overflow-y:auto;min-width:0}.lab-exp__title{margin:0;font-size:14px;font-weight:500;letter-spacing:-.005em}.lab-exp__desc{margin:0;font-size:12px;line-height:1.55;color:var(--muted)}.lab-exp__desc code{font-family:var(--font-mono);font-size:11px;background:var(--panel-bg);border:1px solid var(--panel-border);border-radius:3px;padding:0 4px}.lab-exp__control{display:flex;flex-direction:column;gap:6px}.lab-exp__control label{font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.lab-exp__control input[type=range]{width:100%;accent-color:var(--accent)}.lab-exp__legend{display:flex;flex-direction:column;gap:4px;font-size:11px;color:var(--muted);list-style:none;padding:0;margin:0}.lab-exp__legend strong{color:var(--fg);font-weight:500}.lab-exp__reset{align-self:flex-start;background:transparent;border:1px solid var(--panel-border);color:var(--fg);font:inherit;font-size:11px;letter-spacing:.04em;padding:6px 12px;border-radius:999px;cursor:pointer;transition:background-color .2s ease,border-color .2s ease}.lab-exp__reset:hover{background:var(--hover-bg);border-color:var(--accent)}@media(max-width:780px){.lab-exp{grid-template-columns:1fr}}.lab-exp__nav-row{display:flex;gap:6px;flex-wrap:wrap}.lab-exp--thermal .lab-exp__canvas-wrap{background:#050505}.thermal-canvas{width:100%;height:100%;display:block}.thermal-hud{position:absolute;inset:0;pointer-events:none;font-family:var(--font-mono);font-size:10px;letter-spacing:.15em;color:#ffdcb4f2;text-shadow:0 0 8px rgba(255,90,30,.45)}.thermal-hud__bracket{position:absolute;width:28px;height:28px;border-color:#ffdcb4d9;border-style:solid;border-width:0}.thermal-hud__bracket--tl{top:12px;left:12px;border-top-width:2px;border-left-width:2px}.thermal-hud__bracket--tr{top:12px;right:12px;border-top-width:2px;border-right-width:2px}.thermal-hud__bracket--bl{bottom:12px;left:12px;border-bottom-width:2px;border-left-width:2px}.thermal-hud__bracket--br{bottom:12px;right:12px;border-bottom-width:2px;border-right-width:2px}.thermal-hud__rec{position:absolute;top:16px;left:50px;display:inline-flex;align-items:center;gap:6px;font-weight:500}.thermal-hud__rec-dot{width:8px;height:8px;border-radius:999px;background:#ff3030;box-shadow:0 0 8px #ff3c3ccc;animation:thermal-rec-pulse 1.2s ease-in-out infinite}@keyframes thermal-rec-pulse{0%,to{opacity:1}50%{opacity:.25}}.thermal-hud__label{position:absolute;top:16px;right:50px;font-weight:500}.thermal-hud__temp{position:absolute;bottom:16px;left:50px;font-variant-numeric:tabular-nums}.thermal-hud__src{position:absolute;bottom:16px;right:50px;opacity:.7}.thermal-hud__reticle{position:absolute;top:50%;left:50%;width:60px;height:60px;transform:translate(-50%,-50%);background:linear-gradient(#ffdcb4a6,#ffdcb4a6) center / 1px 60px no-repeat,linear-gradient(#ffdcb4a6,#ffdcb4a6) center / 60px 1px no-repeat;border:1px solid rgba(255,220,180,.5);border-radius:999px;mix-blend-mode:screen}.thermal-tabs{display:inline-flex;gap:0;background:var(--panel-bg);border:1px solid var(--panel-border);border-radius:999px;padding:3px}.thermal-tab{background:transparent;border:none;font:inherit;font-size:11px;letter-spacing:.04em;color:var(--muted);padding:4px 10px;border-radius:999px;cursor:pointer;transition:color .2s ease,background-color .2s ease}.thermal-tab--active{color:var(--fg);background:var(--panel-bg-soft)}.thermal-tab:hover:not(.thermal-tab--active){color:var(--fg)}.lab-exp--mosaic .lab-exp__canvas-wrap{background:#000;cursor:crosshair}.lab-exp--nav-hover .lab-exp__canvas-wrap{background:var(--bg-top);min-height:320px}.lab-nav-h__stage{position:relative;cursor:none}.lab-nav-h__canvas,.lab-nav-h__defs{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.lab-nav-h__cursor{position:absolute;inset:0;pointer-events:none;filter:url(#lab-nav-goo-filter)}.lab-nav-h__blob,.lab-nav-h__dot{position:absolute;top:0;left:0;background:var(--accent)}.lab-nav-h__dot{width:4px;height:4px;border-radius:50%}.lab-nav-h__bar{position:relative;z-index:1;display:flex;gap:4px;pointer-events:auto}.lab-nav-h__item{position:relative;display:inline-flex;align-items:center;padding:10px 18px;font-family:var(--font-sans);font-size:13px;font-weight:500;letter-spacing:.04em;color:var(--fg);text-decoration:none;cursor:none;user-select:none;transition:color 2.5s cubic-bezier(.65,0,.35,1) var(--theme-delay, 0ms)}.lab-nav-h__item:hover{text-decoration:none}.lab-nav-l__stage{position:relative;cursor:default}.lab-nav-l__bar{position:relative;z-index:1;display:flex;gap:4px}.lab-nav-l__item{position:relative;display:inline-flex;flex-direction:column;align-items:center;padding:10px 18px;font-family:var(--font-sans);font-size:13px;font-weight:500;letter-spacing:.04em;color:var(--muted);text-decoration:none;user-select:none;line-height:1;transition:color .25s cubic-bezier(.22,.61,.36,1)}.lab-nav-l__item:before{content:attr(data-label);font-weight:700;height:0;visibility:hidden;pointer-events:none;overflow:hidden}.lab-nav-l__item:hover{text-decoration:none;color:var(--fg);font-weight:700}.lab-nav-l__line{position:absolute;top:0;left:0;height:1.5px;background:var(--fg);pointer-events:none;opacity:0;transform-origin:0 0;transition:opacity .25s cubic-bezier(.22,.61,.36,1)}.lab-nav-l__line--visible{opacity:1;transition:opacity 0s}.lab-exp--theme .lab-exp__canvas-wrap{padding:1.5rem}.lab-theme__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem 2rem;width:100%;max-width:540px}.lab-theme__card{display:flex;flex-direction:column;align-items:center;gap:14px;padding:16px 12px;border:1px dashed var(--panel-border);border-radius:8px;color:var(--fg)}.lab-theme__card--morph{border-color:color-mix(in srgb,var(--accent) 35%,var(--panel-border))}.theme-toggle--demo{position:relative;inset:auto;width:36px;height:36px;display:grid;place-items:center;pointer-events:none;background:transparent;border:1px solid transparent;color:var(--fg);transition:none}.lab-theme__meta{display:flex;flex-direction:column;align-items:center;gap:2px}.lab-theme__label{font-size:11px;font-weight:500;letter-spacing:.02em;color:var(--fg)}.lab-theme__note{font-family:var(--font-mono);font-size:9px;letter-spacing:.05em;color:var(--muted);text-align:center}.lab-exp--layout .lab-exp__canvas-wrap{padding:1.5rem}.lab-layout__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem 2rem;width:100%;max-width:540px}.lab-layout__card{display:flex;flex-direction:column;align-items:center;gap:14px;padding:16px 12px;border:1px dashed var(--panel-border);border-radius:8px;color:var(--fg)}.lab-layout__card--morph{border-color:color-mix(in srgb,var(--accent) 35%,var(--panel-border))}.header__icon--layout-demo{position:relative;inset:auto;width:34px;height:34px;display:grid;place-items:center;pointer-events:none;background:transparent;border:1px solid transparent;color:var(--fg);transition:none}.lab-layout__meta{display:flex;flex-direction:column;align-items:center;gap:2px}.lab-layout__label{font-size:11px;font-weight:500;letter-spacing:.02em;color:var(--fg)}.lab-layout__note{font-family:var(--font-mono);font-size:9px;letter-spacing:.05em;color:var(--muted);text-align:center}.lab-burger__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding:24px;max-width:540px}.lab-burger__card{display:flex;flex-direction:column;align-items:center;gap:10px;padding:16px 8px;border:1px solid var(--panel-border);border-radius:12px;background:var(--panel-bg-soft);color:var(--fg)}.lab-burger__card--morph{border-color:color-mix(in srgb,var(--accent) 35%,var(--panel-border))}.header__icon--burger-demo{position:relative;inset:auto;width:34px;height:34px;display:grid;place-items:center;pointer-events:none;background:transparent;border:1px solid transparent;color:var(--fg);transition:none}.lab-burger__meta{display:flex;flex-direction:column;align-items:center;gap:2px}.lab-burger__label{font-size:11px;font-weight:500;letter-spacing:.02em;color:var(--fg)}.lab-burger__note{font-family:var(--font-mono);font-size:9px;letter-spacing:.05em;color:var(--muted);text-align:center}.lab-exp--audio .lab-exp__canvas-wrap{padding:1.5rem}.lab-audio__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem 2rem;width:100%;max-width:540px}.lab-audio__card{display:flex;flex-direction:column;align-items:center;gap:14px;padding:16px 12px;border:1px dashed var(--panel-border);border-radius:8px;color:var(--fg)}.lab-audio__card--morph{border-color:color-mix(in srgb,var(--accent) 35%,var(--panel-border));border-style:dashed}.audio-toggle--demo{position:static;width:36px;height:36px;display:grid;place-items:center;pointer-events:none;background:transparent;border:1px solid transparent;color:var(--fg);transition:none}.lab-audio__meta{display:flex;flex-direction:column;align-items:center;gap:2px}.lab-audio__label{font-size:11px;font-weight:500;letter-spacing:.02em;color:var(--fg)}.lab-audio__note{font-family:var(--font-mono);font-size:9px;letter-spacing:.05em;color:var(--muted);text-align:center}.sm-stage{cursor:pointer;display:grid;place-items:center}.sm-wrap{color:var(--fg);width:220px;height:220px;display:grid;place-items:center;--morph: 0}.sm-svg{overflow:visible}.sm-ray{transform-box:fill-box;transform-origin:50% 100%;transform:rotate(var(--ray-angle)) translateY(calc(var(--morph) * 7px)) scaleY(calc(1 - var(--morph)));opacity:calc(1 - var(--morph));transition:transform .7s cubic-bezier(.65,0,.2,1),opacity .5s ease}.sm-wrap .sm-rays{transform-origin:50% 50%;animation:sm-rays-spin 24s linear infinite}@keyframes sm-rays-spin{to{transform:translate(50px,50px) rotate(360deg)}}.sm-eater{transform:translate(calc((1 - var(--morph)) * 18px),calc((1 - var(--morph)) * -18px));transition:transform .8s cubic-bezier(.65,0,.2,1);transform-box:fill-box;transform-origin:50% 50%}.sm-star{opacity:0;transform-box:fill-box;transform-origin:50% 50%;transform:scale(calc(var(--morph)));transition:transform .7s ease,opacity .7s ease;animation:sm-twinkle 2.4s ease-in-out infinite;animation-delay:var(--star-delay, 0s)}.sm-wrap[style*="--morph:1"] .sm-star,.sm-wrap[style*="--morph: 1"] .sm-star{opacity:.9}.sm-stars{color:var(--fg)}.sm-star{opacity:calc(var(--morph) * .9)}@keyframes sm-twinkle{0%,to{transform:scale(calc(var(--morph) * .9))}50%{transform:scale(calc(var(--morph) * 1.25))}}.sm-stage:hover .sm-ray{transform:rotate(var(--ray-angle)) translateY(calc(var(--morph) * 7px - (1 - var(--morph)) * 2px)) scaleY(calc((1 - var(--morph)) * 1.2))}.sm-stage:hover .sm-disc{filter:drop-shadow(0 0 calc(8px + var(--morph) * 14px) color-mix(in srgb,var(--accent) calc(var(--morph) * 70% + 30%),transparent));transition:filter .3s ease}.sm-disc{transition:filter .4s ease}.kt-block{background:var(--panel-bg-soft);border:1px solid var(--panel-border);border-radius:8px;padding:1rem 1.1rem 1.2rem}.kt-block__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.85rem;gap:1rem}.kt-block__eyebrow{font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.kt-block__hint{font-family:var(--font-mono);font-size:9px;letter-spacing:.08em;color:var(--muted);opacity:.7}.kt-block__replay{background:transparent;border:1px solid var(--panel-border);color:var(--muted);font:inherit;font-size:10px;padding:4px 9px;border-radius:999px;cursor:pointer;transition:color .2s ease,border-color .2s ease}.kt-block__replay:hover{color:var(--fg);border-color:var(--accent)}.kt-text{margin:0;font-size:clamp(22px,3.4vw,38px);font-weight:500;letter-spacing:-.01em;line-height:1.1;color:var(--fg);display:inline-flex;flex-wrap:wrap}.kt-char{display:inline-block;will-change:transform,opacity}.kt-char--scrambling{font-family:var(--font-mono);color:var(--muted)}.kt-text--reveal .kt-char{opacity:0;transform:translateY(.7em) rotateX(-60deg);transform-origin:50% 100%}.kt-text--reveal.kt-text--reveal-play .kt-char{animation:kt-reveal-in .7s cubic-bezier(.18,.86,.28,1) both;animation-delay:var(--kt-delay, 0ms)}@keyframes kt-reveal-in{to{opacity:1;transform:translateY(0) rotateX(0)}}.kt-text--scramble{font-feature-settings:"tnum" 1}.kt-marquee{display:flex;flex-direction:column;gap:4px;overflow:hidden;border-top:1px solid var(--panel-border);border-bottom:1px solid var(--panel-border);padding:.5rem 0;mask-image:linear-gradient(to right,transparent 0,#000 8%,#000 92%,transparent 100%)}.kt-marquee__row{display:flex;white-space:nowrap;font-size:clamp(28px,4vw,48px);font-weight:500;letter-spacing:-.01em}.kt-marquee__row--top .kt-marquee__inner{animation:kt-marq-left 22s linear infinite}.kt-marquee__row--bot{color:color-mix(in srgb,var(--accent) 70%,var(--fg));margin-top:-.45em;opacity:.55;filter:blur(.3px)}.kt-marquee__row--bot .kt-marquee__inner{animation:kt-marq-right 30s linear infinite}@keyframes kt-marq-left{to{transform:translate(-50%)}}@keyframes kt-marq-right{0%{transform:translate(-50%)}to{transform:translate(0)}}.kt-text--magnet .kt-char{transition:color .2s ease}.kt-text--magnet:hover .kt-char{color:var(--accent)}.nx-row{position:relative;display:inline-flex;align-items:center;gap:0;padding:6px;background:var(--panel-bg);border:1px solid var(--panel-border);border-radius:999px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.nx-pill{position:absolute;left:6px;top:6px;width:0;height:0;background:color-mix(in srgb,var(--accent) 18%,transparent);border:1px solid color-mix(in srgb,var(--accent) 50%,transparent);border-radius:999px;pointer-events:none;z-index:0;transform:translateZ(0);will-change:transform,width}.nx-item{position:relative;z-index:1;background:transparent;border:none;color:var(--muted);font:inherit;font-size:13px;letter-spacing:.01em;padding:9px 18px;border-radius:999px;cursor:pointer;overflow:hidden;transition:color .25s ease;--mx: 50%;--my: 50%;--glow: 0}.nx-item:before{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;background:radial-gradient(120px circle at var(--mx) var(--my),color-mix(in srgb,var(--fg) 18%,transparent),transparent 60%);opacity:var(--glow);transition:opacity .2s ease}.nx-item:hover,.nx-item--active{color:var(--fg)}.nx-item__label{position:relative;z-index:1}.tutorial{position:fixed;bottom:80px;left:50%;transform:translate(-50%);z-index:25;pointer-events:none;font-size:11px;letter-spacing:.06em;color:var(--muted);display:flex;align-items:center;white-space:nowrap;opacity:1;transition:opacity .8s ease,color 2.5s cubic-bezier(.65,0,.35,1) var(--theme-delay, 0ms)}.tutorial--hidden{opacity:0}.tutorial__items{display:flex;align-items:center;gap:12px;transition:opacity .22s ease}.tutorial__items--swapping{opacity:0}:root[data-layout=index] .tutorial,:root[data-about=open] .tutorial{opacity:0;pointer-events:none}.tutorial__dot{opacity:.4}.tutorial__soon{opacity:.5}.about{position:fixed;inset:0;z-index:38;pointer-events:none;visibility:hidden;transition:visibility 0s linear .5s}:root[data-about=open] .about{visibility:visible;pointer-events:auto;transition:visibility 0s linear 0s}:root[data-about=open] .brand{transform:translate(48px,calc(50vh - 50%))}:root[data-about=open] .subtitle{opacity:0;pointer-events:none}.about__inner{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:min(820px,calc(100vw - 96px));color:var(--fg);font-family:var(--font-sans)}.about__heading{display:none}.about__body{display:flex;flex-direction:column;gap:16px}.about__paragraph{margin:0;font-size:12px;font-weight:500;line-height:1.55;letter-spacing:.01em;color:var(--fg)}.about__paragraph,.about__column,.about__copyright{opacity:0;transform:translateY(28px);transition:opacity .32s cubic-bezier(.22,.61,.36,1) var(--stagger-out, 0ms),transform .32s cubic-bezier(.22,.61,.36,1) var(--stagger-out, 0ms),color 2.5s cubic-bezier(.65,0,.35,1) var(--theme-delay, 0ms)}:root[data-about=open] .about__paragraph,:root[data-about=open] .about__column,:root[data-about=open] .about__copyright{opacity:1;transform:translateY(0);transition:opacity 1.1s cubic-bezier(.22,.61,.36,1) calc(.25s + var(--stagger-in, 0ms)),transform 1.1s cubic-bezier(.22,.61,.36,1) calc(.25s + var(--stagger-in, 0ms)),color 2.5s cubic-bezier(.65,0,.35,1) var(--theme-delay, 0ms)}.about__name{display:inline-block;position:relative;vertical-align:baseline;width:var(--w-default, max-content);clip-path:inset(0);cursor:pointer;font-weight:700;transition:width .45s cubic-bezier(.22,.61,.36,1)}.about__name:hover{width:var(--w-hover, max-content)}.about__name-default{display:inline-block;white-space:nowrap;transition:opacity .3s cubic-bezier(.22,.61,.36,1)}.about__name-hover{position:absolute;top:0;left:0;white-space:nowrap;opacity:0;transition:opacity .3s cubic-bezier(.22,.61,.36,1)}.about__name:hover .about__name-default{opacity:0}.about__name:hover .about__name-hover{opacity:1}.about__engine{display:inline-block;position:relative;vertical-align:baseline;clip-path:inset(0);transition:width .35s cubic-bezier(.22,.61,.36,1)}.about__engine .brand__word{color:var(--fg)}.about__footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:32px;margin-top:56px;font-size:12px;font-weight:500;letter-spacing:.01em;color:var(--fg)}.about__column{display:flex;flex-direction:column;gap:2px;min-width:0}.about__column-title{color:var(--muted);font-weight:500;transition:color 2.5s cubic-bezier(.65,0,.35,1) var(--theme-delay, 0ms)}.about__column-value{color:var(--fg);transition:color 2.5s cubic-bezier(.65,0,.35,1) var(--theme-delay, 0ms)}.about__column-line{display:block;color:var(--fg);text-decoration:none;transition:color 2.5s cubic-bezier(.65,0,.35,1) var(--theme-delay, 0ms)}.about__column-line--link{text-decoration:none}.about__column-line--link:hover{text-decoration:underline}.about__social{display:block;color:var(--fg);text-decoration:none;text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px;text-decoration-color:color-mix(in srgb,currentColor 50%,transparent);transition:text-decoration-color .2s cubic-bezier(.22,.61,.36,1),color 2.5s cubic-bezier(.65,0,.35,1) var(--theme-delay, 0ms)}.about__social:hover{text-decoration-color:currentColor}.about__copyright{position:fixed;right:32px;bottom:32px;z-index:38;font-family:var(--font-sans);font-size:11px;font-weight:500;letter-spacing:.02em;color:var(--muted);pointer-events:none}@media(max-width:1024px)and (min-width:769px){.about__inner{width:calc(100vw - 80px);display:grid;grid-template-columns:repeat(8,1fr);column-gap:24px}.about__body,.about__footer{grid-column:3 / -1}}.index-list{position:fixed;inset:0;z-index:4;pointer-events:none;transition:opacity .32s cubic-bezier(.22,.61,.36,1)}:root[data-layout=index] .index-list{pointer-events:auto}:root[data-about=open] .index-list{opacity:0;pointer-events:none}.index-list__inner{position:absolute;inset:96px 48px;pointer-events:none;display:flex;flex-direction:column;justify-content:center}:root[data-layout=index] .index-list__inner{pointer-events:auto}.index-list__hero{position:absolute;top:50%;left:50%;width:0;height:0;z-index:1;pointer-events:none;opacity:0;transition:opacity .5s cubic-bezier(.22,.61,.36,1)}:root[data-layout=index] .index-list__hero--visible{opacity:1}.index-list__hero-card{position:absolute;top:0;left:0;width:min(550px,40vw);aspect-ratio:var(--card-ar, 1);max-height:75vh;opacity:0;transform:translate(-50%,calc(-50% + 20px)) scale(.95);pointer-events:none;overflow:hidden;transition:aspect-ratio .4s cubic-bezier(.22,.61,.36,1),opacity .5s cubic-bezier(.2,.9,.3,1),transform .5s cubic-bezier(.2,.9,.3,1);will-change:transform,opacity}.index-list__hero-card.is-revealed{opacity:1;transform:translate(-50%,-50%) scale(1)}.index-list__hero-card--exiting{opacity:0;transform:translate(-50%,-50%) scale(.94);transition:aspect-ratio .4s cubic-bezier(.22,.61,.36,1),opacity .28s cubic-bezier(.32,0,.67,0),transform .28s cubic-bezier(.32,0,.67,0)}.index-list__hero-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;pointer-events:none;user-select:none}.index-list__rows{position:relative;z-index:2;list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.index-list__row{display:grid;grid-template-columns:repeat(6,1fr);column-gap:32px;align-items:baseline;padding:8px 0;color:var(--muted);cursor:pointer;opacity:0;transform:translateY(8px);transition:opacity .32s cubic-bezier(.22,.61,.36,1) var(--stagger-out, 0ms),transform .32s cubic-bezier(.22,.61,.36,1) var(--stagger-out, 0ms),color .24s cubic-bezier(.22,.61,.36,1)}:root[data-layout=index] .index-list__row{opacity:1;transform:translateY(0);transition:opacity .9s cubic-bezier(.22,.61,.36,1) calc(var(--stagger-in, 0ms) + .5s),transform .9s cubic-bezier(.22,.61,.36,1) calc(var(--stagger-in, 0ms) + .5s),color .24s cubic-bezier(.22,.61,.36,1)}.index-list__row--hovered{color:var(--fg)}.index-list__row--hovered .index-list__cell{font-weight:700}.index-list__row--soon{--row-rest-opacity: .65}:root[data-layout=index] .index-list__row--soon{opacity:var(--row-rest-opacity)}:root[data-layout=index] .index-list__row--soon.index-list__row--hovered{opacity:1}.index-list__cell--idx{grid-column:1;font-family:var(--font-mono);font-size:12px;letter-spacing:.06em;text-align:left}.index-list__cell--brand{grid-column:2;font-size:12px;text-align:right}.index-list__cell--name{grid-column:3;font-size:12px;font-weight:500;letter-spacing:-.005em;text-align:left}.index-list__cell--kind,.index-list__cell--year{transition:color .24s cubic-bezier(.22,.61,.36,1)}.index-list__cell--kind{grid-column:4;font-size:12px;text-align:left}.index-list__cell--year{grid-column:5;font-family:var(--font-mono);font-size:12px;letter-spacing:.04em;text-align:right}.index-list__empty{font-family:var(--font-mono);font-size:12px;letter-spacing:.06em;color:var(--muted);padding:32px 0;text-align:center}.index-list__row-thumb{display:none}.index-list__row-meta{display:contents}.index-list__row-thumb-media{width:100%;height:100%;object-fit:cover;display:block}@media(max-width:1024px)and (min-width:769px){:root[data-layout=index][data-pointer=touch] .index-list__inner{bottom:0;justify-content:flex-start;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-bottom:96px}:root[data-layout=index][data-pointer=touch] .index-list__hero{display:none}:root[data-layout=index][data-pointer=touch] .index-list__rows{display:grid;grid-template-columns:repeat(8,1fr);column-gap:24px;row-gap:56px}:root[data-layout=index][data-pointer=touch] .index-list__row:nth-child(odd){grid-column:2 / span 3}:root[data-layout=index][data-pointer=touch] .index-list__row:nth-child(2n){grid-column:5 / span 3}:root[data-layout=index][data-pointer=touch] .index-list__row{display:flex;flex-direction:column;gap:8px;padding:0}:root[data-layout=index][data-pointer=touch] .index-list__cell--idx{grid-column:auto}:root[data-layout=index][data-pointer=touch] .index-list__row-thumb{display:block;width:100%;aspect-ratio:1;overflow:hidden;background:var(--panel-bg, rgba(0, 0, 0, .06));border-radius:2px}:root[data-layout=index][data-pointer=touch] .index-list__row-meta{display:flex;align-items:baseline;width:100%}:root[data-layout=index][data-pointer=touch] .index-list__cell--brand{grid-column:auto;text-align:left}:root[data-layout=index][data-pointer=touch] .index-list__cell--brand:after{content:" - ";white-space:pre}:root[data-layout=index][data-pointer=touch] .index-list__cell--name{grid-column:auto;margin-right:auto}:root[data-layout=index][data-pointer=touch] .index-list__cell--kind{display:none}:root[data-layout=index][data-pointer=touch] .index-list__cell--year{grid-column:auto;text-align:right}}@media(max-width:768px){:root[data-layout=index] .index-list__inner{bottom:0;justify-content:flex-start;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-bottom:96px}:root[data-layout=index] .index-list__hero{display:none}:root[data-layout=index] .index-list__rows{gap:48px}:root[data-layout=index] .index-list__row{display:flex;flex-direction:column;gap:8px;padding:0}:root[data-layout=index] .index-list__cell--idx{grid-column:auto;font-size:13px}:root[data-layout=index] .index-list__row-thumb{display:block;width:100%;aspect-ratio:1;overflow:hidden;background:var(--panel-bg, rgba(0, 0, 0, .06));border-radius:2px}:root[data-layout=index] .index-list__row-meta{display:flex;align-items:baseline;width:100%}:root[data-layout=index] .index-list__cell--brand{grid-column:auto;text-align:left;font-size:15px}:root[data-layout=index] .index-list__cell--brand:after{content:" - ";white-space:pre}:root[data-layout=index] .index-list__cell--name{grid-column:auto;margin-right:auto;text-align:left;font-size:15px}:root[data-layout=index] .index-list__cell--kind{display:none}:root[data-layout=index] .index-list__cell--year{grid-column:auto;text-align:right;font-size:13px}}.project-detail{position:fixed;inset:0;z-index:40;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .5s cubic-bezier(.65,0,.2,1),visibility 0s linear .5s}.project-detail--visible{opacity:1;visibility:visible;transition:opacity .5s cubic-bezier(.65,0,.2,1),visibility 0s linear 0s}.project-detail__backdrop{position:absolute;inset:0;background:transparent;pointer-events:none}.project-detail--visible .project-detail__backdrop{pointer-events:auto}.project-detail__stage{position:relative;width:100%;height:100%;pointer-events:none}.project-detail__video{position:fixed;top:0;left:0;width:1px;height:1px;opacity:0;pointer-events:none;user-select:none;-webkit-user-drag:none;z-index:-1}.project-detail__meta{position:absolute;bottom:120px;left:50%;transform:translate(-50%);width:85vw;max-width:1500px;display:flex;justify-content:space-between;align-items:baseline;gap:24px;font-family:var(--font-sans);font-size:12px;font-weight:500;letter-spacing:.02em;color:var(--muted);pointer-events:none;font-variant-numeric:tabular-nums;transition:color 2.5s cubic-bezier(.65,0,.35,1) var(--theme-delay, 0ms)}.project-detail__meta-cell{white-space:nowrap;opacity:0;transform:translateY(8px);transition:opacity .75s cubic-bezier(.22,.61,.36,1),transform .75s cubic-bezier(.22,.61,.36,1)}.project-detail--visible .project-detail__meta-cell{opacity:1;transform:translateY(0)}.project-detail__meta-cell--title{color:var(--fg);font-weight:700;transition:color 2.5s cubic-bezier(.65,0,.35,1) var(--theme-delay, 0ms)}.project-detail__meta-cell--duration{pointer-events:auto;cursor:ew-resize;touch-action:none;user-select:none;-webkit-user-select:none}.project-detail__meta-cell--duration.is-scrubbing{cursor:grabbing;color:var(--fg)}.project-detail__timeline{position:absolute;bottom:90px;left:50%;transform:translate(-50%);height:20px;background:transparent;pointer-events:auto;cursor:pointer;touch-action:none;user-select:none;-webkit-user-select:none;opacity:0;transition:opacity .75s cubic-bezier(.22,.61,.36,1) .32s}.project-detail__timeline:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:var(--muted);transform:translateY(-50%);pointer-events:none;transition:background-color 2.5s cubic-bezier(.65,0,.35,1) var(--theme-delay, 0ms)}.project-detail--visible .project-detail__timeline{opacity:1}.project-detail__timeline.is-scrubbing{cursor:grabbing}.project-detail__timeline-dot{position:absolute;top:50%;left:0%;width:6px;height:6px;border-radius:50%;background:var(--fg);transform:translate(-50%,-50%);cursor:grab;pointer-events:none;transition:background-color 2.5s cubic-bezier(.65,0,.35,1) var(--theme-delay, 0ms)}.project-detail__timeline.is-scrubbing .project-detail__timeline-dot{cursor:grabbing}.project-detail__scrub{position:fixed;inset:0;width:100vw;height:100vh;pointer-events:none;z-index:41;opacity:0;transition:opacity .18s cubic-bezier(.22,.61,.36,1)}.project-detail__scrub.is-active{opacity:1}.project-detail__scrub-line{stroke:var(--fg);stroke-width:1;stroke-linecap:round;transition:stroke 2.5s cubic-bezier(.65,0,.35,1) var(--theme-delay, 0ms)}.project-detail__scrub-dot{fill:var(--fg);transition:fill 2.5s cubic-bezier(.65,0,.35,1) var(--theme-delay, 0ms)}.project-detail__see{position:absolute;bottom:32px;left:50%;transform:translate(-50%,14px);padding:8px 16px;font-family:var(--font-sans);font-size:12px;font-weight:700;letter-spacing:.02em;color:var(--fg);background:transparent;border:none;cursor:pointer;pointer-events:auto;opacity:0;transition:transform .7s cubic-bezier(.65,0,.2,1) .32s,opacity .5s ease .32s,color 2.5s cubic-bezier(.65,0,.35,1) var(--theme-delay, 0ms)}.project-detail--visible .project-detail__see{transform:translate(-50%);opacity:1}.project-detail__see[hidden]{display:none}.project-detail__see:after{content:"";position:absolute;left:13px;right:13px;bottom:4px;height:1.5px;background:currentColor;transform:scaleX(0);transform-origin:left center;opacity:0;pointer-events:none;transition:opacity .25s cubic-bezier(.22,.61,.36,1),transform 0s linear .25s,background-color 2.5s cubic-bezier(.65,0,.35,1) var(--theme-delay, 0ms)}.project-detail__see:hover:after,.project-detail__see:focus-visible:after{transform:scaleX(1);opacity:1;transition:transform .7s cubic-bezier(.22,.61,.36,1),opacity 0s,background-color 2.5s cubic-bezier(.65,0,.35,1) var(--theme-delay, 0ms)}:root[data-project-page] .tutorial{opacity:0;pointer-events:none;transition:opacity .32s cubic-bezier(.22,.61,.36,1)}:root[data-project-page] #gl{display:none}:root[data-project-page] .index-list{pointer-events:none}:root[data-project-page][data-layout=index] .index-list__row{opacity:0;transform:translateY(8px);transition:opacity .32s cubic-bezier(.22,.61,.36,1) var(--stagger-out, 0ms),transform .32s cubic-bezier(.22,.61,.36,1) var(--stagger-out, 0ms)}:root[data-project-page] .index-list__hero{opacity:0;transition:opacity .32s cubic-bezier(.22,.61,.36,1)}:root[data-project-page] .project-detail{transform:translateY(-30vh);opacity:0;pointer-events:none;transition:transform 1.1s cubic-bezier(.16,1,.3,1),opacity .8s cubic-bezier(.16,1,.3,1)}.project-page{position:fixed;inset:0;z-index:36;overflow-y:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;pointer-events:none;visibility:hidden;transform:translateY(100vh);background:transparent;transition:transform 0s linear .7s,visibility 0s linear .7s}.project-page--visible{visibility:visible;pointer-events:auto;transform:translateY(0);transition:transform 1.1s cubic-bezier(.16,1,.3,1),visibility 0s linear 0s}.project-page::-webkit-scrollbar{display:none}.project-page__column{display:grid;grid-template-columns:repeat(10,1fr);column-gap:24px;padding:0 40px;color:var(--fg);transition:color 2.5s cubic-bezier(.65,0,.35,1) var(--theme-delay, 0ms)}.project-page__column>.project-page__hero{grid-column:3 / span 6}.project-page__after-hero{grid-column:1 / -1;display:grid;grid-template-columns:repeat(10,1fr);column-gap:24px;row-gap:248px;transform:translateY(var(--parallax-y, 0px));transition:transform 1.1s cubic-bezier(.16,1,.3,1)}.project-page__after-hero>*{grid-column:3 / span 6;margin:0}.project-page__after-hero>.project-page__credits{grid-column:2 / span 8}.project-page__after-hero>.project-page__intro{grid-column:4 / span 4}.project-page__block{grid-column:3 / span 6;margin:0}.project-page__block[data-width=narrow][data-align=center]{grid-column:4 / span 4}.project-page__block[data-width=narrow][data-align=left]{grid-column:1 / span 4}.project-page__block[data-width=narrow][data-align=right]{grid-column:7 / span 4}.project-page__block[data-width=default][data-align=center]{grid-column:3 / span 6}.project-page__block[data-width=default][data-align=left]{grid-column:1 / span 6}.project-page__block[data-width=default][data-align=right]{grid-column:5 / span 6}.project-page__block[data-width=wide][data-align=center]{grid-column:2 / span 8}.project-page__block[data-width=wide][data-align=left]{grid-column:1 / span 8}.project-page__block[data-width=wide][data-align=right]{grid-column:3 / span 8}.project-page__block[data-width=full]{grid-column:1 / -1}.project-page__block[data-space-after=small]{margin-bottom:-152px}.project-page__block[data-space-after=large]{margin-bottom:152px}.project-page__row{display:grid;gap:24px}.project-page__row[data-cols="2"]{grid-template-columns:1fr 1fr}.project-page__row[data-cols="3"]{grid-template-columns:1fr 1fr 1fr}.project-page__row[data-gap=small]{gap:12px}.project-page__row[data-gap=large]{gap:48px}.project-page__row>*{margin:0;width:100%}.project-page__column>.project-page__hero,.project-page__after-hero>*{opacity:0;transform:translateY(20px);transition:opacity .4s cubic-bezier(.22,.61,.36,1) var(--stagger-out, 0ms),transform .4s cubic-bezier(.22,.61,.36,1) var(--stagger-out, 0ms)}.project-page--visible .project-page__column>.project-page__hero,.project-page--visible .project-page__after-hero>*{opacity:1;transform:translateY(0);transition:opacity 1.1s cubic-bezier(.22,.61,.36,1) calc(var(--stagger-in, 0ms) + .5s),transform 1.1s cubic-bezier(.22,.61,.36,1) calc(var(--stagger-in, 0ms) + .5s)}.project-page__meta-title,.project-page__meta-studio,.project-page__meta-year,.project-page__intro p,.project-page__text p,.project-page__two-col-cell p,.project-page__asset-row-caption,.project-page__asset-caption,.project-page__asset-missing,.project-page__asset-variants,.project-page__credits-title,.project-page__credit-role,.project-page__credit-names,.project-page__loading,.project-page__empty,.project-page__empty h2,.project-page__empty code,.project-page__hero--missing{transition:color 2.5s cubic-bezier(.65,0,.35,1) var(--theme-delay, 0ms)}.project-page__asset-frame,.project-page__hero--missing,.project-page__empty code{transition:color 2.5s cubic-bezier(.65,0,.35,1) var(--theme-delay, 0ms),background-color 2.5s cubic-bezier(.65,0,.35,1) var(--theme-delay, 0ms)}.project-page__hero{width:100%;height:calc(100vh - 2 * var(--hero-margin-y, 248px));margin-top:var(--hero-margin-y, 248px);margin-bottom:var(--hero-margin-y, 248px);display:flex;align-items:center;justify-content:center}.project-page__hero-img,.project-page__hero-video{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;border-radius:2px}.project-page__hero--missing{width:100%;height:100%;background:var(--panel-bg, rgba(0, 0, 0, .06));display:grid;place-items:center;color:var(--muted);font-size:12px}.project-page__meta{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;font-family:var(--font-sans);font-size:14px;letter-spacing:.01em;margin-top:16px}.project-page__meta-title{font-size:24px;font-weight:700;line-height:1.2;color:var(--fg)}.project-page__meta-studio{font-weight:500;color:var(--muted);margin-top:2px}.project-page__meta-year{font-weight:500;color:var(--muted);white-space:nowrap}.project-page__intro p{font-family:var(--font-sans);font-size:14px;line-height:1.55;color:var(--fg);margin:0}.project-page__text p{font-family:var(--font-sans);line-height:1.55;color:var(--fg);margin:0}.project-page__text--body p{font-size:14px}.project-page__text--intro p{font-size:16px;line-height:1.5}.project-page__two-col{display:grid;grid-template-columns:1fr 1fr;gap:24px}.project-page__two-col-cell p{font-family:var(--font-sans);font-size:14px;line-height:1.55;color:var(--fg);margin:0}.project-page__asset-row{display:grid;gap:24px}.project-page__asset-row--cols-1{grid-template-columns:1fr}.project-page__asset-row--cols-2{grid-template-columns:1fr 1fr}.project-page__asset-row--cols-3{grid-template-columns:1fr 1fr 1fr}.project-page__asset-row-caption{grid-column:1 / -1;margin-top:4px;font-family:var(--font-sans);font-size:12px;letter-spacing:.01em;color:var(--muted)}.project-page__asset{margin:0}.project-page__asset--cycleable{cursor:pointer;touch-action:manipulation;user-select:none;-webkit-user-select:none}.project-page__asset--cycleable .project-page__asset-variants{transition:background-color .2s cubic-bezier(.22,.61,.36,1)}.project-page__asset--cycleable:hover .project-page__asset-variants{background:#000000b3}.project-page__asset-frame{position:relative;width:100%;background:var(--panel-bg, rgba(0, 0, 0, .04));overflow:hidden;border-radius:2px}.project-page__asset-img,.project-page__asset-video{display:block;width:100%;height:100%;object-fit:cover}.project-page__asset-missing{position:absolute;inset:0;display:grid;place-items:center;color:var(--muted);font-size:11px}.project-page__asset-variants{position:absolute;bottom:8px;right:8px;padding:4px 8px;background:#00000080;color:#fff;font-family:var(--font-sans);font-size:10px;letter-spacing:.02em;border-radius:999px;pointer-events:none;font-variant-numeric:tabular-nums}.project-page__asset-caption{margin:8px 0 0;font-family:var(--font-sans);font-size:12px;line-height:1.4;color:var(--muted)}.project-page__credits{display:flex;flex-direction:column;gap:16px}.project-page__credits-title{font-family:var(--font-sans);font-size:14px;font-weight:700;color:var(--fg);margin-bottom:8px}.project-page__credits-grid{display:grid;grid-template-columns:repeat(4,1fr);column-gap:24px;row-gap:32px}.project-page__credits-band{display:flex;flex-direction:column;gap:16px}.project-page__credit-row{display:flex;flex-direction:column;gap:2px}.project-page__credit-role{font-family:var(--font-sans);font-size:12px;font-weight:500;color:var(--muted)}.project-page__credit-names{font-family:var(--font-sans);font-size:13px;font-weight:500;color:var(--fg)}.project-page__loading,.project-page__empty{padding:80px 0;text-align:center;font-family:var(--font-sans);font-size:14px;color:var(--muted)}.project-page__empty h2{font-size:18px;font-weight:700;color:var(--fg);margin:0 0 8px}.project-page__empty code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;background:var(--panel-bg, rgba(0, 0, 0, .06));padding:2px 6px;border-radius:2px}@media(max-width:1024px)and (min-width:769px){.project-page__column{grid-template-columns:repeat(8,1fr)}.project-page__column>.project-page__hero{grid-column:2 / span 6}.project-page__after-hero{grid-template-columns:repeat(8,1fr)}.project-page__after-hero>*{grid-column:2 / span 6}.project-page__after-hero>.project-page__intro{grid-column:2 / span 6}.project-page__after-hero>.project-page__credits{grid-column:2 / span 6}}@media(max-width:768px){.project-page__column{display:block;padding:0 16px}.project-page__two-col,.project-page__asset-row--cols-2,.project-page__asset-row--cols-3{grid-template-columns:1fr}.project-page__credits-grid{grid-template-columns:1fr 1fr;column-gap:16px;row-gap:24px}.project-page__after-hero{grid-template-columns:1fr;row-gap:64px}.project-page__after-hero>*,.project-page__after-hero>.project-page__intro,.project-page__after-hero>.project-page__credits{grid-column:1 / -1}.project-page__block{grid-column:1 / -1;margin-bottom:0}.project-page__row{grid-template-columns:1fr;gap:48px}.project-page__meta{gap:16px}.project-page__meta-title{font-size:32px;line-height:1.15}.project-page__meta-studio,.project-page__meta-year{font-size:24px;line-height:1.25}.project-page__meta-studio{margin-top:6px}.project-page__credits-title{font-size:24px;line-height:1.25;margin-bottom:12px}.project-page__intro p,.project-page__text--body p,.project-page__text--intro p,.project-page__two-col-cell p,.project-page__credit-names{font-size:16px;line-height:1.5}.project-page__credit-role,.project-page__asset-row-caption,.project-page__asset-caption{font-size:13px}}.panel{position:fixed;bottom:1rem;z-index:22;background:var(--panel-bg);color:var(--fg);font-family:var(--font-mono);font-size:11px;line-height:1.4;border:1px solid var(--panel-border);border-radius:8px;padding:8px 10px;user-select:none;min-width:200px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:background-color 2.5s cubic-bezier(.65,0,.35,1) var(--theme-delay, 0ms),border-color 2.5s cubic-bezier(.65,0,.35,1) var(--theme-delay, 0ms),color 2.5s cubic-bezier(.65,0,.35,1) var(--theme-delay, 0ms)}.panel--debug{right:1rem}.panel--perf{right:calc(220px + 1.5rem);min-width:210px}.minimap{position:fixed;right:1rem;bottom:calc(1rem + 380px);z-index:26;background:var(--panel-bg);color:var(--fg);font-family:var(--font-mono);font-size:10px;line-height:1.4;border:1px solid var(--panel-border);border-radius:8px;padding:6px 8px 8px;user-select:none;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);pointer-events:auto}.minimap__title{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-bottom:6px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;font-size:9px;color:var(--muted)}.minimap__legend{display:inline-flex;align-items:center;gap:6px;font-weight:500;text-transform:none;letter-spacing:.02em;color:var(--muted)}.minimap__dot{display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:2px;vertical-align:middle}.minimap__dot[data-dot-load]{background:#2ec471d9}.minimap__dot[data-dot-keep]{background:#e8c438b3}.minimap__dot[data-dot-leak]{background:#e83838f2}.minimap__canvas{display:block;width:240px;height:180px;border-radius:4px;background:#0d0e10}.minimap__readout{padding-top:6px;font-size:10px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.minimap__readout[data-leak=yes]{color:#e83838f2;font-weight:600}.panel__row--spark{justify-content:center;padding-top:4px}.panel__spark{width:100%;height:24px;display:block;border-radius:3px}.panel__title{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);font-size:9px;margin-bottom:6px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:8px}.panel__chevron{font-size:9px;transition:transform .2s ease}.panel--collapsed .panel__title{margin-bottom:0}.panel--collapsed .panel__body{display:none}.panel--collapsed .panel__chevron{transform:rotate(-90deg)}.panel__separator{height:1px;background:var(--panel-border);margin:6px -10px 4px}.panel__body{display:flex;flex-direction:column;gap:2px}.panel__row{display:flex;justify-content:space-between;align-items:center;gap:12px}.panel__row>label{color:var(--muted)}.panel__value{color:var(--fg);font-variant-numeric:tabular-nums}.panel__slider{display:flex;align-items:center;gap:6px}.panel input[type=checkbox]{accent-color:var(--accent);cursor:pointer}.panel input[type=range]{width:90px;accent-color:var(--accent);cursor:pointer}.panel__section{display:flex;flex-direction:column;margin-top:6px;border-top:1px solid var(--panel-border);padding-top:4px}.panel__section:first-of-type{margin-top:0;border-top:none;padding-top:0}.panel__section-title{display:flex;align-items:center;justify-content:space-between;font-size:9px;text-transform:uppercase;letter-spacing:.14em;color:var(--muted);cursor:pointer;padding:4px 0;user-select:none}.panel__section-body{display:flex;flex-direction:column;gap:2px;padding-bottom:4px}.panel__section--collapsed .panel__section-body{display:none}.panel__section--collapsed .panel__section-title .panel__chevron{transform:rotate(-90deg)}.panel__row--button{justify-content:stretch}.panel__button{width:100%;border:1px solid var(--panel-border);background:var(--hover-bg);color:var(--fg);font:inherit;font-size:10px;letter-spacing:.08em;text-transform:uppercase;padding:5px 8px;border-radius:4px;cursor:pointer;transition:background-color .2s ease,color .2s ease}.panel__button:hover{background:var(--accent);color:var(--bg-top)}.panel__select{background:var(--panel-bg-soft);border:1px solid var(--panel-border);color:var(--fg);font:inherit;font-size:10px;padding:2px 6px;border-radius:3px;min-width:90px;cursor:pointer}@media(max-width:1023px){.header{padding:20px 24px}.brand{transform:translate(24px,20px)}:root[data-grid-fits=yes]:not([data-layout=index]) .brand{transform:translate(24px,calc(50vh - 50%))}:root[data-grid-fits=yes] .subtitle{transform:translate(calc(100vw - 24px - 100%),calc(50vh - 50%)) translate(0)}:root[data-mobile-nav=open]:not([data-layout=index]) .brand{transform:translate(24px,20px)}.audio-toggle,.theme-toggle{bottom:24px}.theme-toggle{left:24px}.audio-toggle{left:68px}.lab-toggle{bottom:24px;left:112px}.index-list__inner{inset:72px 24px}.index-list__row{column-gap:16px}.index-list__hero-card{width:min(430px,60vw);max-height:60vh}.project-detail__meta{bottom:80px}.project-detail__see{bottom:24px}}@media(max-width:768px){.header{grid-template-columns:1fr auto}.header__zone--center,.header__icon--layout{display:none}.header__icon--burger{display:grid}.audio-toggle,.theme-toggle,.header__icon--burger{background:var(--panel-bg);border-color:transparent;color:var(--fg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.audio-toggle,.theme-toggle{mix-blend-mode:normal}:root[data-mobile-nav=open] .mobile-nav{visibility:visible;opacity:1;pointer-events:auto;transition:opacity .64s cubic-bezier(.22,.61,.36,1),visibility 0s linear 0s,background-color 2.5s cubic-bezier(.65,0,.35,1) var(--theme-delay, 0ms)}:root[data-mobile-nav=open] .mobile-nav__item{opacity:1;transform:translateY(0);transition:opacity .82s cubic-bezier(.22,.61,.36,1) var(--enter-delay, 0ms),transform .82s cubic-bezier(.22,.61,.36,1) var(--enter-delay, 0ms),color 2.5s cubic-bezier(.65,0,.35,1) var(--theme-delay, 0ms)}:root[data-mobile-nav=open] .mobile-nav__items>:nth-child(1){--enter-delay: .24s}:root[data-mobile-nav=open] .mobile-nav__items>:nth-child(2){--enter-delay: .32s}:root[data-mobile-nav=open] .mobile-nav__items>:nth-child(3){--enter-delay: .4s}:root[data-mobile-nav=open] .mobile-nav__items>:nth-child(4){--enter-delay: .48s}:root[data-mobile-nav=open] .mobile-nav__copyright{opacity:1;transform:translateY(0);transition:opacity .7s cubic-bezier(.22,.61,.36,1) .72s,transform .7s cubic-bezier(.22,.61,.36,1) .72s,color 2.5s cubic-bezier(.65,0,.35,1) var(--theme-delay, 0ms)}.tutorial{display:none}.about{overflow-y:auto;-webkit-overflow-scrolling:touch}.about__inner{position:relative;top:0;left:0;transform:none;width:auto;padding:140px 24px 0}:root[data-about=open] .brand{transform:translate(24px,20px)}.about__body{gap:24px}.about__paragraph{font-size:26px;line-height:1.3;letter-spacing:0}.about__footer{flex-direction:column;align-items:flex-start;gap:32px;margin-top:56px;font-size:26px}.about__column{gap:4px}.about__column-title,.about__column-value,.about__column-line,.about__social{font-size:26px;line-height:1.3}.about__social{text-decoration:none}.about__copyright{position:static;left:auto;right:auto;bottom:auto;z-index:auto;font-size:26px;line-height:1.3;color:var(--muted);padding:48px 24px 120px}.project-detail__meta{position:static;bottom:auto;left:auto;transform:none;width:100%;max-width:none;display:block}.project-detail__meta-cell--title{position:absolute;top:80px;left:16px;right:16px;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-detail__meta-cell--studio{position:absolute;top:100px;left:16px;right:16px;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-detail__meta-cell--aspect{position:absolute;bottom:110px;left:16px}.project-detail__meta-cell--fps{position:absolute;bottom:92px;left:16px}.project-detail__meta-cell--year{position:absolute;bottom:110px;right:16px}.project-detail__meta-cell--duration{position:absolute;bottom:56px;left:50%;transform:translate(-50%,8px)}.project-detail--visible .project-detail__meta-cell--duration{transform:translate(-50%)}.project-detail__see{bottom:16px}.project-detail__timeline{display:none}}@media(max-width:599px){.header{padding:16px}.brand{transform:translate(16px,16px)}:root[data-grid-fits=yes]:not([data-layout=index]) .brand{transform:translate(16px,calc(50vh - 50%))}:root[data-grid-fits=yes] .subtitle{transform:translate(calc(100vw - 16px - 100%),calc(50vh - 50%)) translate(0)}:root[data-mobile-nav=open]:not([data-layout=index]) .brand{transform:translate(16px,16px)}.audio-toggle,.theme-toggle,.project-detail__see{bottom:16px}.theme-toggle{left:16px}.audio-toggle{left:60px}.index-list__inner{left:16px;right:16px}:root[data-about=open] .brand{transform:translate(16px,16px)}.about__inner{padding:110px 16px 0}.about__copyright{padding:48px 16px 110px}.mobile-nav__items{padding:110px 16px 0}.mobile-nav__item{font-size:48px}.mobile-nav__copyright{left:16px;bottom:16px}}
