/* Physical cabinet edition: continuous reels, chrome edges and illuminated controls. */
body{background:radial-gradient(ellipse at 50% 25%,#582660 0%,#200c2b 38%,#09070e 80%);background-attachment:fixed}
.topbar{max-width:720px;padding:12px 22px;border:0}.layout{display:block;max-width:590px;padding:10px 24px 32px}.intro{display:none}.cabinet{padding:19px 25px 0;border:5px solid #bd8742;border-radius:85px 85px 26px 26px;background:linear-gradient(90deg,#2b083e,#752787 4%,#311044 9%,#4b135f 48%,#311044 91%,#9d4dad 96%,#270638);box-shadow:0 0 0 2px #ffefb4,0 0 0 5px #502916,0 12px 0 #30141c,0 16px 0 #9c6535,0 30px 65px #000b,inset 0 0 0 2px #d79d62,inset 0 0 25px #0008;overflow:hidden}
.cabinet:before{top:6px;left:6px;width:calc(100% - 12px);height:85px;border-radius:75px 75px 0 0;background:radial-gradient(circle,#fffce2 0 3px,#ffc653 4px,#ffaf2740 7px,transparent 9px) 0 0/30px 30px;pointer-events:none;opacity:.8;mask-image:linear-gradient(#000,transparent)}
.cabinet-top{position:relative;margin:12px 12px 0}.mode-pill{background:#180623;border:1px solid #e5b76a;color:#ffe1a0;box-shadow:inset 0 2px 4px #0009}.icon-button{background:linear-gradient(#c3eaff,#3f93a9 48%,#195c71 52%,#7ccde0);border:2px solid #ffdf96;box-shadow:0 3px 0 #342030;color:white}
.game-title{margin:12px -15px 0;gap:7px}.game-title h2{font-size:38px;font-weight:900;color:#ffe29c;letter-spacing:-1px;-webkit-text-stroke:.6px #fff2ba;text-shadow:0 2px #a65b20,0 4px #8b4218,0 6px #5e2516,0 8px 5px #160518,0 0 24px #ffc6475c}.title-star{font-size:30px;color:#ffda71;text-shadow:0 3px #8e4b17}.game-subtitle{color:#f5d49c;letter-spacing:2px;margin:14px 0;font-size:12px}
.scoreboard{border:3px ridge #f8d7a0;border-radius:7px;background:linear-gradient(#210519,#420b29 50%,#1e0519);padding:10px 6px;box-shadow:0 3px 0 #180717,inset 0 0 18px #000;gap:9px;margin-bottom:20px}.scoreboard span{color:#ffe2ac;font-size:13px;margin-bottom:6px}.scoreboard strong{display:block;margin:0 5px;padding:4px 0;color:#ed442e;background:repeating-linear-gradient(90deg,#f8f0d2 0px,#fffdf0 16px,#c9c1a5 17px,#5d5141 18px);font:700 30px/1.2 'Courier New',monospace;letter-spacing:3px;border:2px inset #b7a16d;border-radius:3px;text-shadow:0 1px #67150c;box-shadow:inset 0 4px 6px #0006,inset 0 -4px 5px #0005}.scoreboard .last-score strong{color:#d32a1c;font-size:30px}.scoreboard .score-divider{display:none}
.machine{padding:10px 10px 0;border:4px solid #ffe3a1;border-radius:14px;background:linear-gradient(115deg,#4f2714,#f7da96 7%,#b7702c 16%,#fff0bb 23%,#8d4e1b 47%,#eab05d 70%,#fff0b7 85%,#793e19);box-shadow:0 0 0 3px #87451e,0 0 0 6px #f5c679,0 0 0 8px #632d24,0 12px 14px #0007}
.reels{gap:3px;border:3px solid #39291b;border-radius:5px;background:#97734a;position:relative;isolation:isolate;overflow:hidden}.reel-column{position:relative;overflow:hidden;background:#fff5df;box-shadow:inset 0 0 5px #6a502a;min-width:0}.reel-column:after{content:'';position:absolute;inset:0;pointer-events:none;z-index:2;background:linear-gradient(#2b170c99 0%,#76582a38 10%,transparent 28%,#ffffff22 48%,transparent 67%,#76582a38 91%,#2b170c99 100%);box-shadow:inset 2px 0 3px #654c2366,inset -2px 0 3px #654c2366}.symbol{aspect-ratio:1/1.04;background-image:url('assets/symbols-ivory.png');background-color:#fff5df;box-shadow:none;transition:none}.symbol.winning{box-shadow:inset 0 0 0 3px #ffba21,inset 0 0 25px #ffdc55aa;filter:brightness(1.06)}
.reels.spinning .symbol{animation:none;filter:none}.reel-column.rolling .reel-strip{animation:reelroll .16s linear infinite;filter:blur(1px)}.reel-column.stopped .reel-strip{animation:settle .22s ease-out}.reel-column.rolling .symbol{background-position-y:var(--symbol-y)}@keyframes reelroll{from{transform:translateY(-50%)}to{transform:translateY(0)}}@keyframes settle{0%{transform:translateY(-9px)}65%{transform:translateY(4px)}100%{transform:translateY(0)}}
.lights{width:12px;top:8px;bottom:8px;background:radial-gradient(circle,#fffbe3 0 3px,#ffcf63 4px,#ffb53c44 5px,transparent 6px) center top/12px 34px;filter:drop-shadow(0 0 5px #ffb83e)}.lights-left{left:-14px}.lights-right{right:-14px}.machine-plaque{font-size:9px;padding:6px 0;letter-spacing:2px;color:#45240f;text-shadow:0 1px #ffe7a6}.result-message{margin:13px 0 8px;padding:9px 5px;min-height:34px;border:1px solid #ad713c;background:#1b0625;border-radius:20px;box-shadow:inset 0 2px 4px #0008;color:#ffdc91}
.play-info{margin:12px 0;color:#ffdf98;padding:8px 10px;background:#20082c;border:1px solid #b77b48;border-radius:6px}.play-info b{background:#0d0615;padding:2px 12px;border-radius:4px;color:#ffdf95;font-family:monospace}.quick{background:linear-gradient(#bce9ff,#3c91b7 49%,#205c8c 51%,#6599bb);color:white;border:2px solid #d1b989;box-shadow:0 3px 0 #13203e;font-size:13px}
#spin{max-width:300px;margin:18px auto 0;min-height:68px;border-radius:50px;border:4px ridge #fff0b0;background:linear-gradient(#fff5bc,#ffd55c 35%,#d78a19 52%,#efb630 80%,#ffe681);color:#692c0c;box-shadow:0 7px 0 #8b4317,0 9px 0 #e2aa51,0 13px 11px #000a,inset 0 3px 3px white,inset 0 -5px 5px #8a490c55;font-size:23px;text-shadow:0 1px #fff0ba}#spin:active{transform:translateY(5px);box-shadow:0 2px 0 #8b4317,0 4px 0 #e2aa51,0 7px 8px #000a}.play-note{color:#d3a9dc;margin-top:19px}.bonus-card{border:2px ridge #ecbd73;border-radius:8px;background:linear-gradient(110deg,#4f105f,#24072e);box-shadow:inset 0 2px 8px #000a}.bonus-card small{color:#efcbd7}.bottom-nav{background:linear-gradient(#cfa4e9,#9153b1 15%,#582377 55%,#321345 90%);border-top:3px ridge #eac58f;margin-left:-25px;margin-right:-25px;padding:13px 10px 17px}.bottom-nav button{color:#dcc5eb}.bottom-nav button>span:first-child{border:2px ridge #e8ce91;border-radius:8px;background:linear-gradient(#b9def3,#3c779d 50%,#25476b);width:46px;height:29px;box-shadow:0 3px 0 #251438;font-size:21px;margin-bottom:3px}.bottom-nav button.active>span:first-child{background:linear-gradient(#fff1aa,#cc922e 50%,#ab6518);color:#6d3010}.bottom-nav button.active{color:#ffeba9}.secondary-view{border-radius:24px;min-height:700px;padding-top:25px}.secondary-view:before{display:none}footer{max-width:600px;justify-content:center;flex-wrap:wrap;padding-top:8px}.brand{font-size:14px}.preview-tag{font-size:11px}
@media(min-width:800px){.layout{padding-top:10px}.topbar{max-width:590px}.game-title h2{font-size:40px}}
@media(max-width:480px){.topbar{padding:9px 16px}.layout{padding:8px 13px 25px}.cabinet{padding:15px 19px 0;border-width:4px;border-radius:65px 65px 22px 22px}.game-title h2{font-size:29px}.game-title{margin-top:12px}.title-star{font-size:21px}.scoreboard strong,.scoreboard .last-score strong{font-size:25px;letter-spacing:1px}.game-subtitle{letter-spacing:1px;font-size:11px}.scoreboard{margin-bottom:18px}.machine{padding:6px 5px 0;border-width:3px}.symbol{aspect-ratio:1/1.12}.reels{gap:2px}.machine-plaque{font-size:8px;letter-spacing:1px}.bottom-nav{margin-left:-19px;margin-right:-19px}.bonus-card{margin-bottom:13px}.secondary-view{border-radius:22px;padding-bottom:25px}#spin{min-height:59px;margin-top:13px;font-size:21px}.result-message{font-size:11px}.play-info{margin-top:8px}.cabinet-top{margin:12px 2px 0}.brand{font-size:13px}.language select{font-size:12px}html[lang=en] .game-title h2{font-size:24px}.play-note{font-size:10px}}
@media(max-width:700px){#gameView{overflow:visible}#gameView .machine{position:sticky;top:5px;z-index:8}#gameView #spin{position:sticky;bottom:7px;z-index:7;filter:drop-shadow(0 2px 5px #100516aa)}}
@media(prefers-reduced-motion:reduce){.reel-column.rolling .reel-strip,.reel-column.stopped .reel-strip{animation:none;filter:none}}

.reel-column{aspect-ratio:1/3.12}.reel-strip{position:absolute;top:0;left:0;width:100%}@media(max-width:480px){.reel-column{aspect-ratio:1/3.36}}

.multiplier-controls{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;margin:14px auto 3px;padding:9px 10px;border:2px ridge #dfb96d;border-radius:12px;background:linear-gradient(110deg,#321044,#571f70 50%,#30103d);box-shadow:inset 0 2px 8px #0009,0 3px 0 #26112a}.multiplier-controls[hidden]{display:none}.multiplier-label{width:100%;text-align:center;color:#ffe6a9;font-size:12px}.multiplier-step{width:48px;height:43px;border:2px ridge #dcecff;border-radius:10px;background:linear-gradient(#a8e9ff,#38a8d2 48%,#0874a7 52%,#45b9df);box-shadow:0 4px 0 #17466b,0 6px 7px #0008,inset 0 2px 3px #fff9;color:white;font-size:28px;font-weight:900;line-height:1}.multiplier-step:active{transform:translateY(3px);box-shadow:0 1px 0 #17466b}.multiplier-step:disabled{opacity:.4;filter:grayscale(.6)}.multiplier-controls>strong{min-width:78px;padding:7px 12px;border:2px inset #bb9b62;border-radius:7px;background:#260626;color:#ffe3a1;text-align:center;font:900 23px/1 'Courier New',monospace;text-shadow:0 0 8px #ffce6d}.multiplier-controls small{width:100%;text-align:center;color:#e8c8e9;font-size:11px}.multiplier-controls small b{color:#fff0b2;font-family:monospace}
.multiplier-options{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;width:100%}.multiplier-option{min-width:0;padding:9px 2px;border:1px solid #d5b36e;border-radius:8px;background:linear-gradient(180deg,#562867,#301038);box-shadow:inset 0 1px 2px #fff4,0 2px 0 #180a21;color:#fce9bb;font:800 clamp(9px,2.6vw,12px)/1.1 'Courier New',monospace;text-shadow:0 1px 2px #000;white-space:nowrap}.multiplier-option[aria-pressed="true"]{border:2px solid #fff1a8;background:linear-gradient(180deg,#ffcf64,#d77b21);box-shadow:0 0 10px #ffd76c99,inset 0 1px 2px #fff;color:#351431;text-shadow:none}.multiplier-option:disabled{opacity:.38;filter:grayscale(.65);box-shadow:none}.multiplier-option:focus-visible{outline:3px solid #7de9ff;outline-offset:2px}

#spin{border-color:#ffe3a2;background:linear-gradient(#fff0c4 0%,#ff7b45 18%,#e62925 48%,#b40b1c 52%,#e7352a 82%,#ff9370 100%);color:#fff8df;text-shadow:0 2px 2px #6e0c12,0 0 6px #fff5;box-shadow:0 7px 0 #7f1220,0 9px 0 #d68842,0 13px 11px #000a,inset 0 3px 3px #fff8,inset 0 -5px 5px #76051b88}#spin:active{box-shadow:0 2px 0 #7f1220,0 4px 0 #d68842,0 7px 8px #000a}
