@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@400;500;600;700&family=Roboto+Slab:wght@400;700;900&display=swap');
:root{font-family:Oswald,Arial,sans-serif;color:#fff1cb;background:#17100d}*{box-sizing:border-box}body{margin:0;min-height:100vh}.room{min-height:100vh;padding:24px 14px 48px;background:radial-gradient(ellipse at top,#68422a 0,#2b1a15 52%,#130e0b 100%);position:relative;overflow:hidden}.room:before{content:"";position:fixed;inset:0;opacity:.12;background:repeating-linear-gradient(90deg,transparent 0 72px,#080402 73px 76px,transparent 77px 148px);pointer-events:none}.lights{height:30px;max-width:1200px;margin:0 auto 8px;border-top:4px dotted #eab355;filter:drop-shadow(0 0 9px #ffb64c)}.machine{max-width:1240px;margin:auto;padding:15px 20px 8px;background:linear-gradient(105deg,#6f4a27,#25140e 14%,#362017 87%,#815529);border:7px ridge #ae793f;border-radius:25px;box-shadow:0 24px 80px #060100,0 0 0 2px #1c0b05,0 0 32px #bb682c55}.marquee{text-align:center;margin:-1px auto 14px;padding:8px 12px 15px;max-width:660px;background:linear-gradient(#234535,#12281e 45%,#153527);border:5px double #cb9744;border-radius:38px 38px 14px 14px;box-shadow:0 0 15px #dba54c,inset 0 0 30px #000}.crown{color:#fbd27a;line-height:30px;font-size:34px}.brand{font-family:Georgia,serif;font-size:clamp(30px,5.5vw,66px);letter-spacing:-2px;font-weight:900;color:#ffd46e;-webkit-text-stroke:1px #8d360c;text-shadow:2px 3px 0 #6c220e,0 0 14px #f36b21}.brand span{color:#ed9d51}.marquee p{margin:0;color:#ffedca;letter-spacing:3px;font-size:12px}.main-grid{display:grid;grid-template-columns:205px minmax(0,1fr) 205px;gap:14px}.side{display:flex;flex-direction:column;gap:13px}.portrait{position:relative;text-align:center;background:#170e0a;border:4px ridge #ba8c44;padding:6px;border-radius:12px}.portrait img{display:block;width:100%;aspect-ratio:1.16;object-fit:cover;object-position:center 38%;border-radius:7px;filter:sepia(.12)}.portrait span{display:block;background:#3f1711;color:#fcd17b;letter-spacing:2px;padding:4px;font-weight:700}.board,.bonus,.quote{background:linear-gradient(125deg,#31170f,#160d0b);border:3px ridge #8f602e;border-radius:12px;padding:12px;box-shadow:inset 0 0 14px #030000}.board h2,.bonus h2{font-size:18px;color:#ffd478;margin:0 0 6px}.board p{font:12px/1.5 Arial,sans-serif;color:#e3c9a4;margin:0 0 8px}.pays{display:grid;gap:5px}.pay{display:flex;justify-content:space-between;border-bottom:1px dotted #856040;font-size:15px;align-items:center}.pay b{color:#ffd36a}.game{min-width:0}.ticker{text-align:center;background:#140c08;border:3px inset #b0824c;border-radius:6px;color:#ffa341;letter-spacing:3px;font-size:clamp(14px,2vw,22px);font-weight:700;padding:6px;margin-bottom:8px;min-height:43px;text-shadow:0 0 8px #c64412}.reel-frame{position:relative;background:linear-gradient(140deg,#d3a35b,#5e381d 8%,#1a100b 13%,#ae8654 98%);padding:13px;border:4px ridge #c99e63;border-radius:12px;box-shadow:inset 0 0 18px #000,0 6px 10px #0009}.reels{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}.reel{display:grid;gap:3px;min-width:0}.symbol{height:clamp(74px,10vw,113px);border:2px solid #b58d56;background:radial-gradient(#fff9e9,#ebd9b2);display:flex;align-items:center;justify-content:center;position:relative;border-radius:5px;box-shadow:inset 0 0 15px #a87d4c55;overflow:hidden;font-size:clamp(34px,5.6vw,62px)}.symbol.wild{background:radial-gradient(#bc2c22,#40100d)}.symbol.wild img{width:88%;height:88%;border-radius:50%;object-fit:cover;object-position:center 30%;border:3px solid #ffca61}.symbol.wild:after{content:'WILD';position:absolute;bottom:0;color:#ffe68d;font-size:clamp(12px,1.9vw,20px);font-weight:bold;text-shadow:1px 2px #45150b;-webkit-text-stroke:.5px #5e170a}.symbol.hit{outline:3px solid #ffe361;outline-offset:-4px;box-shadow:inset 0 0 28px #ffb127,0 0 14px #ffe68c;animation:pulse .65s infinite alternate}.symbol.shot,.symbol.bottle{background:radial-gradient(#fff5d3,#d9b678)}.reel.spinning .symbol{filter:blur(2px)}.lines-tag{position:absolute;bottom:-10px;left:50%;transform:translateX(-50%);background:#20110c;border:2px solid #a77e4e;padding:2px 13px;border-radius:20px;color:#f5d48d;white-space:nowrap;font-size:11px}.subtext{text-align:center;min-height:44px;padding:17px 5px 4px;color:#ffe0a2;letter-spacing:.4px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:7px}.stats>div{background:#120d0b;border:3px inset #7e562c;text-align:center;border-radius:6px;padding:6px}.stats small{display:block;color:#e4ad69;letter-spacing:1px}.stats strong{display:block;color:#ffdb78;font-size:clamp(19px,3vw,30px);font-variant-numeric:tabular-nums}.controls{display:flex;gap:8px;margin-top:10px}.controls button,button.text-btn{font-family:Oswald,Arial,sans-serif;cursor:pointer;transition:transform .12s,filter .12s}.controls button{min-width:41px;border:3px outset #aa7b4c;color:#f9e0a6;background:linear-gradient(#64452b,#322018);border-radius:10px;font-size:24px}.controls button:hover,button.text-btn:hover{filter:brightness(1.3)}.controls button:active{transform:scale(.96)}.controls button:disabled{opacity:.45;cursor:not-allowed}.controls .spin{flex:1;min-height:62px;background:linear-gradient(#e95234,#ae170f 55%,#800d09);border:5px ridge #e9af61;border-radius:100px;color:#fff3d5;font-size:clamp(17px,2.5vw,28px);font-weight:700;text-shadow:1px 3px #5f0a07;box-shadow:0 5px 0 #5a160e,0 0 15px #eb4d3e66}.footnote{text-align:center;margin-top:12px;font-size:10px;letter-spacing:1.5px;color:#bc9c78}.bonus{text-align:center}.bonus .big-icon{font-size:31px;white-space:nowrap}.bonus h2{font-size:24px;margin:4px 0 0;color:#f9c772}.bonus strong{font-size:19px;color:#ff944e}.bonus p{font:13px/1.7 Arial,sans-serif;color:#f6d3ae}.mega{border-color:#bc6831;background:linear-gradient(125deg,#55180e,#1b0c09)}.mega strong{color:#ffc45a}.quote span{display:block;color:#e8b467;font-size:12px;letter-spacing:1px}.quote p{font:italic 18px/1.4 Georgia,serif;color:#ffda89;margin:8px 0 0}.bar-bottom{margin:20px 4px 0;display:flex;justify-content:space-between;align-items:center;gap:10px;border-top:1px solid #966e41;padding-top:7px;color:#bea17c;font-size:12px}.text-btn{background:none;color:#f7d396;border:0;text-decoration:underline;font-size:13px}dialog{width:min(560px,92vw);background:#23150e;color:#f7dfb5;border:4px ridge #c18d4e;border-radius:15px;padding:25px;box-shadow:0 20px 60px #000}dialog::backdrop{background:#000b}dialog h2{color:#ffd36b}dialog p{font:15px/1.65 Arial,sans-serif}.close{float:right;background:#7e2816;color:white;border:0;font-size:20px;cursor:pointer;padding:7px 12px}@keyframes pulse{to{filter:brightness(1.23)}}@media(max-width:950px){.main-grid{grid-template-columns:1fr 180px}.left{display:none}}@media(max-width:680px){.room{padding:5px 3px 20px}.machine{border-width:4px;padding:9px 5px}.main-grid{display:flex;flex-direction:column}.right{display:grid;grid-template-columns:1fr 1fr;gap:6px}.right .quote{grid-column:1/-1}.marquee{padding:5px}.marquee p{letter-spacing:1px;font-size:9px}.ticker{font-size:15px}.reel-frame{padding:6px}.reels{gap:2px}.symbol{height:clamp(58px,18vw,110px);font-size:clamp(28px,9vw,56px);border-width:1px}.symbol.wild img{border-width:1px}.controls{gap:4px}.controls button{min-width:35px;font-size:20px}.controls .spin{min-height:55px}.bonus{padding:5px}.bonus .big-icon{font-size:23px}.bonus h2{font-size:18px}.bonus strong{font-size:14px}.bonus p{font-size:11px}.bar-bottom span{display:none}}

/* Fernet-O-Rama V2 */
.bonus-overlay{position:fixed;inset:0;z-index:50;background:rgba(9,2,0,.88);display:none;align-items:center;justify-content:center;padding:18px;backdrop-filter:blur(8px)}
.bonus-overlay.show{display:flex;animation:fadeIn .25s ease-out}
.overlay-card{width:min(560px,95vw);padding:25px 20px 30px;text-align:center;border:8px ridge #e7b15b;border-radius:20px;background:radial-gradient(ellipse at 50% 0,#714024,#1b0b08 80%);box-shadow:0 0 70px #ec9a30aa, inset 0 0 40px #110700;animation:popIn .45s cubic-bezier(.2,1.5,.4,1)}
.bonus-overlay.mega .overlay-card{border-color:#e44835;background:radial-gradient(ellipse at 50% 0,#972820,#200707 80%);box-shadow:0 0 95px #ff2d18aa,inset 0 0 40px #160000}
.overlay-label{font-size:15px;letter-spacing:6px;color:#ffd26f}.overlay-face{width:135px;height:135px;border:6px double #ffc760;border-radius:50%;object-fit:cover;object-position:center 35%;box-shadow:0 0 24px #ffa52288;margin:12px auto}
.overlay-card h1{font-size:clamp(30px,7vw,60px);color:#ffcb53;text-shadow:3px 4px #76200c,0 0 22px #ea5d1a;margin:0 0 4px;line-height:1.1}.overlay-card #overlayDetail{font-size:clamp(20px,4vw,31px);color:#fff3c3}.overlay-card p{font:italic 21px Georgia,serif;color:#fff0c6;margin:17px 0}.overlay-go{padding:12px 30px;background:linear-gradient(#f46b36,#a31c13);color:#fff5d8;font:700 24px Oswald,Arial,sans-serif;border:4px ridge #ffd07c;border-radius:40px;cursor:pointer}.overlay-go:hover{filter:brightness(1.2)}
.machine.bonus-on{box-shadow:0 0 100px #ffb629,0 24px 80px #000}.machine.mega-on{box-shadow:0 0 120px #ff3019,0 24px 80px #000}
.bonus.active{box-shadow:inset 0 0 20px #f7ae26,0 0 20px #f7ae26;animation:pulse .8s infinite alternate}.bonus.mega.active{box-shadow:inset 0 0 20px #f45e22,0 0 25px #ff351e}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes popIn{from{transform:scale(.75)}to{transform:scale(1)}}
@media(prefers-reduced-motion:reduce){.bonus-overlay.show,.overlay-card,.bonus.active{animation:none}}
@media(max-width:680px){.bar-bottom{flex-wrap:wrap}.overlay-face{height:105px;width:105px}}

/* V3: bespoke original vector reel art and warmer vintage detailing */
.symbol .symbol-art{display:block;width:88%;height:88%;object-fit:contain;filter:drop-shadow(0 3px 2px #42270d44)}
.pay span{display:flex;align-items:center;gap:5px}.pay-icon{width:20px;height:20px;vertical-align:middle}
.symbol{background:radial-gradient(ellipse at 32% 25%,#fffaf0,#f4e8cd 64%,#d9bd89);transition:background .15s}
.room::after{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;opacity:.09;background-image:repeating-linear-gradient(3deg,transparent 0 5px,#000 5px 6px,transparent 6px 14px)}
.machine{position:relative;z-index:1}.marquee{box-shadow:0 0 21px #dba54c,inset 0 0 30px #000,0 4px 0 #261009}
.controls .spin{letter-spacing:1px}.controls .spin:hover{filter:brightness(1.15);box-shadow:0 5px 0 #5a160e,0 0 24px #f9793eaa}
@media(prefers-reduced-motion:reduce){.symbol.hit{animation:none}}

/* V4 Concept Edition: dramatic pub stage + cabinet detailing */
.room{background:linear-gradient(90deg,rgba(13,5,3,.83),rgba(26,11,6,.43) 48%,rgba(13,5,3,.83)),url('assets/pub-atmosphere.jpg') center / cover fixed no-repeat,#160b08;}
.room:before{opacity:.18;background:repeating-linear-gradient(90deg,rgba(25,9,5,.22) 0 110px,rgba(11,4,3,.55) 111px 116px,transparent 117px 220px)}
.lights{border-top:6px dotted #ffd68f;filter:drop-shadow(0 0 14px #ffa330)}
.pub-sign{text-align:center;margin:-4px auto 12px;color:#edc181;opacity:.8;letter-spacing:4px;font-size:11px;text-shadow:0 0 9px #dd7b27}
.machine{border:9px ridge #ad7432;background:linear-gradient(120deg,#553219 0%,#170b07 14%,#2a130d 55%,#160906 86%,#75431e 100%);box-shadow:inset 0 0 0 3px #dab76b,inset 0 0 30px #000,0 20px 90px #000,0 0 36px #ce77294f}
.marquee{max-width:800px;padding:10px 14px 20px;background:radial-gradient(ellipse at 50% 22%,#256045,#09291f 78%);border:7px ridge #f5c66d;border-radius:110px 110px 17px 17px;box-shadow:0 0 14px #ffbc50,0 0 4px #fff4bb,inset 0 -16px 19px #02140c}
.brand{font-size:clamp(32px,5.7vw,76px);color:#f8ce65;-webkit-text-stroke:1.5px #7a1e0e;text-shadow:2px 4px #421000,0 0 22px #ffad4b}
.marquee p{letter-spacing:2px}.crown{font-size:42px;color:#fadd8c}
.portrait,.board,.bonus,.quote{border:4px ridge #ca9441;box-shadow:inset 0 0 24px #000b,0 0 8px #f3b35c33}
.portrait img{object-position:center 28%;filter:sepia(.08) contrast(1.07)}
.bonus{background:radial-gradient(ellipse at top,#5e170f 0%,#240907 70%);min-height:192px}.bonus.mega{background:radial-gradient(ellipse at top,#6c130c 0%,#1d0907 80%)}
.reel-frame{border:7px ridge #ecc582;box-shadow:inset 0 0 20px #000,0 0 11px #ffbb7377,0 8px 22px #000}
.symbol{border:2px solid #986528;background:radial-gradient(ellipse at 26% 19%,#fffcee,#f4e3bc 65%,#d8b675);box-shadow:inset 0 0 19px #8d552844,0 0 2px #c9a264}
.symbol .symbol-art{width:94%;height:94%;filter:drop-shadow(1px 4px 2px #38220a55)}
.symbol.wild{border:3px ridge #ebc15c;background:radial-gradient(#ba221c,#3d0806)}
.symbol.wild img{width:94%;height:94%;border:4px ridge #f4c563;border-radius:12px;object-position:center 24%}
.stats>div{border:3px ridge #b68c4c}.controls .spin{box-shadow:0 3px 0 #5a160e,0 0 18px #e63617aa,inset 0 0 10px #ff8a6b}
.ambient-btn{cursor:pointer;font-family:Oswald,Arial,sans-serif;padding:7px 12px;border:2px ridge #d2aa62;border-radius:8px;background:#24180f;color:#f7d38e;letter-spacing:1px;white-space:nowrap}
.ambient-btn.active{background:#153e2b;box-shadow:0 0 8px #48b36c88;color:#f6dfab}
.bar-bottom{flex-wrap:wrap;justify-content:center;column-gap:20px}.bar-bottom span{margin-right:auto}.bar-bottom .ambient-btn{margin-right:auto}
@media(max-width:680px){.pub-sign{font-size:8px;letter-spacing:1px}.marquee{border-width:4px}.brand{font-size:clamp(29px,8.4vw,47px)}.bar-bottom .ambient-btn{margin-right:0}}

/* V5 THE LEGEND EDITION: illustration-driven cabinet, not a stack of web cards. */
:root{color:#fff2c9;background:#0b0503}
body{background:#0b0503}
.room{padding:23px 17px 65px;min-height:100vh;background:linear-gradient(90deg,rgba(4,1,0,.62),rgba(10,4,0,.1) 45%,rgba(4,1,0,.62)),url('assets/pub-stage.jpg') center/cover fixed no-repeat,#1c0d06}
.room:before{opacity:.22;background:radial-gradient(ellipse at 50% 0%,#ffc05977,transparent 50%)}
.room:after{opacity:.16;background:repeating-linear-gradient(90deg,transparent 0 3px,#000 4px 4.5px,transparent 5px 11px)}
.pub-glow{position:absolute;inset:0 0 auto;height:275px;background:radial-gradient(ellipse at 50% 0,#d9791b45,transparent 70%);pointer-events:none}
.machine{max-width:1410px;padding:24px 27px 17px;border:11px ridge #ab692a;border-radius:31px;background:linear-gradient(100deg,#75431d 0%,#260e08 5%,#210c07 18%,#210b07 83%,#6a3414 96%,#44200d);box-shadow:0 0 0 3px #3b1908,0 0 0 7px #ba8241,0 0 0 9px #351b0e,inset 0 0 0 3px #d7a75e,inset 0 0 45px #000,0 38px 120px #000e}
.machine:before{content:'✦';position:absolute;top:16px;left:25px;font-size:32px;color:#e4b65d;text-shadow:0 0 10px #d7a05a}.machine:after{content:'✦';position:absolute;top:16px;right:25px;font-size:32px;color:#e4b65d;text-shadow:0 0 10px #d7a05a}
.marquee{position:relative;max-width:930px;margin:-12px auto 19px;padding:7px 20px 20px;border:10px ridge #d6a458;border-radius:52% 52% 18px 18px/90% 90% 18px 18px;background:radial-gradient(ellipse at 52% 22%,#266747 0,#0c3528 60%,#041a13);box-shadow:0 0 0 3px #522708,0 0 25px #ffb44c9c,inset 0 0 0 3px #a77c36,inset 0 -22px 28px #000}
.crown{font-size:15px;line-height:21px;letter-spacing:4px}.brand{font-family:Georgia,'Times New Roman',serif;font-size:clamp(40px,5.8vw,84px);white-space:nowrap;letter-spacing:-3px;line-height:1.13;color:#ffce68;-webkit-text-stroke:1.8px #7c280b;text-shadow:2px 3px #2c0c02,4px 6px #8a320b,0 0 14px #ffaa31}
.edition{display:inline-block;padding:2px 16px;font:700 11px Georgia,serif;letter-spacing:4px;background:#4f2510;border:2px ridge #b99150;color:#f9d49a;border-radius:30px;margin:4px auto 5px}.marquee p{font-size:12px;letter-spacing:4px}
.main-grid{grid-template-columns:minmax(195px,235px) minmax(0,1fr) minmax(190px,226px);gap:13px}
.side{gap:12px}.portrait{padding:7px;border:7px ridge #b9803a;background:linear-gradient(135deg,#5b2c11,#180b06);border-radius:5px;box-shadow:0 0 0 2px #361406,0 0 14px #ffaa4366}
.portrait img{height:235px;aspect-ratio:auto;width:100%;object-fit:cover;object-position:center 24%;border:3px solid #533016;border-radius:3px;filter:sepia(.07) saturate(1.08) contrast(1.05)}
.portrait span{background:linear-gradient(#844414,#3e190c);font-size:16px;padding:7px 0;text-shadow:1px 2px #200b04}
.board,.bonus,.quote{border:6px ridge #a57135;border-radius:5px;background:radial-gradient(ellipse at 50% 0,#442010,#1a0905 72%);box-shadow:inset 0 0 25px #000,0 5px 12px #000b}
.board{padding:12px 11px}.board h2{color:#ffc76c;text-shadow:0 0 7px #f5852d;font-size:17px;text-align:center}.board p{font-size:11px}.pay{font-size:14px;padding:3px 0}.pay b{color:#ffd078;font-size:17px}.pay-icon{width:24px;height:24px;object-fit:cover;border:1px solid #ab7b3d;border-radius:3px}
.ticker{border:5px ridge #b9853b;border-radius:3px;background:linear-gradient(#34140a,#100703);box-shadow:inset 0 0 14px #000,0 0 10px #ad6c2944;color:#ffb24b;font-size:clamp(15px,1.7vw,23px);padding:7px}
.reel-frame{padding:13px;border:12px ridge #b98337;border-radius:5px;background:linear-gradient(110deg,#4f280f,#efc079 12%,#7f481b 26%,#cf9a55 75%,#442208);box-shadow:0 0 0 3px #170901,inset 0 0 14px #000,0 0 18px #df95486b}
.reels{gap:3px}.reel{gap:3px}.symbol{height:clamp(95px,10.4vw,145px);border:2px solid #976527;border-radius:2px;background:radial-gradient(#fff7db,#dfbe7e);box-shadow:inset 0 0 10px #5c340b6b}
.symbol .symbol-art{width:100%;height:100%;object-fit:cover;filter:none;transform:scale(1.06)}
.symbol.wild{background:radial-gradient(ellipse,#c02e18,#410800);border:4px ridge #e8ad3c;box-shadow:inset 0 0 22px #520906,0 0 8px #d2a752}
.symbol.wild img{width:100%;height:100%;border:0;border-radius:0;object-fit:cover;object-position:center 30%}.symbol.wild:after{bottom:0;width:100%;text-align:center;font-family:Georgia,serif;font-size:clamp(14px,2vw,23px);color:#fff2a6;background:linear-gradient(transparent,#6c1208 55%);padding:12px 0 1px;text-shadow:2px 2px #210300}
.symbol.shot,.symbol.bottle{background:#f4dfb9}.bonus{padding:12px 8px;min-height:225px;background:radial-gradient(ellipse at 50% 5%,#63170c,#200705 80%)}.bonus.mega{background:radial-gradient(ellipse at 50% 5%,#842217,#210705 80%)}
.bonus-icon-row{display:flex;gap:4px;justify-content:center;margin:0 auto 8px}.bonus-icon-row img{width:29%;height:81px;object-fit:cover;border:2px ridge #bd8d49;border-radius:3px;box-shadow:0 0 8px #f28e3444}.bonus-icon-row.bottles-art img{height:84px}
.bonus h2{font-size:27px;color:#ffcd75;text-shadow:0 0 9px #c95518}.bonus strong{font-size:19px}.bonus p{font-size:13px}.quote{padding:13px}.quote p{font-size:18px}
.stats>div{border:4px ridge #9b6930;background:linear-gradient(#110704,#241108 55%,#0f0704)}.stats strong{font-size:clamp(20px,2.8vw,34px);color:#ffe09c;text-shadow:0 0 8px #d46e16}
.controls .spin{min-height:72px;border-width:7px;background:linear-gradient(#ff7960,#d42114 38%,#990c06 80%,#5a0505);box-shadow:0 5px 0 #3c0804,0 0 25px #f43f25bc,inset 0 4px 8px #ffc0a4b0;font-size:clamp(22px,2.6vw,34px)}
.bar-bottom{padding-top:15px;margin-top:20px}.overlay-face{object-position:center 20%}
@media(max-width:1100px){.machine{padding:15px 15px}.main-grid{grid-template-columns:175px minmax(0,1fr) 175px;gap:8px}.portrait img{height:190px}.symbol{height:clamp(78px,10vw,110px)}.bonus h2{font-size:22px}.bonus-icon-row img{height:59px}}
@media(max-width:830px){.main-grid{grid-template-columns:minmax(0,1fr) 170px}.left{display:flex;grid-column:1/-1;flex-direction:row;align-items:stretch}.left .portrait{width:38%;flex-shrink:0}.left .board{flex:1}.left .board p{display:none}.pays{grid-template-columns:repeat(2,minmax(0,1fr));gap:3px 10px}.portrait img{height:145px}.symbol{height:clamp(72px,12vw,120px)}.brand{font-size:clamp(35px,7vw,64px)}.bonus-icon-row img{height:65px}}
@media(max-width:600px){.room{padding:7px 4px 26px;background-position:center}.machine{padding:10px 6px;border-width:5px;border-radius:13px}.machine:before,.machine:after{display:none}.marquee{border-width:5px;margin:0 auto 10px;padding:5px 5px 11px}.brand{font-size:clamp(26px,8.3vw,46px);letter-spacing:-2px;-webkit-text-stroke:.6px #7c280b}.marquee p{font-size:8px;letter-spacing:1px}.edition{font-size:8px}.main-grid{display:flex;flex-direction:column}.left{display:flex;flex-direction:row;gap:5px}.left .portrait{width:42%}.portrait img{height:125px}.portrait span{font-size:11px}.left .board{padding:5px}.board h2{font-size:12px}.pays{gap:2px}.pay{font-size:10px;padding:1px}.pay-icon{width:15px;height:15px}.pay b{font-size:11px}.ticker{font-size:14px;letter-spacing:1px}.reel-frame{padding:5px;border-width:5px}.reels,.reel{gap:2px}.symbol{height:clamp(60px,18vw,105px);border-width:1px}.symbol.wild{border-width:2px}.symbol.wild:after{font-size:11px}.right{display:grid;grid-template-columns:1fr 1fr;gap:5px}.right .quote{grid-column:1/-1}.bonus{min-height:0;padding:5px}.bonus h2{font-size:18px}.bonus strong{font-size:12px}.bonus-icon-row{margin-bottom:2px}.bonus-icon-row img{height:58px}.bonus p{font-size:11px}.controls .spin{min-height:59px;font-size:19px}.controls button{min-width:33px}.pub-sign{display:none}}

/* V5.1: crop fix / visual feedback without altering the accepted cabinet design */
.portrait img {height:310px;object-fit:contain;object-position:center center;background:#27100a;filter:sepia(.05) saturate(1.08)}
.portrait {overflow:hidden}.portrait span{position:relative;z-index:1}
.symbol.wild img {object-fit:contain;object-position:center center;background:#4d120d;max-width:100%;max-height:100%}
.symbol.wild.wild-landed{animation:wildAppear .68s ease-out 1;box-shadow:0 0 16px #ffd767, inset 0 0 22px #b72c16}
.symbol.wild.wild-landed::before{content:'✦';position:absolute;right:5px;top:0;z-index:2;color:#fff0a7;text-shadow:0 0 12px #ffd557;animation:twinkle 1.2s ease-in-out infinite alternate}
@keyframes wildAppear{0%{filter:brightness(2);transform:scale(.90)}55%{filter:brightness(1.45);transform:scale(1.045)}100%{filter:brightness(1);transform:scale(1)}}
@keyframes twinkle{to{opacity:.25;transform:scale(.65) rotate(30deg)}}
.reel-frame.win-small{animation:frameWin .7s ease-in-out 2}.reel-frame.win-big{animation:frameWin .45s ease-in-out 5}
@keyframes frameWin{50%{box-shadow:0 0 34px #ffdd80,inset 0 0 24px #e4a448}}
.win-splash{position:absolute;z-index:12;left:50%;top:47%;transform:translate(-50%,-50%) scale(.75);font:900 clamp(22px,4vw,48px) Georgia,serif;letter-spacing:1px;white-space:nowrap;color:#ffe88a;text-shadow:3px 4px #651108,0 0 19px #ffb01c,0 0 40px #ee6414;opacity:0;pointer-events:none;visibility:hidden}
.win-splash.play{animation:splashAppear 1.7s ease-out forwards;visibility:visible}
@keyframes splashAppear{0%{opacity:0;transform:translate(-50%,-50%) scale(.6)}22%{opacity:1;transform:translate(-50%,-50%) scale(1.05)}65%{opacity:1;transform:translate(-50%,-50%) scale(1)}100%{opacity:0;transform:translate(-50%,-60%) scale(1.06)}}
.game{position:relative}.bonus-overlay.show .overlay-card{animation:popIn .45s cubic-bezier(.2,1.5,.4,1), bonusShimmer 2s ease-in-out infinite alternate}
@keyframes bonusShimmer{to{box-shadow:0 0 80px #f7c369, inset 0 0 30px #ffb02733}}
.bonus-overlay.mega.show .overlay-card{animation:popIn .45s cubic-bezier(.2,1.5,.4,1), megaShimmer 1.3s ease-in-out infinite alternate}
@keyframes megaShimmer{to{box-shadow:0 0 95px #f1331a,inset 0 0 55px #ed662933}}
@media(max-width:1100px){.portrait img{height:260px}}
@media(max-width:830px){.portrait img{height:210px}}
@media(max-width:600px){.portrait img{height:185px}.win-splash{font-size:clamp(15px,5vw,26px);max-width:95%;white-space:normal;text-align:center}}
@media(prefers-reduced-motion:reduce){.symbol.wild.wild-landed,.symbol.wild.wild-landed::before,.reel-frame.win-small,.reel-frame.win-big,.win-splash.play,.bonus-overlay.show .overlay-card,.bonus-overlay.mega.show .overlay-card{animation:none}.win-splash.play{opacity:1;visibility:visible}}

/* V5.2 — integrated vintage risk machine */
.risk-overlay{display:none;position:fixed;inset:0;z-index:120;background:rgba(8,3,1,.84);align-items:center;justify-content:center;padding:16px;backdrop-filter:blur(5px)}.risk-overlay.show{display:flex}.risk-card{box-sizing:border-box;width:min(95vw,620px);max-height:94vh;overflow:auto;text-align:center;background:radial-gradient(ellipse at 50% 0,#743016,#250d07 65%,#140705);border:9px ridge #cd994d;border-radius:19px;box-shadow:0 0 0 3px #160802,0 0 70px #ffb84b55,inset 0 0 50px #000;padding:20px 22px;color:#ffe7ac}.risk-head{font:900 clamp(26px,5vw,43px) Georgia,serif;color:#ffdf80;text-shadow:2px 3px #72240c,0 0 15px #c95d0b}.risk-sub{margin:7px 0 12px;letter-spacing:2px;color:#ffd6a0;font-weight:700}.risk-amount{border:4px ridge #a66c30;background:#110603;padding:12px;display:flex;flex-direction:column}.risk-amount small,.risk-amount span{font-size:12px;letter-spacing:2px;color:#edc07c}.risk-amount strong{font:900 clamp(36px,8vw,62px) Georgia,serif;color:#ffe58f;text-shadow:0 0 19px #c95b12}.risk-counts{display:flex;justify-content:space-between;gap:9px;font-size:12px;color:#f8c777;margin:12px 0}.risk-choices{display:grid;grid-template-columns:1fr 1fr;gap:10px}.risk-choices[hidden],.risk-pick[hidden],.risk-collect[hidden]{display:none!important}.risk-button,.risk-collect,.risk-card-choice{cursor:pointer;border:4px ridge #d2a45b;background:linear-gradient(#85411e,#4d1c0e);color:#ffe5a8;border-radius:9px;padding:15px 10px;font-weight:900;font-size:19px}.risk-button:hover,.risk-collect:hover,.risk-card-choice:hover{filter:brightness(1.2)}.risk-button:disabled{opacity:.35;cursor:default}.risk-collect{width:100%;margin-top:10px;background:linear-gradient(#fc6d4e,#c52310 60%,#861009);font-size:21px}.risk-pick p{font-weight:bold;color:#ffd17a}.risk-cards{display:flex;justify-content:center;gap:12px}.risk-card-choice{flex:1;max-width:160px;height:168px;padding:5px;background:#4b1c13}.risk-card-choice img{width:100%;height:100%;object-fit:contain;border-radius:6px}.risk-card-choice.risk-correct{border-color:#8feb73;box-shadow:0 0 20px #74d84d}.risk-card-choice.risk-wrong{filter:grayscale(.8) brightness(.5)}.risk-reveal{margin:12px 0;min-height:23px;font-weight:900;color:#ffdf86}.risk-note{font-size:11px;opacity:.7;margin:13px 0 0}@media(max-width:500px){.risk-card{padding:13px 10px}.risk-button{font-size:14px}.risk-card-choice{height:125px}.risk-counts{font-size:10px}}

/* V7 polish: preserve the original illustrated cabinet */
.local-records .pay{font-size:12px;gap:7px}.local-records .pay b{white-space:nowrap}
.riggat-egg{position:fixed;inset:0;z-index:9999;display:none;align-items:center;justify-content:center;text-align:center;padding:20px;background:radial-gradient(ellipse,#641a12e8,#100300f5);pointer-events:none}.riggat-egg.show{display:flex;animation:eggPulse .3s alternate 5}.riggat-egg strong{font:900 clamp(28px,6vw,75px)/1.12 Georgia,serif;color:#ffdc7d;text-shadow:4px 5px 0 #590906,0 0 30px #f44}
@keyframes eggPulse{to{filter:brightness(1.5)}}
#portraitEgg{cursor:pointer} .hidden-egg-trigger{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
@media(max-width:950px){.local-records{display:none}}

/* V8 common leaderboard */
.global-leaderboard label{display:block;color:#eed3a8;font-size:12px;margin:8px 0 3px}.global-leaderboard input{width:100%;box-sizing:border-box;background:#170e0c;border:1px solid #c09859;border-radius:5px;color:#ffe4ab;padding:8px;font:16px Arial,sans-serif}.hall-controls{display:flex;flex-wrap:wrap;gap:4px;margin-top:7px}.hall-controls button{flex:1 1 100%;background:#63351e;color:#ffe0a0;border:1px solid #c79750;padding:7px 4px;cursor:pointer;border-radius:5px;font-weight:700}.hall-table{font:12px/1.5 Arial,sans-serif;max-height:270px;overflow:auto}.hall-entry{display:grid;grid-template-columns:1fr auto;gap:6px;padding:5px 0;border-bottom:1px solid #66503a}.hall-entry b{color:#ffd17b}.hall-entry small{display:block;color:#c4ab89}.global-leaderboard #hallStatus{min-height:1em}

/* V8.1: illustrated pub leaderboard */
.global-leaderboard{margin:26px 2px 8px;padding:22px clamp(12px,3vw,32px);border:8px ridge #ba8742;border-radius:20px;background:radial-gradient(ellipse at 50% 0,#663119,#270f08 52%,#170806);box-shadow:0 0 0 2px #35150b,inset 0 0 35px #000b,0 10px 34px #0008;color:#f8dfac}
.fame-header{text-align:center;border-bottom:2px solid #9f6835;padding-bottom:15px}.fame-header h2{font:900 clamp(22px,4vw,45px) Georgia,serif;color:#ffda79;text-shadow:2px 3px #712609,0 0 22px #ea8b2a;margin:7px 0}.fame-header p,.fame-ornament{letter-spacing:2px;color:#eebd70;font-size:12px}
.fame-king{display:flex;justify-content:center;align-items:center;gap:25px;margin:18px auto;padding:15px 20px;max-width:670px;border:4px ridge #dbb060;border-radius:13px;background:linear-gradient(120deg,#42210b,#783718 40%,#3c1a0d);box-shadow:0 0 20px #e89b3a55,inset 0 0 20px #0008}.fame-crown{font-size:70px;color:#ffcb56;text-shadow:0 0 18px #f7b03b}.fame-king small,.fame-king strong,.fame-king span{display:block}.fame-king small{font-size:11px;letter-spacing:1px}.fame-king strong{font:900 clamp(22px,4vw,38px) Georgia,serif;color:#ffe299;margin:4px 0}.fame-king span{color:#ffcc77;font-weight:800}
.fame-form{max-width:780px;margin:18px auto}.global-leaderboard label{font-size:13px;color:#efbd78;letter-spacing:2px}.global-leaderboard input{padding:12px 14px;background:#140a07;border:2px ridge #b78a4e;border-radius:8px;color:#ffedc6;font-size:17px}.hall-controls{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;margin-top:12px}.hall-controls button{font:700 15px Oswald,Arial,sans-serif;padding:12px;background:linear-gradient(#9c5127,#542410);border:3px ridge #cf9f52;border-radius:8px;color:#ffdfaa;transition:filter .15s}.hall-controls button:hover{filter:brightness(1.3)}.global-leaderboard #hallStatus{font:12px/1.5 Arial,sans-serif;text-align:center;color:#d7b58c;min-height:24px}
.hall-table{max-height:none;overflow:visible;display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:16px 0}.fame-category{min-width:0;background:#1b0b06;border:3px ridge #a97637;border-radius:12px;padding:12px}.fame-category-title{display:flex;align-items:center;gap:10px;border-bottom:2px solid #986337;padding:6px 0 12px}.fame-category-icon{font-size:23px}.fame-category h3{color:#ffda80;font:700 clamp(16px,2vw,22px) Oswald,Arial,sans-serif;letter-spacing:1px;margin:0}.fame-empty{color:#d6b58b;text-align:center;padding:20px 4px}.fame-entry{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:9px;padding:9px;border-bottom:1px solid #65432a;background:#261007}.fame-entry.top-1{background:linear-gradient(90deg,#71401a,#321706);border:1px solid #dca759;border-radius:8px}.fame-entry.top-2{background:#39241b}.fame-entry.top-3{background:#332015}.fame-rank{font-size:18px;text-align:center;color:#e4bb78}.fame-player{min-width:0}.fame-player strong{display:block;overflow-wrap:anywhere;color:#ffe6b1;font-size:15px}.fame-player small{color:#bd9e7b;font-size:11px}.fame-points{color:#ffcf68;font-size:18px;font-variant-numeric:tabular-nums}.fame-unit{display:none}
@media(max-width:780px){.hall-table{grid-template-columns:1fr}.fame-king{gap:12px}.fame-crown{font-size:48px}}@media(max-width:480px){.global-leaderboard{padding:12px 7px;border-width:5px}.hall-controls{grid-template-columns:1fr 1fr}.hall-controls button:last-child{grid-column:1/-1}.fame-entry{grid-template-columns:30px minmax(0,1fr) auto;gap:5px;padding:7px 4px}.fame-points{font-size:15px}}

/* V8.4: coherent tablet layout for portrait/landscape, overriding older breakpoints */
@media (min-width:601px) and (max-width:1100px){
  .room{padding:12px 10px 28px;overflow-x:hidden}
  .machine{width:100%;max-width:100%;padding:14px 12px 12px}
  .main-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}
  .game{grid-column:1/-1;grid-row:1;min-width:0;max-width:100%}
  .left{display:flex;grid-column:1;grid-row:2;min-width:0;flex-direction:column;gap:10px}
  .right{display:flex;grid-column:2;grid-row:2;min-width:0;flex-direction:column;gap:10px}
  .left .portrait{width:100%;flex-shrink:0}
  .portrait img{height:180px;aspect-ratio:auto;object-fit:contain;background:#140a06}
  .left .board{min-width:0}.left .board p{display:block}
  .pays{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 12px}
  .pay{min-width:0;font-size:12px}
  .symbol{height:clamp(82px,13vw,126px)}
  .bonus{min-height:0}.bonus-icon-row img{height:64px}
  .brand{font-size:clamp(36px,6.8vw,65px)}
  .bar-bottom{flex-wrap:wrap;justify-content:center}
  .bar-bottom span{display:inline}
  .right .quote{grid-column:auto}
  .local-records{display:block}
}
@media (min-width:601px) and (max-width:740px){
  .main-grid{gap:8px}.machine{padding:9px 7px}
  .symbol{height:clamp(77px,12.5vw,100px)}
  .portrait img{height:145px}.bonus-icon-row img{height:52px}
  .bonus h2{font-size:18px}.bonus p{font-size:12px}
  .controls button{min-width:40px}.brand{font-size:clamp(32px,6.5vw,45px)}
}
@media (max-width:600px){
  .room{overflow-x:hidden}.machine{width:100%;max-width:100%}
  .main-grid{min-width:0}.game{min-width:0}.reel-frame{min-width:0}
  .reels{grid-template-columns:repeat(5,minmax(0,1fr))}
  .symbol{min-width:0}.symbol-art{max-width:100%}
  .controls{min-width:0}.controls .spin{min-width:0}
  .bar-bottom{flex-wrap:wrap;justify-content:center}
}
