.home .speakeasy-stage{background-image:url(/comic/room-speakeasy-v2.webp);background-position:50%;min-height:calc(100svh - 80px)}.home .speakeasy-stage .stage-inner{width:calc(100% - 30px);max-width:1280px;min-height:calc(100svh - 85px);padding:20px 0 30px;align-items:center;justify-content:flex-start;padding-left:19%}.home .speakeasy{width:min(580px,100%,calc((100svh - 135px)*.8));aspect-ratio:4/5;filter:drop-shadow(12px 20px 5px #101a2080);--machine-ink:#172c2b;--ivory:#f6e7bb;--brass:#ba863c;--rust:#a93d25;--teal:#276f70;container-type:inline-size}.speakeasy button{color:var(--machine-ink);touch-action:manipulation}.speakeasy .cabinet-art{width:100%;height:100%;object-fit:fill}.speakeasy:before{bottom:0;height:3%;left:8%;right:1%}.directory-window{position:absolute;left:16%;top:36.7%;width:68%;height:12.8%;overflow:hidden;padding:.65% 2.3%;background:linear-gradient(100deg,#fff4cfb8,#e0c88c26 50%,#fff4cf88),repeating-linear-gradient(0,#15252008 0 1px,transparent 1px 4px),#e8d8ae;border:2px solid #25322b;box-shadow:inset 0 4px 8px #3b2d2466,inset 0 0 2px 3px #c7a05d;transform:perspective(900px)rotateX(7deg)}.directory-window:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,transparent 0 33%,#fff3 33% 36%,transparent 36% 65%,#fff2 65% 74%,transparent 74%);box-shadow:inset 0 0 15px #76552a30}.directory-cards{height:100%;display:flex;flex-direction:column;justify-content:space-evenly}.song-label{display:grid;grid-template-columns:28px 1fr;align-items:center;gap:9px;border-bottom:1px solid #8f744f80;font:600 clamp(9px,2.5cqw,14.5px)/1.1 var(--display);padding:0;min-height:0;flex:1;color:#28332b;transition:background .2s,box-shadow .2s}.song-label:last-child{border-bottom:0}.song-label b{font:800 clamp(10px,2.6cqw,15px)var(--mono);color:#a4432d;border-right:1px solid #ad8459}.song-label span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.song-label.is-selected{background:#ffe37b;box-shadow:0 0 12px #ffcd48}.key-rail{position:absolute;left:16%;top:54.5%;width:68%;height:4.8%;display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:1.2%;padding:1.2%;background:repeating-linear-gradient(115deg,#142826 0 4px,#263734 4px 5px);border:2px solid #0f2225;box-shadow:inset 1px 2px 5px #0009,0 2px #e2bc71}.number-key{padding:0;border:1px solid #251b17;border-bottom:4px solid #6d281c;border-radius:2px;background:linear-gradient(#d86b3b 0 13%,#b54b2e 14% 85%,#8c3424 86%);box-shadow:inset 1px 1px #ef9f63,1px 1px #0a1818;color:#ffe6b7!important;text-shadow:1px 1px #672719;font:800 clamp(12px,3.2cqw,19px)/1 var(--display);transition:transform .09s,filter .2s}.number-key:active,.number-key.is-pressed{transform:translateY(2px);border-bottom-width:1px;filter:brightness(1.15)}[data-state=credited] .key-rail{box-shadow:inset 1px 2px 5px #0009,0 2px #e2bc71,0 1px 12px #f5b44a77}.number-key[aria-disabled=true]{filter:saturate(.65)brightness(.85)}.machine-nameplate{position:absolute;left:16%;top:63.8%;width:46%;height:5.2%;display:grid;place-items:center;font:900 italic clamp(19px,5.8cqw,34px)/1 var(--display);letter-spacing:-1.5px;color:#214c4c;text-shadow:1px 2px #fff1bd;pointer-events:none}.selection-meter{position:absolute;left:29%;top:76%;width:25%;height:7%;background:#142521;border:3px solid #998365;box-shadow:0 0 0 2px #142525,inset 2px 2px 6px #000a;display:flex;justify-content:center;align-items:center;gap:12%;color:#cf9952}.selection-digits{font:700 clamp(22px,7cqw,42px)/1 var(--mono);letter-spacing:3px;opacity:.7}.credit-lamp{width:7px;height:7px;border-radius:50%;background:#4c593e;box-shadow:inset 1px 1px #0008}[data-state=credited] .selection-digits{opacity:1;color:#ffcf67;text-shadow:0 0 8px #e89b4d90}[data-state=credited] .credit-lamp{background:#c8eaa1;box-shadow:0 0 8px #b7e88c}.invalid-code .selection-meter{border-color:#af4d30}.invalid-code .selection-digits{color:#e77551}.coin-assembly{position:absolute;left:69%;top:64.5%;width:15%;height:24.5%;background:repeating-linear-gradient(112deg,transparent 0 7px,#56371920 7px 8px),linear-gradient(90deg,#ac854d,#dec48b 40%,#b38e50);border:2px solid #27312c;box-shadow:inset 2px 2px #f1dd9d,inset -2px -2px #624b2d,2px 2px #142a27}.coin-assembly:before,.coin-assembly:after{content:"";position:absolute;width:4px;height:4px;border:1px solid #252c28;border-radius:50%;background:#ad9c75;left:5%;top:3%}.coin-assembly:after{left:auto;right:5%;top:auto;bottom:3%}.coin-slot{position:absolute;left:28%;top:10%;width:44%;height:24%;padding:0;border:2px solid #3a382c;border-radius:3px;background:linear-gradient(105deg,#837b63,#d8cda8 45%,#a89e7d);box-shadow:inset 1px 1px #f9e6b0,1px 2px #5d452b;display:grid;place-items:center}.coin-slot span{height:72%;width:13%;background:#101e1c;border:1px solid #554f37;box-shadow:inset 2px 0 #000,2px 1px #fff6}.coin-slot:hover,.slot-near .coin-slot{box-shadow:0 0 9px #ffe49a,inset 1px 1px #f9e6b0}.slot-near .coin-slot{outline:2px solid #ffdf83;outline-offset:2px}.refund-button{position:absolute;left:28%;top:46%;width:44%;height:18%;padding:2px;background:#b65b35;border:2px solid #29362c;border-bottom:4px solid #773921;border-radius:3px;box-shadow:inset 1px 1px #e3a265}.refund-button svg{width:100%;height:100%}.refund-button:active{transform:translateY(2px);border-bottom-width:2px}.return-cup{position:absolute;left:9%;top:71%;width:82%;height:23%;background:linear-gradient(#12221f 0 42%,#514b35 45% 79%,#bbaa75 80%);border:2px solid #625b40;border-radius:2px 2px 9px 9px;box-shadow:inset 1px 3px #071915,1px 1px #f2d59a}.speakeasy .machine-coin{position:absolute;left:73.5%;top:83.5%;width:6.5%;min-width:22px;aspect-ratio:1;z-index:6;padding:0;border:0;background:0 0;border-radius:50%;filter:drop-shadow(2px 3px 1px #0e1a1b99);touch-action:none;user-select:none;transition:left .3s,top .3s,transform .3s;transform:rotate(-15deg)scale(.87);cursor:grab}.coin-face{display:block;width:100%;height:100%;overflow:visible}.coin-face>circle:first-child{fill:#d7a24f;stroke:#3c3523;stroke-width:4}.coin-rim{fill:#e8ba66;stroke:#7c5329;stroke-width:3;stroke-dasharray:2 3}.coin-stamp{fill:#b5813e;stroke:#7e5429;stroke-width:2}.coin-scratch{fill:none;stroke:#ffe3a0;stroke-width:3}.machine-coin:hover,.machine-coin.coin-hint{filter:drop-shadow(0 0 5px #ffd17d);transform:rotate(-8deg)scale(1)}[data-state=held] .machine-coin{left:59%;top:78%;transform:rotate(-18deg)scale(1.05)}.machine-coin.is-dragging{transition:none;transform:translate(var(--drag-x,0px),var(--drag-y,0px))rotate(-12deg)scale(1.08);cursor:grabbing;z-index:30;pointer-events:auto}.is-inserting .machine-coin{transition:transform .48s cubic-bezier(.3,.1,.6,1),opacity .5s;transform:translate(var(--insert-x),var(--insert-y))rotateY(85deg)scale(.7);opacity:0;pointer-events:none}.is-refunding .machine-coin{animation:refund-coin .55s ease-out}.needs-coin{animation:mechanical-nudge .3s 2}.sound-switch{position:absolute;left:17%;top:87%;width:6%;aspect-ratio:1;min-width:22px;border:2px solid #283a30;padding:3px;background:#ad976c;color:#2b463b!important;border-radius:50%;box-shadow:inset 1px 1px #e4d09b}.sound-switch svg{width:100%;height:100%}.sound-switch[aria-pressed=true]{background:#efcd82;box-shadow:0 0 5px #f9dd9a}.menu-latch{position:absolute;left:79%;top:48%;width:6%;height:3.7%;min-width:24px;min-height:22px;z-index:8;padding:0;background:linear-gradient(#e5ca8d,#96784b);border:2px solid #25392f;box-shadow:inset 1px 1px #fff0b9,2px 2px #2b342b;transform:rotate(-3deg)}.menu-latch span{display:block;width:65%;height:20%;background:#293a2d;box-shadow:0 1px #fff4;margin:auto}.menu-latch[aria-disabled=false]{background:linear-gradient(#f7dfa4,#c29a55)}.menu-latch:hover{transform:rotate(-3deg)translateY(1px)}.paper-tracks{position:absolute;left:14%;top:35%;width:72%;z-index:20;padding:5% 5% 6%;background:repeating-linear-gradient(0,transparent 0 3px,#836b3910 3px 4px),linear-gradient(102deg,#f2dfaa,#fff0cb 45%,#ead49e);border:2px solid #4a4230;box-shadow:3px 7px #182a2766,9px 18px 14px #0d1e2066;transform:rotate(-2deg);transform-origin:95% 5%;animation:paper-unfold .38s cubic-bezier(.2,.7,.2,1)}.paper-tracks:after{content:"";position:absolute;inset:49% 0 auto;height:2px;background:#ba9e6566;box-shadow:0 2px #fff5;pointer-events:none}.paper-edge{position:absolute;left:5%;right:5%;top:7px;height:3px;border-top:1px dashed #b18e51}.paper-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:5%;border-bottom:2px solid #776543;padding-bottom:2%;font:800 clamp(17px,4.5cqw,27px)var(--display);color:#344337}.close-tracks{border:0;background:0 0;font:24px/1 var(--body);padding:4px 7px}.paper-tracks ol{list-style:none;padding:0;margin:0}.paper-tracks li{display:grid;grid-template-columns:28px 1fr;gap:5px 12px;padding:3.4% 0;border-bottom:1px solid #b99e6a;font:650 clamp(12px,3.2cqw,18px)/1.4 var(--display);color:#253d34}.paper-tracks li b{color:#a04b32;font-family:var(--mono)}.paper-tracks li time{grid-column:2;font:10px var(--mono);color:#756b50;letter-spacing:.5px}.paper-tracks li:last-child{border-bottom:0}.record-motion{position:absolute;left:39%;top:15%;width:23%;aspect-ratio:1;border:1px solid transparent;pointer-events:none;opacity:0}.record-motion span{position:absolute;inset:0;border-radius:50%;background:repeating-radial-gradient(circle,#122e2c 0 2px,#29423b 2px 3px);border:3px solid #a98b52;box-shadow:0 0 10px #ebb45d}.record-motion span:after{content:"";position:absolute;inset:32%;border-radius:50%;background:#bf7439;border:4px solid #d8b367}.is-playing .record-motion{opacity:1;animation:record-engage .8s ease both}.is-playing .record-motion span{animation:record-spin .65s linear infinite}.is-playing .directory-window{box-shadow:inset 0 0 14px #ffde8a,0 0 14px #ffdc8c80}.no-script{position:absolute;left:16%;top:75%;width:49%;font-size:12px;background:#f5e5bc;padding:12px;border:2px solid #28382d}@keyframes paper-unfold{from{opacity:0;transform:translateY(-12px)rotate(-4deg)scaleY(.5)}to{opacity:1;transform:rotate(-2deg)scaleY(1)}}@keyframes refund-coin{0%{transform:translateY(-15px)rotate(120deg)scale(.5)}70%{transform:translateY(3px)rotate(-25deg)scale(.9)}100%{transform:rotate(-15deg)scale(.87)}}@keyframes mechanical-nudge{50%{translate:2px 0}}@keyframes record-engage{0%{transform:translate(25%,-10%)rotate(-25deg);opacity:0}25%{opacity:1}100%{transform:translate(0,0)rotate(0);opacity:1}}@keyframes record-spin{to{rotate:360deg}}@media(max-width:1050px){.home .speakeasy-stage .stage-inner{padding-left:12%}}@media(max-width:780px){.home .speakeasy-stage{min-height:calc(100svh - 74px);background-position:58%}.home .speakeasy-stage .stage-inner{min-height:calc(100svh - 79px);justify-content:center;padding:20px 0 30px}.home .speakeasy{width:min(580px,100%,calc((100svh - 125px)*.8))}}@media(max-width:500px){.home .speakeasy-stage{min-height:calc(100svh - 69px);background-position:54%}.home .speakeasy-stage .stage-inner{width:calc(100% - 12px);min-height:calc(100svh - 74px);padding:12px 0 24px}.home .speakeasy{width:min(100%,calc((100svh - 110px)*.8))}.directory-window{padding:.45% 2.8%}.song-label{grid-template-columns:24px 1fr;gap:6px}.number-key{font-size:14px}.paper-tracks{left:9%;width:82%}.paper-tracks li{grid-template-columns:25px 1fr;font-size:14px}.paper-tracks li time{font-size:10px}.menu-latch{width:8%}.key-rail{left:13%;width:74%;gap:1%;padding:.9% .5%}.sound-switch{min-width:22px}}.speakeasy .machine-coin:before{content:"";position:absolute;inset:-11px;border-radius:50%}.coin-slot:before{content:"";position:absolute;inset:-8px}.coin-face{pointer-events:none;user-select:none}