@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap";::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{border-radius:99px}.recharts-text{font-size:11px!important}.mono{font-family:JetBrains Mono,monospace}:root,[data-theme=dark]{--bg-base:#0a0d14;--bg-surface:#111827;--bg-elevated:#1a1d24;--bg-main:#0a0d14;--bg-card:#111827;--bg:#0a0d14;--text-primary:#f1f5f9;--text-secondary:#94a3b8;--text-muted:#64748b;--border:#1e293b;--border-light:#1e293b;--accent:#4f8ef7;--accent-rgb:79,142,247;--accent-dim:#4f8ef71f;--primary:#4f8ef7;--red:#ef4444;--red-dim:#ef44441f;--green:#22c55e;--amber:#f59e0b;--blue:#4f8ef7;--radius:10px;--radius-sm:6px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=light]{--bg-base:#f8fafc;--bg-surface:#fff;--bg-elevated:#f1f5f9;--bg-main:#f8fafc;--bg-card:#fff;--bg:#f8fafc;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#94a3b8;--border:#e2e8f0;--border-light:#f1f5f9;--accent:#2563eb;--accent-rgb:37,99,235;--accent-dim:#2563eb1a;--primary:#2563eb;--red:#dc2626;--red-dim:#dc262614;--green:#16a34a;--amber:#d97706;--blue:#2563eb;--radius:10px;--radius-sm:6px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.input{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-elevated);width:100%;color:var(--text-primary);box-sizing:border-box;outline:none;padding:8px 12px;font-size:13px}.input:focus{border-color:var(--accent)}.label{color:var(--text-secondary);margin-bottom:5px;font-size:12px;font-weight:600}.form-group{flex-direction:column;gap:4px;display:flex}.btn{cursor:pointer;border:1px solid #0000;border-radius:8px;align-items:center;gap:6px;padding:9px 18px;font-size:13px;font-weight:600;transition:all .15s;display:inline-flex}.btn-primary{background:var(--accent);color:#fff;border-color:var(--accent);box-shadow:0 1px 3px rgba(var(--accent-rgb),.35)}.btn-primary:hover{filter:brightness(1.15);box-shadow:0 3px 8px rgba(var(--accent-rgb),.4)}.btn-secondary{background:var(--bg-elevated);color:var(--text-primary);border-color:var(--border)}.btn-secondary:hover{border-color:var(--accent);color:var(--accent)}.btn-danger,.btn-red{background:var(--red);color:#fff;border-color:var(--red);box-shadow:0 1px 3px #ef44444d}.btn-danger:hover,.btn-red:hover{filter:brightness(1.15)}.btn-green{background:var(--green);color:#fff}.btn-ghost{color:var(--text-secondary);background:0 0;border:none;padding:6px}.btn-sm{padding:5px 10px;font-size:12px}.btn-xs{padding:3px 8px;font-size:11px}.btn:disabled{opacity:.5;cursor:not-allowed}.card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px}.card-grid{gap:14px;display:grid}.card-grid-2{grid-template-columns:1fr 1fr}.card-grid-3{grid-template-columns:1fr 1fr 1fr}.section-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.section-title{color:var(--text-primary);font-size:15px;font-weight:700}.tabs{border-bottom:1px solid var(--border);gap:2px;margin-bottom:20px;display:flex}.tab{color:var(--text-muted);cursor:pointer;border-bottom:2px solid #0000;padding:10px 18px;font-size:13px;font-weight:500;transition:all .15s}.tab:hover{color:var(--text-secondary)}.tab.active{color:var(--accent);border-bottom-color:var(--accent)}.table-wrap{overflow-x:auto}.table-wrap table{border-collapse:collapse;width:100%;font-size:13px}.table-wrap th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);border-bottom:1px solid var(--border);white-space:nowrap;padding:10px 12px;font-size:11px;font-weight:600}.table-wrap td{border-bottom:1px solid var(--border-light);color:var(--text-secondary);vertical-align:top;padding:10px 12px}.table-wrap tr:hover td{background:rgba(var(--accent-rgb),.04)}.badge{white-space:nowrap;border-radius:99px;align-items:center;gap:4px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex}.badge-blue{background:rgba(var(--accent-rgb),.15);color:var(--accent)}.badge-green{color:#4ade80;background:#22c55e26}.badge-red{color:#f87171;background:#ef444426}.badge-amber,.badge-yellow{color:#fbbf24;background:#f59e0b26}.badge-purple{color:#c084fc;background:#a855f726}.badge-muted{color:var(--text-muted);background:#6b708026}.empty-state{color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:40px;display:flex}.loading-overlay{color:var(--text-muted);justify-content:center;align-items:center;padding:40px;display:flex}.spinner{border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:20px;height:20px;animation:.6s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.telco-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;display:grid}[data-theme=light] .badge-green{color:#16a34a;background:#16a34a1a}[data-theme=light] .badge-red{color:#dc2626;background:#dc26261a}[data-theme=light] .badge-amber,[data-theme=light] .badge-yellow{color:#d97706;background:#d977061a}[data-theme=light] .badge-purple{color:#7c3aed;background:#7c3aed1a}[data-theme=light] .badge-muted{color:#64748b;background:#64748b1a}[data-theme=light] .table-wrap tr:hover td{background:rgba(var(--accent-rgb),.04)}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1300;background:#0009;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal-content{background:var(--bg-surface);border:1px solid var(--border);border-radius:12px;width:480px;max-width:96vw;max-height:90vh;padding:24px;overflow-y:auto;box-shadow:0 20px 60px #00000080}[data-theme=light] .modal-content{box-shadow:0 20px 60px #00000026}[data-theme=light] .modal-overlay{background:#00000059}.page-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;display:flex}.page-title{color:var(--text-primary);font-size:20px;font-weight:700}.page-sub{color:var(--text-secondary);margin-top:2px;font-size:13px}
