:root{color-scheme:light;--app-primary:#2457d6;--app-primary-dark:#1742b3;--app-primary-soft:#edf3ff;--app-canvas:#f4f6f8;--app-surface:#ffffff;--app-surface-subtle:#f8fafc;--app-border:#dce2e9;--app-border-strong:#c9d1dc;--app-text:#182230;--app-text-muted:#687386;--app-text-faint:#8c97a8;--app-success:#15965b;--app-warning:#d98200;--app-danger:#c93737;--app-sidebar-width:76px;--app-topbar-height:70px;font-family:Inter,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background:var(--app-canvas);color:var(--app-text)}:root[data-theme=dark]{color-scheme:dark;--app-primary:#7c94ff;--app-primary-dark:#b7c5ff;--app-primary-soft:rgba(124,148,255,.16);--app-canvas:#08111f;--app-surface:#101827;--app-surface-subtle:#151f30;--app-border:#27364d;--app-border-strong:#3a4b66;--app-text:#eef4ff;--app-text-muted:#b7c4d7;--app-text-faint:#8391a7;--app-success:#4ade80;--app-warning:#f6b73c;--app-danger:#ff6b6b}:root[data-theme=dark],body,html{background:var(--app-canvas);color:var(--app-text)}body,html{min-height:100%}body{background:var(--app-canvas)}button,input,select{font:inherit}.network-dashboard{width:auto;max-width:none;min-height:100vh;margin:0 0 0 var(--app-sidebar-width);padding:18px 24px 32px;overflow-x:clip;background:var(--app-canvas);color:var(--app-text)}.app-sidebar{position:fixed;z-index:3000;inset:0 auto 0 0;width:var(--app-sidebar-width);display:flex;flex-direction:column;gap:0;margin:0;padding:18px 14px;border:0;border-right:1px solid var(--app-border);border-radius:0;background:var(--app-surface);box-shadow:4px 0 18px rgba(29,45,69,.04);color:var(--app-text);overflow:visible}.sidebar-brand{display:grid;place-items:center;min-height:48px;margin:0 0 24px}.sidebar-brand img{width:38px;height:38px;flex:0 0 auto;border-radius:10px;object-fit:cover}.sidebar-brand div,.sidebar-user div{min-width:0}.sidebar-brand div,.sidebar-links a>span:last-of-type,.sidebar-section-label,.sidebar-user div,.surface-logout span,.surface-theme-toggle span{display:none}.sidebar-brand span,.sidebar-brand strong,.sidebar-user span,.sidebar-user strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-brand strong{color:var(--app-text);font-size:.94rem;letter-spacing:-.01em}.sidebar-brand span{margin-top:2px;color:var(--app-text-muted);font-size:.68rem}.sidebar-section-label{margin:12px 10px 7px;color:var(--app-text-faint);font-size:.61rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.sidebar-links{display:grid;grid-gap:9px;gap:9px}.network-dashboard .surface-nav a,.surface-nav a{width:100%;min-width:0;min-height:42px;display:flex;align-items:center;justify-content:center;gap:11px;padding:0;border:1px solid transparent;border-radius:8px;background:transparent;color:#4f5c6e;text-decoration:none;font-size:.78rem;font-weight:650;line-height:1;position:relative;transition:background .14s ease,color .14s ease,border-color .14s ease}.surface-nav a em{left:calc(100% + 12px);z-index:3100;min-width:max-content;padding:7px 10px;border:1px solid rgba(24,34,48,.08);border-radius:9px;color:#fff;box-shadow:0 12px 26px rgba(23,32,51,.22);font-size:.72rem;font-style:normal;font-weight:800;opacity:0;pointer-events:none;transform:translateY(-50%) translateX(-4px);transition:opacity .14s ease,transform .14s ease;white-space:nowrap}.surface-nav a em,.surface-nav a em:before{position:absolute;top:50%;background:#172033}.surface-nav a em:before{left:-5px;width:9px;height:9px;content:"";transform:translateY(-50%) rotate(45deg)}.surface-nav a:focus-visible em,.surface-nav a:hover em{opacity:1;transform:translateY(-50%) translateX(0)}.network-dashboard .surface-nav a:hover,.surface-nav a:hover{border-color:#e7ebf0;background:#f6f8fb;color:var(--app-text)}.network-dashboard .surface-nav a.surface-active,.surface-nav a.surface-active{border-color:#dbe5ff;background:var(--app-primary-soft);color:var(--app-primary);box-shadow:none}.network-dashboard .surface-nav .surface-nav-icon,.sidebar-nav-symbol{width:24px;height:24px;flex:0 0 24px;display:grid;place-items:center;margin:0;border:1px solid #dfe5ed;border-radius:6px;background:#fff;color:currentColor;font-size:.68rem;font-weight:800}.network-dashboard .surface-nav .surface-nav-icon svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.9}.sidebar-footer{display:grid;grid-gap:10px;gap:10px;margin-top:auto;padding-top:16px;border-top:1px solid var(--app-border)}.sidebar-user{display:flex;align-items:center;gap:9px;min-width:0;justify-content:center;padding:0}.sidebar-avatar{width:31px;height:31px;flex:0 0 31px;display:grid;place-items:center;border-radius:50%;background:var(--app-primary);color:#fff;font-size:.75rem;font-weight:800}.sidebar-user strong{color:var(--app-text);font-size:.71rem}.sidebar-user span{margin-top:2px;color:var(--app-text-faint);font-size:.59rem}.surface-theme-toggle{width:42px;height:38px;display:flex;align-items:center;justify-content:center;gap:8px;position:relative;margin:0 auto;border:1px solid #dbe5ff;border-radius:8px;background:var(--app-primary-soft);color:var(--app-primary);box-shadow:none;cursor:pointer;font-size:.72rem;font-weight:700}.surface-theme-toggle:hover{border-color:var(--app-primary);background:#e4ecff;color:var(--app-primary-dark)}.surface-theme-toggle svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.surface-theme-toggle em{position:absolute;left:calc(100% + 12px);top:50%;z-index:3100;min-width:max-content;padding:7px 10px;border:1px solid rgba(24,34,48,.08);border-radius:9px;background:#172033;color:#fff;box-shadow:0 12px 26px rgba(23,32,51,.22);font-size:.72rem;font-style:normal;font-weight:800;opacity:0;pointer-events:none;transform:translateY(-50%) translateX(-4px);transition:opacity .12s ease,transform .12s ease}.surface-theme-toggle em:before{content:"";position:absolute;right:100%;top:50%;border:6px solid transparent;border-right-color:#172033;transform:translateY(-50%)}.surface-theme-toggle:focus-visible em,.surface-theme-toggle:hover em{opacity:1;transform:translateY(-50%) translateX(0)}:root[data-theme=dark] .surface-theme-toggle{border-color:rgba(255,212,90,.34);background:rgba(255,212,90,.12);color:#ffd45a}:root[data-theme=dark] .surface-theme-toggle:hover{border-color:rgba(255,212,90,.68);background:rgba(255,212,90,.18);color:#ffe58a}.surface-logout{width:42px;height:38px;display:flex;align-items:center;justify-content:center;gap:8px;border:1px solid #f0d2d2;border-radius:8px;background:#fff8f8;color:#b83838;box-shadow:none;font-size:.72rem;font-weight:700;margin:0 auto}.surface-logout:hover{border-color:#e4b7b7;background:#fff0f0;color:#9c2929}.surface-logout svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.sidebar-user{display:none!important}.sidebar-backdrop,.sidebar-mobile-trigger{display:none}.network-header{min-height:var(--app-topbar-height);display:flex;align-items:center;justify-content:space-between;gap:18px;margin:-18px -24px 18px calc(-24px - var(--app-sidebar-width));padding:12px 24px 12px calc(24px + var(--app-sidebar-width));border:0;border-bottom:1px solid var(--app-border);background:rgba(255,255,255,.96);box-shadow:0 2px 10px rgba(31,47,69,.03);-webkit-backdrop-filter:none;backdrop-filter:none}.network-header>div:first-child{min-width:0;display:flex;align-items:center;gap:16px}.network-header .eyebrow,.network-header>div:first-child>p{display:none}.network-header h1{order:-1;margin:0;color:var(--app-text);font-size:1.22rem;font-weight:720;line-height:1.1;letter-spacing:-.025em;white-space:nowrap}.city-selector{display:inline-flex;align-items:center;gap:7px}.city-selector>span{color:var(--app-text-muted);font-size:.62rem}.city-selector select{min-width:205px;height:36px;border:1px solid var(--app-border-strong);border-radius:7px;background:#fff;color:var(--app-text);font-size:.75rem}.city-selector select:focus{border-color:var(--app-primary);box-shadow:0 0 0 3px rgba(36,87,214,.1)}.header-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin:0}.network-dashboard .power-sync-button,.network-dashboard .sync-button{min-height:36px;padding:0 13px;border:1px solid var(--app-primary);border-radius:7px;background:var(--app-primary);color:#fff;box-shadow:none;font-size:.69rem;font-weight:720}.network-dashboard .power-sync-button{border-color:var(--app-border-strong);background:#fff;color:#435069}.network-dashboard .sync-button:hover{background:var(--app-primary-dark);box-shadow:none;filter:none;transform:none}.header-action-message{border-radius:6px;font-size:.66rem}.power-last-updated{flex-basis:100%;color:#6f7b90;font-size:.66rem;text-align:right}.power-last-updated strong{color:#26344d;font-weight:720}.network-content-flow{gap:12px}.network-dashboard .attention-list,.network-dashboard .investigation-context,.network-dashboard .map-panel,.network-dashboard .network-toolbar,.network-dashboard .power-panel,.network-dashboard .security-card,.network-dashboard .selected-accesses,.network-dashboard section{border-color:var(--app-border);background:var(--app-surface);box-shadow:0 2px 8px rgba(31,47,69,.035);-webkit-backdrop-filter:none;backdrop-filter:none}.network-dashboard .network-summary{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;overflow:hidden;border:1px solid var(--app-border);border-radius:10px;background:var(--app-border);box-shadow:0 2px 8px rgba(31,47,69,.03)}.network-dashboard .network-summary article{min-height:82px;padding:13px 15px;border:0;background:#fff}.network-dashboard .network-summary article:after{display:none}.network-dashboard .network-summary span{color:var(--app-text-muted);font-size:.59rem;letter-spacing:.075em}.network-dashboard .network-summary article:last-child strong,.network-dashboard .network-summary strong{margin:8px 0 3px;color:var(--app-text);font-size:1.35rem;line-height:1}.network-dashboard .network-summary article:last-child strong{max-width:none}.network-dashboard .network-summary small{color:var(--app-text-faint);font-size:.61rem}.network-dashboard .network-summary .metric-icon{width:18px;height:18px;color:var(--app-primary)}.network-dashboard .network-summary .metric-icon svg{width:16px;height:16px}.network-dashboard .network-toolbar{display:grid;grid-template-columns:minmax(260px,.85fr) minmax(420px,1.4fr);grid-gap:10px 18px;gap:10px 18px;padding:12px;border-radius:10px}.network-dashboard .selection-bar{grid-column:1/-1;min-height:34px;padding:0 4px 8px;border-bottom:1px solid var(--app-border);color:var(--app-text-muted)}.network-dashboard .clear-filters,.network-dashboard .context-actions button,.network-dashboard .history-button,.network-dashboard .selection-bar button{border-color:var(--app-border-strong);border-radius:7px;background:#fff;color:#455269;box-shadow:none}.infra-layer-controls fieldset>legend,.network-dashboard .box-layer-filter legend,.network-dashboard .filter-field>span,.network-dashboard .global-search label{color:var(--app-text-muted)}.network-dashboard .filter-field select,.network-dashboard .global-search input,.network-dashboard .infra-search input,.security-form input,.security-form select{border-color:var(--app-border-strong);background:#fff;color:var(--app-text)}.network-dashboard .filter-field select:focus,.network-dashboard .global-search input:focus,.network-dashboard .infra-search input:focus,.security-form input:focus,.security-form select:focus{border-color:var(--app-primary);box-shadow:0 0 0 3px rgba(36,87,214,.09)}.network-dashboard .global-search button{border-radius:0 7px 7px 0;background:var(--app-primary);color:#fff}.network-dashboard .quick-search-hint{color:var(--app-text-faint)}.box-layer-filter fieldset,.infra-layer-controls fieldset{border-color:var(--app-border)}.box-layer-options,.infra-layer-options{gap:6px}.box-layer-toggle,.infra-layer-toggle{min-height:32px;border-color:var(--app-border);border-radius:7px;background:#fff;color:#4e5a6d;font-size:.66rem}.box-layer-toggle:hover,.infra-layer-toggle:hover{border-color:var(--app-border-strong);background:#f8fafc}.network-dashboard .map-panel{overflow:hidden;border-radius:10px;background:#fff}.network-dashboard .panel-title{min-height:52px;padding:9px 13px;border-bottom-color:var(--app-border);background:#fff}.network-dashboard .panel-title span,.network-dashboard .section-title span{color:var(--app-primary)}.network-dashboard .panel-title h2,.network-dashboard .section-title h2{color:var(--app-text);font-size:.92rem}.network-dashboard .base-map-toggle,.network-dashboard .cable-legend{border-color:var(--app-border);background:var(--app-surface-subtle);color:var(--app-text-muted)}.network-dashboard .base-map-toggle button{color:var(--app-text-muted)}.network-dashboard .base-map-toggle button.active{background:var(--app-primary);color:#fff;box-shadow:none}.network-dashboard .map-status-legend{border-top-color:var(--app-border);background:#fff;color:var(--app-text-muted)}.network-dashboard .map-status-legend strong{color:#4b586b}.network-dashboard .power-summary{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1px;overflow:hidden;border:1px solid var(--app-border);border-radius:10px;background:var(--app-border)}.network-dashboard .power-attention-card,.network-dashboard .power-summary>div{min-height:72px;padding:12px 14px;border:0;border-radius:0;background:#fff;box-shadow:none}.network-dashboard .power-summary small,.network-dashboard .power-summary span{color:var(--app-text-muted)}.network-dashboard .power-summary strong{color:var(--app-text)}.network-dashboard .power-attention-card{border-left:3px solid #9adb29;background:#fbfff4}.network-dashboard .power-attention-card:before{display:none}.network-dashboard .power-attention-card .power-attention-action,.network-dashboard .power-attention-card>span,.network-dashboard .power-attention-card>strong{color:#477c0b}.network-dashboard .power-attention-card.active,.network-dashboard .power-attention-card:focus-visible,.network-dashboard .power-attention-card:hover{border-color:#9adb29;background:#f5ffe8;box-shadow:none;transform:none}.network-dashboard .attention-list,.network-dashboard .investigation-context,.network-dashboard .power-panel,.network-dashboard .selected-accesses{border-radius:10px}.ce-summary-grid div,.context-metrics div,.infra-detail-grid div,.power-detail-metrics div{border-color:var(--app-border);background:var(--app-surface-subtle)}.network-dashboard .attention-client-row,.network-dashboard .attention-column,.network-dashboard .attention-cto-row,.network-dashboard .attention-group-tile,.network-dashboard .client-power-detail,.network-dashboard .report-filters,.network-dashboard .report-meta span,.network-dashboard .report-table-wrap{border-color:var(--app-border);background:#fff}.network-dashboard .attention-client-row b,.network-dashboard .attention-client-row strong,.network-dashboard .attention-cto-row b,.network-dashboard .attention-cto-row strong,.network-dashboard .attention-group-tile strong,.network-dashboard td{color:var(--app-text)}.network-dashboard .attention-client-row span,.network-dashboard .attention-cto-row span,.network-dashboard .attention-group-tile span,.network-dashboard th{color:var(--app-text-muted)}.network-dashboard table{background:#fff}.network-dashboard td,.network-dashboard th{border-color:var(--app-border)}.infra-toolbar{grid-template-columns:minmax(240px,.7fr) minmax(420px,1.5fr)}.network-dashboard .infra-map-side{display:grid;grid-gap:14px;gap:14px;min-width:0;align-content:start;align-self:start}.network-dashboard .infra-workspace{align-items:start!important}.network-dashboard .infra-workspace>.map-panel{align-self:start!important}.network-dashboard .infra-filter-rail{grid-template-columns:1fr;gap:12px;padding:12px;margin:0;border:1px solid var(--app-border)!important;border-radius:14px;background:#fff!important;color:var(--app-text)!important;box-shadow:0 2px 8px rgba(31,47,69,.035)}.network-dashboard .infra-filter-rail .infra-attribute-filters,.network-dashboard .infra-filter-rail .infra-layer-controls{grid-template-columns:1fr;grid-column:auto}.network-dashboard .infra-filter-rail .infra-layer-options{display:flex;flex-wrap:wrap;align-items:center;gap:7px}.network-dashboard .infra-filter-rail .infra-layer-controls{gap:10px;border:0!important;background:transparent!important}.network-dashboard .infra-filter-rail .infra-layer-controls fieldset{min-width:0;border-color:var(--app-border)!important;border-radius:12px;background:#fff!important;padding:10px}.network-dashboard .infra-filter-rail .infra-layer-controls legend{color:var(--app-text-muted)!important;background:#fff;text-shadow:none!important}.network-dashboard .infra-filter-rail .infra-layer-controls small{color:var(--app-text-muted)!important;text-shadow:none!important}.network-dashboard .infra-filter-rail .infra-layer-toggle{width:auto;flex:0 0 auto;min-height:28px;padding:5px 10px;border-radius:999px;font-size:.68rem;line-height:1;white-space:nowrap}.network-dashboard .infra-filter-rail .infra-layer-toggle.active:after{display:none}.network-dashboard .infra-filter-rail .clear-filters,.network-dashboard .infra-filter-rail .filter-field{width:100%}.infra-attribute-filters{grid-column:1/-1}.ce-cable-card,.ce-diagram-panel,.ce-modal,.ce-splice-note,.selected-accesses{border-color:var(--app-border);background:#fff;color:var(--app-text)}.ce-cable-card p,.ce-cable-card small,.ce-diagram-panel .section-title small,.ce-splice-note p{color:var(--app-text-muted)}.network-dashboard .ce-panel-close-row{justify-content:flex-end}.network-dashboard .ce-panel-close{border-color:var(--app-border-strong);background:#fff;color:var(--app-primary-dark);text-shadow:none;box-shadow:none}.network-dashboard .ce-modal header h2{color:var(--app-text)!important;text-shadow:none!important}.network-dashboard .ce-modal header p{color:var(--app-text-muted)!important}.network-dashboard .city-selector select,.network-dashboard .city-selector select option,.network-dashboard select,.network-dashboard select option{color-scheme:light;background-color:#fff!important;color:var(--app-text)!important}.network-dashboard .alert-report-preview,.network-dashboard .attention-column,.network-dashboard .attention-list,.network-dashboard .box-layer-filter fieldset,.network-dashboard .client-power-detail,.network-dashboard .investigation-context,.network-dashboard .map-status-legend,.network-dashboard .map-status-legend>div,.network-dashboard .network-toolbar,.network-dashboard .power-panel,.network-dashboard .report-filters,.network-dashboard .report-table-wrap,.network-dashboard .selected-accesses,.network-dashboard .selection-bar{border-color:var(--app-border)!important;background:#fff!important;color:var(--app-text)!important;box-shadow:0 2px 8px rgba(31,47,69,.035)!important}.network-dashboard .selection-bar{border-bottom-color:var(--app-border)!important}.network-dashboard .alert-report-preview .section-title span,.network-dashboard .attention-column-title span,.network-dashboard .box-layer-filter legend,.network-dashboard .context-metrics span,.network-dashboard .map-status-legend strong,.network-dashboard .report-filters label span,.network-dashboard .selection-bar span{color:var(--app-text-muted)!important;text-shadow:none!important}.network-dashboard .affected-filters button,.network-dashboard .attention-tabs button,.network-dashboard .clear-filters,.network-dashboard .context-actions button,.network-dashboard .history-button,.network-dashboard .report-actions button,.network-dashboard .report-filters button,.network-dashboard .selection-bar button{border-color:var(--app-border-strong)!important;background:#fff!important;color:var(--app-text)!important;text-shadow:none!important;box-shadow:none!important}.network-dashboard .box-layer-toggle,.network-dashboard .infra-layer-toggle{border-color:var(--app-border-strong)!important;background:#fff!important;color:var(--app-text)!important;text-shadow:none!important;opacity:.56;position:relative}.network-dashboard .box-layer-toggle.active,.network-dashboard .infra-layer-toggle.active{border-color:var(--app-primary)!important;background:#eaf1ff!important;color:var(--app-primary-dark)!important;opacity:1;box-shadow:inset 0 0 0 1px rgba(36,87,214,.18),0 2px 7px rgba(36,87,214,.1)!important}.network-dashboard .affected-filters button.active,.network-dashboard .attention-tabs button.active,.network-dashboard .report-filters button.active{border-color:var(--app-primary)!important;background:var(--app-primary)!important;color:#fff!important}.network-dashboard .box-layer-toggle.active:after,.network-dashboard .infra-layer-toggle.active:after{width:6px;height:6px;border-radius:999px;background:var(--app-primary);content:"";position:absolute;top:6px;right:6px}.network-dashboard .context-metrics div,.network-dashboard .power-detail-metrics div{border-color:var(--app-border)!important;background:var(--app-surface-subtle)!important;color:var(--app-text)!important}.network-dashboard .alert-report-preview .section-title h2,.network-dashboard .attention-column-title strong,.network-dashboard .context-metrics strong,.network-dashboard .report-table-wrap td,.network-dashboard .report-table-wrap th{color:var(--app-text)!important;text-shadow:none!important}.network-dashboard .attention-tabs{border-color:var(--app-border)!important;background:var(--app-surface-subtle)!important;box-shadow:none!important}.network-dashboard .attention-investigation{gap:12px}.network-dashboard .affected-filters,.network-dashboard .attention-column-title{border-color:var(--app-border)!important;background:var(--app-surface-subtle)!important}.network-dashboard .attention-client-row,.network-dashboard .attention-cto-row,.network-dashboard .attention-group-tile{border-color:var(--app-border)!important;background:#fff!important;color:var(--app-text)!important;text-shadow:none!important}.network-dashboard .attention-client-row.active,.network-dashboard .attention-cto-row.active,.network-dashboard .attention-group-tile.active{border-color:var(--app-primary)!important;background:#eaf1ff!important;box-shadow:inset 0 0 0 1px rgba(36,87,214,.16),0 4px 12px rgba(36,87,214,.12)!important}.network-dashboard .attention-client-row.active b,.network-dashboard .attention-client-row.active span,.network-dashboard .attention-client-row.active strong,.network-dashboard .attention-cto-row.active b,.network-dashboard .attention-cto-row.active span,.network-dashboard .attention-cto-row.active strong,.network-dashboard .attention-group-tile.active b,.network-dashboard .attention-group-tile.active span,.network-dashboard .attention-group-tile.active strong{color:var(--app-text)!important}.network-dashboard .attention-client-row b,.network-dashboard .attention-client-row span,.network-dashboard .attention-client-row strong,.network-dashboard .attention-empty{color:var(--app-text)!important;text-shadow:none!important}.network-dashboard .report-filters input{border-color:var(--app-border-strong)!important;background:#fff!important;color:var(--app-text)!important}.network-dashboard .report-filters input:focus{border-color:var(--app-primary)!important;box-shadow:0 0 0 3px rgba(36,87,214,.09)!important}:root[data-theme=dark] .network-dashboard,:root[data-theme=dark] body{background:var(--app-canvas);color:var(--app-text)}:root[data-theme=dark] .app-sidebar{box-shadow:4px 0 20px rgba(0,0,0,.32)}:root[data-theme=dark] .network-header{border-bottom-color:var(--app-border);background:rgba(16,24,39,.96);box-shadow:0 2px 12px rgba(0,0,0,.24)}:root[data-theme=dark] .network-dashboard .surface-nav .surface-nav-icon{border-color:var(--app-border);background:var(--app-surface-subtle)}:root[data-theme=dark] .network-dashboard .surface-nav a:hover,:root[data-theme=dark] .surface-nav a:hover{border-color:var(--app-border-strong);background:var(--app-surface-subtle);color:var(--app-text)}:root[data-theme=dark] .network-dashboard .sync-button{color:#fff}:root[data-theme=dark] .network-dashboard .power-sync-button{border-color:var(--app-border-strong);background:var(--app-surface-subtle);color:var(--app-text)}:root[data-theme=dark] .network-dashboard .power-last-updated{color:var(--app-text-muted)}:root[data-theme=dark] .network-dashboard .power-last-updated strong{color:var(--app-text)}:root[data-theme=dark] .network-dashboard .city-selector select,:root[data-theme=dark] .network-dashboard .city-selector select option,:root[data-theme=dark] .network-dashboard select,:root[data-theme=dark] .network-dashboard select option{color-scheme:dark;background-color:var(--app-surface-subtle)!important;color:var(--app-text)!important}:root[data-theme=dark] .network-dashboard input,:root[data-theme=dark] .network-dashboard textarea,:root[data-theme=dark] .security-form input,:root[data-theme=dark] .security-form select{color-scheme:dark;border-color:var(--app-border-strong)!important;background:var(--app-surface-subtle)!important;color:var(--app-text)!important}:root[data-theme=dark] .network-dashboard input::placeholder,:root[data-theme=dark] .network-dashboard textarea::placeholder{color:var(--app-text-faint)!important}:root[data-theme=dark] .network-dashboard .alert-report-preview,:root[data-theme=dark] .network-dashboard .attention-column,:root[data-theme=dark] .network-dashboard .attention-list,:root[data-theme=dark] .network-dashboard .box-layer-filter fieldset,:root[data-theme=dark] .network-dashboard .ce-cable-card,:root[data-theme=dark] .network-dashboard .ce-diagram-panel,:root[data-theme=dark] .network-dashboard .ce-modal,:root[data-theme=dark] .network-dashboard .ce-splice-note,:root[data-theme=dark] .network-dashboard .client-power-detail,:root[data-theme=dark] .network-dashboard .empty-network,:root[data-theme=dark] .network-dashboard .infra-filter-rail,:root[data-theme=dark] .network-dashboard .investigation-context,:root[data-theme=dark] .network-dashboard .loading-network,:root[data-theme=dark] .network-dashboard .map-status-legend,:root[data-theme=dark] .network-dashboard .map-status-legend>div,:root[data-theme=dark] .network-dashboard .network-toolbar,:root[data-theme=dark] .network-dashboard .permission-guide-list>div,:root[data-theme=dark] .network-dashboard .power-panel,:root[data-theme=dark] .network-dashboard .report-filters,:root[data-theme=dark] .network-dashboard .report-table-wrap,:root[data-theme=dark] .network-dashboard .role-guide-list>div,:root[data-theme=dark] .network-dashboard .security-card,:root[data-theme=dark] .network-dashboard .security-details,:root[data-theme=dark] .network-dashboard .security-editor-modal,:root[data-theme=dark] .network-dashboard .security-guide-card,:root[data-theme=dark] .network-dashboard .security-user-layout,:root[data-theme=dark] .network-dashboard .selected-accesses,:root[data-theme=dark] .network-dashboard .selection-bar,:root[data-theme=dark] .network-dashboard .sync-progress-banner{border-color:var(--app-border)!important;background:var(--app-surface)!important;color:var(--app-text)!important;box-shadow:0 2px 10px rgba(0,0,0,.2)!important}:root[data-theme=dark] .network-dashboard .network-summary,:root[data-theme=dark] .network-dashboard .power-summary{border-color:var(--app-border);background:var(--app-border)}:root[data-theme=dark] .network-dashboard .affected-filters,:root[data-theme=dark] .network-dashboard .attention-client-row,:root[data-theme=dark] .network-dashboard .attention-column-title,:root[data-theme=dark] .network-dashboard .attention-cto-row,:root[data-theme=dark] .network-dashboard .attention-group-tile,:root[data-theme=dark] .network-dashboard .attention-tabs,:root[data-theme=dark] .network-dashboard .ce-panel-close,:root[data-theme=dark] .network-dashboard .context-metrics div,:root[data-theme=dark] .network-dashboard .metric-card,:root[data-theme=dark] .network-dashboard .network-summary article,:root[data-theme=dark] .network-dashboard .panel-title,:root[data-theme=dark] .network-dashboard .power-detail-metrics div,:root[data-theme=dark] .network-dashboard .power-summary>div,:root[data-theme=dark] .network-dashboard .report-meta span,:root[data-theme=dark] .network-dashboard .security-details summary{border-color:var(--app-border)!important;background:var(--app-surface-subtle)!important;color:var(--app-text)!important;box-shadow:none!important}:root[data-theme=dark] .network-dashboard .power-attention-card{border-left-color:#9adb29!important;background:rgba(154,219,41,.12)!important}:root[data-theme=dark] .network-dashboard .power-attention-card .power-attention-action,:root[data-theme=dark] .network-dashboard .power-attention-card>span,:root[data-theme=dark] .network-dashboard .power-attention-card>strong{color:#b9ff68!important}:root[data-theme=dark] .network-dashboard .affected-filters button,:root[data-theme=dark] .network-dashboard .attention-tabs button,:root[data-theme=dark] .network-dashboard .box-layer-toggle,:root[data-theme=dark] .network-dashboard .clear-filters,:root[data-theme=dark] .network-dashboard .context-actions button,:root[data-theme=dark] .network-dashboard .history-button,:root[data-theme=dark] .network-dashboard .infra-layer-toggle,:root[data-theme=dark] .network-dashboard .inline-edit-button,:root[data-theme=dark] .network-dashboard .report-actions button,:root[data-theme=dark] .network-dashboard .report-filters button,:root[data-theme=dark] .network-dashboard .security-form button,:root[data-theme=dark] .network-dashboard .selection-bar button{border-color:var(--app-border-strong)!important;background:var(--app-surface-subtle)!important;color:var(--app-text)!important;text-shadow:none!important;box-shadow:none!important}:root[data-theme=dark] .network-dashboard .affected-filters button.active,:root[data-theme=dark] .network-dashboard .attention-tabs button.active,:root[data-theme=dark] .network-dashboard .box-layer-toggle.active,:root[data-theme=dark] .network-dashboard .context-actions button:first-child,:root[data-theme=dark] .network-dashboard .infra-layer-toggle.active,:root[data-theme=dark] .network-dashboard .report-actions button:first-child,:root[data-theme=dark] .network-dashboard .report-filters button.active{border-color:var(--app-primary)!important;background:var(--app-primary)!important;color:#07111f!important}:root[data-theme=dark] .network-dashboard .attention-client-row.active,:root[data-theme=dark] .network-dashboard .attention-cto-row.active,:root[data-theme=dark] .network-dashboard .attention-group-tile.active{border-color:var(--app-primary)!important;background:rgba(124,148,255,.16)!important}:root[data-theme=dark] .network-dashboard .ce-cable-card p,:root[data-theme=dark] .network-dashboard .ce-cable-card small,:root[data-theme=dark] .network-dashboard .ce-splice-note p,:root[data-theme=dark] .network-dashboard .empty-network,:root[data-theme=dark] .network-dashboard .loading-network,:root[data-theme=dark] .network-dashboard .network-summary small,:root[data-theme=dark] .network-dashboard .network-summary span,:root[data-theme=dark] .network-dashboard .power-summary small,:root[data-theme=dark] .network-dashboard .power-summary span,:root[data-theme=dark] .network-dashboard .quick-search-hint,:root[data-theme=dark] .network-dashboard .selection-bar span,:root[data-theme=dark] .network-dashboard .sync-progress-banner{color:var(--app-text-muted)!important;text-shadow:none!important}:root[data-theme=dark] .network-dashboard .alert-report-preview .section-title span,:root[data-theme=dark] .network-dashboard .attention-column-title span,:root[data-theme=dark] .network-dashboard .box-layer-filter legend,:root[data-theme=dark] .network-dashboard .context-metrics span,:root[data-theme=dark] .network-dashboard .map-status-legend strong,:root[data-theme=dark] .network-dashboard .panel-title span,:root[data-theme=dark] .network-dashboard .report-filters label span,:root[data-theme=dark] .network-dashboard .section-title span,:root[data-theme=dark] .network-dashboard label,:root[data-theme=dark] .network-dashboard legend,:root[data-theme=dark] .network-dashboard th{color:var(--app-primary-dark)!important;text-shadow:none!important}:root[data-theme=dark] .network-dashboard .alert-report-preview .section-title h2,:root[data-theme=dark] .network-dashboard .attention-client-row b,:root[data-theme=dark] .network-dashboard .attention-client-row span,:root[data-theme=dark] .network-dashboard .attention-client-row strong,:root[data-theme=dark] .network-dashboard .attention-column-title strong,:root[data-theme=dark] .network-dashboard .attention-empty,:root[data-theme=dark] .network-dashboard .context-metrics strong,:root[data-theme=dark] .network-dashboard .empty-network h2,:root[data-theme=dark] .network-dashboard .loading-network strong,:root[data-theme=dark] .network-dashboard .report-table-wrap td,:root[data-theme=dark] .network-dashboard .report-table-wrap th,:root[data-theme=dark] .network-dashboard .sync-progress-banner strong{color:var(--app-text)!important;text-shadow:none!important}:root[data-theme=dark] .network-dashboard .report-filters input{border-color:var(--app-border-strong)!important;background:var(--app-surface-subtle)!important;color:var(--app-text)!important}:root[data-theme=dark] .network-dashboard .alert-report-preview .report-table-wrap{border-color:var(--app-border-strong)!important;background:#0b1324!important}:root[data-theme=dark] .network-dashboard .alert-report-preview .report-table-wrap table{background:#0b1324!important;color:#e5eefc!important}:root[data-theme=dark] .network-dashboard .alert-report-preview .report-table-wrap th,:root[data-theme=dark] .network-dashboard .alert-report-preview .report-table-wrap thead{background:#111c31!important;color:#c7d7ff!important}:root[data-theme=dark] .network-dashboard .alert-report-preview .report-table-wrap tbody td,:root[data-theme=dark] .network-dashboard .alert-report-preview .report-table-wrap tbody tr{background:#0f172a!important;color:#e5eefc!important}:root[data-theme=dark] .network-dashboard .alert-report-preview .report-table-wrap tbody tr:nth-child(2n) td{background:#111827!important}:root[data-theme=dark] .network-dashboard .alert-report-preview .report-table-wrap tbody tr:hover td{background:#1e293b!important}:root[data-theme=dark] .network-dashboard .alert-report-preview .report-table-wrap td,:root[data-theme=dark] .network-dashboard .alert-report-preview .report-table-wrap th{border-bottom-color:#26364f!important;text-shadow:none!important}:root[data-theme=dark] .network-dashboard .report-filters input:focus{border-color:var(--app-primary)!important;box-shadow:0 0 0 3px rgba(124,148,255,.14)!important}.security-grid{gap:12px}.security-card{padding:16px;border-radius:10px;color:var(--app-text)}.security-details summary{color:var(--app-text);background:#fff}.security-details summary:hover{background:var(--app-surface-subtle)}.permission-guide-list>div,.role-guide-list>div,.security-details,.security-guide-card,.security-user-layout{border-color:var(--app-border);background:#fff}.inline-edit-button,.security-form button{border:1px solid var(--app-primary);border-radius:7px;background:var(--app-primary);color:#fff;box-shadow:none}.security-toast{border-radius:8px;box-shadow:none}.security-editor-modal{border-color:var(--app-border);background:#fff;color:var(--app-text)}.security-modal-backdrop{background:rgba(20,31,46,.38);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.empty-network,.loading-network,.sync-progress-banner{border-color:var(--app-border);background:#fff;color:var(--app-text-muted)}.empty-network span{color:var(--app-primary)}.empty-network h2,.loading-network strong,.sync-progress-banner strong{color:var(--app-text)}.loading-pulse{background:var(--app-primary);box-shadow:0 0 0 6px rgba(36,87,214,.1)}.pulse-login-page{min-height:100svh;display:flex;align-items:center;justify-content:flex-end;padding:clamp(24px,5vw,68px);background:linear-gradient(90deg,rgba(7,17,31,.06),rgba(7,17,31,.02) 48%,rgba(7,17,31,.26)),url(/login-network-banner.png?v=20260803e) 50% /cover no-repeat,#07111f;color:var(--app-text);overflow:hidden}.pulse-login-visual{display:none}.pulse-login-banner-overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(7,17,31,0),rgba(7,17,31,0) 70%,rgba(7,17,31,.16));pointer-events:none}.pulse-login-panel{display:flex;flex-direction:column;justify-content:center;width:min(385px,100%);background:transparent;box-shadow:none}.pulse-login-logo{width:min(185px,68%);height:auto;margin:0 auto 18px;filter:none;object-fit:contain}.pulse-login-card{width:100%;margin:0 auto;padding:28px 28px 30px;border-color:var(--app-border);border-radius:14px;background:rgba(255,255,255,.96);box-shadow:0 24px 70px rgba(3,9,18,.3);text-align:center}.pulse-login-card>span{color:var(--app-primary);display:block;font-size:.72rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.pulse-login-card h1,.pulse-login-card label{color:var(--app-text)}.pulse-login-card h1{margin:8px 0 22px;font-size:clamp(1.75rem,2.4vw,2.15rem);line-height:1.02;letter-spacing:-.03em}.pulse-login-card form{display:grid;grid-gap:15px;gap:15px;text-align:left}.pulse-login-card label{display:grid;grid-gap:7px;gap:7px;font-size:.74rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.pulse-login-card input{width:100%;min-height:46px;border-color:var(--app-border-strong);border-radius:12px;background:#fff;color:var(--app-text)}.pulse-login-card button{width:min(230px,72%);min-height:44px;margin:4px auto 0;border-radius:13px;background:var(--app-primary);color:#fff;box-shadow:none;font-weight:850;letter-spacing:.01em}.pulse-login-card button:hover{background:var(--app-primary-dark)}.pulse-login-error{color:#bb0000;font-size:.86rem;font-weight:800}.pulse-login-remember{display:flex;align-items:flex-start;gap:9px;color:var(--app-text-muted)!important;font-size:.71rem!important;font-weight:700!important;letter-spacing:0!important;line-height:1.4;text-transform:none!important}.pulse-login-remember input{width:16px;min-height:16px;margin:2px 0 0;accent-color:var(--app-primary)}.surface-account{position:fixed;top:18px;right:24px;z-index:3400}.surface-account-trigger{display:flex;align-items:center;gap:9px;padding:5px 9px 5px 5px;border:1px solid var(--app-border);border-radius:999px;background:var(--app-surface);color:var(--app-text);box-shadow:0 6px 20px rgba(21,40,73,.08);cursor:pointer;text-align:left}.surface-account-trigger>span:last-child{display:grid;grid-gap:1px;gap:1px}.surface-account-trigger strong{font-size:.72rem}.surface-account-trigger small{color:var(--app-text-muted);font-size:.62rem}.surface-account-trigger .sidebar-avatar{width:30px;height:30px;flex-basis:30px}.surface-account-menu{position:absolute;top:calc(100% + 8px);right:0;width:220px;display:grid;grid-gap:7px;gap:7px;padding:12px;border:1px solid var(--app-border);border-radius:12px;background:var(--app-surface);box-shadow:0 16px 38px rgba(21,40,73,.18)}.surface-account-menu>span{color:var(--app-text-muted);font-size:.61rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.surface-account-menu>strong{overflow:hidden;font-size:.73rem;text-overflow:ellipsis;white-space:nowrap}.surface-account-menu button{min-height:34px;border:1px solid var(--app-border);border-radius:8px;background:var(--app-surface-alt);color:var(--app-text);cursor:pointer;font-size:.72rem;font-weight:750}.surface-account-menu .surface-account-logout{border-color:rgba(211,47,47,.28);color:#b51e2a}@media (max-width:700px){.surface-account{top:12px;right:14px}.surface-account-trigger>span:last-child{display:none}.surface-account-trigger{padding:4px}}@media (max-width:1040px){:root{--app-sidebar-width:72px}.app-sidebar{width:72px;align-items:center;padding:16px 10px}.sidebar-brand{margin-inline:0}.sidebar-brand div,.sidebar-links a>span:last-of-type,.sidebar-section-label,.sidebar-user div,.surface-logout span,.surface-theme-toggle span{display:none}.sidebar-footer,.sidebar-links{width:100%}.network-dashboard .surface-nav a,.sidebar-user,.surface-nav a{justify-content:center;padding:0}.surface-logout,.surface-theme-toggle{width:42px;margin:0 auto}.surface-theme-toggle em{display:none}.infra-toolbar,.network-dashboard .network-toolbar{grid-template-columns:1fr}.infra-attribute-filters,.network-dashboard .selection-bar{grid-column:1}}@media (max-width:720px){:root{--app-sidebar-width:0px}.network-dashboard{width:100%;margin:0;padding:66px 10px 24px}.app-sidebar{width:min(276px,calc(100vw - 42px));align-items:stretch;padding:18px 14px;transform:translateX(-105%);transition:transform .2s ease}.app-sidebar.sidebar-open{transform:translateX(0)}.app-sidebar .sidebar-brand div,.app-sidebar .sidebar-links a>span:last-of-type,.app-sidebar .sidebar-section-label,.app-sidebar .sidebar-user div,.app-sidebar .surface-logout span,.app-sidebar .surface-theme-toggle span{display:block}.app-sidebar .sidebar-links a em,.app-sidebar .surface-theme-toggle em{display:none}.app-sidebar .sidebar-links a,.app-sidebar .surface-theme-toggle{justify-content:flex-start;padding:0 11px}.app-sidebar .sidebar-user{justify-content:flex-start}.app-sidebar .surface-logout,.app-sidebar .surface-theme-toggle{width:100%;margin:0}.sidebar-mobile-trigger{position:fixed;z-index:3200;top:13px;left:12px;width:40px;height:40px;display:grid;place-content:center;grid-gap:4px;gap:4px;border:1px solid var(--app-border);border-radius:8px;background:#fff;box-shadow:0 4px 14px rgba(31,47,69,.08)}.sidebar-mobile-trigger span{width:17px;height:2px;border-radius:2px;background:#4a5668}.sidebar-backdrop{position:fixed;z-index:2900;inset:0;display:block;border:0;background:rgba(20,31,46,.32)}.network-header{position:fixed;z-index:2800;top:0;right:0;left:0;min-height:58px;margin:0;padding:9px 10px 9px 62px}.network-header h1{font-size:1rem}.network-header>div:first-child{gap:8px}.city-selector>span{display:none}.city-selector select{width:min(42vw,185px);min-width:0;height:34px;padding-left:8px}.header-actions{position:static}.network-dashboard .sync-button{width:38px;min-height:34px;overflow:hidden;padding:0;color:transparent;white-space:nowrap}.network-dashboard .sync-button:after{display:grid;place-items:center;color:#fff;content:"↻";font-size:1rem}.network-dashboard .power-last-updated,.network-dashboard .power-sync-button{display:none}.network-dashboard .network-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.network-dashboard .network-summary article{min-height:70px;padding:10px}.network-dashboard .network-summary article:last-child strong,.network-dashboard .network-summary strong{font-size:1.12rem}.network-dashboard .network-summary small{font-size:.56rem}.network-dashboard .network-summary .metric-icon{display:none}.infra-toolbar,.network-dashboard .network-toolbar{padding:9px}.network-dashboard .selection-bar{font-size:.68rem}.infra-layer-options,.network-dashboard .box-layer-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.network-dashboard .panel-title{align-items:flex-start;gap:8px}.network-dashboard .map-title-actions{width:100%;justify-content:flex-start}.network-dashboard .cable-legend{display:none}.map-loading,.network-map{height:70svh;min-height:420px}.network-dashboard .map-status-legend{padding:10px}.network-dashboard .map-status-legend>div{grid-template-columns:repeat(2,minmax(0,1fr))}.security-dashboard .network-header{margin:0}.security-card{padding:10px}.pulse-login-page{min-height:100svh;display:flex;align-items:center;justify-content:center;overflow:auto;padding:28px 16px;background:linear-gradient(180deg,rgba(7,17,31,.35),rgba(7,17,31,.5)),url(/login-network-banner.png?v=20260803e) 50% /cover no-repeat,#07111f}.pulse-login-visual{display:none}.pulse-login-panel{justify-content:flex-start;width:100%;max-width:420px;box-shadow:none}.pulse-login-logo{width:min(220px,78vw)}.pulse-login-card{width:100%;padding:28px 22px}.pulse-login-card h1{font-size:2rem}}@media print{.app-sidebar,.sidebar-mobile-trigger{display:none!important}}.preview-shell{min-height:100svh;display:grid;grid-template-columns:72px minmax(0,1fr) 340px;background:#eef2f7;color:#172033;overflow:hidden}.preview-sidebar{display:flex;flex-direction:column;align-items:center;gap:22px;padding:18px 10px;background:linear-gradient(180deg,#111a38,#080d1d);box-shadow:10px 0 30px rgba(17,26,56,.18);z-index:5;overflow:visible}.preview-brand{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:#295be7;color:#fff;font-size:1.35rem;font-weight:950}.preview-sidebar nav{display:grid;grid-gap:12px;gap:12px;margin-top:14px}.preview-sidebar button{position:relative;width:42px;height:42px;display:grid;place-items:center;border:0;border-radius:12px;background:transparent;color:#8fa0c8;cursor:pointer;font-size:1.15rem}.preview-sidebar button>span{display:grid;place-items:center}.preview-sidebar svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.preview-sidebar button:first-child svg{width:26px;height:26px}.preview-sidebar button em{position:absolute;left:calc(100% + 12px);top:50%;z-index:50;min-width:max-content;padding:7px 10px;border:1px solid rgba(255,255,255,.12);border-radius:9px;background:#172033;color:#fff;box-shadow:0 12px 26px rgba(23,32,51,.25);font-size:.74rem;font-style:normal;font-weight:850;letter-spacing:.01em;opacity:0;pointer-events:none;transform:translateY(-50%) translateX(-4px);transition:opacity .14s ease,transform .14s ease;white-space:nowrap}.preview-sidebar button em:before{position:absolute;left:-5px;top:50%;width:9px;height:9px;background:#172033;content:"";transform:translateY(-50%) rotate(45deg)}.preview-sidebar button.active,.preview-sidebar button:hover{background:rgba(82,103,255,.2);color:#fff}.preview-sidebar button:focus-visible em,.preview-sidebar button:hover em{opacity:1;transform:translateY(-50%) translateX(0)}.preview-exit{margin-top:auto;color:#ff5470!important}.preview-main{min-width:0;display:grid;grid-template-rows:auto minmax(0,1fr);background:#eef2f7}.preview-topbar{min-height:70px;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;grid-gap:16px;gap:16px;padding:14px 22px;background:rgba(255,255,255,.9);border-bottom:1px solid #dfe7f2;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.preview-topbar label,.preview-topbar span,.preview-topbar strong{display:block}.preview-topbar strong{font-size:.95rem;letter-spacing:.08em;text-transform:uppercase}.preview-topbar label,.preview-topbar span{color:#6a7488;font-size:.8rem}.preview-topbar button,.preview-topbar select{min-height:38px;border:1px solid #cfd9e8;border-radius:10px;background:#fff;color:#172033;padding:0 13px}.preview-topbar button{border-color:#295be7;background:#295be7;color:#fff;font-weight:800}.preview-map-card{min-height:0;margin:0;display:grid;grid-template-rows:auto minmax(0,1fr);border:0;border-radius:0;overflow:hidden;background:#eef3f9;box-shadow:none}.preview-map-toolbar{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:14px 16px;background:rgba(255,255,255,.92);border-bottom:1px solid #d8e2ef}.preview-search{width:min(520px,100%);display:flex;align-items:center;gap:9px;min-height:42px;padding:0 13px;border:1px solid #cfd9e8;border-radius:12px;background:#fff}.preview-search input{width:100%;border:0;outline:0;background:transparent;color:#172033}.preview-pills{display:flex;gap:8px}.preview-pills button{border:1px solid #cfd9e8;border-radius:999px;background:#fff;padding:10px 14px;color:#33405a;font-weight:800}.preview-pills button:first-child{border-color:#295be7;background:#295be7;color:#fff}.preview-map{position:relative;min-height:0;background:linear-gradient(rgba(41,91,231,.06) 1px,transparent 0),linear-gradient(90deg,rgba(41,91,231,.06) 1px,transparent 0),radial-gradient(circle at 52% 48%,rgba(41,91,231,.08),transparent 32%),#f8fafc;background-size:72px 72px,72px 72px,auto,auto}.preview-cables{position:absolute;inset:0;width:100%;height:100%}.preview-cables path{fill:none;stroke:#295be7;stroke-width:.65;stroke-linecap:round;stroke-linejoin:round}.preview-cables path.secondary{stroke:#29c7df;stroke-dasharray:1.5 1.5}.preview-node{position:absolute;transform:translate(-50%,-50%);min-width:82px;min-height:42px;border:2px solid rgba(255,255,255,.9);border-radius:12px;box-shadow:0 12px 25px rgba(23,32,51,.24);color:#07111f;font-weight:950;cursor:pointer}.preview-node small{display:block;font-size:.68rem;font-weight:800}.preview-node.ok{background:#1cff00}.preview-node.alert{background:#ffa100}.preview-node.full{background:#bb0000;color:#fff}.preview-node.empty{background:#a8b0bb}.preview-node.cd,.preview-node.ce{min-width:58px;min-height:58px;border-radius:999px;background:#416ee8;color:#fff}.preview-node.ce{background:#ff9800}.preview-legend{position:absolute;left:18px;bottom:18px;display:flex;flex-wrap:wrap;gap:12px;padding:10px 12px;border:1px solid #d8e2ef;border-radius:12px;background:rgba(255,255,255,.9);box-shadow:0 12px 24px rgba(23,32,51,.1)}.preview-legend span{display:inline-flex;align-items:center;gap:6px;color:#33405a;font-size:.78rem;font-weight:800}.preview-legend i{width:10px;height:10px;border-radius:999px;display:inline-block}.preview-legend .ok{background:#1cff00}.preview-legend .alert{background:#ffa100}.preview-legend .full{background:#bb0000}.preview-legend .cd{background:#416ee8}.preview-drawer{min-width:0;padding:22px;background:#fff;border-left:1px solid #d8e2ef;box-shadow:-10px 0 30px rgba(23,32,51,.08);overflow:auto}.preview-drawer h3,.preview-drawer>span{color:#295be7;font-size:.78rem;font-weight:950;letter-spacing:.1em;text-transform:uppercase}.preview-drawer h2{margin:8px 0 16px;font-size:2rem}.preview-kpis{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px;margin-bottom:22px}.preview-kpis strong{display:grid;grid-gap:3px;gap:3px;padding:12px;border:1px solid #d8e2ef;border-radius:12px;background:#f6f9fd;font-size:1.4rem}.preview-kpis span{color:#6a7488;font-size:.68rem;text-transform:uppercase}.preview-shell .preview-drawer section{margin-top:22px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.preview-shell .preview-drawer h3{margin:0 0 10px;color:#295be7}.preview-shell .preview-drawer ul{display:grid;grid-gap:10px;gap:10px;padding:0;list-style:none}.preview-shell .preview-drawer li{display:grid;grid-gap:4px;gap:4px;padding:12px;border:1px solid #d8e2ef;border-radius:12px;background:#f6f9fd;color:#172033}.preview-shell .preview-drawer li b{color:#07111f}.preview-shell .preview-drawer li span{color:#6a7488;font-size:.8rem}.preview-shell .preview-drawer section button{width:100%;min-height:42px;margin-top:8px;border:1px solid #295be7;border-radius:12px;background:#295be7;color:#fff;font-weight:850}@media (max-width:980px){.preview-shell{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) auto}.preview-sidebar{order:2;height:68px;flex-direction:row;justify-content:space-between;padding:8px 12px}.preview-sidebar nav{grid-auto-flow:column;margin:0}.preview-main{order:1}.preview-topbar{grid-template-columns:1fr;gap:10px}.preview-map-card{margin:10px;min-height:64svh}.preview-map-toolbar{align-items:stretch;flex-direction:column}.preview-drawer{position:fixed;left:10px;right:10px;bottom:78px;max-height:42svh;border:1px solid #d8e2ef;border-radius:18px;z-index:10}}:root[data-theme=dark] .network-dashboard .client-power-detail,:root[data-theme=dark] .network-dashboard .infra-details,:root[data-theme=dark] .network-dashboard .selected-accesses{background:#0f172a!important;border-color:rgba(148,163,184,.28)!important;color:#e5edf9!important}:root[data-theme=dark] .network-dashboard .client-power-detail .section-title h2,:root[data-theme=dark] .network-dashboard .client-power-detail strong,:root[data-theme=dark] .network-dashboard .infra-details .section-title h2,:root[data-theme=dark] .network-dashboard .infra-details strong,:root[data-theme=dark] .network-dashboard .selected-accesses .section-title h2,:root[data-theme=dark] .network-dashboard .selected-accesses strong{color:#f8fafc!important}:root[data-theme=dark] .network-dashboard .client-power-detail .section-title small,:root[data-theme=dark] .network-dashboard .infra-details .section-title small,:root[data-theme=dark] .network-dashboard .power-detail-message,:root[data-theme=dark] .network-dashboard .selected-accesses .section-title small{color:#cbd5e1!important}:root[data-theme=dark] .network-dashboard .infra-detail-grid div,:root[data-theme=dark] .network-dashboard .power-detail-metrics div{background:#111c31!important;border-color:rgba(96,165,250,.3)!important;color:#e5edf9!important}:root[data-theme=dark] .network-dashboard .infra-detail-grid span,:root[data-theme=dark] .network-dashboard .power-detail-metrics span{color:#93c5fd!important}:root[data-theme=dark] .network-dashboard .infra-detail-grid strong,:root[data-theme=dark] .network-dashboard .power-detail-metrics strong{color:#f8fafc!important}:root[data-theme=dark] .network-dashboard .power-history-table,:root[data-theme=dark] .network-dashboard .table-wrap{background:#0f172a!important;border-color:rgba(148,163,184,.22)!important}:root[data-theme=dark] .network-dashboard .power-history-table table,:root[data-theme=dark] .network-dashboard .table-wrap table{background:#0f172a!important;color:#e5edf9!important}:root[data-theme=dark] .network-dashboard .power-history-table thead,:root[data-theme=dark] .network-dashboard .table-wrap thead{background:#16233a!important}:root[data-theme=dark] .network-dashboard .power-history-table th,:root[data-theme=dark] .network-dashboard .table-wrap th{background:#16233a!important;border-color:rgba(148,163,184,.22)!important;color:#93c5fd!important}:root[data-theme=dark] .network-dashboard .power-history-table td,:root[data-theme=dark] .network-dashboard .table-wrap td{background:#0f172a!important;border-color:rgba(148,163,184,.18)!important;color:#e5edf9!important}:root[data-theme=dark] .network-dashboard .power-history-table tbody tr:nth-child(2n) td,:root[data-theme=dark] .network-dashboard .table-wrap tbody tr:nth-child(2n) td{background:#111c31!important}:root[data-theme=dark] .network-dashboard .power-history-table tbody tr:hover td,:root[data-theme=dark] .network-dashboard .table-wrap tbody tr:hover td{background:#1d2d4a!important}:root[data-theme=dark] .network-dashboard .power-history-table tbody tr.selected td,:root[data-theme=dark] .network-dashboard .table-wrap tbody tr.selected td{background:#22345a!important;color:#f8fafc!important}:root[data-theme=dark] .network-dashboard .power-chart{background:#0b1b33!important;border-color:rgba(96,165,250,.3)!important;color:#dbeafe!important}:root[data-theme=dark] .network-dashboard .power-chart small{color:#b6c7e4!important}:root[data-theme=dark] .network-dashboard .infra-filter-rail .infra-layer-controls,:root[data-theme=dark] .network-dashboard .infra-layer-controls{background:#0f172a!important;border-color:rgba(148,163,184,.3)!important;color:#e5edf9!important}:root[data-theme=dark] .network-dashboard .infra-filter-rail .infra-layer-controls fieldset,:root[data-theme=dark] .network-dashboard .infra-layer-controls fieldset{background:#111c31!important;border-color:rgba(96,165,250,.28)!important}:root[data-theme=dark] .network-dashboard .infra-filter-rail .infra-layer-controls legend,:root[data-theme=dark] .network-dashboard .infra-layer-controls legend{color:#bfdbfe!important;text-shadow:none!important}:root[data-theme=dark] .network-dashboard .infra-filter-rail .infra-layer-controls small,:root[data-theme=dark] .network-dashboard .infra-layer-controls small{color:#cbd5e1!important}:root[data-theme=dark] .network-dashboard .infra-filter-rail .infra-layer-toggle,:root[data-theme=dark] .network-dashboard .infra-layer-toggle{background:#172554!important;border-color:rgba(96,165,250,.55)!important;box-shadow:none!important;color:#f8fafc!important;text-shadow:none!important}:root[data-theme=dark] .network-dashboard .infra-filter-rail .infra-layer-toggle:not(.active),:root[data-theme=dark] .network-dashboard .infra-layer-toggle:not(.active){background:#111827!important;border-color:rgba(148,163,184,.35)!important;color:#cbd5e1!important}:root[data-theme=dark] .network-dashboard .infra-filter-rail .infra-layer-toggle.active,:root[data-theme=dark] .network-dashboard .infra-layer-toggle.active{background:#1d4ed8!important;border-color:#93c5fd!important;color:#ffffff!important}:root[data-theme=dark] .network-dashboard .infra-layer-toggle i{border-color:rgba(255,255,255,.65)!important}:root[data-theme=dark] .network-dashboard .ce-diagram-panel .power-detail-message,:root[data-theme=dark] .network-dashboard .ce-modal .power-detail-message{color:#cbd5e1!important}:root{--app-primary:#0644ce;--app-primary-dark:#0035aa;--app-canvas:#f3f5f7;--pulse-brand-green:#00d52c}:root[data-theme=dark]{--app-primary:#80aaff;--app-canvas:#121518;--app-surface:#1b2025;--app-surface-subtle:#242a30;--app-border:#384149;--app-text:#f1f5f7;--app-text-muted:#b9c4cb}.network-dashboard{letter-spacing:0}.network-dashboard :is(h1,h2,h3,button,label,small,strong,span){letter-spacing:0}.network-dashboard .sidebar-brand{border-bottom:3px solid var(--pulse-brand-green)}.network-dashboard .header-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}.data-freshness{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;width:100%;color:var(--app-text-muted);font-size:.8125rem;line-height:1.5}.data-freshness strong{color:var(--app-text);font-weight:600}.data-freshness small{font-size:.8125rem}.data-stale small{color:var(--app-warning)}.network-dashboard :is(button,input,select,summary):focus-visible{outline:3px solid var(--app-primary);outline-offset:3px}.network-dashboard :is(.box-layer-toggle,.infra-layer-toggle,.filter-field>span,.network-summary small,.network-summary article small,.selection-bar,.map-status-legend,.global-search label,.section-title small){font-size:.8125rem;line-height:1.5}.network-dashboard details>summary{padding:10px 0;cursor:pointer;color:var(--app-text);font-weight:600;font-size:.875rem}.network-dashboard :is(.map-panel,.network-toolbar,.investigation-context,.selected-accesses,.infra-filter-rail,.ce-diagram-panel){border-radius:0;box-shadow:none}.support-workspace .network-content-flow{display:grid;grid-template-columns:minmax(0,1fr) 360px;grid-gap:16px;gap:16px;align-items:start}.support-workspace .network-content-flow>*{min-width:0}.support-workspace .network-summary{grid-column:1/-1;grid-row:1}.support-workspace .network-toolbar{grid-column:1;grid-row:2}.support-workspace .power-summary{grid-column:2;grid-row:2}.support-workspace .map-workspace{grid-column:1/-1;grid-row:3;display:block}.support-workspace .selected-accesses{grid-column:1/-1;grid-row:4;max-height:none;overflow:visible}.support-workspace .investigation-context{grid-column:1/-1;grid-row:5}.support-workspace .attention-list{grid-column:1/-1;grid-row:6}.support-workspace .network-timestamp{grid-column:1/-1}.support-workspace .network-map{height:68svh;min-height:460px}.support-workspace .context-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.support-workspace .quick-search-hint{display:none}.support-workspace .table-wrap{overflow:auto}.support-workspace .selected-accesses .section-title{flex-wrap:wrap}.support-workspace .cto-client-list{width:100%}.selection-close-button{min-height:34px;padding:0 12px;border:1px solid var(--app-border-strong);border-radius:5px;background:var(--app-surface-subtle);color:var(--app-text);font-size:.78rem;font-weight:800;white-space:nowrap;cursor:pointer}.selection-close-button:hover{border-color:var(--app-primary);background:var(--app-primary-soft);color:var(--app-primary)}.support-workspace .client-power-detail{width:100%}.support-workspace .alert-report-preview,.support-workspace .alert-report-preview .report-filters,.support-workspace .alert-report-preview .report-table-wrap{border-color:#2d3b56!important;background:#111820!important;color:#eef5ff!important}.support-workspace .alert-report-preview .report-table-wrap td,.support-workspace .alert-report-preview .report-table-wrap th,.support-workspace .alert-report-preview .section-title h2,.support-workspace .alert-report-preview .section-title small{color:#eef5ff!important;text-shadow:none!important}.support-workspace .alert-report-preview .report-filters label span,.support-workspace .alert-report-preview .section-title span{color:#8fb5ff!important}.support-workspace .alert-report-preview .report-meta span{border-color:#33415f!important;background:#1b2532!important;color:#d7e6ff!important}.support-workspace .alert-report-preview .report-table-wrap{box-shadow:inset 0 0 0 1px rgba(143,181,255,.08)!important}.support-workspace .alert-report-preview .report-table-wrap table{background:#101722!important;min-width:1680px}.support-workspace .alert-report-preview .report-table-wrap th{background:#12305f!important;color:#f7fbff!important}.support-workspace .alert-report-preview .report-table-wrap td{border-bottom-color:#26364f!important;background:#0f172a!important;color:#eaf2ff!important;opacity:1!important;font-weight:750}.support-workspace .alert-report-preview .report-table-wrap td *,.support-workspace .alert-report-preview .report-table-wrap td a,.support-workspace .alert-report-preview .report-table-wrap td small,.support-workspace .alert-report-preview .report-table-wrap td span,.support-workspace .alert-report-preview .report-table-wrap td strong{color:#eaf2ff!important;opacity:1!important;text-shadow:none!important}.support-workspace .alert-report-preview .report-table-wrap tbody tr:nth-child(2n) td{background:#111c31!important}.support-workspace .alert-report-preview .report-table-wrap tbody tr:hover td{background:#1e40af!important;color:#ffffff!important}.support-workspace .alert-report-preview .report-table-wrap tbody tr:hover td *{color:#ffffff!important}.support-workspace .alert-report-preview .report-actions button,.support-workspace .alert-report-preview .report-filters button{border-color:#3b5174!important;background:#182235!important;color:#eef5ff!important}.support-workspace .alert-report-preview .report-actions button:first-child,.support-workspace .alert-report-preview .report-filters button.active{border-color:#80aaff!important;background:#80aaff!important;color:#07111f!important}.support-workspace .alert-report-preview .report-filters input{border-color:#3b5174!important;background:#0c1320!important;color:#eef5ff!important}.cto-client-list{margin:12px 0 0;border:1px solid var(--app-border);border-radius:6px;background:var(--app-surface);overflow:auto}.cto-client-list table{width:100%;min-width:1120px;border-collapse:collapse}.cto-client-list td,.cto-client-list th{padding:10px 12px;border-bottom:1px solid var(--app-border);text-align:left;font-size:.78rem;vertical-align:middle}.cto-client-list th{background:#123469;color:#8fbdff;font-size:.66rem;font-weight:850;letter-spacing:.04em;text-transform:uppercase}.cto-client-list tbody tr:nth-child(2n){background:rgba(76,119,190,.07)}.cto-client-list .access-row-selected,.cto-client-list tbody tr:hover{background:rgba(128,170,255,.14)}.cto-client-list td strong{display:block;max-width:260px;overflow-wrap:anywhere;color:var(--app-text);font-size:.8rem}.cto-client-list td small{display:block;margin-top:4px;color:var(--app-text-muted);font-size:.66rem}.cto-client-list .client-power-button{min-height:30px;font-size:.75rem;white-space:nowrap}.rx-quality{display:inline-flex;align-items:center;min-height:24px;padding:3px 8px;border-radius:5px;font-weight:850;white-space:nowrap}.rx-quality-warning{border:1px solid rgba(242,201,76,.65);background:rgba(242,201,76,.18);color:#ffe08a}.rx-quality-critical{border:1px solid rgba(255,77,79,.72);background:rgba(255,77,79,.22);color:#ffb4a8}.infra-dashboard .infra-workspace{grid-template-columns:minmax(0,1fr) 360px}.infra-dashboard .infra-map-side{min-width:0}.infra-dashboard .infra-map-side>section{margin:0 0 16px}.network-dashboard .network-summary article{border-radius:0;box-shadow:none}.infra-dashboard .empty-network,.infra-dashboard .loading-network{min-height:280px;border:1px solid var(--app-border);border-left:4px solid var(--pulse-brand-green);border-radius:6px;background:var(--app-surface);box-shadow:none}.infra-dashboard .empty-network>span{color:var(--app-primary);font-size:.72rem;letter-spacing:0}.infra-dashboard .empty-network h2{max-width:680px;font-size:clamp(1.35rem,3vw,2rem);letter-spacing:0}.infra-dashboard .empty-network p,.infra-dashboard .loading-network p{color:var(--app-text-muted)}@media (max-width:1100px){.support-workspace .network-content-flow{display:flex;flex-direction:column}.support-workspace .network-content-flow>*{width:100%}.support-workspace .network-toolbar{order:1}.support-workspace .map-workspace{order:2}.support-workspace .selected-accesses{order:3}.support-workspace .investigation-context{order:4}.support-workspace .network-summary{order:5}.support-workspace .power-summary{order:6}.support-workspace .attention-list{order:7}.support-workspace .network-timestamp{order:8}.infra-dashboard .infra-workspace{grid-template-columns:minmax(0,1fr)}}@media (max-width:760px){.network-dashboard .network-header{position:relative;display:flex;flex-direction:column;align-items:stretch;padding:12px 12px 12px 56px;gap:12px}.network-dashboard .header-actions{position:static;width:100%}.network-dashboard .power-sync-button,.network-dashboard .sync-button{display:inline-flex;justify-content:center;align-items:center;width:auto;min-height:44px;padding:8px 12px;white-space:normal;color:#fff;font-size:.8125rem}.network-dashboard .sync-button:after{display:none}.network-dashboard .power-sync-button{background:var(--app-surface);color:var(--app-text)}.network-dashboard .city-selector select{max-width:100%;width:100%}.network-dashboard .selected-accesses{max-height:60svh;overflow:auto}.support-workspace .selected-accesses{max-height:none;overflow:visible}.network-dashboard .network-map{min-height:350px;height:55svh}.network-dashboard .map-status-legend>div{display:flex;flex-wrap:wrap}}@media print{.support-workspace .network-content-flow{display:block}.support-workspace .selected-accesses{max-height:none;overflow:visible}}