.pv-account-modal { width:min(560px,calc(100vw - 32px)); }
.pv-statement { width:min(1080px,calc(100vw - 32px)); overflow-x:auto; }
.pv-statement h2,.pv-account-modal h2 { font:800 20px "Plus Jakarta Sans"; margin:0 0 6px; }
.pv-statement p,.pv-account-modal p { color:var(--muted);font-size:12px;margin:0 0 18px; }
.statement-title { display:flex;align-items:flex-start;justify-content:space-between;gap:18px; }
.statement-actions { display:flex;gap:8px;flex-shrink:0; }
.statement-filter { display:flex; align-items:flex-start; gap:8px; flex-wrap:wrap; margin:0 0 14px; }
.statement-filter label { display:grid; gap:4px; color:var(--muted); font-size:11px; font-weight:800; }
.statement-filter input { width:150px; min-height:34px; font:inherit; }
.statement-filter button { align-self:flex-start; min-height:34px; margin-top:30px; white-space:nowrap; }
.statement-totals { display:flex;gap:10px;flex-wrap:wrap;margin:0 0 18px; }
.statement-totals span { display:grid;gap:3px;padding:10px 13px;background:#f4f8f5;border-radius:7px;color:var(--muted);font-size:11px; }
.statement-totals b { color:var(--text);font-size:14px; }
.statement-receipt-edit { font-size:inherit; font-weight:800; text-decoration:underline; text-underline-offset:2px; }
.account-name { color:var(--text); font-weight:800; font-size:13px; }
.account-name:hover { color:var(--accent); text-decoration:underline; }
.account-list-v14 th .account-balance-total { display:block; margin-top:3px; font-size:10px; font-weight:800; letter-spacing:0; text-transform:none; white-space:nowrap; }
.account-list-v14 th { vertical-align:top; }
.account-info dl { display:grid; grid-template-columns:140px 1fr; gap:10px 16px; margin:20px 0; font-size:13px; }
.account-info dt { color:var(--muted); font-weight:700; }.account-info dd{margin:0;}
.supplier-statement th:nth-child(4) { white-space:normal; width:96px; min-width:96px; line-height:1.3; }
.supplier-statement th:nth-child(3) { width:78px; min-width:78px; white-space:normal; }
.supplier-statement td { padding-left:7px; padding-right:7px; }
@page { size:A4 portrait; margin:8mm; }
@media print {
  body > #app { display:none; }
  .modal-bg { position:static; background:#fff; display:block; padding:0; }
  .pv-statement { width:100%; max-width:none; overflow:visible; box-shadow:none; border:0; padding:0; }
  .pv-statement h2 { font-size:15px; margin-bottom:3px; }
  .pv-statement p { font-size:8px; margin-bottom:8px; }
  .statement-actions,.statement-filter,.modal-actions { display:none; }
  .statement-totals { gap:5px; margin-bottom:8px; }
  .statement-totals span { padding:5px 7px; font-size:7px; }
  .statement-totals b { font-size:9px; }
  .pv-statement table { width:100%; table-layout:fixed; border-collapse:collapse; font-size:7px; }
  .pv-statement th,.pv-statement td { padding:4px 2px !important; font-size:7px; line-height:1.15; overflow-wrap:anywhere; vertical-align:top; }
  .pv-statement th { font-size:6.5px; }
  .pv-statement th:nth-child(1) { width:10%; }
  .pv-statement th:nth-child(2) { width:23%; }
  .pv-statement th:nth-child(3) { width:9%; }
  .pv-statement th:nth-child(4) { width:14%; min-width:0; }
  .pv-statement th:nth-child(5),.pv-statement th:nth-child(6),.pv-statement th:nth-child(7) { width:14.6%; }
  .pv-statement tr { break-inside:avoid; page-break-inside:avoid; }
}
@media(max-width:650px){.statement-title{flex-direction:column}.statement-actions{width:100%}.statement-actions button{flex:1}.statement-filter{align-items:stretch}.statement-filter label{flex:1}.statement-filter input{width:100%}}
