:root{--night:#1b1a2b;--night-2:#232139;--plum:#2c2944;--plum-2:#36324f;--cream:#f3e7d3;--cream-2:#d9ccb6;--muted:#a59fba;--dim:#6f6a88;--line:#f3e7d31f;--peach:#ffb37a;--pink:#f4a6b8;--mint:#9fd3c1;--lilac:#b9a8f2;--wood:#5b4334;--wood-2:#6e5240;--lcd:#efe1c5;--lcd-2:#e2d0ae;--lcd-ink:#3b3150;--lcd-dim:#b9a27f;--lcd-hot:#ff8a65;--display:"Fraunces", Georgia, serif;--sans:"Figtree", system-ui, sans-serif;--pixel:"VT323", ui-monospace, monospace;--hand:"Caveat", cursive;--wrap:1180px;--gutter:clamp(16px, 5vw, 64px);--ease:cubic-bezier(.22, 1, .36, 1);--spring:cubic-bezier(.34, 1.56, .64, 1);--hue:var(--peach)}*,:before,:after{box-sizing:border-box}html{scroll-padding-top:80px}body{background:linear-gradient(180deg, var(--night) 0%, #211e35 30%, #2a2340 62%, #241f38 82%, var(--night) 100%);background-color:var(--night);color:var(--cream);font:400 17px/1.65 var(--sans);-webkit-font-smoothing:antialiased;margin:0;overflow-x:hidden}body.intro-open{overflow:hidden}body.game-on{overscroll-behavior:none}a{color:inherit}button{font:inherit;color:inherit}::selection{background:var(--peach);color:var(--night)}:focus-visible{outline:2px dashed var(--peach);outline-offset:4px}.pixel{font-family:var(--pixel);letter-spacing:.02em;font-size:19px;line-height:1}.hand{font-family:var(--hand);font-weight:500}.warm{color:var(--peach)}em{color:var(--lilac);font-style:italic;font-weight:300}.glow{z-index:0;pointer-events:none;background:radial-gradient(60vmax 45vmax at 8% -6%,#ffb37a29,#0000 60%),radial-gradient(50vmax 40vmax at 100% 40%,#b9a8f214,#0000 60%);position:fixed;inset:0}.grain{z-index:90;pointer-events:none;opacity:.09;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");animation:1s steps(6,end) infinite grain;position:fixed;inset:-50%}@keyframes grain{0%{transform:translate(0)}20%{transform:translate(-3%,2%)}40%{transform:translate(2%,-3%)}60%{transform:translate(-2%,-1%)}80%{transform:translate(3%,3%)}to{transform:translate(0)}}main,.floor{z-index:1;position:relative}.btn{cursor:pointer;font:600 15px var(--sans);transition:transform .3s var(--spring), background .2s, color .2s, box-shadow .3s;border:1px solid #0000;border-radius:999px;align-items:center;gap:10px;padding:12px 20px;text-decoration:none;display:inline-flex}.btn:hover{transform:translateY(-2px)rotate(-1deg)}.btn:active{transform:translateY(1px)scale(.97)}.btn-warm{background:var(--peach);color:var(--night);box-shadow:0 10px 30px -12px var(--peach)}.btn-ghost{border-color:var(--line);color:var(--cream);background:0 0}.btn-ghost:hover{border-color:var(--cream-2)}.btn-pill{border-color:var(--line);background:0 0;padding:6px 14px;font-size:13px}.btn-pill[aria-pressed=true]{background:var(--cream);color:var(--night)}.link{color:var(--cream);background:linear-gradient(var(--hue), var(--hue)) 0 100% / 100% 1px no-repeat;transition:background-size .35s var(--ease), color .2s;padding-bottom:2px;font-weight:500;text-decoration:none}.link:hover{color:var(--hue);background-size:100% 2px}.play-tri{border-top:6px solid #0000;border-bottom:6px solid #0000;border-left:9px solid;width:0;height:0}.next-tri{width:10px;height:10px;position:relative}.next-tri:before{content:"";border-top:5px solid #0000;border-bottom:5px solid #0000;border-left:7px solid;position:absolute;top:0;left:0}.next-tri:after{content:"";background:currentColor;width:2px;height:10px;position:absolute;top:0;right:0}.cassette{aspect-ratio:1.58;width:100%;max-width:320px;color:var(--night);transition:transform .45s var(--spring);background:linear-gradient(160deg,#3b3758,#2b2843);border-radius:14px;padding:7% 7% 6%;text-decoration:none;display:block;position:relative;box-shadow:inset 0 0 0 1px #ffffff12,inset 0 -8px #0000002e,0 24px 40px -24px #000c}.cassette:before,.cassette:after{content:"";background:#00000059;border-radius:50%;width:6px;height:6px;position:absolute;top:8px;box-shadow:inset 0 1px #ffffff1a}.cassette:before{left:8px}.cassette:after{right:8px}a.cassette:hover{transform:rotate(-3deg)translateY(-4px)}.cassette-label{background:linear-gradient(var(--hue) 0 7px, var(--cream) 7px);border-radius:6px;flex-direction:column;justify-content:space-between;height:44%;padding:6px 12px 8px;display:flex}.cassette-label .hand{margin-top:4px;font-size:clamp(26px,3vw,34px);line-height:1}.cassette-label .pixel{color:#6b5e55;font-size:15px}.cassette-window{background:#17162499;border-radius:999px;justify-content:space-between;align-items:center;gap:6px;width:72%;height:30%;margin:7% auto 0;padding:0 9%;display:flex;box-shadow:inset 0 2px 6px #00000080}.reel{aspect-ratio:1;background:radial-gradient(circle, #17162a 0 22%, transparent 23%), conic-gradient(from 0deg, var(--cream-2) 0 12%, transparent 12% 33%, var(--cream-2) 33% 45%, transparent 45% 66%, var(--cream-2) 66% 78%, transparent 78%);border:2px solid var(--cream-2);border-radius:50%;flex:none;width:clamp(20px,2.4vw,28px)}.tape-line{opacity:.8;background:linear-gradient(#6a4a3a,#4d3529);border-radius:4px;flex:1;height:46%}body.is-playing .reel,a.cassette:hover .reel,.cassette-intro .reel{animation:2.4s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.intro{z-index:100;-webkit-backdrop-filter:blur(6px);transition:opacity .6s var(--ease), visibility .6s;background:radial-gradient(circle at 50% 40%,#ffb37a1f,#0000 55%),#11101cf0;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.intro.is-gone{opacity:0;visibility:hidden}.intro-card{text-align:center;flex-direction:column;align-items:center;max-width:460px;display:flex}.cassette-intro{max-width:260px;margin-bottom:36px;animation:4s ease-in-out infinite bob;transform:rotate(-4deg)}@keyframes bob{50%{transform:rotate(-2deg)translateY(-8px)}}.intro-title{font:400 clamp(34px, 6vw, 48px)/1.05 var(--display);font-variation-settings:"SOFT" 100;margin:0 0 10px}.intro-text{color:var(--muted);margin:0 0 28px}.intro-actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.intro-hint{color:var(--pink);margin:22px 0 0;font-size:22px;transform:rotate(-2deg)}.top{inset:12px var(--gutter) auto;z-index:40;border:1px solid var(--line);-webkit-backdrop-filter:blur(12px);background:#232139b8;border-radius:999px;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;padding:8px 10px 8px 20px;display:grid;position:fixed}.brand{font:500 22px/1 var(--display);font-variation-settings:"SOFT" 100;justify-self:start;text-decoration:none}.brand span{color:var(--peach);margin-left:4px;font-style:italic}.nav{gap:6px;display:flex}.nav a{color:var(--muted);border-radius:999px;padding:6px 12px;font-size:14px;font-weight:500;text-decoration:none;transition:color .2s,background .2s}.nav a:hover,.nav a.is-active{color:var(--cream);background:#f3e7d312}.hud{justify-self:end;align-items:center;gap:12px;display:flex}.hud-bananas{color:var(--muted);align-items:center;gap:6px;font-size:20px;display:inline-flex}.hud-bananas b{color:var(--peach);font-weight:400}.hud-bananas.bump .banana-mini{animation:bump .6s var(--spring)}@keyframes bump{40%{transform:scale(1.8)rotate(-25deg)}}.banana-mini,.banana:before{background:var(--peach);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 6c1 7 6 12 14 12 1 0 2 0 2-1s-1-1-2-1c-5 0-9-3-11-9L6 4C5 3 4 4 4 6z'/%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 6c1 7 6 12 14 12 1 0 2 0 2-1s-1-1-2-1c-5 0-9-3-11-9L6 4C5 3 4 4 4 6z'/%3E%3C/svg%3E") 50%/contain no-repeat}.banana-mini{width:16px;height:16px;display:inline-block}.deck{left:var(--gutter);z-index:40;border:1px solid var(--line);-webkit-backdrop-filter:blur(12px);background:#232139d1;border-radius:16px;align-items:center;gap:12px;padding:8px 12px 8px 8px;display:flex;position:fixed;bottom:16px;box-shadow:0 20px 40px -20px #000000b3}.deck-tape{background:var(--cream);width:58px;height:36px;box-shadow:inset 0 -5px 0 var(--peach);border-radius:8px;justify-content:space-around;align-items:center;padding:0 6px;display:flex}.deck-tape .reel{border-width:2px;border-color:var(--night);background:radial-gradient(circle, var(--cream) 0 22%, transparent 23%), conic-gradient(var(--night) 0 12%, transparent 12% 33%, var(--night) 33% 45%, transparent 45% 66%, var(--night) 66% 78%, transparent 78%);width:18px}.deck-info{flex-direction:column;min-width:132px;display:flex}.deck-now{color:var(--muted);font-size:15px}body.is-playing .deck-now{color:var(--peach)}.deck-track{font:500 14px/1.3 var(--sans);white-space:nowrap}.deck-eq{align-items:flex-end;gap:2px;width:22px;height:16px;display:flex}.deck-eq i{background:var(--peach);border-radius:1px;flex:1;height:15%;transition:height 80ms}.deck-btn{cursor:pointer;border:1px solid var(--line);width:34px;height:34px;color:var(--cream);transition:background .2s, transform .2s var(--spring);background:#f3e7d30d;border-radius:50%;place-items:center;display:grid}.deck-btn:hover{background:#f3e7d31f}.deck-btn:active{transform:scale(.9)}#deck-play .play-tri{margin-left:2px}body.is-playing #deck-play .play-tri{border:0;border-left:3px solid;border-right:3px solid;width:10px;height:12px;margin:0}.deck-vol{width:70px;accent-color:var(--peach)}main,.floor{max-width:var(--wrap);padding-left:var(--gutter);padding-right:var(--gutter);margin:0 auto}.section{padding:clamp(120px,16vw,200px) 0 0;position:relative}.section-head{grid-template-columns:minmax(0,7fr) minmax(0,4fr);align-items:end;gap:16px 32px;margin-bottom:clamp(48px,7vw,88px);display:grid;position:relative}.section-head .kicker{grid-column:1/-1}.kicker{color:var(--peach);margin:0 0 6px;font-size:20px}.kicker:before{content:"▶ ";vertical-align:2px;font-size:14px}.section-title{font:300 clamp(46px, 7.4vw, 100px)/.98 var(--display);font-variation-settings:"SOFT" 100, "opsz" 144;letter-spacing:-.02em;margin:0}.section-note{color:var(--pink);justify-self:start;margin:0;font-size:26px;transform:rotate(-3deg)}.hero{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:center;gap:clamp(32px,5vw,80px);min-height:100svh;padding:130px 0 120px;display:grid}.hello{color:var(--peach);transform-origin:0;margin:0 0 -6px 6px;font-size:34px;transform:rotate(-4deg)}.hero-name{font:400 clamp(72px, 11.5vw, 168px)/.9 var(--display);font-variation-settings:"SOFT" 100, "opsz" 144;letter-spacing:-.035em;white-space:nowrap;margin:0}.hero-lead{max-width:520px;color:var(--cream-2);margin:26px 0 22px;font-size:clamp(19px,1.8vw,23px);line-height:1.45}.chips{flex-wrap:wrap;gap:8px;margin:0 0 18px;padding:0;list-style:none;display:flex}.chips li{border:1px solid var(--line);color:var(--cream-2);background:#f3e7d308;border-radius:999px;padding:5px 12px;font-size:14px}.chips-small li{padding:3px 10px;font-size:13px}.status{color:var(--muted);align-items:center;gap:10px;margin:0;font-size:15px;display:flex}.dot{background:var(--mint);border-radius:50%;width:8px;height:8px;animation:2.4s ease-in-out infinite breathe;box-shadow:0 0 0 4px #9fd3c126}@keyframes breathe{50%{box-shadow:0 0 0 8px #9fd3c100}}.sticky{color:#4a3b2a;background:linear-gradient(#f1d98e,#ecd07f);border-radius:3px 3px 18px;width:min(300px,100%);margin-top:72px;padding:22px 22px 18px;position:relative;transform:rotate(-2.5deg);box-shadow:0 18px 30px -18px #000000b3,inset 0 -10px 20px #966e281f}.tape-strip{backdrop-filter:blur(1px);background:#f3e7d373;width:90px;height:24px;margin-left:-45px;position:absolute;top:-12px;left:50%;transform:rotate(3deg)}.sticky-title{margin:0 0 8px;font-size:28px;font-weight:700;line-height:1}.sticky-keys{gap:6px;margin:0;padding:0;font-size:15px;font-weight:500;list-style:none;display:grid}.sticky-keys .hand{font-size:18px}.sticky-touch{display:none}kbd{min-width:26px;height:24px;font:400 18px var(--pixel);color:#4a3b2a;background:#fbefc4;border:1px solid #b89b55;border-bottom-width:3px;border-radius:6px;place-items:center;margin-right:4px;padding:0 6px;transition:transform 60ms;display:inline-grid}kbd.is-down{color:#f1d98e;background:#4a3b2a;border-bottom-width:1px;transform:translateY(2px)}.sticky .banana{top:-6px;right:18px}.window-wrap{position:relative}.window{aspect-ratio:560/640;border:12px solid var(--wood);border-radius:14px 14px 6px 6px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 2px #0000004d,0 30px 60px -30px #000c,0 0 80px -20px #b9a8f240}.window canvas{width:100%;height:100%;display:block}.mullion{background:var(--wood);position:absolute}.mullion-v{width:10px;margin-left:-5px;top:0;bottom:0;left:50%}.mullion-h{height:10px;top:46%;left:0;right:0}.curtain{background:linear-gradient(90deg,#b9a8f259,#b9a8f21f);width:22%;height:78%;position:absolute;top:0}.curtain-l{border-bottom-right-radius:70% 30%;left:0}.curtain-r{border-bottom-right-radius:70% 30%;right:0;transform:scaleX(-1)}.sill{background:linear-gradient(var(--wood-2) 0 3px, #634939 3px 60%, var(--wood));border-radius:3px 3px 5px 5px;height:18px;margin:0 -26px;position:relative;box-shadow:inset 0 1px #ffecd224,inset 0 -3px #0000002e,0 12px 22px -10px #000000bf}.sill>svg,.books{display:block;position:absolute;overflow:visible}.plant{z-index:1;width:84px;height:120px;top:-72px;left:26px}.plant-top{transform-origin:30px 36px;animation:6s ease-in-out infinite sway}.plant-drape{transform-origin:42px 37px;animation:7s ease-in-out -2s infinite reverse sway}@keyframes sway{50%{transform:rotate(2deg)}}.books{width:101px;height:29px;bottom:100%;right:34px}.books svg{width:100%;height:100%;display:block}.mug{width:48px;height:53.8px;bottom:calc(100% + 26.6px);right:46px}.mug-label{font:700 9px var(--hand);fill:#7a4a32}.steam path{opacity:0;animation:3.2s ease-in-out infinite steam}.steam path:nth-child(2){animation-delay:-1.1s}.steam path:nth-child(3){animation-delay:-2.2s}@keyframes steam{0%{opacity:0;transform:translateY(5px)}35%{opacity:.45}to{opacity:0;transform:translateY(-9px)}}.cookie{transform-origin:50% 100%;width:18px;height:18px;bottom:100%;right:137px;transform:rotate(12deg)}.window-note{text-align:right;color:var(--muted);margin:22px 0 0;font-size:22px;transform:rotate(-2deg)}.track{grid-template-columns:minmax(0,5fr) minmax(0,6fr);align-items:center;gap:clamp(32px,6vw,96px);display:grid}.track+.track{margin-top:clamp(96px,12vw,160px)}.track-reverse .track-info{order:2}.track[data-hue=peach]{--hue:var(--peach)}.track[data-hue=lilac]{--hue:var(--lilac)}.track[data-hue=mint]{--hue:var(--mint)}.track-info .cassette{max-width:260px;margin-bottom:28px;transform:rotate(-2deg)}.track-reverse .track-info .cassette{transform:rotate(2deg)}.track-name{font:400 clamp(40px, 5vw, 64px)/1 var(--display);font-variation-settings:"SOFT" 100, "opsz" 144;letter-spacing:-.02em;margin:0}.track-quote{font:italic 300 22px/1.3 var(--display);color:var(--hue);margin:8px 0 18px}.track-info>p:not(.track-quote){color:var(--cream-2);margin:0 0 20px}.console{background:linear-gradient(170deg,#413c63,#2f2b4a 60%);border-radius:24px 24px 24px 56px;margin:0;padding:16px 18px 18px;position:relative;box-shadow:inset 0 1px #ffffff1a,inset 0 -6px #0003,0 40px 70px -40px #000000e6,0 0 0 1px #ffffff0a}.console-top{color:var(--muted);align-items:center;gap:10px;margin:0 4px 12px;display:flex}.console-top .pixel{font-size:16px}.console-score{margin-left:auto}.console-score b{color:var(--cream);font-weight:400}.led{background:#5a5470;border-radius:50%;width:8px;height:8px;transition:background .3s,box-shadow .3s}.console.is-on .led{background:var(--lcd-hot);box-shadow:0 0 10px var(--lcd-hot)}.screen{background:var(--lcd);color:var(--lcd-ink);border:10px solid #1d1b2f;border-radius:10px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #0006,0 0 0 1px #ffffff0d}.screen:after{content:"";pointer-events:none;background:repeating-linear-gradient(#0000 0 2px,#3b31500d 2px 3px),radial-gradient(at 50% 40%,#0000 55%,#3b31502e);position:absolute;inset:0}[data-game=duel] .game-canvas{cursor:crosshair}.game-canvas{aspect-ratio:480/320;cursor:pointer;touch-action:manipulation;width:100%;height:auto;image-rendering:pixelated;display:block}.console-pad{justify-content:space-between;align-items:center;gap:12px;margin:16px 8px 0;display:flex}.console-title{color:var(--muted);text-align:center;font-size:17px}.dpad{flex:none;width:46px;height:46px;position:relative}.dpad i{background:#1d1b2f;border-radius:4px;position:absolute;box-shadow:inset 0 -3px #0006}.dpad i:first-child{width:16px;height:46px;top:0;left:15px}.dpad i:last-child{width:46px;height:16px;top:15px;left:0}.ab{flex:none;gap:10px;display:flex;transform:rotate(-18deg)}.btn-a,.btn-b{cursor:pointer;width:42px;height:42px;font:400 18px var(--pixel);color:var(--night);border:0;border-radius:50%;transition:transform 80ms,box-shadow 80ms;box-shadow:inset 0 -4px #00000040,0 4px 10px -4px #0009}.btn-a{background:var(--peach)}.btn-b{background:var(--lilac);margin-top:14px}.btn-a:active,.btn-b:active,.btn-a.is-down{transform:translateY(2px);box-shadow:inset 0 -1px #00000040}.btn-a:disabled,.btn-b:disabled{opacity:.45;cursor:default}.console-help{color:var(--muted);text-align:right;margin:12px 8px 0;font-size:20px;display:block}.memory{aspect-ratio:480/320;grid-template-columns:repeat(4,1fr);gap:6px;padding:8px;display:grid}.mcard{cursor:pointer;perspective:600px;background:0 0;border:0;padding:0;position:relative}.mcard-inner{transform-style:preserve-3d;transition:transform .5s var(--ease);position:absolute;inset:0}.mcard.is-open .mcard-inner,.mcard.is-done .mcard-inner{transform:rotateY(180deg)}.mface{-webkit-backface-visibility:hidden;backface-visibility:hidden;border-radius:6px;place-items:center;display:grid;position:absolute;inset:0}.mback{background:repeating-linear-gradient(45deg, var(--lcd-2) 0 4px, var(--lcd) 4px 8px);border:2px solid var(--lcd-ink)}.mback:after{content:"?";font:400 28px var(--pixel);color:var(--lcd-ink);opacity:.55}.mcard:hover .mback{transform:translateY(-2px)}.mfront{background:var(--lcd);border:2px solid var(--lcd-ink);align-content:center;gap:0;transform:rotateY(180deg)}.mfront .mglyph{font:400 clamp(22px, 2.8vw, 34px)/1 var(--display)}.mfront .mname{font:400 14px var(--pixel)}.mcard.is-done .mfront{background:var(--lcd-ink);color:var(--lcd)}.mcard.just .mfront{animation:matched .5s var(--ease)}.mcard.is-wrong .mfront{animation:.35s shake}@keyframes matched{0%{background:var(--lcd-hot)}}@keyframes shake{25%{transform:rotateY(180deg)translate(-4px)}75%{transform:rotateY(180deg)translate(4px)}}.memory.is-won .mcard.is-done .mfront{animation:wave .6s var(--ease) both;animation-delay:calc(var(--i) * 45ms)}@keyframes wave{40%{background:var(--lcd-hot);transform:rotateY(180deg)translateY(-4px)}}.banana-title{position:absolute;top:34px;left:44%}.studio-aside p{color:var(--cream-2);margin:0 0 14px;font-size:18px}.studio-aside .link{--hue:var(--peach)}.pick-note{color:var(--pink);transform-origin:0;margin:0 0 22px;font-size:26px;transform:rotate(-2deg)}.party{grid-template-columns:repeat(3,1fr);gap:clamp(18px,3vw,40px);display:grid}.member{background:var(--cream);color:var(--night);transition:transform .45s var(--spring), box-shadow .3s;border-radius:4px;flex-direction:column;padding:12px 12px 16px;display:flex;position:relative;box-shadow:0 24px 40px -24px #000000e6}.member:first-child{transform:rotate(-2deg)}.member:nth-child(2){transform:rotate(1.5deg)translateY(10px)}.member:nth-child(3){transform:rotate(-1deg)}.member:hover{transform:rotate(0)translateY(-6px)}.member.is-selected:before{content:"";z-index:2;background:#ffb37ab3;width:86px;height:24px;margin-left:-43px;position:absolute;top:-12px;left:50%;transform:rotate(-3deg)}.member-pick{cursor:pointer;text-align:left;width:100%;color:inherit;background:0 0;border:0;flex-direction:column;align-items:flex-start;gap:2px;padding:0;display:flex}.member[data-skin=circle]{--accent:var(--peach)}.member[data-skin=square]{--accent:var(--lilac)}.member[data-skin=star]{--accent:var(--mint)}.member-room{aspect-ratio:1.15;background:linear-gradient(#2c2944,#211f35 74%);border-radius:2px;width:100%;margin-bottom:14px;display:block;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #00000040,inset 0 0 40px #00000059}.member-room:after{content:"";background:linear-gradient(#3e3029,#2b2320);height:26%;position:absolute;bottom:0;left:0;right:0;box-shadow:0 -2px #4a3a30}.room-light{z-index:1;pointer-events:none;background:linear-gradient(color-mix(in srgb, var(--accent) 34%, transparent), transparent 85%);clip-path:polygon(44% 0,56% 0,88% 100%,12% 100%);opacity:.55;width:90%;height:78%;margin-left:-45%;transition:opacity .4s;position:absolute;top:22%;left:50%}.room-lamp{z-index:2;background:#4c4766;width:2px;height:16%;margin-left:-1px;position:absolute;top:0;left:50%}.room-lamp:before{content:"";background:var(--accent);filter:brightness(.85);border-radius:11px 11px 2px 2px;width:22px;height:11px;margin-left:-11px;position:absolute;top:100%;left:50%}.room-lamp:after{content:"";width:8px;height:5px;box-shadow:0 2px 10px 3px color-mix(in srgb, var(--accent) 60%, transparent);background:#fff1c9;border-radius:0 0 5px 5px;margin-left:-4px;transition:box-shadow .4s;position:absolute;top:calc(100% + 9px);left:50%}.room-frame{aspect-ratio:.8;background:#36324f;border:2px solid #5b4334;border-radius:1px;width:15%;position:absolute;top:24%;left:13%;transform:rotate(-3deg)}.room-frame:after{content:"";aspect-ratio:1;background:var(--accent);opacity:.85;width:52%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.member[data-skin=circle] .room-frame:after{border-radius:50%}.member[data-skin=square] .room-frame:after{border-radius:2px}.member[data-skin=star] .room-frame:after{clip-path:polygon(50% 0,62% 35%,100% 38%,70% 60%,80% 100%,50% 78%,20% 100%,30% 60%,0 38%,38% 35%);width:64%}.room-rug{z-index:1;background:color-mix(in srgb, var(--accent) 22%, #2b2320);width:54%;height:9%;box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--accent) 35%, #2b2320);border-radius:50%;margin-left:-27%;position:absolute;bottom:13%;left:50%}.room-rug:after{content:"";filter:blur(2px);background:#00000047;border-radius:50%;width:52%;height:70%;margin:-17.5% 0 0 -26%;position:absolute;top:50%;left:50%}.member-room .avatar{z-index:2;transform-origin:50% 100%;margin-left:-12px;position:absolute;bottom:18%;left:50%;transform:scale(2.1)}.member:hover .room-light{opacity:1}.member:hover .room-lamp:after{box-shadow:0 3px 16px 6px color-mix(in srgb, var(--accent) 80%, transparent)}.member-slot{color:#8a7c6c;justify-content:space-between;width:100%;font-size:17px;display:flex}.member-state:after{content:"elegir"}.member.is-selected .member-state:after{content:"♪ jugando";color:#d96a3e}.member-name{font:400 30px/1.05 var(--display);font-variation-settings:"SOFT" 100}.member-role{color:#6b5e55;font-size:14px}.member-link{font:500 14px var(--sans);color:#6b5e55;margin-top:10px;text-decoration:none}.member-link:hover{color:#d96a3e}.member:hover .avatar{animation:spin-hop .9s var(--ease)}@keyframes spin-hop{0%,to{transform:scale(2.1)}15%{transform:scale(2.1)scale(1.14,.86)}45%{transform:scale(2.1)translateY(-14px)scale(-1,1.06)}70%{transform:scale(2.1)translateY(-6px)scale(1)}85%{transform:scale(2.1)scale(1.12,.9)}}.banana-member{top:-40px;right:18px}.shelf{grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,56px);margin-top:96px;padding-bottom:30px;display:grid;position:relative}.shelf .kicker{margin-bottom:12px;font-size:18px}.shelf-item{border-bottom:1px dashed var(--line);transition:padding .3s var(--ease);justify-content:space-between;align-items:baseline;gap:12px;padding:14px 4px;text-decoration:none;display:flex}.shelf-item>span:first-child{font:400 28px/1.1 var(--display);font-variation-settings:"SOFT" 100}.shelf-item .pixel{color:var(--muted);font-size:17px}.shelf-item .warm{color:var(--peach)}.shelf-item:hover{padding-left:12px}.shelf-board{background:linear-gradient(var(--wood-2), var(--wood));border-radius:3px;height:14px;position:absolute;bottom:0;left:-20px;right:-20px;box-shadow:0 12px 20px -10px #000000b3}.redacted{background:var(--cream);color:var(--cream);user-select:none;border-radius:3px;padding:0 .15em}.tracks{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.tl{border-bottom:1px solid var(--line);border-radius:10px;grid-template-columns:44px 24px minmax(0,1fr) minmax(0,1.4fr) auto;align-items:center;gap:16px;padding:18px 12px;transition:background .3s;display:grid}.tl:hover{background:#f3e7d30a}.tl-num{color:var(--dim);font-size:22px}.tl-eq{align-items:flex-end;gap:2px;height:14px;display:flex}.tl-eq i{background:var(--peach);border-radius:1px;width:3px;animation:1s ease-in-out infinite eq}.tl-eq i:nth-child(2){animation-delay:-.4s}.tl-eq i:nth-child(3){animation-delay:-.7s}@keyframes eq{0%,to{height:4px}50%{height:14px}}body:not(.is-playing) .tl-eq i{animation-play-state:paused}.tl-name{font:400 28px/1.1 var(--display);font-variation-settings:"SOFT" 100}.tl-role{color:var(--muted);font-size:15px}.tl-time{color:var(--cream-2);white-space:nowrap;font-size:19px}.tl.is-now .tl-num,.tl.is-now .tl-time{color:var(--peach)}.instruments{margin-top:72px}.instruments>.hand{color:var(--pink);transform-origin:0;margin:0 0 10px;font-size:30px;transform:rotate(-2deg)}.instruments dl{grid-template-columns:1fr 1fr;gap:0 48px;margin:0;display:grid}.instruments dl div{border-top:1px dashed var(--line);grid-template-columns:70px 1fr;gap:12px;padding:12px 0;display:grid}.instruments dt{color:var(--peach);font-size:18px}.instruments dd{color:var(--cream-2);margin:0;font-size:15px}.side-b-grid{grid-template-columns:1fr 1fr;align-items:center;gap:clamp(32px,6vw,96px);display:grid}.side-b-lead{margin:0;font-size:clamp(20px,2.1vw,25px);line-height:1.4}.specs{margin:28px 0}.specs div{border-bottom:1px dashed var(--line);justify-content:space-between;gap:16px;padding:10px 0;display:flex}.specs dt{color:var(--muted);font-size:18px}.specs dd{margin:0}.secret-msg{color:var(--cream-2);margin:0}.secret-msg b{color:var(--peach);font-weight:600}.pips{gap:8px;margin:18px 0 0;padding:0;list-style:none;display:flex}.pips li{background:#f3e7d31f;border-radius:4px;width:30px;height:8px;transition:background .4s,box-shadow .4s}.pips li.on{background:var(--peach);box-shadow:0 0 12px #ffb37a99}.case-wrap{justify-content:center;padding-top:90px;display:flex;position:relative}.case-wrap .ledge{background:linear-gradient(var(--wood-2), var(--wood));border-radius:3px;width:96px;height:10px;position:absolute;top:30px;left:4%}.case-wrap .ledge .banana{left:36px}.case{aspect-ratio:1.12;background:#f3e7d30a;border:1px solid #f3e7d32e;border-radius:10px;width:min(360px,100%);position:relative;box-shadow:inset 0 1px #ffffff1f,0 40px 70px -40px #000000e6}.case-tape{flex-direction:column;justify-content:center;align-items:center;gap:18px;display:flex;position:absolute;inset:14%}.cassette-secret{--hue:var(--pink);max-width:230px;transition:transform 1.2s var(--spring)}.case-reveal{opacity:0;transition:opacity .8s .6s, transform .8s .6s var(--ease);text-align:center;flex-direction:column;align-items:center;gap:4px;margin:0;display:flex;transform:translateY(10px)}.case-reveal .pixel{color:var(--peach);font-size:20px}.case-reveal .hand{font-size:30px}.case-lid{-webkit-backdrop-filter:blur(3px);transform-origin:50% 0;transition:transform 1.2s var(--ease), opacity 1.2s;background:linear-gradient(130deg,#ffffff24,#ffffff08 40%,#ffffff14),#2c2944e0;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex;position:absolute;inset:0;overflow:hidden}.case-lid:before{content:"";background:#ffb37ac7;height:34px;position:absolute;top:46%;left:-10%;right:-10%;transform:rotate(-8deg)}.case-seal{z-index:1;background:var(--night);color:var(--peach);border-radius:4px;padding:6px 14px;font-size:22px;position:relative}.case-scribble{z-index:1;text-align:center;color:var(--cream);margin:0;font-size:26px;line-height:1;position:relative;transform:rotate(-4deg)}.case.is-shake{animation:.45s shake-case}@keyframes shake-case{20%,60%{transform:rotate(-1.5deg)}40%,80%{transform:rotate(1.5deg)}}.side-b.is-open .case-lid{opacity:0;transform:perspective(900px)rotateX(-100deg)}.side-b.is-open .cassette-secret{transform:rotate(-6deg)translateY(-6px)}.side-b.is-open .case-reveal{opacity:1;transform:none}.side-b.is-open .secret-msg{color:var(--peach)}.fin{padding-bottom:clamp(100px,12vw,160px)}.contact-title{font:300 clamp(56px, 10vw, 148px)/.92 var(--display);font-variation-settings:"SOFT" 100, "opsz" 144;letter-spacing:-.03em;margin:10px 0 40px}.contact-title em{color:var(--peach)}.contact{flex-wrap:wrap;align-items:center;gap:16px 32px;margin:0;padding:0;list-style:none;display:flex}.end-grid{grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:clamp(32px,6vw,80px);margin-top:clamp(96px,12vw,150px);display:grid}.stickers-wrap>.hand,.credits>.hand{color:var(--pink);margin:0 0 18px;font-size:30px}.stickers-wrap .pixel{color:var(--muted);margin-left:8px;font-size:20px}.stickers-wrap .pixel b{color:var(--peach);font-weight:400}.stickers{grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:18px 12px;margin:0;padding:0;list-style:none;display:grid}.sticker{text-align:center;flex-direction:column;align-items:center;gap:8px;display:flex}.sticker-face{color:#f3e7d340;width:76px;height:76px;font:400 30px var(--pixel);transition:transform .5s var(--spring);border:2px dashed #f3e7d333;border-radius:50%;place-items:center;display:grid}.sticker-name{font:600 13px/1.2 var(--sans);color:var(--dim)}.sticker-desc{color:var(--dim);font-size:12px;line-height:1.3}.sticker.is-on .sticker-face{border:3px solid var(--cream);background:var(--c,var(--peach));color:var(--night);transform:rotate(var(--r,-6deg));box-shadow:0 10px 20px -10px #000c}.sticker.is-on .sticker-name{color:var(--cream)}.sticker.is-on .sticker-desc{color:var(--muted)}.sticker.is-new .sticker-face{animation:stick .7s var(--spring)}@keyframes stick{0%{opacity:0;transform:scale(1.8)rotate(-30deg)}}.credits dl{margin:0}.credits dl div{border-top:1px dashed var(--line);justify-content:space-between;gap:12px;padding:10px 0;display:flex}.credits dt{color:var(--muted);font-size:17px}.credits dd{text-align:right;margin:0;font-size:15px}.thanks{font:italic 300 30px var(--display);color:var(--peach);margin:24px 0 0}.floor{border-top:14px solid var(--wood);box-shadow:0 -1px 0 var(--wood-2);color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-top:20px;padding-bottom:100px;display:flex}.floor .hand{font-size:22px}.floor a{text-decoration:none}.floor a:hover{color:var(--peach)}.world{z-index:30;pointer-events:none;height:0;position:absolute;inset:0 0 auto}.player,.avatar{width:24px;height:24px;display:block;position:relative}.player{transform-origin:50% 100%;will-change:transform;opacity:0;pointer-events:auto;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;transition:opacity .4s;position:absolute;top:0;left:0}.player.is-visible{opacity:1}.player.is-held{cursor:grabbing;transform-origin:50% 0}.char{width:36px;height:36px;position:absolute;top:-12px;left:-6px;overflow:visible}.avatar .char{top:-12px;left:-6px}.char-eyes,.char-phones{transform-box:view-box;transform-origin:18px 22px;transition:transform .12s}.player.look-left .char-eyes{transform:translate(-1.5px)}.player.look-right .char-eyes{transform:translate(1.5px)}.player.is-air .char-eyes{transform:translateY(-1.5px)}.player.is-blink .char-eyes{transform:scaleY(.15)}.player.is-idle-look .char-eyes{transform:translate(var(--lx,0), var(--ly,0))}.player.is-held .char-eyes{transform:scale(1.15,.5)}body.is-playing .player:not(.is-air):not(.is-held) .char-phones{animation:nod calc(60s / var(--bpm,74)) ease-in-out infinite}@keyframes nod{50%{transform:translateY(1px)}}.act{pointer-events:none;width:0;height:0;transform:scaleX(var(--f,1));transition:opacity .25s;position:absolute;bottom:0;left:12px}.act.is-out{opacity:0}.act svg{display:block;position:absolute;overflow:visible}.player[data-act] .char-eyes{transform:translate(var(--ax,0), var(--ay,0))}.player[data-act].is-blink .char-eyes{transform:translate(var(--ax,0), var(--ay,0)) scaleY(.15)}@keyframes act-in{0%{opacity:0;transform:translateY(5px)scale(.5)}}.player[data-act=fire]{--ax:calc(var(--f) * 1.6px);--ay:.5px}.player[data-act=fire] .char{filter:drop-shadow(calc(var(--f) * 1.5px) 0 2px #ff8a5047);animation:10s 1.3s infinite chew}.act-fire{width:30px;height:40px;bottom:0;left:4px}.fire-glow{opacity:.22;animation:1.4s ease-in-out infinite alternate glow}.fire-logs{transform-origin:17px 37px;animation:act-in .4s var(--spring) both}.fire-flame{transform-origin:17px 36px;animation:kindle .6s .35s var(--ease) both}.fire-flame path{transform-origin:17px 35px;animation:.9s ease-in-out infinite flicker}.fire-flame .flame-b{animation-duration:.7s;animation-direction:reverse}.fire-flame .flame-c{animation-duration:.55s}.fire-embers circle{opacity:0;animation:1.9s ease-out 1s infinite ember}.fire-embers circle:nth-child(2){--dx:3px;animation-delay:1.6s}.fire-embers circle:nth-child(3){--dx:-2px;animation-delay:2.3s}.fire-stick{transform-origin:-4.5px 34px;animation:stick-in .5s .8s var(--ease) both, roast 10s 1.3s ease-in-out infinite}.mallow{fill:#fbf5ea;animation:10s linear 1.3s infinite toast}@keyframes glow{to{opacity:.34}}@keyframes kindle{0%{transform:scale(0)}}@keyframes flicker{30%{transform:scale(.93,1.08)skew(-3deg)}60%{transform:scale(1.04,.95)skew(2deg)}80%{transform:scale(.97,1.04)skew(1deg)}}@keyframes ember{10%{opacity:1}to{transform:translate(var(--dx,1px), -17px);opacity:0}}@keyframes stick-in{0%{opacity:0;transform:translate(-10px,3px)rotate(8deg)}}@keyframes roast{20%{transform:rotate(-3deg)}40%{transform:rotate(1deg)}60%{transform:rotate(-2deg)}78%{transform:none}86%{transform:translate(-10px,3px)rotate(6deg)}96%{transform:none}}@keyframes toast{0%{opacity:0}5%{opacity:1;fill:#fbf5ea}45%{fill:#f6dca2}78%{fill:#e0a066}85%{opacity:1;fill:#d48f57}87%,to{opacity:0;fill:#d48f57}}@keyframes chew{87%,95%,to{transform:none}89%,93%{transform:scale(1.04,.95)}91%{transform:scale(.98,1.02)}}.player[data-act] .char{transform-origin:50% 100%}.act-hold{transform-origin:50% 100%;width:18px;height:10.6px;animation:act-in .35s var(--spring) both;bottom:-1.5px;left:-9px}.player[data-act=read]{--ax:calc(var(--f) * .5px);--ay:1.4px}.book-page{opacity:0;transform-origin:11px 6px;animation:6s ease-in-out 1.5s infinite page}@keyframes page{0%,70%{opacity:0;transform:none}71%{opacity:1;transform:none}80%{fill:#ddcfb6;transform:scaleX(.08)}90%{opacity:1;fill:#f3e7d3;transform:scaleX(-1)}92%,to{opacity:0;transform:scaleX(-1)}}.player[data-act=game]{--ax:0px;--ay:1.4px}.player[data-act=game] .char{filter:drop-shadow(0 -1px 3px #9fd3c159);animation:5s ease-in-out 1s infinite cheer}.screen-light{opacity:.3;filter:blur(1.4px);animation:1.8s steps(3,end) infinite screen}.act-spark{width:6px;height:6px;animation:5s ease-out 1s infinite spark;bottom:22px;left:7px;transform:scale(0)}@keyframes screen{50%{opacity:.18}}@keyframes cheer{0%,76%,90%,to{transform:none}81%{transform:translateY(-3px)scale(.96,1.05)}86%{transform:scale(1.05,.95)}}@keyframes spark{0%,76%{opacity:1;transform:scale(0)}82%{transform:translateY(-4px)scale(1)rotate(45deg)}95%,to{opacity:0;transform:translateY(-9px)scale(.4)rotate(90deg)}}.player[data-act=water]{--ax:calc(var(--f) * 1.6px);--ay:1px}.player[data-act=water] .char{animation:3.2s ease-in-out 10.2s infinite admire}.act-water{width:34px;height:40px;bottom:0;left:4px}.can{transform-origin:10px 21px;animation:act-in .4s var(--spring) both, pour 3s .5s ease-in-out 3, setdown .7s 9.6s var(--ease) forwards}.drops ellipse{opacity:0;animation:3s ease-in .5s 3 drop}.drops ellipse:nth-child(2){animation-delay:.65s}.drops ellipse:nth-child(3){animation-delay:.8s}.sprout-stem{stroke-dasharray:12;stroke-dashoffset:12px;animation:stem 1.4s 1.2s var(--ease) forwards}.sprout-leaf{animation:bud .6s var(--spring) forwards;transform:scale(0)}.sprout-leaf-l{transform-origin:25.8px 35.5px;animation-delay:4s}.sprout-leaf-r{transform-origin:26.1px 33.6px;animation-delay:4.4s}.sprout-flower{transform-origin:26px 29.8px;animation:bud .7s 8.6s var(--spring) forwards, nodflower 3s 9.4s ease-in-out infinite;transform:scale(0)}@keyframes setdown{to{transform:translate(-1px,15px)}}@keyframes admire{0%,to{transform:none}50%{transform:rotate(calc(var(--f) * 4deg))}}@keyframes pour{15%,60%{transform:rotate(24deg)}75%{transform:none}}@keyframes drop{0%,18%{opacity:0;transform:none}22%{opacity:1}55%{opacity:1;transform:translateY(17px)}56%,to{opacity:0;transform:translateY(17px)}}@keyframes stem{to{stroke-dashoffset:0}}@keyframes bud{to{transform:scale(1)}}@keyframes nodflower{0%,to{transform:rotate(-5deg)}50%{transform:rotate(5deg)}}.player[data-act=bubbles]{--ax:calc(var(--f) * 1.2px);--ay:-.6px}.player[data-act=bubbles] .char{animation:2.8s ease-in-out .4s infinite blow}.act-bubbles{transform-origin:15px 46px;width:40px;height:50px;animation:act-in .35s var(--spring) both;bottom:0;left:-4px}.bubbles g{opacity:0;transform-box:fill-box;transform-origin:50%;animation:2.8s ease-out .6s infinite bubble}.bubbles circle{fill:#b9a8f21a;stroke:#f3e7d399;stroke-width:.5px}.bubbles .shine{fill:#fffc;stroke:none}.bubbles g:nth-child(2){--bx:12px;--by:-18px;animation-delay:.85s}.bubbles g:nth-child(3){--bx:4px;--by:-30px;animation-duration:3.4s;animation-delay:1.1s}.bubbles g:nth-child(4){--bx:15px;--by:-8px;animation-delay:1.3s}@keyframes blow{0%,22%,to{transform:none}8%,16%{transform:scale(1.04,.97)}}@keyframes bubble{0%{opacity:0;transform:translate(0)scale(.3)}10%{opacity:1}85%{opacity:1;transform:translate(var(--bx,8px), var(--by,-24px)) scale(1)}92%,to{opacity:0;transform:translate(var(--bx,8px), var(--by,-24px)) scale(1.5)}}.player.player[data-act=sleep] .char-eyes{transform:translateY(1.2px)scaleY(.12)}.player[data-act=sleep] .char{animation:1.8s ease-in-out yawn-body,3.6s ease-in-out 1.8s infinite snooze}.player[data-act=sleep] .char-mouth{animation:1.8s ease-in-out yawn}.zz{position:absolute;bottom:20px;left:6px}.zz i{scale:var(--f,1) 1;font:400 11px/1 var(--pixel);color:var(--cream-2);opacity:0;animation:3.6s ease-out 1.8s infinite zz;position:absolute;bottom:0;left:0}.zz i:nth-child(2){font-size:13px;animation-delay:3s}.zz i:nth-child(3){font-size:16px;animation-delay:4.2s}@keyframes yawn{0%,to{transform:scale(0)}30%,65%{transform:scale(1)}}@keyframes yawn-body{35%,60%{transform:scale(.96,1.06)}}@keyframes snooze{50%{transform:scale(1.04,.96)}}@keyframes zz{0%{opacity:0;transform:translate(0)}20%{opacity:.85}to{opacity:0;transform:translate(9px,-20px)}}.char-mouth,.char-cheeks circle,.char-dizzy .spiral{transform-box:fill-box;transform-origin:50%}.char-mouth{transform:scale(0)}.char-smile{opacity:0;transition:opacity .15s}.char-dizzy{opacity:0}.char-cheeks circle{transition:transform .2s var(--spring)}.char-phones,.char-neck{transition:opacity .3s, transform .45s var(--spring)}.char-neck{opacity:0;transform:translateY(-5px)}body:not(.is-playing) .char-phones{opacity:0;transform:translateY(8px)scale(.9)}body:not(.is-playing) .char-neck{opacity:1;transition-delay:.12s;transform:none}@media (hover:hover){.player.player:hover:not(.is-held):not([data-act]) .char-eyes{transform:translateY(-.5px)scaleY(.45)}.player:hover:not(.is-held):not([data-act]) .char-smile{opacity:1}.player:hover:not(.is-held):not([data-act]) .char-cheeks circle{transform:scale(1.3)}}.player.is-dizzy .char-eyes{opacity:0}.player.is-dizzy .char-dizzy{opacity:1}.player.is-dizzy .char-dizzy .spiral{animation:.7s linear infinite spin}.player.is-dizzy .char{transform-origin:50% 100%;animation:.9s ease-in-out infinite wobble}@keyframes wobble{25%{transform:rotate(-9deg)}75%{transform:rotate(9deg)}}.player.player.is-dazed .char-eyes{transform:translateY(1px)scaleY(.35)}.daze{pointer-events:none;width:0;height:0;position:absolute;bottom:27px;left:12px}.daze i{clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);background:#f1d98e;width:5px;height:5px;margin:-2.5px;animation:1s linear infinite orbit;position:absolute}.daze i:nth-child(2){animation-delay:-.33s}.daze i:nth-child(3){animation-delay:-.66s}@keyframes orbit{0%{opacity:.6;transform:translate(-11px)scale(.8)}25%{opacity:1;transform:translateY(3px)scale(1.1)}50%{opacity:.6;transform:translate(11px)scale(.8)}75%{opacity:.35;transform:translateY(-3px)scale(.6)}to{opacity:.6;transform:translate(-11px)scale(.8)}}.say{pointer-events:none;white-space:nowrap;background:var(--cream);color:var(--night);font:400 14px/1 var(--pixel);animation:say-in .35s var(--spring) both;border-radius:5px;padding:1px 6px 2px;transition:opacity .25s,translate .25s;position:absolute;bottom:34px;left:12px;transform:translate(-50%);box-shadow:0 6px 12px -6px #0009}.say:after{content:"";background:inherit;border-radius:1px;width:6px;height:6px;margin-left:-3px;position:absolute;bottom:-3px;left:50%;transform:rotate(45deg)}.say.is-out{opacity:0;translate:0 -4px}@keyframes say-in{0%{opacity:0;transform:translate(-50%)translateY(4px)scale(.5)}}.player.is-alert .char{animation:alert .5s var(--spring);transform-origin:50% 100%}@keyframes alert{40%{transform:translateY(-4px)scale(.95,1.06)}}.player.is-waking .char{animation:stretch .7s var(--ease);transform-origin:50% 100%}@keyframes stretch{35%{transform:scale(.86,1.18)}70%{transform:scale(1.06,.95)}}.step-fx{background:var(--cream-2);opacity:.22;pointer-events:none;border-radius:50%;width:5px;height:2.5px;animation:1.25s ease-in forwards step-fade;position:absolute}.step-fx.is-wet{opacity:.55;background:#a9d6ec}@keyframes step-fade{to{opacity:0;transform:scale(.6)}}.player[data-act=dance] .char{animation:dance calc(120s / var(--bpm,74)) ease-in-out infinite;transform-origin:50% 100%}.player.player[data-act=dance] .char-eyes{transform:translateY(-.5px)scaleY(.45)}.player[data-act=dance] .char-smile{opacity:1}@keyframes dance{0%,to{transform:rotate(-7deg)}25%,75%{transform:translateY(-2.5px)scale(.97,1.04)}50%{transform:rotate(7deg)}}.notes{position:absolute;bottom:18px;left:10px}.notes i{scale:var(--f,1) 1;font:400 13px/1 var(--sans);color:var(--peach);opacity:0;animation:2.4s ease-out infinite zz;position:absolute;bottom:0;left:0}.notes i:nth-child(2){color:var(--lilac);animation-delay:.8s}.notes i:nth-child(3){color:var(--mint);animation-delay:1.6s}.player[data-act=fog]{--ax:0px;--ay:-1.8px}.player[data-act=fog] .char{animation:3.4s ease-in-out 4s infinite admire}.act-fog{width:32px;height:28px;transform:scaleX(var(--f,1));bottom:30px;left:-16px}.fog{opacity:0;filter:blur(2.5px);animation:1.2s ease-out forwards fog-in,5s ease-in-out 1.2s infinite alternate fog-breathe}.fog-face path,.fog-face circle{stroke-dasharray:1;stroke-dashoffset:1px;opacity:.6;animation:.5s ease-in-out forwards draw}.fog-ring{animation-duration:.9s!important;animation-delay:1.2s!important}.fog-eye{animation-duration:.15s!important;animation-delay:2.2s!important}.fog-eye-2{animation-delay:2.45s!important}.fog-mouth{animation-delay:2.7s!important}.fog-drip{opacity:.35!important;animation:1.6s ease-in 3.6s forwards draw!important}@keyframes fog-in{to{opacity:.2}}@keyframes fog-breathe{to{opacity:.13}}@keyframes draw{to{stroke-dashoffset:0}}.chute{transform-origin:50% 100%;opacity:0;pointer-events:none;width:60px;height:44px;transition:transform .35s var(--spring), opacity .2s;margin-left:-30px;position:absolute;bottom:20px;left:50%;transform:scale(0,.2)}.chute svg{width:100%;height:100%;overflow:visible}.chute-canopy{fill:var(--peach)}.chute-stripe{fill:var(--cream)}.chute-lines{fill:none;stroke:var(--cream-2);stroke-width:1px;opacity:.8}.player.has-chute .chute{opacity:1;transform:none}.dust{background:var(--cream-2);pointer-events:none;width:5px;height:5px;animation:dust .5s var(--ease) forwards;border-radius:50%;position:absolute}@keyframes dust{to{transform:translate(var(--dx), var(--dy)) scale(.2);opacity:0}}.ring{border:2px solid var(--peach);pointer-events:none;width:30px;height:30px;animation:ring .45s var(--ease) forwards;border-radius:50%;margin:-15px 0 0 -15px;position:absolute}@keyframes ring{0%{transform:scale(.3)}to{opacity:0;transform:scale(1.5)}}.note-fx{font:400 20px var(--sans);color:var(--peach);pointer-events:none;animation:notefx 1.2s var(--ease) forwards;position:absolute}@keyframes notefx{to{transform:translate(var(--dx,10px), -46px) rotate(18deg);opacity:0}}.plus{font:400 22px var(--pixel);color:var(--peach);pointer-events:none;animation:plus .9s var(--ease) forwards;position:absolute}@keyframes plus{to{opacity:0;transform:translateY(-40px)}}.banana{z-index:3;pointer-events:none;filter:drop-shadow(0 0 8px #ffb37ab3);width:24px;height:24px;margin-top:-34px;animation:2.4s ease-in-out infinite float;position:absolute}.banana:before{content:"";position:absolute;inset:0}.banana.is-got{animation:got .55s var(--ease) forwards}.banana.is-got.was-got{opacity:0;animation:none}@keyframes float{50%{transform:translateY(-6px)rotate(-8deg)}}@keyframes got{to{opacity:0;transform:translateY(-44px)scale(1.8)rotate(-30deg)}}.cassette .banana{top:0;right:16px}.touch{z-index:45;pointer-events:none;justify-content:space-between;align-items:flex-end;padding:0 14px;display:none;position:fixed;bottom:84px;left:0;right:0}body.game-on.is-touch .touch{display:flex}.touch-pad{align-items:flex-end;gap:10px;display:flex}.touch button{pointer-events:auto;border:1px solid var(--line);width:58px;height:58px;color:var(--cream);font:400 24px var(--pixel);touch-action:none;-webkit-user-select:none;user-select:none;-webkit-backdrop-filter:blur(8px);background:#232139d1;border-radius:50%}.touch button.is-down{background:var(--peach);color:var(--night)}.touch .touch-jump{width:72px;height:72px}.toasts{z-index:50;pointer-events:none;flex-direction:column;align-items:center;gap:8px;display:flex;position:fixed;top:80px;left:50%;transform:translate(-50%)}.toast{background:var(--cream);color:var(--night);font:400 20px var(--pixel);box-shadow:0 14px 30px -12px #000c, inset 0 4px 0 var(--peach);white-space:nowrap;text-overflow:ellipsis;max-width:calc(100vw - 32px);animation:toast-in .45s var(--spring) both;border-radius:6px;align-items:center;gap:10px;padding:8px 16px;display:flex;overflow:hidden}.toast b{color:#d96a3e;font-weight:400}.toast.out{animation:toast-out .3s var(--ease) forwards}@keyframes toast-in{0%{opacity:0;transform:translateY(-12px)rotate(-3deg)}}@keyframes toast-out{to{opacity:0;transform:translateY(-10px)}}[data-reveal]{opacity:0;transition:opacity 1.1s var(--ease), translate 1.1s var(--ease);translate:0 28px}[data-reveal].in{opacity:1;translate:0}@media (width<=1100px){.nav a{padding:6px 8px}}@media (width<=960px){.top{grid-template-columns:1fr auto}.nav{display:none}.hero{grid-template-columns:1fr;min-height:0;padding-top:120px}.window-wrap{justify-self:center;width:100%;max-width:440px}.section-head,.end-grid,.side-b-grid,.shelf,.instruments dl,.track{grid-template-columns:1fr}.track-reverse .track-info{order:0}.party{grid-template-columns:1fr;max-width:360px;margin:0 auto}.tl{grid-template-columns:34px 18px 1fr;row-gap:2px}.tl-role,.tl-time{grid-column:3}}@media (width<=720px){.deck{bottom:12px;left:12px;right:12px}.deck-info{flex:1;min-width:0;overflow:hidden}.deck-vol,.sticky-keys li:not(.sticky-touch){display:none}.sticky-touch{display:block!important}.hero-name{font-size:clamp(64px,18vw,120px)}.console{border-radius:20px 20px 20px 40px;padding:12px 12px 14px}.screen{border-width:7px}.banana-title{left:auto;right:10%}.floor{padding-bottom:110px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}[data-reveal]{opacity:1;translate:none}}.kbd-wide{min-width:58px;font-size:16px}.sticky-drag{color:#7a5f3a;margin-top:2px;font-size:19px}.touch .touch-chute{width:50px;height:50px;font-size:20px}.hint-word{color:var(--peach);font-size:40px!important}.stamp{z-index:2;text-align:center;width:74px;height:74px;color:var(--mint);border:2px dashed var(--mint);background:#1b1a2beb;border-radius:50%;place-items:center;font-size:13px;line-height:.95;display:grid;position:absolute;bottom:-16px;right:-14px;transform:rotate(-14deg);box-shadow:0 8px 16px -8px #000c}a.cassette:hover .stamp{transition:transform .4s var(--spring);transform:rotate(-4deg)scale(1.05)}.peel{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;display:inline-block;position:relative}.peel-under{color:var(--cream);letter-spacing:.02em;opacity:0;font-weight:600;transition:opacity .3s .2s}.peel-sticker{background:var(--cream);color:#8a7c6c;transform-origin:0;clip-path:polygon(0 0, calc(100% - var(--curl,0px)) 0, 100% var(--curl,0px), 100% 100%, 0 100%);border-radius:3px;place-items:center;transition:clip-path .15s;display:grid;position:absolute;inset:-4px -10px;box-shadow:0 2px #00000026}.peel-sticker:after{content:"";width:var(--curl,0px);height:var(--curl,0px);background:linear-gradient(225deg,#0000 50%,#cbbda5 50%);border-radius:0 0 0 3px;position:absolute;top:0;right:0}.peel-sticker .hand{font-size:16px;line-height:1}.peel:hover .peel-sticker{--curl:9px}.peel.is-peeled{cursor:default}.peel.is-locked{cursor:not-allowed}.peel.is-locked .peel-under{visibility:hidden}.peel.is-locked:hover .peel-sticker{--curl:0px}.peel.is-locked.is-nope .peel-sticker{animation:.35s nope}@keyframes nope{25%{transform:translate(-3px)rotate(-2deg)}75%{transform:translate(3px)rotate(2deg)}}.peel.is-peeled .peel-under{opacity:1}.peel.is-peeled .peel-sticker{animation:peel-off .8s var(--ease) forwards;pointer-events:none}@keyframes peel-off{30%{transform:rotate(-8deg)translate(6px,-8px)scaleX(.85)}to{opacity:0;transform:rotate(38deg)translate(70px,60px)scale(.7)}}.i-letter{position:relative}.i-seat{width:28px;height:0;left:50%;top:var(--seat-top,.1em);margin-left:-14px;position:absolute}.i-letter:after{content:"";left:50%;top:var(--seat-top,.1em);width:.16em;height:.16em;transition:transform .35s var(--spring), opacity .2s;background:currentColor;border-radius:50%;margin:-.19em 0 0 -.08em;position:absolute}body.dot-seated .i-letter:after{opacity:0;transform:scale(0)}
