:root{--bg:#f4f7fb;--card:#fff;--ink:#101828;--muted:#667085;--line:#e4e7ec;--accent:#0f766e;--accent2:#14b8a6;--nav:#0b1324;--danger:#b42318;--warn:#b54708;--ok:#067647;--blue:#175cd3;--shadow:0 10px 28px rgba(16,24,40,.055)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial;background:var(--bg);color:var(--ink)}button,input,select,textarea{font:inherit}.sidebar{position:fixed;inset:0 auto 0 0;width:258px;background:var(--nav);color:white;padding:22px 16px;display:flex;flex-direction:column;z-index:20}.brand{display:flex;gap:12px;align-items:center}.logo{width:44px;height:44px;border-radius:13px;background:linear-gradient(135deg,#2dd4bf,#0f766e);display:grid;place-items:center;font-weight:900;letter-spacing:.02em}.brand strong{display:block;font-size:15px}.brand span{display:block;font-size:11px;color:#98a2b3;margin-top:2px}.sidebar nav{display:grid;gap:5px;margin-top:25px}.nav-btn{border:0;background:transparent;color:#cbd5e1;padding:11px 12px;text-align:left;border-radius:10px;cursor:pointer}.nav-btn.active,.nav-btn:hover{background:#1d2939;color:#fff}.sidebar-footer{margin-top:auto}.sidebar-footer label,.mini-label{font-size:11px;color:#98a2b3;display:block;margin-bottom:5px}.sidebar select,.collector-top select{width:100%;background:#1d2939;color:#fff;border:1px solid #344054;padding:10px;border-radius:9px}.portal-link{display:block;color:#5eead4;text-decoration:none;font-size:12px;margin-top:12px}.main{margin-left:258px;min-height:100vh}.topbar{position:sticky;top:0;z-index:12;background:rgba(244,247,251,.93);backdrop-filter:blur(12px);padding:22px 30px 13px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(228,231,236,.75)}.topbar h1{margin:0;font-size:25px}.topbar p{margin:4px 0 0;color:var(--muted);font-size:12px}.top-actions{display:flex;gap:10px;align-items:center;color:var(--muted);font-size:11px}#content{padding:18px 30px 44px}.grid{display:grid;gap:15px}.kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.card{background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);padding:18px}.kpi .label{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.kpi .value{font-size:24px;font-weight:800;margin:7px 0;letter-spacing:-.02em}.kpi .hint{font-size:11px;color:var(--muted)}.hero{padding:20px;border-radius:17px;background:linear-gradient(120deg,#0b1324,#0f4c4a);color:white;margin-bottom:16px;box-shadow:0 18px 45px rgba(15,76,74,.16)}.hero h2{margin:0 0 5px;font-size:22px}.hero p{margin:0;color:#d0d5dd;font-size:12px}.quick{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;margin-top:15px}.quick button{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.16);color:white;padding:11px;border-radius:10px;cursor:pointer}.two-col{grid-template-columns:1.4fr 1fr;margin-top:15px}.three-col{grid-template-columns:repeat(3,1fr);margin-top:15px}.section-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:13px}.section-title h3{margin:0;font-size:15px}.btn{border:0;border-radius:9px;padding:9px 12px;background:var(--accent);color:white;cursor:pointer;font-weight:700;font-size:12px}.btn.secondary{background:white;color:var(--ink);border:1px solid var(--line)}.btn.danger{background:var(--danger)}.btn.sm{padding:6px 8px;font-size:11px}.toolbar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.table-wrap{overflow:auto;max-height:65vh;border:1px solid var(--line);border-radius:12px;background:#fff}.table-wrap.tall{max-height:72vh}table{width:100%;border-collapse:separate;border-spacing:0;font-size:12px}th,td{padding:10px 11px;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}thead th{position:sticky;top:0;z-index:5;background:#f8fafc;box-shadow:0 1px 0 var(--line);font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}tbody tr:hover{background:#fbfcfe}.badge{display:inline-flex;align-items:center;border-radius:999px;padding:4px 8px;font-size:10px;font-weight:800}.green{background:#dcfae6;color:#05603a}.yellow{background:#fef0c7;color:#93370d}.red{background:#fee4e2;color:#912018}.blue{background:#dbeafe;color:#1849a9}.gray{background:#eaecf0;color:#475467}.purple{background:#f4ebff;color:#6941c6}.notice{padding:11px 13px;border-radius:10px;background:#ecfdff;border:1px solid #a5f0fc;color:#155b75;font-size:11px}.notice.warn{background:#fffaeb;border-color:#fedf89;color:#93370d}.small{font-size:11px;color:var(--muted)}.amount{font-variant-numeric:tabular-nums}.right{text-align:right}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:11px}.field{display:grid;gap:5px}.field label{font-size:10px;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.03em}.field input,.field select,.field textarea{border:1px solid var(--line);border-radius:9px;padding:10px;background:#fff}.field.full{grid-column:1/-1}.wallet-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.wallet{padding:14px;border:1px solid var(--line);border-radius:12px;background:#fbfcfe}.wallet .name{font-size:11px;color:var(--muted)}.wallet strong{display:block;font-size:18px;margin-top:5px}.metric-row{display:flex;justify-content:space-between;gap:20px;padding:9px 0;border-bottom:1px solid var(--line);font-size:12px}.metric-row:last-child{border-bottom:0}.activity{display:grid;gap:8px}.activity-item{border-left:3px solid #d0d5dd;padding:8px 10px;background:#f9fafb;border-radius:0 9px 9px 0}.activity-item strong{display:block;font-size:12px}.activity-item span{font-size:10px;color:var(--muted)}dialog{border:0;padding:0;background:transparent;width:min(760px,95vw)}dialog::backdrop{background:rgba(16,24,40,.58)}.modal-card{position:relative;background:white;border-radius:17px;padding:22px;box-shadow:0 30px 80px rgba(0,0,0,.24);max-height:91vh;overflow:auto}.modal-close{position:absolute;right:13px;top:8px;border:0;background:transparent;font-size:26px;color:var(--muted);cursor:pointer}.modal-card h2{margin:0 0 16px}.upload-box{border:1.5px dashed #98a2b3;border-radius:12px;padding:16px;text-align:center;background:#f9fafb}.ocr-result{margin-top:10px;padding:10px;background:#f8fafc;border-radius:8px;font-size:11px;white-space:pre-wrap;max-height:160px;overflow:auto}.collector-body{background:#f8fafc}.collector-shell{max-width:860px;margin:auto;min-height:100vh}.collector-top{position:sticky;top:0;z-index:20;background:#0b1324;color:white;padding:14px 18px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 5px 18px rgba(16,24,40,.15)}.collector-top>div:last-child{min-width:170px}.collector-main{padding:18px}.collector-hero{background:linear-gradient(120deg,#0f766e,#134e4a);color:white;padding:18px;border-radius:16px;margin-bottom:14px}.collector-hero h2{margin:0 0 4px}.collector-hero p{margin:0;color:#ccfbf1;font-size:12px}.collector-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:13px}.collector-actions button{padding:12px;border-radius:10px;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.1);color:white;font-weight:700}.collector-list{display:grid;gap:10px}.due-card{background:white;border:1px solid var(--line);border-radius:13px;padding:14px;display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center}.due-card h4{margin:0 0 4px}.due-card p{margin:0;font-size:11px;color:var(--muted)}.due-card .btn{align-self:center}.collector-kpis{grid-template-columns:repeat(2,1fr);margin-bottom:14px}.privacy-note{background:#f0fdf9;border:1px solid #99f6e4;color:#115e59;padding:11px;border-radius:10px;font-size:11px;margin-top:12px}@media(max-width:1100px){.kpis{grid-template-columns:repeat(2,1fr)}.two-col,.three-col{grid-template-columns:1fr}.quick{grid-template-columns:repeat(3,1fr)}}@media(max-width:760px){.sidebar{position:static;width:100%;height:auto}.sidebar nav{grid-template-columns:repeat(4,1fr);overflow:auto}.sidebar-footer{margin-top:12px}.main{margin-left:0}.topbar{padding:15px;position:sticky}.top-actions #today{display:none}#content{padding:12px 14px 30px}.kpis{grid-template-columns:1fr 1fr}.form-grid{grid-template-columns:1fr}.field.full{grid-column:1}.quick{grid-template-columns:1fr 1fr}.wallet-grid{grid-template-columns:1fr 1fr}.nav-btn{text-align:center;font-size:10px}.collector-main{padding:12px}.due-card{grid-template-columns:1fr}.collector-top{align-items:flex-start}.collector-top .brand span{display:none}}@media(max-width:460px){.kpis,.collector-kpis,.wallet-grid{grid-template-columns:1fr}.quick{grid-template-columns:1fr 1fr}}

.priority-overdue{background:#fff1f0!important;border-color:#fda29b!important}.priority-today{background:#fff7ed!important;border-color:#fdba74!important}.priority-soon{background:#fffbeb!important;border-color:#fcd34d!important}.priority-watch{background:#f8fafc!important}.priority-pill{display:inline-flex;padding:3px 7px;border-radius:999px;background:#eef2f6;color:#344054;font-size:10px;font-weight:800;margin-bottom:5px}.progress-chart{height:220px;display:flex;align-items:flex-end;gap:8px;overflow-x:auto;padding:12px 4px 2px}.chart-col{min-width:55px;height:190px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:5px}.chart-bars{height:150px;display:flex;align-items:flex-end}.chart-bars i{display:block;width:24px;background:var(--accent);border-radius:6px 6px 2px 2px}.chart-value{font-size:9px;color:var(--muted);writing-mode:vertical-rl;transform:rotate(180deg);max-height:42px;overflow:hidden}.chart-col span{font-size:9px;color:var(--muted)}.login-shell{min-height:100vh;display:grid;place-items:center;padding:20px;background:var(--bg)}.login-card{width:min(420px,100%);background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px;box-shadow:var(--shadow)}.login-card h2{margin:24px 0 4px}.login-card .field{margin-top:12px}.login-btn{width:100%;margin-top:16px;padding:12px}.collector-list .due-card{transition:.15s ease}.collector-list .due-card:hover{transform:translateY(-1px)}
@media(max-width:760px){table{font-size:11px}.table-wrap{max-height:68vh}.card{padding:14px}.topbar h1{font-size:20px}.kpi .value{font-size:20px}.hero{padding:16px}.collector-shell{max-width:none}.collector-top{padding:12px}.collector-actions{grid-template-columns:1fr 1fr}}

.login-overlay{position:fixed;inset:0;z-index:9999;background:rgba(11,19,36,.78);backdrop-filter:blur(8px);display:grid;place-items:center;padding:20px}.signed-user{font-size:12px;color:#fff;padding:9px 10px;border:1px solid #344054;border-radius:9px;background:#1d2939}

/* business intelligence */
.hero-head,.chart-title{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.scope-control,.chart-controls{display:flex;gap:10px;align-items:end}.scope-control label,.chart-controls label{font-size:12px;color:var(--muted);display:grid;gap:5px}.scope-control select,.chart-controls select{min-width:145px;border:1px solid var(--line);border-radius:10px;padding:9px 10px;background:white;color:var(--ink)}
.commission-kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.commission-kpis>div{border:1px solid var(--line);border-radius:12px;padding:12px;background:#f8fafc}.commission-kpis span{display:block;color:var(--muted);font-size:12px}.commission-kpis strong{display:block;margin-top:6px;font-size:20px}.chart-card{margin-top:15px}.chart-scroll{overflow-x:auto;padding:4px 0}.biz-chart{width:100%;min-width:620px;height:280px}.biz-chart .axis{stroke:#cbd5e1;stroke-width:1}.biz-chart .trend{stroke:#0f766e;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.biz-chart .point{fill:#0f766e;stroke:white;stroke-width:2}.biz-chart .chart-label{font-size:11px;fill:#64748b}.chart-foot{font-size:12px;color:var(--muted);margin-top:8px}.reminder-actions{display:flex;gap:8px;flex-wrap:wrap}.modal-card textarea{width:100%;border:1px solid var(--line);border-radius:10px;padding:10px;font:inherit}
@media(max-width:760px){.hero-head,.chart-title{display:grid}.scope-control,.chart-controls{display:grid;grid-template-columns:1fr 1fr;width:100%}.scope-control{grid-template-columns:1fr}.scope-control select,.chart-controls select{min-width:0;width:100%}.commission-kpis{grid-template-columns:1fr 1fr}.biz-chart{min-width:560px}.kpis{grid-template-columns:1fr 1fr!important}}
@media(max-width:460px){.commission-kpis,.kpis{grid-template-columns:1fr!important}.chart-controls{grid-template-columns:1fr}.quick{grid-template-columns:1fr 1fr!important}}

/* v1.4.0 professional finance UI */
.brand{display:flex;align-items:center;gap:10px}
.brand-icon{width:38px;height:38px;object-fit:contain;flex:0 0 auto}
.sidebar .brand-icon{width:42px;height:42px}
.login-brand .brand-icon{width:48px;height:48px}
.hero-branding{display:flex;align-items:center;gap:18px}
.hero-logo{width:min(310px,42vw);height:auto;object-fit:contain;filter:drop-shadow(0 8px 18px rgba(0,0,0,.12))}
.executive-hero{background:linear-gradient(120deg,#0b1324 0%,#123b4a 52%,#0f766e 100%);border:1px solid rgba(255,255,255,.08)}
.executive-hero h2{font-size:24px;letter-spacing:-.02em}
.accent-card{border-color:#99f6e4;background:linear-gradient(180deg,#ffffff 0%,#f0fdfa 100%)}
.profit-card{border-color:#bbf7d0;background:linear-gradient(180deg,#ffffff 0%,#f0fdf4 100%)}
.executive-panel{background:linear-gradient(180deg,#fff 0%,#f8fafc 100%)}
.finance-wallet{position:relative;overflow:hidden;padding:16px}
.finance-wallet:before{content:'';position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--accent)}
.finance-wallet strong{font-size:20px}
.biz-chart .gridline{stroke:#e2e8f0;stroke-width:1;stroke-dasharray:4 5}
.biz-chart .axis-value{font-size:10px;fill:#94a3b8}
.biz-chart .trend{stroke:#0f766e;stroke-width:3.2;stroke-linecap:round;stroke-linejoin:round}
.biz-chart .point{fill:#0f766e;stroke:white;stroke-width:2.5}
.biz-chart .chart-point:hover .point{r:7}
.chart-card{border-top:3px solid #0f766e}
.table-wrap table tbody tr{transition:background .12s ease}
.sidebar{background:linear-gradient(180deg,#0b1324 0%,#0d1b2f 100%)}
.topbar{backdrop-filter:blur(12px);background:rgba(243,246,251,.92)}
.card{box-shadow:0 8px 24px rgba(15,23,42,.04)}
@media(max-width:760px){.hero-branding{display:grid;gap:10px}.hero-logo{width:min(260px,75vw)}.executive-hero h2{font-size:20px}.brand-icon{width:34px;height:34px}.sidebar .brand-icon{width:38px;height:38px}}
/* v1.5.0 professional branding */
.sidebar .brand,.login-brand{background:#fff;border-radius:14px;padding:10px 12px}
.sidebar .brand strong,.login-brand strong{color:#0d1b2a}.sidebar .brand span,.login-brand span{color:#667085}
.brand-icon{object-fit:contain}
.clean-data-badge{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border:1px solid var(--line);border-radius:999px;font-size:12px;color:var(--muted);background:#fff}

/* v1.7.0 professional logo + chart refinements */
.sidebar .brand, .collector-top .brand{background:#fff;border-radius:14px;padding:8px 10px;overflow:hidden;}
.sidebar .brand{display:block;}
.sidebar .brand .brand-icon,.collector-top .brand .brand-icon{display:none;}
.sidebar .brand:before,.collector-top .brand:before{content:"";display:block;background:url('assets/av-lending-whitebox.png') center/contain no-repeat;width:100%;height:54px;}
.collector-top .brand{max-width:300px;}
.collector-top .brand:before{height:46px;}
.login-logo{display:block;width:min(320px,100%);height:auto;margin:0 auto 18px;}
.business-bar-chart{display:grid;gap:10px;padding:8px 0;}
.biz-bar-row{display:grid;grid-template-columns:90px minmax(120px,1fr) 130px;gap:12px;align-items:center;}
.biz-bar-label{font-size:12px;color:var(--muted);}
.biz-bar-track{height:12px;background:#e7edf4;border-radius:999px;overflow:hidden;}
.biz-bar-fill{height:100%;background:linear-gradient(90deg,#0f766e,#14b8a6);border-radius:999px;}
.biz-bar-value{text-align:right;font-weight:700;font-size:13px;}
@media(max-width:720px){.biz-bar-row{grid-template-columns:72px 1fr}.biz-bar-value{grid-column:2;text-align:left}.sidebar .brand:before{height:42px}.collector-top .brand{max-width:240px;}}

/* v1.8.0 collector and branding refinements */
.collector-main{padding-top:18px}
.due-card .remit-line{margin-top:5px;color:#0f4c4a;font-size:12px}
.due-card .remit-line strong{color:#0f766e;font-size:13px}
.hero-logo-whitebox{width:min(245px,34vw);border-radius:14px}
@media(max-width:760px){.collector-main{padding-top:12px}.hero-logo-whitebox{width:min(220px,68vw)}}
.borrower-link{border:0;background:transparent;padding:0;color:var(--ink);font-weight:800;font-size:15px;cursor:pointer;text-align:left}.borrower-link:hover{text-decoration:underline;color:var(--accent)}
.profile-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:14px}.profile-head h2{margin:0 0 5px}.profile-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:18px}.profile-summary>div{border:1px solid var(--line);border-radius:12px;padding:11px;background:#f8fafc}.profile-summary span{display:block;font-size:10px;color:var(--muted);text-transform:uppercase}.profile-summary strong{display:block;font-size:16px;margin-top:5px}.profile-loans{display:grid;gap:9px;margin-bottom:16px}.profile-loan{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;border:1px solid var(--line);border-radius:12px;padding:12px}.profile-loan.selected{border-color:#5eead4;background:#f0fdfa}.profile-loan span{display:block;font-size:11px;color:var(--muted);margin-top:3px}.profile-history-title{margin-top:16px}.payment-breakdown{padding:13px;border:1px solid #99f6e4;background:#f0fdfa;border-radius:12px}.settlement-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.settlement-grid>div{padding:9px;background:#fff;border:1px solid #d1fae5;border-radius:10px}.settlement-grid span{display:block;font-size:10px;color:var(--muted)}.settlement-grid strong{display:block;margin-top:4px;font-size:15px}.settlement-grid .remit-total{grid-column:span 3;background:#ecfdf5;border-color:#6ee7b7}.settlement-grid .remit-total strong{font-size:20px;color:#047857}.settlement-note{margin-top:8px}
@media(max-width:760px){.profile-summary{grid-template-columns:1fr 1fr}.profile-loan{grid-template-columns:1fr}.settlement-grid{grid-template-columns:1fr 1fr}.settlement-grid .remit-total{grid-column:span 2}}
@media(max-width:460px){.profile-summary,.settlement-grid{grid-template-columns:1fr}.settlement-grid .remit-total{grid-column:1}}


/* v1.11.0 borrower profiles + refined branding */
.sidebar .brand.sidebar-brand{display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:5px;background:#fff;border-radius:14px;padding:10px 10px 8px;min-height:82px;overflow:hidden}
.sidebar .brand.sidebar-brand:before{display:none!important;content:none!important}
.sidebar-brand-logo{display:block!important;width:142px;max-width:100%;height:auto;object-fit:contain}
.sidebar-brand>span{display:block!important;color:#667085!important;font-size:10px!important;margin:0!important;text-align:center;letter-spacing:.02em}
.table-borrower-link,.borrower-link{border:0;background:transparent;padding:0;color:#0b2748;font:inherit;font-weight:700;cursor:pointer;text-align:left;text-decoration:none}
.table-borrower-link:hover,.borrower-link:hover{text-decoration:underline;color:#0f766e}
.profile-page{display:grid;gap:15px}
.profile-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.profile-title h2{margin:0 0 4px;font-size:24px}.profile-title p{margin:0;color:var(--muted);font-size:12px}
.profile-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:12px 0}
.profile-summary>div{border:1px solid var(--line);border-radius:12px;padding:12px;background:#fbfcfe}.profile-summary span{display:block;color:var(--muted);font-size:10px;text-transform:uppercase}.profile-summary strong{display:block;margin-top:5px;font-size:17px}
.profile-loans{display:grid;gap:9px}.profile-loan{border:1px solid var(--line);border-radius:12px;padding:12px;display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;background:#fff}.profile-loan.selected{border-color:#2dd4bf;background:#f0fdfa}.profile-loan span{display:block;color:var(--muted);font-size:11px;margin-top:3px}
.remarks-box{border:1px solid var(--line);border-radius:12px;padding:14px;background:#fff}.remarks-display{white-space:pre-wrap;min-height:36px;color:var(--ink);font-size:13px}
.audit-list{display:grid;gap:7px}.audit-row{border-left:3px solid #99f6e4;padding:8px 10px;background:#f8fafc;border-radius:0 8px 8px 0;font-size:11px}.audit-row span{color:var(--muted)}
.collector-profile{padding:4px 0 18px}.collector-profile .card{margin-bottom:12px}.collector-profile-back{margin-bottom:10px}
@media(max-width:760px){.sidebar-brand-logo{width:126px}.profile-summary{grid-template-columns:1fr 1fr}.profile-loan{grid-template-columns:1fr}.profile-toolbar{align-items:flex-start}}
@media(max-width:460px){.profile-summary{grid-template-columns:1fr}}

/* v1.13.0 banking analytics + professional upload */
.bank-report-head{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:16px;padding:18px 20px;border-radius:18px;background:linear-gradient(120deg,#0b1324,#123b4a 55%,#0f766e);color:#fff}.bank-report-head h2{margin:3px 0 4px;font-size:25px}.bank-report-head p{margin:0;color:#dbeafe;font-size:12px}.eyebrow{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#99f6e4;font-weight:800}.banking-controls{display:flex;gap:10px}.banking-controls label{display:grid;gap:5px;font-size:10px;color:#cbd5e1;text-transform:uppercase;letter-spacing:.06em}.banking-controls select{min-width:160px;background:#fff}.bank-kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:15px}.bank-kpi{background:#fff;border:1px solid var(--line);border-radius:15px;padding:14px;box-shadow:0 8px 24px rgba(15,23,42,.04)}.bank-kpi span{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.05em}.bank-kpi strong{display:block;font-size:20px;margin:6px 0 2px}.bank-kpi small{color:var(--muted)}.bank-kpi.positive strong{color:#047857}.bank-kpi.negative strong{color:#b42318}.report-main-grid{grid-template-columns:minmax(0,1.8fr) minmax(300px,.8fr);gap:15px}.bank-chart-card{border-top:3px solid #0f766e}.bank-line-chart{width:100%;min-width:700px;height:330px}.bank-line-chart .gridline{stroke:#e2e8f0;stroke-width:1;stroke-dasharray:3 5}.bank-line-chart .trend{stroke:#0f766e;stroke-width:3.5;stroke-linecap:round;stroke-linejoin:round}.bank-line-chart .trend-area{fill:rgba(20,184,166,.10)}.bank-line-chart .point{fill:#0f766e;stroke:#fff;stroke-width:2.5}.bank-line-chart .chart-label{font-size:10px;fill:#64748b}.bank-line-chart .axis-value{font-size:10px;fill:#94a3b8}.health-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.health-grid>div{border:1px solid var(--line);background:#f8fafc;border-radius:12px;padding:11px}.health-grid span{display:block;color:var(--muted);font-size:10px;text-transform:uppercase}.health-grid strong{display:block;margin-top:4px;font-size:18px}.health-meter{margin:15px 0}.health-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid #eef2f6}.health-row span{color:var(--muted);font-size:12px}.meter-track{height:9px;border-radius:999px;background:#e7edf4;overflow:hidden;margin-top:7px}.meter-track i{display:block;height:100%;background:linear-gradient(90deg,#0f766e,#14b8a6);border-radius:999px}.financial-rows>div{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #eef2f6}.financial-rows span{color:var(--muted)}.financial-rows .total{padding:13px 0}.financial-rows .total strong{font-size:18px;color:#047857}.fund-line{margin-bottom:12px}.fund-line>div:first-child{display:flex;justify-content:space-between;gap:12px}.fund-line span{color:var(--muted)}.reserve-row{margin-top:12px;border-top:1px solid var(--line)}.report-secondary{margin-top:15px}.file-input-hidden{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}.file-upload{display:flex;align-items:center;gap:12px;border:1.5px dashed #5eead4;background:#f0fdfa;border-radius:14px;padding:14px;cursor:pointer;transition:.15s ease}.file-upload:hover{border-color:#0f766e;background:#ecfdf5}.file-upload-icon{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:#0f766e;color:#fff;font-size:20px;font-weight:800}.file-upload strong{display:block;color:#0b2748}.file-upload small{display:block;color:var(--muted);margin-top:3px}.schedule-badge{display:inline-flex;padding:4px 8px;border-radius:999px;background:#eff6ff;color:#1d4ed8;font-size:10px;font-weight:800}
@media(max-width:1050px){.bank-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.report-main-grid{grid-template-columns:1fr}}
@media(max-width:760px){.bank-report-head{display:grid;align-items:start}.banking-controls{display:grid;grid-template-columns:1fr 1fr}.banking-controls select{min-width:0;width:100%}.bank-kpi-grid{grid-template-columns:1fr 1fr}.bank-line-chart{min-width:620px}.report-secondary{grid-template-columns:1fr!important}}
@media(max-width:460px){.bank-kpi-grid,.banking-controls,.health-grid{grid-template-columns:1fr}}
.reserve-wallet{border-color:#99f6e4;background:linear-gradient(180deg,#fff,#f0fdfa)}
.secret-box{padding:12px 14px;border:1px solid #d9e2ec;border-radius:10px;background:#f8fafc;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-weight:700;word-break:break-all;margin:8px 0 12px}.login-card .btn.secondary{width:100%}

/* Collector Portal v1.0.0 full mobile portal */
.collector-shell-v2{max-width:980px;padding-bottom:82px}.collector-main-v2{padding:18px 16px 24px}.collector-page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:16px}.collector-page-head h1{margin:3px 0 4px;font-size:26px;letter-spacing:-.03em}.collector-page-head p{margin:0;color:var(--muted);font-size:12px}.collector-eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:.13em;color:#0f766e;font-weight:900}.collector-avatar{width:42px;height:42px;border-radius:50%;border:1px solid #d1fae5;background:#ecfdf5;color:#047857;font-weight:900;font-size:17px;cursor:pointer}.collector-quick-card{display:flex;align-items:center;justify-content:space-between;gap:14px;background:linear-gradient(120deg,#0b1324,#0f4c4a);color:white;padding:16px;border-radius:17px;margin-bottom:14px;box-shadow:0 14px 34px rgba(15,76,74,.14)}.collector-quick-card span{display:block;color:#99f6e4;font-size:10px;text-transform:uppercase;letter-spacing:.1em}.collector-quick-card strong{display:block;margin-top:4px;font-size:17px}.collector-kpi-grid-v2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:14px}.collector-kpi-v2{background:white;border:1px solid var(--line);border-radius:14px;padding:13px;box-shadow:0 6px 20px rgba(16,24,40,.035)}.collector-kpi-v2 span{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.045em}.collector-kpi-v2 strong{display:block;font-size:19px;margin:5px 0 2px;letter-spacing:-.02em}.collector-kpi-v2 small{color:var(--muted);font-size:10px}.collector-kpi-v2.warning strong{color:#b54708}.collector-kpi-v2.wide{grid-column:1/-1;background:linear-gradient(180deg,#fff,#f0fdfa);border-color:#99f6e4}.collector-section-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:15px;margin-bottom:14px;box-shadow:var(--shadow)}.text-action{border:0;background:transparent;color:#0f766e;font-weight:800;font-size:11px;cursor:pointer}.collector-loan-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;border:1px solid var(--line);border-radius:14px;padding:13px;background:#fff}.collector-loan-main{min-width:0}.collector-name-link{display:block;border:0;background:transparent;padding:0;margin:2px 0 5px;font-size:15px;font-weight:900;color:#0b2748;cursor:pointer;text-align:left}.collector-name-link:hover{text-decoration:underline}.collector-loan-meta{font-size:10px;color:var(--muted);line-height:1.7}.collector-loan-money{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:6px;font-size:11px;color:var(--muted)}.collector-loan-money b{color:var(--ink)}.collector-finance-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.collector-finance-summary>div{border:1px solid var(--line);border-radius:11px;padding:10px;background:#f8fafc}.collector-finance-summary span{display:block;color:var(--muted);font-size:10px}.collector-finance-summary strong{display:block;margin-top:4px;font-size:15px}.collector-search{margin-bottom:12px}.collector-search input{width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:#fff}.collector-borrower-grid{display:grid;gap:8px}.collector-borrower-row{width:100%;display:grid;grid-template-columns:42px 1fr auto;gap:11px;align-items:center;border:1px solid var(--line);border-radius:13px;background:#fff;padding:11px;text-align:left;cursor:pointer}.collector-borrower-row:hover{border-color:#99f6e4;background:#f8fffd}.borrower-initial{width:40px;height:40px;border-radius:12px;background:#ecfdf5;color:#047857;display:grid;place-items:center;font-weight:900}.collector-borrower-row strong{display:block}.collector-borrower-row span{display:block;color:var(--muted);font-size:10px;margin-top:3px}.borrower-row-balance{text-align:right}.borrower-row-balance strong{font-size:14px}.collector-filter-pills{display:flex;gap:7px;overflow:auto;padding:0 0 12px}.collector-filter-pills button{white-space:nowrap;border:1px solid var(--line);border-radius:999px;background:#fff;color:#475467;padding:7px 10px;font-size:10px;font-weight:800;cursor:pointer}.collector-filter-pills button.active{background:#0f766e;color:#fff;border-color:#0f766e}.collector-bottom-nav{position:fixed;z-index:50;left:50%;bottom:0;transform:translateX(-50%);width:min(980px,100%);display:grid;grid-template-columns:repeat(4,1fr);padding:8px max(8px,env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));background:rgba(255,255,255,.97);backdrop-filter:blur(12px);border-top:1px solid var(--line);box-shadow:0 -8px 28px rgba(16,24,40,.07)}.collector-bottom-nav[hidden]{display:none}.collector-bottom-nav button{border:0;background:transparent;color:#667085;display:grid;place-items:center;gap:2px;padding:5px;border-radius:10px;cursor:pointer}.collector-bottom-nav button span{font-size:18px}.collector-bottom-nav button small{font-size:9px;font-weight:800}.collector-bottom-nav button.active{color:#0f766e;background:#f0fdfa}.collector-login-card{border-top:4px solid #0f766e}.collector-login-tag{display:inline-flex;margin-top:13px;padding:4px 8px;border-radius:999px;background:#ecfdf5;color:#047857;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.collector-profile-v2 .profile-head{margin-bottom:12px}
@media(max-width:640px){.collector-main-v2{padding:14px 12px 20px}.collector-page-head h1{font-size:22px}.collector-loan-card{grid-template-columns:1fr}.collector-loan-card .collect{width:100%}.collector-finance-summary{grid-template-columns:1fr}.collector-borrower-row{grid-template-columns:38px 1fr}.borrower-row-balance{grid-column:2;text-align:left}.collector-kpi-v2 strong{font-size:17px}}
@media(min-width:760px){.collector-kpi-grid-v2{grid-template-columns:repeat(4,minmax(0,1fr))}.collector-kpi-v2.wide{grid-column:span 2}.collector-borrower-grid{grid-template-columns:1fr 1fr}.collector-bottom-nav{border:1px solid var(--line);border-bottom:0;border-radius:16px 16px 0 0}}
