:root{--page: #e6e6e6;--panel: #ffffff;--panel-2: #f8fafc;--line: #dce3ee;--text: #172033;--muted: #64748b;--nav: #111827;--nav-active: #22304a;--blue: #2563eb;--green: #059669;--red: #dc2626;--amber: #d97706;color:#172033;background:#eef2f7;font-family:Inter,Segoe UI,Arial,sans-serif;font-synthesis:none;text-rendering:geometricPrecision}.dark{--page: #0f172a;--panel: #182235;--panel-2: #111827;--line: #2b3954;--text: #edf2f7;--muted: #a8b3c7;--nav: #080d18;--nav-active: #1f365b}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{display:grid;grid-template-columns:238px 1fr;min-height:100vh;color:var(--text);background:var(--page)}.sidebar{position:relative;overflow:hidden;background:#050505;color:#f8fafc;padding:22px 16px}.sidebar:before,.sidebar:after{display:none}.sidebar:before{top:-40px;right:-80px;left:42%;bottom:58%;background:#80be2bdb;clip-path:polygon(0 0,100% 0,100% 100%,34% 100%)}.sidebar:after{background:linear-gradient(64deg,transparent 0 30%,rgba(128,190,43,.82) 30% 48%,transparent 48%),linear-gradient(154deg,transparent 0 33%,rgba(114,6,12,.92) 33% 52%,transparent 52%),linear-gradient(28deg,transparent 0 43%,rgba(96,9,116,.92) 43% 64%,transparent 64%),linear-gradient(118deg,transparent 0 49%,rgba(122,51,8,.92) 49% 73%,transparent 73%),linear-gradient(64deg,transparent 0 55%,rgba(7,86,48,.92) 55% 100%);opacity:.95}.brand{position:relative;z-index:1;display:flex;align-items:center;gap:12px;margin-bottom:28px}.brand img{width:42px;height:42px;object-fit:contain;background:#fff;border-radius:8px}.brand strong,.brand span{display:block}.brand span{color:#94a3b8;font-size:13px;margin-top:2px}nav{position:relative;z-index:1;display:grid;gap:14px}.nav-section{display:grid;gap:6px}.nav-section-title{padding:0 12px;color:#7f8ba0;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}nav button{display:flex;align-items:center;gap:10px;min-height:42px;color:#cbd5e1;background:transparent;border:0;border-radius:8px;padding:0 12px;text-align:left}nav button.active,nav button:hover{background:#171717;color:#fff}.nav-submenu{display:grid;gap:4px;margin:-2px 0 4px 18px;padding-left:14px;border-left:1px solid rgba(148,163,184,.25)}nav button.nav-subitem{min-height:34px;border-radius:7px;padding:0 10px;color:#9ca3af;font-size:14px}nav button.nav-subitem.active,nav button.nav-subitem:hover{background:#1f2937;color:#fff}.device-config-layout{display:grid;grid-template-columns:320px minmax(0,1fr);gap:18px;align-items:start}.device-list{display:grid;gap:10px}.inventory-inline-workflow{flex:1;display:grid;grid-template-columns:150px 170px repeat(4,minmax(120px,1fr)) auto;gap:8px;align-items:center}.inventory-inline-workflow input,.inventory-inline-workflow select{min-height:36px}.inventory-workflow-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 18px 14px}.inventory-workflow-toolbar h3{margin:0;color:var(--text);font-size:17px}.inventory-workflow-toolbar span{color:var(--muted);font-size:13px}.inventory-scan-panel{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(360px,1.2fr);gap:12px;align-items:center;padding:12px;margin-bottom:14px;border:1px solid #bfdbfe;background:#eff6ff}.inventory-scan-panel strong{display:block;color:#0f172a}.inventory-scan-panel span{color:var(--muted);font-size:13px}.inventory-scan-controls{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;gap:8px;align-items:center}.inventory-low-stock-panel{display:grid;grid-template-columns:minmax(220px,.8fr) auto minmax(260px,1.2fr);gap:12px;align-items:center;padding:12px;margin-bottom:14px;border:1px solid #fecaca;background:#fff7ed}.inventory-low-stock-panel strong{display:flex;align-items:center;gap:6px}.inventory-low-stock-panel span{color:var(--muted);font-size:13px}.inventory-low-stock-list{display:grid;gap:6px}.inventory-low-stock-list div{padding:7px 9px;border:1px solid #fed7aa;background:#fff}tr.inventory-scan-hit td{background:#ecfdf5;box-shadow:inset 3px 0 #22c55e}.inventory-toolbar-actions{display:flex;gap:8px;flex-wrap:wrap}.inventory-create-modal{width:min(900px,94vw);border:1px solid #d7dde5;background:#f8fafc}.inventory-modal-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:14px}.inventory-modal-grid label{margin-bottom:0}.inventory-modal-grid .inventory-field-wide{grid-column:span 2}.inventory-create-modal .ticket-modal-grid input,.inventory-create-modal .ticket-modal-grid select{min-height:42px;background:#fff}.inventory-history-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;padding:8px;background:var(--panel-2)}.inventory-history-strip div{display:grid;gap:3px;border:1px solid var(--line);border-radius:8px;padding:8px;background:var(--panel)}.inventory-history-strip strong{color:var(--text);text-transform:capitalize}.inventory-history-strip span{color:var(--muted);font-size:12px}.inventory-location-grid{display:grid;grid-template-columns:repeat(2,minmax(280px,1fr));gap:14px;margin-bottom:16px}.inventory-location-form{display:grid;gap:10px;padding:14px;border:1px solid var(--border);background:#f8fafc}.inventory-location-form h3{display:flex;align-items:center;gap:8px;margin:0;font-size:15px}.inventory-location-form input,.inventory-location-form select{min-height:38px}.inventory-transfer-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.inventory-task-usage{display:grid;gap:8px;padding:10px;border:1px solid var(--border);background:#f8fafc}.inventory-task-usage h3{margin:0;font-size:14px}.inventory-task-usage-row{display:grid;grid-template-columns:minmax(180px,1fr) 100px minmax(160px,1fr);gap:8px}.inventory-purchase-grid{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(360px,1.4fr);gap:14px;margin-bottom:16px}.inventory-po-form{align-content:start}.inventory-po-row{display:grid;grid-template-columns:minmax(150px,1fr) minmax(160px,1fr) 80px 100px;gap:8px}.inventory-report-kpis{margin-bottom:14px}.inventory-report-grid{display:grid;grid-template-columns:repeat(2,minmax(320px,1fr));gap:14px;margin-bottom:14px}.inventory-report-panel{padding:12px;border:1px solid var(--border);background:#f8fafc}.inventory-report-panel h3{margin:0 0 10px;font-size:15px}.compact-report-table table th,.compact-report-table table td{padding:8px 10px}@media (max-width: 900px){.inventory-location-grid,.inventory-purchase-grid,.inventory-report-grid,.inventory-transfer-row,.inventory-scan-panel,.inventory-scan-controls,.inventory-low-stock-panel,.inventory-task-usage-row,.inventory-po-row{grid-template-columns:1fr}}.device-list-item{display:grid;gap:5px;justify-items:start;width:100%;min-height:82px;padding:14px;border:1px solid var(--line);border-radius:8px;background:var(--panel-2);color:var(--text);text-align:left}.device-list-item.active,.device-list-item:hover{border-color:#38bdf8;background:#0ea5e914}.device-list-item span{color:var(--muted);font-size:13px}.device-config-form{min-width:0}.compact-heading{margin-bottom:12px}main{min-width:0;padding:0}main>section:not(.octanet-grid){margin:0 20px 22px}.topbar{min-height:58px;padding:0 16px;background:#fff;border-bottom:1px solid #d0d0d0;display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:18px}.topbar:before{content:"iThree System and Solutions";display:block;margin-right:auto;margin-left:18px;color:#272145;font-size:18px;font-weight:900;line-height:1}.topbar p{color:var(--muted);margin:0 0 4px}.topbar h1{margin:0;font-size:28px;letter-spacing:0}.toolbar{display:flex;align-items:center;gap:10px}.top-actions{display:inline-flex;align-items:center;gap:14px;color:#000}.top-actions svg:first-child{color:#f7c21b}.user-name{color:#000;font-size:18px;white-space:nowrap}.sync-state{color:var(--muted);font-size:14px}.icon-button,.row-actions button{display:inline-grid;place-items:center;width:36px;height:36px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--text)}.content-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.octanet-grid{display:grid;grid-template-columns:minmax(280px,1fr) minmax(360px,1fr) minmax(300px,1fr);gap:38px;padding:0 20px 28px}.radius-dashboard{display:grid;gap:12px;padding:0 24px 30px}.partner-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;background:#fff;border-radius:6px;padding:12px;box-shadow:0 0 18px #0f172a14}.partner-bar select{width:min(360px,100%)}.partner-bar span{color:#001cff;font-weight:600}.radius-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:20px}.radius-kpi{position:relative;display:grid;grid-template-columns:82px 1fr;align-items:center;min-height:94px;overflow:hidden;border-radius:6px;padding:14px 22px;color:#fff;box-shadow:0 9px 18px #0f172a26}.radius-kpi svg{grid-row:span 2;opacity:.25}.radius-kpi strong{font-size:36px;line-height:1;text-align:right}.radius-kpi span{font-weight:800;text-align:right}.radius-kpi.blue{background:linear-gradient(135deg,#2f57ce,#183e9e)}.radius-kpi.sky{background:linear-gradient(135deg,#40a9ff,#1777d4)}.radius-kpi.green{background:linear-gradient(135deg,#20bf55,#0f8c36)}.radius-kpi.yellow{background:linear-gradient(135deg,#ffc107,#d39a00)}.radius-kpi.orange{background:linear-gradient(135deg,#ff6d00,#dc4d00)}.radius-kpi.red{background:linear-gradient(135deg,#ff1c10,#c91c12)}.stats-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.radius-card,.radius-chart-card{background:#fff;border-radius:6px;box-shadow:0 1px 10px #0f172a14}.radius-card{padding:12px}.radius-card-head{display:flex;justify-content:space-between;gap:8px;align-items:center;padding-bottom:8px;border-bottom:1px solid #e8e8e8}.radius-card h2,.radius-chart-card h2{margin:0;color:#1d2c42;font-size:22px}.radius-card-head button{display:inline-grid;place-items:center;width:38px;height:36px;border:1px solid #1d35aa;border-radius:5px;background:#fff;color:#1d35aa}.radius-stat-list{display:grid;gap:7px;padding-top:8px}.radius-stat-list div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;border-bottom:1px solid #f0f0f0;color:#0065ff;font-weight:800}.chart-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.wide-chart-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px}.radius-chart-card{min-height:188px;padding:14px}.radius-chart{display:grid;grid-template-columns:repeat(var(--cols, 7),minmax(0,1fr));grid-auto-flow:column;align-items:end;gap:8px;min-height:130px;padding-top:14px;border-bottom:1px solid #cfcfcf}.radius-chart-col{display:grid;justify-items:center;align-items:end;gap:5px;min-width:0}.radius-chart-col strong{font-size:18px}.radius-chart-col i{width:28px;min-height:0}.radius-chart-col span{color:#717171;font-size:14px;transform:rotate(-8deg);white-space:nowrap}.clean-dashboard{display:grid;gap:14px;padding:0 20px 24px}.crm-home-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,auto);gap:16px;align-items:center;min-height:112px;border:1px solid #d7e0eb;border-radius:8px;background:linear-gradient(135deg,rgba(37,99,235,.08),transparent 44%),linear-gradient(135deg,#fff,#f7fafc);padding:18px;box-shadow:0 8px 22px #0f172a0f}.crm-home-hero span{color:#2563eb;font-size:12px;font-weight:900;text-transform:uppercase}.crm-home-hero h2{margin:4px 0;color:#0f172a;font-size:24px}.crm-home-hero p{margin:0;color:#64748b}.crm-home-actions{display:grid;grid-template-columns:repeat(3,minmax(108px,1fr));gap:8px}.crm-home-actions button{justify-content:flex-start;min-height:36px;border:1px solid #d7e0eb;border-radius:8px;background:#fff;color:#0f172a;font-weight:800}.crm-home-kpis{display:grid;grid-template-columns:repeat(6,minmax(138px,1fr));gap:10px}.crm-home-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.crm-home-span-2{grid-column:span 2}.crm-attention-list{display:grid;gap:6px;padding:0 16px 16px}.crm-attention-list div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;min-height:42px;border-bottom:1px solid var(--line)}.crm-attention-list strong,.compact-crm-list strong{display:block}.crm-attention-list small{display:block;margin-top:3px;color:#64748b;font-size:12px}.compact-crm-list{padding:0 16px 16px}.crm-readiness-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0 16px 16px}.dashboard-summary{display:flex;align-items:center;justify-content:space-between;gap:18px;background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:18px;box-shadow:0 8px 22px #0f172a0f}.dashboard-summary h2{margin:0 0 4px;font-size:24px}.dashboard-summary p{margin:0;color:var(--muted)}.summary-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.clean-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}.clean-kpi{display:grid;grid-template-columns:auto 1fr;gap:5px 10px;align-content:start;min-height:108px;background:var(--panel);border:1px solid var(--line);border-left:4px solid #64748b;border-radius:8px;padding:13px;box-shadow:0 8px 22px #0f172a0f}.clean-kpi svg{grid-row:span 3;margin-top:2px}.clean-kpi span,.clean-kpi small{color:var(--muted)}.clean-kpi strong{font-size:22px;color:var(--text);overflow-wrap:anywhere}.clean-kpi.blue{border-left-color:#2563eb}.clean-kpi.green{border-left-color:#16a34a}.clean-kpi.amber{border-left-color:#d97706}.clean-kpi.red{border-left-color:#dc2626}.clean-kpi.purple{border-left-color:#9333ea}.clean-kpi.orange{border-left-color:#ea580c}.dashboard-panels{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.clean-list{display:grid;gap:10px}.clean-list div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 10px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:10px}.clean-list span{color:var(--muted);font-size:13px}.empty-text{margin:0;color:var(--muted)}.ops-card{min-height:248px;background:#f7f7f7;border:0;border-radius:0;padding:26px 30px 18px;color:#000}.ops-card h2{margin:0;font-size:28px;line-height:1.08;letter-spacing:0}.ops-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:28px}.ops-card .green{color:#008a38}.ops-card .orange{color:#ff6b10}.ops-card .blue{color:#0065ff}.ops-card .red{color:#f20f22}.ops-card .yellow{color:#ffb000}.ops-card .purple{color:#d820ff}.metric-rows{display:grid;gap:16px;font-size:20px}.metric-rows.compact{gap:10px;margin-top:22px;font-size:16px}.metric-rows div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px}.metric-rows span{color:#000}.metric-rows strong{font-weight:500}.device-card,.mikrotik-card{min-height:594px;grid-row:span 2}.wide-ops{grid-column:span 2}.semi-gauge{position:relative;width:min(440px,100%);height:220px;margin:4px auto 48px;overflow:hidden}.semi-gauge:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:440px 440px 0 0;background:conic-gradient(from 270deg,#6f6f6f 0deg 42deg,#9d9d9d 42deg 180deg,transparent 180deg 360deg)}.semi-gauge:after{content:"";position:absolute;left:38px;right:38px;bottom:0;height:182px;border-radius:360px 360px 0 0;background:#f7f7f7}.legend-list{display:grid;gap:18px;font-size:19px}.legend-list div{display:grid;grid-template-columns:16px minmax(0,1fr) auto;align-items:center;gap:10px}.legend-list i{width:16px;height:16px}.legend-list strong{font-weight:500}.more-button{display:block;margin:16px auto 0;min-width:90px;min-height:40px;border:0;background:#838383;color:#fff;font-weight:700}.skeleton-bar{height:38px;margin:24px 0;background:#e6e6e6}.skeleton-bar i{display:block;height:100%;background:#a2a2a2}.metric,.panel{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:0 8px 22px #0f172a0f}.metric{display:flex;align-items:center;justify-content:space-between;min-height:116px;padding:20px;position:relative;overflow:hidden}.metric:after{content:"";position:absolute;inset:auto -24px -40px auto;width:96px;height:96px;border-radius:999px;opacity:.12;background:currentColor}.metric span,.panel-heading span,td span{display:block;color:var(--muted);font-size:13px}.metric strong{display:block;font-size:27px;margin-top:8px}.metric.blue svg,.metric.blue{color:var(--blue)}.metric.purple svg,.metric.purple{color:#7c3aed}.metric.amber svg,.metric.amber{color:var(--amber)}.metric.red svg,.metric.red{color:var(--red)}.metric.green svg,.metric.green{color:var(--green)}.metric div{color:var(--text)}.customer-summary-strip{display:flex;align-items:center;gap:10px;min-height:64px;padding:10px 14px;box-shadow:0 8px 22px #0f172a0f}.compact-stat{display:grid;grid-template-columns:18px auto auto;align-items:center;gap:8px;min-width:0;padding:8px 12px;border:1px solid var(--line);border-radius:8px;background:var(--panel-2);color:var(--text)}.compact-stat span{color:var(--muted);font-size:12px;white-space:nowrap}.compact-stat strong{font-size:17px}.compact-stat.blue svg{color:var(--blue)}.compact-stat.green svg{color:var(--green)}.panel{padding:16px}.panel.full{padding:0;overflow:hidden}.panel.wide{grid-column:span 3}.hero-panel{grid-column:span 3;display:grid;grid-template-columns:minmax(0,1fr) 190px;align-items:center;min-height:220px;background:linear-gradient(135deg,var(--panel) 0%,var(--panel-2) 100%)}.hero-panel h2{font-size:30px;margin:8px 0;letter-spacing:0}.hero-panel p{margin:0;color:var(--muted)}.panel-heading,.list-tools{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px}.panel:not(.full) .panel-heading{padding:0 0 12px}.panel-heading h2{margin:0;font-size:17px}.pipeline{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.pipeline div,.status-line{border:1px solid var(--line);border-radius:8px;padding:12px;background:var(--panel-2)}.pipeline div{border-left:4px solid #94a3b8}.pipeline div.expired{border-left-color:#dc2626}.pipeline div.urgent{border-left-color:#f97316}.pipeline div.soon{border-left-color:#eab308}.pipeline div.healthy{border-left-color:#16a34a}.pipeline strong{display:block;font-size:24px}.pipeline span{color:var(--muted);text-transform:capitalize}.status-stack{display:grid;gap:8px}.status-line{display:flex;justify-content:space-between}.search-box{display:flex;align-items:center;gap:10px;width:min(520px,100%);border:1px solid var(--line);border-radius:8px;background:var(--panel);padding:0 12px}.search-box input{width:100%;min-height:38px;border:0;outline:0;background:transparent}.premium-tools{flex-wrap:wrap}.filter-strip{display:flex;align-items:center;gap:8px;padding:0 16px 16px;flex-wrap:wrap}.form-panel{padding:18px}.form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px 16px;margin-bottom:16px}.form-grid label{margin:0}.manual-ticket-panel .panel-heading{align-items:flex-start}.manual-ticket-summary{background:#f8fafc}.manual-ticket-summary .panel-heading{align-items:center}.ticket-stat-row{display:grid;grid-template-columns:repeat(8,minmax(90px,1fr));gap:10px;padding:0 16px 16px;overflow-x:auto}.ticket-stat-box{display:grid;place-items:center;gap:4px;min-height:62px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--text)}.ticket-stat-box span{color:var(--muted);font-size:12px;font-weight:700;text-transform:uppercase}.ticket-stat-box strong{font-size:18px}.manual-ticket-filter-panel{background:#f8fafc;padding:14px}.ticket-filter-grid{display:grid;grid-template-columns:2fr repeat(3,minmax(160px,1fr)) auto auto;gap:10px;align-items:center}.ticket-filter-grid .search-box,.ticket-filter-grid select,.ticket-filter-grid button{min-height:40px}.manual-ticket-form .config-field-wide{grid-column:1 / -1}.manual-ticket-form textarea{min-height:86px}.ticket-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.task-summary-panel .panel-heading{align-items:center}.task-stat-row{grid-template-columns:repeat(7,minmax(100px,1fr))}.task-filter-grid{grid-template-columns:2fr minmax(180px,1fr) minmax(150px,.8fr) minmax(140px,.7fr) auto}.task-register-panel{background:#f7f7f7}.task-table th,.task-table td{white-space:nowrap}.task-table td:nth-child(5){min-width:260px}.task-table td:nth-child(5) strong,.task-table td:nth-child(2) strong{display:block}.task-table td:nth-child(5) span,.task-table td:nth-child(2) span{display:block;margin-top:4px;color:#6b7280;font-size:12px}.priority-chip{display:inline-block;width:22px;height:22px;background:#f97316}.priority-critical,.priority-high{background:#ef1235}.priority-medium{background:#f97316}.priority-low{background:#22c55e}.ticket-create-modal.task-create-modal{width:min(820px,92vw);max-height:86vh;border:1px solid #d7dde5;background:#f8fafc;box-shadow:0 26px 70px #0f172a57}.task-create-modal .ticket-modal-header{min-height:48px;padding:10px 12px;border-bottom-color:#d9e2ec}.task-create-modal .ticket-modal-header h2{color:#0f172a;font-size:20px}.task-create-modal .ticket-modal-header span{display:block;margin-top:1px;color:#64748b;font-size:10px;font-weight:700;text-transform:uppercase}.task-create-modal .ticket-modal-header .row-actions button{width:36px;height:34px}.ticket-create-modal .task-modal-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px 10px;padding:12px}.ticket-create-modal .task-modal-grid label{grid-column:span 2;gap:4px;color:#334155;font-size:10px;font-weight:800;margin-bottom:0;text-transform:uppercase}.ticket-create-modal .task-modal-grid .ticket-modal-wide{grid-column:1 / -1}.task-create-modal .ticket-modal-grid input,.task-create-modal .ticket-modal-grid select,.task-create-modal .ticket-modal-grid textarea{min-height:38px;border:1px solid #cbd5e1;background:#fff;color:#0f172a;font-size:13px;font-weight:600}.task-create-modal .ticket-modal-grid textarea{min-height:54px;padding-top:8px;resize:vertical}.task-modal-footer{display:flex;justify-content:flex-end;gap:8px;padding-top:0}.task-modal-footer button{min-width:104px;min-height:36px}.lead-stat-row{grid-template-columns:repeat(13,minmax(104px,1fr))}.lead-filter-grid{grid-template-columns:2fr minmax(180px,1fr) minmax(150px,.8fr) minmax(150px,.8fr) auto}.lead-stage-actions{flex-wrap:wrap;max-width:168px;gap:5px}.lead-stage-actions button{width:30px;height:30px}.lead-location-panel{display:grid;gap:10px;padding:0}.lead-location-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center}.lead-location-head h3,.lead-feasible-title strong{margin:0;color:#000;font-size:18px}.lead-feasible-title{display:flex;align-items:center;gap:12px}.lead-location-grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(330px,1fr);gap:14px}.lead-coordinates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.lead-map-placeholder{position:relative;display:grid;place-items:center;gap:8px;min-height:170px;margin-top:12px;overflow:hidden;border:1px solid #cfcfcf;background:linear-gradient(30deg,rgba(78,91,72,.35) 0 12%,transparent 12% 34%,rgba(138,125,94,.34) 34% 45%,transparent 45%),linear-gradient(120deg,rgba(190,190,190,.55) 0 9%,transparent 9% 38%,rgba(120,120,120,.28) 38% 44%,transparent 44%),#b9b2a5;color:#dc2626}.lead-map-placeholder>span{color:#111827;font-weight:700}.lead-map-toggle{position:absolute;top:12px;left:12px;display:inline-flex}.lead-map-toggle button{min-height:34px;border:0;border-radius:0;padding:0 14px;background:#f3f4f6;color:#4b5563;font-size:14px}.lead-map-toggle button.active{background:#2563eb;color:#fff}.lead-feasible-table table{min-width:0}.lead-feasible-table th,.lead-feasible-table td{height:42px;border:1px solid #bdbdbd;font-size:13px}.lead-feasibility-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 10px}.lead-feasibility-grid label{grid-column:span 1}.lead-feasibility-grid .ticket-modal-wide{grid-column:1 / -1}.lead-material-estimate{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:8px;background:#fff;color:#334155;font-size:12px}.lead-material-estimate span{color:var(--muted)}.lead-quote-total{display:grid;align-content:center;min-height:42px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:#fff}.lead-quote-total strong{color:#334155;font-size:11px;text-transform:uppercase}.lead-quote-total span{color:#0f172a;font-weight:800}.lead-activity-timeline{display:grid;gap:8px}.lead-activity-timeline div{display:grid;gap:3px;padding:9px 10px;border:1px solid var(--line);border-radius:8px;background:#fff}.lead-activity-timeline span{color:var(--muted);font-size:12px}.lead-create-modal{width:min(1120px,94vw);max-height:88vh;border:1px solid #d4d4d4}.lead-create-modal .ticket-modal-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px 14px;padding:14px}.lead-create-modal .ticket-modal-header{min-height:50px;padding:0 4px 8px}.lead-create-modal .ticket-modal-header h2{font-size:22px}.lead-create-modal .ticket-modal-header .row-actions button{width:42px;height:38px}.lead-create-modal .ticket-modal-grid label{gap:5px;font-size:12px}.lead-create-modal .ticket-modal-grid input,.lead-create-modal .ticket-modal-grid select,.lead-create-modal .ticket-modal-grid textarea{min-height:42px;padding:0 12px;font-size:14px}.lead-create-modal .ticket-modal-grid textarea{min-height:68px;padding-top:10px}.lead-accordion{border:1px solid #cfcfcf;background:#f8f8f8}.lead-accordion>button{display:flex;justify-content:space-between;align-items:center;width:100%;min-height:44px;border:0;background:transparent;color:#000;padding:0 16px;text-align:left}.lead-accordion strong{font-size:18px}.lead-accordion>div{padding:0 14px 14px}.lead-section-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.lead-services-grid{display:grid;grid-template-columns:104px minmax(120px,1fr) minmax(120px,1fr) minmax(120px,1fr);gap:12px;align-items:center}.lead-requirement-row{display:grid;grid-template-columns:repeat(6,minmax(110px,1fr));gap:10px}.lead-check{display:inline-flex;align-items:center;gap:8px;color:#000;font-size:14px}.lead-check input{width:18px;height:18px;min-height:0}.ticket-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:center;padding:22px;background:#00000094}.ticket-create-modal{width:min(1040px,94vw);max-height:88vh;overflow:auto;background:#f8fafc;border:1px solid #d7dde5;border-radius:8px;box-shadow:0 26px 70px #0f172a57}.ticket-modal-header{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:50px;padding:10px 12px;border-bottom:1px solid #d9e2ec;background:#fff}.ticket-modal-header h2{margin:0;color:#0065ff;font-size:21px}.ticket-modal-header .row-actions button{width:38px;height:36px;border-radius:8px}.ticket-modal-header .danger{border-color:#ff1f1f;color:#ff1f1f}.ticket-modal-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px 12px;padding:14px}.ticket-modal-grid label{display:grid;grid-column:span 3;gap:5px;color:#334155;font-size:11px;font-weight:800;text-transform:uppercase}.ticket-modal-grid input,.ticket-modal-grid select,.ticket-modal-grid textarea{min-height:40px;border-radius:8px;border-color:#cbd5e1;background:#fff;color:#0f172a;font-size:14px;font-weight:600;text-transform:none}.ticket-modal-grid textarea{min-height:72px}.ticket-modal-wide{grid-column:1 / -1}.table-wrap{overflow:auto;border-top:1px solid var(--line);background:var(--panel)}table{width:100%;border-collapse:collapse;min-width:920px}th,td{border-top:1px solid var(--line);padding:10px 12px;text-align:left;vertical-align:middle}th{position:sticky;top:0;z-index:1;background:#f8fafc;color:var(--muted);font-size:12px;text-transform:uppercase}tbody tr:hover td{background:#f8fafc}td strong{display:block}select,input,textarea{min-height:38px;border:1px solid var(--line);border-radius:8px;background:var(--panel);padding:0 10px;color:var(--text)}textarea{min-height:108px;padding:10px;resize:vertical}.badge{display:inline-flex;align-items:center;min-height:28px;border-radius:999px;padding:0 10px;background:#eef2f7;color:#334155;font-size:13px;text-transform:capitalize;white-space:nowrap}.badge.expired,.badge.urgent{background:#fee2e2;color:#991b1b}.badge.soon{background:#fef3c7;color:#92400e}.badge.healthy{background:#dcfce7;color:#166534}.row-actions{display:flex;gap:8px}.primary,.secondary,.ghost,.queue-actions button,.segmented button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;border-radius:8px;padding:0 14px}.primary,.secondary{border:0;background:var(--blue);color:#fff}.secondary{background:#0f766e}.upload-action{cursor:pointer}.upload-action input{display:none}.ghost{border:1px solid var(--line);background:var(--panel);color:var(--text)}.followup-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:0 18px 18px}.queue-column{display:grid;align-content:start;gap:12px;min-height:260px;background:var(--panel-2);border:1px solid var(--line);border-radius:8px;padding:14px}.queue-column h3{margin:0;text-transform:capitalize}.queue-card{display:grid;gap:10px;background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:14px}.queue-card p{margin:0;color:var(--muted);font-size:13px}.renewal-card{gap:12px}.renewal-meta{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) auto;gap:8px;align-items:center}.renewal-meta span{color:var(--muted)}.renewal-controls{display:grid;gap:8px}.renewal-controls textarea{min-height:64px;resize:vertical}.queue-actions{display:flex;gap:8px;flex-wrap:wrap}.queue-actions button{min-height:34px;border:1px solid var(--line);background:var(--panel-2);color:var(--text)}.settings-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,420px);gap:16px}.module-stack{display:grid;gap:16px}.module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.template-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.template-card p{color:var(--muted);margin:0 0 18px}.wide-panel{grid-column:1 / -1}.noc-shell{position:relative;display:grid;gap:20px;padding:6px 0 8px}.noc-bg{position:absolute;top:-12px;right:-6px;bottom:-6px;left:-6px;border-radius:22px;background:radial-gradient(circle at 14% 18%,rgba(34,211,238,.1),transparent 30%),radial-gradient(circle at 84% 22%,rgba(244,63,94,.08),transparent 28%),linear-gradient(135deg,#05070e,#0d1424 48%,#0b1020);z-index:0}.noc-shell>*{position:relative;z-index:1}.noc-panel{background:#0a101dd1;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.08);border-radius:18px;box-shadow:0 10px 36px #00000047}.noc-header{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:18px 24px}.noc-brand{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.noc-brand h2{margin:0;color:#f8fbff;font-size:28px;line-height:1.05}.noc-brand p{margin:4px 0 0;color:#93a4be}.noc-chip{padding:4px 8px;border-radius:999px;border:1px solid rgba(34,211,238,.35);color:#67e8f9;font-size:11px;letter-spacing:.14em}.noc-status-dot{width:12px;height:12px;border-radius:999px;background:#64748b;box-shadow:0 0 #64748b80}.noc-status-dot.active{background:#22c55e;box-shadow:0 0 18px #22c55e8c}.noc-status-dot.idle{background:#f59e0b;box-shadow:0 0 18px #f59e0b59}.noc-summary{display:flex;gap:18px;flex-wrap:wrap}.noc-mini-metric{min-width:92px;display:grid;gap:5px}.noc-mini-metric .label{color:#93a4be;font-size:10px;letter-spacing:.14em}.noc-mini-metric .value{color:#f8fbff;font-size:14px;font-weight:700}.noc-mini-bar{height:4px;background:#ffffff0f;border-radius:999px;overflow:hidden}.noc-mini-bar i{display:block;height:100%;border-radius:999px}.noc-mini-metric.cyan .value,.noc-mini-metric.cyan .noc-mini-bar i{color:#67e8f9;background:linear-gradient(90deg,#22d3ee,#67e8f9)}.noc-mini-metric.magenta .value,.noc-mini-metric.magenta .noc-mini-bar i{color:#fb7185;background:linear-gradient(90deg,#f43f5e,#fb7185)}.noc-mini-metric.green .value,.noc-mini-metric.green .noc-mini-bar i{color:#34d399;background:linear-gradient(90deg,#10b981,#34d399)}.noc-metrics-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.noc-tabbar{display:flex;flex-wrap:wrap;gap:8px;padding:8px}.noc-tab{min-height:38px;padding:0 16px;border-radius:10px;border:1px solid transparent;background:transparent;color:#93a4be}.noc-tab:hover{background:#ffffff0a;color:#f8fbff}.noc-tab.active{background:#22d3ee1f;border-color:#22d3ee47;color:#f8fbff;box-shadow:0 0 18px #22d3ee1a}.noc-metric-card{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:center;padding:16px 18px}.noc-metric-card span{display:block;color:#93a4be;font-size:13px}.noc-metric-card strong{color:#f8fbff;font-size:24px}.noc-metric-icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.08)}.noc-metric-icon.down{color:#67e8f9;background:#22d3ee1f}.noc-metric-icon.up{color:#34d399;background:#10b9811f}.noc-metric-icon.latency{color:#fbbf24;background:#f59e0b1f}.noc-metric-icon.alert{color:#fb7185;background:#f43f5e1f}.noc-dashboard-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.noc-span-2{grid-column:span 2}.noc-span-3{grid-column:1 / -1}.noc-card-header{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:18px 18px 14px}.noc-card-header h3{margin:0;color:#f8fbff;font-size:18px}.noc-card-header span{color:#93a4be;font-size:13px}.noc-card-actions{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.noc-card-actions .monitoring-off{border-color:#fbbf2466;color:#fbbf24}.noc-inline-status{margin:0 18px 14px;padding:8px 13px;border:1px solid rgba(94,234,212,.22);border-radius:8px;background:#14b8a60f;color:#a8bacf;font-size:12px}.epon-diagnostic-strip{display:grid;gap:5px;margin:0 18px 14px;border:1px solid rgba(45,212,191,.22);border-radius:8px;background:#14b8a614;color:#dffdf8;padding:11px 13px}.epon-diagnostic-strip.warning{border-color:#fbbf2452;background:#fbbf2414}.epon-diagnostic-strip strong{font-size:13px}.epon-diagnostic-strip span,.epon-diagnostic-strip small{color:#a8bacf;font-size:12px;line-height:1.45}.noc-router-grid,.noc-table-wrap,.noc-actions{padding-top:0}.noc-router-card,.noc-shell .monitor-card,.noc-shell .alert-row,.noc-shell .zone-row,.noc-shell .interface-row{background:#ffffff08;border-color:#ffffff14}.noc-shell .monitor-card strong,.noc-shell .alert-row strong,.noc-shell .zone-row strong,.noc-shell .interface-row strong{color:#f8fbff}.noc-shell .monitor-card span,.noc-shell .alert-row span,.noc-shell .zone-row span,.noc-shell .interface-row span,.noc-shell .status-line span,.noc-shell label{color:#93a4be}.noc-shell .status-line strong{color:#f8fbff}.noc-shell .table-wrap table{color:#e5edf8}.noc-shell .table-wrap th{background:#ffffff0a;color:#93a4be}.noc-shell .table-wrap td{border-color:#ffffff14}.noc-shell .table-wrap tbody tr:hover{background:#22d3ee0d}.noc-shell input,.noc-shell select,.noc-shell textarea{background:#ffffff08;color:#f8fbff;border-color:#ffffff1a}.noc-shell input::placeholder,.noc-shell textarea::placeholder{color:#9aa7ba}.noc-shell select option{background:#fff;color:#111827}.noc-config-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:14px;padding:0 18px}.noc-config-grid .config-field-wide{grid-column:1 / -1}.noc-form-actions{padding:14px 18px 18px}.noc-check{align-content:end}.noc-check input{width:18px;height:18px}.noc-test-result{margin:0;padding:0 18px 18px;color:#93f5d1;font-size:13px}.wa-inbox-layout{display:grid;grid-template-columns:minmax(260px,340px) minmax(0,1fr);gap:0;min-height:560px;border-top:1px solid var(--line)}.wa-thread-list{display:grid;align-content:start;gap:8px;padding:14px;border-right:1px solid var(--line);background:var(--panel-2)}.wa-thread{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 10px;width:100%;min-height:86px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--text);padding:12px;text-align:left}.wa-thread.active,.wa-thread:hover{border-color:#2563eb;background:#2563eb0f}.wa-thread small,.wa-thread em,.wa-conversation-head span,.wa-message span{color:var(--muted);font-size:12px;font-style:normal}.wa-thread em{grid-column:1 / -1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wa-conversation-panel{display:grid;grid-template-rows:auto minmax(0,1fr) auto;min-width:0}.wa-conversation-head{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:14px 18px;border-bottom:1px solid var(--line)}.wa-conversation-head h3{margin:0 0 3px;font-size:18px}.wa-assignment{display:inline-flex;align-items:center;gap:8px}.wa-message-list{display:grid;align-content:start;gap:10px;max-height:440px;overflow:auto;padding:18px;background:#f8fafc}.wa-message{display:grid;gap:4px;max-width:min(640px,82%);border:1px solid var(--line);border-radius:8px;padding:10px 12px;background:var(--panel)}.wa-message p{margin:0;white-space:pre-wrap}.wa-message.outbound{justify-self:end;background:#ecfdf5;border-color:#bbf7d0}.wa-message.inbound{justify-self:start}.wa-reply-box{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:14px 18px;border-top:1px solid var(--line)}.wa-reply-box textarea{min-height:72px}.noc-inline-error{color:#fda4af;font-size:12px}.session-status-cell{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.session-status-cell small{color:#93a4be;font-size:11px;white-space:nowrap}.noc-row-actions{display:flex;gap:8px}.noc-row-actions .ghost{min-height:32px;min-width:32px;padding:0}.mikrotik-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:0 18px 14px}.mikrotik-toolbar .search-box{width:min(420px,100%);background:#ffffff14;border-color:#94a3b847}.mikrotik-toolbar .search-box input{color:#fff;caret-color:#67e8f9}.mikrotik-toolbar select{min-width:150px;background:#f8fafc;color:#111827;border-color:#cbd5e1}.mikrotik-toolbar>span{color:#93a4be;font-size:13px}.mikrotik-command-panel,.mikrotik-leaders-panel,.mikrotik-session-detail{border-color:#22d3ee2e;box-shadow:0 18px 44px #0208172e}.mikrotik-command-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0 18px 14px}.traffic-total-card{display:grid;gap:7px;min-height:116px;border:1px solid rgba(255,255,255,.08);border-radius:10px;background:linear-gradient(135deg,#0f172af5,#0f172ab3);padding:16px}.traffic-total-card span,.traffic-total-card small{color:#9fb0c7}.traffic-total-card strong{color:#f8fbff;font-size:28px;line-height:1}.traffic-total-card.down{border-color:#67e8f93d}.traffic-total-card.down strong{color:#67e8f9}.traffic-total-card.up{border-color:#34d3993d}.traffic-total-card.up strong{color:#34d399}.mikrotik-map-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:0 18px 18px}.mikrotik-map-strip div{display:grid;gap:4px;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:#ffffff0a;padding:10px}.mikrotik-map-strip span,.traffic-leader-row small{color:#93a4be}.mikrotik-map-strip strong{color:#f8fbff;font-size:18px}.traffic-leader-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:0 18px 18px}.traffic-leader-list{display:grid;gap:8px}.traffic-leader-list h4{margin:0 0 4px;color:#dce7f5;font-size:13px}.traffic-leader-row{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;border:1px solid rgba(255,255,255,.08);border-radius:9px;background:#ffffff09;color:#f8fbff;padding:10px;text-align:left}.traffic-leader-row:hover{border-color:#67e8f952;background:#22d3ee14}.traffic-leader-row span:nth-child(2){display:grid;gap:2px;min-width:0}.traffic-leader-row strong,.traffic-leader-row small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.traffic-leader-row b{color:#67e8f9;font-size:13px}.traffic-rank{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#67e8f91f;color:#67e8f9;font-weight:700}.link-button{border:0;background:transparent;color:inherit;padding:0;text-align:left}.session-user-link{display:grid;gap:3px}.session-user-link strong{color:#67e8f9}.session-user-link span{color:#93a4be;font-size:12px}.selected-session-row{background:#22d3ee14}.mikrotik-session-detail{align-self:start}.session-traffic-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0 18px 14px}.session-traffic-card{display:grid;gap:6px;border:1px solid rgba(255,255,255,.08);border-radius:10px;background:#ffffff0a;padding:14px}.session-traffic-card span,.session-traffic-card small{color:#93a4be}.session-traffic-card strong{color:#f8fbff;font-size:22px}.session-traffic-card.rx strong{color:#67e8f9}.session-traffic-card.tx strong{color:#34d399}.session-meta-strip{display:flex;gap:8px;flex-wrap:wrap;padding:0 18px 14px}.session-meta-strip span{border:1px solid rgba(255,255,255,.08);border-radius:999px;background:#ffffff0a;color:#93a4be;padding:7px 10px;font-size:12px}.session-meta-strip strong{color:#f8fbff}.session-detail-actions{display:flex;gap:10px;flex-wrap:wrap;padding:0 18px 18px}.switch-info-shell{grid-column:1 / -1;display:grid;gap:10px;background:#e7e7e7;border:1px solid #d1d5db;color:#333;padding:10px}.switch-picker-row{display:flex;gap:10px;flex-wrap:wrap}.switch-picker{display:grid;gap:4px;min-width:190px;border:1px solid #cbd5e1;border-radius:4px;background:#f8fafc;color:#334155;padding:10px 12px;text-align:left}.switch-picker.active{border-color:#2563eb;box-shadow:inset 0 0 0 1px #2563eb}.switch-picker span{color:#64748b;font-size:12px}.switch-device-strip,.switch-detail-panel,.switch-section{background:#f3f4f6;border:1px solid #cbd5e1}.switch-device-strip{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:58px;padding:10px 12px}.switch-device-title,.switch-action-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.switch-ip-pill,.switch-green-pill{display:inline-flex;min-height:22px;align-items:center;border-radius:3px;background:#d9e0e7;color:#475569;padding:1px 7px;font-size:13px}.switch-green-pill{background:#d1fae5;color:#059669}.switch-action-bar .secondary{border-radius:0;background:#2563eb;min-height:34px}.switch-action-bar .ghost,.switch-filter-row .ghost,.switch-table-wrap .ghost{background:#eef2f7;color:#334155;border-color:#cbd5e1}.switch-detail-panel{padding:12px}.switch-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 28px}.switch-detail-grid .status-line{justify-content:flex-start;gap:8px;color:#475569;font-size:13px}.switch-detail-grid .status-line span{min-width:132px;color:#334155;font-weight:700}.switch-detail-grid .status-line strong{color:#4b5563;font-weight:600}.switch-system-descr{display:flex;gap:8px;margin-top:10px;color:#4b5563;font-size:13px}.switch-system-descr span{font-weight:800;color:#334155}.switch-section{padding:12px}.switch-section h3{margin:0 0 10px;color:#f97316;font-size:16px}.switch-section-top{display:flex;justify-content:space-between;gap:12px;align-items:center}.switch-section-top span{color:#64748b;font-size:12px}.switch-filter-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:10px}.switch-filter-row select,.switch-filter-row input{min-width:160px;border-radius:0;background:#f8fafc;color:#111827;border-color:#cbd5e1}.switch-filter-row .secondary{min-height:34px;border-radius:0;background:#d1d5db;color:#111827}.switch-pagination{margin-left:auto;display:flex;align-items:center;gap:10px;color:#111827;font-size:12px}.switch-table-wrap table{min-width:1120px;color:#475569}.switch-table-wrap th{background:#f1f5f9;color:#334155;text-transform:none}.switch-table-wrap td{border-color:#cbd5e1;color:#4b5563;font-size:13px}.switch-table-wrap tr.switch-muted-row td{color:#8792a2;background:#f8fafc}.switch-throughput,.switch-utilization{display:flex;gap:8px;flex-wrap:wrap}.switch-throughput span{display:inline-flex;min-height:22px;align-items:center;border-radius:3px;padding:0 6px}.switch-throughput .rx{background:#eef2ff;color:#4f46e5}.switch-throughput .tx{background:#ecfdf5;color:#059669}.switch-utilization span{display:inline-flex;min-height:22px;align-items:center;border-radius:3px;background:#d1fae5;color:#059669;padding:0 6px}.icon-only:disabled{opacity:.45;cursor:not-allowed}.olt-chip-strip{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:0 18px 14px}.olt-device-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));align-items:stretch}.olt-chip-label{color:#a9b4c7;font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.olt-filter-chip{display:inline-flex;align-items:center;gap:8px;min-height:40px;border:1px solid rgba(34,211,238,.2);border-radius:6px;background:#22d3ee12;color:#dffbff;font-weight:800;padding:0 14px}.olt-filter-chip.active{border-color:#2dd4bfbf;background:#2dd4bf2e;box-shadow:inset 0 0 0 1px #2dd4bf2e}.olt-filter-chip small{min-width:24px;border-radius:999px;background:#ffffff1a;color:#9df7e2;font-size:11px;text-align:center;padding:2px 7px}.olt-device-card{display:grid;grid-template-columns:auto 1fr;justify-items:start;align-content:start;gap:5px 9px;min-height:106px;padding:13px 14px;text-align:left}.olt-device-card strong,.olt-device-card span:not(.mini-led),.olt-device-card small{grid-column:2}.olt-device-card strong{color:#f8fbff;font-size:15px}.olt-device-card span:not(.mini-led){color:#9fb0c7;font-size:12px;font-weight:700}.olt-device-card small{justify-self:start;min-width:0;margin-top:2px}.mini-led{width:9px;height:9px;border-radius:999px;background:#fb7185;box-shadow:0 0 12px #fb71858c}.mini-led.up{background:#34d399;box-shadow:0 0 12px #34d3998c}.pon-port-grid{display:grid;grid-template-columns:repeat(8,minmax(92px,1fr));gap:10px;padding:0 18px 18px}.pon-port-card{display:grid;justify-items:start;gap:7px;min-height:96px;border:1px solid rgba(255,255,255,.09);border-radius:8px;background:#ffffff0a;color:#eef8ff;padding:13px;text-align:left}.pon-port-card:hover,.pon-port-card.active{border-color:#2dd4bfb3;background:#2dd4bf21}.pon-port-card strong{font-size:16px}.pon-port-card small{color:#9ca3af;font-size:12px;line-height:1.35}.pon-optical-line{color:#67e8f9;font-size:11px;font-weight:800;line-height:1.35}.onu-toolbar{display:grid;grid-template-columns:repeat(auto-fit,minmax(104px,1fr));gap:8px;padding:0 18px 12px}.onu-toolbar select,.onu-filter-input{min-width:0;min-height:30px;padding:0 8px;font-size:12px}.onu-toolbar .search-box{min-height:30px;padding:0 8px}.onu-toolbar .search-box input{min-height:26px;font-size:12px}.noc-search-box{width:100%}.onu-table-summary{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:0 18px 12px;color:#9ca3af;font-size:12px}.onu-click-row{cursor:pointer}.onu-click-row.selected td{background:#22d3ee14}.onu-mac-chip{display:inline-flex;max-width:190px;overflow-wrap:anywhere;border-radius:5px;background:#3b82f629;color:#93c5fd;font-size:12px;padding:4px 7px}.onu-rx-pill{display:inline-flex;min-width:82px;justify-content:center;border-radius:5px;font-size:12px;font-weight:800;padding:4px 8px}.onu-rx-pill.good{background:#34d3992e;color:#6ee7b7}.onu-rx-pill.warn{background:#fbbf242e;color:#fcd34d}.onu-rx-pill.bad{background:#f871712e;color:#fca5a5}.onu-rx-pill.unknown{background:#94a3b829;color:#cbd5e1}.onu-action-icons{display:inline-flex;align-items:center;gap:6px}.onu-action-icons button{width:30px;height:30px;display:inline-grid;place-items:center;border:1px solid rgba(255,255,255,.09);border-radius:6px;background:#ffffff0a;color:#bfefff}.onu-action-icons button:hover{border-color:#22d3ee73;color:#67e8f9}.onu-pagination{display:flex;justify-content:flex-end;align-items:center;gap:12px;padding:12px 18px 16px;color:#cbd5e1;font-size:13px}.onu-pagination label{display:inline-flex;align-items:center;gap:8px;color:#9ca3af}.onu-pagination select{min-height:34px;min-width:78px}.onu-pagination .ghost:disabled{opacity:.45;cursor:not-allowed}.onu-detail-panel{padding-bottom:18px}.onu-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:flex;align-items:center;justify-content:center;padding:24px;background:#0f172a8c}.onu-modal{width:min(1100px,100%);max-height:min(880px,92vh);overflow-y:auto;border-radius:14px;box-shadow:0 30px 80px #0f172a59}.onu-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:0 18px 14px}.onu-info-card{display:grid;gap:12px;min-width:0;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:#ffffff08;padding:14px}.onu-info-header{display:flex;align-items:center;gap:10px;color:#f8fbff}.onu-info-header h4{margin:0;font-size:15px}.onu-info-body{display:grid;gap:8px}.onu-not-available{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:10px 0 2px}.onu-not-available span{color:var(--muted);font-size:13px}.onu-power-history{margin:0 18px 14px}.onu-power-range{margin-left:auto;font-size:11px;color:#93a4be;font-weight:500}.onu-history-summary,.switch-port-history-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px;margin:10px 0 12px}.onu-history-summary span{display:grid;gap:2px;padding:9px 10px;border:1px solid rgba(148,163,184,.22);border-radius:8px;background:#0f172a38;color:#93a4be;font-size:11px}.onu-history-summary strong{color:#e5f0ff;font-size:15px}.onu-power-charts{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;padding:4px 2px 2px}.onu-power-chart{display:grid;gap:4px}.onu-power-chart-head{display:flex;align-items:baseline;justify-content:space-between;font-size:12px;color:#93a4be}.onu-power-chart-head strong{color:#e5f0ff;font-size:13px}.onu-power-svg{width:100%;height:96px;display:block;overflow:visible}.onu-power-chart-range{display:flex;justify-content:space-between;color:#6b7ea0;font-size:10px}.onu-power-strip{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(72px,1fr);align-items:end;gap:10px;min-height:156px;overflow-x:auto;padding:8px 2px 2px}.onu-power-point{display:grid;grid-template-rows:92px auto auto;gap:6px;align-items:end;justify-items:center;min-width:72px}.onu-power-point span{width:14px;min-height:8px;border-radius:999px 999px 2px 2px;background:linear-gradient(180deg,#38bdf8,#2563eb)}.onu-power-point strong{font-size:12px;color:#e5f0ff;white-space:nowrap}.onu-power-point small{color:#93a4be;font-size:11px;white-space:nowrap}.onu-lan-row{display:grid;grid-template-columns:auto 56px minmax(0,1fr) auto;gap:10px;align-items:center;min-height:42px;border:1px solid rgba(255,255,255,.06);border-radius:8px;padding:8px 10px}.onu-lan-row>span:not(.badge):not(.onu-led){color:#93a4be;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.onu-led{width:9px;height:9px;border-radius:999px;background:#475569}.onu-led.up{background:#22c55e;box-shadow:0 0 9px #22c55ea6}.onu-devices-table table{min-width:620px}.network-layout{grid-template-columns:minmax(0,420px) minmax(0,1fr)}.monitor-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;padding:0 18px 18px}.router-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.monitor-card{display:grid;gap:8px;align-content:start;min-height:150px;border:1px solid var(--line);border-radius:8px;background:var(--panel-2);padding:14px}.monitor-card span{color:var(--muted);font-size:13px}.monitor-card-top{display:flex;justify-content:space-between;align-items:center}.monitor-actions{display:flex;flex-wrap:wrap;gap:8px;padding:6px 18px 18px}.router-health-card{min-height:280px}.health-bars{display:grid;gap:10px}.switch-port-history-panel{margin-top:14px}.switch-history-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}.switch-history-card{display:grid;gap:6px;padding:12px;border:1px solid rgba(148,163,184,.2);border-radius:8px;background:#0f172a33}.switch-history-head,.switch-history-range{display:flex;align-items:center;justify-content:space-between;gap:10px}.switch-history-head span{display:inline-flex;align-items:center;gap:6px;color:#93a4be;font-size:12px}.switch-history-head strong{color:#e5f0ff;font-size:13px}.switch-history-svg{width:100%;height:86px;display:block;overflow:visible}.switch-history-range{color:#6b7ea0;font-size:10px}.health-bars div{display:grid;grid-template-columns:64px minmax(0,1fr);align-items:center;gap:10px}.health-bars span{color:var(--muted);font-size:12px}.health-bars i,.interface-bar{display:block;height:10px;border-radius:999px;background:var(--panel);border:1px solid var(--line);overflow:hidden}.health-bars b,.interface-bar i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#0f766e,#22c55e 52%,#f59e0b 78%,#ef4444)}.alert-list,.zone-list,.interface-list{display:grid;gap:12px;padding:0 18px 18px}.alert-row,.zone-row,.interface-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;border:1px solid var(--line);border-radius:8px;background:var(--panel-2);padding:12px 14px}.alert-row div,.zone-row div,.interface-row div:first-child{display:grid;gap:4px}.alert-row span,.zone-row span,.interface-row span{color:var(--muted);font-size:13px}.alert-row small{color:var(--muted);font-size:12px}.alert-row-actions{align-items:center;display:flex;gap:8px}.alert-row-actions .ghost{min-height:30px;padding:7px 9px}.interface-row{grid-template-columns:minmax(160px,220px) minmax(0,1fr) auto}.form-actions{display:flex;gap:10px;flex-wrap:wrap;padding-top:4px}label{display:grid;gap:8px;color:var(--muted);font-size:14px;margin-bottom:14px}label input{width:100%}.upload-box{place-items:center;min-height:160px;border:1px dashed #94a3b8;border-radius:8px;margin-top:14px}.upload-box input{display:none}.import-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.import-grid .upload-box{align-items:flex-start;justify-items:flex-start;padding:18px;text-align:left}.import-grid .upload-box strong{color:var(--text)}.donut-wrap{display:grid;place-items:center}.donut{display:grid;place-items:center;width:168px;height:168px;border-radius:999px}.donut>div{display:grid;place-items:center;width:108px;height:108px;border-radius:999px;background:var(--panel)}.donut strong{font-size:24px}.donut span{color:var(--muted)}.funnel{display:grid;gap:12px}.funnel div{display:flex;justify-content:space-between;min-height:42px;align-items:center;border-radius:8px;padding:0 12px;color:#fff;background:#2563eb}.funnel div:nth-child(2){background:#16a34a}.funnel div:nth-child(3){background:#ef4444}.bar-list{display:grid;gap:12px}.bar-row{display:grid;grid-template-columns:150px minmax(0,1fr) 44px;align-items:center;gap:12px}.bar-row span{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bar-row div{height:12px;background:var(--panel-2);border:1px solid var(--line);border-radius:999px;overflow:hidden}.bar-row i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#2563eb,#14b8a6)}.mini-bars{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:10px;min-height:190px}.mini-bars div{display:grid;align-items:end;gap:8px}.mini-bars span,.mini-bars strong{color:var(--muted);font-size:12px;text-transform:capitalize}.mini-bars i{display:block;width:100%;border-radius:8px 8px 0 0;background:linear-gradient(180deg,#f59e0b,#ef4444)}.segmented{display:inline-flex;gap:4px;padding:4px;border:1px solid var(--line);border-radius:8px;background:var(--panel-2)}.segmented button{min-height:30px;border:0;background:transparent;color:var(--muted)}.segmented button.active{background:var(--panel);color:var(--text);box-shadow:0 6px 14px #0f172a14}.drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;justify-content:flex-end;background:#0f172a6b}.customer-drawer{width:min(460px,100%);height:100%;overflow:auto;background:var(--panel);color:var(--text);border-left:1px solid var(--line);padding:20px;box-shadow:-24px 0 60px #0f172a3d}.drawer-header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.drawer-header span{color:var(--muted)}.drawer-header h2{margin:4px 0 0;font-size:24px}.profile-score{display:flex;align-items:center;justify-content:space-between;margin:18px 0;padding:14px;border:1px solid var(--line);border-radius:8px;background:var(--panel-2)}.profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:16px}.info-card{display:grid;gap:6px;border:1px solid var(--line);border-radius:8px;padding:12px;background:var(--panel-2)}.info-card span{color:var(--muted);font-size:12px}.info-card strong{overflow-wrap:anywhere}.drawer-actions{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}.customer-drawer h3{margin:16px 0 10px}.drawer-section{border-top:1px solid var(--line);padding-top:4px;margin-top:12px}.drawer-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.drawer-form-grid label{margin-bottom:0}.drawer-form-grid label:has(textarea){grid-column:1 / -1}.timeline{display:grid;gap:10px}.timeline-item{position:relative;display:grid;gap:4px;padding:12px 12px 12px 18px;border:1px solid var(--line);border-radius:8px;background:var(--panel-2)}.timeline-item:before{content:"";position:absolute;left:7px;top:14px;bottom:14px;width:3px;border-radius:999px;background:var(--blue)}.timeline-item span{color:var(--muted);font-size:12px}@media (max-width: 1100px){.content-grid,.crm-home-grid,.crm-home-kpis,.settings-layout,.network-layout,.customer-summary-strip,.onu-detail-grid,.noc-dashboard-grid,.followup-board,.template-grid,.monitor-grid,.router-grid,.noc-metrics-grid,.stats-grid,.chart-grid,.wide-chart-grid,.dashboard-panels,.crm-home-hero{grid-template-columns:1fr}.crm-home-actions,.crm-readiness-grid{grid-template-columns:1fr 1fr}.crm-home-span-2{grid-column:auto}.customer-summary-strip{align-items:stretch;flex-direction:column}.compact-stat{grid-template-columns:18px 1fr auto}.interface-row,.alert-row,.zone-row,.health-bars div{grid-template-columns:1fr}.radius-kpis,.clean-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.noc-span-2,.noc-span-3{grid-column:auto}.noc-config-grid{grid-template-columns:1fr 1fr}.mikrotik-command-grid,.traffic-leader-columns,.session-traffic-grid{grid-template-columns:1fr}.panel.wide,.hero-panel{grid-column:auto}}@media (max-width: 980px){.app-shell{grid-template-columns:1fr}.sidebar{position:sticky;top:0;z-index:10;padding:12px}.brand{margin-bottom:12px}nav{grid-template-columns:repeat(5,minmax(0,1fr))}nav button{justify-content:center;font-size:0}.hero-panel{grid-template-columns:1fr;gap:18px}.topbar,.panel-heading,.list-tools,.noc-header{align-items:flex-start;flex-direction:column}.profile-grid,.mini-bars,.module-grid,.noc-summary,.radius-kpis,.clean-kpis{grid-template-columns:1fr 1fr}}@media (max-width: 560px){main{padding:14px}.pipeline,.profile-grid,.mini-bars,.module-grid,.noc-config-grid,.radius-kpis,.clean-kpis{grid-template-columns:1fr}.dashboard-summary{align-items:flex-start;flex-direction:column}.topbar:before{display:none}.bar-row,.noc-metric-card,.mikrotik-map-strip{grid-template-columns:1fr}.traffic-leader-row{grid-template-columns:24px minmax(0,1fr)}.traffic-leader-row b{grid-column:2}}.auth-screen{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;overflow:hidden;color:var(--text);background:radial-gradient(1100px 700px at 15% 10%,#3b5bdb22,transparent 60%),radial-gradient(900px 600px at 90% 90%,#0ea5e922,transparent 55%),linear-gradient(160deg,#eef2f7,#dbe4f0 55%,#eef2f7);transition:background .2s ease}.auth-screen.dark{background:radial-gradient(1100px 700px at 15% 10%,#3b5bdb33,transparent 60%),radial-gradient(900px 600px at 90% 90%,#0ea5e930,transparent 55%),linear-gradient(160deg,#0b1220,#0f1b2e 55%,#0b1220)}.auth-theme-toggle{position:absolute;top:20px;right:20px;z-index:2}.auth-card{position:relative;width:min(420px,100%);display:grid;gap:18px;padding:36px 32px 32px;border-radius:18px;border:1px solid color-mix(in srgb,var(--line) 70%,transparent);box-shadow:0 8px 24px #0f172a14,0 24px 64px #0f172a29;overflow:hidden;animation:auth-card-in .35s ease}.auth-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#2563eb,#0ea5e9,#22c55e)}@keyframes auth-card-in{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.auth-brand{display:flex;align-items:center;gap:12px}.auth-brand img{height:40px}.auth-brand div{display:grid;line-height:1.25}.auth-brand strong{font-size:17px;letter-spacing:.2px}.auth-brand span{color:var(--muted);font-size:12px}.auth-card h2{margin:0;font-size:21px}.auth-subtitle{margin:-12px 0 0;color:var(--muted);font-size:13px}.auth-hint{color:var(--muted);font-size:13px}.auth-field-input{position:relative}.auth-field-input svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none}.auth-field-input input{width:100%;padding-left:38px}.auth-card .form-actions{margin-top:4px}.auth-card button.primary{width:100%;justify-content:center;padding:11px;font-weight:600;background:linear-gradient(135deg,#2563eb,#1d4ed8);border:none;box-shadow:0 6px 16px #2563eb59;transition:transform .15s ease,box-shadow .15s ease}.auth-card button.primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 20px #2563eb73}.auth-card button.primary:disabled{opacity:.6;box-shadow:none}.auth-error{color:var(--red, #dc2626);font-size:13px;background:#dc262614;border:1px solid rgba(220,38,38,.25);border-radius:6px;padding:8px 10px}.staff-permission-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 16px;padding:0 18px 14px}.staff-permission-item{display:flex;flex-direction:row;align-items:center;gap:8px;font-size:13px}.staff-permission-item input{width:auto}.staff-permission-summary{max-width:320px;color:var(--muted);font-size:13px}.staff-form-modal form{display:grid;gap:10px;padding-bottom:18px}.staff-form-modal .form-actions{padding:0 18px}@media (max-width: 720px){.staff-permission-grid{grid-template-columns:1fr 1fr}}.network-map-container{position:relative;height:min(70vh,720px);margin:0 18px 18px;border-radius:10px;overflow:hidden;border:1px solid var(--line)}.network-map-split{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:14px;padding:0 18px 18px;min-height:calc(100vh - 190px)}.network-map-split .network-map-container{margin:0}.enterprise-map{height:calc(100vh - 190px);min-height:680px}.map-health-legend{position:absolute;z-index:5;left:12px;bottom:12px;display:flex;flex-wrap:wrap;gap:6px;max-width:calc(100% - 24px);padding:8px;border:1px solid var(--line);border-radius:8px;background:#fffffff0;box-shadow:0 10px 24px #0f172a1f}.map-health-legend span{display:inline-flex;align-items:center;gap:5px;min-height:24px;border-radius:999px;padding:3px 7px;background:#f8fafc;color:#334155;font-size:11px;font-weight:700}.map-health-legend i{width:9px;height:9px;border-radius:999px;background:#64748b}.map-health-legend i.online{background:#059669}.map-health-legend i.watch-rx{background:#d97706}.map-health-legend i.low-rx{background:#ea580c}.map-health-legend i.offline,.map-health-legend i.power-off{background:#dc2626}.map-health-legend i.wire-down{background:#b91c1c}.map-health-legend i.stale,.map-health-legend i.unknown{background:#64748b}.topology-panel{min-height:calc(100vh - 190px);max-height:calc(100vh - 190px);overflow:auto;border:1px solid var(--line);border-radius:10px;background:var(--panel);display:grid;align-content:start}.topology-panel-head{position:sticky;top:0;z-index:3;display:grid;gap:10px;padding:14px;border-bottom:1px solid var(--line);background:var(--panel)}.topology-panel-head h3,.route-editor-title{display:flex;align-items:center;gap:7px;margin:0}.topology-panel-head span,.route-row small,.topology-node-row small,.node-detail-title small,.node-onu-card small{color:var(--muted);font-size:12px}.topology-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:12px 14px;border-bottom:1px solid var(--line)}.topology-kpis span{display:grid;gap:2px;padding:8px;border:1px solid var(--line);border-radius:8px;background:var(--panel-2);font-size:12px}.fault-intelligence-panel{display:grid;gap:7px;padding:12px 14px;border-bottom:1px solid var(--line);background:#fff7ed}.fault-intelligence-title{color:#9a3412;font-size:12px;font-weight:900;text-transform:uppercase}.fault-intelligence-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 8px;align-items:center;min-height:48px;border:1px solid #fed7aa;border-left:4px solid #f97316;border-radius:8px;background:var(--panel);color:var(--text);text-align:left}.fault-intelligence-row.critical{border-color:#fecaca;border-left-color:#dc2626}.fault-intelligence-row.info{border-color:#bfdbfe;border-left-color:#2563eb}.fault-intelligence-row span,.fault-intelligence-row strong{font-size:12px}.fault-intelligence-row small{grid-column:1 / -1;color:var(--muted);font-size:11px;line-height:1.35}.route-editor{display:grid;gap:8px;padding:14px;border-bottom:1px solid var(--line)}.route-editor input,.route-editor textarea,.route-editor select,.topology-panel-head select{min-height:36px}.route-editor textarea{resize:vertical;min-height:72px;line-height:1.4}.route-editor-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.route-draw-tools{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}.route-draw-tools button:disabled{cursor:not-allowed;opacity:.5}.route-path-summary{display:grid;grid-template-columns:repeat(3,1fr);align-items:center;gap:6px;min-height:30px;padding:5px 8px;border:1px dashed var(--line);border-radius:8px;color:var(--muted);font-size:12px}.route-path-summary span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.route-snap-hint{color:var(--muted);font-size:11px;line-height:1.35}.route-list{display:grid;gap:6px;padding:0 14px 12px}.ftth-route-context{display:grid;gap:10px;margin:0 14px 14px;padding:12px;border:1px solid var(--line);border-radius:8px;background:#f8fafc}.ftth-route-context-head,.ftth-route-stats{display:flex;align-items:center;justify-content:space-between;gap:8px}.ftth-route-context-head strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ftth-route-context-head span{color:var(--muted);font-size:12px;font-weight:800}.ftth-route-stats{display:grid;grid-template-columns:repeat(2,1fr)}.ftth-route-stats span{display:grid;gap:2px;padding:7px;border:1px solid var(--line);border-radius:7px;background:var(--panel);color:var(--muted);font-size:11px}.ftth-route-stats b{color:var(--text);font-size:15px}.ftth-route-path,.ftth-route-notes{display:grid;gap:6px}.ftth-route-path button{display:flex;align-items:center;gap:7px;min-height:30px;border:1px solid var(--line);border-radius:7px;background:var(--panel);color:var(--text);font-size:12px;font-weight:700;text-align:left}.ftth-route-path span,.ftth-route-notes p,.ftth-route-notes small{margin:0;color:var(--muted);font-size:12px}.ftth-route-notes{padding-top:8px;border-top:1px dashed var(--line)}.ftth-route-impact{display:grid;gap:3px;padding:8px;border:1px solid var(--line);border-radius:7px;background:var(--panel)}.ftth-route-impact strong{color:var(--text);font-size:12px}.ftth-route-impact span{color:var(--muted);font-size:11px;font-weight:700}.ftth-route-impact.linked{border-color:#fed7aa;background:#fff7ed}.ftth-route-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.ftth-route-actions .danger{border-color:#fecaca;color:#b91c1c}.ftth-route-actions button:disabled{cursor:not-allowed;opacity:.52}.route-row,.topology-node-row{width:100%;border:1px solid var(--line);background:var(--panel-2);color:var(--text);cursor:pointer}.route-row{display:grid;grid-template-columns:10px 1fr auto;align-items:center;gap:8px;min-height:36px;border-radius:8px;padding:6px 8px;text-align:left}.route-row>span{width:10px;height:24px;border-radius:999px}.topology-tree{display:grid;gap:4px;padding:0 14px 14px}.optical-path-board{display:grid;gap:10px;margin:0 14px 12px;padding:12px;border:1px solid var(--line);border-radius:10px;background:#f8fafc}.optical-path-board-head,.topology-tree-title{display:flex;align-items:center;justify-content:space-between;gap:10px}.optical-path-board-head strong,.topology-tree-title strong{font-size:13px}.optical-path-board-head span,.topology-tree-title span{color:var(--muted);font-size:11px;text-align:right}.optical-path-board-head.compact{padding-top:4px;border-top:1px solid #e2e8f0}.topology-customer-search{display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:8px;border:1px solid #dbe4f0;border-radius:9px;background:#fff;padding:6px 8px}.topology-customer-search input{min-width:0;border:0;outline:0;background:transparent;color:var(--text);font-size:13px}.topology-customer-results{display:grid;gap:6px;max-height:240px;overflow:auto}.topology-customer-results button,.selected-customer-topology{display:grid;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:7px;border:1px solid #dbe4f0;border-radius:9px;background:#fff;padding:8px;color:var(--text);text-align:left}.topology-customer-results button{cursor:pointer}.topology-customer-results button:hover{border-color:#2563eb;background:#2563eb0f}.topology-customer-results strong,.selected-customer-topology strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.topology-customer-results span,.selected-customer-topology span{color:#475569;font-size:11px;white-space:nowrap}.topology-customer-results small,.selected-customer-topology small{grid-column:2 / 4;color:#64748b;font-size:11px}.selected-customer-topology{grid-template-columns:minmax(0,1fr) auto;background:#ecfdf5;border-color:#bbf7d0}.selected-customer-topology small{grid-column:1 / 3}.optical-path-list{display:grid;gap:8px}.optical-path-row{display:grid;gap:8px;width:100%;border:1px solid #dbe4f0;border-radius:10px;background:#fff;padding:9px;text-align:left;cursor:pointer}.optical-path-row:hover,.optical-path-row.active{border-color:#2563eb;box-shadow:0 10px 18px #2563eb14}.optical-path-chain{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.optical-path-chip{display:inline-flex;align-items:center;gap:5px;min-height:28px;max-width:180px;border:1px solid #dbe4f0;border-radius:999px;padding:4px 8px;background:#f8fafc;color:#0f172a}.optical-path-chip+.optical-path-chip:before{content:">";margin-left:-12px;margin-right:2px;color:#94a3b8;font-weight:800}.optical-path-chip b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.optical-path-chip small{color:#64748b;font-size:10px;white-space:nowrap}.optical-path-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.optical-path-metrics span{border-radius:8px;background:#f1f5f9;padding:6px;color:#64748b;font-size:10px}.optical-path-metrics b{display:block;color:#0f172a;font-size:12px}.optical-path-metrics .good b{color:#166534}.optical-path-metrics .bad b{color:#991b1b}.optical-path-row>small{color:#64748b}.topology-tree-title{margin:0 14px 8px;padding-top:4px}.topology-node-row{display:grid;grid-template-columns:10px minmax(0,1fr) auto auto auto auto;align-items:center;gap:8px;min-height:34px;border-radius:8px;padding:6px 8px;text-align:left}.topology-node-row strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topology-node-row em{border-radius:999px;padding:2px 6px;background:#e0f2fe;color:#075985;font-size:11px;font-style:normal;font-weight:700}.topology-node-row em.loss-good{background:#dcfce7;color:#166534}.topology-node-row em.loss-bad{background:#fee2e2;color:#991b1b}.topology-node-row.active,.route-row:hover,.topology-node-row:hover{border-color:#2563eb;background:#2563eb14}.topology-dot{width:10px;height:10px;border-radius:999px;background:#64748b}.topology-dot.olt{background:#2563eb}.topology-dot.switch{background:#7c3aed}.topology-dot.router{background:#ea580c}.topology-dot.splitter{background:#0d9488}.topology-dot.coupler{background:#0891b2}.topology-dot.customer_site{background:#059669}.topology-dot.onu{background:#16a34a}.topology-dot.pole,.topology-dot.joint_box,.topology-dot.landmark{background:#d97706}.topology-dot.online{background:#059669}.topology-dot.watch-rx{background:#d97706}.topology-dot.low-rx{background:#ea580c}.topology-dot.offline,.topology-dot.power-off{background:#dc2626}.topology-dot.wire-down{background:#b91c1c}.topology-dot.stale,.topology-dot.unknown{background:#64748b}.node-detail-drawer{position:sticky;bottom:0;display:grid;gap:12px;padding:14px;border-top:1px solid var(--line);background:var(--panel);box-shadow:0 -12px 24px #0f172a14}.node-detail-close{position:absolute;top:10px;right:10px;width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:8px;background:var(--panel-2)}.node-detail-title{display:flex;gap:10px;align-items:center;padding-right:34px}.node-detail-title h3{margin:0;font-size:16px}.node-detail-drawer dl{display:grid;gap:8px;margin:0}.node-detail-drawer dl div{display:grid;grid-template-columns:88px 1fr;gap:8px}.node-detail-drawer dt{color:var(--muted);font-size:12px}.node-detail-drawer dd{margin:0;font-size:13px}.node-onu-card{display:grid;gap:6px;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--panel-2)}.loss-insight-card{display:grid;gap:7px;padding:10px;border:1px solid #bbf7d0;border-radius:8px;background:#f0fdf4}.loss-insight-card.warning{border-color:#fecaca;background:#fef2f2}.loss-insight-card>div{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.loss-insight-card span{display:grid;gap:2px;color:var(--muted);font-size:11px}.loss-insight-card b{color:var(--text);font-size:12px}.loss-insight-card small{color:var(--muted)}.fault-detail-card{display:grid;gap:6px;padding:10px;border:1px solid #fed7aa;border-left:4px solid #f97316;border-radius:8px;background:#fff7ed}.fault-detail-card.critical{border-color:#fecaca;border-left-color:#dc2626;background:#fef2f2}.fault-detail-card.info{border-color:#bfdbfe;border-left-color:#2563eb;background:#eff6ff}.fault-detail-card p{margin:0;color:var(--text);font-size:12px;line-height:1.4}.fault-detail-card span{color:var(--muted);font-size:11px;font-weight:800}.map-work-order-card{display:grid;gap:8px;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--panel-2)}.map-work-order-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.map-work-order-head>div{display:flex;gap:6px}.map-work-order-head button{min-height:30px;padding:5px 8px}.map-work-order-card input,.map-work-order-card select,.map-work-order-card textarea{min-height:34px}.map-work-order-card textarea{resize:vertical}.map-work-order-grid,.map-material-row{display:grid;grid-template-columns:1fr 92px;gap:7px}.map-material-reserve{display:grid;gap:7px;padding:8px;border:1px dashed var(--line);border-radius:8px;background:var(--panel)}.map-material-title{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:12px;font-weight:800}.map-work-ref{display:grid;grid-template-columns:1fr;gap:4px;padding:8px;border-radius:8px;background:#eef2ff;color:#3730a3;font-size:11px;font-weight:800}.node-ratio-editor{display:grid;gap:5px;color:var(--muted);font-size:12px}.node-ratio-editor select{min-height:34px}.map-optical-card{display:grid;gap:8px;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--panel-2)}.map-optical-head,.map-optical-now,.map-optical-stats{display:flex;align-items:center;justify-content:space-between;gap:8px}.map-optical-head span,.map-optical-card dt,.map-optical-card dd{color:var(--muted);font-size:12px}.map-optical-now span,.map-optical-stats span{display:grid;gap:2px;min-width:0;font-size:11px;color:var(--muted)}.map-optical-now strong{color:var(--text);font-size:16px}.map-optical-stats strong{color:var(--text);font-size:12px}.map-rx-sparkline{width:100%;height:72px;overflow:visible}.map-rx-sparkline path{fill:none;stroke:#2563eb;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.map-rx-sparkline circle{fill:#2563eb}.map-rx-empty{display:flex;align-items:center;justify-content:center;min-height:58px;border:1px dashed var(--line);border-radius:8px;color:var(--muted);font-size:12px}.map-optical-card dl{display:grid;gap:5px;margin:0}.map-optical-card dl div{display:grid;grid-template-columns:70px 1fr;gap:8px}.map-onu-badge{display:inline-flex;width:fit-content;align-items:center;min-height:24px;border-radius:999px;padding:3px 8px;background:#e2e8f0;color:#334155;font-size:12px;font-weight:700}.map-onu-badge.online{background:#dcfce7;color:#166534}.map-onu-badge.watch-rx{background:#fef3c7;color:#92400e}.map-onu-badge.low-rx{background:#ffedd5;color:#9a3412}.map-onu-badge.offline,.map-onu-badge.power-off{background:#fee2e2;color:#991b1b}.map-onu-badge.wire-down{background:#fecaca;color:#7f1d1d}.map-onu-badge.stale{background:#e2e8f0;color:#334155}.map-context-menu{position:fixed;z-index:70;display:grid;gap:8px;background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:0 12px 30px #0f172a4d;padding:10px;min-width:275px;max-width:320px}.map-context-title{color:#94a3b8;font-size:11px;font-weight:900;letter-spacing:.04em}.map-add-primary-list,.map-add-tabs,.map-add-submenu{display:grid;gap:6px}.map-add-primary-list button,.map-add-tabs button,.map-add-submenu button{display:flex;align-items:center;gap:9px;text-align:left;background:#fff;border:1px solid transparent;padding:8px 10px;border-radius:6px;color:var(--text);cursor:pointer;font-size:13px}.map-add-primary-list button,.map-add-tabs button{font-size:15px;font-weight:800}.map-add-primary-list button:hover,.map-add-tabs button.active,.map-add-tabs button:hover,.map-add-submenu button:hover{background:var(--panel-2);border-color:#bfdbfe}.map-add-primary-list span,.map-add-tabs span,.map-add-submenu span{color:#2563eb;font-size:18px;line-height:1}.map-add-submenu{padding-top:8px;border-top:1px solid var(--line)}.map-add-submenu button{align-items:flex-start;background:#f8fafc}.map-add-submenu button:disabled{cursor:not-allowed;opacity:.58}.map-add-submenu div{display:grid;gap:2px}.map-add-submenu strong{font-size:13px}.map-add-submenu small{color:var(--muted);font-size:11px}.map-add-wizard-modal{width:min(96vw,1340px);min-height:min(82vh,820px)}.map-add-wizard-modal .ticket-modal-header h2{color:#06f}.map-add-wizard-error{margin:10px 14px 0;border:1px solid #fecaca;background:#fef2f2;color:#991b1b;padding:10px 12px;font-size:13px;font-weight:700}.spin-icon{animation:spin-icon .8s linear infinite}@keyframes spin-icon{to{transform:rotate(360deg)}}.map-add-wizard-body{display:grid;gap:10px;padding:14px;background:#e5e5e5}.map-add-wizard-main,.map-add-wizard-card{display:grid;grid-template-columns:82px minmax(0,1fr) minmax(0,1fr);gap:18px;align-items:center;background:#f4f4f4;padding:16px 20px}.map-add-wizard-card{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;min-height:116px}.map-add-wizard-icon{display:grid;place-items:center;width:62px;height:62px;border:1px solid #cbd5e1;background:#fff;color:#334155;font-size:10px;font-weight:900;text-align:center}.map-add-wizard-modal label{display:grid;gap:5px;color:#64748b;font-size:12px;font-weight:700}.map-add-wizard-modal input,.map-add-wizard-modal select,.map-add-wizard-modal textarea{width:100%;min-height:54px;border:1px solid #cbd5e1;border-radius:0;background:#f8f8f8;color:#020617;padding:10px 14px;font-size:16px;outline:0}.map-add-wizard-modal input[type=color]{padding:8px}.map-add-wizard-modal textarea{resize:vertical}.map-add-wide{grid-column:1 / -1}.network-design-shell{position:relative;height:calc(100vh - 76px);min-height:640px;overflow:hidden;border-top:1px solid var(--line);background:#0f172a}main>section.network-design-shell{margin:-18px 0 0}.network-design-map{position:absolute;top:0;right:0;bottom:0;left:0}.network-design-toolbar{position:absolute;z-index:5;top:14px;left:14px;right:14px;display:grid;grid-template-columns:minmax(180px,280px) minmax(240px,1fr) auto;gap:10px;align-items:center;pointer-events:none}.network-design-toolbar>*,.network-design-search,.network-design-actions{pointer-events:auto}.network-design-toolbar>div:first-child,.network-design-search,.network-design-actions{min-height:46px;border:1px solid rgba(15,23,42,.12);background:#fffffff5;box-shadow:0 12px 28px #0f172a2e}.network-design-toolbar>div:first-child{display:grid;gap:2px;padding:8px 12px}.network-design-toolbar strong{font-size:15px}.network-design-toolbar span{color:#64748b;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.network-design-search{display:grid;grid-template-columns:20px 1fr auto;gap:8px;align-items:center;padding:0 8px 0 12px}.network-design-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:#0f172a}.network-design-search button,.network-design-actions button{min-height:34px;border:1px solid #cbd5e1;background:#f8fafc;color:#0f172a;padding:0 12px;font-weight:800}.network-design-actions{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:5px}.network-design-actions button{display:inline-flex;align-items:center;justify-content:center}.network-design-route-panel{position:absolute;z-index:4;left:14px;bottom:18px;width:min(340px,calc(100vw - 28px));pointer-events:none}.network-design-route-panel>div{display:grid;gap:5px;border:1px solid rgba(15,23,42,.14);background:#fffffff5;box-shadow:0 14px 30px #0f172a38;padding:12px 14px}.network-design-route-panel>div.drawing{border-color:#bfdbfe;background:#eff6fff7}.network-design-route-panel strong{color:#0f172a;font-size:13px;font-weight:800}.network-design-route-panel span,.network-design-route-panel b,.network-design-route-panel small{color:#475569;font-size:12px;font-weight:650}.network-design-route-panel b{color:#ea580c}.network-design-route-panel>div.drawing b{color:#2563eb}.network-design-actions button.active{border-color:#2563eb;background:#2563eb;color:#fff}.network-design-loading{height:100%;display:grid;place-items:center;align-content:center;gap:10px;color:#fff;background:#0f172a;font-weight:800}.network-design-context-menu{position:fixed;z-index:20;min-width:220px;border:1px solid rgba(15,23,42,.12);background:#fffffffa;box-shadow:0 18px 38px #0f172a38;padding:8px 0}.network-design-context-menu span{display:block;padding:8px 18px;color:#94a3b8;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.network-design-context-menu button{width:100%;min-height:46px;border:0;background:transparent;color:#0f172a;padding:0 18px;text-align:left;font-size:16px}.network-design-context-menu button:hover{background:#f1f5f9;color:#2563eb}.network-design-device-modal{width:min(84vw,960px);min-height:auto;max-height:min(82vh,720px);overflow:auto;background:#ededed}.network-design-device-modal .ticket-modal-header h2{color:#06f}.network-design-device-body{display:grid;grid-template-columns:54px minmax(190px,1fr) minmax(190px,1fr);gap:12px;align-items:center;margin:10px 14px;padding:14px 18px;background:#f7f7f7}.network-design-device-icon{width:50px;height:50px;display:grid;place-items:center;border:1px solid #9ca3af;background:#fff;color:#4b5563}.network-design-device-body label{display:grid;gap:5px;color:#64748b;font-size:12px;font-weight:700}.network-design-device-body input,.network-design-device-body select{width:100%;min-height:50px;border:1px solid #cbd5e1;border-radius:0;background:#f8f8f8;color:#020617;padding:8px 12px;font-size:15px;font-weight:600;outline:0}.network-design-add-button{color:#2563eb;font-size:28px;line-height:1}.network-design-device-submenu{position:relative;min-height:150px;margin:0 12px 12px;padding:14px 16px;border:1px solid #d1d5db;background:#f7f7f7}.network-design-device-submenu label{width:210px;display:grid;gap:5px;color:#64748b;font-size:12px;font-weight:700}.network-design-device-submenu select,.network-design-item-select{width:100%;min-height:48px;border:1px solid #cbd5e1;border-radius:0;background:#f8f8f8;color:#020617;padding:8px 12px;font-size:15px;font-weight:600;outline:0}.network-design-item-select{display:flex;align-items:center;justify-content:space-between;text-align:left}.network-design-item-select b{color:#2563eb;font-size:16px}.network-design-item-menu{position:absolute;top:66px;left:18px;z-index:3;width:210px;max-height:250px;overflow:auto;background:#e5e5e5;border:1px solid #cbd5e1;border-top:2px solid #111827;box-shadow:0 12px 24px #0f172a38}.network-design-item-menu button{width:100%;min-height:42px;border:0;border-bottom:1px solid #c8c8c8;background:transparent;color:#111827;padding:0 14px;text-align:left;font-size:14px;font-weight:500}.network-design-item-menu button:hover{background:#f8fafc}.network-design-item-options{position:absolute;top:16px;left:238px;right:14px;display:grid;grid-template-columns:56px repeat(4,minmax(96px,1fr));gap:10px;align-items:end}.network-design-item-options label{width:auto}.network-design-item-options select,.network-design-item-options input{width:100%;min-height:48px;border:1px solid #cbd5e1;border-radius:0;background:#f8f8f8;color:#020617;padding:8px 10px;font-size:14px;font-weight:500;outline:0}.network-design-item-options input[type=color]{padding:10px}.network-design-item-thumb{width:62px;height:52px;display:grid;place-items:center;position:relative;border:1px solid #d1d5db;background:#fff;color:#334155;overflow:hidden}.network-design-item-thumb i{position:absolute;display:block}.network-design-item-thumb.rack-device i:first-child,.network-design-item-thumb.generic i:first-child,.network-design-item-thumb.onu i:first-child{width:48px;height:12px;top:15px;left:7px;border:1px solid #64748b;background:linear-gradient(180deg,#1f2937,#475569)}.network-design-item-thumb.rack-device i:nth-child(2),.network-design-item-thumb.generic i:nth-child(2),.network-design-item-thumb.onu i:nth-child(2){width:46px;height:11px;top:30px;left:8px;border:1px solid #64748b;background:linear-gradient(180deg,#111827,#64748b);transform:skewY(-7deg)}.network-design-item-thumb.cable i:first-child,.network-design-item-thumb.splitter i:first-child{width:44px;height:18px;border:4px solid #f59e0b;border-radius:999px;background:transparent}.network-design-item-thumb.cable i:nth-child(2),.network-design-item-thumb.splitter i:nth-child(2){width:48px;height:4px;top:33px;left:7px;background:#0ea5e9;transform:rotate(-12deg)}.network-design-item-thumb.panel i:first-child{width:48px;height:18px;background:#e5e7eb;border:1px solid #64748b}.network-design-item-thumb.panel i:nth-child(2){width:40px;height:3px;top:29px;background:repeating-linear-gradient(90deg,#334155 0 4px,transparent 4px 8px)}.network-design-item-thumb span{position:absolute;bottom:4px;right:6px;color:#64748b;font-size:9px;font-weight:900}.network-design-saved-item-card .network-design-item-thumb{width:48px;height:42px}.network-design-saved-item-card .network-design-item-thumb.rack-device i:first-child,.network-design-saved-item-card .network-design-item-thumb.generic i:first-child,.network-design-saved-item-card .network-design-item-thumb.onu i:first-child{width:36px;height:9px;top:12px;left:6px}.network-design-saved-item-card .network-design-item-thumb.rack-device i:nth-child(2),.network-design-saved-item-card .network-design-item-thumb.generic i:nth-child(2),.network-design-saved-item-card .network-design-item-thumb.onu i:nth-child(2){width:34px;height:8px;top:24px;left:7px}.network-design-saved-item-card .network-design-item-thumb.panel i:first-child{width:36px;height:14px}.network-design-saved-item-card .network-design-item-thumb.panel i:nth-child(2){width:30px;top:24px}.network-design-saved-item-card .network-design-item-thumb.cable i:first-child,.network-design-saved-item-card .network-design-item-thumb.splitter i:first-child{width:34px;height:14px;border-width:3px}.network-design-saved-item-card .network-design-item-thumb.cable i:nth-child(2),.network-design-saved-item-card .network-design-item-thumb.splitter i:nth-child(2){width:34px;top:27px;left:6px}.network-design-description{grid-column:auto}.network-design-saved-items{display:grid;gap:8px;margin:0 14px 10px;padding:0;background:transparent}.network-design-saved-item-card{display:grid;grid-template-columns:48px minmax(130px,1fr) minmax(120px,.85fr) minmax(150px,1fr) 62px;gap:10px;align-items:center;min-height:68px;border:1px solid #cbd5e1;background:#f7f7f7;padding:9px 12px}.network-design-saved-item-card strong{color:#0f172a;font-size:13px;font-weight:700}.network-design-saved-item-card span,.network-design-saved-item-card small{color:#64748b;font-size:12px;font-weight:500}.network-design-saved-item-card button{min-height:30px;border:1px solid #fecaca;background:#fff7f7;color:#b91c1c;padding:0 10px;font-size:12px;font-weight:700}.network-design-saved-device-card{border-color:#bfdbfe;background:#f8fbff}.network-design-saved-device-card button{border-color:#bbf7d0;background:#f0fdf4;color:#15803d;cursor:default}.network-design-device-info{display:grid;gap:4px;min-width:190px}.network-design-device-info strong{color:#0f172a;font-size:14px}.network-design-device-info span{color:#334155;font-size:13px}.network-design-device-info small{color:#64748b;font-size:11px}.network-design-onu-body{display:grid;grid-template-columns:54px repeat(4,minmax(128px,1fr));gap:12px;align-items:end;margin:10px 14px 14px;padding:16px 18px;border:1px solid #dbe3ef;background:#f7f7f7}.network-design-onu-icon{width:50px;height:50px;display:grid;place-items:center;align-self:center;border:1px solid #9ca3af;background:#fff;color:#16a34a}.network-design-onu-body label{display:grid;gap:5px;color:#64748b;font-size:12px;font-weight:700}.network-design-onu-body input,.network-design-onu-body select{width:100%;min-height:48px;border:1px solid #cbd5e1;border-radius:0;background:#f8f8f8;color:#020617;padding:8px 12px;font-size:14px;font-weight:600;outline:0}.network-design-onu-wide{grid-column:2 / -1}.network-design-onu-summary{display:grid;grid-template-columns:92px minmax(130px,1fr) minmax(110px,.7fr) minmax(120px,.8fr) minmax(150px,1fr) 80px 70px;gap:10px;align-items:center;min-height:58px;margin:0 14px 14px;padding:8px 12px;border:1px solid #bfdbfe;background:#f8fbff}.network-design-onu-items{display:grid;gap:8px;margin:0 14px 10px}.network-design-onu-submenu{min-height:140px}.network-design-onu-item-options{grid-template-columns:56px repeat(5,minmax(88px,1fr))}.network-design-onu-item-options .network-design-description{grid-column:auto}.network-design-onu-summary strong{color:#0f172a;font-size:13px;font-weight:700}.network-design-onu-summary span,.network-design-onu-summary small{color:#64748b;font-size:12px;font-weight:500}.network-design-onu-summary button{min-height:30px;border:1px solid #fecaca;background:#fff7f7;color:#b91c1c;padding:0 10px;font-size:12px;font-weight:700}.network-design-onu-status{display:inline-grid;min-height:28px;place-items:center;border:1px solid #cbd5e1;background:#f8fafc;color:#475569;padding:0 9px;font-size:11px;font-weight:800;text-align:center;text-transform:uppercase}.network-design-onu-status.healthy{border-color:#86efac;background:#f0fdf4;color:#15803d}.network-design-onu-status.warning{border-color:#fde68a;background:#fffbeb;color:#b45309}.network-design-onu-status.fault{border-color:#fecaca;background:#fff7f7;color:#b91c1c}@media (max-width: 920px){.network-design-onu-body{grid-template-columns:54px 1fr}.network-design-onu-wide{grid-column:2}.network-design-onu-summary{grid-template-columns:1fr}}.map-splitter-form{display:grid;gap:6px;min-width:180px}.location-picker-map{height:min(50vh,420px);margin:0 18px 14px;border-radius:10px;overflow:hidden;border:1px solid var(--line)}.location-picker-modal .noc-config-grid{padding:0 18px 14px}.map-loading{height:100%;width:100%;display:flex;align-items:center;justify-content:center;color:var(--muted);background:var(--panel-2)}.gm-style .gm-style-iw-c{padding:12px}.gm-style .gm-style-iw-d{overflow:hidden!important}.gm-style .gm-style-iw-d div{display:grid;gap:4px}.gm-style .gm-style-iw-d button{justify-self:start;margin-top:4px}@media (max-width: 900px){.network-map-split{grid-template-columns:1fr}.topology-panel,.enterprise-map{min-height:auto;max-height:none;height:520px}.wa-inbox-layout{grid-template-columns:1fr}.wa-thread-list{border-right:0;border-bottom:1px solid var(--line)}.wa-conversation-head,.wa-reply-box{grid-template-columns:1fr;align-items:stretch}.wa-conversation-head,.wa-assignment{flex-direction:column;align-items:stretch}.wa-message{max-width:100%}.ticket-stat-row,.ticket-filter-grid,.ticket-modal-grid,.lead-location-head,.lead-location-grid,.lead-coordinates,.lead-section-grid,.lead-services-grid,.lead-requirement-row{grid-template-columns:1fr}.ticket-modal-backdrop{padding:10px}.ticket-create-modal{width:100%;border-width:6px}.ticket-modal-grid{gap:14px;padding:12px}.ticket-modal-grid input,.ticket-modal-grid select,.ticket-modal-grid textarea{min-height:52px;font-size:16px}}
