header { display: flex; align-items: center; gap: calc(20 * var(--suite-px, 1px)); padding: calc(12 * var(--suite-px, 1px)) calc(24 * var(--suite-px, 1px)); background: var(--surface); }
.brand { font-size: calc(14 * var(--suite-px, 1px)); font-weight: 700; }
.file-chip { font-size: calc(16 * var(--suite-px, 1px)); font-weight: 700; background: var(--soft); padding: calc(8 * var(--suite-px, 1px)) calc(16 * var(--suite-px, 1px)); }
#workbook-info { margin-left: auto; }
main { padding: calc(24 * var(--suite-px, 1px)); }
.reconcile-heading { display: flex; align-items: center; gap: calc(24 * var(--suite-px, 1px)); justify-content: space-between; }
h1 { font-size: clamp(calc(32 * var(--suite-px, 1px)),2.78vw,calc(40 * var(--suite-px, 1px))); }
.tieout { display: grid; grid-template-columns: repeat(4,1fr); gap: calc(16 * var(--suite-px, 1px)); margin-top: calc(20 * var(--suite-px, 1px)); }
.tieout > div { background: var(--surface); padding: calc(16 * var(--suite-px, 1px)) calc(20 * var(--suite-px, 1px)); border-radius: calc(12 * var(--suite-px, 1px)); }
.tieout span { font-size: calc(14 * var(--suite-px, 1px)); color: var(--muted); }
.tieout strong { display: block; font: 700 calc(32 * var(--suite-px, 1px))/1.4 var(--mono); letter-spacing: -.02em; }
.tieout p { font: calc(14 * var(--suite-px, 1px))/1.5 var(--mono); }
.row-accounting { display: flex; gap: calc(4 * var(--suite-px, 1px)); height: calc(8 * var(--suite-px, 1px)); margin-top: calc(16 * var(--suite-px, 1px)); }
.kept { flex: 114; background: var(--muted); }
.duplicates { flex: 3; background: var(--warning); }
.unreadable { flex: 8; background: var(--danger); }
.excluded-part { background: var(--text); }
.tieout:has(#excluded-tile:not([hidden])) { grid-template-columns: repeat(5,1fr); }
.unknown { color: var(--muted); font-size: calc(12 * var(--suite-px, 1px)); margin-top: calc(8 * var(--suite-px, 1px)); }
.review-toolbar { display: flex; gap: calc(24 * var(--suite-px, 1px)); justify-content: space-between; align-items: center; padding: calc(20 * var(--suite-px, 1px)) 0; }
.review-toolbar strong { font-size: calc(16 * var(--suite-px, 1px)); }
.review-toolbar p { font-size: calc(12 * var(--suite-px, 1px)); color: var(--muted); margin-top: calc(4 * var(--suite-px, 1px)); }
.review-toolbar button span { font-weight: 400; }
.ledger { overflow: hidden; box-shadow: 0 calc(4 * var(--suite-px, 1px)) calc(24 * var(--suite-px, 1px)) var(--shadow-color); }
.ledger-top { padding: calc(16 * var(--suite-px, 1px)); display: flex; justify-content: space-between; gap: calc(16 * var(--suite-px, 1px)); align-items: center; flex-wrap: wrap; }
.ledger-tools { display: flex; gap: calc(12 * var(--suite-px, 1px)); align-items: center; font-size: calc(12 * var(--suite-px, 1px)); }
.ledger-tools input { width: calc(196 * var(--suite-px, 1px)); }
.ledger-tools .combo { min-width: calc(160 * var(--suite-px, 1px)); }
.ledger-scroll { max-height: calc(460 * var(--suite-px, 1px)); }
.ledger table { table-layout: fixed; }
.ledger th:nth-child(1) { width: calc(44 * var(--suite-px, 1px)); }
.ledger th:nth-child(2) { width: calc(220 * var(--suite-px, 1px)); }
.ledger th:nth-child(3) { width: calc(136 * var(--suite-px, 1px)); }
.ledger th:nth-child(4) { width: calc(152 * var(--suite-px, 1px)); }
.ledger th:nth-child(5) { width: calc(184 * var(--suite-px, 1px)); }
.ledger th:nth-child(6) { width: calc(200 * var(--suite-px, 1px)); }
.ledger th:nth-child(10) { width: calc(180 * var(--suite-px, 1px)); }
.ledger th:nth-child(11) { width: calc(160 * var(--suite-px, 1px)); }
.ledger th:nth-child(10),.ledger td:nth-child(10) { display: none; }
.ledger th:nth-child(11),.ledger td:nth-child(11) { display: none; }
@media(min-width:1230px) { .ledger th:nth-child(10),.ledger td:nth-child(10) { display: table-cell; } }
.ledger td { white-space: nowrap; font-size: calc(14 * var(--suite-px, 1px)); }
.row-no,.source-col { color: var(--muted); font-family: var(--mono); font-size: calc(12 * var(--suite-px, 1px)) !important; }
.row-no { width: calc(56 * var(--suite-px, 1px)); }
.merchant-col { width: calc(220 * var(--suite-px, 1px)); }
.ledger th:nth-child(7),.ledger td:nth-child(7) { width: calc(160 * var(--suite-px, 1px)); }
.ledger th:nth-child(8),.ledger td:nth-child(8) { width: calc(88 * var(--suite-px, 1px)); }
.ledger th:nth-child(9),.ledger td:nth-child(9) { display: none; }
.amount-col { text-align: right; font-family: var(--mono); }
.needs-review { background: var(--warning-soft); }
.needs-review:has(.danger) { background: var(--danger-soft); }
.ledger .badge { border-radius: calc(4 * var(--suite-px, 1px)); }
.ledger tbody tr:hover { background: var(--soft); }
#ledger-status { font-size: calc(12 * var(--suite-px, 1px)); color: var(--muted); margin-top: calc(12 * var(--suite-px, 1px)); }
#review-dialog { width: min(calc(760 * var(--suite-px, 1px)),100%); }
#review-merchant { margin-top: calc(16 * var(--suite-px, 1px)); font-size: calc(24 * var(--suite-px, 1px)); }
.source-preview { display: grid; grid-template-columns: .9fr 1fr; gap: calc(24 * var(--suite-px, 1px)); margin-top: calc(24 * var(--suite-px, 1px)); }
#bill-thumbnail { background: var(--soft); padding: calc(16 * var(--suite-px, 1px)); }
#bill-thumbnail svg { width: 100%; height: auto; color: var(--text); }
#bill-thumbnail rect { fill: var(--surface); }
#bill-thumbnail path { stroke: var(--line); fill: none; }
#bill-thumbnail text { fill: currentColor; font-size: calc(14 * var(--suite-px, 1px)); }
#bill-thumbnail text.small-text { font-size: calc(12 * var(--suite-px, 1px)); }
#bill-thumbnail figcaption { font-size: calc(12 * var(--suite-px, 1px)); color: var(--muted); margin-top: calc(12 * var(--suite-px, 1px)); }
.original-values { margin-top: calc(12 * var(--suite-px, 1px)); }
.original-values div { padding: calc(8 * var(--suite-px, 1px)) 0; display: grid; grid-template-columns: 1fr 1.3fr; gap: calc(12 * var(--suite-px, 1px)); font-size: calc(14 * var(--suite-px, 1px)); border-bottom: calc(1 * var(--suite-px, 1px)) solid var(--line); overflow-wrap: anywhere; }
.original-values div span:first-child { color: var(--muted); font-size: calc(12 * var(--suite-px, 1px)); }
#review-reasons { margin-top: calc(24 * var(--suite-px, 1px)); white-space: normal; }
.category-field { display: flex; align-items: center; gap: calc(16 * var(--suite-px, 1px)); margin-top: calc(24 * var(--suite-px, 1px)); }
.dialog-actions + p { font-size: calc(12 * var(--suite-px, 1px)); color: var(--muted); margin-top: calc(16 * var(--suite-px, 1px)); }
#workbook-dialog p + p { margin-top: calc(16 * var(--suite-px, 1px)); }
.badge { border-radius: calc(4 * var(--suite-px, 1px)); }
.badge::before { width: calc(2 * var(--suite-px, 1px)); height: calc(12 * var(--suite-px, 1px)); border-radius: calc(1 * var(--suite-px, 1px)); }
.workbook-sheets { gap: 0; padding: calc(4 * var(--suite-px, 1px)); border-radius: calc(6 * var(--suite-px, 1px)); }
.workbook-sheets .segment-indicator { background: var(--text); border-radius: calc(4 * var(--suite-px, 1px)); box-shadow: none; }
.workbook-sheets button { font-weight: 400; }
.workbook-sheets button span { font-family: var(--mono); font-size: calc(12 * var(--suite-px, 1px)); }
.workbook-sheets button[aria-current] { color: var(--base); }
.bill-tabs { width: max-content; }
.ledger tbody tr,.ledger tbody tr.needs-review,.ledger tbody tr.selected-row,.ledger tbody tr:hover { background: transparent; }
.ledger-scroll { background-attachment: local; background-repeat: no-repeat; }
@media(max-width:900px) { .ledger-tools { width: 100%; } .ledger-tools input { flex: 1; } .tieout { gap: calc(12 * var(--suite-px, 1px)); } .tieout > div { padding: calc(16 * var(--suite-px, 1px)); } }
@media(max-width:700px) { header { padding: calc(12 * var(--suite-px, 1px)) calc(16 * var(--suite-px, 1px)); gap: calc(12 * var(--suite-px, 1px)); flex-wrap: wrap; } header .badge,#workbook-info { display: none; } .file-chip { font-size: calc(14 * var(--suite-px, 1px)); padding: calc(8 * var(--suite-px, 1px)) calc(12 * var(--suite-px, 1px)); } .theme-toggle { margin-left: auto; width: calc(32 * var(--suite-px, 1px)); } main { padding: calc(20 * var(--suite-px, 1px)) calc(16 * var(--suite-px, 1px)); } .reconcile-heading { flex-wrap: wrap; gap: calc(12 * var(--suite-px, 1px)); } .tieout { grid-template-columns: 1fr 1fr; margin-top: calc(16 * var(--suite-px, 1px)); gap: calc(8 * var(--suite-px, 1px)); } .tieout > div { padding: calc(12 * var(--suite-px, 1px)); } .tieout strong { font-size: calc(24 * var(--suite-px, 1px)); } .tieout p { font-size: calc(12 * var(--suite-px, 1px)); } .review-toolbar { padding: calc(16 * var(--suite-px, 1px)) 0; flex-wrap: wrap; gap: calc(12 * var(--suite-px, 1px)); } .review-toolbar button { width: 100%; } .ledger-top { padding: calc(12 * var(--suite-px, 1px)); gap: calc(12 * var(--suite-px, 1px)); } .workbook-sheets button { font-size: calc(12 * var(--suite-px, 1px)); padding: 0 calc(8 * var(--suite-px, 1px)); } .ledger-tools { gap: calc(8 * var(--suite-px, 1px)); flex-wrap: wrap; } .ledger-tools input { width: 100%; flex-basis: 100%; } .ledger-tools .combo { flex: 1; } .ledger table { min-width: calc(1000 * var(--suite-px, 1px)); } .source-preview { display: block; } #bill-thumbnail { max-width: calc(280 * var(--suite-px, 1px)); margin: 0 auto calc(24 * var(--suite-px, 1px)); } #review-dialog { padding: calc(20 * var(--suite-px, 1px)); } .category-field { display: block; } .category-field .combo { display: block; margin-top: calc(8 * var(--suite-px, 1px)); } }
@media(max-width:700px) { .tieout:has(#excluded-tile:not([hidden])) { grid-template-columns: repeat(2,1fr); } }

.file-actions { display:flex; gap:calc(8 * var(--suite-px, 1px)); margin-left:auto; }
#workbook-info { margin-left:0; }
.comparison-wrap { margin-top:calc(20 * var(--suite-px, 1px)); }
.source-comparison { table-layout:fixed; }
.source-comparison caption { text-align:left; font-weight:700; margin-bottom:calc(8 * var(--suite-px, 1px)); }
.source-comparison caption span { display:block; font-weight:400; font-size:calc(12 * var(--suite-px, 1px)); color:var(--muted); }
.source-comparison th,.source-comparison td { white-space:normal; overflow-wrap:anywhere; vertical-align:top; height:auto; padding:calc(8 * var(--suite-px, 1px)); }
.source-comparison th { position:static; }
.source-comparison th:first-child { width:24%; }
.source-comparison tbody th { color:var(--muted); font-weight:400; }
.source-comparison .normalised-value { background:var(--soft); padding:calc(2 * var(--suite-px, 1px)); }
.source-comparison .problem-field { background:var(--warning-soft); box-shadow:inset calc(3 * var(--suite-px, 1px)) 0 var(--warning); }
.source-comparison .problem-field,.source-comparison .problem-field > * { border-radius:0; }
.source-comparison .problem-field th { color:var(--warning); padding-left:calc(10 * var(--suite-px, 1px)); background:transparent; }
.source-comparison .problem-field strong,.source-comparison .problem-field small { display:block; color:var(--warning); }
.source-comparison .problem-field small { font-size:calc(12 * var(--suite-px, 1px)); }
.review-disposition { margin-top:calc(16 * var(--suite-px, 1px)); padding:calc(12 * var(--suite-px, 1px)); background:var(--soft); }
.review-disposition p { font-size:calc(14 * var(--suite-px, 1px)); margin-top:calc(8 * var(--suite-px, 1px)); }
#review-reasons { margin:0; font-weight:400; color:var(--text); font-size:calc(14 * var(--suite-px, 1px)); }
#shared-review-actions .insp-foot { padding:calc(16 * var(--suite-px, 1px)) 0 0; border:0; background:transparent; }
#shared-review-actions .keys { display:none; }
#review-dialog .dialog-title { align-items:start; }
#review-dialog h2 { font-size:calc(24 * var(--suite-px, 1px)); }
#review-source { font-size:calc(14 * var(--suite-px, 1px)); overflow-wrap:anywhere; }
@media(max-width:700px) {
  .file-actions { margin-left:0; }
  .file-actions .button { height:32px; padding-inline:12px; }
  .source-comparison { font-size:12px; }
  .source-comparison th,.source-comparison td { padding:8px 4px; }
  #shared-review-actions .rule-edit { flex-wrap:wrap; }
  #shared-review-actions .check { white-space:normal; }
}


/* Review decisions and the current export state. */
#shared-review-actions .insp-foot { display:flex; flex-wrap:wrap; gap:calc(8 * var(--suite-px, 1px)); }
#shared-review-actions .btn-primary { background:var(--accent); color:var(--on-accent); }
#review-dialog .dialog-actions { align-items:center; gap:calc(16 * var(--suite-px, 1px)); }
.review-tools-link { font-size:calc(14 * var(--suite-px, 1px)); text-underline-offset:3px; }
.review-toolbar #review-first { display:flex; flex-direction:column; align-items:start; justify-content:center; height:auto; padding:calc(8 * var(--suite-px, 1px)) calc(16 * var(--suite-px, 1px)); gap:calc(2 * var(--suite-px, 1px)); }
#review-first .next-review-source { color:inherit; font-weight:400; font-size:calc(12 * var(--suite-px, 1px)); }
