/* Owner finance: recorded income, costs and profit, with their evidence visible. */
.finance-tabs {
  display: flex; align-items: center; gap: 7px; padding: 0 0 14px;
  margin: 0 0 23px; border-bottom: 1px solid var(--border);
  max-width: 100%; overflow-x: auto; scrollbar-width: thin;
}
.finance-tabs button { display: inline-flex; align-items: center; justify-content: center; gap: 8px; flex-shrink: 0; min-height: 42px; padding: 10px 16px; color: #69718a; font-size: 14px; font-weight: 550; border-radius: 8px; white-space: nowrap; }
.finance-tabs button:hover { color: #6554d9; background: #edeaf8; }
.finance-tabs button.active { color: #fff; background: #6554d9; box-shadow: 0 2px 5px #6554d917; }
.finance-tabs button .icon { width: 17px; height: 17px; }
.finance-period { display: flex; align-items: flex-end; flex-wrap: wrap; gap: 12px; margin: 0 0 22px; padding: 18px 20px; background: #fff; border: 1px solid var(--border); border-radius: 12px; min-width: 0; }
.finance-period label { margin-bottom: 6px; font-size: 12px; color: #6b7388; }
.finance-period .form-field { margin: 0; min-width: 0; }
.finance-period > div:not(.actions):not(.spacer) { flex: 0 1 auto; min-width: 0; }
.finance-period input, .finance-period select { width: auto; min-width: 148px; max-width: 220px; height: 41px; padding: 8px 11px; font-size: 13px; }
.finance-period input[type="date"] { width: 155px; min-width: 0; }
.finance-period #finance-range { width: 158px; min-width: 0; }
.finance-period #finance-currency { width: 212px; min-width: 0; }
.finance-period input[type="date"] { font-variant-numeric: tabular-nums; }
.finance-period .spacer { flex: 1; }
.finance-period .actions { margin-left: auto; align-self: flex-end; }
.finance-status { display: flex; align-items: flex-start; flex-wrap: wrap; gap: 9px 22px; padding: 13px 17px; margin-bottom: 22px; background: #f0edfa; border: 1px solid #e1daf4; border-radius: 10px; color: #756586; font-size: 12px; line-height: 1.7; }
.finance-status strong { color: #63517e; font-weight: 600; }
.finance-status > .icon { width: 17px; height: 17px; margin-top: 2px; color: #947ac3; }
.finance-status > div { flex: 1; min-width: 0; }
.finance-status > span { display: inline-flex; align-items: center; gap: 7px; }
.finance-status > span .icon { width: 16px; height: 16px; }
.finance-status > p { flex: 1 1 350px; }
.finance-status .finance-pill { background: #fff; }
.finance-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; margin-bottom: 24px; }
.finance-stats .stat { padding: 22px; }
.finance-stats .stat-value { font-size: clamp(25px, 2.25vw, 34px); overflow-wrap: anywhere; line-height: 1.35; }
.finance-stats .stat-value.multi { font-size: 25px; }
.finance-stats .stat-value > .finance-amount { font-size: inherit; font-weight: 650; line-height: 1.35; overflow-wrap: anywhere; }
.finance-stats .stat-value > .finance-amount + .finance-amount { margin-top: 7px; }
.finance-stats .stat-value small { display: inline-block; margin-left: 7px; font-size: 12px; letter-spacing: 0; font-weight: 500; color: #7d7395; }
.finance-stats .stat-title { font-size: 13px; }
.finance-stats .stat-foot { align-items: flex-start; }
.finance-stats .stat.emphasis { background: #f0edfc; border-color: #ded7f8; }
.finance-stats .stat.emphasis .stat-value { color: #5947c1; }
.finance-stats .stat-value.negative, .finance-stats .stat.emphasis .stat-value.negative { color: #b14c4d; }
.finance-grid { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(285px, 1fr); gap: 22px; margin: 0 0 24px; align-items: stretch; }
.finance-grid > *, .finance-plan-grid > *, .finance-preview { min-width: 0; }
.finance-grid > div > .panel + .panel { margin-top: 22px; }
.finance-grid + .panel, .panel:has(.finance-trend), .panel:has(.finance-forecast) { margin-bottom: 24px; }
.panel:has(> .table-scroll > .finance-pnl) { margin-bottom: 24px; }
.finance-grid .panel-head h2 { font-size: 17px; }
.finance-grid .panel-body > p { font-size: 14px; line-height: 1.75; }
.finance-grid .table-scroll, .finance-ledger, .finance-preview { scrollbar-width: thin; scrollbar-color: #c9c2de #f5f4f9; }
.finance-pnl { font-size: 14px; white-space: normal; }
.finance-pnl th { background: #f8f9fc; font-size: 12px; color: #737c90; padding: 14px 23px; white-space: nowrap; }
.finance-pnl td { padding: 14px 23px; line-height: 1.55; border-color: #edf0f5; }
.finance-pnl td:first-child { min-width: 205px; }
.finance-pnl .amount, .finance-pnl td:not(:first-child), .finance-pnl th:not(:first-child) { text-align: right; white-space: nowrap; font-variant-numeric: tabular-nums; }
.finance-pnl .indent, .finance-pnl .indent td:first-child { padding-left: 40px; color: #6b7488; }
.finance-pnl .expense-group, .finance-pnl .group { background: #fbfcfe; }
.finance-pnl .expense-group td, .finance-pnl .group td { padding-top: 17px; padding-bottom: 11px; color: #6f788d; font-size: 12px; font-weight: 600; }
.finance-pnl .subtract td:first-child { padding-left: 38px; color: #6e788d; }
.finance-pnl .subtotal { background: #f8f9fc; }
.finance-pnl .subtotal td { color: #434e65; font-weight: 600; border-top: 1px solid #dfe4ef; border-bottom: 1px solid #dfe4ef; }
.finance-pnl .total { background: #f0edfb; }
.finance-pnl .total td { border-top: 1px solid #ded6f4; color: #604bc0; font-size: 16px; font-weight: 650; padding-top: 18px; padding-bottom: 18px; }
.finance-pnl small { display: block; font-size: 12px; color: #7a8295; font-weight: 400; margin-top: 3px; }
.finance-pnl .total .negative, .finance-pnl .total td.negative { color: #b14c4d; }
.finance-pnl td.amount.negative { color: #b14c4d; }
.finance-amount, .finance-pnl .amount { font-variant-numeric: tabular-nums; font-weight: 550; }
.finance-amount.positive { color: #207c59; }
.finance-amount.negative { color: #af5154; }
.finance-amount.result { color: #6554c9; font-weight: 650; }
.finance-waterfall { padding: 4px 0; }
.panel-body.finance-waterfall { padding: 0 23px 23px; }
.finance-waterfall > div, .finance-waterfall-row { display: grid; grid-template-columns: minmax(105px, .9fr) minmax(70px, 1fr) minmax(85px, auto); gap: 13px; align-items: center; padding: 14px 0; min-width: 0; font-size: 13px; }
.finance-waterfall > div + div { border-top: 1px solid #eff1f6; }
.finance-waterfall-label { color: #647086; line-height: 1.5; }
.finance-waterfall-label small { display: block; font-size: 12px; color: #81899a; margin-top: 3px; }
.finance-waterfall-track { height: 10px; width: 100%; border-radius: 4px; background: #f0f1f6; min-width: 0; overflow: hidden; }
.finance-waterfall-track > span, .finance-waterfall-track > i { display: block; height: 100%; width: var(--width, 0%); border-radius: inherit; background: #a18cdd; }
.finance-waterfall .positive .finance-waterfall-track > *, .finance-waterfall-track.positive > *, .finance-waterfall-track > .positive { background: #80b9a1; }
.finance-waterfall .negative .finance-waterfall-track > *, .finance-waterfall-track.negative > *, .finance-waterfall-track > .negative { background: #d4a08f; }
.finance-waterfall .result .finance-waterfall-track > *, .finance-waterfall-track.result > *, .finance-waterfall-track > .result { background: #9480d8; }
.finance-waterfall .finance-amount { text-align: right; white-space: nowrap; }
.finance-waterfall .result { font-weight: 600; }
.finance-waterfall-row.result .finance-amount { font-weight: 650; color: #6554c9; }
.finance-waterfall-row.result .finance-amount.negative { color: #af5154; }
.finance-trend { display: block; width: 100%; height: 220px; max-width: 100%; overflow: visible; }
.finance-trend text { font-family: inherit; font-size: 12px; }
.finance-trend path { stroke-linejoin: round; stroke-linecap: round; }
.finance-trend circle { stroke: #fff; stroke-width: 1.5px; }
.finance-legend { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 9px 22px; font-size: 12px; color: #6d778e; margin: 10px 0 2px; }
.finance-legend span { display: inline-flex; align-items: center; gap: 7px; }
.finance-legend i { width: 9px; height: 9px; border-radius: 50%; display: inline-block; flex-shrink: 0; }
.finance-month-chart { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(62px, 1fr); column-gap: 15px; align-items: stretch; overflow-x: auto; max-width: 100%; min-width: 0; padding: 14px 5px 12px; scrollbar-width: thin; }
.finance-month { display: flex; flex-direction: column; justify-content: flex-end; align-items: center; min-width: 0; font-size: 12px; color: #7b8397; text-align: center; }
.finance-month-bars { height: 184px; width: 100%; display: flex; align-items: flex-end; justify-content: center; gap: 5px; border-bottom: 1px solid #e7e9f1; padding: 0 5px; background: repeating-linear-gradient(to top, transparent 0, transparent 45px, #f0f2f7 45px, #f0f2f7 46px); }
.finance-bar { display: block; height: var(--height, 0%); width: 18px; max-width: 26px; flex: 1; background: #ac9adc; border-radius: 4px 4px 0 0; position: relative; }
.finance-bar.income { background: #9180d6; }
.finance-bar.cost { background: #d4b29c; }
.finance-bar.result { background: #86b6a2; }
.finance-bar.negative { background: #ca9994; }
.finance-bar:hover { filter: brightness(.95); }
.finance-month > span, .finance-month > small, .finance-month > strong { margin-top: 11px; font-size: 12px; font-weight: 500; color: #758097; }
.finance-chart-legend { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 18px; font-size: 12px; color: #748096; margin: 4px 0 8px; }
.finance-chart-legend span { display: inline-flex; gap: 7px; align-items: center; }
.finance-chart-legend i { width: 8px; height: 8px; border-radius: 2px; background: #9180d6; }
.finance-chart-legend .cost i, .finance-chart-legend i.cost { background: #d4b29c; }
.finance-chart-legend .result i, .finance-chart-legend i.result { background: #86b6a2; }
.finance-breakdown { display: grid; gap: 18px; padding: 7px 0; }
.panel-body.finance-breakdown { padding: 5px 23px 23px; }
.finance-breakdown-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 0 12px; min-width: 0; width: 100%; padding: 0; text-align: left; font-size: 13px; color: #657087; border-radius: 5px; }
.finance-breakdown-row:hover { color: #6554d9; }
.finance-breakdown-row > span:first-child { overflow-wrap: anywhere; }
.finance-breakdown-row > strong { text-align: right; }
.finance-breakdown-row > .cost-track, .finance-breakdown-row > small { grid-column: 1 / -1; }
.finance-breakdown-row > small { margin-top: 6px; }
.finance-breakdown-row > div:first-child { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }
.finance-breakdown-row strong { font-size: 13px; font-weight: 550; color: #465269; font-variant-numeric: tabular-nums; }
.finance-breakdown-row small { font-size: 12px; color: #7d8698; }
.cost-track { width: 100%; height: 6px; margin-top: 10px; overflow: hidden; border-radius: 4px; background: #eeedf4; }
.cost-track span { height: 100%; display: block; border-radius: inherit; background: #ab99d9; }
.finance-breakdown-row:nth-child(2) .cost-track span { background: #c1aedf; }
.finance-breakdown-row:nth-child(3) .cost-track span { background: #9eafcf; }
.finance-breakdown-row:nth-child(4) .cost-track span { background: #c6b397; }
.finance-breakdown-row:nth-child(5) .cost-track span { background: #9bb9ad; }
.finance-toolbar { display: flex; align-items: center; flex-wrap: wrap; gap: 11px; padding: 18px 22px; border-bottom: 1px solid var(--border); }
.finance-toolbar input, .finance-toolbar select { width: auto; max-width: 230px; min-width: 0; min-height: 40px; font-size: 13px; }
.finance-toolbar .spacer { flex: 1; }
.finance-toolbar > span { font-size: 12px; color: #748096; }
.finance-ledger { width: 100%; min-width: 0; }
.finance-ledger table, table.finance-ledger { font-size: 14px; }
.finance-ledger td, .finance-ledger th { padding: 15px 20px; }
.finance-ledger td:first-child { min-width: 120px; }
.finance-ledger .amount { text-align: right; white-space: nowrap; font-weight: 550; font-variant-numeric: tabular-nums; }
.finance-ledger td > strong { display: block; font-weight: 550; color: #444e65; }
.finance-ledger td > small { display: block; color: #798398; font-size: 12px; margin-top: 4px; }
.finance-ledger .actions { flex-wrap: nowrap; }
.finance-ledger .btn { min-height: 34px; padding: 6px 10px; font-size: 12px; }
.finance-ledger tr[data-finance-entry]:hover { background: #f9f7fd; }
.finance-pill { display: inline-flex; align-items: center; gap: 5px; font-size: 12px; font-weight: 500; padding: 4px 8px; color: #71648e; background: #f1edf9; border-radius: 6px; white-space: nowrap; line-height: 1.4; }
.finance-pill.positive, .finance-pill.income { background: #eaf4ee; color: #418264; }
.finance-pill.negative, .finance-pill.expense { background: #fbf0e9; color: #a2734f; }
.finance-pill.planned, .finance-pill.neutral { background: #f0f2f7; color: #788093; }
.finance-plan-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; margin-bottom: 24px; }
.finance-plan { background: #fff; border: 1px solid var(--border); border-radius: 13px; padding: 23px; display: flex; flex-direction: column; }
.finance-plan h2, .finance-plan h3 { font-size: 16px; font-weight: 600; margin: 0 0 7px; }
.finance-plan > .row-end { margin-bottom: 22px; }
.finance-plan > p { color: #768096; font-size: 14px; line-height: 1.7; }
.finance-plan .stat-value { font-size: 29px; margin: 21px 0 9px; line-height: 1.4; overflow-wrap: anywhere; }
.finance-plan .stat-value small { font-size: 12px; color: #7f879b; font-weight: 400; letter-spacing: 0; white-space: nowrap; }
.finance-plan .finance-amount { font-size: 28px; font-weight: 650; letter-spacing: -.7px; margin: 20px 0 7px; }
.finance-plan .finance-amount small { font-size: 12px; letter-spacing: 0; font-weight: 400; color: #81899d; }
.finance-plan .finance-pill { align-self: flex-start; }
.finance-plan .actions { padding-top: 18px; margin-top: auto; flex-wrap: wrap; }
.finance-plan .settings-row { font-size: 12px; padding: 12px 0; }
.finance-plan .settings-row:last-of-type { margin-bottom: 13px; }
.finance-forecast { display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 22px; }
.finance-forecast > div { padding: 17px 19px; border: 1px solid #e9e4f5; border-radius: 11px; background: #f9f7fd; min-width: 0; }
.finance-forecast .section-kicker { display: block; font-size: 12px; margin-bottom: 10px; }
.finance-forecast strong { display: block; font-size: 26px; font-weight: 650; color: #63518c; letter-spacing: -.6px; line-height: 1.45; overflow-wrap: anywhere; }
.finance-forecast strong small { display: inline-block; font-size: 12px; font-weight: 400; color: #7e7692; letter-spacing: 0; }
.finance-forecast p { font-size: 13px; color: #7a748b; margin-top: 7px; line-height: 1.7; }
.finance-dashboard { margin-bottom: 24px; }
.finance-dashboard table { font-size: 14px; }
.finance-dashboard td:not(:first-child), .finance-dashboard th:not(:first-child) { text-align: right; font-variant-numeric: tabular-nums; }
.finance-dashboard td:last-child { font-weight: 600; color: #6d58a4; background: #faf8fe; }
.finance-dashboard tbody td:first-child { font-weight: 600; color: #69748b; }
.finance-empty { padding: 50px 25px; text-align: center; color: #7b8496; font-size: 14px; line-height: 1.8; }
.finance-empty > .icon { width: 34px; height: 34px; color: #a28dcd; margin-bottom: 16px; }
.finance-empty h2, .finance-empty h3 { color: #4f5a70; font-size: 18px; font-weight: 600; margin-bottom: 8px; }
.finance-empty p { max-width: 460px; margin: 0 auto 20px; }
.finance-empty .actions { justify-content: center; }
.finance-preview { margin: 19px 0; background: #f7f5fc; border: 1px solid #e2daef; border-radius: 10px; padding: 16px 18px; font-size: 13px; color: #70607f; line-height: 1.75; }
.finance-preview > strong { display: block; color: #625077; font-size: 14px; margin-bottom: 5px; }
.finance-preview table { background: #fff; }
.finance-preview.table-scroll { max-height: 320px; overflow: auto; padding: 0; }
.finance-preview.table-scroll td { white-space: normal; overflow-wrap: anywhere; }
.finance-preview .table-scroll { margin: 12px -18px -16px; max-height: 300px; overflow: auto; }
.finance-footer { padding: 15px 22px; border-top: 1px solid var(--border); background: #fbfcfe; display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 10px; font-size: 12px; color: #748095; line-height: 1.7; }
.finance-footer .actions { width: auto; }
.finance-note { font-size: 12px; color: #778195; line-height: 1.8; margin: 18px 0; overflow-wrap: anywhere; }
.finance-note strong { color: #606b81; font-weight: 550; }
.finance-disclosure { margin: 20px 0; border: 1px solid #e3e5ef; border-radius: 10px; background: #fafbfe; font-size: 13px; color: #6e788f; line-height: 1.75; }
.finance-disclosure > summary { cursor: pointer; font-size: 13px; font-weight: 550; padding: 14px 17px; color: #66567f; }
.finance-disclosure > div, .finance-disclosure > p { padding: 0 17px 17px; }
.finance-disclosure summary:focus-visible { outline: 3px solid #a997e3; outline-offset: 3px; border-radius: 8px; }
form[data-finance-form] .form-grid, .finance-form .form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px 16px; }
form[data-finance-form] .form-field, .finance-form .form-field { min-width: 0; }
form[data-finance-form] .form-grid .form-field, .finance-form .form-grid .form-field { margin-bottom: 0; }
form[data-finance-form] .form-field.full, .finance-form .form-field.full { grid-column: 1 / -1; }
form[data-finance-form] input, form[data-finance-form] select, form[data-finance-form] textarea, .finance-form input, .finance-form select { min-width: 0; font-size: 14px; }
form[data-finance-form] .modal-actions, .finance-form .modal-actions { margin-top: 20px; border-top: 1px solid var(--border); }
@media (max-width: 1300px) {
  .finance-stats { gap: 13px; } .finance-stats .stat { padding: 20px 17px; }
  .finance-grid { grid-template-columns: minmax(0, 1.45fr) minmax(270px, 1fr); gap: 18px; }
  .finance-plan-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .finance-waterfall > div, .finance-waterfall-row { grid-template-columns: minmax(95px, .9fr) minmax(45px, 1fr) minmax(80px, auto); gap: 10px; font-size: 12px; }
}
@media (max-width: 1100px) {
  .finance-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .finance-stats .stat-value { font-size: 31px; }
  .finance-grid { grid-template-columns: minmax(0, 1fr); }
  .finance-waterfall > div, .finance-waterfall-row { grid-template-columns: minmax(130px, .75fr) minmax(60px, 1fr) minmax(95px, auto); font-size: 13px; }
  .finance-period { gap: 12px 10px; } .finance-period .spacer { display: none; }
  .finance-period .actions { margin-left: 0; }
}
@media (max-width: 720px) {
  .finance-tabs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 5px; padding-bottom: 12px; margin-bottom: 18px; overflow: visible; }
  .finance-tabs button { font-size: 13px; padding: 9px 13px; min-height: 42px; }
  .finance-tabs button .icon { width: 16px; height: 16px; }
  .finance-period { padding: 15px; gap: 12px; margin-bottom: 19px; }
  .finance-period .form-field, .finance-period > label, .finance-period > div:not(.actions):not(.spacer) { flex: 1 1 135px; min-width: 0; }
  .finance-period input, .finance-period select { width: 100%; min-width: 0; max-width: 100%; font-size: 13px; }
  .finance-period input[type="date"], .finance-period #finance-range, .finance-period #finance-currency { width: 100%; min-width: 0; }
  .finance-period > input, .finance-period > select { flex: 1 1 135px; max-width: 100%; }
  .finance-period .actions { width: 100%; }
  .finance-status { padding: 12px 14px; font-size: 12px; gap: 7px 12px; }
  .finance-stats { gap: 10px; } .finance-stats .stat { padding: 17px 14px; }
  .finance-stats .stat-title { font-size: 12px; } .finance-stats .stat-value { font-size: 26px; letter-spacing: -.85px; }
  .finance-stats .stat-foot { font-size: 12px; }
  .finance-grid { gap: 18px; margin-bottom: 20px; }
  .panel-body.finance-waterfall { padding: 0 17px 19px; }
  .panel-body.finance-breakdown { padding: 5px 17px 19px; }
  .finance-pnl { font-size: 14px; } .finance-pnl td, .finance-pnl th { padding: 13px 17px; }
  .finance-pnl td:first-child { min-width: 170px; } .finance-pnl .indent, .finance-pnl .indent td:first-child { padding-left: 30px; }
  .finance-pnl .subtract td:first-child { padding-left: 29px; }
  .finance-pnl .total td { font-size: 15px; }
  .finance-waterfall > div, .finance-waterfall-row { grid-template-columns: minmax(90px, 1fr) minmax(40px, .65fr) minmax(80px, auto); gap: 9px; font-size: 12px; }
  .finance-month-chart { gap: 12px; padding-top: 8px; grid-auto-columns: minmax(61px, 1fr); }
  .finance-month-bars { height: 160px; gap: 4px; }
  .finance-bar { width: 15px; max-width: 24px; }
  .finance-chart-legend { gap: 8px 13px; }
  .finance-legend { gap: 8px 14px; justify-content: flex-start; }
  .finance-trend { height: 220px; }
  .finance-toolbar { padding: 15px; gap: 10px; }
  .finance-toolbar input, .finance-toolbar select { flex: 1 1 135px; min-width: 0; max-width: 100%; }
  .finance-toolbar .spacer { display: none; }
  .finance-ledger td, .finance-ledger th { padding: 14px 17px; }
  .finance-plan-grid { grid-template-columns: minmax(0, 1fr); gap: 15px; }
  .finance-plan { padding: 21px; } .finance-plan .finance-amount { font-size: 29px; }
  .finance-forecast { grid-template-columns: minmax(0, 1fr); gap: 14px; }
  .finance-forecast > div { padding: 15px 17px; }
  .finance-forecast strong { font-size: 25px; }
  .finance-footer { padding: 14px 17px; align-items: flex-start; }
  .finance-footer .actions { flex-wrap: wrap; }
  .finance-preview { padding: 15px; } .finance-preview .table-scroll { margin: 12px -15px -15px; }
  .finance-empty { padding: 39px 20px; font-size: 13px; }
  .finance-note { margin-top: 16px; }
  form[data-finance-form] .form-grid, .finance-form .form-grid { grid-template-columns: minmax(0, 1fr); gap: 16px; }
}
@media (max-width: 380px) {
  .finance-stats { grid-template-columns: minmax(0, 1fr); }
  .finance-stats .stat-value { font-size: 31px; }
  .finance-tabs button { padding-left: 12px; padding-right: 12px; }
  .finance-waterfall > div, .finance-waterfall-row { grid-template-columns: minmax(80px, 1fr) minmax(30px, .6fr) minmax(78px, auto); gap: 7px; }
}
@media print {
  .finance-tabs, .finance-period, .finance-toolbar, .finance-footer .actions { display: none !important; }
  .finance-grid, .finance-plan-grid { display: block; }
  .finance-grid > *, .finance-plan { margin-bottom: 18px; break-inside: avoid; }
  .finance-status, .finance-note, .finance-footer { color: #555; background: #fff; }
  .finance-pnl .total td { color: #222; background: #eee; }
  .finance-pnl, .finance-ledger { font-size: 11px; }
  .finance-month-chart { grid-auto-columns: minmax(0, 1fr); overflow: visible; }
}
