.money-entry-page { color: var(--ink); font-family: var(--ui-font); }
.money-entry-shell { display: grid; gap: 8px; margin: 0; }
.money-entry-content { display: grid; align-content: start; gap: 8px; min-width: 0; min-height: 0; }
.money-entry-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.money-entry-heading h1 { margin: 0 0 3px; font-size: 22px; }
.money-entry-heading p { margin: 0; color: var(--muted); font-size: 12px; }
.money-entry-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.money-entry-notice { margin: 0; padding: 6px 12px; border: 1px solid var(--erp-border); border-left: 3px solid var(--erp-accent); border-radius: var(--erp-radius-md); background: var(--erp-surface); font-size: 12px; }
.money-entry-page .erp-panel { margin: 0; min-width: 0; border: 1px solid var(--erp-border); border-radius: var(--erp-radius-md); background: var(--erp-surface); }
.money-entry-page .erp-panel-header { padding: 6px 12px; border-bottom: 1px solid var(--erp-border); }
.money-entry-page .erp-panel-title { margin: 0; font-size: 14px; }
.money-entry-page .erp-panel-body { padding: 8px 12px; }
.money-entry-shell .erp-panel-body { padding-block: 6px; }
.money-entry-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px 12px; }
.money-entry-partner-grid { position: relative; display: grid; grid-template-columns: minmax(100px, .8fr) minmax(0, 2fr) minmax(0, 1fr); gap: 8px 12px; }
.money-entry-help { display: flex; justify-content: space-between; align-items: start; gap: 12px; }
.money-entry-help .money-entry-status { margin: 0; }
.money-entry-number-hint { grid-column: 1 / -1; align-self: center; }
.money-entry-field { display: grid; align-content: start; gap: 3px; min-width: 0; }
.money-entry-field > label { font-size: 12px; line-height: 1.25; font-weight: 550; color: var(--ink); }
.money-entry-wide { grid-column: 1 / -1; }
.money-entry-page input, .money-entry-page select, .money-entry-page textarea { width: 100%; min-width: 0; min-height: var(--erp-control-height-compact); padding: 5px 9px; border: 1px solid var(--erp-border); border-radius: var(--erp-radius-sm); background: var(--erp-surface); color: var(--ink); font: inherit; font-size: var(--erp-font-control); }
.money-entry-page input[readonly], .money-entry-page select:disabled { background: color-mix(in srgb, var(--ink) 5%, var(--erp-surface)); color: var(--muted); }
.money-entry-page #moneyAverageMaturity { display:flex; align-items:center; min-height:var(--erp-control-height-compact); padding:5px 9px; border:1px solid var(--erp-border); border-radius:var(--erp-radius-sm); background:color-mix(in srgb,var(--ink) 5%,var(--erp-surface)); color:var(--ink); font:inherit; font-size:var(--erp-font-control); font-variant-numeric:tabular-nums; overflow-wrap:anywhere; }
.money-entry-page .erp-button-secondary { color: var(--ink); }
.money-entry-page .record-card-breadcrumb a { color: var(--muted); }
.money-entry-page .record-card-breadcrumb [aria-current] { color: var(--ink); }
.money-entry-page textarea { resize: vertical; min-height: 32px; }
.money-entry-page input[type="number"] { text-align: right; font-variant-numeric: tabular-nums; }
.money-entry-page small, .money-entry-status { font-size: var(--erp-font-caption); color: var(--muted); }
.money-entry-status { margin: 8px 0 0; min-height: 16px; }
.money-entry-results { --money-result-bg: #d8eaff; --money-result-ink: #062e5b; --money-result-border: #739ed1; --money-result-active: #245c93; position: absolute; top: 100%; left: 0; right: 0; z-index: 20; margin: 2px 0 0; padding: 0; list-style: none; max-height: 180px; overflow-y: auto; border: 1px solid var(--money-result-border); border-left: 4px solid var(--money-result-active); border-radius: var(--erp-radius-sm); background: var(--money-result-bg); box-shadow: 0 8px 22px #062e5b33; }
.money-entry-results button { width: 100%; text-align: left; min-height: 32px; border: 0; border-bottom: 1px solid var(--money-result-border); padding: 8px; background: var(--money-result-bg); color: var(--money-result-ink); font: inherit; font-size: 12px; cursor: pointer; }
.money-entry-results li:last-child button { border-bottom: 0; }
.money-entry-results button:hover, .money-entry-results button:focus-visible { background: var(--money-result-active); color: #fff; outline: 2px solid #fff; outline-offset: -3px; }
:root[data-theme="dark"] .money-entry-results { --money-result-bg: #163c60; --money-result-ink: #e7f2ff; --money-result-border: #658fbd; }
.money-partner-name-control { display:flex; align-items:stretch; gap:5px; min-width:0; }
.money-partner-name-control>input { flex:1; }
.money-partner-picker-command { display:inline-flex; align-items:center; justify-content:center; flex:0 0 32px; width:32px; min-height:var(--erp-control-height-compact); padding:5px; border:1px solid var(--erp-border); border-radius:var(--erp-radius-sm); color:var(--ink); background:var(--erp-surface); cursor:pointer; }
.money-partner-picker-command svg { width:19px; height:19px; }
.money-partner-picker-command:focus-visible { outline:2px solid var(--erp-focus-border); outline-offset:2px; }
.money-partner-picker-command:disabled { opacity:.5; cursor:default; }
:root .money-instrument-entry .money-entry-results { --money-result-bg:#000; --money-result-ink:#fff; --money-result-border:#515151; --money-result-active:#292929; }
.money-instrument-entry .money-entry-results button { display:flex; justify-content:space-between; align-items:center; gap:14px; }
.money-partner-result-caption { min-width:0; overflow-wrap:anywhere; }
.money-partner-result-balance { flex-shrink:0; font-size:12px; font-weight:700; font-variant-numeric:tabular-nums; }
.instrument-portfolio-dialog.money-partner-picker-dialog { width:min(900px,calc(100vw - 32px)); }
.instrument-portfolio-grid.money-partner-picker-grid table { min-width:max(580px,100%); }
.money-partner-picker-grid [data-entry-field="code"] { width:18%; }
.money-partner-picker-grid [data-entry-field="name"] { width:44%; }
.money-partner-picker-grid [data-entry-field="balance"] { width:24%; text-align:right; white-space:nowrap; font-variant-numeric:tabular-nums; }
.money-partner-picker-grid [data-entry-field="balanceType"] { width:14%; text-align:center; white-space:nowrap; }
.money-partner-picker-grid tbody tr { cursor:pointer; }
.money-partner-picker-grid tbody tr:focus-visible { outline:2px solid var(--erp-focus-border); outline-offset:-2px; }
.money-partner-picker-dialog .instrument-portfolio-toolbar { justify-content:flex-start; flex-wrap:wrap; }
.money-partner-picker-dialog .instrument-portfolio-search { flex:1 1 280px; }
.money-partner-picker-actions { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.money-partner-picker-dialog .money-partner-mode-command { margin-left:auto; }
.money-partner-picker-dialog .money-partner-create-command { background:#b42332!important; border-color:#b42332!important; color:#fff!important; }
.money-partner-picker-dialog .money-partner-create-command .standard-command-icon { background:rgba(255,255,255,.14); color:#fff; }
.money-partner-picker-dialog .money-partner-create-command:hover:not(:disabled) { background:#941c29!important; }
.money-partner-picker-dialog .money-partner-create-command:disabled { opacity:.5; cursor:default; }
.record-card-command-bar [data-partner-picker-return] { margin-left:8px; }
@media(max-width:600px){.money-instrument-entry .money-entry-results button{align-items:flex-start;flex-direction:column;gap:4px}.instrument-portfolio-dialog.money-partner-picker-dialog{width:calc(100vw - 16px)}}
@media print{.money-partner-picker-command{display:none!important}}
.money-entry-summary { display: flex; align-items: center; gap: 12px; min-width: 0; }
.money-entry-summary strong { font-size: 18px; white-space: nowrap; font-variant-numeric: tabular-nums; }
.money-entry-summary p { margin: 0; font-size: 12px; }
.money-entry-footer { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 8px 140px 8px 12px; border: 1px solid var(--erp-border); border-radius: var(--erp-radius-md); background: var(--erp-surface); }
.money-entry-footer > .money-entry-status { margin: 0; min-width: 0; flex: 1; }
.money-entry-footer > button { flex: none; }
.money-print-value { display:none; }
.money-entry-page [hidden] { display: none !important; }
.money-list-shell { display: grid; grid-template-rows: auto auto minmax(0,1fr) auto auto; gap: 0; min-width: 0; background: var(--paper); }
.money-list-shell .document-list-heading { display:flex; justify-content:space-between; gap:12px; border-bottom:1px solid var(--line); }
.money-list-shell .document-list-heading h1 { margin:3px 0 4px; font-size:19px; }
.money-list-shell .document-list-heading > div > p:not(.eyebrow) { margin:0; color:var(--muted); font-size:10px; }
.money-list-shell .master-search input { min-height:31px; border:0; padding:0; background:transparent; font-size:9px; }
.money-list-shell .document-list-toolbar { margin:0; }
.money-list-shell .document-list-toolbar > input[type="hidden"], .money-list-shell .document-list-toolbar > [hidden] { display:none; }
.money-list-shell .standard-table { width:100%; }
.money-list-shell .standard-table th { text-transform:uppercase; }
.money-list-shell .standard-table td { font-size:9px; }
.money-list-shell .document-grid-totals-band { padding-right:140px; }
.money-list-shell .document-grid-totals-band .standard-icon-command { min-height:26px; padding:3px 6px; }
.money-list-shell .document-grid-totals-band > span { font-size:8px; white-space:nowrap; }
.money-list-status { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); }
.money-list-status.is-error { position:static; width:auto; height:auto; margin:0; padding:7px 12px; overflow:visible; clip-path:none; color:var(--erp-danger); font-size:12px; }
:root[data-theme="dark"] .money-list-shell :is(.master-summary strong,.standard-icon-command:not(.primary),.document-grid-totals-band > b,.document-grid-total-chip strong) { color:var(--ink); }
:root[data-theme="dark"] .money-list-shell .document-draft-summary strong { color:#ffaaa3; }
.money-list-panel { display: flex; flex-direction: column; min-height: 380px; }
.money-list-filters { display: grid; grid-template-columns: 160px 160px minmax(0, 1fr) auto; align-items: end; gap: 12px; }
.money-list-grid { min-width: 0; overflow: auto; flex: 1; }
.money-list-table { width: 100%; min-width: 900px; border-collapse: collapse; font-size: var(--erp-font-control); }
.money-list-table th, .money-list-table td { padding: 9px 12px; text-align: left; border-bottom: 1px solid var(--erp-border); }
.money-list-table th { background: var(--erp-surface-muted); font-weight: 550; white-space: nowrap; }
.money-list-table th button { padding: 0; background: transparent; border: 0; color: var(--ink); font: inherit; }
.money-list-table .money-list-empty { text-align: center; padding: 60px 16px; color: var(--muted); }
.money-list-footer { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 10px 140px 10px 16px; border-top: 1px solid var(--erp-border); font-size: 12px; }
.money-list-footer .money-entry-actions { align-items: center; }
@media (min-width: 1101px) {
  .content:has(> .money-entry-page:not([hidden])) { display: flex; flex-direction: column; overflow: hidden; padding-bottom: 8px; }
  .content > .money-entry-page:not([hidden]) { flex: 1; min-height: 0; }
  .content > .money-entry-page > :is(.money-entry-shell,.money-list-shell) { height: 100%; min-height: 0; }
  .money-entry-document-grid { grid-template-columns: minmax(130px, .8fr) minmax(0, 1.2fr) minmax(0, 1.2fr) minmax(0, 1fr); }
  .money-entry-shell { height: calc(100svh - 170px); min-height: 440px; grid-template-rows: auto auto auto minmax(0, 1fr) auto; }
  .money-entry-content { overflow-y: auto; padding-inline-end: 4px; overscroll-behavior: contain; }
  .money-list-shell { height: calc(100svh - 170px); min-height: 440px; }
  .money-list-panel { min-height: 0; }
}
@media (max-width: 1100px) { .money-entry-grid, .money-entry-partner-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .money-entry-footer { flex-wrap: wrap; } .money-entry-help { flex-direction: column; gap: 3px; } }
@media (min-width: 761px) { .money-entry-line { grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr) minmax(0, 1fr); } }
@media (max-width: 760px) {
  .money-list-shell .document-grid-totals-band { padding-right:110px; flex-wrap:wrap; }
  .money-list-shell .document-standard-grid { min-height:330px; }
  .money-entry-heading { align-items: flex-start; flex-direction: column; }
  .money-entry-grid, .money-entry-partner-grid, .money-list-filters { grid-template-columns: minmax(0, 1fr); }
  .money-entry-number-hint { grid-column: 1; }
  .money-entry-heading h1 { font-size: 20px; }
  .money-entry-footer, .money-list-footer { flex-wrap: wrap; }
  .money-entry-footer { padding-right: 110px; }
  .money-list-footer { padding-right: 110px; }
  .money-entry-footer > .money-entry-status { flex-basis: 100%; order: 3; }
  .money-entry-summary { flex-wrap: wrap; }
}
@media print {
  body.money-entry-print-mode { color:#172a45; background:#fff; }
  body.money-entry-print-mode :is(.app-shell,.app-shell > main,.content) { display:block; height:auto; min-height:0; overflow:visible; margin:0; padding:0; }
  body.money-entry-print-mode :is(.ai-assistant-launcher,.record-card-breadcrumb,.money-entry-heading .money-entry-actions,.money-entry-notice,.money-entry-help,.money-entry-footer > button,.money-entry-status) { display:none!important; }
  body.money-entry-print-mode .money-entry-shell { display:block; height:auto; min-height:0; }
  body.money-entry-print-mode .money-entry-content { display:block; overflow:visible; padding:0; }
  body.money-entry-print-mode .money-entry-content .erp-panel { margin-block:12px; break-inside:avoid; background:#fff; color:#172a45; }
  body.money-entry-print-mode .money-entry-field > :is(input,select,textarea) { display:none; }
  body.money-entry-print-mode .money-print-value { display:block; min-height:24px; padding:5px 0; color:#172a45; font-size:12px; white-space:pre-wrap; overflow-wrap:anywhere; }
  body.money-entry-print-mode .money-entry-footer { padding:12px; background:#fff; border-color:#bbb; }
  body.money-entry-print-mode .money-entry-field > label { color:#172a45; }
  .document-list-print-target .money-list-shell { display:block; height:auto; min-height:0; overflow:visible; }
  .document-list-print-target .money-list-grid { height:auto; max-height:none; overflow:visible; }
  .document-list-print-target .money-list-totals { padding-right:9px; }
  .document-list-print-target :is(#moneyListPrevious,#moneyListPage,.money-list-status) { display:none; }
}

/* Cheque and note lines keep the same card shell and sticky actions. */
.instrument-line-toolbar,.instrument-row-actions{display:flex;align-items:center;gap:6px;justify-content:space-between}
.instrument-line-grid{max-height:210px;overflow:auto}.instrument-line-grid table{min-width:1040px;width:100%}
.instrument-line-grid td,.instrument-line-grid th{padding:4px 6px}.instrument-line-grid input,.instrument-line-grid select{width:100%;min-height:30px;font-size:12px;border:1px solid var(--erp-border);border-radius:5px;padding:4px 6px;background:var(--erp-surface);color:var(--ink)}
.instrument-line-grid th:nth-child(2){width:15%}.instrument-line-grid th:nth-child(3){width:135px}.instrument-line-grid th:nth-child(4){width:90px}.instrument-line-grid th:nth-child(5){width:30%}.instrument-line-grid th:nth-child(6){width:130px}
.instrument-line-grid [data-maturity-days]{display:block;white-space:nowrap;font-variant-numeric:tabular-nums;font-size:12px;color:var(--ink)}
.instrument-bank-fields{display:flex;gap:4px}.instrument-bank-fields input{min-width:90px}.instrument-row-actions .erp-button{min-height:28px;padding:4px 8px;font-size:12px}
.instrument-origin{display:inline-block;padding:4px 6px;border-radius:4px;background:#e7f1fa;color:#234a72;font-size:12px}.instrument-origin-portfolio{background:#d9f2e8;color:#15503a}
.instrument-dialog{width:min(1100px,94vw);max-height:88dvh;padding:16px;border:1px solid var(--erp-border);border-radius:14px;background:var(--erp-surface);color:var(--ink)}.instrument-dialog::backdrop{background:#12233b66}.instrument-dialog h2{font-size:18px}.instrument-dialog-body{overflow:auto;max-height:65dvh;margin-bottom:12px}.instrument-dialog input{padding:8px;width:min(480px,95%);border:1px solid var(--erp-border);border-radius:6px;background:var(--erp-surface);color:var(--ink)}.instrument-dialog table{width:100%;font-size:12px}.instrument-dialog td{padding:6px}
.instrument-portfolio-dialog{box-sizing:border-box;width:min(1180px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 32px);padding:0;overflow:hidden}
.instrument-portfolio-dialog[open]{display:flex;flex-direction:column}
.instrument-portfolio-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:18px 20px;background:var(--document-header-bg,#2d2b83);color:var(--document-header-fg,#fff);flex-shrink:0}
.instrument-portfolio-heading .eyebrow{margin:0 0 5px;font-size:10px;font-weight:800;letter-spacing:.12em;color:inherit}
.instrument-portfolio-heading h2{margin:0;font-size:18px;color:inherit}
.instrument-portfolio-heading p:not(.eyebrow){margin:7px 0 0;font-size:12px;color:inherit;opacity:.85}
.instrument-portfolio-heading .dialog-close{position:static;flex-shrink:0;color:inherit;border:1px solid #ffffff55;background:transparent}
.instrument-portfolio-dialog .instrument-dialog-body{display:flex;flex-direction:column;gap:12px;min-height:0;max-height:none;margin:0;padding:16px 20px;overflow:auto}
.instrument-portfolio-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-shrink:0}
.instrument-portfolio-search{display:grid;gap:5px;width:min(480px,100%);color:var(--muted);font-size:11px;font-weight:750}
.instrument-portfolio-dialog .instrument-portfolio-search input{box-sizing:border-box;width:100%;min-height:34px;font-size:12px}
.instrument-portfolio-status{margin:0;min-height:18px;font-size:12px;color:var(--muted)}
.instrument-portfolio-grid{min-height:110px;max-height:45dvh;overflow:auto;border:1px solid var(--erp-border);background:var(--erp-surface);flex:1 1 auto}
.instrument-portfolio-grid table{min-width:860px;width:100%;table-layout:fixed}
.instrument-portfolio-grid :is(th,td){padding:8px 10px;font-size:12px}
.instrument-portfolio-grid th{position:sticky;top:0;z-index:2;text-align:left;height:36px}
:root .instrument-portfolio-dialog .instrument-portfolio-grid thead th:not(.grid-appearance-header-colored){background:var(--document-header-bg,#2d2b83);color:var(--document-header-fg,#fff)}
.instrument-portfolio-grid td{background:var(--erp-surface);overflow-wrap:anywhere;vertical-align:middle}
.instrument-portfolio-grid [data-entry-field="receivedFrom"]{width:32%}
.instrument-portfolio-grid [data-entry-field="dueDate"]{width:130px;white-space:nowrap}
.instrument-portfolio-grid [data-entry-field="amount"]{width:170px;text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.instrument-portfolio-grid [data-entry-field="actions"]{width:110px;text-align:center}
.instrument-portfolio-grid tbody tr:hover td{background:color-mix(in srgb,var(--brand-turquoise) 6%,var(--erp-surface))}
.instrument-portfolio-pages{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:12px;color:var(--muted);flex-shrink:0}
.instrument-portfolio-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 20px;border-top:1px solid var(--erp-border);background:var(--erp-surface);flex-shrink:0}
.instrument-portfolio-footer>span{font-size:11px;color:var(--muted)}
:root[data-theme="dark"] .instrument-portfolio-dialog .standard-icon-command:not(.primary){color:var(--ink)}
:root[data-theme="dark"] .instrument-portfolio-dialog .standard-icon-command:not(.primary) .command-icon{color:var(--brand-turquoise)}
@media(max-width:600px){.instrument-portfolio-dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}.instrument-portfolio-heading,.instrument-portfolio-dialog .instrument-dialog-body{padding:12px}.instrument-portfolio-heading h2{font-size:16px}.instrument-portfolio-toolbar{align-items:stretch;flex-direction:column}.instrument-portfolio-toolbar>button{align-self:flex-end}.instrument-portfolio-footer{padding:10px 12px}.instrument-portfolio-footer>span{max-width:65%}}
:root[data-theme="dark"] .instrument-origin{background:#263a59;color:#b9d7ef}:root[data-theme="dark"] .instrument-origin-portfolio{background:#164335;color:#bcebd9}
@media print{.instrument-row-actions,#instrumentRowCount{display:none!important}.instrument-line-grid{max-height:none;overflow:visible}.instrument-line-grid table{min-width:0}.instrument-line-grid input,.instrument-line-grid select{border:0;color:#000;background:#fff}.instrument-line-grid th:last-child,.instrument-line-grid td:last-child{display:none}}
