:root{--midnight:#06141b;--deep-navy:#11212d;--slate-navy:#253745;--steel-blue:#4a5c6a;--cool-gray:#9ba8ab;--mist:#ccd0cf;--bg:var(--midnight);--surface-1:var(--deep-navy);--surface-2:var(--slate-navy);--border:var(--steel-blue);--border-subtle:#1c2f3c;--text:var(--mist);--text-muted:var(--cool-gray);--text-strong:#eef0ef;--success:#6cc49a;--success-bg:#6cc49a1f;--warning:#e3b55b;--warning-bg:#e3b55b1f;--danger:#ec7f76;--danger-bg:#ec7f761f;--info:#8fb4d4;--info-bg:#8fb4d41f;--neutral-bg:#9ba8ab1f;--focus:#b9d7f0;--placeholder:#6f7f86;--skeleton-highlight:#2d4252;--radius-sm:6px;--radius:10px;--radius-lg:14px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--shadow:0 1px 0 #ffffff05 inset, 0 8px 24px #00000040;--font:ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans", "Helvetica Neue", Arial, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--sidebar-w:248px}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;margin:0;font-size:14px;line-height:1.5}h1,h2,h3{color:var(--text-strong);letter-spacing:-.01em;margin:0;font-weight:600}h1{font-size:22px}h2{font-size:16px}h3{font-size:14px}p{margin:0}a{color:var(--info)}code,.mono{font-family:var(--font-mono);font-size:12.5px}:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:var(--radius-sm)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.shell{min-height:100%;display:flex}.sidebar{width:var(--sidebar-w);flex:0 0 var(--sidebar-w);background:var(--bg);border-right:1px solid var(--border-subtle);padding:var(--space-4) var(--space-3);gap:var(--space-4);flex-direction:column;height:100vh;display:flex;position:sticky;top:0;overflow-y:auto}.brand{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-2) var(--space-3);display:flex}.brand-mark{background:var(--surface-2);width:32px;height:32px;color:var(--mist);border-radius:9px;place-items:center;display:grid}.brand-name{color:var(--text-strong);font-weight:650}.brand-sub{color:var(--text-muted);font-size:12px}.nav{flex-direction:column;gap:2px;display:flex}.nav-section{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);padding:var(--space-3) var(--space-3) var(--space-1);font-size:11px}.nav a{align-items:center;gap:var(--space-3);padding:8px var(--space-3);border-radius:var(--radius-sm);color:var(--text-muted);font-weight:500;text-decoration:none;display:flex}.nav a:hover{background:var(--surface-1);color:var(--text)}.nav a.active{background:var(--surface-2);color:var(--text-strong)}.nav a .count{background:var(--warning-bg);color:var(--warning);border-radius:999px;margin-left:auto;padding:0 7px;font-size:11px;font-weight:600}.main{flex-direction:column;flex:1;min-width:0;display:flex}.topbar{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-5);border-bottom:1px solid var(--border-subtle);z-index:10;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#06141beb;display:flex;position:sticky;top:0}.topbar .spacer{flex:1}.btn.menu-btn{display:none}.content{padding:var(--space-5);gap:var(--space-5);flex-direction:column;width:100%;max-width:1440px;display:flex}.page-head{justify-content:space-between;align-items:flex-end;gap:var(--space-4);flex-wrap:wrap;display:flex}.page-head p{color:var(--text-muted);margin-top:2px}.card{background:var(--surface-1);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:var(--space-4) var(--space-5);min-width:0}.card-head{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.card-head p{color:var(--text-muted);font-size:12.5px}.grid{gap:var(--space-4);display:grid}.grid.kpis{grid-template-columns:repeat(auto-fill,minmax(190px,1fr))}.grid.two{grid-template-columns:repeat(auto-fit,minmax(340px,1fr))}.stat-label{color:var(--text-muted);align-items:center;gap:6px;font-size:12.5px;display:flex}.stat-value{color:var(--text-strong);font-variant-numeric:tabular-nums;margin-top:6px;font-size:24px;font-weight:650}.stat-hint{color:var(--text-muted);margin-top:2px;font-size:12px}.btn{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-2);height:34px;color:var(--text-strong);font:inherit;cursor:pointer;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-weight:550;display:inline-flex}a.btn{text-decoration:none}.btn:hover:not(:disabled){border-color:var(--cool-gray)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.primary{background:var(--mist);color:var(--midnight);border-color:var(--mist)}.btn.primary:hover:not(:disabled){background:var(--text-strong)}.btn.ghost{color:var(--text-muted);background:0 0;border-color:#0000}.btn.ghost:hover:not(:disabled){color:var(--text);background:var(--surface-1)}.btn.danger{color:var(--danger);background:0 0;border-color:#ec7f7666}.btn.sm{height:28px;padding:0 10px;font-size:12.5px}.input,.select{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg);height:34px;color:var(--text);font:inherit;min-width:0;padding:0 10px}.input::placeholder{color:var(--placeholder)}.field{flex-direction:column;gap:6px;display:flex}.field label{color:var(--text-muted);font-size:12.5px;font-weight:500}.filters{gap:var(--space-2);flex-wrap:wrap;align-items:flex-end;display:flex}.badge{white-space:nowrap;background:var(--neutral-bg);color:var(--text);border-radius:999px;align-items:center;gap:5px;padding:2px 8px;font-size:12px;font-weight:550;display:inline-flex}.badge:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.badge.success{background:var(--success-bg);color:var(--success)}.badge.warning{background:var(--warning-bg);color:var(--warning)}.badge.danger{background:var(--danger-bg);color:var(--danger)}.badge.info{background:var(--info-bg);color:var(--info)}.badge.neutral{color:var(--text-muted)}.table-wrap{margin:0 calc(-1 * var(--space-5));padding:0 var(--space-5);overflow-x:auto}table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}th{text-align:left;color:var(--text-muted);border-bottom:1px solid var(--border-subtle);white-space:nowrap;padding:8px 10px;font-size:12px;font-weight:550}td{border-bottom:1px solid var(--border-subtle);vertical-align:middle;padding:10px}tr:last-child td{border-bottom:none}tbody tr.clickable{cursor:pointer}tbody tr.clickable:hover td{background:#25374573}td.num,th.num{text-align:right}.muted{color:var(--text-muted)}.small{font-size:12.5px}.state{text-align:center;justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-6) var(--space-4);color:var(--text-muted);flex-direction:column;display:flex}.state .state-icon{background:var(--surface-2);width:40px;height:40px;color:var(--text);border-radius:12px;place-items:center;display:grid}.state h3{margin-top:var(--space-1)}.state p{max-width:520px}.state.compact{padding:var(--space-4)}.skeleton{background:linear-gradient(90deg, var(--surface-2) 0%, var(--skeleton-highlight) 50%, var(--surface-2) 100%);border-radius:var(--radius-sm);background-size:200% 100%;height:14px;animation:1.4s infinite shimmer}@keyframes shimmer{to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.skeleton{animation:none}}.callout{border:1px solid var(--border-subtle);border-left:3px solid var(--info);background:var(--info-bg);border-radius:var(--radius);padding:var(--space-3) var(--space-4);color:var(--text);gap:var(--space-3);align-items:flex-start;display:flex}.callout.warning{border-left-color:var(--warning);background:var(--warning-bg)}.callout.danger{border-left-color:var(--danger);background:var(--danger-bg)}.bar{background:var(--surface-2);border-radius:999px;height:10px;display:flex;overflow:hidden}.bar>span{height:100%;display:block}.legend{gap:var(--space-4);margin-top:var(--space-3);flex-wrap:wrap;font-size:12.5px;display:flex}.legend i{vertical-align:-1px;border-radius:3px;width:10px;height:10px;margin-right:6px;display:inline-block}.seg-cod{background:var(--warning)}.seg-prepaid{background:var(--success)}.seg-unknown{background:var(--steel-blue)}.rows{flex-direction:column;display:flex}.row{align-items:center;gap:var(--space-3);border-bottom:1px solid var(--border-subtle);padding:10px 0;display:flex}.row:last-child{border-bottom:none}.row .grow{flex:1;min-width:0}.backdrop{z-index:50;padding:var(--space-4);background:#030a0eb3;place-items:center;display:grid;position:fixed;inset:0}.modal{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:420px;padding:var(--space-5);gap:var(--space-4);flex-direction:column;display:flex}.auth-wrap{min-height:100%;padding:var(--space-5);background:radial-gradient(1200px 600px at 20% -10%, var(--deep-navy), var(--midnight));place-items:center;display:grid}.auth-card{gap:var(--space-4);flex-direction:column;width:100%;max-width:400px;display:flex}.auth-card form{gap:var(--space-3);flex-direction:column;display:flex}.qr{background:var(--mist);border-radius:var(--radius);align-self:center;padding:12px;line-height:0}.codes{font-family:var(--font-mono);grid-template-columns:1fr 1fr;gap:6px;font-size:13px;display:grid}.codes span{background:var(--bg);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:6px 8px}.error-text{color:var(--danger);font-size:13px}.kv{grid-template-columns:minmax(120px,max-content) 1fr;gap:8px 16px;display:grid}.kv dt{color:var(--text-muted)}.kv dd{margin:0}@media (width<=900px){.sidebar{z-index:40;box-shadow:var(--shadow);transition:transform .2s;position:fixed;top:0;left:0;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.btn.menu-btn{display:inline-flex}.content{padding:var(--space-4)}.topbar{padding:var(--space-3) var(--space-4)}.card{padding:var(--space-4)}.table-wrap{margin:0 calc(-1 * var(--space-4));padding:0 var(--space-4)}.hide-sm{display:none}}@media (prefers-reduced-motion:reduce){.sidebar{transition:none}}
