.finance-mockup{--fin-bg:#f3ede2;--fin-card:#ffffff;--fin-border:rgba(0,0,0,0.07);--fin-text:#15100a;--fin-muted:#7b7060;--fin-gold:#b8930a;--fin-gold-light:#d4af37;--fin-gold-bg:#fdf8e8;--fin-green:#1a5c28;--fin-green-bg:#e5f2ea;--fin-red:#b91c1c;--fin-red-bg:#fde8e8;--fin-blue:#1e40af;--fin-blue-bg:#eff6ff;--fin-amber:#b45309;--fin-amber-bg:#fef3e2;--fin-matrix-header-bg:#f8f4ec;--fin-matrix-group-bg:#e8ecf4;--fin-matrix-body-bg:#ffffff;--fin-matrix-rollup-bg:#e8ecf4;--fin-matrix-na-bg:#eef0f4;--fin-matrix-selected-bg:#dbeafe;font-family:var(--font-sans),system-ui,sans-serif;background:var(--fin-bg);color:var(--fin-text);margin:-1rem;padding:1.25rem 1rem 2rem;min-height:calc(100vh - 5rem)}@media (min-width:768px){.finance-mockup{margin:-1.5rem;padding:1.5rem 1.5rem 2.5rem}}.finance-mockup .fin-subnav{display:flex;flex-wrap:wrap;gap:.25rem;padding-bottom:.125rem;margin-bottom:.25rem;border-bottom:1px solid var(--fin-border)}.finance-mockup .fin-subnav a{text-decoration:none;color:var(--fin-muted);font-size:.8125rem;font-weight:600;padding:.5rem .75rem;border-radius:.5rem .5rem 0 0;transition:background .14s,color .14s}.finance-mockup .fin-subnav a:hover{color:var(--fin-text);background:rgba(255,255,255,.45)}.finance-mockup .fin-subnav a.fin-subnav-active{color:var(--fin-gold);background:var(--fin-gold-bg);box-shadow:inset 0 -2px 0 0 var(--fin-gold)}.finance-mockup .fin-page-title{font-family:var(--font-display),Georgia,serif;font-size:1.375rem;font-weight:700;letter-spacing:-.02em;color:var(--fin-text);line-height:1.2}.finance-mockup .fin-page-sub{margin-top:.25rem;font-size:.6875rem;color:var(--fin-muted);line-height:1.4}.finance-mockup .fin-card{background:var(--fin-card);border-radius:12px;border:1px solid var(--fin-border)}.finance-mockup .fin-card-pad{padding:1rem 1.25rem}.finance-mockup .fin-section-title{font-size:.875rem;font-weight:700;color:var(--fin-text)}.finance-mockup .fin-stat-grid{display:grid;grid-template-columns:1fr;gap:1rem}.finance-mockup .fin-stat-grid--compact{display:flex;flex-wrap:nowrap;align-items:stretch;gap:0;border:1px solid var(--fin-border);border-radius:8px;background:var(--fin-card);overflow:hidden}.finance-mockup .fin-stat-grid--compact .fin-stat-card{flex:1 1 0;min-width:0;padding:.5rem .75rem;border:none;border-radius:0;border-right:1px solid var(--fin-border);background:var(--fin-card)}.finance-mockup .fin-stat-grid--compact .fin-stat-card:last-child{border-right:none}.finance-mockup .fin-stat-grid--compact .fin-stat-label{font-size:.5625rem;margin-bottom:.125rem}.finance-mockup .fin-stat-grid--compact .fin-stat-value{margin:0;font-family:inherit;font-size:.8125rem;font-weight:600;letter-spacing:normal;line-height:1.3}.finance-mockup .fin-stat-inline{display:flex;align-items:center;gap:.375rem;flex-wrap:wrap}.finance-mockup .fin-stat-select{font-size:.8125rem;font-weight:600;background:transparent;border:0;padding:0;color:var(--fin-text)}.finance-mockup .fin-stat-select--accent{color:var(--fin-gold)}.finance-mockup .fin-stat-sub--inline{display:inline;margin-left:.375rem;font-weight:400}@media (max-width:767px){.finance-mockup .fin-stat-grid--compact{flex-wrap:wrap}.finance-mockup .fin-stat-grid--compact .fin-stat-card{flex:1 1 50%;border-bottom:1px solid var(--fin-border)}.finance-mockup .fin-stat-grid--compact .fin-stat-card:nth-child(2n){border-right:none}}@media (min-width:640px){.finance-mockup .fin-stat-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.finance-mockup .fin-stat-grid{grid-template-columns:repeat(3,1fr)}}.finance-mockup .fin-stat-card{position:relative;overflow:hidden;background:var(--fin-card);border-radius:12px;border:1px solid var(--fin-border);padding:1.125rem 1.25rem}.finance-mockup .fin-stat-label{font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--fin-muted)}.finance-mockup .fin-stat-value{margin:.625rem 0 .25rem;font-family:var(--font-display),Georgia,serif;font-size:1.625rem;font-weight:700;letter-spacing:-.03em;color:var(--fin-text)}.finance-mockup .fin-stat-sub{font-size:.6875rem;color:var(--fin-muted)}.finance-mockup .fin-table-wrap{overflow-x:auto}.finance-mockup .fin-table{width:100%;border-collapse:collapse;font-size:.75rem}.finance-mockup .fin-table thead tr{background:#f8f4ec}.finance-mockup .fin-table th{padding:.6875rem .875rem;font-weight:700;font-size:.6875rem;letter-spacing:.02em;color:var(--fin-text);border-bottom:2px solid var(--fin-border);text-align:left;white-space:nowrap}.finance-mockup .fin-table td{padding:.6875rem .875rem;border-bottom:1px solid var(--fin-border);vertical-align:middle}.finance-mockup .fin-table tbody tr:hover{background:#f9f5ee}.finance-mockup .fin-table tbody tr:last-child td{border-bottom:none}.finance-mockup .fin-muted{color:var(--fin-muted)}.finance-mockup .fin-tabs{display:flex;flex-wrap:wrap;gap:.25rem;border-bottom:1px solid var(--fin-border)}.finance-mockup .fin-tab{border:none;background:transparent;cursor:pointer;padding:.5rem 1rem;font-size:.8125rem;font-weight:600;color:var(--fin-muted);border-radius:.375rem .375rem 0 0}.finance-mockup .fin-tab:hover{color:var(--fin-text)}.finance-mockup .fin-tab--active{color:var(--fin-gold);box-shadow:inset 0 -2px 0 0 var(--fin-gold);background:rgba(253,248,232,.6)}.finance-mockup .fin-badge{display:inline-flex;align-items:center;padding:.1875rem .5625rem;border-radius:9999px;font-size:.6875rem;font-weight:700}.finance-mockup .fin-badge-paid{background:var(--fin-green-bg);color:var(--fin-green)}.finance-mockup .fin-badge-partial{background:var(--fin-blue-bg);color:var(--fin-blue)}.finance-mockup .fin-badge-unpaid{background:var(--fin-amber-bg);color:var(--fin-amber)}.finance-mockup .fin-badge-overdue{background:var(--fin-red-bg);color:var(--fin-red)}.finance-mockup .fin-badge-neutral{background:var(--fin-gold-bg);color:var(--fin-gold)}.finance-mockup .input-base{background:#f9f5ed!important;border-color:var(--fin-border)!important;border-radius:8px!important}.finance-mockup .input-base:focus{border-color:var(--fin-gold)!important}.finance-mockup .label-base{font-size:.6875rem!important;font-weight:700!important;letter-spacing:.02em!important;color:var(--fin-text)!important}.finance-mockup select:not([class*=pointer-events-none]){background-color:#f9f5ed;border:1px solid var(--fin-border);border-radius:8px;color:var(--fin-text);font-size:.8125rem;padding:.375rem .5rem}.finance-mockup select optgroup,.finance-mockup select option{background-color:#f9f5ed;color:var(--fin-text)}.finance-mockup select:focus{outline:none;border-color:var(--fin-gold)}.finance-mockup textarea{background:#f9f5ed;border:1px solid var(--fin-border);border-radius:8px;color:var(--fin-text);padding:.5rem .75rem;font-size:.8125rem}.finance-mockup textarea:focus{outline:none;border-color:var(--fin-gold)}.finance-modal-panel{--fin-card:#ffffff;--fin-border:rgba(0,0,0,0.07);--fin-text:#15100a;--fin-muted:#7b7060;--fin-gold:#b8930a;font-family:var(--font-sans),system-ui,sans-serif;background:var(--fin-card);border-radius:16px;border:1px solid var(--fin-border);box-shadow:0 24px 64px rgba(0,0,0,.32);color:var(--fin-text)}.finance-modal-panel .input-base{background:#f9f5ed;border:1px solid var(--fin-border);border-radius:8px}.finance-modal-panel .input-base:focus{border-color:var(--fin-gold)}.finance-modal-panel textarea{background:#f9f5ed;border:1px solid var(--fin-border);border-radius:8px;color:var(--fin-text);padding:.5rem .75rem;font-size:.8125rem}.finance-modal-panel textarea:focus{outline:none;border-color:var(--fin-gold)}.finance-modal-title{font-family:var(--font-display),Georgia,serif;font-size:1.125rem;font-weight:700;color:var(--fin-text)}.finance-mockup .fin-alert-error{border-radius:12px;border:1px solid rgba(185,28,28,.25);background:var(--fin-red-bg);padding:1.25rem;text-align:center}.finance-mockup .fin-alert-error p{font-size:.875rem;color:var(--fin-text)}.finance-mockup .fin-callout{display:flex;gap:.625rem;padding:.75rem .875rem;background:var(--fin-blue-bg);border:1px solid rgba(30,64,175,.2);border-radius:8px;color:var(--fin-blue);font-size:.8125rem}.finance-mockup .fin-collapsible{background:var(--fin-card);border:1px solid var(--fin-border);border-radius:12px;margin-bottom:1rem}.finance-mockup .fin-collapsible-header{display:flex;align-items:center;gap:.625rem;width:100%;padding:.875rem 1rem;border:none;background:transparent;cursor:pointer;font-weight:600;font-size:.875rem;text-align:left;color:var(--fin-text)}.finance-mockup .fin-collapsible-header:hover{background:#f8f4ec}.finance-mockup .fin-collapsible-chevron{transition:transform .2s;color:var(--fin-muted);font-size:.75rem}.finance-mockup .fin-collapsible--open .fin-collapsible-chevron{transform:rotate(90deg)}.finance-mockup .fin-collapsible-count{margin-left:auto;font-size:.75rem;font-weight:500;color:var(--fin-muted);background:var(--fin-gold-bg);padding:.125rem .5rem;border-radius:9999px}.finance-mockup .fin-collapsible-body{display:none;padding:0 1rem 1rem}.finance-mockup .fin-collapsible--open .fin-collapsible-body{display:block}.finance-mockup .fin-matrix-wrap{overflow:auto;max-height:28rem;border:1px solid var(--fin-border);border-radius:12px;background:var(--fin-card);isolation:isolate}.finance-mockup .fin-matrix{border-collapse:separate;border-spacing:0;width:100%;font-size:.8125rem}.finance-mockup .fin-matrix td,.finance-mockup .fin-matrix th{border-bottom:1px solid var(--fin-border);border-right:1px solid var(--fin-border)}.finance-mockup .fin-matrix th{padding:.5rem .625rem;text-align:right;font-size:.6875rem;font-weight:700;color:var(--fin-muted);background-color:var(--fin-matrix-header-bg);white-space:nowrap;position:sticky;z-index:3;background-clip:padding-box;transform:translateZ(0);box-shadow:0 4px 0 0 var(--fin-matrix-header-bg)}.finance-mockup .fin-matrix-head-row-1 th{top:0}.finance-mockup .fin-matrix-head-row-2 th{top:2.125rem;box-shadow:0 4px 0 0 var(--fin-matrix-header-bg)}.finance-mockup .fin-matrix th.fin-matrix-th-group{text-align:center;background-color:var(--fin-matrix-group-bg);border-bottom:1px solid var(--fin-border);box-shadow:0 4px 0 0 var(--fin-matrix-group-bg)}.finance-mockup .fin-matrix-group-toggle{display:inline-flex;align-items:center;gap:.375rem;border:none;background:transparent;cursor:pointer;font:inherit;font-weight:700;font-size:.6875rem;color:var(--fin-text);padding:0}.finance-mockup .fin-matrix-group-chevron{font-size:.625rem;color:var(--fin-muted);transition:transform .2s}.finance-mockup .fin-matrix-group-chevron--open{transform:rotate(90deg)}.finance-mockup .fin-matrix-th-group .fin-matrix-th-sub{margin-left:.25rem}.finance-mockup .fin-matrix th.fin-matrix-th--rollup{background-color:var(--fin-matrix-group-bg);color:var(--fin-text);border-bottom:2px solid var(--fin-border);box-shadow:0 4px 0 0 var(--fin-matrix-group-bg)}.finance-mockup .fin-matrix-th-standalone,.finance-mockup .fin-matrix-th-subhead{background-color:var(--fin-matrix-header-bg)}.finance-mockup .fin-matrix-th-sub{font-weight:400;color:var(--fin-muted);font-size:.625rem}.finance-mockup .fin-matrix th.fin-matrix-corner{text-align:left!important;position:sticky;left:0;top:0;z-index:5;min-width:6.5rem;border-bottom:2px solid var(--fin-border);background-color:var(--fin-matrix-header-bg)!important;box-shadow:12px 0 0 0 var(--fin-matrix-header-bg),0 4px 0 0 var(--fin-matrix-header-bg)}.finance-mockup .fin-matrix td{padding:.375rem .625rem;text-align:right;font-variant-numeric:tabular-nums;min-width:3.5rem}.finance-mockup .fin-matrix tbody td:not(.fin-matrix-grade){position:relative;z-index:0}.finance-mockup .fin-matrix td.fin-matrix-grade{text-align:left!important;font-weight:600;position:sticky;left:0;background-color:var(--fin-matrix-body-bg)!important;z-index:2;padding:.5rem .75rem!important;background-clip:padding-box;transform:translateZ(0);box-shadow:12px 0 0 0 var(--fin-matrix-body-bg);border-right:1px solid var(--fin-border)}.finance-mockup .fin-matrix tbody tr{cursor:pointer}.finance-mockup .fin-matrix tbody td,.finance-mockup .fin-matrix tbody tr{background-color:var(--fin-matrix-body-bg)}.finance-mockup .fin-matrix-row--selected td{background-color:var(--fin-matrix-selected-bg)}.finance-mockup .fin-matrix-row--selected td.fin-matrix-grade{background-color:var(--fin-matrix-selected-bg)!important;box-shadow:12px 0 0 0 var(--fin-matrix-selected-bg)}.finance-mockup .fin-matrix-row--selected .fin-matrix-cell--rollup{background-color:var(--fin-matrix-selected-bg)}.finance-mockup .fin-matrix-cell--rollup{background-color:var(--fin-matrix-rollup-bg);font-weight:600;color:var(--fin-muted)}.finance-mockup .fin-matrix-cell--na{background-color:var(--fin-matrix-na-bg);color:var(--fin-muted)}.finance-mockup .fin-matrix-cell--readonly{color:var(--fin-text)}.finance-mockup .fin-matrix-input{width:100%;min-width:3rem;padding:.125rem .25rem;border:1px solid var(--fin-gold);border-radius:4px;font-size:.8125rem;text-align:right;background:#fff}.finance-mockup .fin-matrix-legend{display:flex;flex-wrap:wrap;gap:1rem;font-size:.75rem;color:var(--fin-muted)}.finance-mockup .fin-matrix-swatch{display:inline-block;width:.875rem;height:.875rem;border:1px solid var(--fin-border);margin-right:.375rem;vertical-align:middle}.finance-mockup .fin-matrix-swatch--rollup{background:#e8ecf4}.finance-mockup .fin-matrix-swatch--na{background:#eef0f4}.finance-mockup .fin-matrix-swatch--edit{background:var(--fin-card)}.finance-mockup .fin-preview-toggle-row{display:flex;align-items:center;gap:.625rem;font-size:.8125rem;color:var(--fin-muted)}.finance-mockup .fin-preview-toggle{position:relative;width:2.75rem;height:1.375rem;border-radius:9999px;background:#d1d5db;border:none;cursor:pointer;transition:background .15s;padding:0}.finance-mockup .fin-preview-toggle--on{background:var(--fin-gold)}.finance-mockup .fin-preview-toggle:after{content:"";position:absolute;top:2px;left:2px;width:1.125rem;height:1.125rem;border-radius:50%;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.15);transition:transform .15s}.finance-mockup .fin-preview-toggle--on:after{transform:translateX(1.125rem)}.finance-mockup .fin-preview-panel{margin-top:.5rem}.finance-mockup .fin-preview-header{align-items:center;gap:.75rem;padding:.625rem 1rem;font-size:.8125rem;font-weight:600;background:#f8f4ec}.finance-mockup .fin-preview-header,.finance-mockup .fin-preview-line{display:flex;justify-content:space-between;border-bottom:1px solid var(--fin-border)}.finance-mockup .fin-preview-line{align-items:flex-start;gap:1rem;padding:.625rem 0}.finance-mockup .fin-preview-line:last-of-type{border-bottom:none}.finance-mockup .fin-preview-detail{font-size:.6875rem;color:var(--fin-muted);margin-top:.125rem}.finance-mockup .fin-preview-discount{font-size:.625rem;color:var(--fin-amber);margin-top:.25rem}.finance-mockup .fin-preview-amount{font-size:.875rem;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.finance-mockup .fin-preview-divider{height:1px;background:var(--fin-border);margin:.5rem 0}.finance-mockup .fin-preview-total{display:flex;justify-content:space-between;gap:1rem;font-size:.875rem;font-weight:700;padding-top:.25rem}.finance-mockup .fin-lifecycle-badge{font-size:.5625rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:.125rem .5rem;border-radius:6px;border:1px solid var(--fin-border)}.finance-mockup .fin-lifecycle-badge--published{color:var(--fin-gold);background:var(--fin-gold-bg);border-color:color-mix(in srgb,var(--fin-gold) 30%,transparent)}.finance-mockup .fin-lifecycle-badge--draft{color:var(--fin-amber);background:#fff8eb;border-color:color-mix(in srgb,var(--fin-amber) 25%,transparent)}.finance-mockup .fin-lifecycle-badge--locked{color:var(--fin-muted);background:#f3f4f6}.finance-mockup .fin-tab-count{margin-left:.375rem;font-size:.625rem;padding:.0625rem .375rem;border-radius:4px;background:var(--fin-gold-bg);color:var(--fin-muted)}.finance-mockup .fin-matrix-th-standalone,.finance-mockup .fin-matrix-th-subhead{text-align:center;vertical-align:middle}.finance-mockup .fin-matrix-th-stack{display:flex;flex-direction:column;align-items:center;gap:.125rem}.finance-mockup .fin-matrix-th-tag{font-size:.5625rem;text-transform:uppercase;letter-spacing:.03em;color:var(--fin-muted);font-weight:600}.finance-mockup .fin-matrix-fill-down{font-size:.5625rem;text-transform:uppercase;letter-spacing:.02em;color:var(--fin-gold);font-weight:700;background:transparent;border:none;cursor:pointer;padding:0}.finance-mockup .fin-matrix-fill-down--legend{display:inline-block;padding:.0625rem .25rem;border:1px solid var(--fin-border);border-radius:3px;background:var(--fin-card)}.finance-mockup .fin-matrix-inline-input{width:100%;min-width:2.5rem;padding:.125rem .25rem;border:none;border-bottom:1px solid transparent;background-color:var(--fin-matrix-body-bg);font-size:inherit;text-align:right;font-variant-numeric:tabular-nums}.finance-mockup .fin-matrix-inline-input:focus{outline:none;border-bottom-color:var(--fin-gold);background-color:#ffffff}.finance-mockup .fin-matrix-row--selected .fin-matrix-inline-input{background-color:var(--fin-matrix-selected-bg)}.finance-mockup .fin-matrix-row--selected .fin-matrix-inline-input:focus{background-color:#ffffff}.finance-mockup .fin-matrix-cell--na .fin-matrix-inline-input{background-color:var(--fin-matrix-na-bg)}.finance-mockup .fin-matrix-cell--na .fin-matrix-inline-input:focus{background-color:#ffffff}.finance-mockup .fin-matrix-active-tag{font-size:.5625rem;text-transform:uppercase;letter-spacing:.02em;color:var(--fin-gold);background:var(--fin-gold-bg);border:1px solid color-mix(in srgb,var(--fin-gold) 25%,transparent);border-radius:3px;padding:.0625rem .25rem}.finance-mockup .fin-bill-item-row:hover{border-color:color-mix(in srgb,var(--fin-gold) 35%,var(--fin-border))}.finance-mockup .fin-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem;border-radius:8px;border:1px solid var(--fin-border);background:#faf9f7}.finance-mockup .fin-toggle-row--accent{border-color:color-mix(in srgb,var(--fin-gold) 25%,var(--fin-border))}.finance-mockup .fin-toggle{position:relative;width:2.5rem;height:1.375rem;border-radius:9999px;border:none;background:#d1d5db;cursor:pointer;padding:0;transition:background .15s}.finance-mockup .fin-toggle--on{background:var(--fin-gold)}.finance-mockup .fin-toggle-thumb{position:absolute;top:2px;left:2px;width:1rem;height:1rem;border-radius:50%;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.15);transition:transform .15s}.finance-mockup .fin-toggle--on .fin-toggle-thumb{transform:translateX(1.125rem)}.finance-mockup .fin-invoice-simulator{margin-top:.75rem;padding:1rem;border:1px solid var(--fin-border);border-radius:12px;background:linear-gradient(180deg,#faf9f7,#f5f3ef)}.finance-mockup .fin-invoice-simulator-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.75rem;padding-bottom:.75rem;border-bottom:1px solid var(--fin-border)}.finance-mockup .fin-invoice-simulator-grid{display:grid;grid-template-columns:1fr;gap:1rem;margin-top:.75rem}@media (min-width:768px){.finance-mockup .fin-invoice-simulator-grid{grid-template-columns:2fr 1fr}}.finance-mockup .fin-invoice-paper{position:relative;background:var(--fin-card);border:1px solid var(--fin-border);border-radius:10px;padding:1.25rem}.finance-mockup .fin-invoice-paper-header{display:flex;justify-content:space-between;gap:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--fin-border);margin-bottom:.75rem}.finance-mockup .fin-invoice-pupil-bar{display:flex;justify-content:space-between;gap:1rem;padding:.5rem .75rem;border-radius:6px;background:#f8f4ec;border:1px solid var(--fin-border);margin-bottom:.75rem}.finance-mockup .fin-invoice-line-head{font-size:.625rem;font-weight:700;text-transform:uppercase;color:var(--fin-muted);padding-bottom:.375rem}.finance-mockup .fin-invoice-line,.finance-mockup .fin-invoice-line-head{display:flex;justify-content:space-between;border-bottom:1px solid var(--fin-border)}.finance-mockup .fin-invoice-line{gap:1rem;padding:.5rem 0}.finance-mockup .fin-invoice-breakdown{margin-top:.375rem;padding-left:.75rem;border-left:2px solid color-mix(in srgb,var(--fin-gold) 30%,transparent)}.finance-mockup .fin-invoice-breakdown-row{font-size:.6875rem;color:var(--fin-muted)}.finance-mockup .fin-invoice-total{display:flex;justify-content:space-between;gap:1rem;margin-top:.75rem;padding-top:.5rem;border-top:2px dashed var(--fin-border);font-weight:700;font-size:.875rem}.finance-mockup .fin-invoice-optins{padding:1rem;border:1px solid var(--fin-border);border-radius:10px;background:#faf9f7}.finance-mockup .fin-invoice-optin-row{display:flex;align-items:flex-start;gap:.625rem;padding:.5rem .625rem;border-radius:6px;border:1px solid var(--fin-border);cursor:pointer}.finance-mockup .fin-invoice-optin-row--on{background:#fff8eb;border-color:color-mix(in srgb,var(--fin-amber) 30%,var(--fin-border));color:var(--fin-amber)}.finance-mockup .fin-invoice-tip{margin-top:1rem;padding:.75rem;border-radius:6px;font-size:.6875rem;line-height:1.45;color:var(--fin-muted);background:var(--fin-gold-bg);border:1px solid color-mix(in srgb,var(--fin-gold) 20%,var(--fin-border))}.portal-mockup .finance-mockup{--fin-bg:transparent;--fin-card:var(--portal-surface);--fin-border:var(--portal-border-strong);--fin-text:var(--portal-ink-secondary);--fin-muted:var(--portal-muted);--fin-gold:var(--portal-accent);--fin-gold-light:var(--portal-accent);--fin-gold-bg:var(--portal-accent-muted);--fin-green:var(--portal-accent);--fin-green-bg:var(--portal-accent-muted);--fin-red:#dc2626;--fin-red-bg:rgba(220,38,38,0.12);--fin-blue:#2563eb;--fin-blue-bg:rgba(37,99,235,0.1);--fin-amber:#d97706;--fin-amber-bg:rgba(217,119,6,0.12);--fin-surface-alt:var(--portal-table-header-bg);--fin-surface-hover:var(--portal-table-row-hover-bg);--fin-matrix-group:var(--portal-muted-surface);--fin-matrix-selected:var(--portal-accent-surface-strong);--fin-input-bg:var(--portal-surface-input);--fin-matrix-header-bg:var(--portal-table-header-bg);--fin-matrix-group-bg:var(--fin-matrix-group);--fin-matrix-body-bg:var(--portal-surface);--fin-matrix-rollup-bg:var(--fin-matrix-group);--fin-matrix-na-bg:var(--portal-muted-surface);--fin-matrix-selected-bg:var(--fin-matrix-selected);font-family:var(--portal-font);background:transparent;color:var(--portal-ink);margin:0;padding:0;min-height:unset}@media (min-width:768px){.portal-mockup .finance-mockup{margin:0;padding:0}}.portal-mockup .finance-mockup .fin-subnav{gap:.375rem;padding:.125rem;margin-bottom:.75rem;border-bottom:none;background:var(--portal-tabs-bg);border:1px solid var(--portal-tabs-border);border-radius:var(--portal-radius)}.finance-mockup .fin-control{background:var(--fin-input-bg);color:var(--portal-ink);border-color:var(--fin-border)}.portal-mockup .finance-mockup .fin-subnav a{font-size:var(--portal-text-sm);font-weight:600;padding:.3rem .75rem;border-radius:calc(var(--portal-radius) - 2px);color:var(--portal-tab-fg);box-shadow:none}.portal-mockup .finance-mockup .fin-subnav a:hover{color:var(--portal-tab-hover-fg);background:var(--portal-tab-hover-bg)}.portal-mockup .finance-mockup .fin-subnav a.fin-subnav-active{color:var(--portal-accent);background:var(--portal-accent-muted);border:1px solid var(--portal-tab-active-border);box-shadow:none}.portal-mockup .finance-mockup .fin-page-title{font-family:var(--portal-font);font-size:var(--portal-text-title);font-weight:700;color:var(--portal-ink-secondary)}.portal-mockup .finance-mockup .fin-page-sub{font-size:var(--portal-text-xs);color:var(--portal-muted)}.portal-mockup .finance-mockup .fin-card,.portal-mockup .finance-mockup .fin-collapsible,.portal-mockup .finance-mockup .fin-matrix-wrap,.portal-mockup .finance-mockup .fin-stat-card{background:var(--portal-surface);border-color:var(--portal-border);border-radius:var(--portal-radius);box-shadow:var(--portal-card-shadow)}.portal-mockup .finance-mockup .fin-collapsible-header,.portal-mockup .finance-mockup .fin-section-title{font-size:var(--portal-text-base);color:var(--portal-ink-secondary)}.portal-mockup .finance-mockup .fin-stat-label{font-size:var(--portal-text-xs);color:var(--portal-muted-dim)}.portal-mockup .finance-mockup .fin-stat-value{font-family:var(--portal-font);font-size:calc(var(--portal-text-title) + .25rem);color:var(--portal-ink-secondary)}.portal-mockup .finance-mockup .fin-stat-sub{font-size:var(--portal-text-xs)}.portal-mockup .finance-mockup .fin-table{font-size:var(--portal-text-sm)}.portal-mockup .finance-mockup .fin-table th,.portal-mockup .finance-mockup .fin-table thead tr{background:var(--portal-table-header-bg);color:var(--portal-muted);border-bottom-color:var(--portal-border);font-size:var(--portal-text-xs);text-transform:uppercase;letter-spacing:.04em}.portal-mockup .finance-mockup .fin-table td{border-bottom-color:var(--portal-table-row-border);color:var(--portal-ink-secondary)}.portal-mockup .finance-mockup .fin-table tbody tr:hover{background:var(--portal-table-row-hover-bg)}.portal-mockup .finance-mockup .fin-tabs{border-bottom-color:var(--portal-border)}.portal-mockup .finance-mockup .fin-tab{font-size:var(--portal-text-sm);color:var(--portal-tab-fg)}.portal-mockup .finance-mockup .fin-tab:hover{color:var(--portal-tab-hover-fg)}.portal-mockup .finance-mockup .fin-tab--active{color:var(--portal-accent);background:var(--portal-accent-muted);box-shadow:inset 0 -2px 0 0 var(--portal-accent)}.portal-mockup .finance-mockup .fin-badge{font-size:var(--portal-text-xs)}.portal-mockup .finance-mockup .input-base,.portal-mockup .finance-mockup select:not([class*=pointer-events-none]),.portal-mockup .finance-mockup textarea{background-color:var(--portal-input-bg)!important;border-color:var(--portal-border-strong)!important;border-radius:var(--portal-radius)!important;color:var(--portal-ink);font-size:var(--portal-text-sm)}.portal-mockup .finance-mockup select optgroup,.portal-mockup .finance-mockup select option{background-color:var(--portal-dropdown-bg,var(--portal-input-bg));color:var(--portal-ink)}.portal-mockup .finance-mockup .fin-stat-select{background-color:var(--portal-input-bg);border-radius:var(--portal-radius);padding:.125rem .375rem}.portal-mockup .finance-mockup .input-base:focus,.portal-mockup .finance-mockup select:focus,.portal-mockup .finance-mockup textarea:focus{border-color:var(--portal-accent)!important;outline:none}.portal-mockup .finance-mockup .label-base{font-size:var(--portal-text-xs)!important;color:var(--portal-muted)!important}.portal-mockup .finance-mockup .fin-collapsible-header:hover{background:var(--portal-nav-hover-bg)}.portal-mockup .finance-mockup .fin-matrix{font-size:var(--portal-text-sm)}.portal-mockup .finance-mockup .fin-matrix th{background-color:var(--fin-matrix-header-bg)!important;color:var(--portal-muted)}.portal-mockup .finance-mockup .fin-matrix-th--rollup,.portal-mockup .finance-mockup .fin-matrix-th-group{background-color:var(--fin-matrix-group-bg)!important;color:var(--portal-ink-secondary)}.portal-mockup .finance-mockup .fin-matrix-corner,.portal-mockup .finance-mockup .fin-matrix-th-standalone,.portal-mockup .finance-mockup .fin-matrix-th-subhead{background-color:var(--fin-matrix-header-bg)!important}.portal-mockup .finance-mockup .fin-matrix-cell--rollup{background-color:var(--fin-matrix-rollup-bg);color:var(--portal-ink-secondary)}.portal-mockup .finance-mockup .fin-matrix td.fin-matrix-grade,.portal-mockup .finance-mockup .fin-matrix-grade{background-color:var(--fin-matrix-body-bg)!important;box-shadow:12px 0 0 0 var(--fin-matrix-body-bg)}.portal-mockup .finance-mockup .fin-matrix-corner{z-index:5;box-shadow:12px 0 0 0 var(--fin-matrix-header-bg),0 4px 0 0 var(--fin-matrix-header-bg)}.portal-mockup .finance-mockup .fin-matrix tbody td{background-color:var(--fin-matrix-body-bg)}.portal-mockup .finance-mockup .fin-matrix-row--selected .fin-matrix-grade,.portal-mockup .finance-mockup .fin-matrix-row--selected td,.portal-mockup .finance-mockup .fin-matrix-row--selected td.fin-matrix-grade{background-color:var(--fin-matrix-selected-bg)!important}.portal-mockup .finance-mockup .fin-matrix-row--selected .fin-matrix-grade,.portal-mockup .finance-mockup .fin-matrix-row--selected td.fin-matrix-grade{box-shadow:12px 0 0 0 var(--fin-matrix-selected-bg)}.portal-mockup .finance-mockup .fin-matrix-cell--na{background-color:var(--fin-matrix-na-bg);color:var(--portal-muted)}.portal-mockup .finance-mockup .fin-matrix-inline-input,.portal-mockup .finance-mockup .fin-matrix-input{background-color:var(--fin-matrix-body-bg)}.portal-mockup .finance-mockup .fin-matrix-inline-input:focus,.portal-mockup .finance-mockup .fin-matrix-input:focus{border-color:var(--portal-accent);background-color:var(--portal-surface-input)}.portal-mockup .finance-mockup .fin-matrix-row--selected .fin-matrix-inline-input{background-color:var(--fin-matrix-selected-bg)}.portal-mockup .finance-mockup .fin-matrix-row--selected .fin-matrix-inline-input:focus{background-color:var(--portal-surface-input)}.portal-mockup .finance-mockup .fin-matrix-cell--na .fin-matrix-inline-input{background-color:var(--fin-matrix-na-bg)}.portal-mockup .finance-mockup .fin-matrix-cell--na .fin-matrix-inline-input:focus{background-color:var(--portal-surface-input)}[data-theme=dark] .portal-mockup .finance-mockup{--fin-matrix-header-bg:#0d100e;--fin-matrix-group-bg:#141a17;--fin-matrix-body-bg:#111614;--fin-matrix-rollup-bg:#141a17;--fin-matrix-na-bg:#161c19;--fin-matrix-selected-bg:#132820}[data-theme=dark] .portal-mockup .finance-mockup .fin-matrix th,[data-theme=dark] .portal-mockup .finance-mockup .fin-matrix-head-row-2 th{box-shadow:0 4px 0 0 var(--fin-matrix-header-bg)}[data-theme=dark] .portal-mockup .finance-mockup .fin-matrix-th--rollup,[data-theme=dark] .portal-mockup .finance-mockup .fin-matrix-th-group{box-shadow:0 4px 0 0 var(--fin-matrix-group-bg)}[data-theme=dark] .portal-mockup .finance-mockup .fin-matrix td.fin-matrix-grade,[data-theme=dark] .portal-mockup .finance-mockup .fin-matrix-grade{box-shadow:12px 0 0 0 var(--fin-matrix-body-bg)}[data-theme=dark] .portal-mockup .finance-mockup .fin-matrix-corner{box-shadow:12px 0 0 0 var(--fin-matrix-header-bg),0 4px 0 0 var(--fin-matrix-header-bg)}[data-theme=dark] .portal-mockup .finance-mockup .fin-matrix-row--selected .fin-matrix-grade,[data-theme=dark] .portal-mockup .finance-mockup .fin-matrix-row--selected td.fin-matrix-grade{box-shadow:12px 0 0 0 var(--fin-matrix-selected-bg)}.portal-mockup .finance-mockup .fin-preview-toggle--on,.portal-mockup .finance-mockup .fin-toggle--on{background:var(--portal-accent)}.portal-mockup .finance-mockup .fin-invoice-pupil-bar,.portal-mockup .finance-mockup .fin-preview-header{background:var(--portal-table-header-bg);border-color:var(--portal-border)}.portal-mockup .finance-mockup .fin-invoice-optins,.portal-mockup .finance-mockup .fin-invoice-simulator,.portal-mockup .finance-mockup .fin-toggle-row{background:var(--portal-muted-surface);border-color:var(--portal-border)}.portal-mockup .finance-mockup .fin-invoice-simulator{background:var(--portal-muted-surface)}.portal-mockup .finance-mockup .fin-lifecycle-badge--published{color:var(--portal-accent);background:var(--portal-accent-muted);border-color:var(--portal-accent-border)}.portal-mockup .finance-mockup .fin-lifecycle-badge--draft{color:var(--fin-amber);background:var(--fin-amber-bg)}.portal-mockup .finance-mockup .fin-lifecycle-badge--locked{color:var(--portal-muted);background:var(--portal-muted-surface)}.portal-mockup .finance-mockup .fin-tab-count{background:var(--portal-tab-count-bg);color:var(--portal-tab-count-fg)}.portal-mockup .finance-mockup .fin-matrix-active-tag,.portal-mockup .finance-mockup .fin-matrix-fill-down{color:var(--portal-accent)}.portal-mockup .finance-modal-panel{background:var(--portal-surface);border-color:var(--portal-border-strong);color:var(--portal-ink);border-radius:var(--portal-radius-lg);box-shadow:var(--portal-auth-card-shadow)}.portal-mockup .finance-modal-panel .input-base,.portal-mockup .finance-modal-panel textarea{background:var(--portal-input-bg);border-color:var(--portal-border-strong);color:var(--portal-ink)}.portal-mockup .finance-modal-title{font-family:var(--portal-font);font-size:var(--portal-text-title);color:var(--portal-ink-secondary)}.fin-drawer-overlay{position:fixed;inset:0;z-index:60;background:rgba(0,0,0,.55)}.fin-drawer{position:fixed;top:0;right:0;z-index:70;display:flex;flex-direction:column;width:min(420px,100vw);height:100vh;background:var(--fin-card,#fff);border-left:1px solid var(--fin-border,rgba(0,0,0,.07));box-shadow:-16px 0 48px rgba(0,0,0,.18)}.fin-drawer-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;padding:1rem 1.125rem;border-bottom:1px solid var(--fin-border);background:var(--fin-bg,#faf8f4)}.fin-drawer-title{font-size:.9375rem;font-weight:700;color:var(--fin-text);letter-spacing:-.02em}.fin-drawer-sub{margin-top:.125rem;font-size:.625rem;color:var(--fin-muted)}.fin-drawer-close{display:flex;align-items:center;justify-content:center;width:28px;height:28px;flex-shrink:0;border:1px solid var(--fin-border);border-radius:6px;background:transparent;color:var(--fin-muted);cursor:pointer;font-size:14px}.fin-drawer-close:hover{color:var(--fin-text);background:rgba(0,0,0,.04)}.fin-drawer-steps{display:flex;align-items:center;padding:.75rem 1.125rem;border-bottom:1px solid var(--fin-border);background:rgba(0,0,0,.02)}.fin-drawer-steps__group{display:contents}.fin-drawer-step{display:flex;align-items:center;gap:.375rem;font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--fin-muted)}.fin-drawer-step-num{display:flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;font-size:9px;border:1px solid var(--fin-border);background:var(--fin-card)}.fin-drawer-step--active{color:var(--fin-gold,#b8930a)}.fin-drawer-step--active .fin-drawer-step-num{background:rgba(212,175,55,.12);border-color:rgba(212,175,55,.35);color:var(--fin-gold,#b8930a)}.fin-drawer-step--done{color:var(--fin-green,#1a5c28)}.fin-drawer-step--done .fin-drawer-step-num{background:var(--fin-green-bg,#e5f2ea);border-color:rgba(26,92,40,.25);color:var(--fin-green,#1a5c28)}.fin-drawer-step-connector{flex:1;height:1px;min-width:1.5rem;margin:0 .5rem;background:var(--fin-border)}.fin-drawer-body{flex:1;overflow:auto;padding:1rem 1.125rem}.fin-drawer-form{display:flex;flex-direction:column;gap:.75rem}.fin-drawer-field{display:flex;flex-direction:column;gap:.25rem}.fin-drawer-field>span{font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--fin-muted)}.fin-drawer-field--full{grid-column:1/-1}.fin-drawer-filters{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-bottom:.75rem}.fin-drawer-section-label{margin-bottom:.5rem;font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--fin-muted)}.fin-amount-display{padding:.625rem .75rem;background:rgba(0,0,0,.02);border:1px solid var(--fin-border);border-radius:6px;font-size:.75rem;color:var(--fin-text)}.fin-amount-value{display:block;font-weight:700;color:var(--fin-gold,#b8930a);font-variant-numeric:tabular-nums}.fin-amount-note{display:block;margin-top:.25rem;font-size:.625rem;color:var(--fin-muted)}.fin-opt-in-count{align-items:center;background:var(--fin-green-bg,#e5f2ea);border:1px solid rgba(26,92,40,.25);border-radius:6px;font-weight:600;color:var(--fin-green,#1a5c28)}.fin-opt-in-callout,.fin-opt-in-count{display:flex;gap:.5rem;padding:.625rem .75rem;font-size:.6875rem}.fin-opt-in-callout{background:rgba(212,175,55,.12);border:1px solid rgba(212,175,55,.35);border-radius:6px;color:var(--fin-gold,#b8930a);line-height:1.45}.fin-opt-in-callout--warn{margin-bottom:.75rem;background:rgba(245,158,11,.12);border-color:rgba(245,158,11,.35);color:#b45309}.fin-item-context{flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}.fin-item-context,.fin-select-all-row{display:flex;align-items:center;padding:.5rem .625rem;background:rgba(0,0,0,.02);border:1px solid var(--fin-border);border-radius:6px;font-size:.6875rem}.fin-select-all-row{justify-content:space-between;margin-bottom:.375rem;font-weight:600}.fin-select-all-row label{display:flex;align-items:center;gap:.5rem;cursor:pointer}.fin-student-list{max-height:280px;overflow-y:auto;border:1px solid var(--fin-border);border-radius:6px}.fin-student-row{display:flex;align-items:center;gap:.625rem;padding:.5rem .625rem;border-bottom:1px solid var(--fin-border);cursor:pointer;transition:background .12s}.fin-student-row:last-child{border-bottom:none}.fin-student-row:hover{background:#f9f5ee}.fin-student-row--selected{background:rgba(26,92,40,.06)}.fin-student-row--to-add{box-shadow:inset 3px 0 0 var(--fin-green,#1a5c28)}.fin-student-row--to-remove{box-shadow:inset 3px 0 0 #dc2626}.fin-student-info{flex:1;min-width:0}.fin-student-name{font-weight:600;font-size:.75rem;color:var(--fin-text)}.fin-student-meta{margin-top:.0625rem;font-size:.625rem;color:var(--fin-muted)}.fin-badge-opted-in{flex-shrink:0;background:rgba(0,0,0,.04);color:var(--fin-muted);border:1px solid var(--fin-border);font-size:9px}.fin-badge-add{background:var(--fin-green-bg,#e5f2ea);color:var(--fin-green,#1a5c28);border:1px solid rgba(26,92,40,.25)}.fin-badge-remove{background:rgba(248,113,113,.12);color:#dc2626;border:1px solid rgba(248,113,113,.35)}.fin-review-table{width:100%;border-collapse:collapse;font-size:.6875rem;margin-bottom:.75rem}.fin-review-table th{text-align:left;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--fin-muted);background:#f8f4ec}.fin-review-table td,.fin-review-table th{padding:.5rem .625rem;border-bottom:1px solid var(--fin-border)}.fin-review-table td{color:var(--fin-text)}.fin-review-summary{display:flex;flex-wrap:wrap;gap:.5rem 1rem;align-items:center;justify-content:space-between;padding:.75rem .875rem;background:rgba(0,0,0,.02);border:1px solid var(--fin-border);border-radius:6px;font-size:.75rem;font-weight:600}.fin-review-delta-parts{font-weight:500;font-size:.6875rem;color:var(--fin-muted)}.fin-review-net{color:var(--fin-gold,#b8930a);font-variant-numeric:tabular-nums}.fin-delta-footer{display:flex;align-items:center;justify-content:center;gap:.75rem;margin-bottom:.625rem;padding:.5rem .75rem;background:rgba(0,0,0,.02);border:1px solid var(--fin-border);border-radius:6px;font-size:.75rem;font-weight:600;font-variant-numeric:tabular-nums}.fin-drawer-footer{padding:.875rem 1.125rem;border-top:1px solid var(--fin-border);background:var(--fin-bg,#faf8f4)}.fin-drawer-footer-actions{display:flex;gap:.5rem;justify-content:flex-end}.fin-drawer-footer-actions .fin-drawer-footer-actions>button,.fin-drawer-footer-actions>button{flex:1;max-width:140px}[data-theme=dark] .portal-mockup .fin-drawer{background:var(--portal-surface);border-color:var(--portal-border-strong);box-shadow:var(--portal-auth-card-shadow)}[data-theme=dark] .portal-mockup .fin-drawer-footer,[data-theme=dark] .portal-mockup .fin-drawer-header{background:var(--portal-table-header-bg);border-color:var(--portal-border)}[data-theme=dark] .portal-mockup .fin-student-row--selected,[data-theme=dark] .portal-mockup .fin-student-row:hover{background:var(--portal-table-hover)}.finance-mockup .fin-page-tabs{display:inline-flex;flex-wrap:wrap;gap:.125rem;padding:.125rem;margin-bottom:1rem;background:rgba(0,0,0,.04);border:1px solid var(--fin-border);border-radius:6px}.finance-mockup .fin-page-tabs .fin-tab{border-radius:calc(6px - 2px);border:1px solid transparent;padding:.45rem 1rem}.finance-mockup .fin-page-tabs .fin-tab--active{color:var(--fin-gold);background:var(--fin-gold-bg);border-color:rgba(184,147,10,.35);box-shadow:none}.finance-mockup .fin-summary-strip{display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;align-items:center;padding:.75rem 1rem;margin-bottom:1rem;background:var(--fin-card);border:1px solid var(--fin-border);border-radius:12px;font-size:.75rem}.finance-mockup .fin-summary-strip strong{color:var(--fin-text);font-weight:700}.finance-mockup .fin-summary-stat{color:var(--fin-muted)}.finance-mockup .fin-summary-stat em{font-style:normal;color:var(--fin-gold);font-weight:700}.finance-mockup .fin-summary-stat--danger em{color:var(--fin-red)}.finance-mockup .fin-filters-row{display:flex;flex-wrap:wrap;gap:.75rem;align-items:flex-end;margin-bottom:1rem;padding:.75rem 1rem;background:var(--fin-card);border:1px solid var(--fin-border);border-radius:12px}.finance-mockup .fin-filters-row .fin-field{display:flex;flex-direction:column;gap:.25rem}.finance-mockup .fin-filters-row .fin-field-label{font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--fin-muted)}.finance-mockup .fin-filters-row .fin-field--search{flex:1 1 160px;min-width:140px}.finance-mockup .fin-card-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid var(--fin-border);font-size:.75rem;font-weight:600;color:var(--fin-text)}.finance-mockup .fin-card-header .fin-count{font-size:.625rem;font-weight:500;color:var(--fin-muted);background:rgba(0,0,0,.03);padding:.125rem .5rem;border-radius:9999px;border:1px solid var(--fin-border)}.finance-mockup .fin-table-wrap--sticky{max-height:calc(100vh - 320px);overflow:auto}.finance-mockup .fin-table-wrap--register{max-height:min(80vh,calc(100vh - 280px));overflow:auto}.finance-mockup .fin-table-pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem 1rem;margin-top:.5rem;padding-top:.5rem;font-size:.75rem;color:var(--fin-muted)}.finance-mockup .fin-table-pagination__actions{display:flex;gap:.5rem}.fin-drawer-root{position:fixed;inset:0;z-index:9999;pointer-events:none}.fin-drawer-root .fin-drawer,.fin-drawer-root .fin-drawer-overlay,.fin-drawer-root .fin-modal-overlay,.fin-drawer-root .fin-modal-panel{pointer-events:auto}.fin-drawer-root .fin-drawer-overlay,.fin-drawer-root .fin-modal-overlay{position:fixed;inset:0;z-index:1;background:rgba(0,0,0,.55)}.fin-drawer-root .fin-drawer{position:fixed;top:0;right:0;z-index:2}.fin-drawer-root .fin-modal{position:fixed;inset:0;z-index:2;display:flex;align-items:center;justify-content:center;padding:1rem;pointer-events:none}.fin-drawer-root .fin-modal-panel{display:flex;flex-direction:column;width:100%;max-width:32rem;max-height:90vh;overflow:hidden;background:var(--portal-surface,var(--fin-card,#fff));border:1px solid var(--portal-border,var(--fin-border));border-radius:var(--portal-radius,.5rem);box-shadow:var(--portal-auth-card-shadow,0 25px 50px -12px rgba(0,0,0,.35));color:var(--portal-ink,var(--fin-text))}.finance-mockup .fin-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;padding:.875rem 1rem;border-bottom:1px solid var(--fin-border);background:var(--fin-bg-header,var(--fin-surface-alt,rgba(0,0,0,.02)))}.finance-mockup .fin-modal-body{flex:1;overflow-y:auto;padding:1rem}.finance-mockup .fin-modal-footer{display:flex;justify-content:flex-end;gap:.5rem;padding:.875rem 1rem;border-top:1px solid var(--fin-border);background:var(--fin-bg-header,var(--fin-surface-alt,rgba(0,0,0,.02)))}.finance-mockup .fin-modal-close{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid var(--fin-border);border-radius:.375rem;background:transparent;font-size:1.125rem;line-height:1;color:var(--fin-muted);cursor:pointer}.finance-mockup .fin-modal-close:hover{color:var(--fin-text);background:rgba(0,0,0,.04)}[data-theme=dark] .fin-drawer-root .fin-modal-panel{background:var(--portal-surface);border-color:var(--portal-border-strong);color:var(--portal-ink)}[data-theme=dark] .fin-drawer-root .fin-modal-footer,[data-theme=dark] .fin-drawer-root .fin-modal-header{background:var(--portal-table-header-bg);border-color:var(--portal-border)}[data-theme=dark] .fin-drawer-root .fin-modal-body,[data-theme=dark] .fin-drawer-root .fin-modal-body .font-semibold{color:var(--portal-ink)}[data-theme=dark] .fin-drawer-root .fin-modal-panel .fin-control,[data-theme=dark] .fin-drawer-root .fin-modal-panel input[type=text],[data-theme=dark] .fin-drawer-root .fin-modal-panel select,[data-theme=dark] .fin-drawer-root .fin-modal-panel textarea{background:var(--portal-surface-input);border-color:var(--portal-border-strong);color:var(--portal-ink)}[data-theme=dark] .fin-drawer-root .fin-modal-panel .components-list>div{background:var(--portal-muted-surface);border-color:var(--portal-border);color:var(--portal-ink)}[data-theme=dark] .fin-drawer-root .fin-modal-close{border-color:var(--portal-border-strong);color:var(--portal-ink-muted)}[data-theme=dark] .fin-drawer-root .fin-modal-close:hover{background:var(--portal-table-hover);color:var(--portal-ink)}[data-theme=dark] .fin-drawer-root .fin-drawer-body,[data-theme=dark] .fin-drawer-root .fin-drawer-sub,[data-theme=dark] .fin-drawer-root .fin-drawer-title,[data-theme=dark] .fin-drawer-root .fin-student-opt-label{color:var(--portal-ink)}[data-theme=dark] .fin-drawer-root .fin-muted{color:var(--portal-ink-muted)}[data-theme=dark] .fin-drawer-root .fin-control,[data-theme=dark] .fin-drawer-root input[type=number],[data-theme=dark] .fin-drawer-root input[type=search],[data-theme=dark] .fin-drawer-root select{background:var(--portal-surface);border-color:var(--portal-border-strong);color:var(--portal-ink)}[data-theme=dark] .fin-drawer-root .fin-amount-display,[data-theme=dark] .fin-drawer-root .fin-review-table,[data-theme=dark] .fin-drawer-root .fin-student-row{background:var(--portal-surface);border-color:var(--portal-border);color:var(--portal-ink)}[data-theme=dark] .fin-drawer-root .fin-drawer-close{border-color:var(--portal-border-strong);color:var(--portal-ink-muted)}[data-theme=dark] .fin-drawer-root .fin-drawer-close:hover{background:var(--portal-table-hover);color:var(--portal-ink)}.finance-mockup .fin-table-wrap--sticky thead th{position:sticky;top:0;z-index:2;background:#f8f4ec}.finance-mockup .fin-ops-layout{display:flex;flex-direction:column;gap:.625rem;min-height:0;max-height:min(80vh,calc(100vh - 220px));overflow:hidden}.finance-mockup .fin-ops-gen-card{flex-shrink:0;padding:.625rem .875rem}.finance-mockup .fin-ops-gen-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem}.finance-mockup .fin-ops-gen-meta{display:flex;flex-direction:column;gap:.375rem;min-width:0}.finance-mockup .fin-ops-gen-scope{display:flex;flex-wrap:wrap;align-items:center;gap:.625rem}.finance-mockup .fin-ops-grade-chips{display:flex;flex-wrap:wrap;gap:.375rem .625rem}.finance-mockup .fin-ops-gen-actions{display:flex;flex-shrink:0;flex-direction:column;align-items:flex-end;gap:.25rem}.finance-mockup .fin-ops-table-card{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.finance-mockup .fin-ops-table-toolbar{flex-shrink:0}.finance-mockup .fin-table-wrap--ops{flex:1;min-height:0;max-height:min(80vh,calc(100vh - 280px));overflow:auto}.finance-mockup .fin-ops-table-footer{flex-shrink:0}.finance-mockup .fin-selection-bar{display:flex;flex-wrap:wrap;align-items:center;gap:.375rem;margin-bottom:.5rem;padding:.375rem .625rem;font-size:.75rem;background:rgba(0,0,0,.02);border:1px solid var(--fin-border);border-radius:.375rem}.finance-mockup .fin-table-check-col{width:2rem;padding-left:.5rem!important;padding-right:.25rem!important}.finance-mockup .fin-table--selectable tbody tr.fin-table-row-clickable{cursor:pointer}.finance-mockup .fin-table--selectable tbody tr.fin-table-row--selected{background:rgba(184,134,11,.06)}.finance-mockup .fin-bill-summary--compact{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.finance-mockup .fin-student-opt-items{display:flex;flex-direction:column;gap:.25rem}.finance-mockup .fin-student-opt-row{display:flex;align-items:center;gap:.5rem;padding:.375rem .5rem;border:1px solid var(--fin-border);border-radius:.25rem;font-size:.8125rem;cursor:pointer}.finance-mockup .fin-student-opt-label{flex:1;min-width:0}.finance-mockup .fin-student-opt-amount{font-size:.6875rem;color:var(--fin-muted);white-space:nowrap}.finance-mockup .fin-student-opt-group{display:flex;flex-direction:column;gap:.25rem;margin-top:.25rem}.finance-mockup .fin-discount-chips{display:flex;flex-wrap:wrap;gap:.375rem}.finance-mockup .fin-discount-chip{display:inline-flex;flex-direction:column;align-items:flex-start;gap:.125rem;padding:.375rem .625rem;font-size:.75rem;font-weight:600;border:1px solid var(--fin-border);border-radius:9999px;background:var(--fin-surface,#fff);cursor:pointer}.finance-mockup .fin-discount-chip--active{border-color:var(--fin-gold,#b8860b);background:rgba(184,134,11,.08);color:var(--fin-gold,#b8860b)}.finance-mockup .fin-discount-chip-meta{font-size:.625rem;font-weight:500;color:var(--fin-muted)}.finance-mockup .fin-student-bill-drawer{max-width:28rem}[data-theme=dark] .portal-mockup .finance-mockup .fin-table-wrap--sticky thead th{background:#0d100e;box-shadow:0 2px 0 0 var(--fin-border)}[data-theme=dark] .portal-mockup .finance-mockup .fin-table--selectable tbody tr.fin-table-row--selected{background:rgba(184,134,11,.12)}.finance-mockup .fin-badge-comms-paused{background:rgba(0,0,0,.04);color:var(--fin-muted);border:1px solid var(--fin-border)}.finance-mockup .fin-badge-comms-plan{background:var(--fin-blue-bg);color:var(--fin-blue)}.finance-mockup .fin-cockpit-split{display:grid;grid-template-columns:220px 1fr;gap:1rem;min-height:420px}@media (max-width:900px){.finance-mockup .fin-cockpit-split{grid-template-columns:1fr}}.finance-mockup .fin-wave-timeline{display:flex;flex-direction:column;gap:0;padding:.5rem;background:var(--fin-card);border:1px solid var(--fin-border);border-radius:12px}.finance-mockup .fin-wave-node{position:relative;padding:.75rem .875rem .75rem 2rem;border:1px solid transparent;background:transparent;text-align:left;cursor:pointer;border-radius:6px;font-family:inherit;color:var(--fin-muted);transition:background .14s;width:100%}.finance-mockup .fin-wave-node:before{content:"";position:absolute;left:.875rem;top:0;bottom:0;width:2px;background:var(--fin-border)}.finance-mockup .fin-wave-node:first-child:before{top:50%}.finance-mockup .fin-wave-node:last-child:before{bottom:50%}.finance-mockup .fin-wave-dot{position:absolute;left:.5rem;top:50%;transform:translateY(-50%);width:14px;height:14px;border-radius:50%;border:2px solid var(--fin-border);background:#f9f5ed;z-index:1}.finance-mockup .fin-wave-node--sent .fin-wave-dot{background:var(--fin-green);border-color:var(--fin-green)}.finance-mockup .fin-wave-node--active .fin-wave-dot{background:var(--fin-gold);border-color:var(--fin-gold);box-shadow:0 0 0 3px var(--fin-gold-bg)}.finance-mockup .fin-wave-node--scheduled .fin-wave-dot{background:var(--fin-blue);border-color:var(--fin-blue)}.finance-mockup .fin-wave-node--locked .fin-wave-dot{background:var(--fin-red);border-color:var(--fin-red)}.finance-mockup .fin-wave-node:hover{background:rgba(0,0,0,.02)}.finance-mockup .fin-wave-node--active{background:var(--fin-gold-bg);border-color:rgba(184,147,10,.35)}.finance-mockup .fin-wave-label{font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--fin-muted)}.finance-mockup .fin-wave-title{font-size:.75rem;font-weight:700;color:var(--fin-text);margin:.125rem 0}.finance-mockup .fin-wave-meta{font-size:.625rem;color:var(--fin-muted)}.finance-mockup .fin-cockpit-header{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;padding:.75rem 1rem;background:var(--fin-card);border:1px solid var(--fin-border);border-radius:12px;margin-bottom:.75rem}.finance-mockup .fin-hof-banner{display:flex;align-items:center;gap:.5rem;padding:.625rem .875rem;margin-bottom:.75rem;background:var(--fin-red-bg);border:1px solid rgba(185,28,28,.25);border-radius:6px;font-size:.6875rem;color:var(--fin-red);font-weight:600}.finance-mockup .fin-scope-note{font-size:.625rem;color:var(--fin-muted);margin-bottom:.75rem;padding:.5rem .75rem;background:rgba(0,0,0,.02);border-radius:6px;border-left:3px solid var(--fin-gold)}.finance-mockup .fin-mental-model{display:flex;gap:.75rem;padding:.75rem 1rem;margin-bottom:1rem;background:var(--fin-gold-bg,rgba(212,175,55,.12));border:1px solid var(--fin-gold-border,rgba(212,175,55,.35));border-radius:12px;font-size:.6875rem;color:var(--fin-gold,#b8930a);align-items:flex-start}.finance-mockup .fin-mental-model-icon{font-size:.875rem;flex-shrink:0;line-height:1.4}.finance-mockup .fin-mental-model strong{display:block;font-size:.75rem;margin-bottom:.25rem}.finance-mockup .fin-mental-model span{opacity:.9;line-height:1.5}.finance-mockup .fin-scope-list{display:flex;flex-direction:column;gap:.25rem;max-height:360px;overflow:auto}.finance-mockup .fin-scope-item{display:flex;align-items:flex-start;gap:.625rem;padding:.5rem .75rem;background:rgba(0,0,0,.02);border:1px solid var(--fin-border);border-radius:6px;font-size:.75rem}.finance-mockup .fin-scope-item--removed{opacity:.65}.finance-mockup .fin-scope-item--removed .fin-scope-name{text-decoration:line-through;color:var(--fin-muted)}.finance-mockup .fin-scope-item input[type=checkbox]{margin-top:.2rem;accent-color:var(--fin-gold);flex-shrink:0}.finance-mockup .fin-scope-name{font-weight:600;color:var(--fin-text)}.finance-mockup .fin-scope-meta{font-size:.625rem;color:var(--fin-muted)}.finance-mockup .fin-scope-reason{font-size:.625rem;color:var(--fin-amber);margin-top:.125rem}.finance-mockup .fin-comms-subtabs{display:inline-flex;gap:.125rem;padding:.125rem;margin-bottom:1rem;background:rgba(0,0,0,.04);border:1px solid var(--fin-border);border-radius:6px}.finance-mockup .fin-comms-subtabs button{border:1px solid transparent;background:transparent;color:var(--fin-muted);font-family:inherit;font-size:.6875rem;font-weight:600;padding:.4rem .875rem;border-radius:calc(6px - 2px);cursor:pointer}.finance-mockup .fin-comms-subtabs button:hover{color:var(--fin-text);background:rgba(0,0,0,.03)}.finance-mockup .fin-comms-subtabs button.active{color:var(--fin-gold);background:var(--fin-gold-bg);border-color:rgba(184,147,10,.35)}.finance-mockup .fin-waterfall-legend{padding:.625rem .875rem;margin-bottom:1rem;background:var(--fin-gold-bg);border:1px solid rgba(184,147,10,.35);border-radius:6px;font-size:.6875rem;color:var(--fin-gold)}.finance-mockup .fin-waterfall-steps{display:flex;flex-wrap:wrap;gap:.25rem;margin-top:.375rem}.finance-mockup .fin-waterfall-step{display:inline-flex;padding:.2rem .5rem;background:rgba(0,0,0,.06);border-radius:9999px;font-size:.625rem;font-weight:600}.finance-mockup .fin-bill-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;margin-bottom:1rem}.finance-mockup .fin-bill-summary-item{padding:.625rem .75rem;background:rgba(0,0,0,.02);border:1px solid var(--fin-border);border-radius:6px;text-align:center}.finance-mockup .fin-bill-summary-item .label{display:block;font-size:.5625rem;font-weight:700;text-transform:uppercase;color:var(--fin-muted);margin-bottom:.25rem}.finance-mockup .fin-bill-summary-item .value{font-size:.875rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--fin-text)}.finance-mockup .fin-bill-summary-item--due .value{color:var(--fin-red)}.finance-mockup .fin-progress-bar{height:6px;border-radius:9999px;background:rgba(0,0,0,.06);overflow:hidden;margin-bottom:1rem}.finance-mockup .fin-progress-bar-fill{height:100%;border-radius:9999px;background:linear-gradient(90deg,var(--fin-green) 0,var(--fin-gold) 100%);transition:width .2s ease}.finance-mockup .fin-breakdown-table tr.fin-breakdown-p1 td:first-child{box-shadow:inset 3px 0 0 var(--fin-gold)}.finance-mockup .fin-breakdown-table tr.fin-breakdown-p2 td:first-child{box-shadow:inset 3px 0 0 var(--fin-blue)}.finance-mockup .fin-breakdown-table tr.fin-breakdown-p3 td:first-child{box-shadow:inset 3px 0 0 var(--fin-muted)}.finance-mockup .fin-breakdown-table tr.fin-breakdown-p4 td:first-child{box-shadow:inset 3px 0 0 rgba(0,0,0,.15)}.finance-mockup .fin-schedule-builder{padding:1rem;background:var(--fin-card);border:1px solid var(--fin-border);border-radius:12px;margin-bottom:1rem}.finance-mockup .fin-schedule-dates{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--fin-border)}.finance-mockup .fin-schedule-rows{display:flex;flex-direction:column;gap:.5rem}.finance-mockup .fin-schedule-row{display:grid;grid-template-columns:auto 1fr auto;gap:.5rem;align-items:start;padding:.625rem .75rem;background:rgba(0,0,0,.02);border:1px solid var(--fin-border);border-radius:6px}@media (max-width:700px){.finance-mockup .fin-schedule-row{grid-template-columns:1fr}}.finance-mockup .fin-channel-note{display:flex;align-items:center;gap:.5rem;padding:.625rem .75rem;background:var(--fin-green-bg);border:1px solid rgba(26,92,40,.2);border-radius:6px;font-size:.6875rem;color:var(--fin-green);font-weight:600}.finance-mockup .fin-channel-pill{display:inline-flex;font-size:.5625rem;font-weight:700;padding:.125rem .4rem;border-radius:9999px;background:var(--fin-green-bg);color:var(--fin-green);border:1px solid rgba(26,92,40,.25)}.finance-mockup .fin-wizard-steps{display:flex;align-items:center;gap:0;padding:.75rem 0;margin-bottom:1rem;border-bottom:1px solid var(--fin-border)}.finance-mockup .fin-wizard-step{display:flex;align-items:center;gap:.375rem;font-size:.625rem;font-weight:600;color:var(--fin-muted);text-transform:uppercase;flex:1;justify-content:center}.finance-mockup .fin-wizard-step-num{width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.5625rem;border:1px solid var(--fin-border);background:#f9f5ed}.finance-mockup .fin-wizard-step--active{color:var(--fin-gold)}.finance-mockup .fin-wizard-step--active .fin-wizard-step-num{background:var(--fin-gold-bg);border-color:rgba(184,147,10,.35);color:var(--fin-gold)}.finance-mockup .fin-wizard-step--done{color:var(--fin-green)}.finance-mockup .fin-wizard-step--done .fin-wizard-step-num{background:var(--fin-green-bg);border-color:rgba(26,92,40,.25);color:var(--fin-green)}.finance-mockup .fin-wizard-connector{flex:0 0 1.5rem;height:1px;background:var(--fin-border)}.finance-mockup .fin-empty-state{padding:2rem 1rem;text-align:center;font-size:.8125rem;color:var(--fin-muted)}.finance-mockup .fin-severity-badge{display:inline-flex;align-items:center;padding:.125rem .5rem;border-radius:9999px;font-size:.5625rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.finance-mockup .fin-severity-badge--friendly{background:var(--fin-green-bg);color:var(--fin-green)}.finance-mockup .fin-severity-badge--firm{background:var(--fin-gold-bg);color:var(--fin-gold)}.finance-mockup .fin-severity-badge--warning{background:var(--fin-amber-bg);color:var(--fin-amber)}.finance-mockup .fin-severity-badge--final{background:var(--fin-red-bg);color:var(--fin-red)}.finance-mockup .fin-priority-group{padding:.75rem 1rem;background:rgba(0,0,0,.02);border:1px solid var(--fin-border);border-radius:6px;display:flex;align-items:flex-start;gap:.75rem}.finance-mockup .fin-priority-group--locked{border-color:rgba(184,147,10,.35);background:var(--fin-gold-bg)}.finance-mockup .fin-priority-num{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.6875rem;font-weight:700;background:#f9f5ed;border:1px solid var(--fin-border);flex-shrink:0}.finance-mockup .fin-priority-group--locked .fin-priority-num{background:var(--fin-gold-bg);color:var(--fin-gold);border-color:rgba(184,147,10,.35)}.finance-mockup .fin-allocation-preview{padding:.875rem 1rem;background:var(--fin-gold-bg);border:1px solid rgba(184,147,10,.35);border-radius:12px;font-size:.75rem;color:var(--fin-gold);margin-bottom:1rem}.finance-mockup .fin-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1rem;margin-bottom:1rem;padding:.75rem 1rem;background:var(--fin-card);border:1px solid var(--fin-border);border-radius:12px}.finance-mockup .fin-link{color:var(--fin-gold);font-weight:600;text-decoration:none}.finance-mockup .fin-link:hover{text-decoration:underline}.fin-fee-notif-card{border-left:4px solid var(--fin-gold,#b8930a)}.fin-fee-notif-card--warning{border-left-color:#fb923c}.fin-fee-notif-card--final{border-left-color:var(--fin-red,#b91c1c)}.fin-fee-notif-card--friendly{border-left-color:var(--fin-green,#1a5c28)}.fin-fee-notif-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.fin-fee-notif-meta{font-size:.75rem;color:var(--text-muted,#7b7060);margin-top:.25rem}