/* 요청 11 — 전투 화면. 표시만. 처치 연출(ev-dying, evDie/evpDie)과 그 카드 크기 규칙은 건드리지 않는다. */

/* ───────── 폰 (≤900px) ───────── */
@media (max-width:900px){
 body[data-p1-screen="combat"] #app#app .b5-mobile-frame.v11{padding-bottom:calc(96px + env(safe-area-inset-bottom))!important}

 /* [B] 체력 한 줄 막대 — 머리 띠 바로 아래 */
 body[data-p1-screen="combat"] #app#app .v11 .v11-hpline{height:3px;background:#2a2924;margin:0 0 6px}
 body[data-p1-screen="combat"] #app#app .v11 .v11-hpline>i{display:block;height:100%;background:#7eaa88}
 body[data-p1-screen="combat"] #app#app .v11 .v11-hpline.mid>i{background:#c4ad65}
 body[data-p1-screen="combat"] #app#app .v11 .v11-hpline.low>i,
 body[data-p1-screen="combat"] #app#app .v11 .v11-hpline.crit>i{background:#b85f52}

 /* [A] 상황판 2줄 */
 body[data-p1-screen="combat"] #app#app .v11 .chead.v11-head{position:relative;padding:10px 12px 8px!important;min-height:0!important;height:auto!important;background:#1b1b17!important;border:1px solid #3b3a33!important;border-radius:0!important}
 body[data-p1-screen="combat"] #app#app .v11 .v11-sit-l1{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;padding-right:64px;font-size:13px;color:#a99f88;line-height:1.35}
 body[data-p1-screen="combat"] #app#app .v11 .v11-sit-l1 b{color:#e8dcb5;font-size:14px;font-weight:600}
 body[data-p1-screen="combat"] #app#app .v11 .v11-sit-l1 em{font-style:normal;color:#e8dcb5;font-weight:600}
 body[data-p1-screen="combat"] #app#app .v11 .v11-sit .dist-track{height:12px!important;margin:8px 0 4px!important;padding:0!important}
 body[data-p1-screen="combat"] #app#app .v11 .v11-sit .dist-track .tick span{display:none!important}
 body[data-p1-screen="combat"] #app#app .v11 .v11-sit .dist-track :is(.ln){top:4px!important}
 body[data-p1-screen="combat"] #app#app .v11 .v11-sit .dist-track :is(.eff){top:1px!important}
 body[data-p1-screen="combat"] #app#app .v11 .v11-sit .dist-track :is(.tick,.marker){top:0!important}
 body[data-p1-screen="combat"] #app#app .v11 .v11-sit-l2{display:flex;justify-content:space-between;gap:10px;font-size:13px;line-height:1.35}
 body[data-p1-screen="combat"] #app#app .v11 .v11-sit-l2.ok>span:first-child{color:#7eaa88}
 body[data-p1-screen="combat"] #app#app .v11 .v11-sit-l2.bad>span:first-child{color:#d0806f}
 body[data-p1-screen="combat"] #app#app .v11 .v11-sit-l2>span:last-child{color:#8d8574;white-space:nowrap}
 body[data-p1-screen="combat"] #app#app .v11 .v11-sit-more>summary{position:absolute;top:8px;right:10px;list-style:none;cursor:pointer;min-height:30px;padding:4px 10px;border:1px solid #3b3a33;background:#161612;color:#c9bfa5;font-size:12px;line-height:20px}
 body[data-p1-screen="combat"] #app#app .v11 .v11-sit-more>summary::-webkit-details-marker{display:none}
 body[data-p1-screen="combat"] #app#app .v11 .v11-sit-more>summary::after{content:' ▾'}
 body[data-p1-screen="combat"] #app#app .v11 .v11-sit-more[open]>summary::after{content:' ▴'}
 body[data-p1-screen="combat"] #app#app .v11 .v11-sit-body{margin-top:8px;padding-top:8px;border-top:1px solid #2a2924}

 /* [C] 표적 카드 — 2열, 초상화 46px + 이름(줄바꿈) + 병과 + 체력 + 명중률 */
 body[data-p1-screen="combat"] #app#app .v11 .evp-sc{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px!important;overflow:visible!important}
 body[data-p1-screen="combat"] #app#app .v11 .evp-card:not(.ev-dying){position:relative;display:grid!important;grid-template-columns:46px minmax(0,1fr);grid-template-areas:"f n" "b b";column-gap:8px;row-gap:6px;width:auto!important;min-width:0!important;flex-basis:auto!important;min-height:0!important;padding:8px!important;border:1px solid #3b3a33!important;background:#161612!important}
 body[data-p1-screen="combat"] #app#app .v11 .evp-card.sel:not(.ev-dying){border:2px solid #e8dcb5!important;padding:7px!important}
 body[data-p1-screen="combat"] #app#app .v11 .evp-card:not(.ev-dying) .evp-f{grid-area:f;width:46px!important;height:46px!important;overflow:hidden}
 body[data-p1-screen="combat"] #app#app .v11 .evp-card:not(.ev-dying) .evp-f img{width:100%;height:100%;object-fit:cover}
 body[data-p1-screen="combat"] #app#app .v11 .evp-card:not(.ev-dying) .n{position:absolute;left:4px;top:3px;z-index:1;font-size:10px;font-style:normal;color:#e8dcb5;background:rgba(18,18,15,.8);padding:0 3px}
 body[data-p1-screen="combat"] #app#app .v11 .evp-card:not(.ev-dying) .v11-cn{grid-area:n;min-width:0;display:flex;flex-direction:column;justify-content:center;gap:2px}
 body[data-p1-screen="combat"] #app#app .v11 .evp-card:not(.ev-dying) .v11-cn b{color:#e8dcb5;font-size:13px;font-weight:600;line-height:1.25;word-break:keep-all;overflow-wrap:anywhere;white-space:normal}
 body[data-p1-screen="combat"] #app#app .v11 .evp-card:not(.ev-dying) .v11-cn small{color:#8d8574;font-size:11px}
 body[data-p1-screen="combat"] #app#app .v11 .evp-card:not(.ev-dying) .evp-b{grid-area:b;display:grid!important;grid-template-columns:1fr auto;align-items:center;gap:4px 8px;width:auto!important}
 body[data-p1-screen="combat"] #app#app .v11 .evp-card:not(.ev-dying) .evp-b>:first-child{grid-column:1/-1}
 body[data-p1-screen="combat"] #app#app .v11 .evp-card:not(.ev-dying) .evp-b :is(b,strong){font-size:13px!important;white-space:nowrap!important}
 body[data-p1-screen="combat"] #app#app .v11 .evp-card:not(.ev-dying) .uiv8-enemy-name{display:none!important}

 /* [C] 선택한 적 요약 줄 */
 body[data-p1-screen="combat"] #app#app .v11 .evp-det{max-height:none!important;overflow:visible!important;border-radius:0!important}
 body[data-p1-screen="combat"] #app#app .v11 .evp-det>summary{display:flex;align-items:center;gap:8px;min-height:44px;padding:0 12px;list-style:none;cursor:pointer;color:#c9bfa5}
 body[data-p1-screen="combat"] #app#app .v11 .evp-det>summary::-webkit-details-marker{display:none}
 body[data-p1-screen="combat"] #app#app .v11 .evp-det>summary b{color:#e8dcb5;font-size:14px;font-weight:600}
 body[data-p1-screen="combat"] #app#app .v11 .v11-chip{border:1px solid #3b3a33;padding:1px 6px;font-size:11px;color:#a99f88}
 body[data-p1-screen="combat"] #app#app .v11 .v11-grow{flex:1}
 body[data-p1-screen="combat"] #app#app .v11 .v11-more{font-size:12px;color:#a99f88}
 body[data-p1-screen="combat"] #app#app .v11 .v11-more::after{content:' ▾'}
 body[data-p1-screen="combat"] #app#app .v11 .evp-det[open] .v11-more::after{content:' ▴'}
 body[data-p1-screen="combat"] #app#app .v11 .v11-intent{margin:-2px 0 6px;padding:6px 12px;border:1px solid #3b3a33;border-top:0;background:#161612;color:#c4ad65;font-size:12px;line-height:1.4}

 /* [B] 내 상태 줄 — 무기·탄약·상태 칩만 */
 body[data-p1-screen="combat"] #app#app .v11 .v11-mini{display:flex!important;align-items:center;gap:8px;min-height:40px;padding:0 12px!important}
 body[data-p1-screen="combat"] #app#app .v11 .v11-mini>b,
 body[data-p1-screen="combat"] #app#app .v11 .v11-mini>.hpn,
 body[data-p1-screen="combat"] #app#app .v11 .v11-mini>.bar.hp{display:none!important}
 body[data-p1-screen="combat"] #app#app .v11 .v11-mini .mg{display:flex;align-items:baseline;justify-content:space-between;flex:1;gap:8px;color:#a99f88;font-size:13px}
 body[data-p1-screen="combat"] #app#app .v11 .v11-mini .mg b{color:#e8dcb5;font-size:18px;font-weight:600}
 body[data-p1-screen="combat"] #app#app .v11 .v11-mini .chip{border-radius:0!important}

 /* [D] 부위 선택 — 붙은 세그먼트 */
 body[data-p1-screen="combat"] #app#app .v11 .actpanel .parts{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:0!important;margin-bottom:8px}
 body[data-p1-screen="combat"] #app#app .v11 .actpanel .parts .part{min-height:44px;margin-left:-1px;border-radius:0!important;border:1px solid #3b3a33!important;background:#161612!important;justify-content:center}
 body[data-p1-screen="combat"] #app#app .v11 .actpanel .parts .part.on{position:relative;z-index:1;border-color:#b85f52!important;background:#2a1b17!important}
 body[data-p1-screen="combat"] #app#app .v11 .actpanel .parts .part .pc{font-size:11px;color:#8d8574}

 /* [F] 행동 단추 — 행동력 칸 → 이름 → 보조 문구, 단축키 숨김 */
 body[data-p1-screen="combat"] #app#app .v11 .actpanel .act:not(.item):not(.sup){display:grid!important;grid-template-rows:auto auto auto;align-content:start;justify-items:start;text-align:left;gap:3px;min-height:64px!important;padding:8px 10px!important}
 body[data-p1-screen="combat"] #app#app .v11 .actpanel .act .akey{display:none!important}
 body[data-p1-screen="combat"] #app#app .v11 .actpanel .act:not(.item):not(.sup) .apc{position:static!important;order:-1;display:flex;gap:3px}
 body[data-p1-screen="combat"] #app#app .v11 .actpanel .act:not(.item):not(.sup) .an{font-size:15px;font-weight:600;color:#e8dcb5;white-space:normal;word-break:keep-all;line-height:1.2}
 body[data-p1-screen="combat"] #app#app .v11 .actpanel .act .v11-sub{font-size:11px;color:#8d8574;line-height:1.2;white-space:normal}
 body[data-p1-screen="combat"] #app#app .v11 .actpanel .acts.g-move{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important}
 body[data-p1-screen="combat"] #app#app .v11 .actpanel .acts.g-move>.act{width:auto!important;min-width:0!important}

 /* [E] 아래 고정 «턴 종료» — 안전영역 + 위쪽 페이드, 뒤 내용이 비치지 않게 */
 body[data-p1-screen="combat"] #app#app .v11 .evp-end{position:fixed!important;left:0;right:0;bottom:0;z-index:40;padding:18px 12px calc(12px + env(safe-area-inset-bottom))!important;background:linear-gradient(to bottom,rgba(18,18,15,0),#121210 16px)!important;border:0!important}
}

/* ───────── PC (≥901px) [H] 행동 칸 확대 · 턴 종료 자리 분리 ───────── */
@media (min-width:901px){
 /* 적 목록은 내용 높이만큼(최소 440px 고정 해제), 많으면 목록 안에서만 스크롤 */
 body[data-p1-screen="combat"] #app#app .combat-desk .layout.combat.ecb .hostpanel{min-height:0!important;height:auto!important;max-height:min(44vh,420px)!important}
 body[data-p1-screen="combat"] #app#app .combat-desk .layout.combat.ecb .hostpanel .ev-list{flex:0 1 auto!important;max-height:none!important;overflow-y:auto!important;min-height:0}
 body[data-p1-screen="combat"] #app#app .combat-desk .layout.combat.ecb .hostpanel>*{flex-shrink:1}
 body[data-p1-screen="combat"] #app#app .combat-desk .layout.combat.ecb{grid-template-rows:max-content max-content 1fr!important;height:auto!important;align-items:start}
 /* 양옆 열(내 상태·교전 기록)은 두 줄에 걸쳐 놓아 가운데 열 높이를 잡아끌지 않게 */
 body[data-p1-screen="combat"] #app#app .combat-desk .layout.combat.ecb>:is(.col.side,.col.ops){grid-row:1 / span 3!important;align-self:start}
 /* 행동 칸: 안쪽 스크롤 없이 전부 펼침 */
 body[data-p1-screen="combat"] #app#app .combat-desk .layout.combat.ecb .actpanel{height:auto!important;max-height:none!important;overflow:visible!important;display:flex!important;flex-direction:column!important;gap:8px}
 body[data-p1-screen="combat"] #app#app .combat-desk .layout.combat.ecb .actpanel .act{min-height:64px!important}
 body[data-p1-screen="combat"] #app#app .combat-desk .layout.combat.ecb .actpanel .act .an{font-size:15px}
 /* 턴 종료: 행동 칸 위에 떠서 단추를 가리지 않게 — 맨 아래 자기 줄 */
 body[data-p1-screen="combat"] #app#app .combat-desk .layout.combat.ecb .actpanel .endturn{position:static!important;order:99;margin-top:4px!important;width:100%}
}

/* ───────── 중간 폭 (901~1279px) [I] — 세 열이 들어가지 않아 기록·무전이 내 상태 위로 겹치던 것 ─────────
   두 열(내 상태 | 적·행동)로 놓고, 교전 기록·무전은 그 아래 전체 폭에 나란히 둔다. */
@media (min-width:901px) and (max-width:1279px){
 body[data-p1-screen="combat"] #app#app .combat-desk .layout.combat.ecb{grid-template-columns:minmax(220px,260px) minmax(0,1fr)!important;grid-template-rows:max-content max-content max-content!important}
 body[data-p1-screen="combat"] #app#app .combat-desk .layout.combat.ecb>.col.side{grid-column:1!important;grid-row:1 / span 2!important}
 body[data-p1-screen="combat"] #app#app .combat-desk .layout.combat.ecb .hostpanel{grid-column:2!important;grid-row:1!important}
 body[data-p1-screen="combat"] #app#app .combat-desk .layout.combat.ecb .actpanel{grid-column:2!important;grid-row:2!important}
 body[data-p1-screen="combat"] #app#app .combat-desk .layout.combat.ecb>.col.ops{grid-column:1 / -1!important;grid-row:3!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;align-items:start;height:auto!important}
 body[data-p1-screen="combat"] #app#app .combat-desk .layout.combat.ecb>.col.ops>*{min-width:0;height:auto!important;max-height:420px}
 /* 행동 단추가 좁아 글자가 세로로 꺾이던 것 — 칸을 넓히고 줄 수를 늘린다 */
 body[data-p1-screen="combat"] #app#app .combat-desk .layout.combat.ecb .actpanel .acts{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important}
 body[data-p1-screen="combat"] #app#app .combat-desk .layout.combat.ecb .actpanel .act{width:auto!important;min-width:0!important}
 body[data-p1-screen="combat"] #app#app .combat-desk .layout.combat.ecb .actpanel .act .an{white-space:normal;word-break:keep-all}
 body[data-p1-screen="combat"] #app#app .combat-desk .layout.combat.ecb .actpanel .agrp{display:block!important}
 body[data-p1-screen="combat"] #app#app .combat-desk .layout.combat.ecb .actpanel .parts{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}
 body[data-p1-screen="combat"] #app#app .combat-desk .layout.combat.ecb .actpanel .parts .part{margin-left:-1px}
 /* 행동 칸 안의 묶음이 칸 높이에 눌려 겹치던 것 — 묶음은 줄어들지 않고 제 높이를 갖는다 */
 body[data-p1-screen="combat"] #app#app .combat-desk .layout.combat.ecb .actpanel>*{flex:none!important;height:auto!important;min-height:0}
 body[data-p1-screen="combat"] #app#app .combat-desk .layout.combat.ecb .actpanel .agrp>.alab{display:block;margin-bottom:6px}
}

/* ───────── 작전 결과 보고 [J] ─────────
   PC: 오른쪽에 비어 있던 열을 없애고 가운데 정렬·넓게(최대 1360px). 안쪽 스크롤 없이 페이지가 내려가게.
   보상 금액은 크게, 현장 판단은 칩으로, 수집품 «+1» 은 줄이 꺾이지 않게. */
#app#app .layout.combat.ecr .dban .dt{font-weight:400!important;font-synthesis:none}
#app#app .layout.combat.ecr dl.v11-kv{display:block;margin:0}
#app#app .layout.combat.ecr dl.v11-kv dt.v11-same{display:none}
#app#app .layout.combat.ecr dd.v11-chips{display:flex;flex-wrap:wrap;gap:6px;margin:0}
#app#app .layout.combat.ecr .v11-kchip{display:inline-flex;align-items:center;min-height:26px;padding:3px 9px;border:1px solid rgba(214,170,74,.45);background:rgba(214,170,74,.08);color:var(--amber,#d6aa4a);font-size:13px;line-height:1.2;white-space:nowrap}
#app#app .layout.combat.ecr .v11-kchip.neg{border-color:rgba(184,95,82,.5);background:rgba(184,95,82,.08);color:#d98a7c}
#app#app .layout.combat.ecr .qi{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px}
#app#app .layout.combat.ecr .qi>b{white-space:normal;word-break:keep-all;min-width:0}
#app#app .layout.combat.ecr .qi>span{white-space:nowrap;min-width:max-content}
@media (min-width:901px){
 /* 결과 보고는 화면 위에 고정된 칸이다 — 칸 안에서 아래로 내려 읽게 */
 #app#app .layout.combat.ecr{grid-template-columns:minmax(0,1fr)!important;grid-template-rows:max-content!important;max-width:min(1360px,calc(100vw - 32px))!important;margin-inline:auto!important;overflow-y:auto!important;overscroll-behavior:contain;align-content:start}
 #app#app .layout.combat.ecr>.col.main{grid-column:1 / -1!important;height:auto!important;max-height:none!important;overflow:visible!important;max-width:none!important}
 #app#app .layout.combat.ecr>.col.main>.panel,#app#app .layout.combat.ecr>.col.main>.panel>.panel-b{flex:none!important;height:auto!important;max-height:none!important;overflow:visible!important}
 #app#app .layout.combat.ecr .er-cols{grid-template-columns:minmax(260px,.9fr) minmax(0,1.5fr) minmax(260px,1fr)!important;height:auto!important;max-height:none!important;overflow:visible!important;align-items:start!important;flex:none!important}
 #app#app .layout.combat.ecr .er-col{height:auto!important;max-height:none!important;overflow:visible!important}
 #app#app .layout.combat.ecr .er-notes{height:auto!important;max-height:none!important}
 #app#app .layout.combat.ecr .er-notes .er-ns{max-height:none!important;overflow:visible!important}
 #app#app .layout.combat.ecr .lootgrid{grid-template-columns:repeat(auto-fill,minmax(136px,1fr))!important}
 #app#app .layout.combat.ecr .qgrid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))!important}
 #app#app .layout.combat.ecr .dpay{min-width:240px}
 #app#app .layout.combat.ecr .dpay .b5-pay{font-size:30px!important;line-height:1.15;display:flex;align-items:baseline;justify-content:flex-end;gap:2px}
 #app#app .layout.combat.ecr .dpay .b5-pay>small{font-size:12px;margin-right:auto;align-self:flex-start}
 #app#app .layout.combat.ecr .dpay .b5-pay .mshort{font-size:inherit!important}
 #app#app .layout.combat.ecr .dpay>span{font-size:13px}
 #app#app .layout.combat.ecr .er-radio img{flex:none}
 #app#app .layout.combat.ecr .er-foot{position:static!important}
}
@media (min-width:901px) and (max-width:1279px){
 #app#app .layout.combat.ecr .er-cols{grid-template-columns:minmax(240px,.85fr) minmax(0,1.4fr)!important}
 #app#app .layout.combat.ecr .er-col.er-r{grid-column:1 / -1}
}
/* 폰: 보상 칸이 좁게 눌리던 것 — 보상은 아래 한 줄로 */
@media (max-width:900px){
 #app#app .layout.combat.ecr .dban{flex-wrap:wrap}
 #app#app .layout.combat.ecr .dpay{flex:1 1 100%;min-width:0;text-align:left}
 #app#app .layout.combat.ecr .dpay .b5-pay{font-size:24px!important}
 #app#app .layout.combat.ecr .dpay .b5-pay .mshort{font-size:inherit!important}
}

/* 폰: 아래 고정 «턴 종료» 띠(약 78px)와 위 고정 머리 띠 때문에, 단추로 화면을 옮길 때(scrollIntoView·키보드 이동)
   단추가 띠 뒤에 멈추던 것 → 단추마다 위·아래 여유를 두어 늘 띠 밖에 멈추게 한다 (Codex 검증 VERIFY.md 의 «엄폐» 가림 1건) */
@media (max-width:900px){
 html:has(body[data-p1-screen="combat"] .b5-mobile-frame.v11){scroll-padding-top:calc(var(--p1-header,64px) + 8px);scroll-padding-bottom:calc(96px + env(safe-area-inset-bottom,0px))}
 body[data-p1-screen="combat"] #app#app .v11 .actpanel :is(.act,.part){scroll-margin-top:calc(var(--p1-header,64px) + 8px);scroll-margin-bottom:calc(96px + env(safe-area-inset-bottom,0px))}
}
