.scene-fallback{max-width:60ch;margin:0 0 var(--space-xl)}.room-doors-text ul{gap:var(--space-xs) var(--space-lg);flex-wrap:wrap;padding:0;list-style:none;display:flex}.room-doors-text li+li{margin-top:0}.room-text{padding-top:var(--space-xl)}.frame.is-landing{--box-h:0px;--links-min:72px;--ground-use:max(var(--ground), calc(var(--box-h) + var(--links-min)));--links-h:calc(var(--ground-use) - var(--box-h))}.frame.is-landing .frame-body{z-index:2;overflow:visible}.frame.is-landing .frame-body>main{max-width:none;padding:0;position:static}.landing-head{left:var(--gutter);top:var(--space-xl);right:var(--gutter);position:absolute}.landing-sentence{margin:0;font-size:clamp(26px,3.6vw,52px);line-height:1.15}.landing-ai{max-width:none;margin:var(--space-sm) 0 0;color:var(--ink-muted);font-size:15px;line-height:1.4}.landing-ai .planned-tag{margin:0 0 0 var(--space-xs)}.doors{left:0;right:0;bottom:calc(var(--links-h) - var(--ground-use));padding:0 var(--gutter);grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:clamp(12px,2.6vw,44px);margin:0;list-style:none;display:grid;position:absolute}.doors>li{min-width:0;margin:0}.door{color:var(--ink-base);flex-direction:column;text-decoration:none;display:flex}.door:hover{background:0 0}.door-preview{aspect-ratio:2/3;width:100%;max-height:calc(100dvh - var(--band) - var(--ground-use) - 250px);background:var(--ink-base);display:block;position:relative;overflow:hidden}.door-preview .scene{pointer-events:none;position:absolute;inset:0}.door-text{min-height:calc(1.35*clamp(19px,1.8vw,28px) + 2.6*clamp(16px,1.45vw,22px));padding:0 var(--space-xs) var(--space-md);color:var(--ink-base);flex-direction:column;order:-1;justify-content:flex-start;display:flex}.door-front{display:block;position:relative;container-type:inline-size}.door-stamp{box-sizing:border-box;z-index:2;min-width:108cqw;max-width:108cqw;color:var(--ink-base);font-size:min(24cqw, calc(108cqw / (var(--len,8) * .6 + 1.1)));white-space:nowrap;pointer-events:none;transform:translate(-50%, 0) rotate(var(--tilt,0deg));font-weight:600;line-height:1.2;position:absolute;top:calc(5cqw + 8px);left:50%}.door-stamp-face{border:.16em solid var(--paper-base);box-sizing:border-box;text-align:center;background:var(--paper-base);padding:.1em .34em .16em;display:block;position:relative}.door-stamp-face:before{content:"";border:.16em solid var(--ink-base);filter:url(#door-ink);position:absolute;inset:-.16em}.door-stamp-face-b{position:absolute;inset:0}.door-stamp-ink{filter:url(#door-ink);display:inline-block;position:relative}.stamps-pending .door-stamp:not(.is-on){opacity:0}.door-stamp[data-anim=rumble].is-on{animation:.7s cubic-bezier(.7,0,1,1) both door-stamp}@keyframes door-stamp{0%{opacity:0;transform:translate(-50%, 0) rotate(var(--tilt,0deg)) scale(2.6)}30%{opacity:1}70%{opacity:1;transform:translate(-50%, 0) rotate(var(--tilt,0deg)) scale(1)}78%{transform:translate(calc(-50% + 3px), 2px) rotate(var(--tilt,0deg)) scale(1)}86%{transform:translate(calc(-50% - 3px), -1px) rotate(var(--tilt,0deg)) scale(1)}93%{transform:translate(calc(-50% + 1px), 1px) rotate(var(--tilt,0deg)) scale(1)}to{opacity:1;transform:translate(-50%, 0) rotate(var(--tilt,0deg)) scale(1)}}.door-stamp[data-anim=join] .door-stamp-face{clip-path:inset(-1em 50% -1em -1em)}.door-stamp[data-anim=join] .door-stamp-face-b{clip-path:inset(-1em -1em -1em 50%)}.door-stamp[data-anim=join].is-on .door-stamp-face{animation:1.1s cubic-bezier(.2,.7,.3,1) both door-join-a}.door-stamp[data-anim=join].is-on .door-stamp-face-b{animation-name:door-join-b}@keyframes door-join-a{0%{opacity:0;transform:translate(-32cqw)}45%{opacity:1}to{opacity:1;transform:none}}@keyframes door-join-b{0%{opacity:0;transform:translate(32cqw)}45%{opacity:1}to{opacity:1;transform:none}}.door-stamp[data-anim=dissolve].is-on{animation:1.5s ease-out both door-dissolve}@keyframes door-dissolve{0%{opacity:0;filter:blur(8px)}60%{opacity:1}to{opacity:1;filter:blur()}}.door-stamp[data-anim=roll].is-on{animation:1.2s cubic-bezier(.2,.7,.3,1) both door-roll}@keyframes door-roll{0%{opacity:0;transform:translate(calc(-50% - 56cqw), 0) rotate(calc(var(--tilt,0deg) - 24deg))}35%{opacity:1}to{opacity:1;transform:translate(-50%, 0) rotate(var(--tilt,0deg))}}@media (prefers-reduced-motion:reduce){.door-stamp,.door-stamp-face{animation:none!important}}.door-name{margin-bottom:.15em;font-size:clamp(19px,1.8vw,28px);font-weight:600;line-height:1.2;display:block}.door-ending{font-size:clamp(16px,1.45vw,22px);font-weight:500;line-height:1.3}.door:hover .door-ending,.door:focus-visible .door-ending{text-underline-offset:4px;text-decoration:underline 3px}.door:focus-visible{outline:3px solid var(--ink-base);outline-offset:4px}.door:focus-visible .door-text{outline:none}.landing-ground{height:var(--links-h);justify-content:center;gap:var(--space-xs);padding:0 var(--gutter);flex-direction:column;display:flex;position:absolute;bottom:0;left:0;right:0}.landing-links{align-items:center;gap:var(--space-sm) var(--space-md);flex-wrap:wrap;margin:0;display:flex}.landing-links .band-link{font-size:15px}.landing-links a:first-child{margin-right:auto}.landing-replay[hidden]{display:none}.door-marks{justify-content:center;gap:14px;display:none}.door-marks[hidden]{display:none}.door-mark{border:2px solid var(--paper-base);cursor:pointer;background:0 0;border-radius:0;width:22px;height:22px;padding:0}.door-mark[aria-current=true]{background:var(--paper-base)}.door-mark:focus-visible{outline:2px solid var(--paper-base);outline-offset:3px}@media (width<=599px){.door-text{min-height:0}.frame.is-landing{--box-h:0px;--links-min:150px}.landing-head{top:var(--space-lg)}.landing-sentence{font-size:25px}.doors{scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;gap:12px;padding:0 28px;scroll-padding:0 28px;display:flex;overflow:auto hidden}.doors::-webkit-scrollbar{display:none}.doors>li{scroll-snap-align:center;flex:0 0 calc(100% - 4px)}.door-preview{aspect-ratio:4/5}.door-stamp{min-width:0;max-width:92cqw;font-size:min(22cqw, calc(86cqw / (var(--len,8) * .6 + 1.1)))}.door-marks{display:flex}.door-marks[hidden]{display:none}.landing-links{grid-template-columns:1fr 1fr;gap:6px;display:grid}.landing-links .band-link{white-space:normal;text-align:left;justify-content:flex-start;max-width:none;min-height:44px;padding:0 6px;font-size:13px;line-height:1.25}.landing-links a:first-child{text-align:center;border-color:var(--paper-muted);grid-column:1/-1;justify-content:center;margin-right:0}}
