/* Portrait dialogs are authored in the same 1000 × 1800 cabinet space. */
html[data-layout="portrait"] #modalLayer:not(.big-win-modal){padding:54px 0;box-sizing:border-box;background:#0b0316db;backdrop-filter:blur(7px)}
html[data-layout="portrait"] #modalLayer .panel{position:relative;box-sizing:border-box;width:916px;max-height:1640px;padding:76px 44px 48px;border:5px solid #d8ba78;border-radius:38px;background:radial-gradient(ellipse at 50% 0,#582968 0,#271136 53%,#160b24 100%);box-shadow:0 0 0 9px #281d32,0 0 0 14px #817186,0 22px 100px #000b,inset 0 0 0 7px #713d7a88,inset 0 0 70px #ab42e321;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#b99761 #1d0d2b}
html[data-layout="portrait"] #modalLayer .panel:has(#menuContent){display:flex;flex-direction:column;height:1640px;overflow:hidden}
html[data-layout="portrait"] #modalLayer .panel h1{margin:14px 0 30px;font-size:67px;line-height:1.12;letter-spacing:1px;color:#eaff8e;text-shadow:0 4px 0 #466119,0 8px 18px #0009}
html[data-layout="portrait"] #modalLayer .panel h2{font-size:52px;line-height:1.2}
html[data-layout="portrait"] #modalLayer .panel p{margin:18px 0 28px;font-size:42px;line-height:1.43}
html[data-layout="portrait"] #modalLayer .eyebrow{font-size:25px;line-height:1.35;letter-spacing:3px;padding:0 68px;color:#dcccaa}
html[data-layout="portrait"] #modalLayer .close-panel{z-index:3;position:absolute;right:10px;top:6px;width:138px;height:138px;min-width:138px;min-height:138px;padding:0;border:0;border-radius:50%;background:transparent;font-size:82px;line-height:138px;display:grid;place-items:center;color:#fff2cf;text-shadow:0 3px 0 #321034}
html[data-layout="portrait"] #modalLayer .close-panel::before{content:"";position:absolute;inset:27px;border:4px solid #e5c38a;border-radius:50%;background:linear-gradient(#a54491,#54125b);box-shadow:inset 0 0 0 4px #32112e,0 5px 14px #0007;z-index:-1}
html[data-layout="portrait"] #modalLayer .tabs{display:grid;grid-template-columns:1fr 1fr;gap:15px;flex:none;margin:0 0 30px}
html[data-layout="portrait"] #modalLayer .tabs button{min-height:138px;margin:0;padding:18px 10px;font-size:35px;line-height:1.15;border:3px solid #9a828f;border-radius:15px;background:linear-gradient(#472452,#281333);color:#ebdfc8;box-shadow:inset 0 0 0 5px #1d102266}
html[data-layout="portrait"] #modalLayer .tabs button.selected{color:#edffb3;border-color:#d0e784;background:linear-gradient(#54752c,#243e19);box-shadow:inset 0 0 0 5px #182513,0 0 22px #a4ff4b25}
html[data-layout="portrait"] #menuContent{min-height:0;overflow:auto;overscroll-behavior:contain;padding:0 6px 20px;scrollbar-width:thin;scrollbar-color:#b99761 #1d0d2b}
html[data-layout="portrait"] #modalLayer .paytable{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
html[data-layout="portrait"] #modalLayer .paytable article{min-width:0;padding:20px 12px;border:2px solid #b396654d;border-radius:18px;background:#100a1b7d}
html[data-layout="portrait"] #modalLayer .paytable img{width:230px;height:165px;object-fit:contain}
html[data-layout="portrait"] #modalLayer .paytable h3{font-size:38px;line-height:1.2;margin:8px 0 14px}
html[data-layout="portrait"] #modalLayer .paytable p{font-size:38px;line-height:1.45;margin:0}
html[data-layout="portrait"] #modalLayer .line-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
html[data-layout="portrait"] #modalLayer .line-card{padding:15px;border-radius:16px;border:2px solid #b396654d;background:#100a1b7d}
html[data-layout="portrait"] #modalLayer .line-card b{font-size:36px;line-height:1.2}
html[data-layout="portrait"] #modalLayer .line-card svg{width:100%;height:138px}
html[data-layout="portrait"] #modalLayer .feature-list{grid-template-columns:1fr;gap:24px}
html[data-layout="portrait"] #modalLayer .feature-list article{gap:20px;padding:24px 18px;border-radius:18px;background:#100a1b75;border:2px solid #b396654d;align-items:center}
html[data-layout="portrait"] #modalLayer .feature-list img{width:160px;height:180px;object-fit:contain;flex:none}
html[data-layout="portrait"] #modalLayer .feature-list h3{font-size:41px;line-height:1.18;margin:0 0 12px;color:#e8fca4}
html[data-layout="portrait"] #modalLayer .feature-list p{font-size:38px;line-height:1.38;margin:0}
html[data-layout="portrait"] #modalLayer .settings-grid{grid-template-columns:1fr;gap:22px}
html[data-layout="portrait"] #modalLayer .setting{min-height:138px;box-sizing:border-box;padding:26px 32px;font-size:43px;border-radius:18px;border:2px solid #b3966566;background:#110b1a9c}
html[data-layout="portrait"] #modalLayer .setting input{width:70px;height:70px;margin:0;accent-color:#acdd52;flex:none}
html[data-layout="portrait"] #modalLayer .panel:has(.choice){padding:110px 46px 62px}
html[data-layout="portrait"] #modalLayer .panel:has(.choice) h1{margin-bottom:36px}
html[data-layout="portrait"] #modalLayer .choice{display:inline-grid;place-items:center;box-sizing:border-box;width:calc(50% - 24px);min-height:156px;margin:12px;padding:26px 8px;border:4px solid #d3d89a;border-radius:21px;background:linear-gradient(#709c32,#345315);font-size:54px;line-height:1.05;color:#fcffcf;box-shadow:inset 0 0 0 6px #293a14,0 7px 14px #0008}
html[data-layout="portrait"] #modalLayer .panel button.action{min-height:148px;min-width:380px;padding:28px 36px;font-size:45px;line-height:1.15;border:4px solid #d3d89a;border-radius:21px}
html[data-layout="portrait"] #modalLayer .panel.award-panel{width:900px;min-height:0;padding:76px 50px}
html[data-layout="portrait"] #modalLayer .award-art{width:350px;height:330px;object-fit:contain}
html[data-layout="portrait"] #modalLayer .award-number{font-size:110px;line-height:1.1;overflow-wrap:anywhere}
html[data-layout="portrait"] #modalLayer button:focus-visible,html[data-layout="portrait"] #modalLayer input:focus-visible{outline:5px solid #efffac;outline-offset:7px}
html[data-layout="portrait"] #modalLayer .close-panel:focus-visible{outline-offset:-12px}
/* This panel lives outside the scaled stage, so its touch sizes are screen pixels. */
html[data-layout="portrait"] #devPanel{left:max(8px,env(safe-area-inset-left));right:max(8px,env(safe-area-inset-right));top:max(8px,env(safe-area-inset-top));bottom:max(8px,env(safe-area-inset-bottom));width:auto;max-width:520px;margin-left:auto;margin-right:auto;padding:20px 16px;box-sizing:border-box;border:2px solid #d5bb86;border-radius:18px;background:linear-gradient(#2e153d,#120a20);color:#f5ead3;font-size:14px;line-height:1.4;overscroll-behavior:contain;scrollbar-width:thin}
html[data-layout="portrait"] #devPanel h2{font-size:22px;margin:10px 48px 18px 0;color:#dfff8c}
html[data-layout="portrait"] #devPanel label{font-size:14px;line-height:1.4}
html[data-layout="portrait"] #devPanel button,html[data-layout="portrait"] #devPanel select,html[data-layout="portrait"] #devPanel input:not([type="checkbox"]){box-sizing:border-box;min-height:44px;max-width:100%;font-family:inherit;font-weight:700;font-size:14px;line-height:1.25;border:1px solid #9f8b60;border-radius:7px;padding:10px 9px}
html[data-layout="portrait"] #devPanel select,html[data-layout="portrait"] #devPanel input:not([type="checkbox"]){width:100%;background:#190d24;color:#f6f2dc}
html[data-layout="portrait"] #devPanel .dev-row{gap:10px;align-items:start}
html[data-layout="portrait"] #devPanel .dev-row>*{min-width:0}
html[data-layout="portrait"] #devPanel input[type="checkbox"]{width:22px;height:22px;vertical-align:middle;accent-color:#bcf255}
html[data-layout="portrait"] #devPanel label:has(input[type="checkbox"]){display:flex;align-items:center;gap:10px;min-height:44px}
html[data-layout="portrait"] #devPanel #devClose{width:44px;height:44px;font-size:27px;padding:0;display:grid;place-items:center}
html[data-layout="portrait"] #devPanel pre{max-width:100%;white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px}
html[data-layout="portrait"] #loading{background:radial-gradient(ellipse at 50% 44%,#542563,#10071c 75%)}
html[data-layout="portrait"] #loading .load-mark{font-size:102px;line-height:.94;text-align:center;letter-spacing:-2px}
html[data-layout="portrait"] #loading .load-mark span{display:block;font-size:123px}
html[data-layout="portrait"] #loadStatus{max-width:780px;font-size:40px;line-height:1.4;text-align:center;margin:52px 40px 30px}
html[data-layout="portrait"] #loading .load-track{width:690px;height:16px;border-radius:12px;overflow:hidden}
/* Existing illustrated award plaques retain their exact 3:2 source ratio. */
html[data-layout="portrait"] .bonus-intro-award{--bonus-panel-width:940px;--bonus-panel-height:626.6667px;--bonus-number-y:60%;filter:drop-shadow(0 24px 28px #180823aa)}
html[data-layout="portrait"] .bonus-intro-number{width:66%;font-size:168px;line-height:1;letter-spacing:-2px;-webkit-text-stroke:1.5px #fff0a3;filter:drop-shadow(0 5px 0 #703203) drop-shadow(0 8px 2px #21081899)}
html[data-layout="portrait"] .bonus-outro-award{--bonus-number-y:63.5%}
html[data-layout="portrait"] .bonus-outro-award .bonus-intro-number{width:65%;font-size:120px;letter-spacing:-1px}
html[data-layout="portrait"] .bonus-intro-title{font-size:62px}
/* Natural-aspect character art; screen-wide effects have portrait canvas geometry. */
html[data-layout="portrait"] #modalLayer.big-win-modal{padding:0}
html[data-layout="portrait"] #bigWinMonsterRig{left:0;top:490px;width:1000px;height:791.045px}
html[data-layout="portrait"] .big-win-stage{object-position:50% 50%}
html[data-layout="portrait"] .big-win-preview{left:50px;bottom:50px;font-size:26px}
html[data-layout="portrait"] #bigWinAmount.big-win-fallback{font-size:70px}
/* Native portrait gift booth; its title, stage and award follow the painted plaques. */
.surprise-game-backdrop-portrait{display:none}
html[data-layout="portrait"] .surprise-game-scene{background:#160b26}

html[data-layout="portrait"] .surprise-game-backdrop:not(.surprise-game-backdrop-portrait){display:none}
html[data-layout="portrait"] .surprise-game-backdrop-portrait{display:block;inset:0;width:1000px;height:1800px;object-fit:cover;mask-image:none}
html[data-layout="portrait"] .surprise-game-heading{top:642px;left:80px;width:840px}
html[data-layout="portrait"] .surprise-game-eyebrow{font-size:25px;line-height:1.2;letter-spacing:5px;margin:0 0 10px}
html[data-layout="portrait"] .surprise-game-heading h1{width:620px;height:72px;font-size:49px;line-height:72px;letter-spacing:0}
html[data-layout="portrait"] .surprise-title-art{top:7px;width:620px;height:57.5714px;object-fit:contain}
html[data-layout="portrait"] .surprise-game-prompt{top:176px;left:0;width:840px;font-size:40px;line-height:1.25}
html[data-layout="portrait"] .surprise-game-board{inset:auto;left:50%;top:620px;width:1672px;height:941px;transform:translateX(-50%) scale(.72);transform-origin:50% 0}
html[data-layout="portrait"] .surprise-present-caption{font-size:38px;letter-spacing:0}
html[data-layout="portrait"] .surprise-game-smoke{left:40px;top:815px;width:920px;height:430px}
html[data-layout="portrait"] .surprise-game-rays{left:0;top:505px;width:1000px;height:1280px}
html[data-layout="portrait"] .surprise-game-particles img{left:500px;top:1065px}
html[data-layout="portrait"] .surprise-game-award{top:1293px;left:200px;width:600px;white-space:normal;font-size:55px;line-height:1.2;letter-spacing:0}
html[data-layout="portrait"] .surprise-game-award::before{display:none}
@media(prefers-reduced-motion:reduce){html[data-layout="portrait"] #modalLayer *{scroll-behavior:auto}}
