*,*:after,*:before{box-sizing:border-box}@media(pointer:fine){*,*:after,*:before{cursor:none!important}}:root{font-size:12px;--color-text: #fff;--color-bg: #fff;--color-link: #fff;--color-link-hover: #fff;--page-padding: 1.5rem;--ui-font: "IBM Plex Mono", "SFMono-Regular", Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--ui-tracking: .08em}body{margin:0;color:var(--color-text);background-color:var(--color-bg);font-family:var(--ui-font);text-transform:uppercase;letter-spacing:var(--ui-tracking);font-size:.82rem;line-height:1.2;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:color .52s ease}body.frame-text-dark{--color-text: #121212;--color-link: #121212;--color-link-hover: #121212}.start-screen{position:fixed;inset:0;z-index:35000;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.25rem;background:#08080c;opacity:0;transition:opacity .6s ease;pointer-events:none}.start-screen.is-visible{opacity:1;pointer-events:auto}.start-screen.is-exiting{opacity:0;pointer-events:none}.start-screen__buttons{display:flex;gap:1rem}.start-screen__btn{background:none;border:1px solid rgba(255,255,255,.35);color:#ffffffe6;font-family:var(--ui-font);font-size:clamp(.8rem,1.5vw,1rem);text-transform:uppercase;letter-spacing:.18em;padding:.75rem 2.5rem;cursor:none;opacity:0;transform:translateY(12px);transition:color .2s ease,border-color .2s ease,opacity .6s cubic-bezier(.25,.46,.45,.94) .2s,transform .6s cubic-bezier(.25,.46,.45,.94) .2s}.start-screen__btn:hover{color:#fff;border-color:#ffffffb3}.start-screen__btn--present{border-color:#ffffff2e;color:#ffffff80;transition-delay:0ms,0ms,.32s,.32s}.start-screen__btn--present:hover{color:#ffffffe6;border-color:#ffffff80}.start-screen.is-visible .start-screen__btn{opacity:1;transform:translateY(0)}.start-screen__hint{margin:0;font-family:var(--ui-font);font-size:9px;text-transform:uppercase;letter-spacing:.18em;color:#ffffff47;opacity:0;transform:translateY(8px);transition:opacity .6s ease .4s,transform .6s cubic-bezier(.25,.46,.45,.94) .4s}.start-screen.is-visible .start-screen__hint{opacity:1;transform:translateY(0)}.the-end-overlay{position:fixed;inset:0;z-index:90;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;pointer-events:none;opacity:0;background:radial-gradient(ellipse at center,rgba(8,8,12,.55) 0%,transparent 70%);transition:opacity 1.2s ease}.the-end-overlay.is-visible{opacity:1}body.is-at-end .plane-label-overlay{opacity:0!important;transform:translateY(8px)}.the-end-overlay__text{margin:0;font-family:var(--ui-font);font-size:clamp(1rem,2.5vw,1.8rem);font-weight:400;letter-spacing:.22em;color:#ffffffd9;text-transform:uppercase}.the-end-overlay__sub{margin:0;font-size:9px;letter-spacing:.16em;color:#ffffff47;text-transform:uppercase}#intro-screen{position:fixed;inset:0;z-index:20000;background:#08080c;pointer-events:none;transform-origin:center;transition:opacity .9s cubic-bezier(.4,0,1,1)}#intro-screen.is-exiting{opacity:0}.intro-tvoff-overlay{position:fixed;inset:0;z-index:30000;pointer-events:none;transform-origin:center;background:#fff;opacity:1;filter:brightness(2.5)}.intro-tvoff-overlay.is-active{animation:introTvOff .9s cubic-bezier(.3,0,.8,.2) forwards}@keyframes introTvOff{0%{transform:scaleY(1) scaleX(1);opacity:1;filter:brightness(2.5)}26%{transform:scaleY(.003) scaleX(1);opacity:1;filter:brightness(3.5)}66%{transform:scaleY(.003) scaleX(.06);opacity:1;filter:brightness(2)}86%{transform:scaleY(.003) scaleX(.012);opacity:.6}to{transform:scaleY(.003) scaleX(0);opacity:0}}.intro-hint-overlay{position:fixed;top:50%;left:50%;transform:translate(-50%) translateY(calc(-50% + 12px));margin:0;font-family:var(--ui-font);font-size:clamp(.85rem,2vw,1.3rem);font-weight:400;text-transform:uppercase;letter-spacing:.1em;color:#ffffffb8;text-align:center;white-space:nowrap;opacity:0;pointer-events:none;z-index:25000;transition:opacity .7s ease,transform .7s cubic-bezier(.25,.46,.45,.94);&--title{font-size:clamp(1.4rem,3.5vw,2.2rem);font-weight:600;color:#ffffffeb;letter-spacing:.08em;transform:translate(-50%) translateY(calc(-50% + 14px));&.is-visible{transform:translate(-50%) translateY(-50%)}&.is-out{transform:translate(-50%) translateY(calc(-50% - 14px))}}}.intro-hint-overlay.is-visible{opacity:1;transform:translate(-50%) translateY(-50%)}.intro-hint-overlay.is-out{opacity:0;transform:translate(-50%) translateY(calc(-50% - 12px))}.intro-skip-btn{position:fixed;top:var(--page-padding, 1.5rem);right:var(--page-padding, 1.5rem);z-index:26000;background:none;border:1px solid rgba(255,255,255,.22);color:#ffffff80;font-family:var(--ui-font);font-size:10px;letter-spacing:.14em;text-transform:uppercase;padding:.5rem .9rem;cursor:pointer;opacity:0;pointer-events:none;transition:opacity .6s ease,color .2s ease,border-color .2s ease}.intro-skip-btn.is-visible{opacity:1;pointer-events:auto}.intro-skip-btn:hover{color:#ffffffd9;border-color:#ffffff80}.intro-cinematic-block{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:25000;display:flex;flex-direction:column;gap:1.4rem;align-items:flex-start;max-width:min(580px,82vw);opacity:0;pointer-events:none;transition:opacity .7s ease,transform .5s cubic-bezier(.25,.46,.45,.94)}.intro-cinematic-block.is-visible{opacity:1}.intro-cinematic-question{font-family:var(--ui-font);font-size:clamp(1.1rem,2.8vw,1.7rem);font-weight:500;letter-spacing:.06em;color:#ffffffe0;opacity:0;transform:translateY(8px);transition:opacity .7s ease,transform .7s cubic-bezier(.25,.46,.45,.94)}.intro-cinematic-question.is-visible{opacity:1;transform:translateY(0)}.intro-cinematic-answer{font-family:var(--ui-font);font-size:clamp(.8rem,1.8vw,1rem);letter-spacing:.1em;color:#ffffff73;padding-left:1.25rem;border-left:1px solid rgba(255,255,255,.12);opacity:0;transform:translateY(5px);transition:opacity .6s ease,transform .6s cubic-bezier(.25,.46,.45,.94)}.intro-cinematic-answer.is-visible{opacity:1;transform:translateY(0)}.intro-standalone-card{position:fixed;top:50%;left:50%;transform:translate(-50%) translateY(calc(-50% + 12px));z-index:25000;margin:0;font-family:var(--ui-font);font-size:clamp(1rem,2.8vw,1.9rem);font-weight:400;letter-spacing:.07em;color:#ffffffd9;text-align:center;max-width:min(680px,84vw);opacity:0;pointer-events:none;transition:opacity .8s ease,transform .8s cubic-bezier(.25,.46,.45,.94)}.intro-standalone-card.is-visible{opacity:1;transform:translate(-50%) translateY(-50%)}.intro-standalone-card.is-out{opacity:0;transform:translate(-50%) translateY(calc(-50% - 12px))}#loading-screen{position:fixed;inset:0;z-index:25000;background:#08080c;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3rem;font-family:var(--ui-font);text-transform:uppercase;letter-spacing:var(--ui-tracking);transition:opacity .6s ease;pointer-events:none}#loading-screen.is-hidden{opacity:0}#loading-header{font-size:.82rem;font-weight:600;margin:0;color:#ffffffe6}#loading-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1.25rem;min-width:17rem}.loading-step{display:grid;grid-template-columns:1.25rem 1fr auto;align-items:center;gap:.75rem;color:#ffffff2e;transition:color .4s ease}.loading-step[data-state=active]{color:#ffffffe6}.loading-step[data-state=done]{color:#fff6}.loading-step__icon{display:flex;align-items:center;justify-content:center;font-size:.65rem;height:1rem}.loading-step[data-state=pending] .loading-step__icon:before{content:"○"}.loading-step[data-state=active] .loading-step__icon:before{content:"";display:block;width:4px;height:4px;background:currentColor;border-radius:50%;animation:loadingPulse .9s ease-in-out infinite alternate}.loading-step[data-state=done] .loading-step__icon:before{content:"✓"}@keyframes loadingPulse{0%{opacity:.3;transform:scale(.7)}to{opacity:1;transform:scale(1.3)}}.loading-step__label{font-size:.82rem}.loading-step__count{font-size:.75rem;opacity:.5;min-width:4rem;text-align:right;font-variant-numeric:tabular-nums}.loading-step[data-state=pending] .loading-step__count{visibility:hidden}html.js .frame,html.js .gallery-arrows,html.js .plane-label-overlay{opacity:0}body.is-ready .frame{animation:introSlideDown .7s cubic-bezier(.4,0,.2,1) .1s both}body.is-ready .gallery-arrows{animation:introSlideRight .7s cubic-bezier(.4,0,.2,1) .25s both}body.is-ready .plane-label-overlay{animation:introFadeIn .6s ease .4s both}@keyframes introSlideDown{0%{opacity:0;transform:translateY(-1.25rem)}to{opacity:1;transform:translateY(0)}}@keyframes introSlideRight{0%{opacity:0;transform:translate(1.5rem)}to{opacity:1;transform:translate(0)}}@keyframes introFadeIn{0%{opacity:0}to{opacity:1}}body.is-intro-done .frame{animation:none;opacity:1;transform:none}body.is-intro-done .gallery-arrows{animation:none;opacity:1;transform:translateY(-50%) translate(0)}body.is-intro-done .plane-label-overlay{animation:none;opacity:1}a{text-decoration:none;color:var(--color-link);outline:none;cursor:pointer;transition:color .52s ease}a:hover{text-decoration:underline;color:var(--color-link-hover)}a:focus{outline:none;background:#d3d3d3}a:focus:not(:focus-visible){background:transparent}a:focus:focus-visible{outline:2px solid red;background:transparent}.frame,.frame span,.frame p,.frame h1{transition:color .52s ease,opacity .42s cubic-bezier(.4,0,.2,1),transform .42s cubic-bezier(.4,0,.2,1)}body.is-presenting .frame:before{content:"";position:fixed;top:0;left:0;right:0;height:7rem;background:linear-gradient(to bottom,rgba(0,0,0,.5) 0%,transparent 100%);pointer-events:none;z-index:-1}.frame{padding:3rem var(--page-padding) 0;display:grid;z-index:1000;position:relative;grid-row-gap:1rem;grid-column-gap:2rem;pointer-events:none;justify-items:start;grid-template-columns:1fr auto auto;grid-template-areas:"title present-toggle menu-toggle";column-gap:1.5rem}.frame #cdawrap{justify-self:start;grid-area:sponsor}.frame a,.frame button{pointer-events:auto}.frame .frame__title{grid-area:title;font-size:inherit;font-weight:600;margin:0}.frame .frame__back{grid-area:back;justify-self:start}.frame .frame__archive{grid-area:archive;justify-self:start}.frame .frame__github{grid-area:github}.frame .frame__present-toggle{grid-area:present-toggle;justify-self:end;background:none;border:none;color:var(--color-text);font-family:var(--ui-font);font-size:inherit;text-transform:uppercase;letter-spacing:var(--ui-tracking);cursor:pointer;padding:0;transition:opacity .2s ease}.frame .frame__present-toggle:hover{opacity:.6}.frame .frame__menu-toggle{grid-area:menu-toggle;justify-self:end;background:none;border:none;color:var(--color-text);font-family:var(--ui-font);font-size:inherit;text-transform:uppercase;letter-spacing:var(--ui-tracking);cursor:pointer;padding:0;transition:opacity .4s ease}.frame .frame__menu-toggle:hover{opacity:.6}.frame body.is-presenting .frame__menu-toggle{opacity:0;pointer-events:none}@media screen and (min-width:53em){.frame{padding:var(--page-padding);height:100%;position:fixed;top:0;left:0;width:100%;grid-template-columns:1fr auto auto;grid-template-rows:auto;align-content:start;column-gap:1.5rem;grid-template-areas:"title present-toggle menu-toggle"}.frame .frame__tags{align-self:end}.frame .frame__credit,.frame #cdawrap{justify-self:end;text-align:right;max-width:300px}}.content{padding:var(--page-padding);display:flex;flex-direction:column;width:100vw;position:relative;pointer-events:none}@media screen and (min-width:53em){.content{min-height:100vh;justify-content:center;align-items:center}}.start-screen__title{margin:0;font-family:var(--ui-font);font-size:clamp(.85rem,2vw,1rem);font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:#ffffffe6;opacity:0;transform:translateY(10px);transition:opacity .6s ease .1s,transform .6s cubic-bezier(.25,.46,.45,.94) .1s}.start-screen.is-visible .start-screen__title{opacity:1;transform:translateY(0)}.start-screen__subtitle{margin:0;font-family:var(--ui-font);font-size:clamp(.65rem,1.4vw,.78rem);font-weight:400;letter-spacing:.16em;text-transform:uppercase;color:#ffffff61;opacity:0;transform:translateY(10px);transition:opacity .6s ease .16s,transform .6s cubic-bezier(.25,.46,.45,.94) .16s}.start-screen.is-visible .start-screen__subtitle{opacity:1;transform:translateY(0)}.start-screen__preview{width:clamp(6rem,12vw,9rem);aspect-ratio:2 / 3;overflow:hidden;border:1px solid rgba(255,255,255,.1);opacity:0;transform:translateY(10px);transition:opacity .6s ease .18s,transform .6s cubic-bezier(.25,.46,.45,.94) .18s}.start-screen.is-visible .start-screen__preview{opacity:1;transform:translateY(0)}.start-screen__preview-img{width:100%;height:100%;object-fit:cover;opacity:.75;display:block}.start-screen__slideshow-row{display:flex;justify-content:center;margin-top:-.25rem}.start-screen__btn[data-tooltip]{position:relative}.start-screen__btn[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + .65rem);left:50%;transform:translate(-50%);background:#0c0c12eb;border:1px solid rgba(255,255,255,.1);color:#ffffff73;font-family:var(--ui-font);font-size:9px;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;padding:.4rem .75rem;pointer-events:none;opacity:0;transition:opacity .18s ease}.start-screen__btn[data-tooltip]:hover:after{opacity:1}.carousel-overlay{position:fixed;inset:0;z-index:50000;background:#08080c;display:flex;flex-direction:column;align-items:center;opacity:0;transition:opacity .5s ease;pointer-events:none}.carousel-overlay.is-visible{opacity:1;pointer-events:auto}.carousel-close{position:absolute;top:var(--page-padding);right:var(--page-padding);background:none;border:1px solid rgba(255,255,255,.22);color:#ffffff80;font-family:var(--ui-font);font-size:10px;letter-spacing:.14em;text-transform:uppercase;padding:.5rem .9rem;cursor:pointer;transition:color .2s ease,border-color .2s ease}.carousel-close:hover{color:#ffffffd9;border-color:#ffffff80}.carousel-main{flex:1 1 0;min-height:0;width:100%;display:flex;align-items:stretch}.carousel-image-wrap{flex:1 1 0;min-width:0;display:flex;align-items:center;justify-content:center;padding:4rem var(--page-padding) 1rem}.carousel-img{display:block;max-width:100%;max-height:100%;object-fit:contain}.carousel-meta{width:9rem;flex-shrink:0;display:flex;align-items:center;padding:4rem 1.5rem 1rem 0}.carousel-specs{margin:0;padding:0;display:flex;flex-direction:column;gap:1rem}.carousel-specs__row{display:flex;flex-direction:column;gap:.2rem}.carousel-specs__row dt{font-family:var(--ui-font);font-size:8px;letter-spacing:.16em;color:#ffffff38;text-transform:uppercase}.carousel-specs__row dd{margin:0;font-family:var(--ui-font);font-size:clamp(.7rem,1.2vw,.82rem);letter-spacing:.08em;color:#fff9;text-transform:uppercase}.carousel-info{width:100%;max-width:640px;padding:1rem var(--page-padding) 0;text-align:center;display:flex;flex-direction:column;gap:.5rem}.carousel-title{margin:0;font-family:var(--ui-font);font-size:clamp(.9rem,2vw,1.1rem);font-weight:600;letter-spacing:.12em;color:#ffffffe6;text-transform:uppercase}.carousel-desc{margin:0;font-family:var(--ui-font);font-size:clamp(.7rem,1.5vw,.85rem);letter-spacing:.06em;color:#ffffff73;line-height:1.7;text-transform:none}.carousel-nav{display:flex;align-items:center;gap:2rem;padding:1.25rem var(--page-padding) 2rem}.carousel-prev,.carousel-next{background:none;border:1px solid rgba(255,255,255,.22);color:#fff9;font-family:var(--ui-font);font-size:1rem;padding:.5rem 1.25rem;cursor:pointer;transition:color .2s ease,border-color .2s ease,opacity .2s ease}:is(.carousel-prev,.carousel-next):hover:not(:disabled){color:#fff;border-color:#fff9}:is(.carousel-prev,.carousel-next):disabled{opacity:.2;cursor:default}.carousel-tags{display:flex;flex-direction:column;gap:.35rem;padding-top:1.25rem;border-top:1px solid rgba(255,255,255,.07);margin-top:1.25rem}.carousel-tag{font-family:var(--ui-font);font-size:8px;letter-spacing:.12em;text-transform:uppercase;color:#fff6;border:1px solid rgba(255,255,255,.12);padding:.2rem .5rem;align-self:flex-start;white-space:nowrap}.carousel-counter{font-family:var(--ui-font);font-size:.75rem;letter-spacing:.14em;color:#ffffff59;min-width:5rem;text-align:center}.webgl{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:auto;touch-action:none;z-index:0;clip-path:inset(0% round 0px);transition:clip-path .6s cubic-bezier(.4,0,.2,1)}body{transition:none}body.is-presenting .webgl{clip-path:inset(0px round 1.5rem)}body.is-presenting{background-color:#08080c}.debug-pane{position:fixed;right:1rem;top:4rem;z-index:2000}.fps-stats{position:fixed!important;left:max(1.5rem,env(safe-area-inset-left))!important;top:max(3.5rem,env(safe-area-inset-top))!important;right:auto!important;bottom:auto!important;z-index:2000!important;pointer-events:none}@media(max-width:53em){.debug-pane{top:auto;right:max(1.2rem,env(safe-area-inset-right));bottom:max(.75rem,env(safe-area-inset-bottom))}}.velocity-visualizer{position:fixed;left:max(1.52rem,env(safe-area-inset-left));bottom:max(4.75rem,env(safe-area-inset-bottom));z-index:2000;width:220px;padding:.5rem .625rem;border:1px solid rgba(255,255,255,.2);background:#040a12cc;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#fff;font-family:var(--ui-font);text-transform:uppercase;letter-spacing:var(--ui-tracking);pointer-events:none}.velocity-visualizer__label,.velocity-visualizer__value{margin:0;font-size:10px}.velocity-visualizer__value{margin-top:.25rem}.velocity-visualizer__track{position:relative;margin-top:.5rem;width:100%;height:6px;background:#ffffff1f}.velocity-visualizer__fill{position:absolute;top:0;left:50%;width:0;height:100%;background:#7fffd4}.gallery-arrows{position:fixed;right:clamp(1rem,3vw,2.5rem);top:50%;transform:translateY(-50%) translate(0);z-index:200;display:flex;flex-direction:column;gap:.5rem;opacity:1;transition:opacity .4s cubic-bezier(.4,0,.2,1),transform .4s cubic-bezier(.4,0,.2,1)}body.is-presenting .gallery-arrows{opacity:0;pointer-events:none}.gallery-arrows__btn{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;background:none;border:1px solid rgba(255,255,255,.2);color:#ffffffb3;cursor:pointer;transition:color .2s ease,border-color .2s ease}.gallery-arrows__btn svg{width:1rem;height:1rem}.gallery-arrows__btn:hover{color:#fff;border-color:#ffffffb3}.gallery-arrows__btn:disabled{opacity:.2;cursor:default;pointer-events:none}.gallery-nav{position:fixed;inset:0;z-index:1500;background:#060608f0;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);display:flex;flex-direction:column;justify-content:flex-start;padding:5rem clamp(2rem,8vw,10rem);overflow-y:auto;pointer-events:none;opacity:0;transition:opacity .4s ease}.gallery-nav.is-open{opacity:1;pointer-events:auto}.gallery-nav__close{position:absolute;top:var(--page-padding);right:var(--page-padding);background:none;border:none;color:#fff;font-family:var(--ui-font);font-size:inherit;text-transform:uppercase;letter-spacing:var(--ui-tracking);cursor:pointer;padding:0;transition:opacity .2s ease}.gallery-nav__close:hover{opacity:.6}.gallery-nav__list{list-style:none;margin:0;padding:0;columns:2;column-gap:clamp(1.5rem,5vw,5rem);border-top:1px solid rgba(255,255,255,.08)}.gallery-nav__item{display:flex;flex-direction:column;gap:.4rem;padding:.9rem 0;border-bottom:1px solid rgba(255,255,255,.08);break-inside:avoid;cursor:pointer;opacity:0;transform:translate(1.5rem);transition:opacity .35s ease calc(var(--i) * 35ms),transform .35s ease calc(var(--i) * 35ms),border-color .2s ease}.gallery-nav__item:hover .gallery-nav__title{opacity:.6}.gallery-nav__item-row{display:flex;align-items:baseline;gap:1.5rem}.gallery-nav.is-open .gallery-nav__item{opacity:1;transform:none}.gallery-nav__number{font-size:9px;opacity:.4;min-width:2rem;flex-shrink:0}.gallery-nav__title{font-size:clamp(.9rem,2.5vw,1.6rem);letter-spacing:.06em;transition:opacity .2s ease;flex:1}.gallery-nav__download{flex-shrink:0;margin-left:auto;background:none;border:1px solid rgba(255,255,255,.15);color:#fff6;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:color .2s ease,border-color .2s ease}.gallery-nav__download svg{width:.875rem;height:.875rem;flex-shrink:0}.gallery-nav__download:hover{color:#ffffffd9;border-color:#ffffff73}.gallery-nav__footer{position:absolute;bottom:clamp(1.5rem,4vw,3rem);left:clamp(2rem,8vw,10rem);margin:0;font-size:9px;font-family:var(--ui-font);text-transform:uppercase;letter-spacing:var(--ui-tracking);color:#ffffff4d;line-height:1.8}.gallery-nav__footer a{color:#ffffffa6;text-decoration:underline;text-underline-offset:2px;transition:color .2s ease}.gallery-nav__footer a:hover{color:#fff}.gallery-nav__replay{position:absolute;bottom:clamp(1.5rem,4vw,3rem);right:clamp(2rem,8vw,10rem);background:none;border:1px solid rgba(255,255,255,.18);color:#ffffff73;font-family:var(--ui-font);font-size:9px;text-transform:uppercase;letter-spacing:var(--ui-tracking);padding:.5rem .9rem;cursor:pointer;transition:color .2s ease,border-color .2s ease}.gallery-nav__replay:hover{color:#ffffffd9;border-color:#ffffff73}.plane-label-overlay{position:fixed;inset:0;z-index:80;pointer-events:none;transition:opacity .34s cubic-bezier(.4,0,.2,1),transform .34s cubic-bezier(.4,0,.2,1);color:#f4f4f4eb}.plane-label-overlay__left{position:absolute;left:clamp(2.5rem,8vw,12rem);top:50%;transform:none;display:grid;gap:.75rem;transition:left .6s cubic-bezier(.4,0,.2,1)}body.is-presenting .plane-label-overlay__left{left:2rem}body.is-presenting .plane-label-card__description{max-width:16rem;white-space:normal}.plane-label-overlay__index{margin:0;font-size:9px;opacity:1}.plane-label-card__tags{display:flex;flex-wrap:wrap;gap:.3rem;min-height:0}.plane-label-card__tag{font-family:var(--ui-font);font-size:8px;letter-spacing:.1em;text-transform:uppercase;color:#ffffff73;border:1px solid rgba(255,255,255,.15);padding:.15rem .45rem;white-space:nowrap}.plane-label-overlay__chip{width:18px;height:18px;border-radius:50%;display:inline-block;box-shadow:0 0 0 1px #ffffff24}.plane-label-overlay__right{position:absolute;right:clamp(2.5rem,7vw,10rem);top:50%;transform:none;transition:right .6s cubic-bezier(.4,0,.2,1)}body.is-presenting .plane-label-overlay__right{right:2rem}body.is-presenting .plane-label-card{width:min(22vw,300px)}.plane-label-card{width:min(28vw,360px);display:grid;grid-template-columns:1fr;align-items:start;pointer-events:none;opacity:1;color:inherit;font-family:var(--ui-font);text-transform:uppercase;letter-spacing:var(--ui-tracking);line-height:1.15}.plane-label-card__word{margin:0;font-size:clamp(9px,.78vw,11px);white-space:nowrap}.plane-label-card__description{margin:0;font-size:clamp(8px,.7vw,10px);opacity:.65;max-width:14rem;line-height:1.4;text-transform:none;letter-spacing:.02em}.plane-label-card__specs{margin:0;display:grid;gap:.25rem}.plane-label-card__row{margin:0;display:grid;grid-template-columns:3.5rem 1fr;align-items:baseline;gap:.8rem}.plane-label-card__row dt,.plane-label-card__row dd{margin:0}.plane-label-card__row dt{font-size:9px;opacity:1}.plane-label-card__value{font-size:clamp(9px,.72vw,11px);opacity:1}@media(max-width:53em){.plane-label-overlay{inset:auto 0 max(6.25rem,env(safe-area-inset-bottom)) 0;display:grid;grid-template-columns:auto auto;justify-content:space-between;align-items:start;column-gap:1.5rem;row-gap:.55rem;padding:0 max(1rem,env(safe-area-inset-right)) 0 max(1rem,env(safe-area-inset-left))}.plane-label-overlay__left{position:static;transform:none;gap:.5rem;grid-column:1;grid-row:2}.plane-label-overlay__right{position:static;transform:none;grid-column:2;grid-row:2}.plane-label-card{width:auto;max-width:min(58vw,270px)}.plane-label-card__word{font-size:10px}.plane-label-card__row{grid-template-columns:2.8rem 1fr;gap:.6rem}.plane-label-card__value{font-size:9px}}.custom-cursor{position:fixed;top:0;left:0;width:0;height:0;pointer-events:none;z-index:99999;will-change:transform}.custom-cursor.is-offscreen{opacity:0}.custom-cursor__ring{position:absolute;top:0;left:0;width:18px;height:18px;border:1.5px solid rgba(255,255,255,.75);border-radius:50%;transform:translate(-50%,-50%);transition:width .38s cubic-bezier(.34,1.56,.64,1),height .38s cubic-bezier(.34,1.56,.64,1),background-color .32s ease,border-color .32s ease,opacity .25s ease}.custom-cursor.is-hovering .custom-cursor__ring{width:68px;height:68px;background-color:#ffffff12;border-color:#ffffffe6}.custom-cursor.is-expanded-mode .custom-cursor__ring{width:58px;height:58px;background-color:#ffffff1a;border-color:#ffffffa6}.custom-cursor__label{position:absolute;top:0;left:0;transform:translate(-50%,-50%);font-family:var(--ui-font);font-size:8px;text-transform:uppercase;letter-spacing:.1em;color:#ffffffe0;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .22s ease}.custom-cursor.is-hovering .custom-cursor__label,.custom-cursor.is-expanded-mode .custom-cursor__label{opacity:1}body.is-expanded .frame{opacity:0;transform:translateY(-10px);pointer-events:none}body.is-expanded .gallery-arrows{opacity:0;transform:translateY(-50%) translate(14px);pointer-events:none}body.is-expanded .plane-label-overlay{opacity:0;transform:translateY(8px);pointer-events:none}body.is-expanded .progress-bar{opacity:0;transform:translateY(4px);pointer-events:none}body.is-expanded .mute-btn,body.is-expanded .download-btn,body.is-expanded .share-btn{opacity:0;transform:translateY(10px);pointer-events:none}body.is-expanded .photo-counter{opacity:0;transform:translate(-50%) translateY(6px);pointer-events:none}body.is-expanded .now-playing-toast{opacity:0;pointer-events:none}@keyframes expandReveal{0%{transform:scale(.97)}to{transform:scale(1)}}body.is-expanded .webgl{animation:expandReveal .7s cubic-bezier(.25,.46,.45,.94) both}.progress-bar{position:fixed;bottom:0;left:0;right:0;height:1px;background:#ffffff0f;z-index:200;pointer-events:none;transition:opacity .3s ease,transform .3s ease}.progress-bar__fill{height:100%;background:#ffffff80;transform-origin:left center;transform:scaleX(0)}.shortcuts-btn{position:fixed;bottom:max(1.5rem,env(safe-area-inset-bottom));left:max(1.5rem,env(safe-area-inset-left));z-index:400;background:none;border:1px solid rgba(255,255,255,.18);color:#ffffff73;width:2.5rem;height:2.5rem;display:flex;align-items:center;justify-content:center;cursor:pointer;font-family:var(--ui-font);font-size:.9rem;letter-spacing:0;transition:color .2s ease,border-color .2s ease,opacity .32s ease,transform .32s cubic-bezier(.4,0,.2,1)}.shortcuts-btn:hover,.shortcuts-btn.is-active{color:#ffffffbf;border-color:#fff6}.shortcuts-menu{position:fixed;bottom:calc(max(1.5rem,env(safe-area-inset-bottom)) + 3.75rem);left:max(1.5rem,env(safe-area-inset-left));z-index:400;padding:1rem 1.25rem 1.125rem;background:#08080ce6;border:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);pointer-events:none;opacity:0;transform:translateY(8px);transition:opacity .24s ease,transform .24s cubic-bezier(.34,1.1,.64,1)}.shortcuts-menu.is-open{opacity:1;transform:translateY(0);pointer-events:auto}.shortcuts-menu__title{margin:0 0 .75rem;font-size:9px;font-family:var(--ui-font);text-transform:uppercase;letter-spacing:var(--ui-tracking);color:#ffffff59}.shortcuts-menu__list{margin:0;display:flex;flex-direction:column;gap:.5rem}.shortcuts-menu__list>div{display:grid;grid-template-columns:7.5rem 1fr;align-items:baseline;gap:.5rem}.shortcuts-menu__list dt{font-size:9px;font-family:var(--ui-font);text-transform:uppercase;letter-spacing:var(--ui-tracking);color:#ffffffbf;white-space:nowrap}.shortcuts-menu__list dd{margin:0;font-size:9px;font-family:var(--ui-font);text-transform:uppercase;letter-spacing:var(--ui-tracking);color:#ffffff52;white-space:nowrap}.shortcuts-menu__footer{margin:.875rem 0 0;padding-top:.75rem;border-top:1px solid rgba(255,255,255,.1);font-size:8px;font-family:var(--ui-font);text-transform:uppercase;letter-spacing:var(--ui-tracking);color:#ffffff59;line-height:1.7;max-width:16rem}.shortcuts-menu__footer a{color:#ffffffb3!important;text-decoration:underline!important;text-underline-offset:2px}.shortcuts-menu__footer a:hover{color:#fff!important}.photo-counter{position:fixed;bottom:max(1.75rem,env(safe-area-inset-bottom));left:50%;transform:translate(-50%);z-index:200;font-family:var(--ui-font);font-size:9px;letter-spacing:var(--ui-tracking);color:#ffffff52;pointer-events:none;font-variant-numeric:tabular-nums;transition:opacity .32s ease,transform .32s cubic-bezier(.4,0,.2,1)}.share-btn{position:fixed;bottom:max(1.5rem,env(safe-area-inset-bottom));right:calc(max(1.5rem,env(safe-area-inset-right)) + 6rem);z-index:200;background:none;border:1px solid rgba(255,255,255,.18);color:#ffffff73;width:2.5rem;height:2.5rem;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:color .2s ease,border-color .2s ease,opacity .32s ease,transform .32s cubic-bezier(.4,0,.2,1)}.share-btn svg{width:1rem;height:1rem;flex-shrink:0}.share-btn:hover{color:#ffffffbf;border-color:#fff6}.copied-toast{position:fixed;bottom:calc(max(1.5rem,env(safe-area-inset-bottom)) + 3.5rem);left:50%;transform:translate(-50%) translateY(6px);z-index:500;padding:.5rem .875rem;background:#08080ce0;border:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-family:var(--ui-font);font-size:9px;text-transform:uppercase;letter-spacing:var(--ui-tracking);color:#ffffffb3;pointer-events:none;opacity:0;transition:opacity .28s ease,transform .28s cubic-bezier(.34,1.2,.64,1)}.copied-toast.is-visible{opacity:1;transform:translate(-50%) translateY(0)}.download-btn{position:fixed;bottom:max(1.5rem,env(safe-area-inset-bottom));right:calc(max(1.5rem,env(safe-area-inset-right)) + 3rem);z-index:200;background:none;border:1px solid rgba(255,255,255,.18);color:#ffffff73;width:2.5rem;height:2.5rem;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:color .2s ease,border-color .2s ease,opacity .32s ease,transform .32s cubic-bezier(.4,0,.2,1)}.download-btn svg{width:1rem;height:1rem;flex-shrink:0}.download-btn:hover{color:#ffffffbf;border-color:#fff6}.mute-btn{position:fixed;bottom:max(1.5rem,env(safe-area-inset-bottom));right:max(1.5rem,env(safe-area-inset-right));z-index:200;background:none;border:1px solid rgba(255,255,255,.18);color:#ffffff73;width:2.5rem;height:2.5rem;display:flex;align-items:center;justify-content:center;transition:color .2s ease,border-color .2s ease,opacity .32s ease,transform .32s cubic-bezier(.4,0,.2,1)}.mute-btn svg{width:1rem;height:1rem;flex-shrink:0;transition:opacity .2s ease}.mute-btn[data-muted=true] .mute-btn__icon--sound,.mute-btn[data-muted=false] .mute-btn__icon--muted{display:none}.mute-btn:hover{color:#ffffffbf;border-color:#fff6}.now-playing-toast{position:fixed;bottom:max(1.5rem,env(safe-area-inset-bottom));left:max(1.5rem,env(safe-area-inset-left));z-index:500;display:flex;flex-direction:column;gap:.25rem;padding:.8rem 1rem;min-width:13rem;background:#08080ce0;border:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);pointer-events:none;opacity:0;transform:translateY(6px);transition:opacity .35s ease,transform .35s cubic-bezier(.34,1.2,.64,1)}.now-playing-toast.is-visible{opacity:1;transform:translateY(0)}.now-playing-toast__label{font-size:8px;font-family:var(--ui-font);text-transform:uppercase;letter-spacing:var(--ui-tracking);color:#ffffff61}.now-playing-toast__title{font-size:11px;font-family:var(--ui-font);text-transform:uppercase;letter-spacing:var(--ui-tracking);color:#ffffffeb;line-height:1.2}.now-playing-toast__artist{font-size:9px;font-family:var(--ui-font);text-transform:uppercase;letter-spacing:var(--ui-tracking);color:#fff6}
