:root{color:#f7d9a0;background:#030204;font-family:Courier New,Liberation Mono,monospace;font-synthesis:none}*{box-sizing:border-box}html,body,#root{width:100%;min-width:320px;min-height:100%;margin:0}body{min-height:100vh;overflow:hidden;background:#030204;-webkit-font-smoothing:none;-webkit-user-select:none;user-select:none}button{font:inherit}.game-page{width:100vw;height:100vh;display:grid;place-items:center;overflow:hidden;background:#030204}.game-stage{container-type:inline-size;position:relative;width:min(100vw,150vh);aspect-ratio:3 / 2;overflow:hidden;isolation:isolate;background:#090407 url(/assets/approved-gameplay-clean.png) center / 100% 100% no-repeat;box-shadow:0 0 5cqw #e6341c1f,0 0 7cqw #00e2ff14}.game-stage:after{content:"";position:absolute;z-index:8;right:0;bottom:0;width:27.4%;height:1.15%;background:#030204;pointer-events:none}.game-stage.start-state{width:min(100vw,140.55vh);aspect-ratio:1487 / 1058}.start-cover{position:absolute;z-index:50;top:0;right:0;bottom:0;left:0;overflow:hidden;background:#050307}.start-cover__art{position:absolute;top:0;right:0;bottom:0;left:0;display:block;width:100%;height:100%;object-fit:fill;image-rendering:auto;pointer-events:none}.start-cover__art{z-index:0}.start-cover__play{position:absolute;z-index:4;left:54.7%;top:53%;width:26%;height:15.2%;border:.18cqw solid transparent;border-radius:.35cqw;color:transparent;background:transparent;cursor:pointer}.start-cover__play:hover,.start-cover__play:focus-visible,.start-cover__controls:hover,.start-cover__controls:focus-visible,.start-cover__sound:hover,.start-cover__sound:focus-visible{outline:0;border-color:#46ebffe0;background:#ff5d1c14;box-shadow:0 0 1.3cqw #42e8ff8c}.start-cover__controls,.start-cover__sound{position:absolute;z-index:4;top:69.2%;height:7.8%;border:.15cqw solid transparent;border-radius:.32cqw;color:transparent;background:transparent;cursor:pointer}.start-cover__controls{left:51.3%;width:16.4%}.start-cover__sound{left:69.1%;width:20.1%}.start-cover__sound span{position:absolute;right:.7cqw;bottom:.45cqw;padding:.18cqw .34cqw;border:.08cqw solid #5ceeff;color:#87f6ff;background:#04070ae0;font-size:.64cqw;font-weight:900}.start-cover__sound.is-muted{filter:grayscale(.95) brightness(.64)}.start-cover__smoke{position:absolute;z-index:2;left:29%;top:15.5%;width:8.4%;height:44.5%;object-fit:fill;opacity:0;image-rendering:pixelated;transform-origin:50% 100%;pointer-events:none;animation:smoke-rise 6.2s steps(14,end) infinite}.start-cover__smoke--two{left:29.8%;top:23.4%;width:7.2%;height:36.4%;animation-delay:-3.1s}.start-cover__beer-list{position:absolute;z-index:3;left:3.15%;top:45.3%;width:11.1%;display:flex;flex-direction:column;gap:.18cqw;font-size:.88cqw;font-weight:900;line-height:1.25;letter-spacing:-.025cqw;text-shadow:0 0 .2cqw currentColor;pointer-events:none}.start-cover__beer-list span:before{content:"•";display:inline-block;width:.9cqw}.start-cover__beer-list span:nth-child(1){color:#e4aa32}.start-cover__beer-list span:nth-child(2){color:#b5a283}.start-cover__beer-list span:nth-child(3){color:#65be49}.start-cover__beer-list span:nth-child(4){color:#ef7924}.start-cover__beer-list span:nth-child(5){color:#41c8cf}.start-cover__beer-list span:nth-child(6){color:#388fd5}.start-cover__speech{position:absolute;z-index:3;left:38.85%;top:47.2%;width:16.1%;height:9.7%;display:grid;place-items:center;color:#170d08;font-size:1.58cqw;font-weight:900;line-height:1.18;text-align:center;letter-spacing:-.065cqw;transform:rotate(-.35deg);pointer-events:none}.start-cover__speech span{display:block;width:100%}.start-cover__record{position:absolute;z-index:3;left:58.5%;top:83.5%;width:19.5%;height:8.1%;display:grid;place-items:center;color:#ff8129;background:transparent;font-size:4.1cqw;font-weight:900;line-height:1;letter-spacing:.12cqw;text-shadow:0 0 .75cqw rgba(255,91,28,.78);pointer-events:none}.start-controls-modal{position:absolute;z-index:8;left:34.5%;top:17%;width:34%;min-height:62%;display:flex;flex-direction:column;align-items:center;gap:1.1cqw;padding:2.2cqw;border:.28cqw solid #f05c2f;color:#e9d1a7;background:#040509f9;box-shadow:0 0 0 .16cqw #3be8ff,0 0 3cqw #ed4b27b8}.start-controls-modal h2{margin:0;color:#42e8ff;font-size:2.1cqw;text-shadow:0 0 .65cqw rgba(0,220,255,.62)}.start-controls-modal__keys{width:100%;display:grid;grid-template-columns:8cqw 1fr;gap:.62cqw 1cqw;align-items:center;font-size:1.05cqw}.start-controls-modal__keys span{padding:.34cqw .5cqw;border:.11cqw solid #45eaff;color:#6af2ff;text-align:center}.start-controls-modal__keys b{color:#e9d1a7}.start-controls-modal>button{min-width:14cqw;padding:.55cqw .9cqw;border:.13cqw solid #ff8a45;color:#ffe2ac;background:#84271d;font-size:.95cqw;font-weight:900;cursor:pointer}.start-controls-modal>button:hover,.start-controls-modal>button:focus-visible{outline:.15cqw solid #43eaff;outline-offset:.15cqw;filter:brightness(1.2)}.board-clean-underlay{position:absolute;z-index:2;left:33.18%;top:9.12%;width:38.05%;height:86%;background:#020408;pointer-events:none}.board-grid{position:absolute;z-index:3;left:33.47%;top:9.18%;width:36.72%;height:85%;display:grid;grid-template-columns:repeat(10,1fr);grid-template-rows:repeat(20,1fr);overflow:hidden;background:#020408fb;box-shadow:inset 0 0 2.8cqw #000000db}.board-cell{position:relative;min-width:0;min-height:0;overflow:visible;border-right:1px solid rgba(101,83,77,.28);border-bottom:1px solid rgba(101,83,77,.28)}.board-cell:nth-child(10n){border-right:0}.beer-sprite{position:absolute;z-index:2;left:-4%;bottom:-24%;width:108%;height:150%;object-fit:contain;image-rendering:pixelated;filter:saturate(1.08) contrast(1.08) drop-shadow(0 0 .22cqw rgba(255,173,35,.34));pointer-events:none}.board-cell>.beer-sprite{left:-6%;bottom:1%;width:112%;height:196%}.ghost-sprite{opacity:.17;filter:grayscale(.35) sepia(1) hue-rotate(135deg) saturate(2.2) drop-shadow(0 0 .1cqw #23e9ff)}.board-cell.clearing{z-index:5;background:#ffc45538;animation:drain-row 1.26s steps(8,end) both}.board-cell.clearing>.beer-sprite{animation:drain-beer 1.26s steps(8,end) both}.empty-glass-sprite{position:absolute;z-index:4;left:18%;bottom:3%;width:64%;height:94%;object-fit:contain;image-rendering:pixelated;opacity:0;pointer-events:none;animation:show-empty-glass 1.26s steps(6,end) both}@keyframes drain-row{0%,18%{box-shadow:inset 0 0 .8cqw #fff1b5;transform:translate(0)}19%,42%{box-shadow:inset 0 0 1.2cqw #ff9b19;transform:translate(.12cqw)}43%,68%{box-shadow:inset 0 0 1.2cqw #f14c22;transform:translate(-.12cqw)}69%,86%{box-shadow:inset 0 0 .9cqw #55ebff;transform:translate(0)}to{opacity:0;box-shadow:inset 0 0 0 transparent;transform:translateY(72%) scaleY(.08)}}@keyframes drain-beer{0%,18%{clip-path:inset(0 0 0 0);opacity:1;filter:saturate(1.08) contrast(1.08)}52%{clip-path:inset(58% 0 0 0);opacity:.42;filter:saturate(.58) brightness(1.2)}66%,to{clip-path:inset(100% 0 0 0);opacity:0}}@keyframes show-empty-glass{0%,43%{opacity:0;transform:translateY(-.2cqw)}52%,83%{opacity:.94;transform:translateY(0)}to{opacity:0;transform:translateY(65%) scaleY(.16)}}.score-value,.level-value{position:absolute;z-index:6;display:grid;place-items:center;margin:0;border:0;color:#ff8f22;background:transparent;font-family:Courier New,monospace;font-weight:900;line-height:1;text-shadow:0 0 .5cqw rgba(255,111,32,.7)}.score-value{left:75.8%;top:5.8%;width:18.5%;height:8.1%;background:#07080b;font-size:4cqw;letter-spacing:.16cqw}.level-value{left:76.1%;top:20.8%;width:18%;height:5.6%;color:#2ceaff;font-size:3.45cqw;text-shadow:0 0 .5cqw rgba(0,220,255,.72)}.dynamic-panel{position:absolute;z-index:6;border:0;padding:0;background:#07080b}.next-piece{left:74.1%;top:35.2%;width:9.6%;height:12.6%}.hold-piece{left:85.7%;top:35.2%;width:9.2%;height:12.6%;cursor:pointer}.hold-piece.locked{filter:grayscale(.75) brightness(.72);cursor:not-allowed}.mini-grid{position:absolute;top:2.5%;right:2.5%;bottom:2.5%;left:2.5%;display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(5,1fr)}.mini-cell{position:relative}.mini-cell .beer-sprite{left:-6%;bottom:1%;width:114%;height:196%}.cold-control{position:absolute;z-index:7;left:80.1%;top:58.2%;width:14.8%;height:7.5%;display:flex;align-items:center;justify-content:center;gap:.7cqw;border:0;color:#31e8ff;padding:0 .55cqw 0 1.1cqw;background:transparent;font-size:1.45cqw;font-weight:900;letter-spacing:.04cqw;cursor:pointer}.cold-control b{display:grid;place-items:center;min-width:2.5cqw;min-height:2.5cqw;color:#0b1115;background:#7ef7ff;border:.14cqw solid #ecffff;box-shadow:0 0 .9cqw #1fe5ff}.cold-control.ready{animation:bonus-ready .82s steps(2,end) infinite}.cold-control.active{color:#eaffff;background:transparent;text-shadow:0 0 .7cqw #2ceaff}@keyframes bonus-ready{50%{filter:brightness(1.45)}}.cold-active .board-grid{box-shadow:inset 0 0 3cqw #29e9ff61,0 0 1.6cqw #29e9ff52}.cold-burst{position:absolute;z-index:14;left:42.4%;top:30%;width:19%;height:34%;display:grid;place-items:center;pointer-events:none;animation:cold-burst 1.26s steps(8,end) both}.cold-burst img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(0 0 1.4cqw rgba(48,228,255,.85))}.cold-burst strong{position:absolute;bottom:-.25cqw;color:#cfffff;font-size:1.18cqw;letter-spacing:.08cqw;text-shadow:.12cqw .12cqw 0 #072a3d,0 0 .7cqw #28e6ff}@keyframes cold-burst{0%{opacity:0;transform:scale(.35) rotate(-8deg)}24%{opacity:1;transform:scale(1.06) rotate(2deg)}72%{opacity:.92;transform:scale(.98) rotate(0)}to{opacity:0;transform:scale(1.2) translateY(-.8cqw)}}.luke-blink{position:absolute;z-index:5;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;object-fit:fill;image-rendering:pixelated;pointer-events:none;animation:luke-blink 7.4s steps(1,end) infinite}.luke-smoke{position:absolute;z-index:6;left:19.55%;top:34.2%;width:5.5%;height:28%;object-fit:fill;opacity:0;image-rendering:pixelated;transform-origin:50% 100%;pointer-events:none;animation:smoke-rise 6.2s steps(14,end) infinite}.luke-smoke--two{left:20.15%;top:38.5%;width:4.7%;height:23.5%;animation-delay:-3.1s}.paused .luke-smoke{animation-play-state:paused;opacity:.08}.paused .luke-blink{animation:none;opacity:1}@keyframes luke-blink{0%,88%,91%,94%,to{opacity:0}89%,90%,92%,93%{opacity:1}}@keyframes smoke-rise{0%{opacity:0;transform:translate3d(0,.7cqw,0) scale(.66)}18%{opacity:.48}62%{opacity:.34;transform:translate3d(.38cqw,-2.2cqw,0) scale(1.02)}to{opacity:0;transform:translate3d(-.26cqw,-4.1cqw,0) scale(1.28)}}.speech{position:absolute;z-index:8;left:21.45%;top:55.35%;width:12.25%;height:13.3%;color:#150c07;pointer-events:none}.speech img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:fill;image-rendering:pixelated;filter:drop-shadow(.18cqw .2cqw 0 #35170c)}.speech span{position:absolute;z-index:1;left:10.5%;top:17%;width:80%;height:59%;display:grid;place-items:center;font-size:.82cqw;font-weight:900;line-height:1.1;text-align:center;-webkit-hyphens:none;hyphens:none}.speech--medium span{font-size:.74cqw}.speech--long span{font-size:.66cqw;line-height:1.08}.hotspot{position:absolute;z-index:9;padding:0;border:.1cqw solid transparent;color:transparent;background:transparent;cursor:pointer}.hotspot:hover,.hotspot:focus-visible{outline:0;border-color:#57efffc2;background:#31e8ff21;box-shadow:0 0 .6cqw #31e8ff80}.left-control{left:74.22%;top:69.3%;width:3.7%;height:4.9%}.right-control{left:78.2%;top:69.3%;width:3.7%;height:4.9%}.rotate-control{left:74.3%;top:75.5%;width:3.7%;height:4.7%}.down-control{left:74.3%;top:81.2%;width:3.7%;height:4.7%}.drop-control{left:74.3%;top:86.8%;width:8.2%;height:4.3%}.pause-control{left:73.7%;top:94.15%;width:20.5%;height:5.15%;display:grid;place-items:center;border:.2cqw solid #ff6235;color:#ff7042;background:#180508f7;box-shadow:0 0 0 .12cqw #52120f,inset 0 0 0 .13cqw #8b251b,inset 0 0 1.1cqw #f43f1c57,0 0 .7cqw #f13a1c4d;font-size:2.05cqw;font-weight:900;line-height:1;letter-spacing:.12cqw;text-shadow:.09cqw .09cqw 0 #65170e,0 0 .5cqw rgba(255,76,38,.55)}.pause-control:hover,.pause-control:focus-visible{border-color:#ff8a54;color:#ff9a68;background:#2a090afa}.mute-control{position:absolute;z-index:10;left:78%;top:89%;width:15.4%;height:4.1%;border:0;color:#61eeff;background:#05080ceb;font-size:.75cqw;font-weight:900;letter-spacing:.08cqw;cursor:pointer;opacity:0}.mute-control:hover,.mute-control:focus-visible,.mute-control.muted{opacity:1}.game-modal{position:absolute;z-index:15;left:37.3%;top:23%;width:29.5%;min-height:46%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.1cqw;padding:2cqw 1.8cqw;border:.3cqw solid #f05c2f;color:#f6d8a3;background:#050509f6;box-shadow:0 0 0 .16cqw #3be8ff,0 0 2.8cqw #ed4b2794,inset 0 0 2.4cqw #000000eb;text-align:center}.game-modal h1,.game-modal h2,.game-modal p{margin:0}.game-modal h1,.game-modal h2{color:#ff7b2d;font-size:3.1cqw;line-height:.92;letter-spacing:.02cqw;text-shadow:0 0 .7cqw rgba(255,91,31,.68)}.game-modal h1{display:flex;flex-direction:column}.game-modal h1 span:last-child{color:#42e8ff}.game-modal p{color:#ddc49c;font-size:1.05cqw;line-height:1.35}.game-modal button{min-width:13cqw;padding:.85cqw 1.1cqw;border:.2cqw solid #ff9d54;color:#fff0cc;background:#b42f20;box-shadow:inset 0 0 0 .16cqw #ff5d2b,0 0 1cqw #ff4c2473;font-size:1.5cqw;font-weight:900;cursor:pointer}.game-modal button:hover,.game-modal button:focus-visible{outline:.18cqw solid #43eaff;outline-offset:.25cqw;filter:brightness(1.2)}.modal-kicker,.game-modal small{color:#5deeff;font-size:.72cqw;font-weight:900;letter-spacing:.08cqw}.pause-modal,.gameover-modal{min-height:28%;width:26%;left:39.1%;top:34%}.paused .board-grid{filter:brightness(.3) saturate(.35)}.paused:before{content:"Z Z Z";position:absolute;z-index:12;left:17.3%;top:42.5%;color:#44eaff;font-size:2cqw;font-weight:900;letter-spacing:.5cqw;animation:sleeping 1.4s steps(4,end) infinite}@keyframes sleeping{50%{transform:translateY(-.7cqw);opacity:.48}}.keyboard-hint{position:absolute;z-index:11;left:34%;bottom:.35%;width:36%;padding:.25cqw .45cqw;color:#5befffc7;background:#040508c7;font-size:.62cqw;font-weight:700;text-align:center;pointer-events:none}@media(max-aspect-ratio:1 / 1){body{overflow:auto}.game-page{width:max-content;min-width:100vw;align-items:start}.game-stage{width:1024px;margin-top:1rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:1ms!important;animation-iteration-count:1!important}}
