/* Mobile presentation only. Desktop rules remain in style.css. */
.mobile-menu,.mobile-actions{display:none}
@media(max-width:760px){
body.in-battle{height:auto;min-height:100dvh;overflow:auto}
body.in-battle main{height:auto;min-height:100dvh;padding:8px}
.arena{display:flex;flex-direction:column;gap:8px;height:auto;min-height:calc(100dvh - 16px)}
.arena:before{display:none}
.battle-bar{position:sticky;top:0;z-index:40;display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:4px;padding:8px;background:#101f18}
.battle-message{text-align:left}
.battle-meta{display:grid;grid-column:1;font-size:10px}
.battle-message{grid-column:1;grid-row:2}
.battle-message strong{font-size:14px}
.battle-message span{font-size:12px}
.arena-tools{display:none}
.mobile-menu{display:block;grid-column:2;grid-row:1/3;align-self:start}
.mobile-menu summary{display:grid;place-items:center;min-width:44px;min-height:44px;cursor:pointer;font-size:28px;list-style:none}
.mobile-menu summary::-webkit-details-marker{display:none}
.mobile-menu>div{position:absolute;right:0;top:100%;padding:8px;display:grid;gap:6px;background:var(--panel);border:1px solid var(--gold);box-shadow:0 8px 25px #0009;min-width:210px}
.mobile-menu button{min-height:44px;text-align:left;color:var(--ink);background:var(--panel2);border:1px solid var(--line);padding:8px}
.action-guide{height:auto;min-height:24px;text-align:center}
.opponents,.opponents[data-count="1"],.opponents[data-count="2"],.opponents[data-count="3"]{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));min-height:0;overflow:visible;gap:6px}
.opponent-area{min-height:0;padding:18px 8px 8px}
.player-info{display:grid;gap:4px;min-height:0}
.player-info h2{font-size:13px;overflow-wrap:anywhere}
.player-stats{font-size:12px;gap:3px 8px}
.player-stats span{font-size:12px!important}
.inspect-player{min-height:44px;font-size:12px;margin-top:6px}
.common-table{border-radius:8px;padding:8px;grid-template-columns:90px minmax(0,1fr);min-height:80px}
.shared-cards{justify-content:flex-start}
.battle-actions{display:none}
.own-field{min-height:0}
.own-area{height:auto;display:flex;gap:10px;padding:10px}
.banners{grid-template-columns:repeat(2,minmax(0,1fr))}
.mobile-banner{display:grid;gap:5px;text-align:left;min-height:105px;padding:10px;color:var(--ink);font:inherit}
.mobile-banner strong{font-size:12px}
.mobile-banner span{color:var(--gold2)}
.mobile-banner small{font-size:11px;white-space:normal}
.mobile-zones button{width:100%;min-height:44px;font-size:12px}
.hand-area{position:sticky;bottom:0;z-index:35;flex:none;min-height:0;padding:8px 8px calc(8px + env(safe-area-inset-bottom));background:#111e18;border-radius:8px;box-shadow:0 -5px 20px #0006}
.hand-heading{height:auto;min-height:36px;flex-wrap:wrap;gap:4px}
.hand-heading h2{font-size:13px}
.hand-heading button,.mandatory-guide button{min-height:44px;padding:6px 10px;font-size:12px}
.hand{position:relative;display:flex;width:100%;max-width:100%;height:auto;min-height:110px;max-height:24dvh;overflow-x:auto;overflow-y:hidden;gap:8px;padding:8px 3px;align-items:flex-start;overscroll-behavior-x:contain}
.hand .art-card,.hand .art-card:hover,.hand .art-card:focus-visible,.hand .art-card.mandatory-card,.hand .art-card.mandatory-card:hover,.hand .art-card.mandatory-card:focus-visible{position:relative;left:auto;top:auto;width:clamp(64px,18vw,86px);transform:none;flex:0 0 auto}
.hand .art-name{display:block;font-size:10px}
.mobile-actions{display:flex;gap:6px;overflow-x:auto;padding-bottom:6px}
.mobile-actions:empty{display:none}
.mobile-actions button{min-height:44px;font-size:12px;flex:0 0 auto}
.mandatory-guide{flex-basis:100%;font-size:12px}
.game-event-panel{position:relative;top:auto;right:auto;left:auto;width:100%;max-height:none;z-index:auto;padding:10px}
#game-event-actions{grid-template-columns:1fr}
#game-event-actions button{min-height:44px}
.overlay{inset:auto 0 0;margin:0;width:100%;max-width:100%;max-height:90dvh;padding:48px 16px calc(16px + env(safe-area-inset-bottom));border-radius:14px 14px 0 0;background:#14221b;overflow:auto}
.overlay-close{width:44px;height:44px;top:2px;right:8px}
#card-detail{display:flex;flex-direction:column;gap:10px}
#card-detail>.preview-art{width:130px!important;max-height:none;margin:0 auto}
#card-detail>button,.action-choice{min-height:44px;width:100%}
.player-preview .player-area{height:auto;overflow:visible}
.player-preview .player-contents{display:flex;flex-direction:column}
.player-preview .side-zones{display:grid;grid-template-columns:1fr 1fr;overflow:visible}
.player-preview .zone-pile .small-cards{height:auto;flex-wrap:wrap}
.player-preview .banner-row{min-height:0;flex-wrap:wrap;justify-content:flex-start;gap:4px}
.player-preview .banner-row .art-card+.art-card{margin-left:0}
.player-preview .banner-row .compact-card{width:56px}
.player-preview .banner-row.supports{display:flex}
.player-preview .banner-extras[open]{position:static}
.hidden-drawer{position:fixed;inset:auto 0 0;bottom:0;width:100%;max-height:85dvh;z-index:55;padding:16px 16px calc(16px + env(safe-area-inset-bottom))}
.hidden-drawer .cards{flex-wrap:wrap}
.hidden-drawer .art-card{width:86px}
.history-drawer{width:100%;padding:16px 16px calc(16px + env(safe-area-inset-bottom))}
.drawer-title button{min-height:44px}
.results{position:relative;inset:auto;max-height:none;width:100%;padding:14px}
.notice{position:relative;z-index:45}
button,input,select{touch-action:manipulation}
}