/* Neutral grey platform with continuous white light strips. */
body:is(.lobby-page,.game-page){--platform-bg:#36393f;--platform-panel:#45494f;--platform-line:#646970;--platform-text:#fafbfc;--platform-muted:#ced1d5;background:var(--platform-bg)}
:is(.lobby-page,.game-page) .site-header{position:relative;background:#41454b;border-bottom:1px solid #f9fcff;box-shadow:0 1px 4px #fff9,0 4px 16px #e8f2ff22}
:is(.lobby-page,.game-page) .brand-mark{color:#fff;text-shadow:0 0 12px #e6eeff55}
:is(.lobby-page,.game-page) .brand small{color:#d4d7dc}
:is(.lobby-page,.game-page) .wallet{background:#50555c;border-color:#7c838c}
:is(.lobby-page,.game-page) .wallet-icon{color:#fff}
:is(.lobby-page,.game-page) .account-button{background:#555a62;border-color:#bfc5ce;color:#fff}
:is(.lobby-page,.game-page) .play-money{border-color:#858a91;color:#e1e4e9}
.platform-navigation{border-color:#686d74;color:#c7cbd1}
.platform-navigation button{color:#fff;border-color:#fff;text-shadow:0 0 10px #ffffff30}
.platform-mode{color:#dddfe3}
:is(.lobby-page,.game-page) .lobby{position:relative}
:is(.lobby-page,.game-page) .lobby:before,:is(.lobby-page,.game-page) .lobby:after{content:'';position:absolute;top:24px;bottom:36px;width:1px;border-radius:2px;background:#f4f8ff;box-shadow:0 0 5px #fff9,0 0 15px #e9f4ff40;pointer-events:none}
:is(.lobby-page,.game-page) .lobby:before{left:5px}
:is(.lobby-page,.game-page) .lobby:after{right:5px}
:is(.lobby-page,.game-page) .lobby-heading .eyebrow{color:#ebedf1}
:is(.lobby-page,.game-page) .lobby-slogan{color:#c7cbd2}
:is(.lobby-page,.game-page) .lobby-note{background:#474c53;border-color:#767e89;color:#d5d8df}
:is(.lobby-page,.game-page) .lobby-search{background:#464b52;border-color:#858c96;color:#e2e5eb}
:is(.lobby-page,.game-page) .search-field input::placeholder{color:#c1c8d2}
:is(.lobby-page,.game-page) .lobby-search label{color:#dce1e9}
:is(.lobby-page,.game-page) .lobby-views button,:is(.lobby-page,.game-page) #lobby-music{background:#464b52;border-color:#777e89;color:#e0e5ec}
:is(.lobby-page,.game-page) .lobby-views button[aria-pressed=true]{background:#626971;border-color:#e5eaf2;color:#fff;box-shadow:inset 0 -2px 0 #fff,0 2px 9px #ffffff12}
:is(.lobby-page,.game-page) .game-card-slot .game-card{border-color:#848b95;background:#454a52}
:is(.lobby-page,.game-page) .game-card .card-copy{background:#454a52}
:is(.lobby-page,.game-page) .card-bottom{border-color:#727a86;color:#fff}
:is(.lobby-page,.game-page) .card-play{background:#e9edf2;color:#323841}
:is(.lobby-page,.game-page) .game-number,:is(.lobby-page,.game-page) .favorite-button{background:#3b414bdd;border-color:#a3aab7;color:#f2f5fa}
:is(.lobby-page,.game-page) .favorite-button.is-favorite{background:#68635b;color:#ffedb4}
:is(.lobby-page,.game-page) .win-feed{background:#42474f;border-color:#868e99;color:#e1e6ef}
:is(.lobby-page,.game-page) .win-feed-heading{border-color:#747e8b}
:is(.lobby-page,.game-page) .win-feed-heading h2{color:#fff}
:is(.lobby-page,.game-page) .win-feed-heading>span,:is(.lobby-page,.game-page) .win-feed-meta{color:#cbd3df}
:is(.lobby-page,.game-page) .win-tier-good{background:linear-gradient(115deg,#3c5b54,#42474f)}
:is(.lobby-page,.game-page) .win-tier-huge{background:linear-gradient(115deg,#625b50,#42474f)}
:is(.lobby-page,.game-page) .lobby-bottom{color:#ccd3dd;border-color:#757c86}
:is(.lobby-page,.game-page) .lobby .text-button{color:#f2f4f8}
:is(.lobby-page,.game-page) .site-footer{background:#41454b;color:#d3d8df;border-top:1px solid #e9f1fc;box-shadow:0 -2px 12px #ffffff18}
/* A complete scene, rather than a machine followed by a separate controls panel. */
.game-page .lobby-community-content>.game-world{container-type:inline-size;padding:0;min-height:0;border:1px solid #dfb6cc;border-radius:16px;--reel-h:clamp(250px,41cqw,520px);background:#655568;box-shadow:0 16px 45px #16131b66;isolation:isolate}
.game-page .game-world .world-art{inset:-1%;background-size:100% var(--scene-scale);background-position:center top;transform:scale(1.018);transform-origin:50% 40%;opacity:1}
.game-page.theme-princess .game-world .world-art{animation:royal-scene-breeze 24s ease-in-out infinite}
.game-page .game-world .world-shade{position:absolute;inset:0;background:linear-gradient(180deg,#261b293b,transparent 22%,transparent 73%,#281b2be6);pointer-events:none}
.game-page .game-world .play-stage{position:static;width:68%;max-width:none;margin:60px auto 112px;padding:0}
.game-page .game-world .machine{position:static;background:transparent;padding:0;border:0;border-radius:8px;box-shadow:none}
.game-page .game-world .reel-frame{border:2px solid #dba7c194;border-radius:9px;background:#56334a85;box-shadow:0 8px 18px #21142270,inset 0 0 18px #321b3155;overflow:hidden}
.game-page .game-world .reels-surface{border-radius:7px}
.game-page.theme-princess .game-world .reels{background:#69445470}
.game-page.theme-princess .game-world .reel-window{background:transparent;border-color:#b894a536}
.game-page .game-world .win-ribbon{display:none}
.game-page .game-world .game-topbar,.game-page .game-world .game-controls,.game-page .game-world .spin-cluster,.game-page .game-world .spin-actions{display:contents}
.game-page .game-world .game-wordmark{position:absolute;top:14px;left:50%;transform:translateX(-50%);width:70%;text-align:center;z-index:5}
.game-page .game-world .game-wordmark>span{display:none}
.game-page .game-world .game-wordmark>strong{font-size:clamp(24px,3.2cqw,42px);color:#ffe4ee;text-shadow:0 2px 3px #331e31}
.game-page .game-world #back-button{position:absolute;left:12px;top:14px;padding:8px;border:1px solid #f3cfe378;border-radius:8px;background:#3d293bbe;color:#fce5ef;z-index:6;font-size:12px}
.game-page .game-world #back-button span{display:none}
.game-page .game-world .game-tools{position:absolute;top:auto;bottom:116px;left:12px;width:42px;transform:none;gap:10px;z-index:6}
.game-page .game-world .game-tools .icon-button{width:38px;height:38px;padding:8px;background:#3d293b9c;border-color:#dcaec37d;color:#ffe7f3}
.game-page .game-world .game-controls .balance-control{position:absolute;left:16px;bottom:17px;z-index:6;text-shadow:0 2px 4px #1c101c}
.game-page .game-world .game-controls .control-balance{position:absolute;left:50%;bottom:17px;transform:translateX(-50%);text-align:center;z-index:6;text-shadow:0 2px 4px #1c101c}
.game-page .game-world .game-controls .control-label{color:#edd6e3;font-size:12px;letter-spacing:.4px}
.game-page .game-world .balance-control>strong,.game-page .game-world .control-balance>strong{color:#fff0f7;font-size:clamp(18px,2.2cqw,28px)}
.game-page .game-world .game-controls .bet-control{position:absolute;right:10px;bottom:219px;width:14%;border:0;padding:0;text-align:center;z-index:6}
.game-page .game-world .bet-row{justify-content:center;gap:2px;flex-wrap:wrap}
.game-page .game-world .bet-row select{order:-1;width:100%;background:#352337b3;color:#fff0f7;border:1px solid #e4b9d077;border-radius:6px;font-size:18px;text-align:center;padding:4px}
.game-page .game-world .bet-row button{width:32px;height:29px;background:#493044bb;border:1px solid #d7a9c085;color:#ffe7f1;border-radius:50%}
.game-page .game-world #spin-button{position:absolute;right:calc(7% - 31px);bottom:126px;width:72px;height:72px;min-width:0;padding:0;border-radius:50%;border:2px solid #ffc9e7;background:radial-gradient(circle at 35% 20%,#ecb0d2,#a75686 68%,#71385d);color:#fff5fa;box-shadow:0 4px 12px #27102470,inset 0 0 0 4px #b7729844;z-index:7}
.game-page .game-world #spin-button .spin-icon svg{width:34px;height:34px}
.game-page .game-world #spin-label{position:absolute;bottom:9px;font:800 9px Nunito,Arial,sans-serif}
.game-page .game-world #spin-button .spin-icon{margin-bottom:7px}
.game-page .game-world #buy-bonus-button{position:absolute;right:10px;top:24%;width:14%;min-height:57px;padding:7px 3px;background:#59334bcd;border:1px solid #f7b9d8;border-radius:9px;color:#ffe5f2;box-shadow:0 3px 8px #23122355;z-index:6}
.game-page .game-world #buy-bonus-button span{font-size:11px;line-height:1.3;white-space:normal}
.game-page .game-world #auto-button{position:absolute;right:12px;bottom:69px;min-width:56px;height:37px;background:#3f293abf;border:1px solid #dfb0c7;color:#f9d9e9;border-radius:7px;padding:5px;z-index:6}
.game-page .game-world #speed-button{position:absolute;right:77px;bottom:69px;min-width:30px;width:30px;height:37px;background:#3f293abf;border:1px solid #dfb0c7;color:#f9d9e9;border-radius:7px;z-index:6}
.game-page .game-world .game-controls.has-bonus .control-balance{visibility:hidden}
.game-page .game-world .game-controls.has-bonus .bonus-bank{position:absolute;left:50%;bottom:12px;transform:translateX(-50%);width:45%;min-height:0;padding:0;border:0;background:none;box-shadow:none;display:grid;gap:1px;z-index:6;text-align:center;color:#ffe7f3}
.game-page .game-world .bonus-bank .control-label{font-size:11px}
.game-page .game-world .bonus-bank>strong{color:#ffe7f3;font-size:26px}
.game-page .game-world #bonus-bank-caption{display:none}
.game-page .game-world .game-controls .fs-counter{position:absolute;right:12px;top:24%;bottom:auto;width:13%;min-width:0;background:#573449bb;border:1px solid #e4b2cc;border-radius:8px;padding:6px;z-index:6;display:flex;flex-direction:column;gap:2px;color:#ffe7f3}
.game-page .game-world .game-controls .fs-counter[hidden]{display:none}
.game-page .game-world:has(.bonus-bank.is-active) #buy-bonus-button{visibility:hidden}
.game-page .game-world .machine-message{position:absolute;left:17%;right:17%;bottom:73px;height:auto;min-height:0;padding:2px;text-align:center;color:#ffe5f0;font-size:12px;line-height:1.3;z-index:5;text-shadow:0 2px 3px #271025}
.game-page .game-world .royal-bonus-upgrades{position:absolute;top:67px;left:10px;width:13%;display:flex;flex-direction:column;gap:6px;padding:0;z-index:5}
.game-page .game-world .royal-bonus-upgrades[hidden]{display:none}
.game-page .game-world .royal-bonus-upgrades span{font-size:10px;white-space:normal;line-height:1.3;background:#432b3cc2;padding:5px;color:#f6d2e5}
.game-page .game-world .game-underbar{display:none}
.game-page .game-world:fullscreen{display:block;overflow:auto;container-type:inline-size;--reel-h:clamp(280px,59vh,720px);border:0;border-radius:0}
.game-page .game-world:fullscreen .play-stage{max-width:1120px}
.game-page .game-world:fullscreen .game-tools{position:absolute}
/* Existing hand-painted sprites, animated on independent compositor layers. */
.royal-living-scene{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:-1;contain:paint}
.scene-daylight{position:absolute;inset:0;background:linear-gradient(115deg,transparent 12%,#fff0cd12 24%,transparent 38%,#ffe7f008 75%,transparent);opacity:.4;animation:royal-daylight 16s ease-in-out infinite}
.scene-butterfly{position:absolute;width:clamp(17px,2.4cqw,32px);aspect-ratio:1;opacity:0;will-change:transform,opacity}
.scene-butterfly>.paint-sprite{width:100%;height:100%;animation:royal-wings .28s ease-in-out infinite alternate}
.scene-butterfly-0{left:4%;top:66%;animation:royal-flight-left 14s ease-in-out infinite}
.scene-butterfly-1{right:3%;top:43%;animation:royal-flight-right 19s ease-in-out -7s infinite}
.scene-butterfly-2{left:8%;top:28%;width:18px;animation:royal-flight-left 22s ease-in-out -11s infinite}
@keyframes royal-scene-breeze{0%,100%{transform:scale(1.018) translateX(-.25%)}50%{transform:scale(1.028) translateX(.25%)}}
@keyframes royal-daylight{0%,100%{opacity:.3;transform:translateX(-2%)}50%{opacity:.8;transform:translateX(2%)}}
@keyframes royal-wings{from{transform:scaleX(.3) rotate(-8deg)}to{transform:scaleX(1) rotate(8deg)}}
@keyframes royal-flight-left{0%,100%{opacity:0;transform:translate(0,20px) rotate(-12deg)}12%{opacity:.85}35%{opacity:.85;transform:translate(26px,-40px) rotate(15deg)}65%{opacity:.85;transform:translate(8px,-95px) rotate(-15deg)}85%{opacity:0;transform:translate(35px,-130px) rotate(8deg)}}
@keyframes royal-flight-right{0%,100%{opacity:0;transform:translate(0,35px)}15%{opacity:.85}40%{opacity:.85;transform:translate(-18px,-20px) rotate(-20deg)}70%{opacity:.85;transform:translate(-4px,-75px) rotate(10deg)}90%{opacity:0;transform:translate(-22px,-115px)}}
@container(max-width:700px){
 .game-page .game-world .play-stage{width:76%;margin-top:49px;margin-bottom:155px}
 .game-page .game-world .game-wordmark{top:13px}
 .game-page .game-world .game-wordmark>strong{font-size:23px}
 .game-page .game-world #back-button{left:7px;top:9px;padding:5px}
 .game-page .game-world .game-tools{left:5px;top:65px;bottom:auto;width:30px;gap:8px}
 .game-page .game-world .game-tools .icon-button{width:29px;height:29px;padding:6px}
 .game-page .game-world .game-tools .icon-button svg{width:17px;height:17px}
 .game-page .game-world .game-controls .bet-control{right:10px;bottom:94px;width:145px}
 .game-page .game-world .bet-row{flex-wrap:nowrap}
 .game-page .game-world .bet-row select{order:0;width:77px;font-size:16px}
 .game-page .game-world .bet-row button{width:27px;height:29px;flex-shrink:0}
 .game-page .game-world #buy-bonus-button{left:10px;right:auto;top:auto;bottom:94px;width:106px;min-height:42px;display:flex;gap:4px;align-items:center;justify-content:center}
 .game-page .game-world #buy-bonus-button[hidden]{display:none}
 .game-page .game-world #spin-button{right:10px;bottom:13px;width:59px;height:59px}
 .game-page .game-world #auto-button{right:79px;bottom:23px;height:34px;min-width:45px}
 .game-page .game-world #speed-button{right:133px;bottom:23px;height:34px;width:28px;min-width:28px}
 .game-page .game-world .game-controls .balance-control{left:10px;bottom:21px}
 .game-page .game-world .balance-control>strong{font-size:16px}
 .game-page .game-world .balance-control .control-label{font-size:10px}
 .game-page .game-world .game-controls .control-balance{bottom:66px}
 .game-page .game-world .game-controls.has-bonus .bonus-bank{bottom:62px;width:65%;gap:0}
 .game-page .game-world .bonus-bank>strong{font-size:21px}
 .game-page .game-world .bonus-bank .control-label{font-size:10px}
 .game-page .game-world .machine-message{bottom:137px;left:12%;right:12%;font-size:11px}
 .game-page .game-world .royal-bonus-upgrades{top:auto;left:8px;bottom:96px;width:106px;gap:1px}
 .game-page .game-world .royal-bonus-upgrades span{font-size:9px;padding:2px 4px}
 .game-page .game-world .game-controls .fs-counter{right:3px;top:62px;width:10%;padding:4px 0;border:0;background:#39243699}
 .game-page .game-world .game-controls .fs-counter>strong{font-size:23px}
 .game-page .game-world .game-controls .fs-counter>span{font-size:0;letter-spacing:0}.game-page .game-world .game-controls .fs-counter>span:after{content:"FS";font-size:11px}
}
@media(max-width:600px){.game-page .lobby-community-content>.game-world{--reel-h:clamp(235px,60cqw,360px);padding:0}.game-page .lobby{padding-left:10px}.game-page .lobby:before{left:2px}.game-page .lobby:after{right:2px}}
@media(prefers-reduced-motion:reduce){.game-page.theme-princess .game-world .world-art,.scene-daylight,.scene-butterfly,.scene-butterfly>.paint-sprite{animation:none}.scene-butterfly{opacity:.65}.scene-daylight{opacity:.4}}
