:root{
  color-scheme:dark;
  --bg:#050a0d;--bg2:#071116;--panel:#0a151b;--panel2:#0d1b22;--line:#1c3842;--line2:#24505b;
  --text:#d9edf0;--muted:#78939a;--cyan:#35e7ff;--cyan2:#0aa8bb;--mag:#ff3da8;--lime:#9cf45b;--amber:#ffbd3e;--danger:#ff5578;
  --rail:76px;--top:72px;--radius:8px;--shadow:0 14px 44px rgba(0,0,0,.28)
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;font-size:15px;overflow-x:hidden}
body{min-height:100vh;background-image:radial-gradient(circle at 75% 8%,rgba(53,231,255,.055),transparent 30%),linear-gradient(180deg,#071015 0%,#05090c 58%,#060b0e 100%)}
button,input,select,textarea{font:inherit}button{color:inherit}button,a{touch-action:manipulation}button{cursor:pointer}a{color:var(--cyan)}code{font-family:inherit;color:var(--cyan);letter-spacing:.04em}.is-hidden{display:none!important}.noise,.scanlines{pointer-events:none;position:fixed;inset:0;z-index:9999}.noise{opacity:.025;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.85'/%3E%3C/svg%3E")}.scanlines{opacity:.025;background:repeating-linear-gradient(180deg,transparent 0 3px,rgba(255,255,255,.08) 4px)}
::selection{background:rgba(53,231,255,.25);color:white}.eyebrow{margin:0 0 6px;color:var(--cyan);font-size:11px;letter-spacing:.18em;text-transform:uppercase}.muted{color:var(--muted)}

/* Login */
.login-screen{min-height:100vh;display:grid;place-items:center;padding:28px;position:relative;overflow:hidden}.login-grid{position:absolute;inset:-10%;background-image:linear-gradient(rgba(53,231,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(53,231,255,.06) 1px,transparent 1px);background-size:48px 48px;transform:perspective(700px) rotateX(68deg) translateY(30%);transform-origin:center bottom;mask-image:linear-gradient(to bottom,transparent 0%,black 38%,black 100%)}.login-card{position:relative;width:min(520px,100%);background:linear-gradient(145deg,rgba(10,21,27,.97),rgba(5,11,15,.98));border:1px solid var(--line2);box-shadow:0 0 0 1px rgba(53,231,255,.04),0 25px 80px #000;padding:34px}.hud-cut{clip-path:polygon(0 0,calc(100% - 22px) 0,100% 22px,100% 100%,22px 100%,0 calc(100% - 22px))}.brand-lockup{display:flex;align-items:center;gap:16px}.brand-lockup h1{font-size:24px;margin:0;letter-spacing:.03em}.login-lead{color:#9bb1b7;line-height:1.65;margin:22px 0 26px}.field-label{display:block;color:#a9bec4;margin:14px 0 7px;font-size:12px}.field{width:100%;min-height:44px;border:1px solid var(--line);background:#071116;color:var(--text);padding:10px 12px;border-radius:4px;outline:none;transition:.18s border-color,.18s box-shadow}.field:focus{border-color:var(--cyan2);box-shadow:0 0 0 2px rgba(53,231,255,.08)}textarea.field{resize:vertical}.password-wrap{display:flex}.password-wrap .field{border-radius:4px 0 0 4px}.password-wrap .icon-btn{border-radius:0 4px 4px 0}.inline-error{min-height:24px;color:#ff8299;font-size:12px;padding-top:7px}.demo-note{color:#6e868c;font-size:11px;margin:16px 0 0}.login-statusline{border-top:1px solid var(--line);margin-top:22px;padding-top:16px;color:#8ca5ab;font-size:12px;display:flex;align-items:center;gap:8px}

/* Core shell */
.app-shell{min-height:100vh;padding-left:var(--rail);padding-top:var(--top)}.command-rail{position:fixed;left:0;top:0;bottom:0;width:var(--rail);z-index:60;background:#061014;border-right:1px solid var(--line);display:flex;flex-direction:column;align-items:stretch;padding:8px 7px}.rail-brand{height:54px;border:0;background:transparent;display:grid;place-items:center;margin-bottom:6px}.rail-nav{display:flex;flex-direction:column;gap:3px;overflow-y:auto;scrollbar-width:none}.rail-bottom{margin-top:auto}.rail-btn{min-height:52px;border:1px solid transparent;background:transparent;color:#789097;border-radius:5px;display:grid;place-items:center;gap:1px;padding:5px 2px;position:relative}.rail-btn span{font-size:17px}.rail-btn small{font-size:8px;letter-spacing:.03em}.rail-btn:hover,.rail-btn.active{color:var(--cyan);border-color:#173841;background:rgba(53,231,255,.045);box-shadow:inset 2px 0 var(--cyan)}
.command-bar{position:fixed;z-index:50;top:0;left:var(--rail);right:0;height:var(--top);border-bottom:1px solid var(--line);background:rgba(6,15,19,.94);backdrop-filter:blur(8px);display:grid;grid-template-columns:minmax(230px,1fr) minmax(300px,680px) auto;align-items:center;gap:18px;padding:10px 18px}.command-title h2{margin:0;font-size:16px;letter-spacing:.02em}.global-search-wrap{position:relative}.global-search{width:100%;height:42px;background:#071216;border:1px solid var(--line);color:var(--text);border-radius:4px;padding:0 58px 0 38px;outline:none}.global-search:focus{border-color:var(--cyan2);box-shadow:0 0 0 2px rgba(53,231,255,.07)}.search-mark{position:absolute;left:13px;top:10px;color:var(--cyan);z-index:2}.global-search-wrap kbd{position:absolute;right:10px;top:10px;border:1px solid var(--line);border-radius:3px;padding:3px 5px;color:#76939a;font-size:10px}.search-results{position:absolute;left:0;right:0;top:48px;max-height:65vh;overflow:auto;background:#071116;border:1px solid var(--line2);box-shadow:var(--shadow);z-index:80}.search-group{padding:8px;border-bottom:1px solid var(--line)}.search-group h4{margin:5px 8px 7px;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.12em}.search-group button{width:100%;border:0;background:transparent;text-align:left;padding:9px;display:grid;grid-template-columns:120px 1fr;gap:10px;border-radius:3px}.search-group button:hover{background:rgba(53,231,255,.06)}.search-empty{padding:18px;color:var(--muted)}.command-actions{display:flex;gap:8px;align-items:center}.view-root{min-height:calc(100vh - var(--top));padding:18px 20px 32px;overflow:hidden}.page{max-width:1720px;margin:0 auto}.page h1{margin:0;font-size:26px;letter-spacing:-.03em}.page h1 .count-chip{font-size:12px;vertical-align:middle}.enter{animation:enter .28s ease both}@keyframes enter{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
.btn{min-height:40px;border:1px solid var(--line2);border-radius:4px;padding:8px 13px;background:#0a171d;color:#c7dce1;transition:.16s ease;white-space:nowrap}.btn:hover{border-color:var(--cyan2);box-shadow:0 0 12px rgba(53,231,255,.07)}.btn-primary{border-color:#1599ab;background:linear-gradient(180deg,#0e5863,#0b414a);color:#e8fcff;box-shadow:inset 0 0 12px rgba(53,231,255,.08)}.btn-danger{border-color:#7d2943;background:#34131e;color:#ffc2ce}.btn-ghost{background:#091318}.btn-wide{width:100%}.icon-btn{width:44px;height:44px;border:1px solid var(--line);background:#091419;border-radius:4px;color:#a8bec4;display:grid;place-items:center}.icon-btn:hover{border-color:var(--cyan2);color:var(--cyan);box-shadow:0 0 10px rgba(53,231,255,.08)}.link-btn{border:0;background:none;color:var(--cyan);font-size:11px}.count-chip,.live-chip{display:inline-flex;align-items:center;border:1px solid var(--line2);background:#0b181e;color:var(--cyan);border-radius:3px;padding:3px 7px;font-size:10px;letter-spacing:.08em}.live-chip{animation:pulseText 1.8s infinite}@keyframes pulseText{50%{box-shadow:0 0 10px rgba(53,231,255,.12)}}
.btn-loader{display:none;width:16px;height:16px;border:2px solid rgba(255,255,255,.25);border-top-color:white;border-radius:50%;animation:spin .65s linear infinite}.btn.loading .btn-label{display:none}.btn.loading .btn-loader{display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}
.pulse-dot{width:7px;height:7px;border-radius:50%;background:var(--cyan);box-shadow:0 0 0 0 rgba(53,231,255,.35);animation:pulse 1.5s infinite}@keyframes pulse{70%{box-shadow:0 0 0 8px rgba(53,231,255,0)}}

/* Common panels */
.panel{background:linear-gradient(180deg,rgba(11,24,30,.94),rgba(8,17,22,.98));border:1px solid var(--line);border-radius:var(--radius);box-shadow:inset 0 1px rgba(255,255,255,.015);min-width:0}.panel-head{height:48px;border-bottom:1px solid var(--line);padding:0 14px;display:flex;align-items:center;justify-content:space-between}.panel-head h3{margin:0;font-size:12px;letter-spacing:.08em;text-transform:uppercase}.page-toolbar{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:16px}.toolbar-actions{display:flex;gap:8px;align-items:center}.subnav{min-height:42px;border:1px solid var(--line);background:#071216;margin-bottom:12px;display:flex;align-items:center;gap:24px;padding:8px 12px;color:#8ca7ae;font-size:11px}.subnav b{color:var(--text)}
.badge{display:inline-flex;align-items:center;min-height:22px;border:1px solid #29414a;border-radius:3px;padding:2px 6px;font-size:9px;text-transform:uppercase;letter-spacing:.04em;color:#b3c8cd;background:#0c171c}.badge-критическая,.badge-offline,.badge-нарушен,.badge-критический{border-color:#7e294d;color:#ff84ad;background:#29101d}.badge-высокая,.badge-высокий,.badge-warning,.badge-эскалация{border-color:#755221;color:#ffd071;background:#2a200d}.badge-средняя,.badge-средний,.badge-maintenance,.badge-ожидание,.badge-ожидание-клиента,.badge-частично-доступна{border-color:#37506c;color:#9ac5ff;background:#101b29}.badge-низкая,.badge-online,.badge-решен,.badge-закрыт,.badge-норма,.badge-на-смене,.badge-готово{border-color:#386b36;color:#aaf779;background:#112412}.badge-disabled,.badge-недоступна{color:#85969b}.badge-новый,.badge-принят,.badge-диагностика,.badge-назначен,.badge-в-работе,.badge-контроль,.badge-золото-24-7,.badge-платина-24-7,.badge-серебро-12-5,.badge-базовый-8-5{border-color:#236273;color:#6cecff;background:#0b2229}

/* Command center */
.ops-banner{min-height:128px;border:1px solid var(--line2);background:linear-gradient(100deg,rgba(12,36,43,.94),rgba(6,15,19,.94)),linear-gradient(90deg,transparent,rgba(53,231,255,.07));display:flex;justify-content:space-between;align-items:center;padding:20px 24px;margin-bottom:12px;position:relative;overflow:hidden;clip-path:polygon(0 0,calc(100% - 28px) 0,100% 28px,100% 100%,0 100%)}.ops-banner:after{content:"";position:absolute;right:-80px;top:-70px;width:330px;height:220px;border:1px solid rgba(53,231,255,.12);transform:rotate(-18deg);box-shadow:0 0 0 28px rgba(53,231,255,.012),0 0 0 58px rgba(53,231,255,.008)}.ops-banner h1{font-size:30px;margin:2px 0 7px}.ops-banner h1 span{color:var(--cyan)}.ops-banner p{max-width:760px;color:#8faab0;margin:0;line-height:1.55}.ops-clock{position:relative;z-index:2;min-width:170px;border-left:1px solid var(--line2);padding-left:20px;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:5px 10px}.ops-clock b{font-size:20px}.ops-clock small{grid-column:2;color:var(--muted)}.kpi-strip{display:grid;grid-template-columns:repeat(8,1fr);border:1px solid var(--line);margin-bottom:12px;background:#071115}.kpi{min-width:0;padding:12px 10px;border-right:1px solid var(--line);position:relative;overflow:hidden}.kpi:last-child{border-right:0}.kpi small{display:block;color:#718d94;font-size:9px;min-height:24px;text-transform:uppercase}.kpi strong{font-size:19px;white-space:nowrap}.kpi i{position:absolute;bottom:0;left:0;right:25%;height:2px;background:var(--cyan)}.kpi.magenta i{background:var(--mag)}.kpi.amber i{background:var(--amber)}.kpi.lime i{background:var(--lime)}
.command-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:12px}.span-4{grid-column:span 4}.span-5{grid-column:span 5}.span-6{grid-column:span 6}.span-7{grid-column:span 7}.row-2{grid-row:span 2}.threat-inline{padding:18px;display:grid;grid-template-columns:150px 1fr;align-items:center;gap:22px}.risk-orb{width:120px;height:120px;border-radius:50%;border:1px solid var(--cyan2);display:grid;place-items:center;align-content:center;position:relative;background:radial-gradient(circle,rgba(53,231,255,.09),transparent 60%);box-shadow:inset 0 0 20px rgba(53,231,255,.05)}.risk-orb:before,.risk-orb:after{content:"";position:absolute;inset:8px;border:1px dashed rgba(53,231,255,.25);border-radius:50%;animation:spin 18s linear infinite}.risk-orb:after{inset:19px;animation-direction:reverse;animation-duration:11s}.risk-orb span{font-size:34px;color:var(--cyan)}.risk-orb small{font-size:8px;color:var(--muted);text-transform:uppercase}.risk-orb.risk-high{border-color:var(--mag);background:radial-gradient(circle,rgba(255,61,168,.1),transparent 60%)}.risk-orb.risk-high span{color:#ff6eba}.risk-orb.risk-mid span{color:var(--amber)}.threat-label{color:var(--mag);font-size:17px;letter-spacing:.1em}.threat-metrics{display:flex;gap:8px;flex-wrap:wrap}.threat-metrics span{border:1px solid var(--line);padding:7px 9px;color:#8ca5ab;font-size:11px}.threat-metrics b{color:var(--text)}.network-panel{overflow:hidden}.network-panel .network-svg{height:220px}.feed-list{max-height:420px;overflow:auto}.feed-row{width:100%;display:grid;grid-template-columns:82px 78px 65px 1fr;gap:8px;align-items:start;border:0;border-bottom:1px solid #11272e;background:transparent;text-align:left;padding:10px 12px}.feed-row:hover{background:rgba(53,231,255,.035)}.feed-row time{color:#6d8990;font-size:9px}.feed-row b{font-size:10px;color:#abc0c5}.feed-row p{font-size:11px;color:#829ca3;margin:1px 0}.critical-list,.deadline-list,.client-risk-list,.meter-list{padding:8px 12px}.critical-row{width:100%;border:0;border-bottom:1px solid #10252c;background:transparent;display:grid;grid-template-columns:1.4fr 1fr 120px 80px;gap:10px;align-items:center;text-align:left;padding:11px 2px}.critical-row:hover{background:rgba(255,61,168,.025)}.critical-row div{display:flex;flex-direction:column;gap:4px}.critical-row b,.critical-row span{font-size:11px}.critical-row strong{color:var(--mag);text-align:right}.meter-list>div{display:grid;grid-template-columns:1fr auto;gap:6px;margin:10px 0}.meter-list span,.meter-list b{font-size:10px}.meter-list i{grid-column:1/-1;height:4px;background:#11252c;overflow:hidden}.meter-list em{display:block;height:100%;background:linear-gradient(90deg,var(--cyan2),var(--cyan));box-shadow:0 0 7px rgba(53,231,255,.3)}.deadline-list button{width:100%;border:0;border-bottom:1px solid #10252c;background:none;display:grid;grid-template-columns:1fr 1fr auto;text-align:left;padding:10px 0}.deadline-list span{font-size:10px;color:var(--muted)}.deadline-list b{color:var(--amber)}.danger{color:var(--danger)!important}.client-risk-list>div{display:grid;grid-template-columns:30px 1fr auto;align-items:center;gap:8px;padding:11px 0;border-bottom:1px solid #10252c}.rank{color:var(--cyan);font-size:10px}.client-risk-list strong{font-size:10px;color:var(--amber)}

/* Network */
.network-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:12px}.network-stage{min-height:650px;overflow:hidden}.network-toolbar{height:46px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:0 14px;color:#809ba1;font-size:10px}.network-svg{width:100%;height:min(68vh,650px);display:block;background:radial-gradient(circle at 50% 50%,rgba(53,231,255,.05),transparent 45%)}.net-grid-line{fill:none;stroke:#12303a;stroke-width:.15}.net-link{stroke:#24505b;stroke-width:.42;stroke-dasharray:1.5 1}.net-node{cursor:pointer}.net-node text{fill:#90a8ae;font-size:2.45px;pointer-events:none}.node-ring{fill:#071319;stroke:var(--cyan);stroke-width:.7}.node-core{fill:var(--cyan)}.net-node.warn .node-ring{stroke:var(--amber)}.net-node.warn .node-core{fill:var(--amber)}.net-node.crit .node-ring{stroke:var(--mag)}.net-node.crit .node-core{fill:var(--mag);animation:nodepulse 1.15s infinite}.net-node.maint .node-ring{stroke:#9ab7ff}.net-node.maint .node-core{fill:#9ab7ff}.net-node.off{opacity:.45}.net-node:hover .node-ring,.net-node:focus .node-ring{stroke-width:1.4;filter:drop-shadow(0 0 2px currentColor)}@keyframes nodepulse{50%{r:3.2;opacity:.55}}.radar-ring{fill:none;stroke:rgba(53,231,255,.12);stroke-width:.25;stroke-dasharray:1 2;transform-origin:50px 50px;animation:spin 28s linear infinite}.radar-ring.delay{animation-direction:reverse;animation-duration:20s}.network-svg.compact{height:230px}.network-svg.compact .net-node text{display:none}.node-list-panel{max-height:650px;overflow:hidden}.node-list{overflow:auto;max-height:600px}.node-list button{width:100%;min-height:54px;background:transparent;border:0;border-bottom:1px solid #10262c;display:grid;grid-template-columns:12px 1fr auto;align-items:center;gap:9px;text-align:left;padding:8px 12px}.node-list button:hover{background:rgba(53,231,255,.035)}.node-list span{display:grid;gap:3px}.node-list small{color:var(--muted)}.node-list em{font-style:normal;font-size:9px;color:#8da6ac}.node-status{width:7px;height:7px;border-radius:50%;background:#596e73}.node-status.ok{background:var(--cyan);box-shadow:0 0 7px rgba(53,231,255,.4)}.node-status.warn{background:var(--amber)}.node-status.crit{background:var(--mag);box-shadow:0 0 8px rgba(255,61,168,.45)}.sub-status{display:flex;gap:8px}.sub-status span{border:1px solid var(--line);padding:6px 8px;font-size:10px}.sub-status .ok{color:var(--cyan)}.sub-status .warn{color:var(--amber)}.sub-status .crit{color:var(--mag)}

/* Tables / filters */
.filters{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:10px;align-items:end;border:1px solid var(--line);background:#071216;padding:10px;margin-bottom:10px}.filters label{font-size:10px;color:#79949b;display:grid;gap:5px}.filter-close{display:none}.filters.inline{grid-template-columns:180px 220px 280px auto;margin-bottom:12px}.check-label{display:flex!important;align-items:center;gap:8px!important;min-height:44px}.compact{width:auto;min-width:180px}.bulk-bar{display:flex;align-items:center;gap:8px;margin:0 0 10px;padding:8px 10px;border:1px solid var(--line);border-left:2px solid var(--mag);background:#0a1218}.bulk-bar span{font-size:10px;color:var(--muted);margin-right:auto}.bulk-bar .field{width:auto;min-width:180px;min-height:38px}.table-wrap{width:100%;overflow:auto;border:1px solid var(--line);background:#071115}.data-table{border-collapse:collapse;width:100%;min-width:980px}.data-table th{position:sticky;top:0;z-index:2;background:#0a171c;border-bottom:1px solid var(--line2);color:#77949a;font-size:9px;text-align:left;text-transform:uppercase;letter-spacing:.06em;padding:10px 9px;white-space:nowrap}.data-table td{border-bottom:1px solid #11252b;padding:9px;color:#b9cdd1;font-size:11px;vertical-align:top}.data-table tbody tr:hover{background:rgba(53,231,255,.025)}.data-table td small{display:block;color:#6e898f;margin-top:4px}.sort-btn,.id-link{border:0;background:none;padding:0;color:var(--cyan);text-align:left}.sort-btn{color:#85a1a8;text-transform:uppercase;font-size:9px}.sla-time{color:var(--amber)}.row-actions{display:flex;gap:4px}.row-actions button,.task-card footer button{width:30px;height:30px;border:1px solid var(--line);background:#0a151a;color:#8ca6ac}.incident-cards{display:none}

/* Kanban / tasks */
.kanban{display:grid;grid-template-columns:repeat(8,minmax(230px,1fr));gap:8px;overflow-x:auto;padding-bottom:10px}.kanban-col{border:1px solid var(--line);background:#071115;min-height:560px}.kanban-col>header,.task-column>header{height:45px;border-bottom:1px solid var(--line);padding:0 10px;display:flex;justify-content:space-between;align-items:center}.kanban-col h3,.task-column h3{font-size:10px;text-transform:uppercase;margin:0}.kanban-col>header span,.task-column>header span{color:var(--cyan)}.kanban-drop{min-height:510px;padding:7px}.kanban-col.drag-over{border-color:var(--cyan);box-shadow:inset 0 0 18px rgba(53,231,255,.05)}.kanban-card{border:1px solid #193640;background:#0b171d;margin-bottom:7px;padding:9px;border-radius:4px}.kanban-card.dragging{opacity:.35}.kanban-card>div{display:flex;justify-content:space-between;gap:6px}.kanban-card>b{display:block;margin:9px 0 5px;font-size:11px}.kanban-card p{font-size:9px;color:#779197;min-height:28px}.kanban-card footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #142b32;padding-top:7px;color:var(--amber);font-size:10px}.kanban-card footer button{border:0;background:none;color:var(--cyan);font-size:9px}.task-board{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.task-column{border:1px solid var(--line);background:#071115;min-height:620px;padding-bottom:8px}.task-card{margin:8px;border:1px solid #17343d;background:#0a171c;padding:11px}.task-card>div{display:flex;justify-content:space-between}.task-card h4{font-size:12px;margin:11px 0 7px}.task-card p{font-size:10px;color:var(--muted)}.task-card footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #142931;padding-top:9px;font-size:9px;color:#86a0a6}.task-card footer div{display:flex;gap:4px}

/* Assets */
.asset-status-strip{display:flex;border:1px solid var(--line);background:#071115;margin-bottom:12px;overflow:auto}.asset-status-strip span{min-width:125px;border-right:1px solid var(--line);padding:9px 12px;font-size:10px;color:var(--muted)}.asset-status-strip b{margin-left:8px;color:var(--text)}.asset-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.asset-card{border:1px solid var(--line);background:#081319;display:grid;grid-template-columns:128px 1fr;min-width:0;position:relative}.asset-card:after{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--cyan)}.asset-card.status-offline:after{background:var(--mag)}.asset-card.status-warning:after{background:var(--amber)}.asset-visual{border-right:1px solid var(--line);display:grid;place-items:center;position:relative;background:radial-gradient(circle,rgba(53,231,255,.06),transparent 65%)}.asset-visual img{width:86px;height:86px;opacity:.86}.asset-load{position:absolute;bottom:8px;left:8px;font-size:9px;color:var(--cyan)}.asset-content{padding:12px;min-width:0}.asset-content header{display:flex;justify-content:space-between;gap:8px}.asset-content h3{font-size:14px;margin:10px 0 4px}.asset-content>p{font-size:10px;color:var(--muted)}.asset-content dl{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:12px 0}.asset-content dl div{min-width:0}.asset-content dt{font-size:8px;color:#678087;text-transform:uppercase}.asset-content dd{font-size:10px;margin:3px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.load-bar{height:3px;background:#12262d;margin:10px 0}.load-bar i{display:block;height:100%;background:var(--cyan)}.asset-content footer,.team-card footer,.client-card footer{display:flex;gap:6px;align-items:center}.asset-content footer .btn,.team-card footer .btn,.client-card footer .btn{margin-right:auto}

/* Teams / clients */
.team-grid,.client-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.team-card,.client-card{border:1px solid var(--line);background:#081319;padding:14px}.team-card header{display:flex;gap:12px;align-items:center}.team-card h3,.client-card h3{margin:0 0 5px;font-size:15px}.team-mark{width:46px;height:46px;border:1px solid var(--cyan2);display:grid;place-items:center;color:var(--cyan);background:rgba(53,231,255,.04)}.team-card>p,.client-card>p{color:var(--muted);font-size:10px;line-height:1.5}.team-members{display:flex;gap:5px;flex-wrap:wrap;margin:12px 0}.team-members span,.tech-tags span{border:1px solid var(--line);padding:5px 7px;font-size:9px;background:#09171c}.team-score{display:grid;grid-template-columns:1.5fr 1fr;gap:8px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:10px 0;margin-bottom:10px}.team-score>div{position:relative}.team-score small{display:block;color:var(--muted);font-size:8px}.team-score strong{font-size:18px}.team-score .spark{position:absolute;right:0;bottom:-2px;width:82px}.team-load{display:flex;gap:16px;margin-bottom:12px;font-size:10px}.team-load b{color:var(--cyan)}.client-card header{display:flex;justify-content:space-between;color:var(--cyan);font-size:10px}.client-card h3{font-size:18px;margin-top:14px}.client-card a{font-size:10px}.client-kpis{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);margin:13px 0}.client-kpis span{padding:8px;font-size:8px;color:var(--muted);border-right:1px solid var(--line)}.client-kpis span:last-child{border:0}.client-kpis b{display:block;color:var(--text);font-size:11px;margin-top:4px}

/* SLA / finance / analytics */
.sla-hero{display:grid;grid-template-columns:1.35fr repeat(4,1fr);border:1px solid var(--line);background:#071115;margin-bottom:12px}.sla-hero>div{min-height:155px;border-right:1px solid var(--line);display:grid;place-items:center;align-content:center}.sla-hero>div:last-child{border:0}.sla-hero>div>p{font-size:10px;color:var(--muted)}.sla-metric small{font-size:9px;color:var(--muted);text-transform:uppercase}.sla-metric strong{font-size:36px;color:var(--cyan);margin:5px 0}.sla-metric span{font-size:9px}.sla-metric.danger strong{color:var(--mag)}.gauge svg{width:180px;height:96px}.gauge-track,.gauge-value{fill:none;stroke-width:9;stroke-linecap:round}.gauge-track{stroke:#142b32}.gauge-value{stroke:var(--cyan);filter:drop-shadow(0 0 3px rgba(53,231,255,.25))}.gauge-number{fill:var(--text);font-size:22px}.gauge-label{fill:var(--muted);font-size:7px}.finance-kpis{display:grid;grid-template-columns:repeat(6,1fr);border:1px solid var(--line);background:#071115;margin-bottom:12px}.finance-kpis div{padding:14px;border-right:1px solid var(--line)}.finance-kpis small{display:block;color:var(--muted);font-size:8px;min-height:22px;text-transform:uppercase}.finance-kpis strong{font-size:16px}.finance-grid{display:grid;grid-template-columns:2fr 1fr;gap:12px;margin-bottom:12px}.analytics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.chart-panel{overflow:hidden}.chart-panel>.chart-svg,.panel .chart-svg{width:100%;height:220px;padding:12px}.chart-svg line{stroke:#18333b;stroke-width:1}.chart-bar rect{fill:#168698;filter:drop-shadow(0 0 2px rgba(53,231,255,.15));animation:barIn .6s ease both;transform-origin:bottom}.chart-svg text{fill:#79949b;font-size:8px}.chart-svg .chart-value{fill:#b9d4da;font-size:8px}.chart-line{stroke:var(--cyan);stroke-width:2;filter:drop-shadow(0 0 2px rgba(53,231,255,.25));stroke-dasharray:800;animation:dash .8s ease both}.chart-svg circle{fill:#071115;stroke:var(--cyan);stroke-width:2}@keyframes dash{from{stroke-dashoffset:800}to{stroke-dashoffset:0}}@keyframes barIn{from{opacity:.2;transform:scaleY(.15)}}.donut-wrap{padding:16px;display:flex;align-items:center;gap:18px}.donut-svg{width:170px;height:170px;flex:0 0 auto;transform:rotate(-90deg)}.donut-track,.donut-seg{fill:none;stroke-width:12}.donut-track{stroke:#142a31}.donut-seg{stroke:#168698;transition:.25s}.donut-seg.seg-1{stroke:#ff3da8}.donut-seg.seg-2{stroke:#ffbd3e}.donut-seg.seg-3{stroke:#6b8cff}.donut-center,.donut-sub{transform:rotate(90deg);transform-origin:60px 60px;fill:var(--text);font-size:7px}.donut-sub{fill:var(--cyan);font-size:13px}.chart-legend{display:grid;gap:8px;font-size:9px}.chart-legend span{display:flex;align-items:center;gap:7px}.legend-dot{width:7px;height:7px;background:#168698}.seg-bg-1{background:#ff3da8}.seg-bg-2{background:#ffbd3e}.seg-bg-3{background:#6b8cff}.spark polyline{stroke:var(--cyan);stroke-width:3}

/* Event log */
.event-log{border:1px solid var(--line);background:#071115}.log-row{display:grid;grid-template-columns:120px 90px 1fr auto;gap:12px;align-items:start;border-bottom:1px solid #11262d;padding:10px 12px}.log-row:hover{background:rgba(53,231,255,.025)}.log-row time{color:#6e8b92;font-size:9px}.log-row b{font-size:10px}.log-row p{font-size:10px;color:#8ba3a9;margin:5px 0}.log-row small{color:#5f7b82}.log-links{display:flex;flex-direction:column;gap:4px}.log-links button{border:0;background:none;color:var(--cyan);font-size:9px;text-align:right}.log-group>h3{margin:0;padding:11px;background:#0a181e;border-bottom:1px solid var(--line);font-size:11px;color:var(--cyan)}.log-group>h3 span{color:var(--muted)}

/* Threat / settings */
.threat-hero{border:1px solid var(--line2);background:radial-gradient(circle at 13% 50%,rgba(255,61,168,.08),transparent 34%),#071115;min-height:250px;display:grid;grid-template-columns:260px 1fr;align-items:center;padding:22px 34px;margin-bottom:12px}.risk-orb.huge{width:190px;height:190px}.risk-orb.huge span{font-size:54px}.threat-hero h2{font-size:28px;letter-spacing:.08em;margin:4px 0 10px}.threat-hero p{max-width:800px;color:#879fa6;line-height:1.6}.threat-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:12px}.action-list{padding:8px 12px}.action-list article{display:grid;grid-template-columns:90px 1fr auto;gap:12px;align-items:center;padding:11px 0;border-bottom:1px solid #10252b}.action-list p{font-size:10px;color:#8ba4aa}.node-rank{padding:8px}.node-rank button{width:100%;display:grid;grid-template-columns:35px 1fr 100px 55px;gap:8px;align-items:center;border:0;border-bottom:1px solid #10252b;background:none;text-align:left;padding:10px}.node-rank>button>span{color:var(--cyan)}.node-rank em{font-style:normal;color:var(--amber);text-align:right}.settings-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:12px}.settings-grid .panel{padding-bottom:16px}.settings-grid .panel>p,.settings-grid .panel>.btn,.settings-grid .panel>.tech-tags{margin-left:16px;margin-right:16px}.settings-grid p{color:#8aa2a8;line-height:1.6;font-size:11px}.settings-list{margin:0 16px 16px}.settings-list div{display:flex;justify-content:space-between;border-bottom:1px solid #10252b;padding:10px 0;font-size:10px}.settings-list dt{color:var(--muted)}.tech-tags{display:flex;gap:6px;flex-wrap:wrap}

/* Modal / drawer */
.modal-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.72);z-index:100}.modal{position:fixed;z-index:110;left:50%;top:50%;width:min(820px,calc(100vw - 30px));max-height:min(86vh,900px);overflow:auto;background:#081419;border:1px solid var(--line2);box-shadow:0 24px 90px #000;transform:translate(-50%,-48%) scale(.985);opacity:0;transition:.18s}.modal.open{transform:translate(-50%,-50%) scale(1);opacity:1}.modal-head,.drawer-head,.command-menu-head{height:68px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:#09171c;position:sticky;top:0;z-index:3}.modal-head h3,.drawer-head h3,.command-menu-head h3{margin:0;font-size:15px}.modal-body{padding:16px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.form-field{display:grid;gap:5px;color:#829da4;font-size:10px}.form-field.full{grid-column:1/-1}.modal-actions{display:flex;justify-content:flex-end;gap:8px;border-top:1px solid var(--line);padding-top:14px;margin-top:16px}.drawer{position:fixed;z-index:105;right:0;top:0;bottom:0;width:min(480px,95vw);background:#071216;border-left:1px solid var(--line2);box-shadow:-24px 0 80px rgba(0,0,0,.55);transform:translateX(100%);transition:.2s}.drawer.open{transform:none}.drawer-body{padding:16px;height:calc(100vh - 68px);overflow:auto}.drawer-visual{height:170px;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;position:relative;background:radial-gradient(circle,rgba(53,231,255,.08),transparent 60%)}.drawer-visual img{width:120px;height:120px}.drawer-visual .badge{position:absolute;right:10px;top:10px}.drawer-asset h2{font-size:20px}.drawer-asset>p{color:var(--muted)}.detail-stack{display:grid;gap:14px}.detail-hero{border:1px solid var(--line);padding:14px;background:#09181e}.detail-hero h2{margin:6px 0 10px}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.detail-grid span{border:1px solid var(--line);padding:9px;color:#718c93;font-size:9px}.detail-grid b{display:block;color:var(--text);font-size:11px;margin-top:4px}.mini-list{border:1px solid var(--line)}.mini-list button{width:100%;display:grid;grid-template-columns:110px 1fr auto;gap:7px;align-items:center;border:0;border-bottom:1px solid #10252b;background:none;text-align:left;padding:9px}.drawer-events div{border-left:1px solid var(--cyan2);padding:4px 0 8px 10px}.drawer-events time{font-size:8px;color:var(--cyan)}.drawer-events p{font-size:10px;color:#879fa5}.detail-line{display:grid;grid-template-columns:160px 1fr;gap:8px;border-bottom:1px solid var(--line);padding:8px 0}.detail-line small{color:var(--muted)}.confirm-box p{line-height:1.6;color:#9ab0b6}
.command-menu{position:fixed;inset:0;z-index:120;background:#061014}.command-menu-nav{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;padding:14px}.command-menu-nav button{min-height:86px;border:1px solid var(--line);background:#0a171d;display:grid;grid-template-columns:46px 1fr;grid-template-rows:1fr 1fr;text-align:left;align-items:end;padding:12px}.command-menu-nav button>span{grid-row:1/-1;align-self:center;color:var(--cyan);font-size:20px}.command-menu-nav b{font-size:12px}.command-menu-nav small{color:var(--muted);font-size:9px}.toast-stack{position:fixed;right:18px;bottom:18px;z-index:200;display:grid;gap:8px;pointer-events:none}.toast{min-width:280px;max-width:420px;border:1px solid var(--line2);background:#09171c;box-shadow:var(--shadow);padding:11px;display:flex;align-items:center;gap:10px;transform:translateX(115%);opacity:0;transition:.22s}.toast.show{transform:none;opacity:1}.toast>span{width:4px;height:28px;background:var(--cyan)}.toast.success>span{background:var(--lime)}.toast.warn>span{background:var(--amber)}.toast p{margin:0;font-size:10px}
.mobile-nav,.mobile-menu-btn,.mobile-filter-btn{display:none}
.empty{padding:20px;text-align:center;color:var(--muted);font-size:11px}

/* Responsive */
@media(max-width:1280px){:root{--rail:68px}.command-bar{grid-template-columns:210px 1fr auto}.kpi-strip{grid-template-columns:repeat(4,1fr)}.kpi:nth-child(4){border-right:0}.kpi:nth-child(-n+4){border-bottom:1px solid var(--line)}.asset-grid,.team-grid,.client-grid{grid-template-columns:repeat(2,1fr)}.finance-kpis{grid-template-columns:repeat(3,1fr)}.finance-kpis div:nth-child(3){border-right:0}.finance-kpis div:nth-child(-n+3){border-bottom:1px solid var(--line)}}
@media(max-width:1024px){.command-bar{grid-template-columns:180px 1fr auto}.desktop-action{display:none}.command-grid .span-7,.command-grid .span-5{grid-column:span 12}.command-grid .span-4{grid-column:span 6}.row-2{grid-row:auto}.kpi-strip{grid-template-columns:repeat(4,1fr)}.network-layout{grid-template-columns:1fr 280px}.network-stage{min-height:520px}.task-board{grid-template-columns:repeat(2,1fr)}.sla-hero{grid-template-columns:repeat(2,1fr)}.sla-hero>div:first-child{grid-column:1/-1}.analytics-grid{grid-template-columns:1fr}.filters.inline{grid-template-columns:repeat(2,1fr)}.finance-grid{grid-template-columns:1fr}.threat-grid .span-6{grid-column:span 12}}
@media(max-width:768px){:root{--rail:58px}.app-shell{padding-left:var(--rail)}.command-title .eyebrow{display:none}.command-title h2{font-size:13px}.command-bar{grid-template-columns:145px 1fr auto;gap:8px;padding:8px 10px}.command-actions .btn-primary{font-size:0;width:44px;padding:0}.command-actions .btn-primary:after{content:"+";font-size:18px}.global-search-wrap kbd{display:none}.global-search{padding-right:10px}.view-root{padding:14px}.ops-banner h1{font-size:24px}.ops-banner p{font-size:11px}.kpi-strip{grid-template-columns:repeat(2,1fr)}.kpi{border-bottom:1px solid var(--line)}.kpi:nth-child(even){border-right:0}.command-grid .span-4{grid-column:span 12}.asset-grid,.team-grid,.client-grid{grid-template-columns:1fr}.network-layout{grid-template-columns:1fr}.network-stage{min-height:420px}.network-svg{height:420px}.node-list-panel{max-height:none}.node-list{max-height:none}.finance-kpis{grid-template-columns:repeat(2,1fr)}.finance-kpis div{border-bottom:1px solid var(--line)}.finance-kpis div:nth-child(odd){border-right:1px solid var(--line)}.finance-kpis div:nth-child(even){border-right:0}.threat-hero{grid-template-columns:1fr;text-align:center;justify-items:center}.threat-hero p{max-width:620px}.action-list article{grid-template-columns:80px 1fr}.action-list .btn{grid-column:1/-1}.settings-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.form-field.full{grid-column:auto}.filters{grid-template-columns:1fr 1fr}.bulk-bar{flex-wrap:wrap}.bulk-bar span{width:100%;margin:0}.incident-table-wrap{display:none}.incident-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.incident-card{border:1px solid var(--line);background:#081419;padding:12px}.incident-card header{display:flex;justify-content:space-between}.incident-card h3{font-size:14px}.incident-card>p{font-size:10px;color:var(--muted)}.card-pairs{display:grid;grid-template-columns:1fr 1fr;gap:6px}.card-pairs span{border:1px solid var(--line);padding:7px;font-size:8px;color:var(--muted)}.card-pairs b{display:block;color:var(--text);font-size:10px;margin-top:3px}.card-actions{display:flex;gap:6px;margin-top:10px}.card-actions .btn{margin-right:auto}.log-row{grid-template-columns:90px 75px 1fr}.log-links{grid-column:3;flex-direction:row}.page-toolbar{align-items:flex-start}.toolbar-actions{flex-wrap:wrap;justify-content:flex-end}}
@media(max-width:560px){:root{--top:62px}.app-shell{padding:var(--top) 0 72px}.command-rail{display:none}.command-bar{left:0;height:var(--top);grid-template-columns:1fr auto;padding:7px 9px}.command-title{display:none}.global-search-wrap{min-width:0}.global-search{height:44px;font-size:11px}.command-actions{gap:5px}.command-actions .btn-primary{display:none}.mobile-menu-btn{display:grid}.view-root{min-height:calc(100vh - 134px);padding:10px 9px 18px}.mobile-nav{position:fixed;z-index:70;left:0;right:0;bottom:0;height:64px;display:grid;grid-template-columns:repeat(5,1fr);background:#061014;border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom)}.mobile-nav button{border:0;background:none;color:#779198;display:grid;place-items:center;align-content:center;gap:3px;min-height:56px}.mobile-nav button.active{color:var(--cyan);box-shadow:inset 0 2px var(--cyan);background:rgba(53,231,255,.035)}.mobile-nav span{font-size:15px}.mobile-nav small{font-size:8px}.page h1{font-size:21px}.page-toolbar{display:grid;gap:10px}.toolbar-actions{justify-content:flex-start;width:100%}.toolbar-actions .btn{flex:1}.mobile-filter-btn{display:inline-block}.subnav{overflow:auto;gap:15px;white-space:nowrap}.ops-banner{min-height:170px;padding:16px;display:block}.ops-banner h1{font-size:22px}.ops-clock{border-left:0;border-top:1px solid var(--line);margin-top:14px;padding:10px 0 0;max-width:180px}.kpi-strip{grid-template-columns:repeat(2,1fr)}.kpi strong{font-size:16px}.threat-inline{grid-template-columns:1fr;text-align:center;justify-items:center}.threat-metrics{justify-content:center}.feed-row{grid-template-columns:70px 70px 1fr}.feed-row b{grid-column:3}.feed-row p{grid-column:1/-1}.critical-row{grid-template-columns:1fr auto}.critical-row>span{display:none}.critical-row strong{grid-column:2}.network-panel .network-svg{height:260px}.filters{position:fixed;inset:0;z-index:130;margin:0;background:#061014;display:none;grid-template-columns:1fr;align-content:start;padding:76px 16px 16px}.filters.mobile-open{display:grid}.filter-close{display:grid;position:absolute;right:15px;top:15px;width:44px;height:44px;place-items:center;border:1px solid var(--line);background:#0b171c;color:var(--text)}.filters.inline{position:static;display:grid;padding:10px;grid-template-columns:1fr 1fr;z-index:auto}.filters.inline .filter-close{display:none}.bulk-bar{display:none}.incident-cards{grid-template-columns:1fr}.kanban{grid-template-columns:repeat(8,82vw)}.kanban-col{min-height:480px}.task-board{display:flex;overflow-x:auto}.task-column{min-width:82vw}.asset-card{grid-template-columns:96px 1fr}.asset-visual img{width:68px;height:68px}.asset-content dl{grid-template-columns:1fr}.team-score{grid-template-columns:1fr 1fr}.network-stage{min-height:350px}.network-svg{height:350px}.network-toolbar{font-size:8px}.network-toolbar span:last-child{display:none}.finance-kpis{grid-template-columns:1fr}.finance-kpis div{border-right:0!important}.donut-wrap{display:grid;justify-items:center}.donut-svg{width:145px;height:145px}.sla-hero{grid-template-columns:1fr 1fr}.sla-hero>div{min-height:120px}.sla-metric strong{font-size:28px}.log-row{grid-template-columns:70px 1fr}.log-row>.badge{grid-column:2;justify-self:start}.log-row>div{grid-column:1/-1}.log-links{grid-column:1/-1}.threat-hero{padding:18px}.risk-orb.huge{width:155px;height:155px}.threat-hero h2{font-size:21px}.node-rank button{grid-template-columns:28px 1fr auto}.node-rank .badge{display:none}.settings-grid,.analytics-grid{grid-template-columns:1fr}.modal{width:calc(100vw - 16px);max-height:92vh}.modal-body{padding:12px}.detail-grid{grid-template-columns:1fr}.drawer{width:100vw}.toast-stack{left:9px;right:9px;bottom:76px}.toast{min-width:0;max-width:none}.command-menu-nav{grid-template-columns:1fr;max-height:calc(100vh - 68px);overflow:auto}.sub-status{width:100%;overflow:auto}.login-screen{padding:14px}.login-card{padding:24px 18px}.brand-lockup h1{font-size:19px}}
@media(max-width:390px){.kpi small{font-size:8px}.kpi strong{font-size:15px}.asset-card{grid-template-columns:1fr}.asset-visual{height:105px;border-right:0;border-bottom:1px solid var(--line)}.asset-content dl{grid-template-columns:1fr 1fr}.filters.inline{grid-template-columns:1fr}.team-score .spark{display:none}.sla-hero{grid-template-columns:1fr}.sla-hero>div:first-child{grid-column:auto}.finance-kpis strong{font-size:14px}.action-list article{grid-template-columns:1fr}.action-list .btn{grid-column:auto}}

@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}
.top-alerts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;background:var(--line)}
.top-alerts button{min-width:0;border:0;background:#081419;text-align:left;padding:10px;display:grid;grid-template-columns:auto 1fr;gap:6px 8px}
.top-alerts button:hover{background:#0b1a20}.top-alerts b{font-size:10px}.top-alerts span{font-size:9px;color:var(--muted);text-align:right}.top-alerts p{grid-column:1/-1;margin:2px 0 0;color:#7e999f;font-size:9px;line-height:1.45}
@media(max-width:1024px){.top-alerts{grid-template-columns:repeat(3,1fr)}}
@media(max-width:560px){.top-alerts{grid-template-columns:1fr}}

/* === CYBERPUNK V2 / visual reinforcement === */
:root{
  --bg:#02070a;--bg2:#061015;--panel:#07141a;--panel2:#0a1a21;
  --line:#163943;--line2:#267080;--cyan:#2de9ff;--cyan2:#00aabd;--mag:#ff2f9d;
  --lime:#9cff57;--amber:#ffc24b;--danger:#ff4f75;--text:#e2f6f8;--muted:#78979e;
  --shadow:0 20px 56px rgba(0,0,0,.42)
}
body{
  background-color:var(--bg);
  background-image:
    radial-gradient(circle at 82% 8%,rgba(45,233,255,.11),transparent 24%),
    radial-gradient(circle at 12% 72%,rgba(255,47,157,.055),transparent 25%),
    linear-gradient(180deg,#061116 0%,#02080b 52%,#03080b 100%);
}
body:before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:0;opacity:.38;
  background-image:
    linear-gradient(rgba(45,233,255,.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(45,233,255,.055) 1px,transparent 1px),
    linear-gradient(rgba(255,47,157,.026) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,47,157,.026) 1px,transparent 1px);
  background-size:36px 36px,36px 36px,180px 180px,180px 180px;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.75),rgba(0,0,0,.22) 58%,transparent 100%);
}
.app-shell,.login-screen{position:relative;z-index:1}
.noise{opacity:.042}.scanlines{opacity:.043;background:repeating-linear-gradient(180deg,transparent 0 3px,rgba(137,240,255,.10) 4px)}

/* icon system */
.bi{line-height:1;vertical-align:-.08em}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px}
.icon-btn .bi{font-size:17px}.row-actions .bi,.task-card footer .bi{font-size:13px}
.nav-icon{width:30px;height:30px;display:grid;place-items:center;position:relative}
.nav-icon:before{content:"";position:absolute;inset:2px;border:1px solid transparent;transform:rotate(45deg);transition:.18s}
.rail-btn .nav-icon .bi{font-size:16px;position:relative;z-index:1}
.rail-btn:hover .nav-icon:before,.rail-btn.active .nav-icon:before{border-color:rgba(45,233,255,.38);box-shadow:0 0 12px rgba(45,233,255,.15)}
.mobile-nav .nav-icon{width:26px;height:26px}.mobile-nav .nav-icon .bi{font-size:15px}
.command-menu-nav .nav-icon{width:40px;height:40px}.command-menu-nav .nav-icon .bi{font-size:21px}
.search-mark{top:11px}.search-mark .bi{font-size:14px}

/* stronger command shell */
.command-rail{
  background:
    linear-gradient(180deg,rgba(45,233,255,.045),transparent 110px),
    linear-gradient(180deg,#051116,#030b0f 62%,#071017);
  border-right-color:#1d5360;box-shadow:8px 0 28px rgba(0,0,0,.34),inset -1px 0 rgba(45,233,255,.08)
}
.command-rail:after{content:"";position:absolute;right:-1px;top:72px;width:1px;height:30%;background:linear-gradient(var(--cyan),transparent);box-shadow:0 0 10px var(--cyan);opacity:.6}
.rail-brand{position:relative}.rail-brand:after{content:"";position:absolute;inset:7px 8px;border:1px solid rgba(45,233,255,.17);transform:rotate(45deg);pointer-events:none}
.rail-btn{border-radius:2px;transition:.18s background,.18s border-color,.18s color,.18s box-shadow}
.rail-btn:hover,.rail-btn.active{background:linear-gradient(90deg,rgba(45,233,255,.10),rgba(45,233,255,.025));border-color:#1f5360;box-shadow:inset 2px 0 var(--cyan),0 0 16px rgba(45,233,255,.08)}
.command-bar{
  background:linear-gradient(180deg,rgba(6,19,24,.97),rgba(3,12,16,.95));
  border-bottom-color:#245762;box-shadow:0 10px 32px rgba(0,0,0,.28),inset 0 -1px rgba(45,233,255,.05)
}
.command-bar:after{
  content:"";position:absolute;left:18%;right:4%;bottom:-1px;height:1px;
  background:linear-gradient(90deg,transparent,var(--cyan) 18%,transparent 38%,var(--mag) 70%,transparent);
  opacity:.55;animation:dataSweep 5.4s linear infinite
}
@keyframes dataSweep{0%{transform:translateX(-14%);opacity:.2}45%{opacity:.7}100%{transform:translateX(12%);opacity:.2}}
.command-title h2{letter-spacing:.08em;text-transform:uppercase}.command-title .eyebrow{color:#57f0ff}
.global-search{background:linear-gradient(180deg,#06151a,#051015);border-color:#1d4954;box-shadow:inset 0 0 18px rgba(45,233,255,.018)}
.global-search:focus{border-color:var(--cyan);box-shadow:0 0 0 1px rgba(45,233,255,.18),0 0 20px rgba(45,233,255,.10),inset 0 0 18px rgba(45,233,255,.035)}

/* panels: visible HUD architecture without reducing readability */
.panel{
  position:relative;border-radius:2px;border-color:#1a4651;
  background:
    linear-gradient(135deg,rgba(45,233,255,.025),transparent 24%),
    linear-gradient(180deg,rgba(8,24,31,.96),rgba(5,15,20,.985));
  box-shadow:inset 0 1px rgba(116,244,255,.025),0 14px 34px rgba(0,0,0,.18);
  transition:.18s border-color,.18s box-shadow,.18s transform
}
.panel:before{content:"";position:absolute;z-index:2;pointer-events:none;left:10px;top:-1px;width:62px;height:2px;background:linear-gradient(90deg,var(--cyan),rgba(45,233,255,.08));box-shadow:0 0 8px rgba(45,233,255,.28)}
.panel:after{content:"";position:absolute;z-index:2;pointer-events:none;right:-1px;bottom:12px;width:1px;height:44px;background:linear-gradient(transparent,var(--mag),transparent);opacity:.55;box-shadow:0 0 7px rgba(255,47,157,.22)}
.panel:hover{border-color:#276674;box-shadow:inset 0 1px rgba(116,244,255,.03),0 14px 38px rgba(0,0,0,.22),0 0 14px rgba(45,233,255,.035)}
.panel-head{height:50px;background:linear-gradient(90deg,rgba(45,233,255,.035),transparent 58%);border-bottom-color:#183d47}
.panel-head h3{display:flex;align-items:center;gap:8px;letter-spacing:.12em}.panel-head h3:before{content:"";width:5px;height:5px;background:var(--cyan);box-shadow:0 0 7px rgba(45,233,255,.45);transform:rotate(45deg)}
.link-btn{display:inline-flex;align-items:center;gap:6px;padding:7px;color:#76f2ff}.link-btn:hover{color:white;text-shadow:0 0 8px rgba(45,233,255,.55)}
.page-toolbar{position:relative;padding-bottom:12px;border-bottom:1px solid rgba(28,67,77,.72)}
.page-toolbar:after{content:"";position:absolute;left:0;bottom:-1px;width:min(190px,38vw);height:1px;background:linear-gradient(90deg,var(--cyan),transparent);box-shadow:0 0 8px rgba(45,233,255,.25)}
.page h1{letter-spacing:-.015em;text-shadow:0 0 20px rgba(45,233,255,.06)}
.eyebrow{color:#5cf1ff;text-shadow:0 0 10px rgba(45,233,255,.16)}

/* buttons */
.btn,.icon-btn{border-radius:2px}.btn{position:relative;overflow:hidden}.btn:before{content:"";position:absolute;left:-30%;top:0;width:20%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.09),transparent);transform:skewX(-25deg);transition:.35s}.btn:hover:before{left:118%}
.btn-primary{border-color:#22bed0;background:linear-gradient(135deg,#0d6874,#0a3f49 62%,#0d2630);box-shadow:inset 0 0 18px rgba(45,233,255,.11),0 0 13px rgba(45,233,255,.08)}
.btn-primary:hover{border-color:var(--cyan);box-shadow:inset 0 0 18px rgba(45,233,255,.15),0 0 16px rgba(45,233,255,.14)}
.btn-danger{border-color:#8b3151;background:linear-gradient(135deg,#421526,#251018);box-shadow:inset 0 0 14px rgba(255,47,157,.07)}
.icon-btn{background:linear-gradient(180deg,#0a181e,#061116)}

/* login gets a stronger command-console read */
.login-screen:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 42%,rgba(45,233,255,.11),transparent 28%),radial-gradient(circle at 72% 66%,rgba(255,47,157,.055),transparent 24%);pointer-events:none}
.login-grid{opacity:1;background-size:40px 40px;filter:drop-shadow(0 0 12px rgba(45,233,255,.07))}
.login-card{border-color:#2d7280;background:linear-gradient(145deg,rgba(7,23,29,.985),rgba(3,10,14,.99));box-shadow:0 0 0 1px rgba(45,233,255,.055),0 0 38px rgba(45,233,255,.055),0 34px 100px #000}
.login-card:before{content:"";position:absolute;left:18px;right:18px;top:0;height:2px;background:linear-gradient(90deg,var(--cyan),transparent 48%,var(--mag));box-shadow:0 0 10px rgba(45,233,255,.25)}
.login-card:after{content:"ЛОКАЛЬНЫЙ // ДЕМО-ДОСТУП";position:absolute;right:26px;bottom:16px;color:rgba(45,233,255,.24);font-size:8px;letter-spacing:.18em;pointer-events:none}

/* command center */
.ops-banner{
  min-height:150px;border-color:#2c7180;
  background:
    repeating-linear-gradient(118deg,transparent 0 28px,rgba(45,233,255,.018) 29px 30px),
    linear-gradient(100deg,rgba(9,38,46,.98),rgba(4,16,21,.98));
  box-shadow:inset 0 0 44px rgba(45,233,255,.035),0 18px 38px rgba(0,0,0,.18)
}
.ops-banner:before{content:"";position:absolute;left:-18%;top:0;width:26%;height:100%;background:linear-gradient(90deg,transparent,rgba(45,233,255,.06),transparent);transform:skewX(-18deg);animation:bannerScan 5.8s ease-in-out infinite}
@keyframes bannerScan{0%,12%{left:-24%}70%,100%{left:116%}}
.ops-banner:after{border-color:rgba(45,233,255,.18);box-shadow:0 0 0 28px rgba(45,233,255,.018),0 0 0 58px rgba(255,47,157,.010)}
.ops-banner h1 span{color:#56f1ff;text-shadow:0 0 18px rgba(45,233,255,.23)}
.ops-clock{border-left-color:#2a6672}.ops-clock b{color:#dffcff;text-shadow:0 0 11px rgba(45,233,255,.22);letter-spacing:.08em}
.kpi-strip{border-color:#1f4a55;background:#061116;box-shadow:0 12px 28px rgba(0,0,0,.15)}
.kpi{min-height:86px;padding:14px 12px;background:linear-gradient(180deg,rgba(45,233,255,.014),transparent);transition:.18s background,.18s box-shadow}
.kpi:hover{background:linear-gradient(180deg,rgba(45,233,255,.055),rgba(45,233,255,.012));box-shadow:inset 0 0 18px rgba(45,233,255,.035)}
.kpi strong{color:#e7fbfd;text-shadow:0 0 10px rgba(45,233,255,.07)}.kpi.magenta strong{color:#ffd5ea}.kpi.amber strong{color:#ffe3a4}.kpi.lime strong{color:#d7ffbd}
.command-grid{gap:12px;align-items:stretch}.command-grid>.panel{height:100%}
.threat-inline{min-height:270px}.network-panel .network-svg{height:270px}.feed-list{max-height:370px}.critical-list{min-height:320px}
.risk-orb{box-shadow:inset 0 0 28px rgba(45,233,255,.07),0 0 20px rgba(45,233,255,.045)}
.risk-orb.risk-high{box-shadow:inset 0 0 30px rgba(255,47,157,.08),0 0 22px rgba(255,47,157,.055)}
.top-alerts-panel{overflow:hidden}.top-alerts{background:#173842}.top-alerts button{background:linear-gradient(180deg,#08161c,#061116);min-height:118px}.top-alerts button:hover{background:linear-gradient(180deg,#0b2028,#08161d)}

/* consistent cards and two-column layouts */
.finance-grid,.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.sla-hero{grid-template-columns:repeat(5,minmax(0,1fr))}
.sla-hero>div:first-child{min-width:0}
.asset-grid,.team-grid,.client-grid{align-items:stretch}.asset-grid>* ,.team-grid>* ,.client-grid>*{height:100%}
.asset-card,.team-card,.client-card{border-color:#1b4651;background:linear-gradient(180deg,#08181e,#061116);box-shadow:0 12px 26px rgba(0,0,0,.14);transition:.18s transform,.18s border-color,.18s box-shadow}
.asset-card:hover,.team-card:hover,.client-card:hover{transform:translateY(-1px);border-color:#286776;box-shadow:0 15px 32px rgba(0,0,0,.20),0 0 14px rgba(45,233,255,.035)}
.asset-content{display:flex;flex-direction:column}.asset-content footer{margin-top:auto}.team-card,.client-card{display:flex;flex-direction:column}.team-card footer,.client-card footer{margin-top:auto}
.asset-visual{background:radial-gradient(circle at 50% 45%,rgba(45,233,255,.13),rgba(45,233,255,.025) 48%,transparent 68%),linear-gradient(135deg,rgba(45,233,255,.035),transparent);overflow:hidden}
.asset-visual:before{content:"";position:absolute;width:90px;height:90px;border:1px dashed rgba(45,233,255,.18);border-radius:50%;animation:spin 22s linear infinite}
.asset-device-icon{font-size:56px;color:#80f4ff;text-shadow:0 0 16px rgba(45,233,255,.24);position:relative;z-index:1}
.asset-card.status-offline .asset-device-icon{color:#ff75ba;text-shadow:0 0 16px rgba(255,47,157,.22)}.asset-card.status-warning .asset-device-icon{color:#ffd67a;text-shadow:0 0 14px rgba(255,194,75,.18)}
.drawer-visual .asset-device-icon{font-size:86px;color:#80f4ff;text-shadow:0 0 24px rgba(45,233,255,.22)}
.drawer-visual{background:radial-gradient(circle,rgba(45,233,255,.13),rgba(45,233,255,.025) 46%,transparent 66%),linear-gradient(135deg,#07191f,#051015)}

/* tables and status strips */
.table-wrap{border-color:#1c4853;background:#051015;box-shadow:inset 0 1px rgba(45,233,255,.03)}
.data-table th{background:linear-gradient(180deg,#0a1d24,#07161c);color:#8fb2ba;border-bottom-color:#29606c}.data-table td{border-bottom-color:#102d35}.data-table tbody tr:hover{background:rgba(45,233,255,.038)}
.asset-status-strip,.finance-kpis,.sla-hero{border-color:#1f4b56;background:#061116}
.filters,.subnav,.bulk-bar{border-color:#1c4651;background:linear-gradient(180deg,#07161c,#051116)}

/* network */
.network-stage{background:linear-gradient(180deg,rgba(45,233,255,.016),transparent),#061116}
.network-svg{background:radial-gradient(circle at 50% 50%,rgba(45,233,255,.085),transparent 46%)}
.net-grid-line{stroke:#16414c}.net-link{stroke:#2a6470}.node-ring{filter:drop-shadow(0 0 1.5px rgba(45,233,255,.32))}
.node-list button:hover{background:linear-gradient(90deg,rgba(45,233,255,.07),transparent)}

/* modal / drawer */
.modal,.drawer{background:linear-gradient(180deg,#07171d,#041015);border-color:#2b6977;box-shadow:var(--shadow),0 0 28px rgba(45,233,255,.045)}
.modal-head,.drawer-head,.command-menu-head{background:linear-gradient(90deg,rgba(45,233,255,.055),rgba(7,23,29,.98));border-bottom-color:#23525e}
.command-menu{background:radial-gradient(circle at 50% 18%,rgba(45,233,255,.08),transparent 34%),#041015}
.command-menu-nav button{border-color:#1c4b56;background:linear-gradient(135deg,#081a21,#051116);transition:.18s}.command-menu-nav button:hover{border-color:#2b7a89;box-shadow:0 0 16px rgba(45,233,255,.055)}
.toast{border-color:#2a6875;background:linear-gradient(90deg,#091d24,#061218)}

/* width/responsive corrections after the v2 overrides */
@media(max-width:1280px){
  .finance-grid,.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:1024px){
  .command-grid .span-6{grid-column:span 12}
  .command-grid .span-4{grid-column:span 4}
  .finance-grid{grid-template-columns:1fr}
  .sla-hero{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sla-hero>div:first-child{grid-column:1/-1}
}
@media(max-width:768px){
  .command-grid .span-4{grid-column:span 12}
  .settings-grid{grid-template-columns:1fr}
  .top-alerts{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:560px){
  body:before{opacity:.25;background-size:28px 28px,28px 28px,140px 140px,140px 140px}
  .command-bar:after{left:4%;right:4%}
  .panel:before{width:42px}
  .ops-banner{min-height:190px}.ops-banner:before{display:none}
  .threat-inline{min-height:0}.network-panel .network-svg{height:260px}.critical-list{min-height:0}
  .top-alerts{grid-template-columns:1fr}
  .sla-hero{grid-template-columns:1fr 1fr}
  .sla-hero>div:first-child{grid-column:1/-1}
  .asset-device-icon{font-size:48px}
}
@media(max-width:390px){
  .sla-hero{grid-template-columns:1fr}.sla-hero>div:first-child{grid-column:auto}
}
@media(prefers-reduced-motion:reduce){.command-bar:after,.ops-banner:before,.asset-visual:before{animation:none!important}}

@media(max-width:768px){.command-actions .btn-primary:after{content:none}.command-actions .btn-primary .bi{font-size:17px}}

/* === V3 / priority alerts + tactical topology === */
.top-alerts-panel{
  min-height:410px;
  overflow:hidden;
  background:
    linear-gradient(110deg,rgba(255,47,157,.025),transparent 28%),
    linear-gradient(180deg,rgba(8,24,31,.98),rgba(4,13,18,.99));
}
.top-alerts-panel:after{height:110px;bottom:54px;opacity:.8}
.top-alerts-head{height:64px;padding:0 18px;background:linear-gradient(90deg,rgba(255,47,157,.05),rgba(45,233,255,.025) 38%,transparent 72%)}
.top-alerts-head>div{display:flex;align-items:baseline;gap:14px;min-width:0}
.top-alerts-head h3:before{background:var(--mag);box-shadow:0 0 9px rgba(255,47,157,.5)}
.top-alerts-sub{font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:#607f87;white-space:nowrap}
.top-alerts{
  min-height:345px;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  grid-auto-rows:minmax(160px,1fr);
  gap:1px;
  background:#173f49;
}
.top-alert-card{
  position:relative;min-width:0;min-height:170px;border:0!important;padding:18px 44px 17px 18px!important;
  background:
    linear-gradient(135deg,rgba(45,233,255,.025),transparent 48%),
    linear-gradient(180deg,#08191f,#051116)!important;
  display:grid!important;grid-template-columns:32px minmax(0,1fr)!important;gap:12px!important;
  align-items:start;text-align:left;overflow:hidden;transition:.18s background,.18s box-shadow,.18s transform!important;
}
.top-alert-card:nth-child(-n+2){grid-column:span 3}
.top-alert-card:nth-child(n+3){grid-column:span 2}
.top-alert-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--cyan);opacity:.65;box-shadow:0 0 8px rgba(45,233,255,.28)}
.top-alert-card.alert-критическая:before{background:var(--mag);box-shadow:0 0 10px rgba(255,47,157,.45)}
.top-alert-card.alert-высокая:before{background:var(--amber);box-shadow:0 0 8px rgba(255,194,75,.28)}
.top-alert-card:after{content:"";position:absolute;right:-20px;bottom:-25px;width:90px;height:70px;border:1px solid rgba(45,233,255,.06);transform:skewX(-28deg) rotate(-8deg)}
.top-alert-card:hover{z-index:2;transform:translateY(-1px);background:linear-gradient(135deg,rgba(45,233,255,.07),transparent 52%),linear-gradient(180deg,#0a2028,#06151b)!important;box-shadow:inset 0 0 28px rgba(45,233,255,.035),0 0 18px rgba(0,0,0,.32)}
.alert-seq{font-size:21px;line-height:1;color:#315f69;letter-spacing:-.08em;padding-top:3px}
.alert-card-main{min-width:0;display:flex;flex-direction:column;height:100%}
.alert-card-top{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:13px}
.alert-time{font-size:9px;color:#66858d;white-space:nowrap}
.alert-card-main>strong{font-size:14px;letter-spacing:.03em;color:#e2f8fb;margin-bottom:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.alert-card-main>p{margin:0 0 14px!important;color:#8ba7ad!important;font-size:10px!important;line-height:1.6!important;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.alert-meta{display:flex;gap:12px;flex-wrap:wrap;margin-top:auto;padding-top:11px;border-top:1px solid #113039}
.alert-meta span{display:inline-flex!important;align-items:center;gap:6px;text-align:left!important;color:#63848c!important;font-size:9px!important;min-width:0}
.alert-meta .bi{color:#4bc9d9;font-size:11px}
.alert-open{position:absolute;right:15px;top:50%;transform:translateY(-50%);display:grid!important;place-items:center;width:25px;height:38px!important;border-left:1px solid #173d46;color:#4ecfe0!important;font-size:14px!important;opacity:.55;transition:.18s opacity,.18s transform}
.top-alert-card:hover .alert-open{opacity:1;transform:translate(2px,-50%)}

/* tactical network map */
.network-stage{position:relative;border-color:#23606d;background:#031015;box-shadow:inset 0 0 60px rgba(45,233,255,.025),0 18px 38px rgba(0,0,0,.2)}
.network-toolbar{height:54px;padding:0 18px;background:linear-gradient(90deg,rgba(45,233,255,.045),transparent 60%);border-bottom-color:#20505b;letter-spacing:.05em}
.network-toolbar b{color:#bdeff5;font-weight:600}.network-toolbar span:last-child{color:#577880}
.network-svg{height:min(71vh,690px);min-height:560px;background:#030d11;isolation:isolate}
.network-panel .network-svg{height:300px;min-height:300px}
.network-svg.compact{height:300px;min-height:300px}
.net-backdrop{fill:#030c10}.net-grid{opacity:.9}.net-vignette{pointer-events:none}.net-core-aura{pointer-events:none}
.net-grid-minor{fill:none;stroke:#0e2a32;stroke-width:.12;opacity:.62}.net-grid-major{fill:none;stroke:#17404a;stroke-width:.18;opacity:.8}
.net-sector-rings ellipse{fill:none;stroke:#1e515c;stroke-width:.22;stroke-dasharray:1.1 2.2;opacity:.72}
.net-sector-rings path{fill:none;stroke:#12343d;stroke-width:.18;stroke-dasharray:.7 2.2;opacity:.5}
.net-sector-labels text{fill:#456b73;font-size:2.1px;letter-spacing:.13em}
.net-link-base{stroke:#1d4d58;stroke-width:.48;opacity:.86}.net-link-data{stroke:#56ebfb;stroke-width:.22;stroke-dasharray:.8 4.2;opacity:.62;animation:netFlow 3.1s linear infinite;animation-delay:var(--flow-delay)}
.net-link-group.hot .net-link-base{stroke:#6b4960}.net-link-group.hot .net-link-data{stroke:#ff5aae;opacity:.78}
@keyframes netFlow{to{stroke-dashoffset:-10}}
.net-core-mark circle{fill:none;stroke:#2b7887;stroke-width:.28;stroke-dasharray:1 1.8;transform-origin:80px 50px;animation:spin 24s linear infinite}.net-core-mark circle+circle{stroke:#8b2b63;opacity:.5;animation-direction:reverse;animation-duration:17s}.net-core-mark path{stroke:#2de9ff;stroke-width:.28;opacity:.7}
.node-hit{fill:transparent;stroke:none}.node-pulse-ring{fill:rgba(45,233,255,.018);stroke:rgba(45,233,255,.18);stroke-width:.25;stroke-dasharray:.8 1.3;transform-origin:center;animation:nodeOrbit 8s linear infinite}
@keyframes nodeOrbit{to{transform:rotate(360deg)}}
.node-frame{fill:#06161c;stroke:#4dd9e9;stroke-width:.5;transition:.16s stroke-width,.16s filter,.16s fill}.node-core{fill:#56efff;filter:drop-shadow(0 0 1.6px rgba(45,233,255,.8))}.node-tick{fill:none;stroke:#3a8995;stroke-width:.28}
.net-node.warn .node-frame{stroke:#ffc24b}.net-node.warn .node-core{fill:#ffc24b;filter:drop-shadow(0 0 1.6px rgba(255,194,75,.75))}.net-node.warn .node-pulse-ring{stroke:rgba(255,194,75,.35)}
.net-node.crit .node-frame{stroke:#ff3f9f}.net-node.crit .node-core{fill:#ff4da7;filter:drop-shadow(0 0 2px rgba(255,47,157,.9));animation:nodeCorePulse 1.15s ease-in-out infinite}.net-node.crit .node-pulse-ring{stroke:rgba(255,47,157,.48);animation:alertRing 1.5s ease-out infinite}
.net-node.maint .node-frame{stroke:#a2b8ff}.net-node.maint .node-core{fill:#a2b8ff}.net-node.off{opacity:.45}
.net-node.hub .node-frame{fill:#09242c;stroke:#73f4ff;stroke-width:.7}.net-node.hub .node-core{fill:#e2feff}.net-node.hub .node-pulse-ring{stroke:#48e6f7;opacity:.65}
@keyframes nodeCorePulse{50%{opacity:.42;transform:scale(.76)}}@keyframes alertRing{0%{opacity:.75;transform:scale(.78)}100%{opacity:0;transform:scale(1.55)}}
.net-node:hover .node-frame,.net-node:focus .node-frame{stroke-width:.95;fill:#0b2530;filter:drop-shadow(0 0 2.3px rgba(45,233,255,.7));outline:none}.net-node:focus{outline:none}
.net-node-label rect{fill:#041116;stroke:#1c4e58;stroke-width:.2;opacity:.94}.net-node-label text{fill:#8fb4bb;font-size:2.45px;letter-spacing:.035em;pointer-events:none}.net-node.hub .net-node-label rect{stroke:#2e7b89}.net-node.hub .net-node-label text{fill:#c4f9ff;font-weight:700}
.net-hud-corners path{fill:none;stroke:#44b9c7;stroke-width:.45;opacity:.75}.net-scan-axis path{stroke:#3b929e;stroke-width:.3}.net-scan-axis rect{fill:#2de9ff;opacity:.42}
.network-svg.compact .net-sector-labels{display:none}.network-svg.compact .net-hud-corners{opacity:.65}.network-svg.compact .net-node-label text{font-size:2.8px}.network-svg.compact .net-node-label rect{opacity:.88}

@media(max-width:1024px){
  .top-alerts{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(160px,auto)}
  .top-alert-card:nth-child(n){grid-column:span 1}
  .top-alert-card:first-child{grid-column:span 2}
  .top-alerts-panel{min-height:0}
  .network-svg{min-height:500px}
}
@media(max-width:768px){
  .top-alerts-head{height:auto;min-height:64px;padding:10px 14px}.top-alerts-head>div{display:block}.top-alerts-sub{display:block;margin-top:5px}
  .top-alerts{grid-template-columns:1fr}.top-alert-card:nth-child(n){grid-column:span 1}.top-alert-card{min-height:150px}
  .network-svg{height:430px;min-height:430px}.network-panel .network-svg,.network-svg.compact{height:290px;min-height:290px}
}
@media(max-width:560px){
  .top-alert-card{grid-template-columns:25px minmax(0,1fr)!important;padding:15px 37px 14px 13px!important;gap:9px!important}.alert-seq{font-size:17px}.alert-card-main>strong{font-size:12px}.alert-meta{gap:8px}
  .network-svg{height:330px;min-height:330px}.network-panel .network-svg,.network-svg.compact{height:250px;min-height:250px}
  .net-sector-labels,.net-node-label{display:none}.net-grid-minor{opacity:.35}.net-core-mark circle{opacity:.55}
}
@media(prefers-reduced-motion:reduce){.net-link-data,.node-pulse-ring,.net-core-mark circle,.net-node.crit .node-core{animation:none!important}}
.network-svg.compact .net-node-label text{display:block}

/* === V4 / command-grid sizing + refined operations surface === */
/* Full-row modules must opt out of the implicit one-column placement in the 12-column command grid */
.span-12{grid-column:1 / -1}
.command-grid{gap:14px;grid-auto-flow:row dense}
.command-grid>.top-alerts-panel{grid-column:1 / -1;width:100%;max-width:none;justify-self:stretch;align-self:stretch}

/* sharper page hierarchy */
.view-root{padding-top:20px;background:
  linear-gradient(90deg,rgba(45,233,255,.012) 1px,transparent 1px),
  linear-gradient(rgba(45,233,255,.009) 1px,transparent 1px);
  background-size:84px 84px}
.page-toolbar{min-height:58px;padding:0 2px 13px}
.page-toolbar h1{font-weight:690;letter-spacing:-.025em}
.panel{border-color:#1c4d58;background:
  linear-gradient(135deg,rgba(45,233,255,.024),transparent 22%),
  linear-gradient(180deg,rgba(7,23,29,.985),rgba(4,14,19,.995))}
.panel-head{height:54px;padding-inline:16px;background:
  linear-gradient(90deg,rgba(45,233,255,.047),transparent 44%),
  repeating-linear-gradient(90deg,transparent 0 22px,rgba(45,233,255,.012) 23px 24px)}
.panel-head h3{font-size:11px;letter-spacing:.13em;color:#d9f5f8}

/* priority alert board: independent internal grid, full command-center width */
.top-alerts-panel{
  min-height:500px;
  border-color:#315f6b;
  box-shadow:inset 0 0 60px rgba(45,233,255,.018),0 18px 42px rgba(0,0,0,.22)
}
.top-alerts-panel:before{width:124px;background:linear-gradient(90deg,var(--mag),var(--cyan),transparent);height:2px}
.top-alerts-head{
  min-height:70px;height:70px;padding:0 20px;
  background:
    linear-gradient(90deg,rgba(255,47,157,.07),rgba(45,233,255,.035) 31%,transparent 66%),
    repeating-linear-gradient(135deg,transparent 0 13px,rgba(255,255,255,.012) 14px 15px)
}
.top-alerts-head:after{content:"";position:absolute;left:20px;right:20px;bottom:-1px;height:1px;background:linear-gradient(90deg,var(--mag),rgba(255,47,157,.15) 21%,rgba(45,233,255,.35) 55%,transparent 88%)}
.top-alerts-head h3{font-size:13px;letter-spacing:.16em}
.top-alerts-sub{font-size:9px;color:#76959c;letter-spacing:.12em}
.top-alerts-controls{display:flex;align-items:center;gap:16px}
.alerts-channel{display:inline-flex;align-items:center;gap:7px;min-height:28px;padding:0 9px;border:1px solid #2a5360;background:#07161c;color:#789aa1;font-size:8px;letter-spacing:.13em;white-space:nowrap}
.alerts-channel i{width:6px;height:6px;border-radius:50%;background:var(--mag);box-shadow:0 0 0 3px rgba(255,47,157,.08),0 0 9px rgba(255,47,157,.42)}
.top-alerts{
  min-height:428px;
  padding:10px;
  gap:10px;
  grid-template-columns:repeat(12,minmax(0,1fr));
  grid-template-rows:repeat(2,minmax(188px,1fr));
  background:
    linear-gradient(90deg,rgba(45,233,255,.02) 1px,transparent 1px),
    linear-gradient(rgba(45,233,255,.016) 1px,transparent 1px),#041116;
  background-size:32px 32px
}
.top-alert-card{min-height:188px!important;border:1px solid #173e48!important;padding:19px 48px 18px 18px!important;box-shadow:inset 0 1px rgba(255,255,255,.018)}
.top-alert-card:nth-child(1),.top-alert-card:nth-child(2){grid-column:span 6}
.top-alert-card:nth-child(n+3){grid-column:span 4}
.top-alert-card:before{width:3px}
.top-alert-card:after{right:-28px;bottom:-42px;width:130px;height:104px;border-color:rgba(45,233,255,.09);box-shadow:0 0 0 12px rgba(45,233,255,.008)}
.top-alert-card:hover{border-color:#28636f!important;transform:translateY(-2px)}
.top-alert-card.alert-критическая{background:linear-gradient(120deg,rgba(255,47,157,.055),transparent 32%),linear-gradient(180deg,#0a1820,#051116)!important}
.top-alert-card.alert-высокая{background:linear-gradient(120deg,rgba(255,194,75,.035),transparent 32%),linear-gradient(180deg,#09191f,#051116)!important}
.alert-seq{font-size:24px;color:#376d78;font-variant-numeric:tabular-nums}
.alert-card-main>strong{font-size:15px;letter-spacing:.045em}
.alert-card-main>p{font-size:11px!important;line-height:1.65!important;color:#91abb1!important;max-width:78ch}
.alert-meta{border-top-color:#14343d;padding-top:12px}
.alert-open{height:48px!important;width:29px;border-left-color:#1b4550}

/* command-center panels feel like one system rather than unrelated cards */
.command-grid>.span-6:not(.top-alerts-panel){min-height:320px}
.command-grid>.span-4{min-height:245px}
.command-grid .critical-list,.command-grid .feed-list{scrollbar-width:thin;scrollbar-color:#235966 transparent}
.meter-list>div,.deadline-list button,.client-risk-list>div{min-height:46px}

/* Tactical topology: less decorative radar, more schematic/network-console geometry */
.network-stage,.network-panel{background:linear-gradient(180deg,rgba(4,18,24,.99),rgba(2,10,14,.995))}
.network-toolbar{border-bottom-color:#285d68;background:linear-gradient(90deg,rgba(45,233,255,.055),transparent 52%)}
.network-svg{filter:saturate(.94) contrast(1.04)}
.net-sector-rings ellipse{stroke-dasharray:.65 2.6;opacity:.48}
.net-sector-rings path{stroke:#1c4550;stroke-dasharray:none;opacity:.56}
.net-link-base{stroke:#275663;stroke-width:.54;opacity:.92}
.net-link-data{stroke-width:.24;stroke-dasharray:.7 4.6;opacity:.72}
.net-node-label rect{fill:#031015;stroke:#285a65;opacity:.96}
.net-node-label text{fill:#9abcc3}
.net-node.hub .node-frame{stroke-width:.82;filter:drop-shadow(0 0 2px rgba(45,233,255,.35))}

@media(max-width:1280px){
  .top-alerts{grid-template-columns:repeat(6,minmax(0,1fr));grid-template-rows:auto}
  .top-alert-card:nth-child(-n+2){grid-column:span 3}
  .top-alert-card:nth-child(n+3){grid-column:span 2}
}
@media(max-width:1024px){
  .top-alerts-panel{min-height:0}
  .top-alerts{grid-template-columns:repeat(2,minmax(0,1fr));padding:8px;gap:8px}
  .top-alert-card:nth-child(n){grid-column:span 1}
  .top-alert-card:first-child{grid-column:1 / -1}
}
@media(max-width:768px){
  .top-alerts-head{height:auto;min-height:76px;align-items:flex-start;padding-block:12px;gap:10px}
  .top-alerts-controls{align-self:center}.alerts-channel{display:none}
  .top-alerts{grid-template-columns:1fr}
  .top-alert-card:nth-child(n),.top-alert-card:first-child{grid-column:1}
  .top-alert-card{min-height:164px!important}
  .command-grid>.span-6:not(.top-alerts-panel),.command-grid>.span-4{min-height:0}
}
