:root{--navy-1:#0b1930;--navy-2:#0d2340;--accent-1:#4c84d4;--accent-2:#6bb8ff;--bg:#0a1220;--surface:#101a30;--surface-2:#16233f;--card-border:#1f2c48;--card-border-soft:#182238;--text:#e7ebf3;--text-muted:#8fa0c0;--text-faint:#5f6f92;--danger:#f0637d;--danger-bg:#f0637d24;--success:#3ddc93;--success-bg:#3ddc9321;--amber:#f0b93d;--amber-bg:#f0b93d24;--info-bg:#4c84d429;--radius:14px}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);color:var(--text);margin:0;font-family:-apple-system,Segoe UI,system-ui,Roboto,Arial,sans-serif}a{color:var(--accent-2);text-decoration:none}a:hover{color:#8fcaff}button{cursor:pointer;font-family:inherit}.app-shell{width:100%;height:100vh;display:flex;overflow:hidden}.sidebar{background:linear-gradient(180deg, var(--navy-1) 0%, var(--navy-2) 100%);border-right:1px solid #ffffff0a;flex-direction:column;flex-shrink:0;width:264px;padding:22px 14px;display:flex;overflow-y:auto}.brand{align-items:center;gap:10px;padding:0 10px 20px;display:flex}.brand-mark{background:linear-gradient(135deg, var(--accent-1), var(--accent-2));color:#fff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.brand-name{color:#fff;letter-spacing:.2px;font-size:14.5px;font-weight:700;line-height:1.25}.brand-sub{color:#7d8db3;letter-spacing:.4px;text-transform:uppercase;font-size:10.5px}.nav{flex-direction:column;gap:2px;margin-top:4px;display:flex}.navitem{color:#aab8d1;text-align:left;background:0 0;border:none;border-radius:9px;align-items:center;gap:11px;width:100%;padding:9px 12px;font-size:13px;font-weight:500;display:flex}.navitem svg{flex-shrink:0;width:17px;height:17px}.navitem.active{color:#fff;background:#ffffff14}.navitem.active svg{color:#7fc0ff}.navitem:not(.active) svg{color:#7d8db3}.nav-group-head{color:#7d8db3;letter-spacing:.5px;text-transform:uppercase;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:9px;align-items:center;gap:11px;width:100%;margin-top:14px;padding:9px 12px;font-size:10.5px;font-weight:700;display:flex}.nav-group-head .chev{width:13px;height:13px;margin-left:auto;transition:transform .15s}.nav-group.open .nav-group-head{color:#fff}.nav-group.open .chev{transform:rotate(180deg)}.nav-sub{flex-direction:column;gap:1px;margin:2px 0 6px;display:flex}.nav-sub .navitem{gap:10px;padding-left:23px;font-size:12.5px}.nav-sub .navitem .bullet{opacity:.45;background:currentColor;border-radius:50%;flex-shrink:0;width:5px;height:5px}.nav-sub .navitem.active .bullet{opacity:1;background:#7fc0ff}.sidebar-foot{background:#ffffff0b;border-radius:12px;align-items:center;gap:10px;margin-top:auto;padding:11px;display:flex}.avatar{background:linear-gradient(135deg, var(--accent-1), var(--accent-2));color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:11px;font-weight:700;display:flex}.foot-name{color:#fff;font-size:12.5px;font-weight:600}.foot-role{color:#7d8db3;text-transform:capitalize;font-size:10.5px}.foot-logout{color:#97a5c2;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:28px;height:28px;margin-left:auto;display:flex}.foot-logout svg{width:15px;height:15px}.main{flex-direction:column;flex:1;min-width:0;display:flex}.topbar{background:var(--surface);border-bottom:1px solid var(--card-border-soft);flex-shrink:0;justify-content:space-between;align-items:center;height:72px;padding:0 30px;display:flex}.page-title{color:#fff;font-size:18.5px;font-weight:700}.page-sub{color:var(--text-muted);margin-top:3px;font-size:12.5px}.topbar-actions{align-items:center;gap:12px;display:flex}.icon-btn{background:var(--surface-2);color:#9aa8c4;cursor:pointer;border:none;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex;position:relative}.icon-btn svg{width:17px;height:17px}.badge-dot{background:var(--danger);border:1.5px solid var(--surface);border-radius:50%;width:7px;height:7px;position:absolute;top:6px;right:7px}.content{flex-direction:column;flex:1;gap:16px;padding:22px 30px 30px;display:flex;overflow:auto}.btn{cursor:pointer;white-space:nowrap;border:none;border-radius:9px;align-items:center;gap:7px;padding:9px 15px;font-size:12.5px;font-weight:700;display:inline-flex}.btn svg{width:14px;height:14px}.btn-primary{background:linear-gradient(135deg, var(--accent-1), var(--accent-2));color:#fff}.btn-ghost{background:var(--surface-2);color:var(--text);border:1px solid var(--card-border)}.card{background:var(--surface);border-radius:var(--radius);border:1px solid var(--card-border-soft)}.stat-row,.stat-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.stat-card{flex-direction:column;gap:11px;padding:17px;display:flex}.stat-top{justify-content:space-between;align-items:flex-start;display:flex}.stat-label{color:var(--text-muted);font-size:11.5px;font-weight:600}.stat-icon{background:var(--info-bg);width:32px;height:32px;color:var(--accent-2);border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.stat-icon svg{width:16px;height:16px}.stat-icon.green{background:var(--success-bg);color:var(--success)}.stat-icon.amber{background:var(--amber-bg);color:var(--amber)}.stat-icon.danger{background:var(--danger-bg);color:var(--danger)}.stat-value{letter-spacing:-.3px;color:#fff;font-size:20px;font-weight:800}.stat-trend{color:var(--text-faint);font-size:11.5px;font-weight:600}.stat-trend.up{color:var(--success)}.stat-trend.warn{color:var(--amber)}.mini-stat{align-items:center;gap:12px;padding:15px 17px;display:flex}.mini-ico{background:var(--info-bg);width:36px;height:36px;color:var(--accent-2);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.mini-ico svg{width:17px;height:17px}.mini-ico.green{background:var(--success-bg);color:var(--success)}.mini-ico.amber{background:var(--amber-bg);color:var(--amber)}.mini-ico.danger{background:var(--danger-bg);color:var(--danger)}.mini-label{color:var(--text-muted);font-size:11.5px;font-weight:600}.mini-value{color:#fff;margin-top:2px;font-size:17.5px;font-weight:800}.mini-sub{color:var(--text-faint);margin-top:1px;font-size:11px}.grid-2{flex:1;grid-template-columns:1.4fr 1fr;gap:14px;min-height:0;display:grid}.panel{flex-direction:column;min-height:0;padding:18px 20px;display:flex}.panel-head{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.panel-title{color:#fff;font-size:13.5px;font-weight:700}.panel-sub{color:var(--text-muted);margin-top:2px;font-size:11.5px}.pill-badge{background:var(--info-bg);color:var(--accent-2);border-radius:999px;padding:4px 10px;font-size:10.5px;font-weight:700}.tab-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.tab-btn{border:1px solid var(--card-border);background:var(--surface);color:var(--text-muted);cursor:pointer;border-radius:9px;padding:8px 14px;font-size:12.5px;font-weight:700}.tab-btn.active{background:linear-gradient(135deg, var(--accent-1), var(--accent-2));color:#fff;border-color:#0000}.filter-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.search-box{background:var(--surface);border:1px solid var(--card-border);width:240px;color:var(--text-faint);border-radius:10px;align-items:center;gap:8px;padding:9px 13px;font-size:12.5px;display:flex}.search-box svg{flex-shrink:0;width:15px;height:15px}.search-box input{color:var(--text);background:0 0;border:none;outline:none;width:100%;font-size:12.5px}.table-card{flex-direction:column;flex:1;min-height:0;padding:6px 4px 4px;display:flex;overflow:auto}table{border-collapse:collapse;width:100%}th{text-align:left;color:var(--text-faint);text-transform:uppercase;letter-spacing:.4px;border-bottom:1px solid var(--card-border-soft);background:var(--surface);white-space:nowrap;padding:13px 16px 11px;font-size:10.5px;font-weight:700;position:sticky;top:0}td{color:var(--text);border-bottom:1px solid var(--card-border-soft);vertical-align:middle;padding:12px 16px;font-size:13px}tbody tr:last-child td{border-bottom:none}tbody tr.row-selected td{background:var(--surface-2)}.num{text-align:right;font-variant-numeric:tabular-nums;font-weight:700}.who-cell,.org-cell,.bank-cell{align-items:center;gap:11px;display:flex}.who-ico,.org-ico,.bank-ico{background:var(--info-bg);width:32px;height:32px;color:var(--accent-2);border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:flex}.row-name{color:#fff;font-weight:700}.row-sub{color:var(--text-faint);margin-top:1px;font-size:11px}.tag{background:var(--surface-2);color:var(--text-muted);border-radius:999px;padding:4px 10px;font-size:10.5px;font-weight:700;display:inline-block}.tag.blue{background:var(--info-bg);color:var(--accent-2)}.status-pill{white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:5px 11px;font-size:11px;font-weight:700;display:inline-flex}.status-pill.ok{background:var(--success-bg);color:var(--success)}.status-pill.warn{background:var(--amber-bg);color:var(--amber)}.status-pill.err{background:var(--danger-bg);color:var(--danger)}.status-pill.idle{background:var(--surface-2);color:var(--text-faint)}.mono{color:var(--text-muted);font-family:SF Mono,Menlo,ui-monospace,monospace;font-size:12px}.tabs{border-bottom:1px solid var(--card-border-soft);gap:4px;display:flex}.tab{color:var(--text-faint);border-bottom:2px solid #0000;margin-right:22px;padding:10px 4px;font-size:12.5px;font-weight:600}.tab.active{color:#fff;border-bottom-color:var(--accent-2)}.state-msg{text-align:center;color:var(--text-faint);padding:40px 20px;font-size:13px}.auth-wrap{background:var(--bg);justify-content:center;align-items:center;min-height:100vh;display:flex}.auth-card{background:var(--surface);border:1px solid var(--card-border-soft);border-radius:var(--radius);width:380px;padding:32px}.auth-brand{align-items:center;gap:12px;margin-bottom:24px;display:flex}.auth-title{color:#fff;font-size:16px;font-weight:700}.auth-sub{color:var(--text-muted);font-size:12.5px}.auth-error{background:var(--danger-bg);color:var(--danger);border-radius:9px;margin-bottom:16px;padding:10px 12px;font-size:12.5px}.field{margin-bottom:16px}.field label{color:var(--text-muted);margin-bottom:6px;font-size:12px;font-weight:600;display:block}.field input{border:1px solid var(--card-border);background:var(--surface-2);width:100%;height:42px;color:var(--text);border-radius:9px;padding:0 13px;font-size:13px}.field input:focus{border-color:var(--accent-1);outline:none}.auth-card .btn{justify-content:center;width:100%;height:42px}
