/* 청구/EDI 화면 모양. 위에 조건 줄 3줄(30px), 아래 왼쪽 명세서 목록 860px, 오른쪽 명세서 내용 */
.claim > .tabs-head { padding-top: 2px; }
.claim > .tabs-body { display: flex; flex-direction: column; overflow: hidden; padding: 6px 0 0; border: 0; background: transparent; }
.claim > .tabs-body > * { flex: 1 1 auto; min-height: 0; min-width: 0; }
.claim-main { display: flex; flex-direction: column; gap: 6px; }
.claim-top { display: flex; gap: 6px; flex: 0 0 auto; }
.claim-cond { flex: 0 0 860px; border: 1px solid var(--line); background: #fff; }
.claim-cond.wide { flex: 1 1 auto; }
.claim-cond-row { display: flex; height: 30px; border-bottom: 1px solid var(--line-soft); }
.claim-cond-row:last-child { border-bottom: 0; }
.claim-cond-lbl { flex: 0 0 78px; display: flex; align-items: center; justify-content: center; background: var(--head); border-right: 1px solid var(--line); font-weight: 700; }
.claim-cond-body { flex: 1 1 auto; min-width: 0; display: flex; align-items: center; gap: 12px; padding: 0 8px; white-space: nowrap; overflow: hidden; }
.claim-cond-body label { display: inline-flex; align-items: center; gap: 3px; cursor: pointer; }
.claim-cond-body label.on { color: var(--blue); font-weight: 700; }
.claim-cond-body input[type=radio], .claim-cond-body input[type=checkbox] { margin: 0; }
.claim-cond-body .inp { width: auto; }
.claim-cond-body .gap { width: 14px; flex: 0 0 14px; }
.claim-act { flex: 1 1 auto; min-width: 0; border: 1px solid var(--line); background: #fff; }
.claim-act-row { display: flex; align-items: center; gap: 4px; height: 30px; padding: 0 6px; border-bottom: 1px solid var(--line-soft); }
.claim-act-row:last-child { border-bottom: 0; }
.claim-act-row .btn { padding: 3px 7px; }
.claim-note { font-size: 11px; line-height: 1.25; color: var(--red); white-space: normal; }
.claim-split { flex: 1 1 auto; min-height: 0; display: grid; grid-template-columns: 860px minmax(0, 1fr); grid-template-rows: minmax(0, 1fr); gap: 6px; }
.claim-split.even { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
.claim-split > .panel > .panel-body { display: flex; flex-direction: column; gap: 6px; overflow: hidden; }
.claim-split > .panel > .panel-body > .grid-wrap { flex: 1 1 auto; }
.claim-sum { flex: 0 0 auto; }
.claim-sum:empty { display: none; }
.claim-sum th, .claim-sum td { padding: 2px 5px; text-align: center; height: 24px; }
.claim-sum td { font-variant-numeric: tabular-nums; }
.claim-msg { padding: 0 2px; color: var(--muted); flex: 1 1 auto; min-width: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.claim-formrow > .claim-msg { font-size: 11px; }
.claim-list { flex: 1 1 auto; min-width: 0; }
.claim-list td { white-space: nowrap; height: 24px; }
.claim-list td.kcd { max-width: 190px; overflow: hidden; text-overflow: ellipsis; }
.claim-list input[type=checkbox] { margin: 0; vertical-align: middle; }
.claim-dh { flex: 0 0 auto; }
.claim-dh th { width: 66px; padding: 2px 5px; }
.claim-dh td { padding: 2px 6px; height: 24px; }
.claim-dh .inp { min-height: 20px; padding: 0 3px; }
.claim-lines { flex: 1 1 0; min-height: 72px; }
.claim-lines td { height: 24px; }
.claim-lines tr.exam td { color: var(--muted); }
.claim-lines .code { color: var(--muted); }
.claim-lines tr.band td { background: #fdebd6; border-bottom: 1px solid #e6c19e; }
.claim-lines tr.band:hover td { background: #fdebd6; }
.claim-tot { flex: 0 0 auto; display: flex; gap: 14px; align-items: center; padding: 3px 6px; border: 1px solid var(--line-soft); background: #f6f8fb; white-space: nowrap; }
.claim-checks { flex: 0 0 auto; max-height: 190px; overflow: auto; border: 1px solid var(--line-soft); }
.claim-checks-head { position: sticky; top: 0; background: #eef1f6; border-bottom: 1px solid var(--line); padding: 3px 6px; font-weight: 700; display: flex; gap: 8px; align-items: center; }
.claim-check { display: grid; grid-template-columns: 40px 42px minmax(0, 1fr) auto; gap: 6px; align-items: center; padding: 2px 6px; border-bottom: 1px solid var(--line-soft); min-height: 24px; }
.claim-check .why { font-size: 11px; color: var(--muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.claim-review { flex: 0 0 auto; display: flex; gap: 6px; align-items: center; padding: 3px 6px; border: 1px solid var(--line-soft); }
.claim-review .inp { width: auto; }
.claim-rules td { vertical-align: top; }
.claim-rules .src { font-size: 11px; color: var(--muted); word-break: break-all; }
.claim-formrow { display: flex; gap: 4px; align-items: center; flex: 0 0 auto; flex-wrap: wrap; }
.claim-formrow .inp { width: auto; }
.claim-bar { display: inline-block; height: 10px; background: #8fa9d4; vertical-align: middle; }
.claim-stats { display: grid; grid-template-columns: minmax(0, 3fr) minmax(0, 2fr); grid-template-rows: minmax(0, 1fr); gap: 6px; flex: 1 1 auto; min-height: 0; }
.claim-stats .col { min-height: 0; }
.claim-foot td { font-weight: 700; background: #f6f8fb; }
.claim .grid-wrap > table.grid { table-layout: fixed; }
.claim .grid-wrap > table.grid td { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.claim .claim-lines > table.grid td, .claim .claim-rules td { white-space: normal; }
.claim-formrow.nowrap { flex-wrap: nowrap; }
