/* Pixel grid and effects share the same 756-unit stage; compact mode reduces decoration. */
#stage{--hit:78px;--label:21px}
.wallet-copy small{font-size:var(--label);letter-spacing:1px}.control-caption{font-size:var(--label);letter-spacing:1px}
.bottom-bar{height:78px;top:calc(1266px + var(--extra))}.bottom-bar button{min-width:78px;min-height:78px}.bottom-bar span{font-size:21px;letter-spacing:0}
.controls>.small-control{min-width:var(--hit);min-height:var(--hit)}
#modal-content button,#modal-content select,#modal-content input{min-height:var(--hit)}
#close-modal{min-width:var(--hit);min-height:var(--hit);display:grid;place-items:center;right:15px;top:8px}
.full-modal #close-modal{left:15px;top:20px}.profile-modal header:after{top:12px;left:calc(50% - 65px);width:130px;height:105px;font-size:65px;line-height:85px;border:0}
#modal{max-height:calc(100% - 24px)}.full-modal{height:calc(100% - 24px)}#modal-content{overflow-wrap:anywhere}
#toast{top:calc(865px + var(--top-extra));font-size:28px;max-height:130px;overflow:auto;pointer-events:none}
.wallet-copy{font-variant-numeric:tabular-nums}.wallet-copy>span{font-size:34px}.wallet-row button{min-height:78px}
#stage.compact{--hit:104px;--label:29px}
.compact .game-heading{top:0;height:66px}.compact .game-heading strong{font-size:31px}.compact .game-heading small{display:none}.compact .moon-seal{width:52px;height:52px;font-size:44px}.compact .line-seal{font-size:27px}.compact .line-seal small{display:none}
.compact #reels,.compact #line-layer,.compact #spell-layer{top:70px}.compact .witch-frame{top:57px}
.compact .spell-caption{top:809px}.compact #free-counter{top:807px}.compact #five-kind{top:360px}
.compact #info{top:860px;height:85px}.compact #message{font-size:29px}.compact #win-label{font-size:32px}.compact #win-value{font-size:48px}
.compact .wallet-row{top:950px;height:108px;grid-template-columns:304px 112px 330px;gap:0}
.compact .wallet-row button{min-height:104px;padding:6px 8px}.compact .wallet-copy>span{font-size:38px}.compact .wallet-row svg{width:35px;height:35px}
.compact .controls{left:16px;width:724px;top:1070px;height:180px}.compact .small-control{width:104px;height:104px}
.compact .control-caption{top:1244px;left:16px;right:16px;grid-template-columns:104px 104px 180px 104px 104px;font-size:28px}
.compact .bottom-bar{top:1260px;height:84px}.compact .bottom-bar button{min-height:84px;min-width:104px}.compact .bottom-bar span{font-size:27px}
.compact .control-caption{display:none}.compact .bottom-bar{top:1240px;height:104px}
.compact .frame-bottom{top:810px;height:534px}.compact .crystal{display:none}.compact #toast{top:860px}
.compact .full-modal #modal-content{padding:20px 28px;font-size:28px}.compact .full-modal .rules p{font-size:28px}
.compact #modal-content{font-size:30px;padding:25px 28px}.compact .profile-nav{padding:22px 12px}.compact .profile-utility{display:flex;flex-wrap:wrap;justify-content:center;padding:0 10px}.compact .profile-utility button{font-size:28px;margin:0;min-width:180px}.compact .profile-wallet{padding:25px 20px 35px}.compact .profile-modal #modal-content{padding:0}
.compact .profile-nav button{font-size:26px;width:130px}.compact .profile-nav i{margin-bottom:5px}.compact .choice{min-width:110px;font-size:28px}.compact .choices{gap:7px}.compact .fine{font-size:28px}.compact .history-row{font-size:27px;grid-template-columns:90px 125px 140px 1fr}.compact .history-line{font-size:27px;grid-template-columns:75px 1fr 90px 140px}
#stage.landscape{width:1530px;--hit:104px;--label:28px}
.landscape .game-heading{top:0}.landscape #reels,.landscape #line-layer,.landscape #spell-layer{top:104px}.landscape .witch-frame{top:91px}.landscape .spell-caption,.landscape .crystal,.landscape .frame-bottom{display:none}
.landscape #info{left:785px;top:90px;width:720px;height:120px}.landscape .wallet-row{left:785px;top:225px;width:720px;height:110px;grid-template-columns:300px 110px 310px}.landscape .wallet-row button{min-height:104px}
.landscape .controls{left:797px;top:420px;width:695px;height:190px}.landscape .small-control{width:104px;height:104px}.landscape .control-caption{display:none}
.landscape .bottom-bar{left:785px;top:650px;width:720px;height:104px}.landscape .bottom-bar button{min-height:104px;min-width:104px}.landscape .bottom-bar span{font-size:28px}
.landscape #free-counter{left:790px;top:350px;width:710px;font-size:30px}.landscape #toast{left:800px;top:90px;width:690px}
.landscape #modal{left:765px;width:765px;max-height:calc(100% - 20px)}.landscape #modal-content{min-height:0;padding:25px;font-size:28px}.landscape .full-modal #modal-content{padding:25px}.landscape .profile-nav{padding:20px 10px}.landscape .profile-utility button{font-size:26px}
.landscape #intro>img{width:756px;height:840px;object-fit:cover}.landscape #start-button{left:955px;top:370px}.landscape #intro>small{left:765px;width:765px;bottom:80px;font-size:28px}
@media(orientation:landscape) and (max-height:500px){#game-shell{width:100vw;height:100dvh}}
.bottom-bar{top:calc(1240px + var(--extra));height:104px}.bottom-bar button{min-width:var(--hit);min-height:var(--hit)}.control-caption{display:none}
.compact .bottom-bar button{min-height:104px}
.wallet-row{height:max(78px,var(--hit))}.wallet-row button{min-height:var(--hit)}
#load-status{position:fixed;inset:0;z-index:100;display:grid;place-content:center;background:#211a36eF;color:#f3e9fb;text-align:center;padding:24px;font:16px/1.5 system-ui}
#load-status button{min-height:44px;min-width:140px;background:#a6f6dc;color:#211a36;border-radius:12px}
.profile-utility,.profile-utility button,.fine{font-size:var(--label)}.profile-nav button{font-size:max(25px,var(--label))}.bottom-bar button{font-size:44px}.game-heading small{font-size:var(--label);letter-spacing:2px}
.wallet-copy{min-width:0;max-width:100%}.wallet-copy>span{max-width:100%;letter-spacing:-.5px}
.wallet-copy>span,.compact .wallet-copy>span{font-size:var(--amount,34px)}.wallet-row .long-balance{padding:8px}.long-balance svg{display:none}.long-balance .wallet-copy{width:100%}
/* Standard-mode rows also reserve disjoint touch areas after hit-target expansion. */
#stage:not(.compact):not(.landscape) #info{top:calc(887px + var(--extra));height:85px}
#stage:not(.compact):not(.landscape) .wallet-row{top:calc(974px + var(--extra));height:104px}
#stage:not(.compact):not(.landscape) .controls{top:calc(1090px + var(--extra));height:180px}
#stage:not(.compact):not(.landscape) #free-counter{top:calc(847px + var(--top-extra));height:40px}
.line-seal{width:144px;flex-shrink:0}.line-seal small{font-size:var(--label);letter-spacing:0}.bottom-bar span{font-size:var(--label)}
