/* AFTER HOURS: scorched enamel, rust blooms, caged tubes, salvaged machinery. */
:root{--rust:#87533c;--steel:#3a403b;--pink:#d194a8;--scrap:#c5c59b}body{background:radial-gradient(ellipse at 0 10%,#783c3727,transparent 38%),radial-gradient(ellipse at 100% 55%,#57426222,transparent 50%),repeating-linear-gradient(0deg,transparent 0 79px,#080a0980 79px 82px),repeating-linear-gradient(90deg,#ffffff02 0 1px,transparent 1px 165px),#111412;background-attachment:fixed}.noise{opacity:.095}header{background:linear-gradient(110deg,#101612ed,#1d211ced);border-bottom:8px ridge #373b31;box-shadow:0 -1px 18px #da8f9f33,0 8px 22px #0008;position:relative}header:after{content:'';position:absolute;bottom:-8px;left:8%;width:15%;height:8px;background:linear-gradient(90deg,transparent,#77483299,transparent);pointer-events:none}.hero{background:radial-gradient(ellipse at 90% 60%,#7f472e1c,transparent 60%)}.hero:before{content:'NO CREDIT. NO QUESTIONS.';position:absolute;right:10px;top:4px;font-size:8px;letter-spacing:3px;color:#8d6553;transform:rotate(4deg);border:1px solid #8d655355;padding:6px 10px}.games .game{border:2px solid #3c4135;box-shadow:inset 0 0 16px #0006,2px 4px 0 #060906;background:radial-gradient(ellipse at 100% 100%,#85483133,transparent 55%),#191d18}.games .game-info{background:repeating-linear-gradient(110deg,transparent 0 70px,#d4c8a505 70px 71px),linear-gradient(#0000,#0003)}.game-art{box-shadow:inset 0 -15px 25px #0005}.game-art:after{border:1px solid #797b5333;background:radial-gradient(ellipse at 0 100%,#b3693822,transparent 55%);box-shadow:inset 0 0 20px #0003}.game-art:before{height:5px;border-radius:10px;border:1px solid #776959;box-shadow:0 0 12px var(--tube),0 8px 24px color-mix(in srgb,var(--tube) 23%,transparent)}.games .game:last-child{grid-column:span 2}.games .game:nth-child(4),.games .game:nth-child(5){grid-column:span 2}.games .game:last-child .game-art,.games .game:nth-child(n+4) .game-art{height:164px}.games .game:nth-child(10){grid-column:span 6}.play-table{background:radial-gradient(ellipse at 0 20%,#86604425,transparent 30%),radial-gradient(ellipse at 95% 95%,#a15c3029,transparent 35%),repeating-linear-gradient(126deg,#c6c8aa05 0 1px,transparent 1px 49px),#151c17;border:10px ridge #474b3d;box-shadow:inset 0 0 90px #0009,0 7px 0 #090d09,0 15px 20px #0004;overflow:hidden}.play-table:after{content:'';position:absolute;inset:7px;pointer-events:none;z-index:0;background:radial-gradient(circle at 0 0,#13160d 0 4px,#7e8061 5px,#1e251a 7px,transparent 8px),radial-gradient(circle at 100% 0,#13160d 0 4px,#7e8061 5px,#1e251a 7px,transparent 8px),radial-gradient(circle at 0 100%,#13160d 0 4px,#7e8061 5px,#1e251a 7px,transparent 8px),radial-gradient(circle at 100% 100%,#13160d 0 4px,#7e8061 5px,#1e251a 7px,transparent 8px)}.room-tag{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid #7a5b3c66;color:#a17b5c;margin-bottom:24px;padding-bottom:12px;font-size:9px;letter-spacing:2px}.room-tag small{font-size:7px;color:#727764;letter-spacing:1px}.controls{background:linear-gradient(0deg,#151a15,#242a20);border-bottom:5px ridge #454b3b;box-shadow:0 5px 0 #0c100c;position:relative}.controls button{min-height:42px;box-shadow:0 3px 0 #090c08,inset 0 1px 0 #ffffff0b}.controls .primary{box-shadow:0 3px 0 #64743c,inset 0 1px 0 #e7eab440;color:#172010;background:linear-gradient(#cedf99,#a9bd6b)}.controls button:active:not(:disabled){transform:translateY(3px);box-shadow:inset 0 2px 7px #0005}.empty-stash{margin:24px auto 0;width:91%;max-width:1375px;border:2px solid #bba16c;background:repeating-linear-gradient(-50deg,#ad825215 0 12px,transparent 12px 24px),#24291d;display:flex;gap:20px;align-items:center;justify-content:space-between;padding:21px;box-shadow:0 0 20px #bfa86018}.empty-stash[hidden]{display:none}.empty-stash strong{display:block;font:700 27px 'Barlow Condensed',Impact,sans-serif;letter-spacing:1px;margin:6px 0}.empty-stash small{color:#aeb19c;font-size:10px}.empty-stamp{font-size:8px;color:#d9b27c;letter-spacing:3px}.empty-stash .primary{color:#1c2115;white-space:nowrap}.wallet{font-variant-numeric:tabular-nums}.wallet b{transition:color .15s}.recent-hands{margin-top:24px;padding-top:18px;border-top:1px dashed #6c6e50;font-size:8px;color:#8c947d;letter-spacing:2px}.recent-hands>div{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}.receipt{padding:9px 13px;background:#22271f;border-left:2px solid #67704a;min-width:92px}.receipt small{font-size:7px;letter-spacing:0}.receipt b{display:block;font-size:15px;margin-top:4px;letter-spacing:0;font-variant-numeric:tabular-nums}.receipt.gain{color:#c1d293;border-color:#c1d293}.receipt.loss{color:#b18776;border-color:#855542}.receipt.push{color:#9da18d}.payout-pop{display:flex;flex-direction:column;align-items:center;gap:7px;animation:payoutMetal 2.3s both;border-width:3px;background:linear-gradient(125deg,#202d1ef5,#111a0ff5);box-shadow:0 0 0 3px #0b1109,0 0 50px #b8db6838;padding:22px 28px;max-width:90%;white-space:normal;text-align:center}.payout-pop small{font:9px 'IBM Plex Mono',monospace;letter-spacing:3px}.payout-pop strong{font:800 clamp(25px,5vw,48px)/1 'Barlow Condensed',Impact,sans-serif;white-space:nowrap}.payout-pop>span{font:8px 'IBM Plex Mono',monospace;color:#9ba78a}.payout-pop.lost{opacity:.8;box-shadow:none}.payout-pop.push{border-color:#949779;color:#b8bca1;box-shadow:none}.scrap-piece{border-radius:2px;width:15px;height:10px;border:2px solid #6e704c;background:linear-gradient(110deg,#ccd2a1,#707b4f);box-shadow:1px 2px #181f11,0 0 8px #c0cf7522}.push-flash{animation:pushPulse .4s ease-out}
/* The lever moves only down its guide; the shaft retracts into a fixed base. */
.slots{gap:13px;padding-top:30px;padding-bottom:29px;padding-right:108px;min-height:520px;background:radial-gradient(ellipse at 40% 35%,#72506922,transparent 65%),repeating-linear-gradient(90deg,#0000 0 50px,#90947a05 50px 51px),#141a15}.lever-rig{right:25px;top:49%;width:60px}.lever-rig>span{display:block;color:#b09a7a;letter-spacing:2px;margin-bottom:12px}.machine-lever{--pull:0;position:relative;width:60px;height:190px;display:block;border:0!important;transform:none!important;background:none!important;box-shadow:none!important;padding:0;touch-action:none;user-select:none}.machine-lever:before{display:none}.machine-lever .lever-slot{position:absolute;left:20px;top:20px;width:21px;height:155px;border-radius:14px;border:4px ridge #59604b;background:#0a100b;box-shadow:inset 4px 0 5px #0009;display:block}.machine-lever i{position:absolute;top:auto;left:26px;bottom:21px;width:9px;height:calc(132px - var(--pull)*95px);background:linear-gradient(90deg,#232c22,#bec0aa 40%,#747e68 65%,#303c2e);box-shadow:3px 0 3px #0008;transition:height .22s cubic-bezier(.2,.8,.25,1)}.machine-lever b{top:14px;left:7px;width:47px;height:47px;border:2px solid #3e272b;transform:translateY(calc(var(--pull)*95px));transition:transform .22s cubic-bezier(.2,.8,.25,1);background:radial-gradient(circle at 30% 23%,#e5b3a8 0 3%,#a55c67 16%,#733c51 44%,#34252b 85%);box-shadow:3px 6px 5px #0008,inset -3px -4px 5px #19101888}.machine-lever .lever-base{position:absolute;bottom:5px;left:4px;width:54px;height:29px;border-radius:50%;background:radial-gradient(ellipse,#323c2a 20%,#7b7c65 25%,#303a2a 45%,#616950 50%,#202a1d 70%);box-shadow:0 5px 0 #0d150b;border:2px solid #62674d}.machine-lever.dragging i,.machine-lever.dragging b{transition:none}.machine-lever:hover b{box-shadow:3px 6px 5px #0008,0 0 15px #af6b7344}.machine-lever.pulled{transform:none}.machine-marquee{color:#bca4ba;font:800 clamp(30px,4vw,44px)/1 'Barlow Condensed',Impact,sans-serif;letter-spacing:5px;text-shadow:0 0 15px #c575a377;border:4px double #82706a;background:#171e19;padding:12px 20px 8px;text-align:center;box-shadow:inset 0 0 17px #0007,0 0 15px #9c638022}.machine-marquee>span{color:#d2baa8}.machine-marquee small{display:block;font:7px 'IBM Plex Mono',monospace;letter-spacing:2px;color:#7e8373;text-shadow:none;margin-top:8px}.machine-bulbs{letter-spacing:10px;font-size:10px;color:#80704d;text-shadow:0 0 8px #ad7b4933;margin-right:-10px}.machine-running .machine-bulbs{color:#ddc29d;text-shadow:0 0 9px #d8b777;animation:bulbWarm .8s ease-in-out infinite alternate}.slots .table-watermark{display:none}.slots .reels{border:12px ridge #777260;border-radius:8px;background:linear-gradient(#373f31,#161d15);padding:13px 11px;display:flex;gap:6px;box-shadow:0 0 0 3px #121a11,0 0 0 5px #565b48,0 10px 20px #000a;overflow:hidden}.slots .reels:before,.slots .reels:after{display:none}.slots .reel{position:relative;width:87px;height:118px;display:block;overflow:hidden;background:#c6bea1;border:1px solid #242d20;color:#3d4732;text-shadow:none;box-shadow:inset 0 0 10px #0005;animation:none!important;transform:none!important;filter:none!important}.reel-strip{display:flex;flex-direction:column;position:relative;will-change:transform;line-height:1;filter:none!important;animation:none!important}.reel-cell{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:100%;height:118px;font:64px Georgia;background:linear-gradient(90deg,#706f5533,transparent 25% 70%,#4d4f3e22)}.reel-glare{position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 20px 24px -10px #0b150bd9,inset 0 -20px 24px -10px #0b150bd9;background:linear-gradient(transparent 48%,#6e4f4d66 49% 50%,transparent 51%)}.slot-payline{font-size:8px;letter-spacing:2px;color:#b58980;margin-top:7px}.machine-tray{position:relative;width:290px;max-width:90%;height:45px;border:5px ridge #626650;background:linear-gradient(#1a2418,#0b110a 60%,#384330);transform:perspective(150px) rotateX(12deg);text-align:center;box-shadow:0 5px #0b1009}.tray-slot{width:100px;height:5px;background:#060b05;display:block;margin:5px auto}.machine-tray small{font-size:6px;letter-spacing:3px;color:#788269}.slots .result{font-size:20px;margin-top:4px;min-height:24px}.slots .machine-marquee,.slots .reels,.slots .machine-tray,.slots .machine-bulbs{position:relative;z-index:1}
/* Roulette: wide outer ball track, clear engraved pocket ring. */
.roulette-machine{border-radius:50%;background:radial-gradient(circle,transparent 61%,#535b47 62%,#222f23 65%,#79806c 66%,#1a251a 68%,#313c2a 71%);box-shadow:0 15px 25px #0007,0 0 0 4px #52533e,inset 0 0 20px #000a}.roulette-machine .wheel{inset:16px;width:268px;height:268px;border:4px ridge #8c8869;box-shadow:none;transition:none!important;will-change:transform}.wheel-hub{inset:90px;border-width:7px;background:radial-gradient(circle at 35% 30%,#97967b,#434e39 55%,#24321e);box-shadow:0 4px 9px #000a}.ball-track{will-change:transform;animation:none!important;z-index:2}.roulette-ball{width:10px;height:10px;left:145px;top:12px;box-shadow:1px 3px 4px #000c,0 0 4px #ffffff66}.roulette-machine .pointer{top:-15px;color:#b59177;font-size:18px}.roulette-readout{background:linear-gradient(#10170f,#1b2519);border:3px ridge #586044;min-width:115px;padding:9px 16px}.roulette-readout>span{font-variant-numeric:tabular-nums;line-height:1}.roulette-readout small{font-size:7px;margin-top:5px}.pocket.landed{box-shadow:inset 0 0 15px #d8db9b55,0 0 12px #d8db9b66;outline:2px solid #d8db9b;outline-offset:0}.roulette .result{font-size:21px}
/* Tickets, numbered enamel balls and a battered Sic Bo cage. */
.ticket-art{font:800 27px/.95 'Barlow Condensed',Impact,sans-serif;letter-spacing:2px;color:#d3c8a0;background:linear-gradient(125deg,#66543f,#363d2a);padding:13px 21px;border:2px dashed #b6ac81;transform:rotate(-7deg);box-shadow:6px 8px #080d0866}.ticket-art b{font-size:35px;color:#b7ca8c}.ticket-art small{display:block;font:8px 'IBM Plex Mono',monospace;letter-spacing:1px;margin-top:10px;background:#8d8d7366;padding:7px}.scratch-board{display:grid;grid-template-columns:repeat(3,83px);gap:9px;background:#3a432f;border:8px double #9c9f70;padding:15px;box-shadow:0 10px 14px #0005;transform:rotate(-1deg)}.scratch-empty,.scratch-panel{width:83px;height:83px;display:grid;place-items:center;position:relative;background:#b2aa88;color:#474e3b;border:1px solid #767b5b;font:40px Georgia;overflow:hidden;padding:0;touch-action:none}.scratch-foil{z-index:1;position:absolute;inset:0;display:grid;place-content:center;font:10px 'IBM Plex Mono',monospace;line-height:1.7;letter-spacing:2px;color:#343c2d;background:repeating-linear-gradient(25deg,#a4a58e 0 2px,#93947d 3px 5px,#b7b69d 6px 7px);box-shadow:inset 0 0 18px #3c443b66;clip-path:polygon(0 0,100% 0,100% 100%,0 100%);transition:clip-path .24s ease-out,transform .24s ease-out}.scratched .scratch-foil{clip-path:polygon(0 0,0 0,0 100%,0 100%);transform:translateX(-25px)}.scratch-panel.scratched{border-color:#cfce9c;box-shadow:inset 0 0 17px #69814344}.scratch-symbol{position:absolute;inset:0;display:grid;place-items:center;font-size:43px}.scratch-empty{font-size:35px;color:#70775c;background:repeating-linear-gradient(25deg,#8e937c 0 3px,#747d65 3px 5px)}.keno-art{display:flex;gap:8px;transform:rotate(-8deg)}.keno-art i{width:57px;height:57px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 30% 25%,#e6dec1,#b1aa83 40%,#596043 85%);border:2px solid #6f7755;font:bold 23px monospace;color:#303a27;box-shadow:3px 6px 5px #0007;font-style:normal}.keno-art i:nth-child(2){transform:translateY(17px)}.keno-grid{width:min(100%,480px);display:grid;grid-template-columns:repeat(8,1fr);gap:6px}.keno-number{min-height:42px;padding:8px;border:2px solid #555c41;background:linear-gradient(145deg,#343e2d,#192417);font-size:13px;color:#a9b591;box-shadow:1px 3px #080f08}.keno-number.picked{border-color:#b997c0;background:#634762;color:#e0c7e1}.keno-number.drawn{box-shadow:inset 0 0 13px #d7c58e55;border-color:#c1b480}.keno-number.hit{background:#b7c87c;color:#1a2b14;border-color:#e3e8af}.keno-drawn{min-height:35px;font-size:12px;letter-spacing:3px;color:#c6b59c;line-height:1.8;text-align:center}.dice-cage{border:8px ridge #74765b;background:repeating-linear-gradient(90deg,transparent 0 37px,#7a806044 37px 40px),radial-gradient(ellipse,#69785144,#111a10);border-radius:50% 50% 9% 9%;width:320px;max-width:100%;min-height:200px;display:grid;place-items:center;box-shadow:0 12px 0 #0a1109,inset 0 0 35px #000a;position:relative}.dice-cage:after{content:'EVIDENCE / 03';position:absolute;bottom:9px;background:#9b9471;color:#333c29;border:1px solid #514c35;padding:4px 9px;font-size:7px;letter-spacing:3px;transform:rotate(-3deg)}.sicbo-dice{font:70px Georgia;color:#bbad86;text-shadow:4px 6px #141d0e;letter-spacing:5px}.cage-shaking{animation:cageRattle .09s linear infinite alternate}.card{animation:steelDeal .28s ease-out}.card:nth-child(2){animation-delay:.04s}.card:nth-child(3){animation-delay:.07s}.card:nth-child(4){animation-delay:.10s}.card:nth-child(5){animation-delay:.13s}.neon-sign{background:repeating-linear-gradient(90deg,#ffffff03 0 1px,transparent 1px 13px),#151b15;box-shadow:0 0 0 5px #0c120d,0 0 16px #d17e8226;transform:rotate(-1deg)}.hint{border-bottom:1px dashed #5d624533;padding-bottom:18px}.notice{background:radial-gradient(ellipse at 100% 100%,#87583c22,transparent 65%),#181e16;border-color:#655c41}.notice b{color:#aaa27c}.roulette-bets{position:relative;z-index:1}.room-tag span:before{content:'● ';color:#a6bb79}
@keyframes steelDeal{from{opacity:0;translate:-18px -12px;rotate:-7deg}to{opacity:1;translate:0 0;rotate:0deg}}@keyframes payoutMetal{0%{opacity:0;translate:0 12px;scale:.92}12%,75%{opacity:1;translate:0 0;scale:1}100%{opacity:0;translate:0 -22px;scale:1}}@keyframes pushPulse{40%{box-shadow:inset 0 0 40px #b9bea31a}}@keyframes bulbWarm{to{color:#a48b6b;text-shadow:0 0 4px #d8b77766}}@keyframes cageRattle{from{transform:translateX(-3px) rotate(-1deg)}to{transform:translateX(3px) rotate(1deg)}}
@media(max-width:1099px){.games .game,.games .game:nth-child(4),.games .game:nth-child(5),.games .game:last-child{grid-column:span 1}}@media(max-width:750px){.room-tag small{display:none}.room-tag{font-size:8px}.slots{padding-right:75px;padding-left:12px;min-height:480px}.lever-rig{right:5px;width:55px}.machine-lever{width:55px}.slots .reels{padding:10px 7px;gap:4px;border-width:8px}.slots .reel{width:58px;height:98px}.reel-cell{font-size:46px;height:98px}.machine-marquee{font-size:28px;letter-spacing:3px;padding:10px 12px}.machine-marquee small{font-size:5px;letter-spacing:1px}.machine-bulbs{letter-spacing:7px;font-size:8px}.slots .result{font-size:17px}.slot-payline{font-size:6px;letter-spacing:1px}.machine-tray{width:205px;max-width:100%}.empty-stash{flex-direction:column;align-items:stretch;text-align:center}.empty-stash strong{font-size:23px}.keno-grid{gap:4px}.keno-number{padding:6px 0;min-height:37px;font-size:11px}.scratch-board{grid-template-columns:repeat(3,70px);gap:7px;padding:10px}.scratch-empty,.scratch-panel{width:70px;height:70px}.baccarat-sides{gap:16px}.room-tag{margin-bottom:18px}.games .game:nth-child(10){grid-column:span 1}}@media(max-width:380px){.slots .reel{width:47px}.machine-marquee{font-size:22px}.slots{padding-right:65px}.lever-rig{right:-1px;scale:.9}.machine-bulbs{letter-spacing:5px}.roulette-machine{margin-left:-6px;margin-right:-6px}.keno-grid{grid-template-columns:repeat(8,1fr)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.card{translate:0;rotate:0deg}}
.empty-stash{position:sticky;top:8px;z-index:12}.empty-stash[hidden]{display:none}

/* Individual dice tumble without transforming or replacing the game surface. */
.ck-dice-row{display:flex;justify-content:center;align-items:center;gap:22px;min-height:135px;padding:18px;perspective:600px}
.ck-die{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);gap:6px;padding:12px;width:82px;height:82px;box-sizing:border-box;border:2px solid #dab47c;border-radius:14px;background:linear-gradient(140deg,#f1d199,#a7753d);box-shadow:inset 3px 3px 5px #fff5,inset -3px -3px 6px #593d2666,0 10px 15px #0005;transform-origin:center}
.ck-die i{display:block;border-radius:50%;background:transparent}.ck-die i.pip{background:#30251c;box-shadow:inset 1px 1px 2px #0008}
.ck-dice-rolling .ck-die{animation:ckDiceRoll .26s linear infinite}.ck-dice-rolling .ck-die:nth-child(2){animation-direction:reverse;animation-delay:-.12s}.ck-dice-rolling .ck-die:nth-child(3){animation-delay:-.07s}
@keyframes ckDiceRoll{0%,100%{transform:translateY(0) rotate(-16deg) rotateY(-25deg)}25%{transform:translateY(-14px) rotate(35deg) rotateY(30deg)}75%{transform:translateY(-5px) rotate(-40deg) rotateY(-15deg)}}
@media(max-width:500px){.ck-dice-row{gap:14px;min-height:110px}.ck-die{width:66px;height:66px;padding:9px;gap:5px}}
@media(prefers-reduced-motion:reduce){.ck-dice-rolling .ck-die{animation:none}}

/* Read hand totals at a glance without making the card table taller. */
.ck-hand-total{display:flex;align-items:center;justify-content:center;gap:12px;margin:10px 0 7px;font:700 11px/1.2 Arial,sans-serif;letter-spacing:1.5px;color:#c8c4ae}.ck-hand-total strong{display:inline-grid;place-items:center;min-width:58px;min-height:48px;padding:3px 12px;border:2px solid #9a9376;border-radius:10px;background:#151c15;color:#fff2ce;font:900 clamp(30px,4vw,40px)/1 Arial,sans-serif;letter-spacing:0;font-variant-numeric:tabular-nums;box-shadow:0 3px 10px #0005}.ck-hand-total-player strong{border-color:#d7df9e;color:#e9ffc0;background:#2c3a23}.ck-hand-bust strong{border-color:#df8779;color:#ffc3b6;background:#42251f}.ck-hand-total small{color:inherit;letter-spacing:1px}.ck-poker-hand-name{display:inline-block;padding:6px 9px;border:1px solid #a4ad77;border-radius:6px;background:#283722;color:#edffbc;font-size:clamp(15px,2vw,20px);letter-spacing:.5px}.hilo #hilo-value b{font-size:clamp(28px,4vw,40px);color:#edffbc;font-variant-numeric:tabular-nums}@media(max-width:500px){.ck-hand-total{gap:8px;margin:7px 0 5px;font-size:10px;letter-spacing:.8px}.ck-hand-total strong{min-width:48px;min-height:40px;font-size:30px;padding:3px 8px}}
