/* v0.24.1: reserve actual viewport space for both board and hand actions. */
.play-controls{display:none}.review-log{width:100%;margin-top:8px;font-size:12px}
.unit-art[data-has-art="1"]{background-size:100% 100%,contain;background-position:center;background-repeat:no-repeat}
@media(min-width:1000px){
 .game .topbar,html[lang=en] .game .topbar{height:48px;min-height:48px;padding:6px 18px;flex-wrap:nowrap;gap:9px}
 .game .brand{font-size:16px;letter-spacing:2px;gap:10px}.game .brand small{font-size:8px;letter-spacing:1px;margin-top:2px}.game .brand-mark{width:27px;height:27px;font-size:15px}.game .nav,html[lang=en] .game .nav{flex-wrap:nowrap;gap:0}.game .nav button,html[lang=en] .game .nav button{font-size:11px;padding:6px 7px}.game .language-switch button{font-size:10px;min-height:25px;padding:4px 7px}
 .game{padding-bottom:0;min-height:100svh}.game .layout{height:calc(100svh - 48px);min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 258px;padding:8px 12px;gap:10px}.game footer{display:none}
 .arena{height:100%;min-height:0;padding:8px;display:grid;grid-template-columns:112px minmax(0,1fr);grid-template-rows:32px 28px minmax(64px,1fr) 38px minmax(64px,1fr) 28px 54px 112px;gap:5px 10px;align-content:stretch}
 .battle-hud,html[lang=en] .battle-hud{grid-column:1/-1;grid-row:1;margin:0;grid-template-columns:135px 1fr minmax(130px,.85fr);padding:3px 9px;gap:8px;overflow:hidden}.duel-turn{display:flex;flex-wrap:nowrap;align-items:center;gap:7px}.duel-turn small{font-size:9px;letter-spacing:0;white-space:nowrap}.duel-turn strong,html[lang=en] .duel-turn strong{font-size:14px;letter-spacing:0;white-space:nowrap}.duel-turn>span{display:none}.phase-rail{grid-column:auto;grid-row:auto}.phase-rail li{min-height:23px;font-size:10px}.phase-rail li i{height:17px;width:17px;font-size:9px}.duel-pulse,html[lang=en] .duel-pulse{grid-column:auto;grid-row:auto;border:0;padding:0;max-width:none;font-size:10px;line-height:1.15}.phase-rail li span,html[lang=en] .phase-rail li span{font-size:10px}
 .master{display:flex;flex-direction:column;justify-content:center;gap:4px;min-height:0;padding:5px;overflow:hidden;text-align:center;border-radius:5px}.master-foe{grid-column:1;grid-row:2/4}.master-mine{grid-column:1;grid-row:5/7}.master .master-copy{max-width:none}.master-name,html[lang=en] .master-name{font-size:11px;line-height:1.2;letter-spacing:0}.master-sub{justify-content:center;font-size:9px;gap:4px}.master-sub span+span{padding-left:4px}.master .avatar{width:40px;height:40px;flex-shrink:0}.vitals{margin:0;display:grid;grid-template-columns:1fr;justify-items:center;gap:2px;text-align:center}.hp{justify-content:center;line-height:1.1}.hp b{font-size:24px}.hp small{font-size:9px}.master .track{width:80px;height:3px}.master .qi{grid-column:1;grid-row:auto;font-size:11px;margin:1px 0 0;padding:3px 7px}.master .qi i{width:5px;height:5px}.master::after{display:none}.master .grave-link{font-size:9px;padding:2px 3px;margin:0;width:100%;white-space:normal;border:0}.master .strike-master{font-size:12px;padding:7px}
 .foe-spells{grid-column:2;grid-row:2}.foe-row{grid-column:2;grid-row:3}.mine-row{grid-column:2;grid-row:5}.mine-spells{grid-column:2;grid-row:6}.row{min-height:0;margin:0;padding:0;gap:10px;border:0;background:none;align-items:center}.slot{height:100%;min-height:0;max-height:220px;font-size:10px;display:grid;place-content:center;gap:2px;border-radius:5px}.slot::before{position:static;font-size:24px;text-align:center}.slot::after{display:none}
 .row .unit.attack-form,.row .unit.defense-form,.row .unit.defense-form:not(.hidden-unit),html[lang=en] .row .unit{position:relative;display:grid;grid-template-columns:43% minmax(0,1fr);grid-template-rows:1fr 18px 27px;width:100%;height:100%;min-height:0;max-height:220px;max-width:none;padding:0;overflow:hidden;align-items:stretch;background:#10271df2;border-radius:5px}
 .row .unit .unit-art,.row .unit.attack-form .unit-art,.row .unit.defense-form:not(.hidden-unit) .unit-art{position:static;grid-column:1;grid-row:1/4;width:100%;height:100%;aspect-ratio:auto;min-height:0;align-self:stretch;border:0;border-right:1px solid #9cad7850;background-color:#0b1c14;background-image:var(--card-art);background-size:contain;background-repeat:no-repeat;background-position:center}.row .unit .unit-art::after{display:none}
 .row .unit .unit-title,.row .unit.defense-form:not(.hidden-unit) .unit-title,html[lang=en] .row .unit .unit-title{position:static;grid-column:2;grid-row:1;align-self:end;min-width:0;min-height:0;padding:5px 7px 3px;font-size:14px;line-height:1.2;letter-spacing:0;overflow-wrap:anywhere;text-shadow:none}
 .row .unit .unit-meta,.row .unit.defense-form:not(.hidden-unit) .unit-meta,html[lang=en] .row .unit .unit-meta{position:static;grid-column:2;grid-row:2;padding:0 7px;font-size:9px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
 .row .unit .unit-stats,.row .unit.defense-form:not(.hidden-unit) .unit-stats{position:static;grid-column:2;grid-row:3;padding:3px 7px 5px;font-size:14px;line-height:1.2;min-width:0;gap:4px;align-items:center}.row .unit .unit-stats span{gap:3px}.row .unit .unit-stats b,html[lang=en] .row .unit .unit-stats b{font-size:8px;padding:0 2px}.row .unit .unit-corner{display:none}.row .unit .board-chip{left:2px;top:2px;padding:2px 3px;font-size:8px;letter-spacing:0}
 .row .unit.hidden-unit,html[lang=en] .row .unit.hidden-unit{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:6px}.row .hidden-unit .card-back-seal{position:static;width:27px;height:27px;font-size:17px;flex-shrink:0}.row .unit.hidden-unit .unit-title,.row .unit.hidden-unit .unit-meta,.row .unit.hidden-unit .unit-stats{position:static;align-self:center;padding:1px 4px;font-size:11px;text-align:center}.row .unit.hidden-unit .unit-meta{font-size:9px}
 .spell-row{margin:0;padding:0;gap:10px}.spell-slot,html[lang=en] .spell-slot{height:28px;min-height:0;display:grid;grid-template-columns:13px minmax(0,1fr);grid-template-rows:1fr;gap:4px;padding:3px 5px;text-align:left}.spell-slot .slot-number{grid-column:1;grid-row:1;position:static;font-size:9px;opacity:.5}.spell-slot>span:not(.slot-number),html[lang=en] .spell-slot>span:not(.slot-number){grid-column:2;grid-row:1;font-size:11px;min-width:0;letter-spacing:0;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.spell-slot>small{display:none}.spell-slot.empty::after{display:none}.spell-slot .board-chip{right:1px;top:1px;left:auto;font-size:8px;padding:2px}
 .action-dock,html[lang=en] .action-dock{position:static;grid-column:1/-1;grid-row:4;transform:none;width:auto;margin:0;padding:3px 8px;gap:8px;flex-wrap:nowrap;z-index:15;backdrop-filter:none}.action-dock .turn-label{display:none}.action-dock .hint,html[lang=en] .action-dock .hint{font-size:11px;line-height:1.25;white-space:normal}.action-dock button,html[lang=en] .action-dock button{font-size:11px;min-height:28px;padding:6px 9px;white-space:nowrap}
 .hand-label{display:none}.play-controls{display:flex;grid-column:1/-1;grid-row:7;align-items:center;gap:12px;min-width:0;padding:5px 8px;border:1px solid #bca87566;border-radius:5px;background:#122b20f5;z-index:18}.play-controls>strong{font-size:12px;max-width:150px;min-width:0;color:#e7cd96;line-height:1.25;overflow-wrap:anywhere}.play-actions{display:flex;gap:6px;align-items:center;min-width:0;flex:1;justify-content:flex-end}.play-actions button,html[lang=en] .play-actions button{font-size:11px;padding:7px 8px;min-height:32px;line-height:1.15;white-space:normal}.play-actions .muted{font-size:11px}.play-controls.choosing{visibility:hidden}
 .hand{grid-column:1/-1;grid-row:8;gap:8px;margin:0;padding:3px 5px 6px;background:#0a1c14d9;border-radius:5px;overflow-y:hidden;scrollbar-width:thin;scroll-snap-type:none}.hand .card,html[lang=en] .hand .card{display:grid;grid-template-columns:1fr;grid-template-rows:57px 29px 19px;flex:0 0 99px;min-width:99px;width:99px;max-width:99px;min-height:0;height:105px;padding:0;gap:0;overflow:hidden}.hand .card .card-art{grid-column:1;grid-row:1;height:57px;min-height:0;aspect-ratio:auto;background-size:100% 100%,contain;background-color:#102319}.hand .card>strong,html[lang=en] .hand .card>strong{grid-column:1;grid-row:2;min-height:0;font-size:10px;line-height:1.15;letter-spacing:0;padding:2px 4px;align-content:center}.hand .card .description,html[lang=en] .hand .card .description{display:none}.hand .card .stats{grid-column:1;grid-row:3;font-size:9px;padding:2px 5px}.hand .card .cost{position:absolute;top:3px;left:3px;width:19px;height:19px;font-size:10px;z-index:4}.hand .card .type{display:none}.hand .card .action-chip,html[lang=en] .hand .card .action-chip{top:auto;bottom:48px;right:2px;padding:2px 3px;font-size:8px;letter-spacing:0}.hand .card.selected{outline-offset:-2px}.hand .card.quick-guide-target::after,html[lang=en] .hand .card.quick-guide-target::after{top:25px;left:3px;font-size:7px;padding:3px;max-width:90px}.hand .card:hover{transform:translateY(-2px)}
 .side{display:block;height:100%;min-height:0;padding:10px;overflow-y:auto;scrollbar-width:thin}.side>.inspect{position:static;padding:3px;border:0;background:none;box-shadow:none}.side>.inspect button,.side>.inspect .block-reason{display:none}.side>.inspect-art{display:none}.side .inspect-art{height:clamp(80px,21svh,190px);width:100%;aspect-ratio:auto;margin:6px 0 10px;background-size:contain;border:0;background-color:#10241a}.side .inspect strong,html[lang=en] .side .inspect strong{font-size:19px;line-height:1.2}.side .inspect p{font-size:12px;line-height:1.5;margin:8px 0}.side>h3,.side>.log,.side>p{display:none}.side .guide-panel,.side .quick-guide-coach,.side .tutorial-coach{margin:0 0 8px;padding:9px;font-size:11px}.side .guide-panel strong,.side .quick-guide-coach strong,.side .tutorial-coach strong{font-size:12px;line-height:1.35}.side .guide-panel p,.side .quick-guide-coach p,.side .tutorial-coach p{font-size:10px;line-height:1.4;margin:4px 0}.side .guide-panel small,.side .quick-guide-coach small,.side .tutorial-coach small{font-size:9px}.side .quick-guide-coach ol{flex-direction:row;grid-row:auto;margin:0 0 5px}.side .quick-guide-coach li{width:16px;height:16px;font-size:8px}.side .guide-panel>button{right:0;top:0}.side .tutorial-actions button{font-size:10px;padding:5px 7px}.side .tutorial-actions{justify-content:flex-start}.side .guide-seal,.side .quick-guide-seal,.side .tutorial-seal{display:none}.side .quick-guide-coach,.side .tutorial-coach{display:block}.side .quick-guide-coach>div{display:block}.mobile-inspect{display:none}
 .choice-prompt,html[lang=en] .choice-prompt{position:static;grid-column:1/-1;grid-row:7;transform:none;width:auto;max-width:none;margin:0;display:flex;gap:9px;align-items:center;padding:5px 8px;animation:none;z-index:19;backdrop-filter:none}.choice-prompt>span,.choice-prompt>em{display:none}.choice-prompt>strong,html[lang=en] .choice-prompt>strong{font-size:12px;max-width:150px;line-height:1.2;white-space:normal}.choice-prompt>p,html[lang=en] .choice-prompt>p{font-size:11px;line-height:1.3;white-space:normal;flex:1}.choice-prompt>button{font-size:11px;min-height:30px;padding:5px 8px}
 .discard-panel{position:absolute;bottom:175px;left:10%;right:10%;padding:10px;z-index:60}.toast{bottom:135px!important;max-width:80vw;font-size:12px}.camera-focus{outline-width:1px!important;outline-offset:0;box-shadow:0 0 13px #d8b96f66!important}.quick-guide-target{outline-width:2px!important;outline-offset:-2px!important;box-shadow:0 0 14px #d8b96f66!important}
}
@media(min-width:1000px) and (max-height:680px){
 .master .avatar,.master .master-sub{display:none}.master-name,html[lang=en] .master-name{font-size:10px;line-height:1.1}.master .master-copy{gap:0}.master .hp b{font-size:22px}.master .grave-link{font-size:8px;padding:1px}.master{gap:3px}.side .inspect-art{height:95px}.side .inspect strong,html[lang=en] .side .inspect strong{font-size:17px}.side .inspect p{font-size:11px;margin:6px 0}.side .guide-panel p{display:none}.side .guide-panel{padding-right:22px}.side .quick-guide-coach p{display:none}.side .quick-guide-coach>button{padding:4px 7px;margin-top:5px;font-size:9px}.side .tutorial-coach p{font-size:10px}.side .review-log{padding:6px;font-size:10px;margin-top:5px}.row .unit .unit-title,html[lang=en] .row .unit .unit-title{font-size:11px;padding:3px 5px}.row .unit .unit-meta,html[lang=en] .row .unit .unit-meta{font-size:8px;padding:0 5px}.row .unit .unit-stats{font-size:12px;padding:2px 5px}.row .unit.hidden-unit .unit-title{font-size:10px}.row .unit.hidden-unit .card-back-seal{width:20px;height:20px;font-size:13px}
}
@media(min-width:1000px) and (min-height:780px){
 .arena{grid-template-rows:36px 34px minmax(90px,1fr) 42px minmax(90px,1fr) 34px 58px 151px;gap:7px 12px}.hand .card,html[lang=en] .hand .card{grid-template-rows:92px 29px 20px;height:141px;flex-basis:119px;min-width:119px;max-width:119px}.hand .card .card-art{height:92px}.hand .card .action-chip{bottom:51px}.spell-slot,html[lang=en] .spell-slot{height:34px}.play-actions button,html[lang=en] .play-actions button{font-size:12px;padding:9px 10px}.play-controls>strong{font-size:14px}
}
@media(min-width:1000px) and (max-height:519px){.game .layout{height:472px}.game{min-height:520px}}
@media(max-width:999px){.play-controls{display:none}.side{display:none}.mobile-inspect{display:block}.game .layout{display:block;height:auto}.choice-prompt{position:fixed}.unit-art[data-has-art="1"]{background-size:contain;background-image:var(--card-art);background-color:#102319}}

/* Keep counter decisions above camera highlights and compact hidden cards. */
.response.camera-focus{z-index:65!important}
@media(min-width:1000px){
 .row .unit.hidden-unit{min-height:0!important;max-width:none}
 .side .quick-guide-coach small,.side .quick-guide-coach strong{display:block}
 .play-summary{max-width:190px;min-width:0;line-height:1.2}
 .play-summary>strong{display:block;font-size:12px;color:#e7cd96;overflow-wrap:anywhere}
 .play-summary>small{display:block;margin-top:3px;font-size:10px;color:#dfb28d}
 .play-controls .mulligan-control{font-size:11px}
 .response:not(.discard-panel){max-height:160px;overflow-y:auto}
}
