.finance-stepper{grid-template-columns:repeat(3,1fr)}.finance-fields{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:22px 0 28px}.finance-field{min-width:0}.finance-field label{display:block;font-size:14px;color:#d8e8fc;margin:0 0 8px;line-height:1.6}.finance-field input{width:100%;min-width:0;border:1px solid #8cafd14d;border-radius:9px;background:#0b192e;color:white;padding:14px 16px;text-align:right;font-size:17px;font-variant-numeric:tabular-nums}.finance-field input::placeholder{color:#768dad}.finance-field small{display:block;font-size:11px;line-height:1.7;color:#99b2d1;margin-top:8px}.finance-field [aria-invalid=true]{border-color:#ffb2a8}.finance-group-title{font-size:22px;font-weight:500;margin:30px 0 20px}.finance-group-title span{margin-left:14px;font-size:11px;color:#98b9e1;font-weight:400}.finance-details,.finance-import{border:1px solid #ffffff25;border-radius:12px;padding:0 22px;margin:25px 0;background:#0b1b31}.finance-details>summary,.finance-import>summary{display:flex;gap:20px;justify-content:space-between;align-items:center;list-style:none;font-size:15px;cursor:pointer;padding:20px 0;color:#c7dffc}.finance-details>summary::-webkit-details-marker,.finance-import>summary::-webkit-details-marker{display:none}.finance-details>summary span{color:#93b1d6;font-size:11px;max-width:200px;text-align:right}.finance-details p,.finance-import p{font-size:13px;line-height:1.8;color:#aac2e0}.finance-import .report-actions{margin:20px 0}.import-file-label{position:relative;overflow:hidden;cursor:pointer;min-height:48px}.import-file-label input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}.import-file-label:focus-within{outline:3px solid #00c6ff;outline-offset:3px}.finance-opening{padding:22px;border:1px solid #ffffff25;border-radius:12px;background:#0b1b31}.finance-confirm{display:flex;gap:13px;align-items:flex-start;margin:23px 0 0;color:#bfd2ec;font-size:13px;line-height:1.8;cursor:pointer}.finance-confirm input{width:19px;height:19px;flex:0 0 19px;margin-top:3px;accent-color:#b6d7ff}.finance-confirm strong{font-size:15px;font-weight:500;display:block}.finance-confirm small{font-size:12px;color:#91afd4;display:block;margin-top:5px}.finance-opening .finance-confirm{margin-top:0}.finance-base-note{display:inline-block;padding:10px 16px;border:1px solid #9abde342;border-radius:30px;margin-top:20px;font-size:12px;line-height:1.8;color:#c3ddfb}.finance-live-checks:empty{display:none}.finance-live-checks{padding:20px;border:1px solid #9ec7ec40;border-radius:12px;margin:25px 0 0;background:#10213a}.finance-live-checks h3{font-size:16px;font-weight:500;margin:0 0 14px}.reconcile-row{border-top:1px solid #ffffff18;padding:13px 0;display:flex;gap:20px;justify-content:space-between;font-size:12px;line-height:1.8;color:#9db7d8}.reconcile-row strong{display:block;font-size:13px;color:#c1d9f8;font-weight:500}.reconcile-row .reconcile-state{white-space:nowrap;color:#bedbfc}.reconcile-row.is-error .reconcile-state{color:#ffc0b5}.reconcile-row.is-error strong{color:#f5c5ba}.finance-check-caption{font-size:11px;line-height:1.7;color:#8eadcf;margin:12px 0 0}.finance-results-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:30px 0}.finance-key{padding:27px;border:1px solid #9ebee14a;border-radius:15px;background:linear-gradient(135deg,#1a3658,#10213a);min-width:0}.finance-key h3{font-size:13px;color:#aec8e8;font-weight:400;margin:0 0 15px}.finance-key strong{font-size:clamp(24px,2.7vw,35px);line-height:1.3;font-weight:500;letter-spacing:-.03em;color:#d5e9ff;display:block;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.finance-key span{font-size:11px;line-height:1.8;color:#92afd4;margin-top:15px;display:block}.finance-chart-panel svg{margin-top:22px;max-height:350px}.finance-chart-panel figcaption{font-size:12px;color:#9db8db;line-height:1.8}.finance-chart-panel figure{margin:0}.finance-chart-panel .chart-empty{font-size:13px;line-height:1.8;color:#aec5e4;padding:25px 0}.finance-alerts{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin:28px 0}.finance-alert{padding:22px 24px;border:1px solid #d1b38b66;border-radius:12px;background:#2c2a34}.finance-alert h3{font-size:17px;font-weight:500;margin:0;color:#f2dbbd}.finance-alert p{font-size:13px;color:#cebba5;line-height:1.8;margin:12px 0 0}.finance-metrics{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:25px 0}.finance-metric{padding:24px;border:1px solid #ffffff26;border-radius:13px;background:#10213a;min-width:0}.finance-metric .metric-category{font-size:10px;color:#8cafdc;letter-spacing:.1em;text-transform:uppercase}.finance-metric h4{font-size:17px;font-weight:500;line-height:1.5;margin:10px 0}.finance-metric .metric-value{font-size:30px;color:#d2e7ff;font-weight:500;letter-spacing:-.025em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.finance-metric .metric-value.is-missing{font-size:20px;color:#97afcf}.finance-metric p{font-size:12px;color:#a8bfde;line-height:1.8;margin:12px 0 0}.finance-metric details{border-top:1px solid #ffffff20;margin-top:17px;padding-top:12px}.finance-metric summary{font-size:12px;cursor:pointer;color:#bbd8fa}.finance-metric .formula{color:#cee1fa}.finance-metric a{color:#bdd7f8;text-decoration:underline;text-underline-offset:3px}.finance-metric .input-id{font-size:10px;color:#829fc4}.finance-target{padding:26px;border:1px solid #accfff44;border-radius:14px;background:#17314e;margin:25px 0}.finance-target h3{font-size:22px;font-weight:500;margin:0 0 15px}.finance-target p{font-size:14px;color:#b3cce9;line-height:1.8;margin:10px 0}.finance-target strong{font-weight:500;color:#d4e8ff}.finance-table{min-width:800px}.finance-table td:first-child{min-width:160px}.finance-table td:last-child{min-width:150px}.finance-note-panel{padding:25px;border:1px solid #ffffff25;border-radius:13px;background:#0d1d33;margin:28px 0}.finance-note-panel h3{font-size:20px;font-weight:500;margin:0 0 15px}.finance-note-panel p,.finance-note-panel li{font-size:13px;color:#a9c1e0;line-height:1.9}.finance-csv-preview{max-height:280px}.finance-import-status{color:#bdd8fc}.finance-evaluation-page .evaluation-error ul{padding-left:18px;margin:7px 0}.finance-evaluation-page .evaluation-error li{margin:7px 0;font-size:13px}.finance-evaluation-page .evaluation-error p{text-indent:0;margin:0 0 10px}.finance-evaluation-page .chart-panel h3{font-size:19px}.finance-evaluation-page .table-scroll caption{padding:12px;text-align:left}.finance-data-summary{display:flex;gap:15px;flex-wrap:wrap;font-size:13px;color:#aac1df;margin-top:22px}
@media(max-width:800px){.finance-results-summary{grid-template-columns:1fr}.finance-key strong{font-size:32px}.finance-key{padding:25px}.finance-alerts{grid-template-columns:1fr}.finance-key span{margin-top:10px}.finance-stepper button{padding:14px 12px;font-size:12px}}@media(max-width:620px){.finance-fields,.finance-metrics{grid-template-columns:1fr}.finance-fields{gap:23px}.finance-stepper{grid-template-columns:1fr}.finance-stepper button span{display:inline}.finance-details,.finance-import{padding:0 16px}.finance-details>summary,.finance-import>summary{font-size:14px;gap:15px;line-height:1.7}.finance-details>summary span{font-size:10px;max-width:105px}.finance-opening{padding:18px 16px}.finance-opening .finance-confirm strong{font-size:14px}.finance-base-note{border-radius:10px;font-size:11px}.finance-group-title{font-size:20px}.finance-group-title span{display:block;margin:7px 0 0}.reconcile-row{display:block}.reconcile-row .reconcile-state{display:inline-block;margin-top:8px}.finance-live-checks{padding:16px}.finance-metric{padding:23px}.finance-metric .metric-value{font-size:28px}.finance-metric h4{font-size:17px}.finance-target{padding:23px}.finance-note-panel{padding:23px}.finance-import .report-actions{display:grid;grid-template-columns:1fr}.finance-chart-panel svg{max-height:none}}
.fin-bar-chart{padding:6px 0 15px}.fin-bar-row{margin:24px 0}.fin-bar-caption{display:flex;justify-content:space-between;gap:15px;font-size:13px;color:#a9c3e4;margin-bottom:12px;line-height:1.7}.fin-bar-caption strong{font-weight:500;color:#d1e6ff;font-variant-numeric:tabular-nums;text-align:right}.fin-bar-track{height:10px;background:#ffffff12;position:relative;border-radius:4px}.fin-bar-track>span{display:block;position:absolute;top:0;height:100%;background:#badbff;border-radius:3px}.fin-bar-track>span.negative{background:#698aaf}.fin-bar-track>i{position:absolute;top:-4px;height:18px;width:1px;background:#b7d3f2;z-index:1}@media(max-width:620px){.fin-bar-caption{font-size:12px;gap:12px}.fin-bar-caption strong{font-size:12px}}

/* Financial statements follow account order instead of alternating fields. */
.finance-balance,#opening-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:start}
.finance-account-column{min-width:0}
.finance-account-title{font-size:22px;font-weight:500;color:#d5e9ff;margin:0;padding:0 0 16px;border-bottom:1px solid #9ebee13b;line-height:1.4}
.finance-account-column>.finance-fields{grid-template-columns:minmax(0,1fr);gap:24px}
.finance-account-column .finance-details{margin-bottom:0}
#detail-fields,#income-fields,#additional-fields{grid-template-columns:minmax(0,1fr)}
.finance-field.is-subtotal,.finance-field.is-total{border-top:1px solid #b6d7ff66;padding-top:16px}
.finance-field.is-subtotal label{font-weight:500;color:#e0edff}
.finance-field.is-total label{font-weight:600;color:#f0f7ff}
.finance-field.is-total input{font-weight:600;background:#152e4d;border-color:#b6d7ff80}
#opening-fields{margin-bottom:0}
@media(max-width:760px){.finance-balance,#opening-fields{grid-template-columns:minmax(0,1fr);gap:34px}.finance-account-title{font-size:21px}}

/* Clear statement hierarchy: a ruled subtotal band and a stronger total band. */
.finance-field.is-subtotal,.finance-field.is-total{border-top:1px solid #c1ddff;padding:18px;border-radius:0 0 10px 10px}
.finance-field.is-subtotal{background:#193654;box-shadow:inset 0 -1px 0 #aacfff26}
.finance-field.is-total{background:#284f78;box-shadow:inset 0 -1px 0 #c1ddff4d}
.finance-field:is(.is-subtotal,.is-total) label{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;line-height:1.5;color:#f4f8ff;font-weight:600}
.finance-field:is(.is-subtotal,.is-total) label>span:first-child{min-width:0}
.finance-total-badge{flex:none;font-size:9px;line-height:1.5;letter-spacing:.08em;text-transform:uppercase;padding:3px 7px;border:1px solid #b9d7fc70;border-radius:4px;color:#d8eaff;background:#0a203d;margin-top:2px}
.finance-field.is-total .finance-total-badge{background:#c7e3ff;color:#0a1128;border-color:#c7e3ff}
.finance-field.is-subtotal input{background:#102740;border-color:#9cbddd;color:#fff;font-weight:600}
.finance-field.is-total input{background:#173c62;border-color:#c7e3ff;color:#fff;font-weight:700}
.finance-field:is(.is-subtotal,.is-total) small{color:#c2d8ee}
@media(max-width:620px){.finance-field.is-subtotal,.finance-field.is-total{padding:16px 14px}.finance-total-badge{font-size:8px;padding:3px 6px}}
.finance-table tr.is-subtotal td{border-top:1px solid #c1ddff;background:#193654;color:#eaf3ff;font-weight:600}
.finance-table tr.is-total td{border-top:1px solid #c7e3ff;background:#284f78;color:#fff;font-weight:700}
.finance-table tr.is-total .finance-total-badge{background:#c7e3ff;color:#0a1128}
