:root,:root[data-theme=light]{--bg: #eef4ff;--panel: #ffffff;--muted: #5f6f8d;--text: #142033;--accent: #42d392;--accent-2: #7c6dff;--border: #d8e2f0;--warn: #b9701a;--danger: #cb445c;--text-contrast: #0b1021;--page-background: radial-gradient(circle at 18% 18%, rgba(91, 231, 196, .16), transparent 26%), radial-gradient(circle at 82% 0%, rgba(124, 140, 255, .16), transparent 30%), #eef4ff;--sidebar-bg: rgba(255, 255, 255, .84);--topbar-bg: rgba(248, 251, 255, .88);--pill-bg: rgba(124, 109, 255, .14);--nav-active-bg: rgba(124, 109, 255, .1);--surface-muted: rgba(20, 32, 51, .04);--surface-strong: rgba(255, 255, 255, .92);--input-bg: rgba(255, 255, 255, .9);--card-bg: rgba(255, 255, 255, .86);--card-shadow: 0 16px 38px rgba(61, 82, 113, .14);--elevated-shadow: 0 24px 60px rgba(61, 82, 113, .18);--thread-bg: rgba(235, 241, 250, .82);--active-row-bg: rgba(66, 211, 146, .12);--overlay-bg: rgba(10, 18, 32, .52);--chat-admin-bg: rgba(66, 211, 146, .14);--chat-admin-border: rgba(66, 211, 146, .34);--repay-border: rgba(79, 225, 180, .32);--repay-bg: linear-gradient(135deg, rgba(79, 225, 180, .16), rgba(124, 109, 255, .08));--badge-secondary-bg: rgba(20, 32, 51, .06);--badge-success-bg: rgba(66, 211, 146, .14);--badge-warn-bg: rgba(245, 165, 36, .16);--badge-danger-bg: rgba(239, 111, 125, .14);--btn-secondary-bg: rgba(255, 255, 255, .88);--btn-hover-shadow: 0 12px 28px rgba(124, 109, 255, .22);--auth-hero-bg: linear-gradient(135deg, rgba(124, 109, 255, .14), rgba(66, 211, 146, .12));--auth-card-bg: rgba(255, 255, 255, .92);--policy-card-bg: rgba(255, 255, 255, .92);--chart-axis: #6b7280;--chart-tooltip-bg: #ffffff;--chart-tooltip-border: #d8e2f0;--chart-tooltip-text: #142033;--status-active-bg: #3fae68;--status-inactive-bg: #94a3b8;--status-chip-text: #ffffff;--font-sans: "SF Pro Text", "SF Pro Display", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, Arial, sans-serif;font-family:var(--font-sans);letter-spacing:.005em;color:var(--text)}:root[data-theme=dark]{--bg: #121a2a;--panel: #1a2438;--muted: #a9b6cf;--text: #f2f5fb;--accent: #4fe1b4;--accent-2: #6f7fff;--border: #2a395a;--warn: #f2b062;--danger: #ef6f7d;--text-contrast: #0b1021;--page-background: radial-gradient(circle at 20% 20%, rgba(91, 231, 196, .18), transparent 28%), radial-gradient(circle at 80% 0%, rgba(124, 140, 255, .16), transparent 32%), #121a2a;--sidebar-bg: rgba(23, 30, 50, .92);--topbar-bg: rgba(18, 24, 40, .86);--pill-bg: rgba(124, 109, 255, .16);--nav-active-bg: rgba(124, 109, 255, .12);--surface-muted: rgba(255, 255, 255, .03);--surface-strong: rgba(255, 255, 255, .04);--input-bg: rgba(255, 255, 255, .04);--card-bg: rgba(25, 33, 53, .88);--card-shadow: 0 10px 24px rgba(0, 0, 0, .18);--elevated-shadow: 0 22px 70px rgba(0, 0, 0, .4);--thread-bg: rgba(10, 15, 28, .6);--active-row-bg: rgba(79, 225, 180, .08);--overlay-bg: rgba(0, 0, 0, .6);--chat-admin-bg: rgba(66, 211, 146, .12);--chat-admin-border: rgba(66, 211, 146, .4);--repay-border: rgba(79, 225, 180, .35);--repay-bg: linear-gradient(135deg, rgba(79, 225, 180, .18), rgba(111, 127, 255, .08));--badge-secondary-bg: rgba(255, 255, 255, .05);--badge-success-bg: rgba(66, 211, 146, .12);--badge-warn-bg: rgba(245, 165, 36, .12);--badge-danger-bg: rgba(249, 112, 102, .12);--btn-secondary-bg: rgba(255, 255, 255, .08);--btn-hover-shadow: 0 10px 25px rgba(124, 109, 255, .25);--auth-hero-bg: linear-gradient(135deg, rgba(124, 109, 255, .18), rgba(66, 211, 146, .08));--auth-card-bg: rgba(25, 33, 53, .92);--policy-card-bg: rgba(24, 32, 50, .94);--chart-axis: #6b7280;--chart-tooltip-bg: #11172b;--chart-tooltip-border: #1f2a44;--chart-tooltip-text: #e8ecf5;--status-active-bg: #4caf50;--status-inactive-bg: #999999;--status-chip-text: #f2f5fb}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;font-size:16px;font-family:var(--font-sans);line-height:1.45;color:var(--text);background:var(--page-background);background-attachment:fixed;transition:background .2s ease,color .2s ease}a{color:inherit;text-decoration:none}.app-shell{display:grid;grid-template-columns:260px minmax(0,1fr);min-height:100vh;font-family:var(--font-sans);font-size:15px}.app-shell h1{font-size:1.78rem}.app-shell h2{font-size:1.28rem}.app-shell h3{font-size:1.06rem}.app-shell h4{font-size:.96rem}@media (max-width: 960px){.app-shell{grid-template-columns:1fr}.sidebar{position:relative;height:auto;border-right:0;border-bottom:1px solid var(--border)}}.sidebar{background:var(--sidebar-bg);border-right:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:20px 16px;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:10px;font-weight:700;letter-spacing:.02em;font-family:var(--font-sans);font-size:15px}.pill{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:999px;background:var(--pill-bg);color:var(--text);font-size:12px;border:1px solid var(--border)}.nav{margin-top:20px;display:grid;gap:4px}.nav a{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:8px;color:var(--muted);transition:all .15s ease;border:1px solid transparent;font-size:13.5px}.nav a.active,.nav a:hover{color:var(--text);background:var(--nav-active-bg);border-color:var(--border)}.nav-group{margin-top:8px;display:grid;gap:6px}.nav-label{display:inline-flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px 5px;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.04em;background:none;border:0;cursor:pointer;text-align:left}.nav-label span{display:inline-flex;align-items:center;gap:8px}.nav-label .rotate-180{transform:rotate(180deg);transition:transform .2s ease}.nav-sub{display:grid;gap:4px;padding-left:14px}.nav-sub a{font-size:13.5px}.topbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;min-height:76px;padding:14px clamp(20px,2.6vw,34px);border-bottom:1px solid var(--border);background:var(--topbar-bg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);position:sticky;top:0;z-index:10}.main-panel{min-width:0}.topbar-context{min-width:220px;display:grid;gap:3px}.topbar-eyebrow{color:var(--muted);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0}.topbar-title-row{display:inline-flex;align-items:center;gap:10px}.topbar-title-row h1{margin:0;font-size:21px;line-height:1.2}.status-dot{width:8px;height:8px;border-radius:50%;box-shadow:0 0 0 4px var(--surface-muted)}.status-dot.online{background:var(--accent)}.status-dot.offline{background:var(--danger)}.topbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.topbar-meta{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}.theme-control{display:block;min-width:150px}.theme-control-label{color:var(--muted);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase}.theme-select{min-width:150px;padding:8px 34px 8px 11px;border-radius:8px}@keyframes spin{to{transform:rotate(360deg)}}.user-chip{display:inline-flex;align-items:center;gap:9px;min-height:42px;padding:5px 6px 5px 8px;border-radius:8px;border:1px solid var(--border);background:var(--surface-strong)}.user-avatar{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;background:linear-gradient(135deg,var(--accent-2),var(--accent));color:var(--text-contrast);font-size:12px;font-weight:800}.user-chip-name{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700;font-size:13px}.user-chip-meta{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:11.5px}.icon-btn{width:32px;height:32px;border:1px solid var(--border);border-radius:8px;display:inline-grid;place-items:center;color:var(--muted);background:var(--btn-secondary-bg);cursor:pointer;transition:color .15s ease,border-color .15s ease,background .15s ease,transform .12s ease}.icon-btn:hover{color:var(--text);border-color:var(--accent-2);transform:translateY(-1px)}.content{width:min(1680px,100%);margin:0 auto;padding:clamp(20px,2.8vw,36px)}.page-loader{min-height:100vh;display:grid;place-items:center;padding:24px}.page-loader-card,.app-error-card{width:min(520px,100%);background:var(--card-bg);border:1px solid var(--border);border-radius:18px;padding:24px;box-shadow:var(--elevated-shadow)}.page-loader-card{display:flex;align-items:center;gap:16px}.page-loader-spinner{width:42px;height:42px;border-radius:50%;border:3px solid var(--border);border-top-color:var(--accent-2);border-right-color:var(--accent);animation:spin .9s linear infinite;flex:0 0 auto}.app-error-card{display:grid;gap:12px}.app-error-details{margin:0;padding:12px;border-radius:12px;border:1px solid var(--border);background:var(--surface-strong);color:var(--text);white-space:pre-wrap;overflow-x:auto}.page-header{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:4px}.header-actions{display:inline-flex;align-items:center;gap:12px}.reports-filter-card{display:grid;grid-template-columns:minmax(220px,1.1fr) minmax(260px,1fr) auto;gap:16px;align-items:end}.reports-filter-intro{display:grid;gap:10px}.reports-filter-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.reports-filter-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px}.reports-analytics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:16px;align-items:start}.reports-mini-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}.reports-mini-stat{padding:14px;border-radius:14px;border:1px solid var(--border);background:var(--surface-strong)}.reports-mini-stat .label{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.04em}.reports-mini-stat .value{margin-top:6px;font-size:24px;font-weight:700}.settings-submenu-card{display:grid;gap:16px}.settings-submenu-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.settings-submenu{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.settings-submenu-item{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border);border-radius:16px;background:var(--surface-strong);color:var(--text);padding:16px;text-align:left;cursor:pointer;display:grid;gap:10px;transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease,background .2s ease}.settings-submenu-item:hover{transform:translateY(-1px);border-color:var(--accent-2);box-shadow:0 10px 24px #7c6dff1f}.settings-submenu-item.active{border-color:var(--accent-2);background:linear-gradient(135deg,var(--surface-strong),var(--nav-active-bg));box-shadow:0 14px 34px #7c6dff29}.settings-submenu-item-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.settings-submenu-item-label{font-size:16px;font-weight:700}.settings-submenu-item-meta{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.05em}.settings-submenu-item-description{color:var(--muted);font-size:13px;line-height:1.5}.settings-submenu-item.active .settings-submenu-item-description,.settings-submenu-item.active .settings-submenu-item-meta{color:var(--text)}.settings-overview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px;align-items:start}.settings-toggle-list{display:grid;gap:12px}.settings-toggle-item{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:14px;border-radius:14px;border:1px solid var(--border);background:var(--surface-strong)}.settings-toggle-item input{margin-top:4px}.settings-stat-strip{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.settings-mini-stat{min-width:92px;padding:10px 12px;border-radius:12px;border:1px solid var(--border);background:var(--surface-strong);display:grid;gap:4px}.settings-mini-stat .label{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.05em}.settings-mini-stat strong{font-size:20px}.settings-section-banner{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px}.settings-product-edit-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:14px;width:100%}.settings-product-identity{grid-column:span 3}.settings-product-bounds{grid-column:span 4}.settings-product-pricing{grid-column:span 5}.settings-product-initiation{grid-column:1 / -1}.settings-subcard{padding:16px;border-radius:14px;border:1px solid var(--border);background:var(--surface-strong)}.settings-two-col-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.settings-fee-rule-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(178px,1fr));gap:14px}.settings-range-row{display:flex;align-items:center;gap:12px}.settings-actions-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:14px}.subtle{color:var(--muted);font-size:12.5px;margin:4px 0 0}.grid{display:grid;gap:16px}.grid.cols-4{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.grid.cols-3{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.loan-risk-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.loan-risk-panels{display:grid;grid-template-columns:repeat(auto-fit,minmax(235px,1fr));align-items:start;gap:12px;margin-top:16px}.loan-risk-panel{min-width:0;padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--surface-strong)}.loan-risk-panel-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:10px}.card{background:var(--card-bg);border:1px solid var(--border);border-radius:14px;padding:16px;box-shadow:var(--card-shadow)}.card-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.stat{display:flex;flex-direction:column;gap:8px}.stat .label{color:var(--muted);font-size:12.5px}.field-label{color:var(--muted);font-size:11.5px;text-transform:uppercase;margin-bottom:6px}.stat .value{font-size:20px;font-weight:700}.stat .trend.up{color:var(--accent-2)}.stat .trend.down{color:var(--danger)}.table{width:100%;border-collapse:collapse;color:var(--text)}.table th,.table td{padding:10px;border-bottom:1px solid var(--border);text-align:left;font-size:13.5px;vertical-align:middle}.table th{color:var(--muted);font-size:11.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.data-table-shell{display:grid;gap:10px}.table-wrap{overflow-x:auto}.table-toolbar,.table-footer,.table-toolbar-group,.table-pagination,.table-search,.table-page-size{display:flex;align-items:center}.table-toolbar,.table-footer{justify-content:space-between;gap:10px;flex-wrap:wrap}.table-toolbar-group,.table-pagination{gap:8px;flex-wrap:wrap}.table-search{gap:8px;min-width:240px;padding:0 10px;border-radius:10px;border:1px solid var(--border);background:var(--input-bg);color:var(--muted)}.table-search-input{width:min(320px,100%);border:none;outline:none;background:transparent;color:var(--text);padding:9px 0;font:inherit}.table-page-size{gap:8px;color:var(--muted);font-size:12.5px}.table-page-size .input{width:78px;padding:8px 10px}.table-sort{display:inline-flex;align-items:center;gap:6px;padding:0;border:none;background:transparent;color:inherit;font:inherit;text-transform:inherit;letter-spacing:inherit;cursor:pointer}.table-sort:hover{color:var(--text)}.table-summary,.table-page-indicator,.table-empty{color:var(--muted);font-size:12.5px}.table-empty{text-align:center;padding:18px 12px}.table-row-clickable{cursor:pointer}.table-row-clickable:hover{background:var(--surface-muted)}.table-row-active{background:var(--active-row-bg)}.list{list-style:none;padding:0;margin:8px 0 0;color:var(--muted);display:grid;gap:10px}.list li{padding:10px 12px;border-radius:10px;border:1px solid var(--border);background:var(--surface-muted)}.chat-thread{margin-top:14px;display:grid;gap:10px;max-height:320px;overflow-y:auto;padding:8px;border-radius:12px;border:1px solid var(--border);background:var(--thread-bg)}.chat-bubble{max-width:78%;padding:10px 12px;border-radius:14px;border:1px solid var(--border);background:var(--surface-strong);color:var(--text)}.chat-bubble.admin{margin-left:auto;background:var(--chat-admin-bg);border-color:var(--chat-admin-border)}.chat-meta{font-size:11px;color:var(--muted);margin-bottom:6px}.loan-message-card{width:min(40vw,520px);margin-left:auto}@media (max-width: 900px){.loan-message-card{width:100%}}.repay-box{padding:10px;border-radius:12px;border:1px solid var(--repay-border);background:var(--repay-bg)}.badge{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border-radius:8px;font-size:11.5px;border:1px solid var(--border)}.badge.secondary{color:var(--muted);background:var(--badge-secondary-bg)}.badge.success{color:var(--accent-2);background:var(--badge-success-bg)}.badge.warn{color:var(--warn);background:var(--badge-warn-bg)}.badge.danger{color:var(--danger);background:var(--badge-danger-bg)}.btn{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:12px;background:linear-gradient(135deg,var(--accent-2),var(--accent));color:var(--text-contrast);font-weight:600;font-size:13.5px;border:none;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,background .2s ease,color .2s ease}.btn.secondary{background:var(--btn-secondary-bg);color:var(--text);border:1px solid var(--border)}.btn:hover{transform:translateY(-1px);box-shadow:var(--btn-hover-shadow)}.split{display:grid;grid-template-columns:2fr 1fr;gap:16px}@media (max-width: 1100px){.split{grid-template-columns:1fr}}.form{display:grid;gap:12px}.form.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}@media (max-width: 1100px){.form.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 700px){.form.grid-3{grid-template-columns:1fr}}.input{width:100%;padding:8px 10px;border-radius:10px;border:1px solid var(--border);background:var(--input-bg);color:var(--text);font:inherit}textarea.input{resize:vertical}.theme-options{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.theme-option{width:100%;padding:14px;border-radius:14px;border:1px solid var(--border);background:var(--surface-strong);color:var(--text);display:grid;gap:10px;text-align:left;cursor:pointer;transition:transform .12s ease,border-color .2s ease,background .2s ease,box-shadow .2s ease}.theme-option:hover{transform:translateY(-1px);border-color:var(--accent-2)}.theme-option.active{background:var(--nav-active-bg);border-color:var(--accent-2);box-shadow:0 0 0 1px #7c6dff29}.theme-option-title{display:inline-flex;align-items:center;gap:8px}.theme-option-title strong{font-size:14px}.theme-option span:not(.badge){color:var(--muted);font-size:12.5px;line-height:1.5}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:32px}.auth-split{width:min(920px,100%);display:grid;gap:24px;grid-template-columns:minmax(240px,1fr) minmax(320px,1fr)}@media (max-width: 900px){.auth-split{grid-template-columns:1fr}}.auth-hero{padding:28px;border-radius:20px;background:var(--auth-hero-bg);border:1px solid var(--border);box-shadow:var(--elevated-shadow);min-height:320px}.auth-version{margin-top:18px;font-size:12px;color:var(--muted)}.auth-card{width:100%;background:var(--auth-card-bg);border:1px solid var(--border);border-radius:16px;padding:24px;box-shadow:var(--elevated-shadow)}.auth-footer{margin-top:12px;display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:13px}.auth-links{display:inline-flex;gap:12px;color:var(--muted)}.auth-links a{color:var(--muted)}.auth-links a:hover{color:var(--text)}.input-group{display:grid;gap:6px}.input-group label{font-size:12px;color:var(--muted)}.policy-shell{min-height:100vh;padding:48px 20px 64px;display:flex;justify-content:center}.policy-card{width:min(980px,100%);background:var(--policy-card-bg);border:1px solid var(--border);border-radius:20px;padding:32px;box-shadow:var(--elevated-shadow)}.policy-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;border-bottom:1px solid var(--border);padding-bottom:18px;margin-bottom:24px}.policy-header h1{margin:12px 0 6px}.policy-meta{color:var(--muted);font-size:13px;margin:0}.policy-actions{display:flex;gap:10px;flex-wrap:wrap}.policy-section{margin-bottom:20px}.policy-section h2{margin:0 0 8px;font-size:18px}.policy-section p{margin:0;color:var(--muted);line-height:1.6}.policy-footer{margin-top:28px;padding-top:16px;border-top:1px solid var(--border);color:var(--muted);font-size:13px}@media (max-width: 720px){.reports-filter-card,.reports-filter-controls{grid-template-columns:1fr}.reports-filter-actions{justify-content:flex-start}.settings-submenu-header,.settings-submenu-item-top,.settings-toggle-item,.settings-section-banner{flex-direction:column}.settings-stat-strip{justify-content:flex-start}.settings-two-col-grid{grid-template-columns:1fr}.settings-product-identity,.settings-product-bounds,.settings-product-pricing{grid-column:1 / -1}.settings-range-row{flex-wrap:wrap}.loan-risk-summary,.loan-risk-panel-fields{grid-template-columns:1fr}.policy-card{padding:24px}.policy-header{flex-direction:column}.topbar-actions{width:100%;justify-content:flex-start}.topbar{align-items:flex-start;padding:14px 16px}.topbar-context{width:100%}.topbar-title-row h1{font-size:19px}.topbar-meta{width:100%}.theme-control{flex:1 1 160px;min-width:0}.theme-select{min-width:0}.user-chip{width:100%;justify-content:space-between}.content{padding:18px 14px 28px}}
