.business-finance-page{padding-bottom:36px}.business-finance-header{display:flex;justify-content:space-between;align-items:flex-start;gap:28px;padding:10px 4px 24px}.business-finance-header h1{margin:4px 0 8px;font-size:44px;color:#0b1b3b}.business-finance-header>div>p:last-child{font-size:18px;color:#24324d}.finance-eyebrow{text-transform:uppercase;letter-spacing:.17em;font-size:13px;font-weight:800;color:#a98227;margin:0}.business-account-badge{display:flex;align-items:center;gap:10px;border:1px solid #dce2ed;border-radius:14px;padding:14px 18px;font-weight:800;color:#0b1b3b;background:#fff;white-space:nowrap}.finance-tabs{display:flex;gap:5px;padding:9px;background:#eef1f5;border-radius:17px;margin-bottom:28px;overflow-x:auto}.finance-tab{border:0;background:transparent;padding:15px 22px;border-radius:12px;font-weight:800;color:#526079;cursor:pointer;white-space:nowrap}.finance-tab.active{background:#fff;color:#0b1b3b;box-shadow:0 8px 22px rgba(15,35,70,.08)}.finance-panel{display:none}.finance-panel.active{display:block}.finance-card{background:#fff;border:1px solid #e2e7f0;border-radius:20px;padding:24px;box-shadow:0 12px 34px rgba(16,35,70,.05);margin-bottom:24px}.finance-toolbar,.card-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.finance-toolbar h2,.card-heading h3{margin:0 0 4px;color:#0b1b3b}.finance-toolbar p,.card-heading p{margin:0;color:#738097}.toolbar-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.primary-action,.secondary-action,.text-action{border:0;border-radius:12px;padding:13px 18px;font-weight:800;cursor:pointer}.primary-action{background:#142341;color:#fff}.secondary-action{background:#f0f1f3;color:#101d38}.text-action{background:transparent;color:#9a741d}.finance-kpi-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:22px 0}.finance-kpi-grid article{background:#fff;border:1px solid #e5eaf2;border-radius:17px;padding:20px;min-height:118px;display:flex;flex-direction:column;justify-content:center;box-shadow:0 9px 25px rgba(16,35,70,.045)}.finance-kpi-grid span{font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:#61708a}.finance-kpi-grid strong{font-size:28px;color:#0b1b3b;margin:7px 0}.finance-kpi-grid small{color:#7c879a}.finance-overview-grid{display:grid;grid-template-columns:1.7fr 1fr;gap:20px}.performance-bars{display:grid;gap:18px;margin-top:22px}.performance-row{display:grid;grid-template-columns:130px 1fr 100px;align-items:center;gap:14px}.performance-track{height:11px;border-radius:999px;background:#edf0f5;overflow:hidden}.performance-fill{height:100%;border-radius:999px;background:#c3a34e}.performance-fill.expense{background:#45659b}.attention-list{display:grid;gap:10px;margin-top:18px}.attention-list button{display:flex;justify-content:space-between;align-items:center;width:100%;padding:17px;border:1px solid #e1e6ef;border-radius:13px;background:#fff;color:#182640;cursor:pointer}.finance-list{display:grid;gap:10px;margin-top:18px}.finance-list-row{display:grid;grid-template-columns:minmax(220px,1.5fr) minmax(120px,.8fr) 120px 125px;gap:16px;align-items:center;padding:16px;border:1px solid #e3e8f0;border-radius:14px}.finance-list-row h4{margin:0 0 4px}.finance-list-row p,.finance-list-row small{margin:0;color:#748096}.amount-income{color:#287d56}.amount-expense{color:#a23e3e}.finance-status{justify-self:start;padding:6px 10px;border-radius:999px;background:#edf1f7;font-size:12px;font-weight:800}.finance-empty{text-align:center;padding:34px;color:#748096;border:1px dashed #d6dce7;border-radius:14px}.transaction-controls{display:grid;grid-template-columns:1fr 230px;gap:12px;margin-top:22px}.transaction-controls input,.transaction-controls select,.toolbar-actions input,.statement-fields input,.transaction-form-grid input,.transaction-form-grid select,.transaction-form-grid textarea{width:100%;box-sizing:border-box;border:1px solid #d9e0eb;border-radius:11px;padding:13px;font:inherit;background:#fff}.statement-import{margin-top:22px;border-top:1px solid #e4e8ef;padding-top:22px}.statement-upload{display:flex;align-items:center;gap:16px;border:2px dashed #ced7e5;border-radius:16px;padding:22px}.statement-upload>i{font-size:34px;color:#b18a28}.statement-upload input{margin-left:auto}.statement-fields{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:16px}.statement-fields label,.transaction-form-grid label{display:grid;gap:7px;font-weight:700;color:#172540}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.performance-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:22px}.performance-summary>div{border:1px solid #e1e6ef;border-radius:14px;padding:18px}.performance-summary span{display:block;color:#66738a;font-size:13px}.performance-summary strong{font-size:24px;color:#0b1b3b}.category-performance{margin-top:24px;display:grid;gap:12px}.category-row{display:grid;grid-template-columns:1fr 120px 120px;gap:14px;padding:13px 0;border-bottom:1px solid #edf0f4}.finance-disclaimer{background:#f6f3e8;border-radius:12px;padding:14px;color:#6c5a26;margin-top:20px}.finance-modal{position:fixed;inset:0;background:rgba(8,17,35,.58);display:none;align-items:center;justify-content:center;padding:24px;z-index:9999}.finance-modal.show{display:flex}.finance-modal-card{background:#fff;border-radius:20px;width:min(760px,100%);max-height:92vh;overflow:auto;padding:25px}.modal-heading{display:flex;justify-content:space-between;align-items:flex-start}.modal-heading h2{margin:4px 0}.modal-heading button{border:0;background:#eef1f5;width:38px;height:38px;border-radius:50%;cursor:pointer}.transaction-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px;margin-top:20px}.transaction-form-grid .full{grid-column:1/-1}.transaction-total{display:flex;justify-content:space-between;padding:16px;margin-top:18px;border-radius:12px;background:#f3f5f8}.transaction-total strong{font-size:22px}.finance-message{padding:14px;border-radius:12px;margin-bottom:18px;background:#edf4ff;color:#183d70}.finance-message.error{background:#fff0f0;color:#8d2525}@media(max-width:1050px){.finance-kpi-grid{grid-template-columns:repeat(2,1fr)}.finance-overview-grid{grid-template-columns:1fr}.statement-fields,.performance-summary{grid-template-columns:repeat(2,1fr)}}@media(max-width:720px){.business-finance-header{flex-direction:column}.business-finance-header h1{font-size:36px}.finance-kpi-grid,.statement-fields,.performance-summary,.transaction-form-grid{grid-template-columns:1fr}.finance-list-row{grid-template-columns:1fr}.transaction-controls{grid-template-columns:1fr}.performance-row{grid-template-columns:110px 1fr 80px}.toolbar-actions{width:100%}.toolbar-actions>*{flex:1}}

.invoice-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:22px 0}.invoice-summary-grid article{border:1px solid #e3e8f0;border-radius:14px;padding:16px;background:#fafbfd}.invoice-summary-grid span{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:#6e7a90}.invoice-summary-grid strong{display:block;margin-top:7px;font-size:24px;color:#0b1b3b}.invoice-origin{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;background:#f5efe0;color:#7d641f;font-size:11px;font-weight:800}.primary-action:disabled,.secondary-action:disabled{opacity:.6;cursor:not-allowed}@media(max-width:720px){.invoice-summary-grid{grid-template-columns:1fr}}

.purchase-invoice-modal-card{width:min(880px,100%)}.invoice-attachment-current{margin-top:14px;padding:12px 14px;border:1px solid #dce3ee;border-radius:12px;background:#f8fafc;color:#263754}.invoice-attachment-current a{font-weight:800;color:#8a6b20}.purchase-invoice-row{cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.purchase-invoice-row:hover{transform:translateY(-1px);border-color:#c9d3e2;box-shadow:0 8px 20px rgba(16,35,70,.07)}.invoice-row-actions{display:flex;gap:7px;justify-content:flex-end}.invoice-icon-button{border:0;background:#eef1f5;color:#142341;border-radius:9px;width:34px;height:34px;cursor:pointer}.invoice-icon-button.danger{background:#fff0f0;color:#9a3131}.purchase-upload-hint{font-size:12px;color:#748096;margin-top:6px}.finance-message.success{background:#edf8f2;color:#216c49}@media(max-width:720px){.invoice-row-actions{justify-content:flex-start}}


/* Sprint 8.3.1: reconciliation drawer */
.reconcile-status{border:0;cursor:pointer;color:#755814;background:#fff4cf;transition:transform .15s ease,box-shadow .15s ease}.reconcile-status:hover,.reconcile-status:focus-visible{transform:translateY(-1px);box-shadow:0 5px 14px rgba(120,90,20,.15);outline:2px solid #c6a34a;outline-offset:2px}.finance-status.matched{background:#e9f7ef;color:#216c49}.reconciliation-drawer-shell{position:fixed;inset:0;z-index:10020;visibility:hidden;pointer-events:none}.reconciliation-drawer-shell.show{visibility:visible;pointer-events:auto}.reconciliation-drawer-backdrop{position:absolute;inset:0;border:0;background:rgba(8,17,35,.5);opacity:0;transition:opacity .22s ease;cursor:default}.reconciliation-drawer-shell.show .reconciliation-drawer-backdrop{opacity:1}.reconciliation-drawer{position:absolute;top:0;right:0;width:min(560px,100%);height:100%;background:#fff;box-shadow:-20px 0 55px rgba(8,25,55,.2);display:grid;grid-template-rows:auto minmax(0,1fr) auto;transform:translateX(102%);transition:transform .24s ease;border-left:1px solid #e0e6ef}.reconciliation-drawer-shell.show .reconciliation-drawer{transform:translateX(0)}.reconciliation-drawer-header{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding:24px 24px 18px;border-bottom:1px solid #e8ecf2}.reconciliation-drawer-header h2{margin:4px 0 0;color:#0b1b3b}.reconciliation-drawer-close{border:0;background:#eef1f5;width:40px;height:40px;border-radius:50%;cursor:pointer;flex:0 0 auto}.reconciliation-drawer-body{padding:22px 24px;overflow:auto}.reconciliation-drawer-footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 24px;border-top:1px solid #e8ecf2;background:#fff}.reconcile-transaction-summary{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px;border:1px solid #dfe5ee;border-radius:14px;background:#f8fafc}.reconcile-transaction-summary h3{margin:0 0 5px}.reconcile-transaction-summary p{margin:0;color:#6f7b90}.reconcile-transaction-summary>strong{font-size:25px;white-space:nowrap}.reconcile-section{margin-top:24px}.reconcile-section h3{margin:0 0 4px}.reconcile-section>p{margin:0 0 13px;color:#748096}.reconcile-other-actions{padding-top:20px;border-top:1px solid #edf0f4}.reconcile-candidate-list{display:grid;gap:9px}.reconcile-candidate{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:14px;border:1px solid #dfe5ee;border-radius:12px;cursor:pointer}.reconcile-candidate:hover{border-color:#c8d2e1}.reconcile-candidate:has(input:checked){border-color:#b39135;background:#fbf7ea;box-shadow:0 0 0 1px rgba(179,145,53,.12)}.reconcile-candidate span{display:grid;gap:3px}.reconcile-candidate small{color:#748096}.reconcile-actions{display:flex;gap:10px;flex-wrap:wrap}.danger-text{color:#9a3131}.finance-empty.compact{padding:20px}.bank-transaction-row{transition:border-color .15s ease}.bank-transaction-row:hover{border-color:#c9d3e2}.reconciliation-drawer-open{overflow:hidden}@media(max-width:720px){.reconciliation-drawer{width:100%}.reconciliation-drawer-header,.reconciliation-drawer-body,.reconciliation-drawer-footer{padding-left:18px;padding-right:18px}.reconcile-transaction-summary{align-items:flex-start;flex-direction:column}.reconcile-actions>*{width:100%}.reconcile-candidate{grid-template-columns:auto 1fr}.reconcile-candidate>b{grid-column:2}.reconciliation-drawer-footer>*{flex:1}}


/* Sprint 8.3.2: editable reconciliation, detailed categories and Director's Current Account */
.amount-transfer{color:#6b4fa1}.reconcile-matched-actions{padding:18px;border:1px solid #dce5ef;border-radius:14px;background:#f8fafc}.reconcile-matched-summary{display:grid;gap:5px;margin:12px 0 14px}.reconcile-matched-summary strong{font-size:18px;color:#0b1b3b}.reconcile-matched-summary span,.reconcile-matched-summary small{color:#6f7b90}.transaction-form-grid input:disabled,.transaction-form-grid select:disabled{background:#f1f4f8;color:#657187;cursor:not-allowed}.finance-status.matched.reconcile-status{background:#e9f7ef;color:#216c49}.finance-status.matched.reconcile-status:hover{box-shadow:0 5px 14px rgba(33,108,73,.15);outline-color:#62a982}


/* Sprint 8.4.1: dynamic finance categories */
.category-manager-card{width:min(980px,100%)}.category-manager-help{color:#657187;margin:8px 0 20px}.category-manager-layout{display:grid;grid-template-columns:minmax(300px,1.2fr) minmax(280px,.8fr);gap:22px}.category-manager-filter select,.category-manager-form input,.category-manager-form select,.category-manager-form textarea{width:100%;box-sizing:border-box;border:1px solid #d9e0eb;border-radius:11px;padding:12px;font:inherit;background:#fff}.category-manager-list{display:grid;gap:8px;max-height:520px;overflow:auto;margin-top:12px;padding-right:4px}.category-manager-row{display:flex;justify-content:space-between;align-items:center;gap:14px;width:100%;text-align:left;border:1px solid #dfe5ee;border-radius:12px;background:#fff;padding:13px;cursor:pointer}.category-manager-row:hover{border-color:#bda258;background:#fffdf7}.category-manager-row.inactive{opacity:.55}.category-manager-row span{display:grid;gap:3px}.category-manager-row small{color:#748096}.category-manager-row b{white-space:nowrap;color:#6c5a26}.category-manager-form{display:grid;gap:13px;border:1px solid #e1e6ef;border-radius:14px;padding:18px;background:#fafbfd}.category-manager-form label{display:grid;gap:6px;font-weight:700;color:#172540}.category-active-label{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center;justify-content:flex-start}.category-active-label input{width:auto!important}.category-row{border-radius:9px;padding-left:8px;padding-right:8px}.category-row:hover{background:#f8fafc}@media(max-width:820px){.category-manager-layout{grid-template-columns:1fr}.category-manager-list{max-height:320px}}

.amount-adjustment{color:#b26a16}.category-drilldown-trigger{width:100%;border:0;background:transparent;text-align:left;cursor:pointer;font:inherit;color:inherit}.category-drilldown-trigger:hover,.category-drilldown-trigger:focus-visible{background:#f7f9fc;outline:2px solid #c3a34e;outline-offset:1px}.category-drilldown{margin-top:20px;border:1px solid #dfe5ee;border-radius:16px;padding:18px;background:#fbfcfe}.category-drilldown-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.category-drilldown-heading h3{margin:4px 0 0}.category-drilldown-heading button{border:0;background:#eef1f5;width:38px;height:38px;border-radius:50%;cursor:pointer}.category-drilldown-list{display:grid;gap:8px;margin-top:14px}.drilldown-transaction{display:flex;justify-content:space-between;align-items:center;gap:16px;width:100%;padding:13px;border:1px solid #e0e6ef;border-radius:12px;background:#fff;text-align:left;cursor:pointer}.drilldown-transaction:hover{border-color:#bea252;background:#fffdf7}.drilldown-transaction span{display:grid;gap:4px}.drilldown-transaction small{color:#748096}.drilldown-transaction b{white-space:nowrap}

/* Sprint 8.4.3: reconciliation integrity */
.finance-status.needs-review{background:#fff0dd;color:#8a4b0f;border:1px solid #efc38d}.finance-status.needs-review:hover,.finance-status.needs-review:focus-visible{outline-color:#d88932;box-shadow:0 5px 14px rgba(138,75,15,.16)}


/* Sprint 8.4.4 - transparent P&L drill-down */
.performance-summary-action{font:inherit;color:inherit;text-align:left;border:1px solid #dfe5ee;background:#fff;border-radius:14px;padding:18px;display:grid;gap:6px;cursor:pointer;box-shadow:none}
.performance-summary-action:hover,.performance-summary-action:focus-visible{border-color:#bea252;background:#fffdf7;outline:2px solid #d9c37a;outline-offset:1px}
.performance-summary-action span{color:#68748a}
.performance-summary-action strong{font-size:1.55rem;color:#101d3f}
.performance-summary-action small{color:#748096;line-height:1.35}
.drilldown-transaction{min-height:86px}
.drilldown-main{min-width:0;display:grid!important;gap:5px}
.drilldown-main>strong{display:block!important;color:#101d3f!important;font-size:1rem!important;line-height:1.3;overflow-wrap:anywhere}
.drilldown-main>small{display:block!important;color:#66738b!important;overflow-wrap:anywhere}
.drilldown-meta{display:flex!important;flex-wrap:wrap;gap:6px 12px;color:#748096}
.drilldown-meta em{font-style:normal;font-size:.84rem}
.drilldown-transaction>b{display:block!important;font-size:1rem!important;color:#101d3f;min-width:110px;text-align:right}
.category-drilldown-total{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-top:14px;padding:14px 16px;border-radius:12px;background:#f1f4f8;border:1px solid #dfe5ee}
.category-drilldown-total span{color:#68748a}
.category-drilldown-total strong{color:#101d3f}
@media(max-width:720px){.drilldown-transaction{align-items:flex-start}.drilldown-transaction>b{min-width:auto}.category-drilldown-total{align-items:flex-start;flex-direction:column;gap:5px}}


/* Sprint 8.5 - Business Finance completion controls */
.reconciliation-control-card{margin-top:20px}.recon-status{display:inline-flex;align-items:center;border-radius:999px;padding:7px 12px;font-size:.82rem;font-weight:800}.recon-status.ok{background:#e9f7ef;color:#216c49}.recon-status.review{background:#fff0dd;color:#8a4b0f}.reconciliation-control-grid{display:grid;grid-template-columns:repeat(6,minmax(120px,1fr));gap:10px;margin-top:16px}.reconciliation-control-grid>div,.reconciliation-health-grid>*{display:grid;gap:5px;padding:13px 14px;border:1px solid #e0e6ef;border-radius:12px;background:#f9fbfd;text-align:left}.reconciliation-control-grid span,.reconciliation-health-grid span,.reconciliation-health-grid small{color:#68748a;font-size:.82rem}.reconciliation-control-grid strong,.reconciliation-health-grid strong{font-size:1.05rem;color:#101d3f}.reconciliation-health-grid{display:grid;grid-template-columns:repeat(5,minmax(130px,1fr));gap:10px;margin-top:10px}.reconciliation-health-grid button{font:inherit;cursor:pointer}.reconciliation-health-grid button:hover{border-color:#bea252;background:#fffdf7}.reconciliation-warning{margin:12px 0 0;padding:11px 13px;border-radius:10px;background:#fff0dd;color:#8a4b0f;font-weight:700}.bank-transaction-row .amount-adjustment{color:#b26a16}@media(max-width:1050px){.reconciliation-control-grid{grid-template-columns:repeat(3,1fr)}.reconciliation-health-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:650px){.reconciliation-control-grid,.reconciliation-health-grid{grid-template-columns:1fr 1fr}}

/* Sprint 8.6 transaction linking */
.reconcile-links-section{padding-top:20px;border-top:1px solid #edf0f4}.reconcile-links-section h4{margin:18px 0 9px;color:#0b1b3b}.reconcile-linked-list{display:grid;gap:9px}.reconcile-linked-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px;border:1px solid #dbe4ee;border-radius:12px;background:#f8fafc}.reconcile-linked-row>div{display:grid;gap:3px}.reconcile-linked-row span{color:#263653}.reconcile-linked-row small{color:#748096}.reconcile-linked-row .text-action{flex:0 0 auto}.bank-chain-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border-radius:999px;background:#eef3fb;color:#40567d;font-size:12px;font-weight:700}
