#finance-panel { min-width:0; }
#finance-panel:focus-visible { outline:2px solid #7c937b; outline-offset:5px; }
#finance-workspace .inventory-heading p { margin:4px 0 0; font-size:14px; }
.finance-totals { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border:1px solid var(--line); margin:22px 0; }
.finance-totals > div { padding:16px 18px; border-inline-end:1px solid var(--line); }
.finance-totals > div:last-child { border:0; }
.finance-totals span { display:block; font-size:14px; color:var(--muted); }
.finance-totals strong { display:block; font-size:25px; overflow-wrap:anywhere; }
.finance-setup { padding:20px; border:1px solid #c9d6c7; background:#f6f8f3; border-radius:4px; margin-bottom:24px; }
.finance-setup h3 { margin:0 0 8px; font-size:20px; }
.finance-setup > p { margin:8px 0; max-width:850px; }
.finance-inline { display:flex; align-items:center; gap:12px; }
.finance-inline input { max-width:360px; min-width:0; }
/* Shared rows align headings, transaction types, amounts, notes, and actions. */
.finance-form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 20px; align-items:stretch; }
.finance-form-card { display:grid; grid-row:span 6; grid-template-rows:subgrid; row-gap:0; border:1px solid var(--line); border-radius:4px; padding:20px; min-width:0; }
.finance-form-heading { grid-row:1; min-width:0; }
.finance-form-card h3 { font-size:20px; margin:0 0 4px; }
.finance-form-heading .hint { margin:6px 0 0; }
.finance-form-card > form { display:grid; grid-row:2 / span 5; grid-template-rows:subgrid; row-gap:0; min-width:0; }
.finance-form-card [data-error] { grid-row:1; margin:12px 0 0; }
.finance-kind { grid-row:2; margin-block:16px; min-width:0; }
.finance-fields { grid-row:3; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; align-content:start; }
.finance-fields > div { min-width:0; }
.finance-form-card label,.finance-choice-field legend { display:block; font-size:15px; font-weight:700; line-height:1.75; margin:0 0 6px; padding:0; }
.finance-setup label { display:block; font-size:15px; margin:12px 0 5px; }
.finance-form-card input:not([type=radio]) { height:52px; min-height:52px; margin:0; }
.finance-choice-field { border:0; padding:0; margin:0; min-width:0; }
.finance-choices { display:flex; gap:8px; margin:0; }
.finance-choices label { flex:1; display:flex; align-items:center; gap:8px; min-height:52px; margin:0; padding:10px; background:#f8f9f6; border:1px solid var(--line); border-radius:4px; cursor:pointer; font-size:14px; }
.finance-choices input { width:16px; height:16px; min-height:16px; flex:none; margin:0; accent-color:#496651; }
.finance-form-card .primary { grid-row:4; align-self:start; height:52px; min-height:52px; margin:20px 0 0; }
.finance-form-card form > .hint { grid-row:5; margin:12px 0 0; }
.finance-history { margin-top:28px; padding-top:22px; border-top:1px solid var(--line); }
.finance-history-heading { display:flex; justify-content:space-between; align-items:center; gap:12px; flex-wrap:wrap; margin-bottom:12px; }
.finance-history-heading h3 { margin:0; font-size:20px; }
.finance-pagination { display:flex; align-items:center; gap:10px; font-size:14px; }
.finance-pagination button { min-height:36px; padding:4px 12px; font-size:14px; }
#finance-workspace .table-scroll table { min-width:650px; }
#finance-workspace td small { display:block; font-size:13px; color:var(--muted); }
.finance-number { font-variant-numeric:tabular-nums; white-space:nowrap; }
#finance-workspace a { color:var(--accent); }
@media(max-width:1000px) { .finance-form-grid { grid-template-columns:minmax(0,1fr); gap:20px; }.finance-form-card { display:block; grid-row:auto; }.finance-form-card > form { grid-row:auto; grid-template-rows:none; } }
@media(max-width:600px) { .finance-totals { grid-template-columns:1fr; }.finance-totals > div { border-inline-end:0; border-bottom:1px solid var(--line); padding:12px 14px; }.finance-totals strong { font-size:23px; }.finance-inline { flex-wrap:wrap; }.finance-inline input,.finance-inline button { max-width:none; width:100%; }.finance-fields { grid-template-columns:1fr; gap:16px; }.finance-form-card { padding:16px; }.finance-choices { flex-wrap:wrap; }.finance-choices label { flex-basis:100%; }.finance-history { margin-top:22px; } }
