.tape{--pad:clamp(18px, 5.5cqw, 72px);background:radial-gradient(120% 90% at 50% 0%, color-mix(in srgb, var(--tape) 14%, transparent), transparent 60%), var(--soot);width:100%;height:100%;color:var(--cream);text-shadow:0 0 14px #ffbe6e38;grid-template-rows:auto minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr);display:grid;position:relative;overflow:hidden}.tape__osd,.tape__nav{padding:clamp(10px, 2cqw, 22px) var(--pad);font-family:var(--osd);z-index:2;align-items:center;gap:1.2em;font-size:clamp(18px,2.6cqw,30px);line-height:1;display:flex}.tape__osd-play{color:var(--amber);white-space:nowrap;align-items:center;gap:.45em;display:inline-flex}.tape__osd-play i{border-top:.32em solid #0000;border-bottom:.32em solid #0000;border-left:.5em solid;width:0;height:0}.tape__osd-count{color:var(--cream-dim);margin-right:auto}.tape__exit,.tape__nav button{font-family:var(--osd);font-size:inherit;border:2px solid var(--line);white-space:nowrap;text-shadow:inherit;border-radius:6px;padding:.3em .7em;transition:background .15s,color .15s,border-color .15s}.tape__exit:hover,.tape__nav button:hover{background:var(--cream);border-color:var(--cream);color:var(--soot);text-shadow:none}.tape__exit kbd{font:inherit;opacity:.6;margin-left:.4em}.tape__nav{border-top:2px solid var(--line);justify-content:space-between}.tape__nav button{text-overflow:ellipsis;max-width:48%;overflow:hidden}.tape__scroll{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--tape) transparent;outline-offset:-4px;overflow-y:auto}.tape__body{padding:clamp(14px, 3cqw, 40px) var(--pad) clamp(40px, 8cqw, 110px);max-width:62em;font-size:clamp(15px,2.05cqw,22px);line-height:1.6}.tape__sticker{background:var(--tape);color:var(--tape-ink);font-family:var(--hand);text-shadow:none;border-radius:3px;margin:0 0 clamp(14px,2.4cqw,30px);padding:.25em .8em .2em;font-size:1.05em;line-height:1.2;display:inline-block;transform:rotate(-1.5deg)}.tape__title{font-variation-settings:"wdth" 88;letter-spacing:-.025em;text-wrap:balance;margin:0;font-size:clamp(38px,8.6cqw,104px);font-weight:800;line-height:.98}.tape__meta{font-family:var(--osd);color:var(--tape);filter:brightness(1.25)saturate(.9);margin:clamp(12px,2cqw,22px) 0 0;font-size:1.3em;line-height:1.1}.tape__lead{text-wrap:pretty;max-width:30em;margin:clamp(26px,5.5cqw,64px) 0 0;font-size:1.5em;font-weight:500;line-height:1.38}.tape__stats{border-top:2px solid var(--line);border-bottom:2px solid var(--line);grid-template-columns:repeat(auto-fit,minmax(8.5em,1fr));gap:1.4em 2em;margin:clamp(30px,6cqw,72px) 0 0;padding:clamp(20px,3.4cqw,40px) 0;display:grid}.tape__stat{flex-direction:column-reverse;justify-content:flex-end;gap:.3em;display:flex}.tape__stat dd{font-family:var(--osd);color:var(--amber);margin:0;font-size:3.8em;line-height:.85}.tape__stat dt{color:var(--cream-dim);max-width:13em;font-size:.92em;line-height:1.35}.tape__roles{grid-template-columns:repeat(3,1fr);gap:2em;margin-top:clamp(30px,6cqw,72px);display:grid}.tape__role{border-top:4px solid var(--tape);padding-top:1em}.tape__role h3{letter-spacing:-.01em;margin:0 0 .35em;font-size:1.45em;font-weight:700}.tape__role p{color:var(--cream-dim);margin:0}.tape__section{grid-template-columns:10.5em 1fr;gap:.5em 2em;margin-top:clamp(28px,5.4cqw,64px);display:grid}.tape__section--stack{grid-template-columns:1fr}.tape__section h3{color:var(--amber);margin:0;font-size:1em;font-weight:700;line-height:1.6}.tape__section p{max-width:36em;margin:0}.tape__section p+ul{margin-top:.9em}.tape__section ul{max-width:36em;margin:0;padding:0;list-style:none}.tape__section ul:not(.tape__chips) li{padding-left:1.5em;position:relative}.tape__section ul:not(.tape__chips) li+li{margin-top:.7em}.tape__section ul:not(.tape__chips) li:before{content:"";background:var(--tape);width:.7em;height:.28em;position:absolute;top:.62em;left:.1em}.tape__chips{flex-wrap:wrap;gap:.5em;display:flex}.tape__chips li{border:2px solid var(--line);white-space:nowrap;border-radius:999px;padding:.2em .75em;font-size:.95em}.tape__groups .tape__section{margin-top:clamp(20px,3.4cqw,40px)}.tape__groups{margin-top:clamp(8px,2cqw,24px)}.tape__term{border:2px solid var(--line);background:#050302;border-radius:10px;gap:1em;margin-top:.4em;padding:1.1em 1.3em;display:grid}.tape__term-line{gap:.1em;display:grid}.tape__term code{font-family:var(--osd);color:var(--cream);overflow-wrap:anywhere;font-size:1.35em;line-height:1.15}.tape__term code:before{content:"$ ";color:var(--amber)}.tape__term span{color:var(--cream-dim);padding-left:1.45em;font-size:.9em}.tape__links{border-top:2px solid var(--line);margin:clamp(30px,6cqw,72px) 0 0;padding:0;list-style:none}.tape__links a{border-bottom:2px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.2em 1.5em;padding:.75em .5em;text-decoration:none;transition:background .15s,color .15s,padding .2s;display:flex}.tape__links strong{letter-spacing:-.01em;font-size:1.7em;font-weight:700;line-height:1.15}.tape__links span{font-family:var(--osd);color:var(--cream-dim);overflow-wrap:anywhere;font-size:1.25em}.tape__links a:hover,.tape__links a:focus-visible{background:var(--tape);color:var(--tape-ink);text-shadow:none;padding-left:1em}.tape__links a:hover span,.tape__links a:focus-visible span{color:inherit}.tape__glass{pointer-events:none;z-index:3;background:repeating-linear-gradient(#0003 0 1px,#0000 1px 3px),radial-gradient(120% 120%,#0000 55%,#0000008c 100%);position:absolute;inset:0;box-shadow:inset 0 0 60px #000000b3}.tape__noise{pointer-events:none;z-index:4;opacity:0;background:repeating-linear-gradient(#ffffff80 0 2px,#0009 2px 5px,#fff3 5px 9px);animation:.42s steps(6,end) tape-tracking;position:absolute;inset:0}@keyframes tape-tracking{0%{opacity:.9;transform:translateY(-6%)}60%{opacity:.5;transform:translateY(4%)}to{opacity:0;transform:translateY(0)}}@container (max-width:640px){.tape__section{grid-template-columns:1fr}.tape__roles{grid-template-columns:1fr;gap:1.4em}.tape__osd-count{visibility:hidden}.tape__exit kbd{display:none}}@media (prefers-reduced-motion:reduce){.tape__noise{animation:none}}
.stage{-webkit-user-select:none;user-select:none;position:fixed;inset:0;overflow:hidden}.stage__canvas{touch-action:none;width:100%;height:100%;display:block;position:absolute;inset:0}.btn{border:2px solid var(--cream);border-radius:999px;padding:.85em 1.5em;font-size:1rem;font-weight:600;line-height:1;transition:background .15s,color .15s,transform .15s}.btn:hover:not(:disabled){background:var(--cream);color:var(--soot)}.btn--solid{background:var(--amber);border-color:var(--amber);color:var(--soot)}.btn--solid:hover:not(:disabled){background:var(--cream);border-color:var(--cream)}.btn:active:not(:disabled){transform:scale(.97)}.btn:disabled{opacity:.55;cursor:progress}.btn kbd{font:inherit;opacity:.6;margin-left:.4em;font-weight:400}.intro{pointer-events:none;z-index:10;align-items:center;padding:clamp(20px,7vw,120px);transition:opacity .7s,visibility .7s;display:flex;position:absolute;inset:0}.intro--gone{opacity:0;visibility:hidden}.intro__card{pointer-events:auto;max-width:21rem}.intro__name{font-variation-settings:"wdth" 90;letter-spacing:-.02em;text-wrap:balance;margin:0;font-size:clamp(1.7rem,2.7vw,2.5rem);font-weight:700;line-height:1.05}.intro__role{color:var(--amber);margin:.7rem 0 0;font-size:1.05rem;line-height:1.4}.intro__sub{color:var(--cream-dim);margin:1.4rem 0 0;font-size:.98rem;line-height:1.55}.intro__actions{flex-wrap:wrap;align-items:center;gap:.6rem 1.3rem;margin-top:1.7rem;display:flex}.intro__quiet{color:var(--cream-dim);text-underline-offset:.25em;text-decoration:underline;-webkit-text-decoration-color:var(--line);text-decoration-color:var(--line);font-size:.92rem;transition:color .15s}.intro__quiet:hover:not(:disabled){color:var(--cream)}.intro__quiet:disabled{opacity:.5;cursor:progress}@media (max-width:760px),(orientation:portrait){.intro{background:linear-gradient(#0000 38%,#07060880 62%,#070608e6 100%);align-items:flex-end;padding:22px 22px 34px}}.hud{pointer-events:none;opacity:0;z-index:5;transition:opacity .5s;position:absolute;inset:0}.hud--on{opacity:1}.hud--on .hud__name,.hud--on .hud__sound,.hud--on .hud__bottom{pointer-events:auto}.hud__name{text-shadow:0 1px 12px #000c;gap:.15rem;display:grid;position:absolute;top:clamp(16px,2.4vw,32px);left:clamp(16px,2.4vw,32px)}.hud__name strong{letter-spacing:-.01em;font-size:1.15rem;font-weight:700}.hud__name span{color:var(--cream-dim);font-size:.9rem}.hud__sound{align-items:center;gap:.6rem;display:flex;position:absolute;top:clamp(16px,2.4vw,32px);right:clamp(16px,2.4vw,32px)}.hud__found{font-family:var(--osd);color:var(--cream-dim);text-shadow:0 1px 10px #000000e6;white-space:nowrap;font-size:1.15rem;line-height:1}.hud__pill,.hud__track{background:var(--panel);border:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);white-space:nowrap;border-radius:999px;padding:.6em 1.1em;font-size:.9rem;font-weight:600;line-height:1}.hud__pill{transition:background .15s,color .15s}.hud__pill:hover{background:var(--cream);color:var(--soot)}.hud__track{font-family:var(--osd);color:var(--amber);align-items:center;gap:.8em;padding-block:.4em;font-size:1.2rem;font-weight:400;display:flex}.hud__track button{font-family:var(--osd);color:var(--cream);padding:.1em .2em}.hud__track button:hover{color:var(--amber)}.hud__bottom{justify-items:center;gap:.7rem;width:min(100% - 28px,46rem);display:grid;position:absolute;bottom:clamp(14px,2.4vw,30px);left:50%;transform:translate(-50%)}.hud__guide{background:var(--panel);border:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:999px;flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem 1rem;padding:.5rem .5rem .5rem 1.3rem;display:flex}.hud__guide p{margin:0;font-size:.98rem;line-height:1.3}.hud__guide em{font-family:var(--hand);color:var(--amber);font-style:normal}.hud__guide .hud__pill{background:var(--cream);color:var(--soot);border-color:var(--cream)}.hud__guide .hud__pill:hover{background:var(--amber);border-color:var(--amber)}.tapelist{background:var(--panel);border:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:20px;grid-template-columns:repeat(auto-fill,minmax(13.5rem,1fr));gap:.25rem;width:100%;max-height:min(60vh,30rem);margin:0;padding:.5rem;list-style:none;display:grid;overflow-y:auto}.tapelist button{text-align:left;border-radius:12px;grid-template-columns:auto 1fr;align-items:center;column-gap:.75rem;width:100%;padding:.6rem .75rem;display:grid}.tapelist button:hover,.tapelist button[aria-current=true]{background:#f6e7c81a}.tapelist i{border-radius:3px;grid-row:span 2;width:14px;height:34px}.tapelist strong{font-family:var(--hand);font-size:1.05rem;font-weight:400;line-height:1.2}.tapelist span{color:var(--cream-dim);font-size:.82rem;line-height:1.3}.hint{will-change:transform;width:0;height:0;transition:opacity .4s;display:block;position:absolute;top:0;left:0}.hint--used{opacity:0}.hint i{background:var(--amber);border-radius:50%;width:12px;height:12px;animation:2.2s ease-out infinite hint-pulse;position:absolute;top:-6px;left:-6px;box-shadow:0 0 #ffb347b3}.hint b{background:var(--panel);border:1px solid var(--line);white-space:nowrap;border-radius:999px;padding:.25em .7em;font-size:.82rem;font-weight:600;line-height:1.2;position:absolute;top:-.75em;left:14px}@keyframes hint-pulse{0%{box-shadow:0 0 #ffb347a6}to{box-shadow:0 0 0 16px #ffb34700}}.screen{opacity:0;visibility:hidden;z-index:6;-webkit-user-select:text;user-select:text;border-radius:3.2%/4.2%;transition:opacity .35s;position:absolute;overflow:hidden;container-type:size}.screen--on{opacity:1;visibility:visible}.screen--cover{border-radius:0}.gamebar{text-align:center;opacity:0;visibility:hidden;z-index:6;justify-items:center;gap:.8rem;width:min(100% - 28px,40rem);transition:opacity .4s;display:grid;position:absolute;bottom:clamp(14px,2.4vw,30px);left:50%;transform:translate(-50%)}.gamebar--on{opacity:1;visibility:visible}.gamebar p{background:var(--panel);border:1px solid var(--line);border-radius:999px;margin:0;padding:.5rem 1.1rem;font-size:.92rem;line-height:1.35}.gamebar div{gap:.6rem;display:flex}.gamebar .btn:not(.btn--solid){background:var(--panel)}.museum{pointer-events:none;opacity:0;visibility:hidden;z-index:6;transition:opacity .5s;position:absolute;inset:0}.museum--on{opacity:1;visibility:visible}.museum>*{pointer-events:auto}.museum__head{pointer-events:none;text-shadow:0 1px 12px #000000d9;gap:.3rem;max-width:22rem;display:grid;position:absolute;top:clamp(16px,2.4vw,32px);left:clamp(16px,2.4vw,32px)}.museum__head strong{font-family:var(--hand);font-size:1.5rem;font-weight:400;line-height:1.1}.museum__head span{color:#cfd9ea;font-size:.92rem;line-height:1.4}.museum__back{position:absolute;top:clamp(16px,2.4vw,32px);right:clamp(16px,2.4vw,32px)}.museum__back kbd{font:inherit;opacity:.6;margin-left:.4em;font-weight:400}.museum__tour{position:absolute;bottom:clamp(18px,3vw,36px);left:50%;transform:translate(-50%)}.plaque{color:#23160a;-webkit-user-select:text;user-select:text;background:linear-gradient(160deg,#d9b860,#a8822f);border-radius:6px;width:min(25rem,100% - 32px);max-height:calc(100% - 140px);padding:1.6rem 1.7rem 1.3rem;animation:.35s ease-out plaque-in;position:absolute;top:50%;right:clamp(16px,5vw,80px);overflow-y:auto;transform:translateY(-50%);box-shadow:inset 0 0 0 2px #23160a8c,inset 0 0 0 7px #ffecaa40,0 18px 50px #0000008c}@keyframes plaque-in{0%{opacity:0;transform:translateY(-50%)translate(14px)}}.plaque__no{font-family:var(--osd);opacity:.8;justify-content:space-between;margin:0 0 .9rem;font-size:1.15rem;line-height:1;display:flex}.plaque h2{letter-spacing:-.02em;text-wrap:balance;margin:0 0 1.1rem;font-size:1.75rem;font-weight:800;line-height:1.08}.plaque h3{margin:1rem 0 .25rem;font-size:.9rem;font-weight:700}.plaque p{margin:0;font-size:.98rem;line-height:1.55}.plaque a{text-underline-offset:.2em;margin-top:1rem;font-weight:700;display:inline-block}.plaque__nav{border-top:2px solid #23160a59;justify-content:space-between;align-items:center;gap:.6rem;margin-top:1.4rem;padding-top:.9rem;display:flex}.plaque__nav button{font-family:var(--osd);border:2px solid #23160a99;border-radius:6px;padding:.35em .75em;font-size:1.2rem;line-height:1;transition:background .15s,color .15s}.plaque__nav button:hover{color:#e9cf85;background:#23160a}.flash{opacity:0;visibility:hidden;pointer-events:none;z-index:12;background:radial-gradient(circle at 50% 45%,#fff 0%,#e4eeff 70%,#c3d5f5 100%);position:absolute;inset:0}@media (max-width:760px),(orientation:portrait){.museum__head span{display:none}.plaque{max-height:52%;animation:none;top:auto;bottom:16px;right:16px;transform:none}}.tip{background:var(--cream);max-width:17rem;color:var(--soot);pointer-events:none;opacity:0;z-index:8;border-radius:12px;gap:.15rem;padding:.6rem .9rem;transition:opacity .12s;display:grid;position:absolute;top:0;left:0;box-shadow:0 10px 30px #00000080}.tip--on{opacity:1}.tip strong{font-family:var(--hand);font-size:1.15rem;font-weight:400;line-height:1.2}.tip span{opacity:.75;font-size:.85rem;line-height:1.3}.toast{z-index:9;pointer-events:none;position:absolute;top:clamp(70px,12vh,120px);left:50%;transform:translate(-50%)}.toast p{background:var(--amber);color:var(--soot);white-space:nowrap;border-radius:999px;margin:0;padding:.7rem 1.2rem;font-size:.95rem;font-weight:600;animation:.25s ease-out toast-in}@keyframes toast-in{0%{opacity:0;transform:translateY(-8px)}}.plain{padding:clamp(24px,6vw,80px);position:fixed;inset:0;overflow-y:auto;container-type:inline-size}.plain h1{letter-spacing:-.03em;margin:0 0 1rem;font-size:clamp(2.4rem,7vw,5rem);line-height:1}.plain__tape{border-top:4px solid var(--tape);max-width:60rem;margin-top:5rem;padding-top:2rem;font-size:1.05rem;line-height:1.6}.plain__tape h2{margin:0;font-size:clamp(2rem,5vw,3.5rem);line-height:1}@media (max-width:640px){.hud__name span,.hud__found{display:none}.hud__sound{flex-direction:column;align-items:flex-end;gap:.4rem}.hud__guide{text-align:center;border-radius:22px;padding:.75rem}.hint b{font-size:.72rem}.toast p{white-space:normal;text-align:center;width:max-content;max-width:calc(100vw - 32px)}}@media (prefers-reduced-motion:reduce){.hint i{animation:none}.intro{transition-duration:10ms}}
