:root{--black: #090909;--ink: #171717;--muted: #6c6c6c;--line: #e7e1d5;--soft: #faf8f2;--white: #ffffff;--gold: #c89b2c;--gold-2: #e6c46b;--green: #12805c;--red: #ba2d2d;--amber: #a86406;--blue: #2366b8;--shadow: 0 18px 45px rgba(9, 9, 9, .12);--radius: 8px;color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:var(--soft);color:var(--ink)}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.68}.loading-screen{min-height:100vh;display:grid;place-items:center;background:var(--soft);color:var(--ink);font-weight:900}.login-page{min-height:100vh;display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,520px);background:linear-gradient(120deg,#090909f5,#090909b8),url(https://images.unsplash.com/photo-1563986768494-4dee2763ff3f?auto=format&fit=crop&w=1800&q=80) center/cover}.login-brand{min-height:100vh;padding:48px;display:flex;flex-direction:column;justify-content:space-between;color:var(--white)}.brand-mark{width:168px;height:auto;display:block;padding:10px 12px;background:var(--white);border-radius:var(--radius)}.login-copy{max-width:720px}.login-copy h1{margin:0 0 18px;font-size:clamp(40px,6vw,72px);line-height:.95;letter-spacing:0}.login-copy p{margin:0;color:#ffffffc7;font-size:18px;line-height:1.7}.login-card{align-self:center;margin:24px;padding:32px;border:1px solid rgba(200,155,44,.24);background:#fffffff5;box-shadow:var(--shadow);border-radius:var(--radius)}.login-card h2{margin:0 0 8px;font-size:28px}.login-card .hint{margin:0 0 28px;color:var(--muted)}.field{display:grid;gap:8px;margin-bottom:16px}.field label{font-size:13px;font-weight:700;color:#3d3d3d}.field-error{color:var(--red);font-size:12px;font-weight:700}.field input,.field select,.field textarea,.filter{width:100%;min-height:42px;border:1px solid var(--line);border-radius:var(--radius);background:var(--white);padding:10px 12px;color:var(--ink);outline:none}.field input:focus,.field select:focus,.field textarea:focus,.filter:focus{border-color:var(--gold);box-shadow:0 0 0 3px #c89b2c2e}.btn{border:0;border-radius:var(--radius);min-height:40px;padding:10px 14px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:800;background:var(--ink);color:var(--white)}.btn.gold{color:var(--black);background:linear-gradient(180deg,var(--gold-2),var(--gold))}.btn.ghost{color:var(--ink);background:var(--white);border:1px solid var(--line)}.btn.danger{background:var(--red)}.demo-note{margin-top:18px;padding:12px;border-left:3px solid var(--gold);background:#fff7df;font-size:13px;color:#5b4312}.demo-note.error-note{margin:0 0 14px;border-left-color:var(--red);background:#fff0f0;color:#7d1717}.demo-note.success-note{margin:0 0 14px;border-left-color:var(--green);background:#edf9f4;color:#0b513b}.auth-links{display:flex;justify-content:space-between;gap:16px;margin-top:18px;flex-wrap:wrap}.auth-back{display:inline-flex;align-items:center;gap:6px;margin-bottom:18px}.otp-row{display:grid;grid-template-columns:repeat(6,minmax(0,44px));justify-content:center;gap:8px;margin:22px 0;max-width:100%}.otp-row input{width:100%;min-width:0;min-height:48px;text-align:center;font-size:22px;font-weight:800;padding:10px 4px}.app-shell{min-height:100vh;display:grid;grid-template-columns:272px minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100vh;background:var(--black);color:var(--white);padding:20px 14px;overflow:auto}.sidebar-header{display:flex;align-items:center;gap:12px;padding:4px 8px 18px;border-bottom:1px solid rgba(255,255,255,.1)}.sidebar-header img{width:132px;background:var(--white);border-radius:var(--radius);padding:8px 10px}.nav{display:grid;gap:4px;margin-top:18px}.nav a{width:100%;border:0;border-radius:var(--radius);background:transparent;color:#ffffffb8;padding:11px 12px;display:flex;align-items:center;gap:10px;text-align:left;font-weight:700;text-decoration:none}.nav a.active,.nav a:hover{color:var(--white);background:#c89b2c33}.main{min-width:0;display:grid;grid-template-rows:auto 1fr}.topbar{position:sticky;top:0;z-index:10;min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 24px;border-bottom:1px solid var(--line);background:#faf8f2f0;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.topbar h1{margin:0;font-size:22px}.topbar-title{display:flex;align-items:center;gap:12px;min-width:0}.topbar p{margin:4px 0 0;color:var(--muted);font-size:13px}.mobile-menu{display:none}.user-chip{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--line);border-radius:var(--radius);background:var(--white)}.avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-weight:900;color:var(--black);background:var(--gold-2)}.content{padding:24px;display:grid;gap:20px}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.filters{display:flex;gap:10px;flex-wrap:wrap}.filters .filter{min-width:180px}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.metric-card,.panel,.table-wrap,.auth-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--white);box-shadow:0 10px 24px #0909090a}.metric-card{padding:16px;display:grid;gap:10px;color:inherit;text-decoration:none}.metric-label{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--muted);font-size:13px;font-weight:800}.metric-value{font-size:28px;font-weight:900}.metric-change{font-size:13px;color:var(--green)}.metric-change.warn{color:var(--red)}.badge{display:inline-flex;align-items:center;justify-content:center;min-height:24px;border-radius:999px;padding:4px 9px;font-size:12px;font-weight:900;white-space:nowrap}.badge.success{color:#0b513b;background:#dff5ec}.badge.failed,.badge.danger{color:#7d1717;background:#ffe0e0}.badge.pending,.badge.warn{color:#6e4100;background:#fff0cf}.badge.neutral{color:#3f3f3f;background:#eee}.badge.info{color:#174678;background:#e2efff}.dashboard-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:18px}.chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.panel{padding:16px}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.panel-head h2,.panel-head h3{margin:0;font-size:16px}.chart{height:220px;display:grid;align-items:end;grid-template-columns:repeat(7,minmax(22px,1fr));gap:10px;padding:16px 6px 8px;border-top:1px solid var(--line)}.bar{min-height:24px;border-radius:6px 6px 0 0;background:linear-gradient(180deg,var(--gold-2),var(--gold));position:relative}.bar.alt{background:linear-gradient(180deg,#252525,#111)}.sparkline{width:100%;height:220px;border-top:1px solid var(--line)}.sparkline polyline,.sparkline path{fill:none;stroke-linecap:round;stroke-linejoin:round}.usage-bars{display:grid;gap:11px;padding-top:8px}.usage-row{display:grid;grid-template-columns:110px minmax(0,1fr) 54px;align-items:center;gap:10px;font-size:13px}.track{height:10px;border-radius:999px;background:#eee8dc;overflow:hidden}.fill{height:100%;border-radius:inherit;background:var(--gold)}.actions-list{display:grid;gap:10px}.action-item{display:grid;gap:6px;padding:12px;border:1px solid var(--line);border-left:4px solid var(--gold);border-radius:var(--radius)}.action-item.urgent{border-left-color:var(--red);background:#fff7f7}.action-item strong{font-size:14px}.action-item span{color:var(--muted);font-size:12px}.table-wrap{overflow:hidden}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;min-width:920px}th,td{padding:13px 14px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;font-size:13px}th{background:#fffaf0;color:#5b4312;font-size:12px;text-transform:uppercase}tr:hover td{background:#fffdf7}.amount.credit{color:var(--green);font-weight:900}.amount.debit{color:var(--red);font-weight:900}.link-btn{border:0;background:none;color:#7a570c;font-weight:900;padding:0}.drawer-backdrop,.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;background:#09090957;display:none;border:0;padding:0}.drawer-backdrop.open,.modal-backdrop.open{display:block}.drawer{position:fixed;top:0;right:0;z-index:40;width:min(520px,94vw);height:100vh;transform:translate(105%);transition:transform .18s ease;background:var(--white);box-shadow:var(--shadow);display:grid;grid-template-rows:auto 1fr auto}.drawer.open{transform:translate(0)}.drawer-head,.drawer-foot{padding:18px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px}.drawer-foot{border-top:1px solid var(--line);border-bottom:0;justify-content:flex-end;flex-wrap:wrap}.drawer-body{overflow:auto;padding:18px}.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.detail{padding:12px;border:1px solid var(--line);border-radius:var(--radius)}.detail span{display:block;color:var(--muted);font-size:12px;margin-bottom:4px}.detail strong{font-size:14px}.identity-value{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.profile-edit-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:12px}.profile-edit-form .field{min-width:0}.profile-edit-form .full-span,.profile-edit-actions.full-span{grid-column:1 / -1}.profile-edit-actions{display:flex;justify-content:flex-end;gap:10px;align-self:end;margin-bottom:16px;flex-wrap:wrap}.module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.module-card{padding:16px;border:1px solid var(--line);border-radius:var(--radius);background:var(--white)}.module-card h3{margin:0 0 10px}.module-card p{margin:0 0 14px;color:var(--muted);line-height:1.5}.tabs{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px}.tabs button{border:1px solid var(--line);border-radius:var(--radius);background:var(--white);padding:10px 12px;font-weight:800;white-space:nowrap}.tabs button.active{background:var(--black);color:var(--white);border-color:var(--black)}.profile-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:18px;border:1px solid var(--line);border-radius:var(--radius);background:var(--white)}.profile-header h2{margin:0 0 8px}.two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.timeline{display:grid;gap:12px}.timeline-item{position:relative;padding-left:22px}.timeline-item:before{content:"";position:absolute;top:4px;left:0;width:10px;height:10px;border-radius:50%;background:var(--gold)}.timeline-item strong{display:block}.timeline-item span{color:var(--muted);font-size:12px}.kyc-upload-list{display:grid;gap:12px}.kyc-upload-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;padding-bottom:12px;border-bottom:1px solid var(--line)}.kyc-upload-row:last-child{border-bottom:0;padding-bottom:0}.kyc-upload-row .field{margin-bottom:0}.document-preview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.document-preview{display:grid;gap:10px;min-width:0;padding:12px;border:1px solid var(--line);border-radius:var(--radius)}.document-preview span{color:var(--muted);font-size:12px;font-weight:800}.document-preview strong,.document-placeholder{min-height:138px;display:grid;place-items:center;border-radius:var(--radius);background:#fffaf0;color:var(--muted);text-align:center;padding:12px}.document-preview img{width:100%;height:138px;object-fit:cover;border-radius:var(--radius);border:1px solid var(--line)}.modal{position:fixed;inset:50% auto auto 50%;z-index:50;width:min(520px,calc(100vw - 28px));max-height:calc(100vh - 40px);overflow:auto;transform:translate(-50%,-50%) scale(.98);opacity:0;pointer-events:none;transition:.16s ease;border-radius:var(--radius);background:var(--white);box-shadow:var(--shadow)}.create-customer-modal{width:min(760px,calc(100vw - 28px))}.create-customer-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:14px}.create-customer-form .field{min-width:0}.create-customer-form .full-span,.create-customer-form .demo-note{grid-column:1 / -1}.create-customer-foot{display:grid;justify-content:stretch}.create-customer-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}.modal.open{opacity:1;pointer-events:auto;transform:translate(-50%,-50%) scale(1)}.modal-head,.modal-body,.modal-foot{padding:18px}.modal-head{border-bottom:1px solid var(--line)}.modal-head h3{margin:0}.modal-foot{border-top:1px solid var(--line);display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}.mobile-overlay{display:none;border:0;padding:0}.table-head{padding:16px;margin:0}.table-foot{padding:14px;color:var(--muted);font-size:13px}.customer-table-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.pagination-actions,.table-state{display:inline-flex;align-items:center;gap:10px}.pagination-actions span,.table-state{color:var(--muted);font-weight:800}.table-state{width:100%;justify-content:center;padding:24px}.search-wrap{position:relative}.search-wrap svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none}.search-wrap .filter{padding-left:36px}.checkbox-row{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:14px}.radio-group{display:flex;gap:14px;flex-wrap:wrap}.radio-option{display:inline-flex;align-items:center;gap:8px;color:var(--ink);font-size:14px}@media(max-width:1180px){.metric-grid,.chart-grid,.module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-layout{grid-template-columns:1fr}}@media(max-width:860px){.login-page{grid-template-columns:1fr}.login-brand{min-height:42vh;padding:28px}.login-card{margin:0;border-radius:0;box-shadow:none}.app-shell{grid-template-columns:1fr}.sidebar{position:fixed;z-index:25;width:min(300px,86vw);transform:translate(-105%);transition:transform .18s ease}.sidebar.open{transform:translate(0)}.mobile-overlay.open{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;background:#09090959}.mobile-menu{display:inline-flex}.topbar{padding:12px 14px}.content{padding:14px}.metric-grid,.chart-grid,.module-grid,.two-col,.detail-grid,.document-preview-grid,.profile-edit-form,.create-customer-form{grid-template-columns:1fr}.profile-header{display:grid}.user-chip .user-meta{display:none}}@media(max-width:560px){.otp-row{grid-template-columns:repeat(6,minmax(0,38px));gap:6px}.otp-row input{min-height:44px;font-size:20px}.filters,.toolbar,.drawer-foot,.kyc-upload-row{display:grid;grid-template-columns:1fr;width:100%}.filters .filter,.btn{width:100%}.metric-value{font-size:24px}.chart{height:180px}}
