/* ============================================================
   app-overrides.css — Claude 2026-06-03
   은행거래내역 상단 압축 + 다크모드 색 조화 + 헤더필터 한줄/아이콘.
   app.css 뒤에 로드되어 덮어씀. (app.css 원본 미수정)
   ============================================================ */

/* ---------- A. 상단 띠 세로 압축 ---------- */
#tab-bank-ledger > .ledger-subtabs { min-height: 22px !important; }
.ledger-subtabs button { padding: 2px 10px !important; }
.bank-review-toolbar { margin-bottom: 2px !important; }
.bank-ledger-year-row, .bank-ledger-month-row { margin: 0 !important; }
.bank-ledger-year-row button,
.bank-ledger-month-row button { padding-top: 1px !important; padding-bottom: 1px !important; }
.bank-ledger-company-filter { padding: 0 0 1px !important; }
@media (min-width: 768px) {
  .bank-ledger-company-filter button { min-height: 20px; padding: 1px 9px; }
}
.bank-sheet-tab { padding: 1px 9px 1px !important; }
.bank-sheet-tab small { font-size: 9px !important; line-height: 1.05 !important; }
.bank-ledger-summary { margin: 1px 0 !important; }

/* ---------- B. 다크모드 색 조화 ---------- */
html[data-theme="dark"] { --warn: #d6a23e; }
html[data-theme="dark"] #bankLedgerBody tr.bank-ledger-subject-review-row > td { background: rgba(248,113,113,0.12) !important; }
html[data-theme="dark"] #bankLedgerBody tr.bank-ledger-subject-review-row:hover > td { background: rgba(248,113,113,0.20) !important; }
html[data-theme="dark"] .ledger-subject-input,
html[data-theme="dark"] .bank-ledger-manager-input,
html[data-theme="dark"] #bankLedgerBody tr.bank-ledger-subject-review-row input:not([type="checkbox"]),
html[data-theme="dark"] #bankLedgerBody tr.bank-ledger-subject-review-row select { border-color: #7a5e2e !important; }

/* ---------- C. 헤더 필터: 라벨 + 필터아이콘 한 줄 ---------- */
.bank-ledger-header-filter {
  display: grid !important;
  grid-template-columns: 22px minmax(0, 1fr) 22px !important;
  align-items: center !important;
  gap: 0 !important;
}
.bank-ledger-header-filter .table-sort-button {
  grid-column: 2 !important;
  width: 100% !important;
  min-width: 0 !important;
  text-align: center !important;
}
.bank-ledger-filter-controls {
  display: flex !important;
  grid-column: 3 !important;
  justify-content: flex-end !important;
  min-width: 22px !important;
}
.bank-ledger-value-filter-button {
  width: 22px !important;
  min-width: 22px !important;
  min-height: 19px !important;
  padding: 0 !important;
  font-size: 0 !important;            /* "필터" 글자 숨기고 아이콘만 */
  line-height: 0 !important;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path fill='%239aa5b1' d='M1.5 2.2h13a.5.5 0 0 1 .38.82L10 8.7v4.1a.5.5 0 0 1-.28.45l-2.5 1.2A.5.5 0 0 1 6.5 14V8.7L1.12 3.02A.5.5 0 0 1 1.5 2.2z'/></svg>") !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: 12px 12px !important;
}
.bank-ledger-value-filter-button.active {
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path fill='%232dd4bf' d='M1.5 2.2h13a.5.5 0 0 1 .38.82L10 8.7v4.1a.5.5 0 0 1-.28.45l-2.5 1.2A.5.5 0 0 1 6.5 14V8.7L1.12 3.02A.5.5 0 0 1 1.5 2.2z'/></svg>") !important;
}

/* ---------- D. 은행거래내역 색상 정돈 ---------- */
.bank-ledger-table tr.bank-ledger-revenue-row > td,
.bank-ledger-table tr.bank-ledger-manager-row > td.manager-cell,
.bank-ledger-table tr.bank-ledger-manager-row > td.manager-memo-cell {
  background: inherit !important;
}

.bank-ledger-table tr.bank-ledger-revenue-row:hover > td,
.bank-ledger-table tr.bank-ledger-manager-row:hover > td.manager-cell,
.bank-ledger-table tr.bank-ledger-manager-row:hover > td.manager-memo-cell {
  background: #f6fbff !important;
}

.bank-ledger-table tr.bank-ledger-revenue-row td.select-cell,
.bank-ledger-table tr.bank-ledger-revenue-row td:nth-child(2),
.bank-ledger-table tr.bank-ledger-manager-row td.select-cell,
.bank-ledger-table tr.bank-ledger-manager-row td:nth-child(2) {
  background: #fff !important;
}

.bank-ledger-table tr.bank-ledger-revenue-row:hover td.select-cell,
.bank-ledger-table tr.bank-ledger-revenue-row:hover td:nth-child(2),
.bank-ledger-table tr.bank-ledger-manager-row:hover td.select-cell,
.bank-ledger-table tr.bank-ledger-manager-row:hover td:nth-child(2) {
  background: #f6fbff !important;
}

.bank-ledger-table tr.bank-ledger-revenue-row .manager-select,
.bank-ledger-table tr.bank-ledger-manager-row .manager-select,
.bank-ledger-manager-input,
.manager-custom-input {
  background: #ffffff !important;
  border-color: #cbd5e1 !important;
  box-shadow: none !important;
}

.bank-ledger-table tr.bank-ledger-manager-row .manager-cell {
  box-shadow: none !important;
}

.bank-ledger-table tr.bank-ledger-revenue-row .manager-select:focus,
.bank-ledger-table tr.bank-ledger-manager-row .manager-select:focus,
.bank-ledger-manager-input:focus,
.manager-custom-input:focus {
  border-color: #0f766e !important;
  box-shadow: 0 0 0 2px rgba(15, 118, 110, 0.12) !important;
  outline: none !important;
}

#bankLedgerBody tr.bank-ledger-subject-review-row > td {
  background: #fff1f2 !important;
}

#bankLedgerBody tr.bank-ledger-subject-review-row:hover > td {
  background: #ffe4e6 !important;
}

#bankLedgerBody tr.bank-ledger-subject-review-row > td:first-child {
  box-shadow: inset 2px 0 0 #fecdd3 !important;
}

#bankLedgerBody tr.bank-ledger-subject-review-row input:not([type="checkbox"]),
#bankLedgerBody tr.bank-ledger-subject-review-row select,
#bankLedgerBody tr.bank-ledger-subject-review-row textarea,
#bankLedgerBody tr.bank-ledger-subject-review-row .bank-ledger-readonly-subject {
  background: #ffffff !important;
  border-color: #fecdd3 !important;
}

.bank-ledger-table tr.bank-ledger-focused-row > td,
.bank-ledger-table tr.bank-ledger-focused-row:hover > td,
.bank-ledger-table tr.bank-ledger-focused-row > td.manager-cell,
.bank-ledger-table tr.bank-ledger-focused-row > td.manager-memo-cell {
  background: #e5e7eb !important;
}

html[data-theme="dark"] .bank-ledger-table tr.bank-ledger-revenue-row > td,
html[data-theme="dark"] .bank-ledger-table tr.bank-ledger-manager-row > td.manager-cell,
html[data-theme="dark"] .bank-ledger-table tr.bank-ledger-manager-row > td.manager-memo-cell {
  background: inherit !important;
  color: #e5edf7 !important;
}

html[data-theme="dark"] .bank-ledger-table tr.bank-ledger-revenue-row:hover > td,
html[data-theme="dark"] .bank-ledger-table tr.bank-ledger-manager-row:hover > td.manager-cell,
html[data-theme="dark"] .bank-ledger-table tr.bank-ledger-manager-row:hover > td.manager-memo-cell {
  background: #1f2937 !important;
  color: #f5f7fb !important;
}

html[data-theme="dark"] .bank-ledger-table tr.bank-ledger-revenue-row .manager-select,
html[data-theme="dark"] .bank-ledger-table tr.bank-ledger-manager-row .manager-select,
html[data-theme="dark"] .bank-ledger-manager-input,
html[data-theme="dark"] .manager-custom-input,
html[data-theme="dark"] #bankLedgerBody tr.bank-ledger-subject-review-row input:not([type="checkbox"]),
html[data-theme="dark"] #bankLedgerBody tr.bank-ledger-subject-review-row select,
html[data-theme="dark"] #bankLedgerBody tr.bank-ledger-subject-review-row textarea,
html[data-theme="dark"] #bankLedgerBody tr.bank-ledger-subject-review-row .bank-ledger-readonly-subject {
  background: #121820 !important;
  border-color: #56616f !important;
  color: #e5edf7 !important;
  box-shadow: none !important;
}

html[data-theme="dark"] #bankLedgerBody tr.bank-ledger-subject-review-row > td {
  background: rgba(180, 90, 55, 0.09) !important;
}

html[data-theme="dark"] #bankLedgerBody tr.bank-ledger-subject-review-row:hover > td {
  background: rgba(180, 90, 55, 0.15) !important;
}

/* Final dark-mode contrast: this file loads after app.css, so keep the review row opaque. */
html[data-theme="dark"] #bankLedgerBody tr.bank-ledger-subject-review-row > td,
html[data-theme="dark"] #bankLedgerBody tr.bank-ledger-subject-review-row.bank-ledger-focused-row > td,
html[data-theme="dark"] #bankLedgerBody tr.bank-ledger-subject-review-row.bank-ledger-split-row > td,
html[data-theme="dark"] #bankLedgerBody tr.bank-ledger-subject-review-row.bank-ledger-closed-row > td {
  background: #382327 !important;
  color: #f5f7f8 !important;
}

html[data-theme="dark"] #bankLedgerBody tr.bank-ledger-subject-review-row:hover > td,
html[data-theme="dark"] #bankLedgerBody tr.bank-ledger-subject-review-row.bank-ledger-focused-row:hover > td {
  background: #472a30 !important;
  color: #ffffff !important;
}

html[data-theme="dark"] #bankLedgerBody tr.bank-ledger-subject-review-row > td:first-child,
html[data-theme="dark"] #bankLedgerBody tr.bank-ledger-subject-review-row > td:nth-child(2) {
  background: #382327 !important;
  color: #f5f7f8 !important;
}

html[data-theme="dark"] #bankLedgerBody tr.bank-ledger-subject-review-row input:not([type="checkbox"]),
html[data-theme="dark"] #bankLedgerBody tr.bank-ledger-subject-review-row select,
html[data-theme="dark"] #bankLedgerBody tr.bank-ledger-subject-review-row textarea,
html[data-theme="dark"] #bankLedgerBody tr.bank-ledger-subject-review-row .bank-ledger-readonly-subject {
  background: #121820 !important;
  border-color: #8b6268 !important;
  color: #f5f7f8 !important;
}

/* ---------- E. 다크모드에 남은 흰 배경 걷어내기 ---------- */
/* 이 파일 앞쪽과 app.css 에 다크 가드 없이 #fff / #f6fbff / #e5e7eb 를
   !important 로 박아 둔 규칙들이 있다. 다크모드에서 그 칸만 하얗게 뜨고
   글자는 밝은 색이라 그대로 사라진다. 특히 회생매출 행에 마우스를 올릴 때 그렇다.
   파일 맨 끝이라 같은 순위면 여기가 이긴다. */

html[data-theme="dark"] .bank-ledger-table tbody tr > td,
html[data-theme="dark"] .bank-ledger-table tbody tr > td.select-cell,
html[data-theme="dark"] .bank-ledger-table tbody tr > td:nth-child(1),
html[data-theme="dark"] .bank-ledger-table tbody tr > td:nth-child(2),
html[data-theme="dark"] .bank-ledger-table tr.bank-ledger-revenue-row > td,
html[data-theme="dark"] .bank-ledger-table tr.bank-ledger-revenue-row > td.select-cell,
html[data-theme="dark"] .bank-ledger-table tr.bank-ledger-revenue-row > td:nth-child(2),
html[data-theme="dark"] .bank-ledger-table tr.bank-ledger-manager-row > td.select-cell,
html[data-theme="dark"] .bank-ledger-table tr.bank-ledger-manager-row > td:nth-child(2),
html[data-theme="dark"] .bank-ledger-table tr.bank-ledger-closed-row > td,
html[data-theme="dark"] .bank-ledger-table tr.bank-ledger-split-row > td.select-cell,
html[data-theme="dark"] .bank-ledger-table tr.bank-ledger-split-row > td:nth-child(2) {
  background: #1b2023 !important;
  color: #e5edf7 !important;
}

html[data-theme="dark"] .bank-ledger-table tbody tr:nth-child(even) > td,
html[data-theme="dark"] .bank-ledger-table tbody tr:nth-child(even) > td.select-cell,
html[data-theme="dark"] .bank-ledger-table tbody tr:nth-child(even) > td:nth-child(2) {
  background: #20262a !important;
}

/* 마우스 올린 줄은 밝아지되 흰색이 아니라 한 단계 밝은 회색이어야 한다. */
html[data-theme="dark"] .bank-ledger-table tbody tr:hover > td,
html[data-theme="dark"] .bank-ledger-table tbody tr:hover > td.select-cell,
html[data-theme="dark"] .bank-ledger-table tbody tr:hover > td:nth-child(2),
html[data-theme="dark"] .bank-ledger-table tr.bank-ledger-revenue-row:hover > td,
html[data-theme="dark"] .bank-ledger-table tr.bank-ledger-revenue-row:hover > td.select-cell,
html[data-theme="dark"] .bank-ledger-table tr.bank-ledger-revenue-row:hover > td:nth-child(2),
html[data-theme="dark"] .bank-ledger-table tr.bank-ledger-manager-row:hover > td.manager-cell,
html[data-theme="dark"] .bank-ledger-table tr.bank-ledger-manager-row:hover > td.manager-memo-cell {
  background: #2b3238 !important;
  color: #ffffff !important;
}

/* 고른 줄(포커스)도 마찬가지. 원래 #e5e7eb 라 다크에서 하얗게 떴다. */
html[data-theme="dark"] .bank-ledger-table tr.bank-ledger-focused-row > td,
html[data-theme="dark"] .bank-ledger-table tr.bank-ledger-focused-row:hover > td,
html[data-theme="dark"] .bank-ledger-table tr.bank-ledger-focused-row > td.select-cell,
html[data-theme="dark"] .bank-ledger-table tr.bank-ledger-focused-row > td:nth-child(2),
html[data-theme="dark"] .bank-ledger-table tr.bank-ledger-focused-row > td.manager-cell,
html[data-theme="dark"] .bank-ledger-table tr.bank-ledger-focused-row > td.manager-memo-cell {
  background: #33404a !important;
  color: #ffffff !important;
}

/* 확인필요 줄은 앞에서 정한 붉은 배경을 그대로 둔다. 위 규칙이 덮지 않게 되돌린다. */
html[data-theme="dark"] #bankLedgerBody tr.bank-ledger-subject-review-row > td,
html[data-theme="dark"] #bankLedgerBody tr.bank-ledger-subject-review-row > td.select-cell,
html[data-theme="dark"] #bankLedgerBody tr.bank-ledger-subject-review-row > td:nth-child(2) {
  background: #382327 !important;
  color: #f5f7f8 !important;
}

html[data-theme="dark"] #bankLedgerBody tr.bank-ledger-subject-review-row:hover > td,
html[data-theme="dark"] #bankLedgerBody tr.bank-ledger-subject-review-row:hover > td.select-cell,
html[data-theme="dark"] #bankLedgerBody tr.bank-ledger-subject-review-row:hover > td:nth-child(2) {
  background: #472a30 !important;
  color: #ffffff !important;
}

/* 입력칸·표 감싸개에 남은 흰 배경. */
html[data-theme="dark"] .bank-ledger-table-wrap,
html[data-theme="dark"] .bank-ledger-fee-input,
html[data-theme="dark"] .bank-ledger-fee-input.saving,
html[data-theme="dark"] .ledger-subject-input,
html[data-theme="dark"] .ledger-subject-input.saving,
html[data-theme="dark"] .manager-memo,
html[data-theme="dark"] .manager-memo.required,
html[data-theme="dark"] .manager-memo.saving,
html[data-theme="dark"] .manager-custom-input,
html[data-theme="dark"] .bank-ledger-counterparty-button,
html[data-theme="dark"] .bank-ledger-value-filter-button,
html[data-theme="dark"] .bank-ledger-value-filter-panel,
html[data-theme="dark"] .bank-ledger-filter-row input,
html[data-theme="dark"] .bank-ledger-header-filter input,
html[data-theme="dark"] .bank-ledger-split-editor,
html[data-theme="dark"] .bank-ledger-company-filter button {
  background: #121820 !important;
  color: #e5edf7 !important;
  border-color: #56616f !important;
}

/* 분리 금액 합계가 원금액과 안 맞으면 눈에 띄게. */
.bank-ledger-split-gap {
  color: #b45309;
  font-weight: 700;
}

html[data-theme="dark"] .bank-ledger-split-gap {
  color: #fbbf24 !important;
}

/* F. 화면에서만 나눠 준 공통비 칸 (지급임차료 서울↔법인 50:50)
   원거래는 나눠 준 쪽 지점에 그대로 있다. 받은 쪽 칸을 눌러도 그 지점엔 거래가 없어
   예전에는 빈 화면이 떴다. 이제 원거래 지점을 열어 주고, 배분된 칸임을 점선으로 표시한다. */
.subject-report-branch-amount.subject-report-shared-cost-cell {
  border-bottom: 1px dashed #94a3b8;
}

html[data-theme="dark"] .subject-report-branch-amount.subject-report-shared-cost-cell {
  border-bottom-color: #64748b !important;
}
