/* Full viewport arcade. The stage owns the remaining space, without minimum-height overflow. */
body:has(dialog[open]){overflow:hidden}
#arcade-dialog,#claw-dialog{position:fixed;inset:0;margin:0;width:100%;max-width:100%;height:100dvh;max-height:100dvh;border:0;border-radius:0;padding:0;overflow:hidden}
:is(#arcade-dialog,#claw-dialog) .claw-layout{height:100%;display:flex;flex-direction:column}
:is(#arcade-dialog,#claw-dialog) .claw-header{height:46px;min-height:46px;box-sizing:border-box;padding:5px 14px;position:relative;gap:12px;z-index:5}
.claw-header>div:first-child{display:flex;align-items:center;gap:14px;min-width:0}
.claw-header .claw-eyebrow{font-size:8px;white-space:nowrap}
.claw-header h2{font-size:17px;margin:0;white-space:nowrap}
.claw-header-actions button{width:31px;height:31px}
:is(#arcade-dialog,#claw-dialog) .claw-main{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 212px;overflow:hidden}
:is(#arcade-dialog,#claw-dialog) .claw-viewport{height:auto;min-height:0;min-width:0;flex:1}
:is(#arcade-dialog,#claw-dialog) .claw-sidebar{display:flex;flex-direction:column;padding:12px;gap:10px;overflow:auto;min-height:0;box-sizing:border-box}
.claw-sidebar>.claw-machine-label,.claw-sidebar>.claw-best,.claw-sidebar>.arcade-facts,.claw-sidebar>.claw-help,.claw-sidebar>.arcade-help{display:none}
.claw-stats{margin:0;gap:8px}.claw-stats strong{font-size:25px}.claw-stats small{font-size:9px}.claw-stats>div+div{padding-left:10px}
.claw-event{min-height:0;padding:0;font-size:10px;line-height:1.6}
.arcade-detail{min-height:0;padding:7px;font-size:9px}
:is(#arcade-dialog,#claw-dialog) .arcade-controls{display:flex;margin:0;gap:8px;flex-wrap:wrap;align-self:stretch;flex-direction:row}
.arcade-arrows:has(button:not([hidden])){display:flex}.arcade-arrows:not(:has(button:not([hidden]))){display:none}
.arcade-controls .button{min-height:40px;padding:8px 12px;min-width:0;width:100%}
.machine-controls,#machine-controls{margin:0}.point-wallet{padding:8px;font-size:9px}.point-wallet strong{display:inline;margin:0 8px;font-size:24px}.point-wallet small{display:block}
.fruit-options{grid-template-columns:repeat(2,1fr);margin:8px 0 0;gap:5px}.fruit-options button{padding:10px 2px;font-size:10px}.mary-note{font-size:9px;margin:8px 0 0}
.scene-topline,.scene-caption{display:none}.view-controls{top:9px;right:10px;bottom:auto}.camera-instruction{bottom:8px;font-size:9px;opacity:.8}
.claw-cover{padding:18px;align-items:center}.claw-cover-inner{max-width:400px;padding:20px}.claw-cover h3{font-size:25px}.claw-cover p{font-size:11px}.claw-cover .claw-eyebrow{font-size:8px}
.flipper-buttons{margin:0 0 10px;gap:6px}.plunger-panel{padding:8px;grid-template-columns:49px 1fr;gap:8px}.plunger-panel small{display:none}.plunger-panel .button{font-size:10px;padding:7px}.plunger-track{height:104px}#plunger-pull{min-height:133px}
.claw-controls{margin:0;gap:8px}#claw-joystick{width:96px;height:96px}.claw-grab{width:77px;height:66px}.claw-alignment{padding:8px}.claw-alignment small{display:none}.claw-loot{padding-top:8px}.claw-menu{margin:0}
@media(max-width:700px){
 .claw-header .claw-eyebrow{display:none}:is(#arcade-dialog,#claw-dialog) .claw-header{height:42px;min-height:42px;padding:4px 10px}
 :is(#arcade-dialog,#claw-dialog) .claw-main{display:flex;flex-direction:column}
 :is(#arcade-dialog,#claw-dialog) .claw-viewport{flex:1;min-height:0;height:auto}
 :is(#arcade-dialog,#claw-dialog) .claw-sidebar{flex:0 0 auto;max-height:160px;display:grid;grid-template-columns:minmax(0,1fr) minmax(120px,42%);gap:6px 10px;padding:8px 12px;border-top:1px solid #3f3e3d;border-left:0}
 .claw-sidebar>*{grid-area:auto!important;min-width:0}
 .claw-stats{grid-column:1!important;grid-row:1!important;align-self:center}.claw-stats strong{font-size:22px;margin:0}.claw-stats small{font-size:8px}
 .claw-sidebar .claw-event{grid-column:1!important;grid-row:2!important;font-size:9px;padding:0}
 .claw-sidebar .arcade-controls,.claw-sidebar .claw-controls{grid-column:2!important;grid-row:1 / 3!important;align-self:center}
 .claw-sidebar .arcade-detail,.claw-sidebar .claw-alignment,.claw-sidebar .claw-loot,.claw-sidebar .claw-menu{display:none}
 .claw-controls:has(#claw-joystick){flex-direction:row;justify-content:flex-end}#claw-joystick{width:74px;height:74px}#claw-joystick i{width:35px;height:35px;left:calc(50% - 17.5px);top:calc(50% - 17.5px)}#claw-joystick span{display:none}.claw-grab{width:61px;height:48px}.claw-grab small{display:none}.claw-grab span{font-size:15px}
 #arcade-dialog[data-game=mary] .claw-sidebar{grid-template-columns:1fr 132px;max-height:166px}
 #arcade-dialog[data-game=mary] .claw-stats{display:none}
 #arcade-dialog[data-game=mary] .claw-event{grid-column:1 / -1!important;grid-row:3!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 #arcade-dialog[data-game=mary] .arcade-controls{grid-column:2!important;grid-row:1!important}
 #arcade-dialog[data-game=mary] #machine-controls{grid-column:1 / -1!important;grid-row:2!important}
 #arcade-dialog[data-game=mary] .point-wallet{position:absolute;bottom:107px;left:12px;background:none;border:0;padding:0}
 #arcade-dialog[data-game=mary] .point-wallet strong{font-size:22px}.point-wallet small{font-size:8px}
 #arcade-dialog[data-game=mary] .fruit-options{grid-template-columns:repeat(4,1fr);margin:0;gap:4px}.fruit-options button{font-size:9px;padding:7px 2px}
 .mary-note{display:none}
 #arcade-dialog[data-game=pinball] .claw-sidebar{display:block;max-height:150px;padding:7px 10px}
 #arcade-dialog[data-game=pinball] .claw-stats{position:absolute;bottom:109px;left:12px;width:155px}
 #arcade-dialog[data-game=pinball] .claw-event{display:none}
 #pinball-controls{display:grid;grid-template-columns:1fr 48%;gap:10px;align-items:end}
 .flipper-buttons{margin:35px 0 0;gap:5px}.flipper-buttons button{min-height:45px;font-size:11px}.flipper-buttons small{display:none}
 .plunger-panel{grid-template-columns:31px 1fr;padding:5px;gap:5px}.plunger-track{height:65px;width:20px;border-width:3px}.plunger-track i{width:29px;height:29px;left:-7px;font-size:11px}#plunger-pull{min-height:85px;gap:0}#plunger-pull>span{font-size:7px}.plunger-panel>div:last-child{gap:5px}.plunger-panel label{font-size:9px}.plunger-panel .button{min-height:29px;font-size:9px;padding:4px}
 .camera-instruction span{display:none}.view-controls button{font-size:9px;padding:5px 8px}.camera-instruction{bottom:5px}
}
#mary-picker{display:none}
@media(max-width:700px){
 #arcade-dialog[data-game=mary] .claw-sidebar{position:relative;display:block;height:73px;max-height:73px;padding:6px 12px;overflow:visible;z-index:3}
 #arcade-dialog[data-game=mary] .point-wallet{position:static;display:flex;align-items:center;height:25px;padding:0;font-size:8px;width:calc(100% - 145px)}
 #arcade-dialog[data-game=mary] .point-wallet strong{margin:0 6px;font-size:21px}.point-wallet small{display:none}
 #arcade-dialog[data-game=mary] .arcade-controls{position:absolute;right:12px;top:12px;width:132px}
 #arcade-dialog[data-game=mary] #mary-picker{display:block;border:1px solid #5a554c;border-radius:6px;background:#282827;color:#eacd9c;font-size:10px;padding:5px 10px;min-height:28px}
 #arcade-dialog[data-game=mary] .claw-event{display:block;position:absolute;bottom:79px;left:10px;right:10px;text-align:center;color:#eff0cd;text-shadow:0 1px 4px #000;font-size:10px;pointer-events:none}
 #arcade-dialog[data-game=mary] .fruit-options{display:none;position:absolute;bottom:80px;left:10px;right:10px;background:#171717;border:1px solid #726c62;box-shadow:0 8px 30px #0008;border-radius:10px;padding:10px;gap:6px}
 #arcade-dialog[data-game=mary].fruit-picker-open .fruit-options{display:grid}
 #arcade-dialog[data-game=mary] .fruit-options button{padding:12px 4px;font-size:11px}
}
@media(max-height:480px) and (min-width:701px){.claw-header .claw-eyebrow{display:none}.claw-sidebar .mary-note{display:none}.fruit-options button{padding:5px}.point-wallet strong{font-size:20px}.claw-cover-inner{padding:13px}.claw-cover h3{font-size:21px;margin:5px}.claw-cover p{margin-bottom:10px}}

#machine-controls:not(:has(>div:not([hidden]))){display:none}
