:root{color:#0f172a;background:#f5f7fb;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 0 0,#14b8a629,#0000 32rem),radial-gradient(circle at 100% 0,#2563eb1f,#0000 28rem),#f5f7fb;min-width:320px;margin:0}button,a,input{font:inherit}button{border:0}.app-shell{width:calc(100% - 60px);max-width:none;margin:0 auto;padding:28px 0 48px}.hero{color:#fff;background:linear-gradient(135deg,#0f172a,#0f766e);border-radius:32px;padding:22px;position:relative;overflow:hidden;box-shadow:0 24px 80px #0f172a3d}.hero:after{content:"";background:#ffffff1f;border-radius:999px;width:360px;height:360px;position:absolute;top:-120px;right:-140px}.topbar,.brand,.api-link,.eyebrow,.panel-head,.section-title,.top-actions,.logout-button{align-items:center;display:flex}.topbar{z-index:1;justify-content:space-between;gap:16px;position:relative}.brand{gap:12px}.brand.large{justify-content:center}.brand-mark{background:#ffffff24;border:1px solid #ffffff2e;border-radius:18px;place-items:center;width:48px;height:48px;display:grid}.login-card .brand-mark{color:#0f766e;background:#ccfbf1;border-color:#0f766e1f}.brand strong,.brand span{display:block}.brand span{opacity:.76;font-size:13px}.top-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px}.api-link,.logout-button{color:#fff;background:#ffffff1f;border-radius:999px;gap:8px;padding:10px 14px;text-decoration:none}.logout-button{cursor:pointer}.hero-grid{z-index:1;grid-template-columns:minmax(0,1fr) 420px;gap:24px;margin-top:56px;display:grid;position:relative}.eyebrow{color:#ccfbf1;background:#14b8a62e;border:1px solid #ccfbf133;border-radius:999px;gap:8px;width:fit-content;padding:8px 12px;font-size:13px;font-weight:700}.eyebrow.dark{color:#0f766e;background:#ccfbf1;border-color:#0f766e1f}.hero p{color:#ffffffc7;max-width:740px;font-size:17px;line-height:1.7}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:26px;display:flex}.hero-actions button{color:#0f172a;cursor:default;background:#fff;border-radius:16px;padding:13px 18px;font-weight:800}.hero-actions .ghost{color:#fff;background:#ffffff1f}.health-panel{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffff1f;border:1px solid #ffffff2e;border-radius:26px;align-self:end;padding:20px}.panel-head{gap:10px;margin-bottom:18px;font-weight:800}.health-row{border-top:1px solid #ffffff24;justify-content:space-between;gap:16px;padding:13px 0;display:flex}.health-row span{color:#ffffffb3}.health-row strong{text-align:right}.stats-grid,.content-grid{gap:18px;margin-top:20px;display:grid}.stat-card,.module-section,.approval-card,.login-card{background:#ffffffe0;border:1px solid #0f172a14;border-radius:26px;box-shadow:0 18px 48px #0f172a14}.stat-card{gap:14px;padding:18px;display:flex}.stat-icon{color:#0f766e;background:#ccfbf1;border-radius:16px;flex:none;place-items:center;width:44px;height:44px;display:grid}.stat-card p,.stat-card strong,.stat-card span{margin:0;display:block}.stat-card p{color:#64748b;font-size:13px}.stat-card strong{letter-spacing:-.04em;margin-top:4px;font-size:26px}.stat-card span{color:#94a3b8;margin-top:4px;font-size:12px}.content-grid{grid-template-columns:minmax(0,1fr) 420px}.module-section,.approval-card{padding:22px}.section-title{color:#0f766e;gap:10px;margin-bottom:18px}.section-title h2{color:#0f172a;letter-spacing:-.03em;margin:0}.module-grid{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.module-card{background:#f8fafc;border:1px solid #0f172a14;border-radius:22px;flex-direction:column;justify-content:space-between;min-height:145px;padding:18px;display:flex}.module-card h3{margin:0 0 8px}.module-card p,.approval-card p,.approval-card li{color:#64748b;line-height:1.6}.module-card p{margin:0}.module-card span{color:#0f766e;background:#ccfbf1;border-radius:999px;width:fit-content;padding:6px 10px;font-size:12px;font-weight:800}.approval-card ul{padding-left:18px}.login-shell{place-items:center;min-height:100vh;padding:28px;display:grid}.login-card{width:min(520px,100%);padding:30px}.login-copy{margin-top:30px}.login-copy h1{letter-spacing:-.05em;margin:18px 0 12px;font-size:clamp(32px,6vw,52px);line-height:.96}.login-copy p{color:#64748b;margin:0;line-height:1.7}.login-form{gap:14px;margin-top:26px;display:grid}.login-form label{color:#334155;gap:8px;font-size:14px;font-weight:800;display:grid}.login-form input{color:#0f172a;background:#fff;border:1px solid #0f172a1f;border-radius:16px;outline:none;width:100%;padding:13px 14px}.login-form input:focus{border-color:#0f766e;box-shadow:0 0 0 4px #0f766e1a}.login-form button{color:#fff;cursor:pointer;background:#0f766e;border-radius:16px;justify-content:center;align-items:center;gap:10px;margin-top:6px;padding:14px 18px;font-weight:900;display:inline-flex}.login-form button:disabled{opacity:.7;cursor:not-allowed}.error-box{color:#991b1b;background:#fee2e2;border:1px solid #fecaca;border-radius:14px;padding:12px 14px;font-size:14px;font-weight:700}@media (width<=980px){.hero-grid,.content-grid,.stats-grid,.module-grid{grid-template-columns:1fr}.topbar{flex-direction:column;align-items:flex-start}}.tabbar{gap:10px;margin-top:20px;display:flex;overflow-x:auto}.tabbar button{color:#475569;cursor:pointer;background:#ffffffd1;border:1px solid #0f172a14;border-radius:999px;align-items:center;gap:8px;padding:11px 15px;font-weight:900;display:inline-flex}.tabbar button.active{color:#fff;background:#0f766e;border-color:#0f766e}.member-layout{grid-template-columns:420px minmax(0,1fr);gap:18px;margin-top:20px;display:grid}.member-form-card,.member-list-card{background:#ffffffe6;border:1px solid #0f172a14;border-radius:26px;padding:22px;box-shadow:0 18px 48px #0f172a14}.member-form,.form-grid{gap:14px;display:grid}.form-grid{grid-template-columns:repeat(2,1fr)}.member-form label{color:#334155;gap:8px;font-size:14px;font-weight:800;display:grid}.member-form input,.member-form textarea,.member-form select,.table-toolbar input,.table-toolbar select{color:#0f172a;background:#fff;border:1px solid #0f172a1f;border-radius:16px;outline:none;width:100%;padding:12px 13px}.member-form textarea{resize:vertical}.member-form input:focus,.member-form textarea:focus,.member-form select:focus,.table-toolbar input:focus,.table-toolbar select:focus{border-color:#0f766e;box-shadow:0 0 0 4px #0f766e1a}.member-form button,.small-button{color:#fff;cursor:pointer;background:#0f766e;border-radius:16px;justify-content:center;align-items:center;gap:9px;padding:12px 14px;font-weight:900;display:inline-flex}.member-form button:disabled{opacity:.7;cursor:not-allowed}.list-head,.table-toolbar,.search-box{align-items:center;display:flex}.list-head{justify-content:space-between;gap:14px;margin-bottom:16px}.small-button{color:#0f766e;background:#ccfbf1;padding:10px 12px}.small-button.primary{color:#fff;background:#0f766e}.table-toolbar{flex-wrap:wrap;gap:10px;margin-bottom:14px}.search-box{background:#fff;border:1px solid #0f172a1f;border-radius:16px;flex:300px;gap:8px;min-width:240px;padding:0 12px}.search-box input{border:0;padding-left:0;box-shadow:none!important}.table-wrap{border:1px solid #0f172a14;border-radius:18px;width:100%;overflow-x:auto}table{border-collapse:collapse;background:#fff;width:100%;min-width:780px}th,td{text-align:left;vertical-align:top;border-bottom:1px solid #0f172a14;padding:14px 16px}th{color:#475569;background:#f8fafc;font-size:13px}td{color:#334155}td strong,td span{display:block}td span{color:#94a3b8;margin-top:4px;font-size:12px}.status-pill{text-transform:capitalize;border-radius:999px;width:fit-content;padding:6px 10px;font-size:12px;font-weight:900;display:inline-flex}.status-pill.active{color:#0f766e;background:#ccfbf1}.status-pill.inactive{color:#92400e;background:#fef3c7}.status-pill.resigned{color:#991b1b;background:#fee2e2}@media (width<=980px){.member-layout,.form-grid{grid-template-columns:1fr}}.tenant-layout{grid-template-columns:1fr 360px;gap:18px;margin-top:20px;display:grid}.tenant-card,.tenant-explain-card{background:#ffffffe6;border:1px solid #0f172a14;border-radius:26px;padding:22px;box-shadow:0 18px 48px #0f172a14}.muted-copy,.tenant-explain-card p{color:#64748b;line-height:1.7}.success-box{color:#065f46;background:#d1fae5;border:1px solid #a7f3d0;border-radius:14px;margin:14px 0;padding:12px 14px;font-size:14px;font-weight:800}.tenant-facts{gap:12px;margin:18px 0;display:grid}.tenant-facts div{background:#f8fafc;border:1px solid #0f172a14;border-radius:18px;padding:14px}.tenant-facts span,.tenant-facts strong{display:block}.tenant-facts span{color:#64748b;font-size:13px}.tenant-facts strong{color:#0f172a;margin-top:4px}@media (width<=980px){.tenant-layout{grid-template-columns:1fr}}.demo-account-picker{border-top:1px solid #0f172a14;margin-top:24px;padding-top:22px}.section-title.compact{margin-bottom:8px}.section-title.compact h2{font-size:16px}.demo-account-picker p{color:#64748b;margin:0 0 12px}.demo-account-list{gap:10px;display:grid}.demo-account{text-align:left;color:#0f172a;cursor:pointer;background:#f8fafc;border:1px solid #0f172a14;border-radius:16px;width:100%;padding:13px}.demo-account strong,.demo-account span,.demo-account em{display:block}.demo-account span{color:#0f766e;margin-top:3px;font-size:13px;font-weight:800}.demo-account em{color:#64748b;margin-top:4px;font-size:12px;font-style:normal;line-height:1.4}.platform-grid{grid-template-columns:1fr 360px;gap:18px;margin-top:20px;display:grid}.platform-card{background:#ffffffe6;border:1px solid #0f172a14;border-radius:26px;padding:22px;box-shadow:0 18px 48px #0f172a14}@media (width<=980px){.platform-grid{grid-template-columns:1fr}}.savings-layout{grid-template-columns:420px minmax(0,1fr);gap:18px;margin-top:20px;display:grid}.savings-form-card,.savings-list-card,.savings-summary-card{background:#ffffffe6;border:1px solid #0f172a14;border-radius:26px;padding:22px;box-shadow:0 18px 48px #0f172a14}.savings-summary-grid{grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px;display:grid}.savings-mini-card{background:#f8fafc;border:1px solid #0f172a14;border-radius:20px;padding:16px}.savings-mini-card span,.savings-mini-card strong{display:block}.savings-mini-card span{color:#64748b;font-size:13px}.savings-mini-card strong{color:#0f172a;margin-top:5px;font-size:20px}@media (width<=980px){.savings-layout,.savings-summary-grid{grid-template-columns:1fr}}.hero{border-radius:26px;min-height:auto;padding:22px 24px 24px}.hero p{max-width:760px;font-size:15.5px;line-height:1.65}.hero-actions{margin-top:20px}.health-panel{border-radius:22px;justify-self:end;max-width:420px;padding:18px}.health-row{padding:10px 0}.topbar{align-items:center}@media (width>=1280px){.hero h1{max-width:690px}.hero-grid{grid-template-columns:minmax(0,1fr) 380px}}@media (width<=980px){.hero-grid{grid-template-columns:1fr;margin-top:28px}.health-panel{justify-self:stretch;max-width:none}.hero h1{font-size:clamp(32px,8vw,44px)}}.hero{border-radius:24px!important;padding:18px 22px 20px!important}.hero:after{opacity:.45!important;width:180px!important;height:180px!important;top:-55px!important;right:-55px!important}.hero-grid{grid-template-columns:minmax(0,1fr) 340px!important;align-items:end!important;gap:18px!important;margin-top:22px!important}.hero h1{letter-spacing:-.04em!important;max-width:680px!important;margin:12px 0 10px!important;font-size:clamp(28px,2.8vw,38px)!important;line-height:1.08!important}.hero p{max-width:680px!important;margin:0!important;font-size:14px!important;line-height:1.55!important}.hero-actions{gap:10px!important;margin-top:16px!important}.hero-actions button{border-radius:14px!important;padding:10px 14px!important;font-size:14px!important}.topbar{min-height:42px!important}.brand-mark{border-radius:14px!important;width:40px!important;height:40px!important}.brand strong{font-size:18px!important}.brand span{font-size:12px!important}.api-link,.logout-button{padding:9px 12px!important;font-size:14px!important}.eyebrow{padding:6px 10px!important;font-size:12px!important}.health-panel{border-radius:20px!important;max-width:340px!important;padding:14px 16px!important}.panel-head{margin-bottom:10px!important;font-size:14px!important}.health-row{padding:8px 0!important;font-size:13px!important}.health-row strong{font-size:13px!important}.tabbar{margin-top:14px!important}.tabbar button{padding:9px 13px!important;font-size:14px!important}.stats-grid{margin-top:14px!important}.stat-card{border-radius:20px!important;padding:14px!important}.stat-icon{border-radius:14px!important;width:40px!important;height:40px!important}.stat-card strong{font-size:22px!important}.stat-card p{font-size:12px!important}.stat-card span{font-size:11.5px!important}@media (width<=980px){.hero-grid{grid-template-columns:1fr!important}.health-panel{max-width:none!important}.hero h1{font-size:clamp(26px,7vw,34px)!important}}.loans-layout{grid-template-columns:420px minmax(0,1fr);gap:18px;margin-top:20px;display:grid}.loans-form-card,.loans-list-card{background:#ffffffe6;border:1px solid #0f172a14;border-radius:26px;padding:22px;box-shadow:0 18px 48px #0f172a14}.loans-summary-grid{grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px;display:grid}.loans-mini-card{background:#f8fafc;border:1px solid #0f172a14;border-radius:20px;padding:16px}.loans-mini-card span,.loans-mini-card strong,.loans-mini-card em{display:block}.loans-mini-card span{color:#64748b;font-size:13px}.loans-mini-card strong{color:#0f172a;margin-top:5px;font-size:20px}.loans-mini-card em{color:#94a3b8;margin-top:3px;font-size:12px;font-style:normal}.loan-pill{text-transform:capitalize;border-radius:999px;width:fit-content;padding:6px 10px;font-size:12px;font-weight:900;display:inline-flex}.loan-pill.pending_approval,.loan-pill.approved,.loan-pill.unpaid{color:#92400e;background:#fef3c7}.loan-pill.active,.loan-pill.paid{color:#0f766e;background:#ccfbf1}.loan-pill.rejected,.loan-pill.cancelled{color:#991b1b;background:#fee2e2}.loan-pill.paid_off{color:#1d4ed8;background:#dbeafe}.row-actions{flex-wrap:wrap;gap:8px;display:flex}.mini-action{color:#334155;cursor:pointer;background:#f1f5f9;border-radius:999px;align-items:center;gap:6px;padding:7px 10px;font-size:12px;font-weight:900;display:inline-flex}.mini-action.approve{color:#0f766e;background:#ccfbf1}.mini-action.reject{color:#991b1b;background:#fee2e2}.installment-panel{background:#f8fafc;border:1px solid #0f172a14;border-radius:22px;margin-top:18px;padding:18px}.installment-panel h3{margin:0}.installment-panel p{color:#64748b;margin:5px 0 0}@media (width<=980px){.loans-layout,.loans-summary-grid{grid-template-columns:1fr}}.risk-layout{gap:18px;margin-top:20px;display:grid}.risk-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.risk-summary-card,.risk-table-card{background:#ffffffe6;border:1px solid #0f172a14;border-radius:26px;padding:22px;box-shadow:0 18px 48px #0f172a14}.risk-summary-card{gap:8px;display:grid}.risk-summary-card span,.risk-summary-card strong,.risk-summary-card em{display:block}.risk-summary-card span{color:#64748b;font-size:13px;font-weight:800}.risk-summary-card strong{color:#0f172a;letter-spacing:-.04em;font-size:28px}.risk-summary-card em{color:#94a3b8;font-size:13px;font-style:normal}.risk-summary-card.overdue .stat-icon{color:#991b1b;background:#fee2e2}.mini-action:disabled{opacity:.65;cursor:not-allowed}@media (width<=980px){.risk-summary-grid{grid-template-columns:1fr}}.cash-layout{grid-template-columns:420px minmax(0,1fr);gap:18px;margin-top:20px;display:grid}.cash-form-card,.cash-list-card,.audit-card{background:#ffffffe6;border:1px solid #0f172a14;border-radius:26px;padding:22px;box-shadow:0 18px 48px #0f172a14}.cash-summary-grid{grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px;display:grid}.cash-mini-card{background:#f8fafc;border:1px solid #0f172a14;border-radius:20px;padding:16px}.cash-mini-card span,.cash-mini-card strong{display:block}.cash-mini-card span{color:#64748b;font-size:13px}.cash-mini-card strong{color:#0f172a;margin-top:5px;font-size:20px}.cash-mini-card.in strong,.cash-pill.in{color:#0f766e}.cash-mini-card.out strong,.cash-pill.out{color:#991b1b}.cash-pill{border-radius:999px;width:fit-content;padding:6px 10px;font-size:12px;font-weight:900;display:inline-flex}.cash-pill.in{background:#ccfbf1}.cash-pill.out{background:#fee2e2}.audit-layout{gap:18px;margin-top:20px;display:grid}.audit-action{color:#3730a3;background:#eef2ff;border-radius:999px;width:fit-content;padding:6px 10px;font-size:12px;font-weight:900;display:inline-flex}.audit-meta{white-space:nowrap;text-overflow:ellipsis;color:#475569;background:#f8fafc;border-radius:10px;max-width:420px;padding:8px;display:block;overflow:hidden}@media (width<=980px){.cash-layout,.cash-summary-grid{grid-template-columns:1fr}}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))!important}.reports-layout{gap:18px;margin-top:20px;display:grid}.reports-summary-card,.reports-download-card{background:#ffffffe6;border:1px solid #0f172a14;border-radius:26px;padding:22px;box-shadow:0 18px 48px #0f172a14}.report-tenant-head{grid-template-columns:minmax(0,1fr) 260px;gap:14px;margin-bottom:18px;display:grid}.report-tenant-head div,.report-kpi,.report-download-item{background:#f8fafc;border:1px solid #0f172a14;border-radius:20px;padding:16px}.report-tenant-head span,.report-tenant-head strong,.report-tenant-head em,.report-kpi span,.report-kpi strong,.report-kpi em{display:block}.report-tenant-head span,.report-kpi span{color:#64748b;font-size:13px;font-weight:800}.report-tenant-head strong{color:#0f172a;margin-top:4px;font-size:20px}.report-tenant-head em,.report-kpi em{color:#94a3b8;margin-top:4px;font-size:12px;font-style:normal}.reports-kpi-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;display:grid}.report-kpi strong{color:#0f172a;letter-spacing:-.04em;margin-top:5px;font-size:22px}.report-kpi.danger strong{color:#991b1b}.report-download-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.report-download-item{grid-template-columns:46px minmax(0,1fr);align-items:start;gap:14px;display:grid}.report-download-icon{color:#0f766e;background:#ccfbf1;border-radius:16px;place-items:center;width:46px;height:46px;display:grid}.report-download-item strong,.report-download-item p{margin:0;display:block}.report-download-item p{color:#64748b;margin-top:6px;font-size:13px;line-height:1.55}.report-download-item button{margin-top:12px}@media (width<=1180px){.reports-kpi-grid,.report-download-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.report-tenant-head{grid-template-columns:1fr}}@media (width<=720px){.reports-kpi-grid,.report-download-grid,.report-download-item{grid-template-columns:1fr}}.permission-banner{color:#92400e;background:#fef3c7;border:1px solid #fde68a;border-radius:14px;padding:11px 13px;font-size:13px;font-weight:800;line-height:1.5}.role-scope-strip{color:#ccfbf1;background:#14b8a629;border:1px solid #ccfbf12e;border-radius:999px;align-items:center;gap:8px;width:fit-content;margin-top:10px;padding:7px 10px;font-size:12px;font-weight:800;display:inline-flex}.role-scope-strip span{color:#ffffffb8}.role-scope-strip strong{color:#fff}.empty-state{text-align:center;color:#64748b;gap:4px;padding:18px;display:grid}.empty-state strong{color:#0f172a;font-size:14px}.empty-state span{color:#64748b;font-size:13px}.tabbar{background:#ffffffb3;border:1px solid #0f172a14;border-radius:999px;width:fit-content;max-width:100%;padding:7px;box-shadow:0 12px 34px #0f172a0f}.tabbar button{white-space:nowrap;border-radius:999px!important}.member-form-card,.member-list-card,.savings-form-card,.savings-list-card,.loans-form-card,.loans-list-card,.risk-summary-card,.risk-table-card,.cash-form-card,.cash-list-card,.audit-card,.reports-summary-card,.reports-download-card,.tenant-card,.tenant-explain-card,.platform-card{border-radius:22px!important}.table-wrap{border-radius:16px!important}th{text-transform:uppercase;letter-spacing:.02em;font-size:12px!important}td{font-size:13px}.hero h1,.hero p{max-width:620px!important}.health-panel{align-self:stretch!important}.login-card{max-height:calc(100vh - 48px);overflow:auto}.demo-account{transition:transform .12s,border-color .12s,background .12s}.demo-account:hover{background:#f0fdfa;border-color:#0f766e3d;transform:translateY(-1px)}.permission-banner{margin:4px 0}@media (width<=1280px){.tabbar{width:100%}}@media (width<=980px){.tabbar{border-radius:22px}.tabbar button{flex:1 0 auto}}.hero-actions button.warning{border:1px solid #fde68a47;color:#fef3c7!important;background:#fbbf242e!important}.hero-inline-success,.hero-inline-error{border-radius:14px;width:fit-content;max-width:680px;margin-top:12px;padding:10px 12px;font-size:13px;font-weight:800}.hero-inline-success{color:#d1fae5;background:#10b98129;border:1px solid #a7f3d038}.hero-inline-error{color:#fee2e2;background:#ef444429;border:1px solid #fecaca38}.hero-actions button:disabled{opacity:.68;cursor:not-allowed}.platform-onboarding-grid{grid-template-columns:minmax(0,1fr) 380px;gap:18px;margin-top:20px;display:grid}.platform-tenant-form{margin-top:16px}.tenant-user-head{background:#f8fafc;border:1px solid #0f172a14;border-radius:18px;margin-bottom:12px;padding:14px}.tenant-user-head strong,.tenant-user-head span{display:block}.tenant-user-head span{color:#0f766e;margin-top:4px;font-size:13px;font-weight:800}.tenant-user-list{gap:10px;display:grid}.tenant-user-item{background:#f8fafc;border:1px solid #0f172a14;border-radius:16px;padding:13px}.tenant-user-item strong,.tenant-user-item span,.tenant-user-item em{display:block}.tenant-user-item span{color:#0f766e;margin-top:3px;font-size:13px;font-weight:800}.tenant-user-item em{color:#64748b;margin-top:4px;font-size:12px;font-style:normal}@media (width<=1180px){.platform-onboarding-grid{grid-template-columns:1fr}}
