:root{--bg:#f4efe6;--surface:rgba(255,252,246,0.92);--surface-strong:#fffefb;--surface-tinted:rgba(15,118,110,0.06);--text:#1a2230;--muted:#6b6760;--muted-light:#9c9893;--line:rgba(26,34,48,0.1);--shadow:0 16px 48px rgba(60,40,8,0.07);--shadow-card:0 2px 12px rgba(60,40,8,0.06);--accent:#0f766e;--accent-strong:#115e59;--accent-light:rgba(15,118,110,0.1);--success:#15803d;--success-bg:rgba(21,128,61,0.1);--warning:#b45309;--warning-bg:rgba(180,83,9,0.1);--danger:#b91c1c;--danger-bg:rgba(185,28,28,0.1);--info:#0369a1;--info-bg:rgba(3,105,161,0.1);--gray:#6b7280;--gray-bg:rgba(107,114,128,0.1);--state-current:var(--success);--state-current-bg:var(--success-bg);--state-at-risk:var(--warning);--state-at-risk-bg:var(--warning-bg);--state-overdue:var(--danger);--state-overdue-bg:var(--danger-bg);--state-pending:var(--warning);--state-pending-bg:var(--warning-bg);--state-confirmed:var(--success);--state-confirmed-bg:var(--success-bg);--state-disputed:var(--danger);--state-disputed-bg:var(--danger-bg);--state-investor:var(--info);--state-investor-bg:var(--info-bg)}*{box-sizing:border-box}html{font-family:Inter,Helvetica Neue,system-ui,-apple-system,sans-serif;background:radial-gradient(circle at top left,rgba(15,118,110,.14),transparent 28%),radial-gradient(circle at bottom right,rgba(217,119,6,.16),transparent 26%),linear-gradient(180deg,#fbf7ef,#f2eadb);color:var(--text)}body{margin:0;min-height:100vh}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.app-shell{display:grid;grid-template-columns:280px minmax(0,1fr);min-height:100vh}.sidebar{padding:28px;border-right:1px solid var(--line);background:rgba(255,248,237,.65);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);display:flex;flex-direction:column;gap:24px}.sidebar nav{flex:1 1}.sidebar-footer{padding-top:12px;border-top:1px solid var(--line)}.logout-button{width:100%}.brand-kicker,.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.72rem;color:var(--accent-strong)}.nav-link{display:block;padding:12px 14px;border-radius:14px;margin-bottom:8px;background:transparent;transition:transform .18s ease,background .18s ease}.nav-link:hover{background:var(--accent-light);transform:translateX(3px)}.nav-link.active{background:var(--accent);color:#fff;transform:translateX(3px);font-weight:700}.page{padding:28px}.page-header{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;margin-bottom:24px}.login-card h1,.page h2{margin:6px 0;font-size:clamp(1.8rem,3.5vw,2.6rem);line-height:1.05;letter-spacing:-.02em;font-weight:800}.muted{color:var(--muted)}.grid{display:grid;grid-gap:18px;gap:18px}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.two-up{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.three-up{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.login-card,.panel,.stat-card,.table-wrap{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:24px;padding:20px}.stat-card h3{margin:8px 0 6px;font-size:clamp(1.45rem,2.6vw,2rem);line-height:1.08;overflow-wrap:anywhere;text-wrap:balance}.stat-card h3.compact{font-size:clamp(1.2rem,2vw,1.55rem)}.panel h3,.table-wrap h3{margin-top:0}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}td,th{padding:12px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}th{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.status-badge{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;font-size:.8rem;font-weight:700}.status-active,.status-cleared,.status-paid{background:rgba(21,128,61,.15);color:var(--success)}.status-partial{background:rgba(217,119,6,.14);color:var(--warning)}.status-available_for_investment{background:rgba(3,105,161,.14);color:var(--info)}.status-deal_signed{background:rgba(217,119,6,.14);color:var(--warning)}.status-overdue{background:rgba(220,38,38,.14);color:var(--danger)}.status-inactive,.status-off_road{background:rgba(107,114,128,.16);color:var(--gray)}.inline-form{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));align-items:end}.hero-card{background:linear-gradient(135deg,rgba(15,118,110,.9),rgba(11,92,79,.86));color:white;padding:28px;border-radius:28px;box-shadow:var(--shadow)}.hero-card p{max-width:60ch}.hero-card .eyebrow{color:rgba(255,255,255,.78)}.dashboard-hero{display:grid;grid-gap:20px;gap:20px;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);align-items:stretch}.hero-metrics{display:grid;grid-gap:12px;gap:12px}.hero-metrics article,.spotlight-card{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.16);border-radius:18px;padding:16px}.hero-metrics strong,.spotlight-card h3{display:block;margin-top:10px;font-size:clamp(1.5rem,3vw,2.2rem)}.dashboard-filters{position:relative;overflow:hidden}.dashboard-filters:after{content:"";position:absolute;inset:auto -40px -60px auto;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,rgba(217,119,6,.18),transparent 68%);pointer-events:none}.section-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:12px}.chip-row{display:flex;flex-wrap:wrap;gap:8px}.health-pill{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;font-size:.8rem;font-weight:700}.health-pill.success{background:rgba(21,128,61,.15);color:var(--success)}.health-pill.warning{background:rgba(217,119,6,.14);color:var(--warning)}.health-pill.danger{background:rgba(220,38,38,.14);color:var(--danger)}.vehicle-hero .health-pill,.vehicle-hero .status-badge{border:1px solid transparent}.vehicle-hero .status-active,.vehicle-hero .status-cleared{background:#dcfce7;border-color:#bbf7d0;color:#166534}.vehicle-hero .status-overdue{background:#fee2e2;border-color:#fecaca;color:#991b1b}.vehicle-hero .health-pill.warning,.vehicle-hero .status-partial{background:#fef3c7;border-color:#fde68a;color:#92400e}.vehicle-hero .status-inactive,.vehicle-hero .status-off_road{background:rgba(255,255,255,.88);border-color:rgba(255,255,255,.72);color:#475569}.vehicle-hero .health-pill.success{background:#dcfce7;border-color:#bbf7d0;color:#166534}.vehicle-hero .health-pill.danger{background:#fef3c7;border-color:#fde68a;color:#92400e}.source-chip{display:inline-flex;align-items:center;padding:4px 8px;background:rgba(15,118,110,.12);color:var(--accent-strong);font-size:.75rem;margin-top:6px}.info-hint,.source-chip{border-radius:999px;font-weight:700}.info-hint{display:inline-grid;place-items:center;width:1.1rem;height:1.1rem;margin-left:.35rem;background:rgba(15,118,110,.12);color:var(--accent-strong);font-size:.72rem;line-height:1;cursor:help;vertical-align:middle}.csv-template{margin:0;padding:12px;border-radius:14px;background:rgba(255,255,255,.65);border:1px solid var(--line);overflow:auto;font-size:.82rem}.detail-subsection{border-top:1px solid var(--line);margin-top:8px;padding-top:16px}.detail-subsection h4{margin:0 0 10px}.compact-list{display:grid;grid-gap:12px;gap:12px}.compact-list li{padding-bottom:12px;border-bottom:1px solid var(--line)}.compact-list li:last-child{border-bottom:0;padding-bottom:0}.login-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(1200px 600px at 85% -10%,rgba(15,118,110,.18),transparent 60%),radial-gradient(800px 500px at -10% 90%,rgba(255,209,102,.18),transparent 55%),linear-gradient(150deg,#f7f2e8,#f3ede3 45%,#efe8db)}.login-card{width:min(540px,100%)}.login-card-premium{position:relative;overflow:hidden;padding:28px}.login-card-premium:before{content:"";position:absolute;inset:-40% auto auto -15%;width:220px;height:220px;border-radius:999px;background:radial-gradient(circle,rgba(15,118,110,.16),transparent 70%);pointer-events:none}.login-brand-row{display:flex;align-items:center;gap:12px}.login-brand-mark{width:42px;height:42px;border-radius:12px;box-shadow:0 8px 18px rgba(15,118,110,.2)}.login-demo-panel{background:rgba(255,255,255,.65)}.list-reset{list-style:none;padding:0;margin:0}.timeline{display:grid;grid-gap:12px;gap:12px}.money-display{display:inline-flex;align-items:baseline;gap:1px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap;line-height:1}.money-decimals,.money-prefix{font-size:.72em}.money-display.inline{font-size:1rem}.money-display.compact{font-size:1.1rem}.money-display.metric{font-size:clamp(1.3rem,2vw,1.8rem);flex-wrap:wrap;max-width:100%}.money-display.large-hero{font-size:clamp(1.9rem,3vw,2.9rem);flex-wrap:wrap;max-width:100%}.money-display.large-hero .money-decimals,.money-display.metric .money-decimals{font-size:.56em}.repayment-hero-grid{display:grid;grid-template-columns:minmax(120px,180px) minmax(0,1fr);grid-gap:18px;gap:18px;align-items:center}.stacked-visual-block{display:grid;grid-gap:12px;gap:12px}.repayment-stack{display:grid;grid-gap:10px;gap:10px}.repayment-stack-bar{height:18px;border-radius:999px;overflow:hidden;display:flex;background:rgba(107,114,128,.16)}.repayment-stack.compact .repayment-stack-bar{height:14px}.segment{height:100%}.legend-swatch.recovered,.segment.recovered{background:var(--success)}.legend-swatch.arrears,.segment.arrears{background:var(--danger)}.legend-swatch.outstanding,.segment.outstanding{background:rgba(107,114,128,.35)}.repayment-stack-legend{display:grid;grid-gap:8px;gap:8px}.legend-item{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.legend-swatch{width:12px;height:12px;border-radius:999px;flex-shrink:0}.repayment-stack-note{margin:0}.progress-ring,.repayment-progress-ring{width:124px;height:124px;border-radius:50%;display:grid;place-items:center;flex-shrink:0}.progress-ring-inner,.repayment-progress-ring-inner{width:88px;height:88px;border-radius:50%;background:var(--surface-strong);display:grid;place-items:center;text-align:center;padding:8px}.progress-ring-inner strong,.repayment-progress-ring-inner strong{font-size:1.35rem}.car-ownership-progress{display:grid;grid-gap:8px;gap:8px;align-items:center;justify-items:center}.car-progress-graphic{width:min(220px,100%);height:auto;object-fit:contain}.car-progress-caption{font-size:.82rem;color:var(--muted)}.vehicle-hero{display:grid;grid-template-columns:minmax(0,2fr) minmax(220px,1fr);grid-gap:20px;gap:20px;align-items:end}.vehicle-hero-summary{display:grid;grid-gap:16px;gap:16px}.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:16px;gap:16px}.detail-grid strong{display:block;margin-top:6px}.danger-text{color:var(--danger)}.timeline-item{display:grid;grid-gap:3px;gap:3px;padding:14px;border-radius:18px;background:rgba(255,255,255,.55);border:1px solid var(--line)}@media (max-width:900px){.app-shell{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--line)}.page-header{flex-direction:column;align-items:start}}.payment-state-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:999px;font-size:.78rem;font-weight:700;letter-spacing:.02em;line-height:1}.payment-state-chip:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;opacity:.65;flex-shrink:0}.payment-state-chip.pending{background:var(--warning-bg);color:var(--warning)}.payment-state-chip.confirmed{background:var(--success-bg);color:var(--success)}.payment-state-chip.disputed,.payment-state-chip.overdue{background:var(--danger-bg);color:var(--danger)}.payment-state-chip.current{background:var(--success-bg);color:var(--success)}.payment-state-chip.at-risk{background:var(--warning-bg);color:var(--warning)}.payment-state-chip.cancelled,.payment-state-chip.inactive{background:var(--gray-bg);color:var(--gray)}.payment-state-chip.sent{background:var(--info-bg);color:var(--info)}.payment-state-chip.awaiting_receipt_confirmation{background:var(--warning-bg);color:var(--warning)}.payment-state-chip.receipt_confirmed{background:var(--success-bg);color:var(--success)}.payment-state-chip.issue_reported{background:var(--danger-bg);color:var(--danger)}.due-state-badge{display:inline-flex;align-items:center;padding:6px 14px;border-radius:12px;font-size:.8rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.due-state-badge.due-now{background:var(--danger-bg);color:var(--danger);border:1px solid rgba(185,28,28,.2)}.due-state-badge.on-track{background:var(--success-bg);color:var(--success);border:1px solid rgba(21,128,61,.2)}.due-state-badge.at-risk{background:var(--warning-bg);color:var(--warning);border:1px solid rgba(180,83,9,.2)}.due-state-badge.cleared{background:var(--success-bg);color:var(--success);border:1px solid rgba(21,128,61,.2)}.control-room-hero{background:linear-gradient(135deg,#0f2f2c,#0a4440 55%,#0e5c52);color:white;padding:28px;border-radius:28px;box-shadow:var(--shadow);display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);align-items:stretch;grid-gap:20px;gap:20px}.control-room-hero .eyebrow{color:rgba(200,235,230,.85)}.control-room-hero h3{font-size:clamp(1.4rem,2.5vw,2.1rem);font-weight:800;line-height:1.2;margin:8px 0 6px;letter-spacing:-.02em}.control-room-kpis{display:grid;grid-gap:10px;gap:10px}.control-room-kpi-item{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.14);border-radius:18px;padding:14px 16px}.control-room-kpi-item .eyebrow{color:rgba(200,230,225,.75)}.control-room-kpi-item strong{display:block;margin-top:6px;font-size:clamp(1.25rem,2.4vw,1.9rem);line-height:1.1;font-weight:800;letter-spacing:-.01em}.overview-visual-card{background:linear-gradient(165deg,rgba(255,252,246,.98),rgba(247,242,233,.92));border:1px solid var(--line);border-radius:24px;padding:22px;box-shadow:var(--shadow-card)}.overview-visual-layout{display:grid;grid-template-columns:minmax(220px,260px) minmax(0,1fr);align-items:center;grid-gap:20px;gap:20px}.overview-donut{width:220px;height:220px;border-radius:999px;display:grid;place-items:center;box-shadow:inset 0 0 0 1px rgba(26,34,48,.08),0 12px 24px rgba(60,40,8,.08)}.overview-donut-core{width:128px;height:128px;border-radius:999px;background:var(--surface-strong);display:grid;place-items:center;text-align:center;border:1px solid var(--line)}.overview-donut-core p{margin:0;color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}.overview-donut-core strong{margin-top:4px;font-size:1.7rem;color:var(--text);letter-spacing:-.02em}.overview-legend{display:grid;grid-gap:10px;gap:10px}.overview-legend-item{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:14px;background:var(--surface-strong);border:1px solid var(--line)}.overview-dot{width:12px;height:12px;border-radius:999px;flex-shrink:0}.overview-dot.vehicles{background:var(--accent)}.overview-dot.drivers{background:#d97706}.overview-dot.investors{background:#0284c7}.overview-legend-item p{margin:0;font-size:.84rem;color:var(--muted)}.overview-legend-item strong{display:block;margin-top:2px;font-size:1.08rem;color:var(--text)}.overview-mini-grid{margin-top:16px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px}.overview-mini-grid article{background:var(--surface-strong);border:1px solid var(--line);border-radius:14px;padding:12px 14px}.overview-mini-grid article strong{display:block;margin-top:6px;font-size:1.34rem;letter-spacing:-.01em}.collections-alert-card{background:linear-gradient(180deg,rgba(255,250,246,.98),rgba(255,244,242,.95));border:1.5px solid rgba(185,28,28,.2);border-radius:22px;padding:20px;box-shadow:var(--shadow-card)}.collections-alert-card .eyebrow{color:var(--danger)}.collections-alert-card h4{margin:6px 0;font-size:.96rem;font-weight:700;color:var(--text)}.driver-due-card{border-radius:28px;padding:26px;background:linear-gradient(145deg,#0a4440,#0f766e);color:white;box-shadow:var(--shadow)}.driver-due-card .eyebrow{color:rgba(200,235,230,.8)}.driver-due-card .due-amount-label{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:rgba(200,235,230,.85);margin:0 0 4px}.driver-due-card .driver-due-meta{color:rgba(220,245,240,.82);font-size:.9rem;margin:6px 0 0}.driver-due-card.has-arrears{background:linear-gradient(145deg,#4a1212,#991b1b)}.driver-due-card.no-due{background:linear-gradient(145deg,#14532d,#166534)}.driver-due-card .driver-due-actions{display:flex;gap:10px;margin-top:20px;flex-wrap:wrap}.driver-due-card .action-primary{background:white;color:var(--accent-strong);border:0;border-radius:14px;padding:12px 20px;font-weight:700;cursor:pointer}.driver-due-card .action-outline{background:rgba(255,255,255,.16);color:white;border:1.5px solid rgba(255,255,255,.3);border-radius:14px;padding:12px 20px;font-weight:700;cursor:pointer}.investor-portfolio-hero{background:linear-gradient(145deg,#0c2a4a,#0369a1);border-radius:28px;padding:26px;color:white;box-shadow:var(--shadow);display:grid;grid-gap:18px;gap:18px}.investor-portfolio-hero .eyebrow{color:rgba(186,230,253,.82)}.investor-portfolio-hero h3{font-size:clamp(1.3rem,2.4vw,2rem);font-weight:800;line-height:1.2;margin:6px 0;letter-spacing:-.02em}.investor-kpi-row{display:flex;gap:14px;flex-wrap:wrap}.investor-kpi-item{flex:1 1;min-width:140px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.15);border-radius:16px;padding:14px 16px}.investor-kpi-item .eyebrow{font-size:.7rem;color:rgba(186,230,253,.75)}.investor-kpi-item strong{display:block;margin-top:6px;font-size:clamp(1.1rem,2vw,1.6rem);font-weight:800;line-height:1.1}.activity-filter-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.activity-chip{display:inline-flex;align-items:center;padding:7px 14px;border-radius:999px;font-size:.8rem;font-weight:700;cursor:pointer;border:1.5px solid var(--line);background:var(--surface-strong);color:var(--muted);transition:background .14s ease,color .14s ease,border-color .14s ease}.activity-chip:hover{background:var(--accent-light);border-color:var(--accent);color:var(--accent-strong)}.activity-chip.active{background:var(--accent);border-color:var(--accent);color:white}.stat-card.interactive{cursor:pointer;transition:transform .14s ease,box-shadow .14s ease}.stat-card.interactive:hover{transform:translateY(-2px);box-shadow:0 8px 28px rgba(60,40,8,.12)}.stat-card.danger-accent{border-color:rgba(185,28,28,.22)}.stat-card.warning-accent{border-color:rgba(180,83,9,.22)}.stat-card.success-accent{border-color:rgba(21,128,61,.2)}.role-badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.role-badge.admin{background:var(--accent-light);color:var(--accent-strong)}.role-badge.investor{background:var(--info-bg);color:var(--info)}.role-badge.driver{background:var(--warning-bg);color:var(--warning)}.section-divider{display:flex;align-items:center;gap:12px;margin:4px 0;color:var(--muted-light);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em}.section-divider:after,.section-divider:before{content:"";flex:1 1;height:1px;background:var(--line)}.submission-row{display:flex;align-items:flex-start;gap:12px;padding:14px 0;border-bottom:1px solid var(--line)}.submission-row:last-child{border-bottom:0;padding-bottom:0}.submission-row-icon{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;flex-shrink:0;font-size:1rem;background:var(--surface-tinted)}.submission-row-body{flex:1 1;min-width:0}.submission-row-title{font-weight:700;color:var(--text);font-size:.9rem}.submission-row-meta{color:var(--muted);font-size:.8rem;margin-top:2px}.submission-row-amount{font-weight:800;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--text);font-size:.95rem;white-space:nowrap;text-align:right;flex-shrink:0}.vehicle-health-indicator{display:flex;align-items:center;gap:8px}.vehicle-health-indicator .health-bar{flex:1 1;height:6px;border-radius:999px;background:var(--line);position:relative;overflow:hidden}.vehicle-health-indicator .health-fill{position:absolute;inset:0 auto 0 0;border-radius:999px}.vehicle-health-indicator .health-fill.good{background:var(--success)}.vehicle-health-indicator .health-fill.watch{background:var(--warning)}.vehicle-health-indicator .health-fill.at-risk{background:var(--danger)}.money-display.hero{font-size:clamp(2.2rem,4vw,3.6rem);flex-wrap:wrap;max-width:100%;line-height:1}.money-display.hero .money-decimals{font-size:.48em;opacity:.75}.money-display .money-prefix{opacity:.72}.empty-state{text-align:center;padding:36px 20px;color:var(--muted)}.empty-state .empty-icon{font-size:2.4rem;margin-bottom:12px;opacity:.5}.empty-state p{max-width:32ch;margin:6px auto 0;font-size:.9rem}.sticky-action-footer{position:-webkit-sticky;position:sticky;bottom:0;background:linear-gradient(to top,var(--bg) 60%,transparent);padding:16px 0 20px;display:flex;gap:10px;align-items:center}.inline-banner{display:flex;align-items:flex-start;gap:10px;padding:12px 16px;border-radius:16px;font-size:.88rem;font-weight:600;line-height:1.45}.inline-banner.success{background:var(--success-bg);color:var(--success)}.inline-banner.warning{background:var(--warning-bg);color:var(--warning)}.inline-banner.danger{background:var(--danger-bg);color:var(--danger)}.inline-banner.info{background:var(--info-bg);color:var(--info)}.inline-banner.pending{background:var(--warning-bg);color:var(--warning)}.payment-action-card{border:1px solid rgba(15,118,110,.14)}.payment-action-card.urgent{background:linear-gradient(180deg,rgba(255,250,244,.98),rgba(255,242,242,.94));border-color:rgba(185,28,28,.22)}.fleet-filter-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px}.fleet-filter-row input{flex:1 1;min-width:200px;max-width:320px}.fleet-filter-row select{min-width:180px}.report-link-row,.row-between{display:flex;justify-content:space-between;align-items:center;gap:12px}.report-link-row{padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:var(--surface-strong)}.report-link-title{margin:0;color:var(--text);font-weight:700}.report-link-meta{margin:3px 0 0;color:var(--muted);font-size:.84rem}.report-link-value{color:var(--text);font-weight:700;white-space:nowrap}.payout-confirm-card{border:1px solid var(--line);border-radius:16px;display:grid;grid-gap:8px;gap:8px}.document-card-row,.payout-confirm-card{padding:12px 14px;background:var(--surface-strong)}.document-card-row{display:flex;justify-content:space-between;align-items:center;gap:12px;border:1px solid var(--line);border-radius:14px}@media (max-width:1100px){.control-room-hero,.overview-visual-layout{grid-template-columns:1fr}.overview-donut{margin-inline:auto}}@media (max-width:900px){.app-shell{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--line)}.dashboard-hero,.repayment-hero-grid,.vehicle-hero{grid-template-columns:1fr}.page-header{align-items:flex-start}.investor-kpi-row,.page-header{flex-direction:column}.overview-mini-grid{grid-template-columns:1fr}}.document-status-chip{display:inline-flex;align-items:center;gap:5px;font-size:.72rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase;padding:3px 8px;border-radius:20px}.document-status-chip:before{content:"";width:6px;height:6px;border-radius:50%;flex-shrink:0}.document-status-chip.active{background:var(--success-bg);color:var(--success)}.document-status-chip.active:before{background:var(--success)}.document-status-chip.expiring-soon{background:var(--warning-bg);color:var(--warning)}.document-status-chip.expiring-soon:before{background:var(--warning)}.document-status-chip.expired{background:var(--danger-bg);color:var(--danger)}.document-status-chip.expired:before{background:var(--danger)}.document-status-chip.missing{background:#f3f4f6;color:var(--muted)}.document-status-chip.missing:before{background:var(--muted)}.document-status-chip.pending-review{background:var(--info-bg);color:var(--info)}.document-status-chip.pending-review:before{background:var(--info)}.doc-category-section{display:flex;flex-direction:column;gap:24px}.doc-category-group{display:flex;flex-direction:column;gap:10px}.doc-category-label{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0}.doc-card-list{display:flex;flex-direction:column;gap:8px}.doc-card{display:grid;grid-template-columns:48px 1fr 28px;grid-gap:12px;gap:12px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:12px 14px;box-shadow:var(--shadow-card)}.doc-card-preview{width:48px;height:48px;border-radius:8px;overflow:hidden;background:var(--bg);display:flex;align-items:center;justify-content:center;font-size:1.4rem;flex-shrink:0}.doc-card-thumbnail{width:100%;height:100%;object-fit:cover}.doc-card-icon{font-size:1.5rem}.doc-card-body{display:flex;flex-direction:column;gap:4px;min-width:0}.doc-card-title{font-size:.9rem;font-weight:600;color:var(--text);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.doc-card-meta{font-size:.75rem;color:var(--muted);margin:0}.doc-card-link{font-size:1rem;color:var(--accent);text-decoration:none;opacity:.7;transition:opacity .15s}.doc-card-link:hover{opacity:1}.document-upload-card{background:var(--surface);border:1px dashed var(--line);border-radius:14px;padding:20px;display:flex;flex-direction:column;gap:14px;box-shadow:var(--shadow-card)}.doc-upload-label{font-size:.95rem;font-weight:700;color:var(--text);margin:0}.doc-upload-helper{font-size:.8rem;color:var(--muted);margin:0}.form-row--two-col{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.file-input{font-size:.85rem;color:var(--muted);cursor:pointer}.file-name-preview{font-size:.78rem;color:var(--accent);margin:0}.expiry-warning-list{display:flex;flex-direction:column;gap:8px}.attachment-proof-grid{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}.attachment-proof-thumb{width:72px;height:72px;border-radius:8px;overflow:hidden;background:var(--bg);border:1px solid var(--line);display:flex;align-items:center;justify-content:center}.attachment-proof-thumb img{width:100%;height:100%;object-fit:cover}.attachment-proof-thumb .thumb-icon{font-size:1.6rem}.proof-upload-row{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--surface-tinted);border-radius:10px;border:1px solid var(--line)}.proof-upload-row label{font-size:.85rem;color:var(--muted);flex:1 1;margin:0}.proof-upload-row input[type=file]{font-size:.82rem}.investor-market-hero{position:relative;overflow:hidden;background:linear-gradient(135deg,rgba(2,132,199,.13),rgba(15,118,110,.11) 45%,rgba(245,158,11,.12))}.investor-market-hero:after{content:"";position:absolute;width:180px;height:180px;border-radius:999px;top:-68px;right:-42px;background:radial-gradient(circle,rgba(255,255,255,.5),transparent 70%);pointer-events:none}.investor-tab-row{display:flex;gap:8px;flex-wrap:wrap}.investor-filter-grid{display:grid;grid-gap:14px;gap:14px}.investor-discovery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));grid-gap:16px;gap:16px}.investor-discovery-card{background:linear-gradient(180deg,rgba(255,255,255,.95),rgba(248,243,236,.82));border:1px solid var(--line);border-radius:24px;overflow:hidden;box-shadow:var(--shadow-card);display:grid;animation:market-card-in .42s ease both}@keyframes market-card-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.investor-discovery-cover-wrap{position:relative}.investor-discovery-cover{width:100%;height:208px;object-fit:cover;display:block}.investor-discovery-cover.placeholder{height:208px;display:grid;place-items:center;background:linear-gradient(135deg,rgba(15,118,110,.12),rgba(2,132,199,.12));color:var(--muted);font-size:.88rem}.investor-discovery-badges{position:absolute;left:10px;top:10px}.investor-discovery-content{padding:16px}.investor-discovery-content h3{margin:0 0 4px;font-family:Avenir Next,Manrope,Segoe UI,sans-serif;font-size:clamp(1.05rem,1.8vw,1.25rem);letter-spacing:-.01em}.investor-card-subtitle{margin:8px 0 0;font-size:.84rem;color:var(--muted)}.investor-finance-block{margin-top:12px;padding:12px;border-radius:14px;border:1px solid var(--line);background:rgba(255,255,255,.72);display:grid;grid-gap:6px;gap:6px}.investor-finance-block p{margin:0;font-size:.88rem;color:var(--muted)}.investor-finance-block p strong{color:var(--text)}.funding-track{height:9px;border-radius:999px;overflow:hidden;background:#dbe5ea}.funding-track-bar{height:100%;border-radius:999px;background:linear-gradient(90deg,#0284c7,#0f766e)}.investor-discovery-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.investor-discovery-actions .button,.investor-discovery-actions button{flex:1 1;min-width:132px}.import-detail-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);grid-gap:16px;gap:16px;align-items:start}.import-detail-hero-media{border:1px solid var(--line);border-radius:18px;overflow:hidden}.import-detail-hero-image{width:100%;height:260px;object-fit:cover;display:block}.import-detail-hero-image.placeholder{display:grid;place-items:center;color:var(--muted);background:linear-gradient(145deg,rgba(2,132,199,.14),rgba(15,118,110,.12))}.import-stage-list{display:grid;grid-gap:10px;gap:10px}.import-stage-item{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface-strong)}.import-stage-dot{width:10px;height:10px;margin-top:5px;border-radius:50%;background:#cbd5e1;flex-shrink:0}.import-stage-dot.reached{background:var(--accent)}.import-summary-stat{margin:0;border:1px solid var(--line);border-radius:14px;padding:12px;background:rgba(255,255,255,.7)}.import-summary-stat p{margin:0}.import-summary-stat strong{display:block;margin-top:6px}@media (max-width:900px){.import-detail-hero,.investor-discovery-grid{grid-template-columns:1fr}.import-detail-hero-image{height:220px}.investor-discovery-actions .button,.investor-discovery-actions button{min-width:0}}.panel-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}.panel-header h3{margin:0}.button,button{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:0;border-radius:12px;background:var(--accent);color:white;padding:10px 18px;font-size:.9rem;font-weight:700;cursor:pointer;transition:background .14s ease,transform .1s ease,box-shadow .14s ease,opacity .14s ease;white-space:nowrap}.button:hover,button:hover{background:var(--accent-strong);transform:translateY(-1px);box-shadow:0 4px 14px rgba(15,118,110,.28)}.button:active,button:active{transform:translateY(0);box-shadow:none}.button:disabled,button:disabled{opacity:.48;cursor:not-allowed;transform:none;box-shadow:none}.btn-secondary,button.btn-secondary{background:var(--accent-light);color:var(--accent-strong);border:1.5px solid rgba(15,118,110,.22);box-shadow:none}.btn-secondary:hover,button.btn-secondary:hover{background:rgba(15,118,110,.16);box-shadow:none}.btn-ghost,button.btn-ghost{background:transparent;color:var(--muted);border:1.5px solid var(--line);box-shadow:none}.btn-ghost:hover,button.btn-ghost:hover{background:rgba(26,34,48,.05);color:var(--text);box-shadow:none}.btn-danger,button.btn-danger{background:var(--danger-bg);color:var(--danger);border:1.5px solid rgba(185,28,28,.2)}.btn-danger:hover,button.btn-danger:hover{background:rgba(185,28,28,.2);box-shadow:none}.btn-sm{padding:7px 12px;font-size:.82rem;border-radius:10px}input,select,textarea{border:1.5px solid var(--line);background:var(--surface-strong);border-radius:12px;padding:11px 14px;color:var(--text);transition:border-color .16s ease,box-shadow .16s ease;width:100%}input:hover,select:hover,textarea:hover{border-color:rgba(15,118,110,.35)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(15,118,110,.12)}input::placeholder,textarea::placeholder{color:var(--muted-light)}label{display:grid;grid-gap:6px;gap:6px;font-size:.88rem;font-weight:600;color:var(--text)}.form-section{display:grid;grid-gap:14px;gap:14px}.form-section-title{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0 0 4px;padding-bottom:8px;border-bottom:1px solid var(--line)}.detail-list{display:grid;grid-template-columns:minmax(110px,max-content) 1fr;grid-gap:0;gap:0;margin:0}.detail-list dd,.detail-list dt{padding:11px 0;border-bottom:1px solid var(--line);margin:0;font-size:.9rem;line-height:1.4;vertical-align:middle}.detail-list dd:last-child,.detail-list dd:last-of-type,.detail-list dt:last-of-type,.detail-list dt:nth-last-child(2){border-bottom:0}.detail-list dt{font-weight:700;color:var(--muted);font-size:.82rem;text-transform:uppercase;letter-spacing:.06em;padding-right:20px;padding-top:12px}.detail-list dd{color:var(--text);font-weight:500;padding-top:12px}.stack{display:grid;grid-gap:14px;gap:14px}.inline-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.home-page{min-height:100vh;display:flex;flex-direction:column;background:radial-gradient(ellipse 80% 50% at 50% -10%,rgba(15,118,110,.18),transparent 60%),radial-gradient(ellipse 60% 40% at 90% 80%,rgba(217,119,6,.12),transparent 55%),linear-gradient(180deg,#f7f2e8,#f0e9d8)}.home-nav{display:flex;justify-content:space-between;align-items:center;padding:20px 48px;position:-webkit-sticky;position:sticky;top:0;z-index:10;background:rgba(247,242,232,.78);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.home-nav-brand{font-size:1.25rem;font-weight:900;letter-spacing:-.03em;color:var(--accent-strong)}.home-hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);grid-gap:40px;gap:40px;align-items:center;max-width:1160px;margin:0 auto;padding:80px 48px 72px}.home-hero-eyebrow{margin:0 0 16px;color:var(--accent-strong)}.home-hero-heading{font-size:clamp(2.2rem,5vw,3.6rem);font-weight:900;line-height:1.08;letter-spacing:-.03em;margin:0 0 22px;color:var(--text)}.home-hero-sub{font-size:clamp(1rem,1.6vw,1.18rem);color:var(--muted);line-height:1.65;max-width:52ch;margin:0 0 32px}.home-hero-actions{display:flex;flex-wrap:wrap;gap:12px}.home-cta-primary{font-weight:800;letter-spacing:-.01em;box-shadow:0 8px 24px rgba(15,118,110,.3)}.home-cta-primary,.home-cta-secondary{font-size:1rem;padding:14px 28px;border-radius:16px}.home-cta-secondary{font-weight:700}.home-hero-graphic{position:relative;display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:1;max-width:340px;margin-inline:auto}.home-graphic-ring{position:absolute;border-radius:50%;border:2px solid rgba(15,118,110,.15)}.home-graphic-ring-1{width:92%;height:92%;border-color:rgba(15,118,110,.14);background:radial-gradient(circle at 38% 38%,rgba(15,118,110,.08),transparent 65%)}.home-graphic-ring-2{width:68%;height:68%;border-color:rgba(15,118,110,.22);background:radial-gradient(circle at 55% 45%,rgba(217,119,6,.08),transparent 60%)}.home-graphic-ring-3{width:44%;height:44%;border-color:rgba(15,118,110,.32);background:rgba(15,118,110,.06)}.home-graphic-core{position:relative;z-index:1;text-align:center;background:var(--surface);border:1px solid var(--line);border-radius:50%;width:22%;height:22%;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 8px 28px rgba(60,40,8,.1)}.home-graphic-label{font-size:.55rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-weight:700}.home-graphic-value{font-size:.7rem;font-weight:900;color:var(--accent-strong)}.home-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:18px;gap:18px;max-width:1160px;margin:0 auto;padding:0 48px 72px}.home-feature-tile{background:var(--surface);border:1px solid var(--line);border-radius:24px;padding:26px 24px;box-shadow:var(--shadow-card);transition:transform .18s ease,box-shadow .18s ease}.home-feature-tile:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.home-feature-icon{font-size:1.8rem;margin-bottom:14px}.home-feature-tile h3{margin:0 0 8px;font-size:1.05rem;font-weight:800;color:var(--text)}.home-feature-tile p{margin:0;font-size:.9rem;color:var(--muted);line-height:1.55}.home-bottom-cta{text-align:center;padding:64px 48px;max-width:640px;margin:0 auto}.home-bottom-cta h2{font-size:clamp(1.6rem,3vw,2.4rem);font-weight:900;letter-spacing:-.025em;margin:0 0 12px;color:var(--text)}.home-bottom-cta .muted{margin:0 0 28px;font-size:1rem}.home-footer{border-top:1px solid var(--line);text-align:center;padding:20px 48px;margin-top:auto}@media (max-width:860px){.home-nav{padding:16px 24px}.home-hero{grid-template-columns:1fr;padding:48px 24px 40px;text-align:center}.home-hero-sub{margin-inline:auto}.home-hero-actions{justify-content:center}.home-hero-graphic{max-width:220px}.home-features{padding:0 24px 48px}.home-bottom-cta{padding:48px 24px}.home-footer{padding:16px 24px}}.report-kpi-bar{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));grid-gap:12px;gap:12px}.report-kpi-card{border-radius:20px;padding:16px 18px;border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-card)}.report-kpi-label{margin:0 0 6px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.report-kpi-value{margin:0;font-size:clamp(1.2rem,2vw,1.7rem);font-weight:800;line-height:1.1;letter-spacing:-.01em}.report-kpi-sub{margin:4px 0 0;font-size:.76rem;color:var(--muted)}.report-kpi-neutral .report-kpi-value{color:var(--text)}.report-kpi-danger{background:rgba(185,28,28,.06);border-color:rgba(185,28,28,.18)}.report-kpi-danger .report-kpi-label,.report-kpi-danger .report-kpi-value{color:var(--danger)}.report-kpi-success{background:rgba(21,128,61,.06);border-color:rgba(21,128,61,.16)}.report-kpi-success .report-kpi-value{color:var(--success)}.report-kpi-info{background:rgba(3,105,161,.06);border-color:rgba(3,105,161,.16)}.report-kpi-info .report-kpi-label,.report-kpi-info .report-kpi-value{color:var(--info)}.report-section-label{display:flex;align-items:center;gap:10px;margin:24px 0 12px}.report-section-label:after,.report-section-label:before{content:"";flex:1 1;height:1px;background:var(--line)}.report-section-pill{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;padding:4px 14px;border-radius:999px;white-space:nowrap}.report-section-pill-info{background:var(--info-bg);color:var(--info)}.report-section-pill-danger{background:var(--danger-bg);color:var(--danger)}.report-section-pill-success{background:var(--success-bg);color:var(--success)}.report-section-pill-neutral{background:var(--gray-bg);color:var(--gray)}.print-only{display:none}@media print{.no-print,.page-header .page-actions,.sidebar{display:none!important}.print-only{display:block!important}.app-shell{display:block}.page{padding:0}body,html{background:#fff!important;color:#000!important;font-size:11pt}.panel,.stat-card,.table-wrap{background:#fff!important;border:1px solid #ccc!important;box-shadow:none!important;border-radius:4px!important;page-break-inside:avoid;break-inside:avoid}table{width:100%;border-collapse:collapse;font-size:9.5pt}td,th{padding:6px 8px;border:1px solid #ddd;color:#000}th{background:#f5f5f5!important;color:#333!important;font-size:8pt}section{page-break-inside:avoid;break-inside:avoid;margin-bottom:16pt}a{color:#000!important;text-decoration:none!important}.grid.two-up{display:block}.grid.two-up>*+*{margin-top:14pt}.status-badge{border:1px solid #ccc!important;background:#f5f5f5!important;color:#000!important;border-radius:4px!important;font-size:8pt}.report-print-header{padding-bottom:12pt;margin-bottom:16pt;border-bottom:2px solid #000}.report-print-header h2{font-size:18pt;margin:4pt 0}.report-print-header .eyebrow{font-size:8pt;letter-spacing:.15em;color:#555;text-transform:uppercase}.report-print-header .muted{color:#555;font-size:10pt}@page{margin:18mm 14mm;size:A4 portrait}}