/* Focused play surface. Existing painted worlds and typography are retained. */
.focused-game .machine { padding-top: 8px; }
.focused-game .game-underbar { justify-content: center; }
.focused-game .game-underbar .track-button { margin-inline: auto; }
.lobby-search{display:flex;align-items:center;gap:17px;margin:0 5px 32px;padding:13px 17px;background:#263c32e8;border:2px solid #82947768;border-radius:9px 4px 12px 5px;box-shadow:3px 4px 0 #19261d55}
.lobby-search>label{color:#d7c398;font-size:12px;font-weight:900;letter-spacing:1.3px;white-space:nowrap}
.search-field{display:flex;align-items:center;gap:11px;flex:1;min-width:0;background:#e8d4ae;color:#5b533e;border:2px solid #252d25;border-radius:5px 9px 4px 6px;padding:0 12px;box-shadow:inset 0 2px 0 #fff0d14d}
.search-field:focus-within{outline:2px solid #efc877;outline-offset:3px}
.search-field input{width:100%;min-width:0;height:43px;appearance:none;background:transparent;border:0;outline:0;color:#353f30;font-size:17px;font-weight:800;font-family:inherit}
.search-field input::placeholder{color:#776e55;font-weight:600}.search-field input::-webkit-search-cancel-button{display:none}
#search-clear{flex:0 0 29px;width:29px;height:29px;padding:0;background:#a996715c;color:#494936;border-radius:5px;font-size:25px;line-height:1}
#search-status{color:#d3d5b9;font-size:13px;font-weight:800;min-width:75px;text-align:right;line-height:1.4}
.lobby .game-cards{position:relative}.game-card-slot{min-width:0;transform-origin:top left;position:relative}.game-card-slot:focus-within,.game-card-slot:hover{z-index:2}.game-card-slot>.game-card{width:100%;display:block}
.game-card-slot[hidden],.search-empty[hidden],#search-clear[hidden]{display:none!important}
.search-empty{max-width:540px;margin:32px auto 0;padding:37px 24px;text-align:center;border:2px dashed #9caa8370;background:#25382ece;border-radius:9px 4px 12px 6px;animation:centerWinIn .35s ease-out}
.search-empty>strong{display:block;font:35px Bangers,Impact,sans-serif;letter-spacing:1px;color:#efdaa9}.search-empty>p{margin:10px 0 14px;color:#c4ccb4;font-size:15px;line-height:1.5}.search-empty .text-button{color:#f1cc87;justify-content:center}
.focused-game .speed-button{position:relative;min-width:32px;width:32px;height:51px;padding:5px 2px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;border-radius:5px;color:#7a7259;transition:color .18s,background .18s}
.focused-game .speed-button .speed-badge{font:900 12px/1.1 Nunito,'Trebuchet MS',sans-serif;min-height:13px;letter-spacing:0;color:inherit}
.focused-game .speed-button[data-speed='1']{background:#a6833830;color:#715718}.focused-game .speed-button[data-speed='2']{background:#9c5c3240;color:#7a371b;box-shadow:inset 0 0 0 1px #a868345e}
.focused-game .speed-button[data-speed='2'] svg{filter:drop-shadow(0 0 3px #f4b545)}
@media(max-width:1000px){.lobby-search{max-width:850px;margin:0 auto 30px}}
@media(max-width:800px){.lobby-search{max-width:650px;gap:11px;padding:11px 13px}.lobby-search>label{display:none}.search-field input{font-size:16px}}
@media(max-width:480px){.lobby-search{max-width:360px;display:grid;grid-template-columns:1fr;padding:11px 12px;gap:8px;margin-bottom:29px}.search-field{width:100%;padding:0 10px}.search-field input{height:40px}.search-field svg{width:19px}#search-status{font-size:12px;text-align:left;min-width:0;padding-left:2px}.search-empty{padding:30px 17px}.search-empty>strong{font-size:30px}.search-empty>p{font-size:14px}}
.focused-game .board-effects{position:absolute;inset:0;z-index:9;display:grid;place-items:center;pointer-events:none}
.center-win{max-width:86%;padding:12px 25px 14px;text-align:center;background:#28392ded;border:2px solid #e5c287;border-radius:8px 4px 11px 5px;box-shadow:0 5px 0 #20242188,0 0 24px #24312d66;transform:rotate(-1deg);animation:centerWinIn .32s ease-out}
.center-win>span{display:block;color:#edd7ad;font-size:12px;font-weight:900;letter-spacing:1.5px;line-height:1.4}
.center-win>strong{display:block;color:#ffe1a0;font:clamp(35px,4.5vw,72px)/1.1 Bangers,Impact,sans-serif;letter-spacing:1px;text-shadow:2px 3px #292c28;margin-top:4px;white-space:nowrap;font-variant-numeric:tabular-nums}
.center-win>small{display:block;color:#e8c99e;font-size:12px;font-weight:800;margin-top:5px;letter-spacing:.6px}
.win-lines circle{fill:#fff0b6;stroke:#5b452d;stroke-width:1.5;filter:drop-shadow(0 0 4px #ffcb5b)}
.win-lines .paid-connection{stroke-width:3.5;stroke:#ffe6a4;filter:drop-shadow(0 0 4px #c7852b);stroke-dasharray:1000;stroke-dashoffset:0;animation:winTrace .5s ease-out}
@keyframes centerWinIn{from{opacity:0;transform:translateY(8px) scale(.88) rotate(-2deg)}to{opacity:1;transform:translateY(0) scale(1) rotate(-1deg)}}
@keyframes winTrace{from{stroke-dashoffset:1000}to{stroke-dashoffset:0}}
@media(max-width:600px){.center-win{padding:9px 16px 11px}.center-win>strong{font-size:clamp(32px,8vw,48px)}.center-win>span{font-size:11px;letter-spacing:1px}.center-win>small{font-size:11px}}
@media(prefers-reduced-motion:reduce){.center-win,.win-lines .paid-connection{animation:none}}
.focused-game .play-stage{display:block;max-width:1840px;margin:0 auto;padding:0}
.focused-game .machine{width:100%;max-width:none;grid-column:auto;grid-row:auto}
.focused-game .game-world{padding:10px 18px 18px;--reel-h:clamp(370px,57vh,700px)}
.focused-game .game-topbar{max-width:1840px;margin-left:auto;margin-right:auto}
.focused-game .reels-surface{height:var(--reel-h);position:relative;isolation:isolate;overflow:hidden}
.focused-game .reels{height:100%;grid-template-columns:repeat(var(--cols),minmax(0,1fr))}
.focused-game .symbol{height:calc(var(--reel-h)/var(--rows))}
.focused-game .symbol .paint-sprite{width:min(90%,calc(var(--reel-h)/var(--rows) * .87 * var(--ratio)));height:auto;max-height:87%}
.focused-game .symbol .rank{font-size:calc(var(--reel-h)/var(--rows) * .74)}
.focused-game .machine-cap{height:32px}.focused-game .machine-message{min-height:38px;font-size:15px;padding:8px 10px;line-height:1.35}
.focused-game .symbol.winner{box-shadow:inset 0 0 0 2px #f6d891;background:#f4cc7330}.focused-game .symbol.winner:after{animation:none;box-shadow:none}.focused-game .symbol.winner .paint-sprite,.focused-game .symbol.winner .rank{animation:hitLift .6s ease-out 1}
@keyframes hitLift{0%,100%{transform:translateY(0)}35%{transform:translateY(-5px) scale(1.05)}}
.field-layer{position:absolute;inset:0;display:grid;grid-template-columns:repeat(var(--cols),1fr);grid-template-rows:repeat(var(--rows),1fr);pointer-events:none;z-index:3;gap:3px;transition:opacity .2s}
.field-cell{position:relative;transition:background .2s,box-shadow .2s}.gold-field{background:#e4b24718;box-shadow:inset 0 0 0 2px #dcb86b94}.multi-field{background:#e49fdf12;box-shadow:inset 0 0 0 1px #ebbbd648}.position-multi,.wild-multi,.bomb-multi{position:absolute;bottom:5px;left:6px;line-height:1.1;font-family:Bangers,Impact,sans-serif;font-size:clamp(19px,2vw,31px);color:#f7dca3;text-shadow:2px 2px #342a2d,-1px -1px #342a2d;letter-spacing:1px}
.position-multi{color:#ffc3df}.wild-multi{left:auto;right:8px;color:#dcf39e}.bomb-multi{left:50%;bottom:8%;transform:translateX(-50%) rotate(-5deg);color:#fff0ae;background:#41534aee;border:2px solid #232d27;padding:2px 7px;border-radius:4px;font-size:clamp(19px,2.2vw,34px)}
.field-pulse{animation:fieldReward .6s ease-out}.field-dim{opacity:.16}@keyframes fieldReward{35%{background:#f2d88d55;box-shadow:inset 0 0 0 3px #f5d590}100%{}}
.win-lines{position:absolute;inset:0;width:100%;height:100%;z-index:6;pointer-events:none;overflow:visible}.win-lines polyline,.win-lines path{fill:none;stroke:#ffe6a4;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(1px 2px 0 #543c2b)}.win-lines .feature-connection{stroke:#f5d69a;stroke-width:2;stroke-dasharray:6 5;animation:routeDash .6s linear infinite}@keyframes routeDash{to{stroke-dashoffset:-22}}
.focused-game .scene-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:7;pointer-events:none}
.prize-layer{position:absolute;inset:0;z-index:5;pointer-events:none}.prize-tile{position:absolute;display:grid;place-items:center;background:#dfc290;border:2px solid #655037;animation:prizeFlip .45s ease-out;overflow:hidden}.prize-tile>.paint-sprite{height:70%;width:auto;max-width:90%;opacity:.65;transform:translateY(-6%)}.prize-tile>strong{position:absolute;bottom:8%;left:0;right:0;text-align:center;color:#fff1b6;text-shadow:2px 2px #392e28,-1px -1px #392e28;font-family:Bangers,Impact,sans-serif;font-size:clamp(17px,2vw,32px);line-height:1.1}.prize-tile>small{position:absolute;top:5px;left:0;right:0;text-align:center;font-size:12px;color:#49382a;font-weight:900}.prize-double,.prize-global-double{background:#b9cba2}.prize-collect,.prize-global-collect{background:#acc6be}.prize-global-collect{border-color:#f5d38c;box-shadow:inset 0 0 0 2px #746442}@keyframes prizeFlip{from{transform:rotateY(90deg);opacity:.2}to{transform:rotateY(0);opacity:1}}
.symbol-caption{position:absolute;bottom:5%;left:50%;transform:translateX(-50%) rotate(-4deg);font:17px Bangers,Impact,sans-serif;letter-spacing:.5px;padding:1px 5px;line-height:1.1;color:#f9dd99;text-shadow:2px 2px #382e24,-1px -1px #382e24;pointer-events:none}.symbol-caption.fs-lettering{font-size:calc(var(--reel-h)/var(--rows) * .32);background:none}.special-symbol{background:#eed4a711}
.reel-window.anticipating{box-shadow:inset 0 0 0 3px #f6cf7c;z-index:2;background:#e2b75e18;animation:anticipationGlow 1.25s ease-in-out infinite}@keyframes anticipationGlow{50%{box-shadow:inset 0 0 0 3px #ffe9b5,inset 0 0 35px #f3c46350}}
.feature-meter{display:flex;align-items:center;gap:13px;padding:7px 13px;margin:0 2px 7px;background:#2c3935dd;border:2px solid #282b29;border-radius:4px;color:#dfd1ad;font-size:14px;font-weight:900}.feature-meter>span{min-width:205px}.feature-meter>strong{min-width:54px;text-align:right;font-variant-numeric:tabular-nums}.meter-track{position:relative;height:10px;background:#1d2924;border:1px solid #64715b;border-radius:4px;flex:1;overflow:hidden}.meter-track>i{position:absolute;inset:0 auto 0 0;width:0;background:linear-gradient(90deg,#9caa6f,#e8c078);transition:width .55s ease-out}.meter-ticks{position:absolute;inset:0;background:linear-gradient(90deg,transparent 24.5%,#25342b 24.5%,#25342b 25.5%,transparent 25.5%,transparent 57.8%,#25342b 57.8%,#25342b 58.8%,transparent 58.8%)}
.focused-game .game-controls{max-width:1840px;grid-template-columns:1fr .85fr 1fr minmax(295px,1.6fr);gap:20px;padding:14px 23px;transform:none;margin-top:12px}.focused-game .game-controls.has-bonus{grid-template-columns:.9fr .7fr 1.15fr 1fr minmax(350px,1.7fr)}
.focused-game .balance-control,.focused-game .control-balance,.focused-game .bonus-bank,.focused-game .bet-control,.focused-game .spin-cluster{grid-column:auto;grid-row:auto}.focused-game .balance-control>strong,.focused-game .control-balance>strong{font-size:clamp(22px,2vw,32px)}
.focused-game .bonus-bank{padding:8px 12px;min-height:65px;transform:none;text-align:center;border:2px solid #7b6642;border-radius:5px;display:block}.focused-game .bonus-bank>strong{font-size:27px}.focused-game .bonus-bank .control-label{font-size:13px;margin:0;max-width:none}.focused-game .bonus-bank>span:last-child{font-size:12px;line-height:1.3;max-width:none;margin-top:4px}
.bonus-bank[hidden],.fs-counter[hidden],.feature-meter[hidden]{display:none!important}
.focused-game .spin-cluster{display:flex;align-items:center;justify-content:flex-end;gap:12px}.spin-actions{display:flex;align-items:center;gap:8px}.fs-counter{text-align:center;min-width:63px;color:#584632;display:flex;flex-direction:column;padding:2px 8px;border-right:2px dashed #93734875}.fs-counter>strong{font-family:Bangers,Impact,sans-serif;font-size:38px;line-height:1;color:#79522d}.fs-counter>span{font-size:12px;font-weight:900;letter-spacing:.3px;white-space:nowrap;margin-top:4px}
.focused-game .spin-button{min-width:140px;height:58px;font-size:27px}.focused-game .speed-button{width:27px}.auto-button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;background:#c3b389;color:#544734;border:2px solid #655137;border-radius:5px 8px 4px 6px;min-width:68px;height:55px;padding:3px 7px}.auto-button>span{font-size:17px;line-height:1}.auto-button>strong{font-size:12px;white-space:nowrap}.auto-button.auto-on{background:#354e3e;color:#f2daa5;border-color:#29392f}.auto-button.auto-on>span{font-size:0}.auto-button.auto-on>span:after{content:'■';font-size:17px}.auto-choices{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:22px}.auto-choices .primary-button{margin:0}
.story-top-buttons{display:flex;gap:12px;align-items:center}.story-stop-auto{background:#304438;color:#f1d9a8;border:2px solid #859477;padding:9px 14px;border-radius:5px;font-weight:800;font-size:14px}.focused-game .game-underbar{max-width:1840px}.story-detail{max-width:680px;margin-left:auto;margin-right:auto;line-height:1.5}
@media(min-width:1800px){.focused-game .game-world{--reel-h:clamp(520px,59vh,780px)}}
@media(max-width:1250px){.focused-game .game-controls,.focused-game .game-controls.has-bonus{grid-template-columns:1fr .8fr 1fr 1.7fr;gap:13px;padding:13px 17px}.focused-game .game-controls.has-bonus .bonus-bank{grid-column:1/4;grid-row:2;display:flex;align-items:center;gap:15px;justify-content:center;min-height:45px}.focused-game .game-controls.has-bonus .bonus-bank>span:last-child{margin:0;max-width:180px}.focused-game .game-controls.has-bonus .spin-cluster{grid-column:4;grid-row:1/3;flex-wrap:wrap;justify-content:center;gap:8px}.focused-game .game-controls.has-bonus .fs-counter{flex-direction:row;align-items:center;gap:9px;border:0;padding:0;min-width:0}.fs-counter>strong{font-size:32px}.focused-game .spin-button{min-width:126px}.focused-game .control-label{font-size:13px}.feature-meter>span{min-width:190px}}
@media(max-width:900px){.focused-game .game-world{padding:9px 10px 15px;--reel-h:clamp(340px,57vh,580px)}.focused-game .game-controls,.focused-game .game-controls.has-bonus{grid-template-columns:1fr 1fr;gap:12px 20px;padding:14px 18px}.focused-game .balance-control{grid-column:1;grid-row:1}.focused-game .control-balance{grid-column:2;grid-row:1;text-align:right}.focused-game .bet-control{grid-column:1;grid-row:2}.focused-game .spin-cluster,.focused-game .game-controls.has-bonus .spin-cluster{grid-column:2;grid-row:2;justify-content:flex-end;flex-wrap:nowrap}.focused-game .game-controls.has-bonus .bonus-bank{grid-column:1;grid-row:2;display:block;padding:5px 10px;min-height:58px;text-align:left}.focused-game .game-controls.has-bonus .bonus-bank>strong{font-size:24px}.focused-game .game-controls.has-bonus .bonus-bank>span:last-child{max-width:none;font-size:12px;margin-top:2px}.focused-game .game-controls.has-bonus .bet-control{grid-column:1;grid-row:3}.focused-game .game-controls.has-bonus .spin-cluster{grid-column:2;grid-row:2/4;flex-direction:column;align-items:flex-end;justify-content:center;gap:14px}.focused-game .game-controls.has-bonus .fs-counter{border:2px solid #8e774e;padding:6px 10px;border-radius:5px;background:#efd79c}.focused-game .game-controls.has-bonus .fs-counter>strong{font-size:34px}.focused-game .spin-button{min-width:133px;height:54px;font-size:25px}.auto-button{height:51px;min-width:67px}.focused-game .balance-control>strong,.focused-game .control-balance>strong{font-size:27px}.field-layer{gap:2px}.feature-meter{font-size:12px;gap:8px;padding:7px 8px}.feature-meter>span{min-width:150px}.focused-game .machine-message{font-size:14px}.story-top-buttons{gap:7px}.story-stop-auto{padding:7px 8px;font-size:12px}}
@media(max-width:600px){.focused-game .game-world{--reel-h:clamp(300px,86vw,480px);padding:8px 7px 13px}.focused-game.theme-roach .game-world{--reel-h:clamp(280px,80vw,430px)}.focused-game .play-stage{display:block}.focused-game .machine-cap{height:30px;font-size:12px}.focused-game #machine-mode{font-size:12px;max-width:75%}.focused-game #free-status{font-size:12px}.focused-game .game-controls,.focused-game .game-controls.has-bonus{gap:10px 12px;padding:12px 13px}.focused-game .bet-row{gap:3px}.focused-game .bet-row select{width:70px;font-size:19px}.focused-game .bet-row button{width:24px;height:26px}.focused-game .spin-button{min-width:110px;height:51px;font-size:22px;padding:0 9px;gap:7px}.focused-game .spin-icon svg{width:21px}.spin-actions{gap:5px}.focused-game .speed-button{width:20px;padding:0}.focused-game .speed-button svg{width:19px}.auto-button{min-width:53px;height:48px;padding:2px 4px}.auto-button>strong{font-size:12px}.focused-game .control-label{font-size:12px;letter-spacing:.3px}.focused-game .bonus-bank .control-label{font-size:12px}.focused-game .game-controls.has-bonus .bonus-bank{padding:6px 8px}.focused-game .game-controls.has-bonus .bonus-bank>strong{font-size:23px}.focused-game .game-controls.has-bonus .bonus-bank>span:last-child{max-width:140px}.focused-game .game-controls.has-bonus .fs-counter{gap:6px;padding:5px 8px}.focused-game .game-controls.has-bonus .fs-counter>strong{font-size:32px}.fs-counter>span{font-size:12px}.position-multi,.wild-multi{font-size:20px;bottom:3px;left:3px;letter-spacing:0}.wild-multi{left:auto;right:3px}.bomb-multi{font-size:20px;padding:1px 4px;border-width:1px}.symbol-caption{font-size:12px;padding:0 2px}.prize-tile{border-width:1px}.prize-tile>strong{font-size:16px;bottom:5%}.prize-tile>small{font-size:12px;top:2px;letter-spacing:-.7px}.feature-meter>span{min-width:0;max-width:155px;line-height:1.15}.feature-meter{gap:7px;min-height:33px}.feature-meter>strong{min-width:40px;font-size:12px}.focused-game .machine-message{font-size:13px;min-height:45px;padding:7px 5px}.story-top{align-items:flex-start}.story-top-buttons{align-items:flex-end;flex-direction:column}.story-stop-auto{font-size:12px}.story-detail{font-size:13px}.focused-game .win-ribbon{gap:8px}.focused-game #cascade-count{font-size:12px}}
@media(max-width:380px){.focused-game .game-controls,.focused-game .game-controls.has-bonus{padding:11px 9px;gap:9px 6px}.focused-game .spin-button{min-width:96px;font-size:21px;padding:0 6px;gap:5px}.focused-game .bet-row select{width:63px;font-size:18px}.focused-game .bet-row button{width:21px}.auto-button{min-width:50px}.spin-actions{gap:4px}.focused-game .balance-control>strong,.focused-game .control-balance>strong{font-size:24px}.focused-game .game-controls.has-bonus .bonus-bank>strong{font-size:21px}.focused-game .bonus-bank .control-label{font-size:12px;line-height:1.1}.focused-game .game-controls.has-bonus .bonus-bank>span:last-child{max-width:130px}.focused-game #machine-mode{font-size:12px;line-height:1}.position-multi,.wild-multi{font-size:18px}.prize-tile>strong{font-size:14px}}
@media(prefers-reduced-motion:reduce){.field-pulse,.prize-tile,.reel-window.anticipating,.win-lines .feature-connection{animation:none!important}.meter-track>i{transition:none}}
@media(max-width:350px){.focused-game .game-controls,.focused-game .game-controls.has-bonus{padding:10px 8px;gap:10px}.focused-game .bet-control{grid-column:1/3;grid-row:2}.focused-game .spin-cluster{grid-column:1/3;grid-row:3;justify-content:center}.focused-game .game-controls.has-bonus .bonus-bank{grid-column:1/3;grid-row:2}.focused-game .game-controls.has-bonus .bet-control{grid-column:1;grid-row:3}.focused-game .game-controls.has-bonus .spin-cluster{grid-column:1/3;grid-row:4;flex-direction:row;align-items:center;justify-content:center;gap:8px}.focused-game .game-controls.has-bonus .fs-counter{position:absolute;right:8px;bottom:70px}.focused-game .game-controls.has-bonus .bonus-bank>span:last-child{max-width:none}.focused-game .spin-button{min-width:134px}.focused-game .auto-button{min-width:65px}}

/* Keep both turbo badges readable beside the spin button at narrow widths. */
@media(max-width:600px){.focused-game .speed-button{width:27px;min-width:27px;height:48px}.focused-game .speed-button svg{width:18px;height:18px}.focused-game .speed-button .speed-badge{font-size:11px;min-height:12px}}
