.doc-record-page .doc-record-header { display: flex; justify-content: space-between; gap: 24px; }
.doc-record-page .doc-record-left,
.doc-record-page .doc-record-right { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.doc-record-page .doc-record-left { flex: 0 1 460px; }
.doc-record-page .doc-record-right { flex: 0 1 320px; align-items: stretch; }
@media(max-width:999px) {
  .doc-record-page .doc-record-header { flex-direction: column; }
  .doc-record-page .doc-record-header > :is(.doc-record-left,.doc-record-right) { flex: 0 1 auto; width: 100%; }
}
.doc-record-page .doc-record-controls { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.doc-record-page .doc-record-search { flex: 0 1 365px; }
.doc-record-page .doc-record-panels { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 24px; }
.doc-record-page .doc-record-panels h3 { margin: 0 0 8px; font-size: 14px; color: #1c3b98; }
.doc-record-page .doc-record-available { margin-top: 6px; color: #51555c; font-size: 12px; }
.doc-record-page .doc-record-total { margin-top: 10px; text-align: right; font-weight: 600; }
.doc-record-page .doc-record-summary { margin-top: 14px; margin-left: auto; width: min(320px, 100%); display: flex; flex-direction: column; gap: 4px; }
.doc-record-page .doc-record-summary div { display: flex; justify-content: space-between; border-top: 1px solid #e2e7ef; padding-top: 4px; }
.doc-record-line-title { margin: 0 0 10px; font-weight: 600; }
.doc-record-page .doc-record-actions { display: flex; gap: 6px; justify-content: flex-end; }
.favorite-picker { display: flex; flex-direction: column; gap: 4px; min-width: 260px; }
.history-filter-popup [hidden] { display: none !important; }
.history-filter-popup .filter-radio { display: flex; align-items: center; gap: 6px; padding: 4px 0; cursor: pointer; }
.history-filter-popup .filter-date-range,
.history-filter-popup .filter-date-last { margin: 2px 0 6px 22px; display: flex; flex-direction: column; gap: 6px; }
.history-filter-popup .filter-date-last { flex-direction: row; flex-wrap: wrap; align-items: center; }
.history-filter-popup .filter-date-last input[name='amount'] { width: 64px; }
.history-filter-popup .filter-boolean { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; min-width: 190px; }
.history-filter-popup .filter-lookup-chips { display: flex; flex-wrap: wrap; gap: 4px; margin-bottom: 6px; }
.history-filter-popup .filter-clear-icon { margin-right: 4px; font-weight: 700; }
.history-filter-popup.filter-lookup { min-width: 220px; }
.history-grid .data-grid thead th { position: sticky; top: 0; z-index: 1; }
.history-grid .history-load-more { padding: 8px; text-align: center; color: #73777e; font-size: 12px; min-height: 1px; }
.history-footer:empty { display: none; }
.bank-reconcile-page { display: flex; flex-direction: column; gap: 10px; padding: 10px 16px; }
.bank-reconcile-page .reconcile-header { display: flex; flex-wrap: wrap; gap: 10px; align-items: flex-end; }
.bank-reconcile-page .reconcile-panes { display: grid; grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); gap: 14px; }
.bank-reconcile-page .reconcile-pane h2 { margin: 0 0 6px; font-size: 13px; letter-spacing: .04em; color: #1c3b98; }
.bank-reconcile-page tr.selected td { background: #f4f8fe; }
.bank-reconcile-page tr.matched td { color: #27ae60; }
.bank-reconcile-page .reconcile-hint { color: #62666d; }
.bank-reconcile-page .reconcile-footer { text-align: right; font-weight: 600; }
.reconcile-import { display: flex; flex-direction: column; gap: 8px; min-width: min(520px, 80vw); }
.inquiry-page { display: flex; flex-direction: column; gap: 8px; padding: 10px 16px; }
.inquiry-page .inquiry-filters { display: flex; flex-wrap: wrap; gap: 10px; align-items: flex-end; }
.inquiry-page .inquiry-filters .field { min-width: 180px; }
.inquiry-page .inquiry-tools { display: flex; gap: 6px; }
.master-layout-page .master-layout { display: flex; flex-direction: column; gap: 14px; }
.master-layout-page .master-group { display: flex; flex-direction: column; gap: 8px; max-width: 720px; }
.master-layout-page .master-group h2 { margin: 0; font-size: 14px; color: #1c3b98; border-bottom: 1px solid #e2e7ef; padding-bottom: 4px; }
.master-layout-page .master-address-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }
.master-layout-page .master-address-fields textarea { grid-column: 1 / -1; }
.favorite-picker .favorite-choice { text-align: left; }

/* Two titled columns inside a side tab (e.g. Down Payment | Tax Info). */
.doc-record-two { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 0 36px; align-items: start; }
.doc-record-two .doc-record-side h3 { color: #3f77d8; font-size: 20px; font-weight: 400; margin: 0 0 10px; padding-bottom: 6px; border-bottom: 1px solid #d9dde5; }
.doc-record-highlight input { background: #eef2fa !important; color: #143faf; font-weight: 600; border-color: #3c6de0 !important; }
@media (max-width: 900px) { .doc-record-two { grid-template-columns: 1fr; } }

/* Payment Order > Get From > Outstanding Invoice */
.outstanding-invoice-dialog { min-width: 760px; max-width: 100%; }
.outstanding-invoice-filters { display: grid; grid-template-columns: 1.4fr 160px 1fr; gap: 8px; margin-bottom: 10px; }
.outstanding-invoice-dialog .data-grid { max-height: 360px; }
.outstanding-invoice-total { margin-top: 10px; text-align: right; font-weight: 600; color: #222c3f; }
@media (max-width: 800px) { .outstanding-invoice-dialog { min-width: 0; } .outstanding-invoice-filters { grid-template-columns: 1fr; } }
