:root{
  --bg:#0a0d12;--bg-2:#0e1218;--panel:#121821;--panel-2:#171e28;--raised:#1d2632;
  --line:rgba(214,225,235,.09);--line-2:rgba(214,225,235,.16);
  --ink:#edf2f4;--muted:#a1adb7;--dim:#697681;
  --accent:#70c7b1;--accent-2:#399a87;--accent-bg:rgba(92,190,166,.12);
  --ok:#69c794;--ok-bg:rgba(105,199,148,.12);
  --warn:#d8ad64;--warn-bg:rgba(216,173,100,.12);
  --bad:#e27972;--bad-bg:rgba(226,121,114,.12);
  --steel:#8ca3b4;--steel-bg:rgba(140,163,180,.12);
  --font:"Vazirmatn",system-ui,sans-serif;--mono:"IBM Plex Mono",monospace;
  --radius:15px;--shadow:0 18px 48px rgba(0,0,0,.28);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;min-height:100vh;background:
  radial-gradient(900px 500px at 88% -14%,rgba(82,171,149,.10),transparent 62%),
  radial-gradient(700px 420px at -10% 12%,rgba(80,112,128,.06),transparent 64%),var(--bg);
  color:var(--ink);font-family:var(--font);line-height:1.75;-webkit-font-smoothing:antialiased}
h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.45;letter-spacing:-.015em}
a{color:inherit;text-decoration:none}button,input{font-family:inherit}button{cursor:pointer}
svg{stroke-width:1.8}
.mono{font-family:var(--mono);direction:ltr;display:inline-block}.strong{font-weight:700;color:var(--ink)}
.shell{width:min(100% - 40px,1240px);margin-inline:auto}.main{padding:30px 0 68px}
.eyebrow{font-size:11px;font-weight:700;color:var(--accent);letter-spacing:.06em;margin-bottom:7px}
.panel{background:linear-gradient(180deg,rgba(21,28,38,.96),rgba(14,18,24,.96));border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}

/* topbar */
.soc-topbar{position:sticky;top:0;z-index:60;display:flex;align-items:center;gap:15px;width:min(100%,1280px);margin:auto;padding:12px 20px;background:rgba(10,13,18,.88);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}
.soc-brand{display:flex;align-items:center;gap:11px;flex:none}
.soc-brand-mark{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;color:var(--accent);background:var(--accent-bg);border:1px solid rgba(112,199,177,.22)}
.soc-brand-mark svg{width:21px;height:21px}
.soc-brand-text b{display:block;font-size:15px}.soc-brand-text span{display:block;color:var(--dim);font-size:10.5px;margin-top:-1px}
.demo-state{display:inline-flex;align-items:center;gap:7px;padding:6px 10px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:10.5px;white-space:nowrap}
.demo-state>span{width:7px;height:7px;border-radius:50%;background:var(--warn)}
.soc-nav{display:flex;align-items:center;gap:3px;margin-inline-start:auto}
.soc-nav a{display:inline-flex;align-items:center;gap:6px;padding:8px 10px;border-radius:9px;color:var(--muted);font-size:12.5px;font-weight:500;white-space:nowrap;border:1px solid transparent;transition:.18s}
.soc-nav a svg{width:15px;height:15px}.soc-nav a:hover{color:var(--ink);background:var(--panel)}
.soc-nav a.is-active{color:var(--ink);background:var(--accent-bg);border-color:rgba(112,199,177,.2)}
.soc-menu-toggle{display:none;width:42px;height:42px;margin-inline-start:auto;border:1px solid var(--line-2);border-radius:11px;background:var(--panel);color:var(--ink)}
.soc-menu-toggle svg{width:21px;height:21px}

/* shared */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;border-radius:10px;border:1px solid var(--line-2);font-size:13px;font-weight:600;transition:.18s}
.btn svg{width:16px;height:16px}.btn-primary{background:var(--accent);border-color:transparent;color:#07110e}.btn-primary:hover{background:#83d3bf}
.btn-secondary{background:var(--panel);color:var(--ink)}.btn-secondary:hover{border-color:var(--accent);color:var(--accent)}
.tag{display:inline-flex;align-items:center;justify-content:center;padding:3px 9px;border-radius:999px;font-size:10.5px;font-weight:700;white-space:nowrap}
.tag.ok,.text-ok{color:var(--ok)}.tag.ok{background:var(--ok-bg)}
.tag.warn,.text-warn{color:var(--warn)}.tag.warn{background:var(--warn-bg)}
.tag.bad,.text-bad{color:var(--bad)}.tag.bad{background:var(--bad-bg)}
.tag.steel,.text-steel{color:var(--steel)}.tag.steel{background:var(--steel-bg)}
.signal-dot,.severity-mark{display:block;flex:none;border-radius:999px}
.signal-dot{width:8px;height:8px}.severity-mark{width:4px;align-self:stretch;min-height:40px}
.signal-dot.ok,.severity-mark.ok{background:var(--ok)}.signal-dot.warn,.severity-mark.warn{background:var(--warn)}.signal-dot.bad,.severity-mark.bad{background:var(--bad)}.signal-dot.steel,.severity-mark.steel{background:var(--steel)}
.section-title{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:42px 0 16px}.section-title h2{font-size:22px}.section-note{font-size:11.5px;color:var(--dim)}
.panel-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-bottom:14px;border-bottom:1px solid var(--line)}
.panel-head h2{font-size:17px}.panel-head a{font-size:11.5px;color:var(--accent)}

/* dashboard */
.command-hero{display:grid;grid-template-columns:minmax(0,1.5fr) 360px;gap:18px;align-items:stretch;margin-bottom:17px}
.hero-copy{min-height:310px;padding:34px;border-radius:18px;background:
  linear-gradient(90deg,rgba(112,199,177,.06),transparent 56%),linear-gradient(180deg,var(--panel-2),var(--bg-2));border:1px solid var(--line)}
.hero-copy h1{font-size:clamp(28px,4vw,43px);max-width:760px;margin-bottom:12px}.hero-copy>p:not(.eyebrow){color:var(--muted);max-width:72ch;font-size:14.5px}
.hero-actions{display:flex;gap:10px;margin-top:26px}
.posture-card{padding:24px;border-radius:18px;background:var(--panel);border:1px solid var(--line)}
.posture-head{display:flex;justify-content:space-between;color:var(--muted);font-size:11.5px}.posture-head time{color:var(--dim)}
.posture-score{display:flex;align-items:baseline;gap:7px;margin:24px 0 10px}.posture-score strong{font-family:var(--mono);font-size:48px;line-height:1}.posture-score>span{color:var(--dim);font-size:11px}.posture-score em{font-style:normal;margin-inline-start:auto;font-size:12px;font-weight:700}.posture-score em.warn{color:var(--warn)}
.posture-bar{height:7px;background:var(--raised);border-radius:9px;overflow:hidden}.posture-bar span{display:block;height:100%;border-radius:9px;background:linear-gradient(90deg,var(--warn),var(--accent))}
.posture-card>p{color:var(--muted);font-size:13px;margin-top:17px}.posture-card>small{display:flex;gap:7px;color:var(--dim);font-size:10px;margin-top:15px;padding-top:13px;border-top:1px solid var(--line)}.posture-card>small svg{width:14px;flex:none}
.kpi-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
.kpi-card{display:flex;gap:11px;padding:15px;border:1px solid var(--line);border-radius:13px;background:rgba(17,23,31,.82)}
.kpi-card .icon{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;background:var(--raised);color:var(--steel);flex:none}.kpi-card .icon svg{width:17px}
.kpi-card.warn .icon{color:var(--warn)}.kpi-card.bad .icon{color:var(--bad)}.kpi-card.ok .icon{color:var(--ok)}
.kpi-card div>span,.kpi-card small{display:block;color:var(--dim);font-size:10.5px}.kpi-card strong{display:block;font-size:18px;margin:2px 0}.kpi-card small{line-height:1.5}
.decision-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.decision-card{padding:19px;border-top:2px solid var(--steel)}
.decision-card.bad{border-top-color:var(--bad)}.decision-card.warn{border-top-color:var(--warn)}
.decision-top{display:flex;justify-content:space-between;align-items:center;color:var(--dim);font-size:10.5px}.decision-top .signal-dot{margin-inline-end:auto}.decision-top>span:last-child{margin-inline-start:8px}
.decision-card h3{font-size:15.5px;margin:16px 0 7px}.decision-card>p{color:var(--muted);font-size:11.5px;min-height:42px}
.decision-bottom{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:17px;padding-top:13px;border-top:1px solid var(--line)}
.decision-bottom span,.decision-bottom a{display:inline-flex;align-items:center;gap:6px;font-size:10.5px}.decision-bottom span{color:var(--dim)}.decision-bottom a{color:var(--accent);font-weight:700}
.decision-bottom svg{width:13px;height:13px}
.ops-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(330px,.65fr);gap:14px;margin-top:18px}.incident-queue,.service-panel{padding:20px}
.incident-row{display:grid;grid-template-columns:4px minmax(0,1fr) auto auto;gap:13px;align-items:center;padding:14px 2px;border-bottom:1px solid var(--line)}
.incident-row:last-child{border:0;padding-bottom:0}.incident-row>.severity-mark{height:48px}.incident-row>svg{width:16px;color:var(--dim)}
.incident-main>span{font-size:10px;color:var(--dim)}.incident-main b{display:block;font-size:13px}.incident-main small{display:block;font-size:10.5px;color:var(--dim)}
.incident-meta{text-align:left}.incident-meta small{display:block;color:var(--dim);font-size:9.5px;margin-top:5px}
.service-row{display:flex;align-items:center;gap:11px;padding:12px 0;border-bottom:1px solid var(--line)}.service-row:last-child{border:0}
.service-icon{width:35px;height:35px;border-radius:9px;display:grid;place-items:center;background:var(--raised);color:var(--steel);flex:none}.service-icon svg{width:17px}
.service-icon.ok{color:var(--ok)}.service-icon.warn{color:var(--warn)}.service-icon.bad{color:var(--bad)}
.service-row>div:nth-child(2){min-width:0}.service-row b{display:block;font-size:12.5px}.service-row small{display:block;font-size:9.5px;color:var(--dim)}
.service-side{margin-inline-start:auto;text-align:left}.service-side small{margin-top:4px}
.system-health-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.system-health-card{display:flex;align-items:center;gap:11px;padding:15px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}
.system-health-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:9px;background:var(--raised);color:var(--steel);flex:none}
.system-health-icon svg{width:17px}.system-health-card.ok .system-health-icon{color:var(--ok)}.system-health-card.warn .system-health-icon{color:var(--warn)}.system-health-card.bad .system-health-icon{color:var(--bad)}
.system-health-card>div{min-width:0}.system-health-card>div>span,.system-health-card small{display:block;color:var(--dim);font-size:9.5px}.system-health-card b{display:block;font-size:12.5px;margin:1px 0}.system-health-card>.signal-dot{margin-inline-start:auto}
.operational-assistants{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin-top:10px}
.operational-assistant{display:flex;align-items:center;gap:9px;min-width:0;padding:11px 12px;border:1px solid var(--line);border-radius:10px;background:rgba(17,23,31,.72)}
.operational-assistant>svg{width:16px;color:var(--accent);flex:none}.operational-assistant b,.operational-assistant span{display:block}.operational-assistant b{font-size:11.5px}.operational-assistant span{color:var(--dim);font-size:8.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* page headers */
.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;padding:26px 0 23px;border-bottom:1px solid var(--line);margin-bottom:20px}
.page-head h1{font-size:clamp(25px,3.5vw,36px);margin-bottom:7px}.page-head>div>p:not(.eyebrow){color:var(--muted);font-size:13.5px;max-width:75ch}
.data-scope{display:inline-flex;align-items:center;gap:7px;color:var(--dim);font-size:11px;white-space:nowrap}.data-scope svg{width:15px}
.stage-grid,.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:11px;margin-bottom:20px}
.stage-card{display:flex;align-items:center;gap:13px;padding:15px;background:var(--panel);border:1px solid var(--line);border-radius:12px;border-inline-start:3px solid var(--steel)}
.stage-card.bad{border-inline-start-color:var(--bad)}.stage-card.warn{border-inline-start-color:var(--warn)}.stage-card.ok{border-inline-start-color:var(--ok)}
.stage-card>span{font-family:var(--mono);font-size:22px}.stage-card b{display:block;font-size:12px}.stage-card small{display:block;font-size:9.5px;color:var(--dim)}
.filter-bar{display:flex;align-items:center;gap:14px;padding:11px 14px;margin:24px 0 12px;background:var(--panel);border:1px solid var(--line);border-radius:11px}
.filter-bar>span{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:700}.filter-bar>span svg{width:15px;color:var(--accent)}
.filter-bar>div{display:flex;gap:5px}.filter-bar button{border:0;border-radius:7px;background:transparent;color:var(--dim);padding:5px 9px;font-size:10.5px}.filter-bar button.is-active{background:var(--raised);color:var(--ink)}
.filter-bar>small{margin-inline-start:auto;color:var(--dim);font-size:9.5px}

/* incidents */
.incident-list{display:grid;gap:11px}.incident-card{padding:18px 19px}
.incident-card-head{display:grid;grid-template-columns:4px minmax(0,1fr) auto;gap:13px;align-items:start}.incident-card-head .severity-mark{height:58px}
.incident-card-head .mono{font-size:9.5px;color:var(--dim)}.incident-card-head h2{font-size:16px;margin:2px 0 4px}.incident-card-head p{color:var(--muted);font-size:11.5px}
.incident-facts{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:15px 17px 0;padding:12px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.incident-facts span{padding-inline:9px;border-inline-end:1px solid var(--line)}.incident-facts span:last-child{border:0}
.incident-facts small,.incident-facts b{display:block}.incident-facts small{font-size:9px;color:var(--dim)}.incident-facts b{font-size:11px;margin-top:2px}
.next-action{display:flex;align-items:center;gap:10px;margin:12px 17px 0}.next-action>svg{width:16px;color:var(--accent)}.next-action span{min-width:0}.next-action small,.next-action b{display:block}.next-action small{font-size:9px;color:var(--dim)}.next-action b{font-size:11.5px}
.next-action a{display:inline-flex;align-items:center;gap:6px;margin-inline-start:auto;color:var(--accent);font-size:10.5px;font-weight:700;white-space:nowrap}.next-action a svg{width:13px}

/* incident detail */
.back-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:13px;color:var(--dim);font-size:10.5px}.back-row a{display:inline-flex;align-items:center;gap:6px;color:var(--muted)}.back-row svg{width:14px}
.case-head{display:flex;justify-content:space-between;gap:22px;padding:24px;margin-bottom:12px}.case-title{display:grid;grid-template-columns:4px minmax(0,1fr);gap:14px}.case-title .severity-mark{height:80px}.case-title h1{font-size:26px;margin-bottom:5px}.case-title>div>p:not(.eyebrow){color:var(--muted);font-size:12.5px}
.case-state{text-align:left;min-width:150px}.case-state b,.case-state small{display:block}.case-state b{font-size:13px;margin-top:10px}.case-state small{font-size:10px;color:var(--dim)}
.case-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px}.case-kpis article{padding:14px;border:1px solid var(--line);background:var(--panel);border-radius:11px}.case-kpis small,.case-kpis b,.case-kpis span{display:block}.case-kpis small,.case-kpis span{font-size:9.5px;color:var(--dim)}.case-kpis b{font-size:13px;margin:3px 0}
.case-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:14px}.timeline-panel,.evidence-panel{padding:20px}
.case-timeline{padding-top:10px}.timeline-item{position:relative;display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:11px;padding:11px 0}
.timeline-item:not(:last-child)::after{content:"";position:absolute;top:40px;bottom:-7px;inset-inline-start:14px;width:1px;background:var(--line-2)}
.timeline-item>span{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;background:var(--raised);border:1px solid var(--line);font-size:10px;z-index:1}.timeline-item>span svg{width:14px}
.timeline-item.done>span{color:var(--ok);background:var(--ok-bg)}.timeline-item.active>span{color:var(--warn);background:var(--warn-bg)}
.timeline-item b{font-size:12.5px}.timeline-item p{font-size:10.5px;color:var(--dim)}.timeline-item time{font-size:9.5px;color:var(--dim);padding-top:5px}
.evidence-panel ul{list-style:none;margin:8px 0 0;padding:0}.evidence-panel li{display:flex;gap:9px;padding:11px 0;border-bottom:1px solid var(--line);font-size:11.5px}.evidence-panel li svg{width:16px;color:var(--accent);flex:none;margin-top:3px}
.evidence-note,.safe-note,.gap-note{display:flex;gap:9px;padding:11px;margin-top:14px;border-radius:10px;background:var(--warn-bg);color:var(--muted);font-size:10.5px}.evidence-note svg,.safe-note svg,.gap-note svg{width:16px;color:var(--warn);flex:none}
.action-panel{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:21px;margin-top:14px}.action-panel h2{font-size:17px}.action-panel>div>p:not(.eyebrow){color:var(--muted);font-size:11.5px}.action-buttons{display:flex;gap:8px;flex:none}

/* assets */
.stat-card{padding:16px;background:var(--panel);border:1px solid var(--line);border-radius:12px}.stat-card span,.stat-card small{display:block;color:var(--dim);font-size:10px}.stat-card strong{display:block;font-size:23px;margin:3px 0}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:11px}
.service-card{padding:17px}.service-card-top{display:flex;justify-content:space-between}.service-card h3{font-size:14px;margin-top:14px}.service-card>p{color:var(--dim);font-size:10px}
.coverage{margin-top:15px}.coverage>span{display:flex;justify-content:space-between;font-size:10px}.coverage small{color:var(--dim)}.coverage>div,.control-score>div,.remediation-progress>div{height:5px;background:var(--raised);border-radius:8px;overflow:hidden;margin-top:6px}.coverage>div i,.control-score>div i,.remediation-progress>div i{display:block;height:100%;background:var(--accent);border-radius:8px}
.service-card footer{display:flex;gap:6px;align-items:center;margin-top:13px;padding-top:11px;border-top:1px solid var(--line);font-size:10px;color:var(--muted)}.service-card footer svg{width:13px}
.asset-title{margin-top:35px}.table-wrap{overflow-x:auto}.data-table{width:100%;min-width:900px;border-collapse:collapse}.data-table th{text-align:start;padding:12px 14px;color:var(--dim);font-size:9.5px;background:rgba(255,255,255,.015);white-space:nowrap}.data-table td{padding:13px 14px;border-top:1px solid var(--line);font-size:11px;color:var(--muted)}.data-table td b,.data-table td small{display:block}.data-table td b{color:var(--ink);font-size:11px}.data-table td small{font-size:9.5px;color:var(--dim)}

/* remediation */
.risk-formula{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px;margin-bottom:14px}.risk-formula h2{font-size:17px}.risk-formula>div>p:not(.eyebrow){font-size:11px;color:var(--muted)}.risk-formula>svg{width:40px;height:40px;color:var(--accent);opacity:.8}
.remediation-list{display:grid;gap:10px}.remediation-card{display:grid;grid-template-columns:100px minmax(0,1fr) 210px 160px;gap:18px;align-items:center;padding:18px}
.remediation-id .mono{display:block;font-size:10px;color:var(--dim);margin-bottom:8px}.remediation-main h2{font-size:14px}.remediation-main>p{font-size:10px;color:var(--dim)}
.reason{display:flex;gap:6px;color:var(--muted);font-size:10.5px;margin-top:7px}.reason svg{width:14px;color:var(--accent);flex:none}
.remediation-progress>span{display:flex;justify-content:space-between}.remediation-progress small{font-size:9.5px;color:var(--dim)}.remediation-progress>small{display:block;margin-top:6px}.remediation-evidence{padding-inline-start:14px;border-inline-start:1px solid var(--line)}.remediation-evidence small,.remediation-evidence b{display:block}.remediation-evidence small{font-size:9px;color:var(--dim)}.remediation-evidence b{font-size:10.5px;margin-top:3px}

/* controls */
.control-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(320px,.6fr);gap:14px}.control-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.control-card{padding:17px}.control-head{display:flex;justify-content:space-between;align-items:center}.control-card h2{font-size:14px;margin-top:13px}.control-card>p{font-size:10px;color:var(--dim)}
.control-score{margin-top:14px}.control-score>span{display:flex;justify-content:space-between;font-size:10px}.control-score small{color:var(--dim)}.control-score i.ok{background:var(--ok)}.control-score i.warn{background:var(--warn)}.control-score i.bad{background:var(--bad)}
.control-card footer{display:flex;gap:7px;align-items:center;margin-top:12px;padding-top:11px;border-top:1px solid var(--line);color:var(--muted);font-size:9.5px}.control-card footer svg{width:13px;color:var(--accent)}
.gap-panel{padding:19px;align-self:start}.gap-row{display:flex;align-items:center;gap:10px;padding:13px 0;border-bottom:1px solid var(--line)}.gap-row>div{min-width:0}.gap-row b,.gap-row small{display:block}.gap-row b{font-size:11.5px}.gap-row small{font-size:9.5px;color:var(--dim)}.gap-row>.tag{margin-inline-start:auto}
.governance-flow{padding:22px;margin-top:14px}.governance-flow h2{font-size:17px}.flow-steps{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;margin-top:18px}.flow-steps>span{position:relative;padding:13px;background:var(--panel-2);border:1px solid var(--line);border-radius:10px}.flow-steps>span:not(:last-child)::after{content:"";position:absolute;top:50%;inset-inline-end:-10px;width:10px;height:1px;background:var(--line-2)}
.flow-steps svg{width:17px;color:var(--dim)}.flow-steps b,.flow-steps small{display:block}.flow-steps b{font-size:11px;margin-top:8px}.flow-steps small{font-size:9px;color:var(--dim)}.flow-steps .done svg{color:var(--ok)}.flow-steps .active{border-color:rgba(216,173,100,.28)}.flow-steps .active svg{color:var(--warn)}

/* assistant */
.assistant-layout{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:14px}.assistant-chat{min-height:590px;display:flex;flex-direction:column;overflow:hidden}
.assistant-head{display:flex;align-items:center;gap:11px;padding:16px 18px;border-bottom:1px solid var(--line)}.orb{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:var(--accent-bg);color:var(--accent);flex:none}.orb svg{width:19px}
.assistant-head b,.assistant-head small{display:block}.assistant-head b{font-size:13px}.assistant-head small{font-size:9.5px;color:var(--dim)}.assistant-head>.tag{margin-inline-start:auto}
.assistant-body{flex:1;overflow:auto;padding:18px;display:flex;flex-direction:column;gap:10px}.chat-msg{max-width:82%}.chat-msg p{padding:10px 13px;border-radius:12px;font-size:12px;white-space:pre-wrap}.chat-msg.bot{align-self:flex-start}.chat-msg.bot p{background:var(--raised);border:1px solid var(--line);border-end-start-radius:4px}.chat-msg.user{align-self:flex-end}.chat-msg.user p{background:var(--accent);color:#07110e;border-end-end-radius:4px}.chat-msg.typing p{color:var(--dim)}
.assistant-foot,.fab-foot{display:flex;gap:8px;padding:11px;border-top:1px solid var(--line)}.assistant-foot input,.fab-foot input{flex:1;min-width:0;border:1px solid var(--line-2);border-radius:10px;background:var(--bg);color:var(--ink);padding:10px 12px;font-size:16px;outline:none}.assistant-foot input:focus,.fab-foot input:focus{border-color:var(--accent)}
.assistant-foot button,.fab-foot button{width:42px;border:0;border-radius:10px;background:var(--accent);color:#07110e;display:grid;place-items:center}.assistant-foot button svg,.fab-foot button svg{width:17px}
.topic-panel{padding:19px;align-self:start}.topic-panel h2{font-size:16px;margin-bottom:14px}.topic-panel>button{display:flex;align-items:flex-start;gap:9px;width:100%;text-align:start;padding:10px 11px;margin-bottom:7px;border-radius:9px;border:1px solid var(--line);background:var(--panel-2);color:var(--muted);font-size:11px}.topic-panel>button:hover{border-color:var(--accent);color:var(--ink)}.topic-panel>button svg{width:15px;color:var(--accent);flex:none;margin-top:2px}

/* floating chat */
.fab{position:fixed;inset-inline-end:20px;inset-block-end:20px;z-index:80;width:54px;height:54px;border-radius:16px;border:1px solid rgba(112,199,177,.3);background:var(--accent);color:#07110e;display:grid;place-items:center;box-shadow:0 15px 36px rgba(0,0,0,.45)}.fab svg{width:23px}
.fab-panel{position:fixed;inset-inline-end:20px;inset-block-end:84px;z-index:81;width:min(380px,calc(100vw - 28px));height:min(570px,calc(100vh - 110px));display:none;flex-direction:column;overflow:hidden;background:var(--bg-2);border:1px solid var(--line-2);border-radius:16px;box-shadow:0 26px 70px rgba(0,0,0,.58)}.fab-panel.open{display:flex}
.fab-head{display:flex;align-items:center;gap:10px;padding:13px 14px;border-bottom:1px solid var(--line)}.fab-head b,.fab-head small{display:block}.fab-head b{font-size:12.5px}.fab-head small{font-size:9px;color:var(--dim)}.fab-head .x{margin-inline-start:auto;border:0;background:transparent;color:var(--dim);font-size:20px}
.fab-body{flex:1;overflow:auto;padding:13px;display:flex;flex-direction:column;gap:9px}.fab-quick{display:flex;gap:6px;overflow-x:auto;padding:0 11px 9px;scrollbar-width:none}.fab-quick::-webkit-scrollbar{display:none}.fab-quick button{flex:none;border:1px solid var(--line);border-radius:999px;background:var(--panel);color:var(--muted);padding:6px 9px;font-size:10px}.fab-quick button:hover{color:var(--accent);border-color:var(--accent)}

/* footer */
.site-footer{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;padding:22px 16px;border-top:1px solid var(--line);color:var(--dim);font-size:10.5px}.site-footer-link{display:inline-flex;gap:7px;color:var(--muted)}

/* responsive */
@media(max-width:1120px){
  .kpi-grid{grid-template-columns:repeat(3,1fr)}.command-hero{grid-template-columns:1fr 330px}.system-health-grid{grid-template-columns:repeat(2,1fr)}
  .operational-assistants{grid-template-columns:repeat(3,1fr)}
  .remediation-card{grid-template-columns:90px minmax(0,1fr) 190px}.remediation-evidence{display:none}
}
@media(max-width:980px){
  .demo-state{margin-inline-start:auto}.soc-menu-toggle{display:grid}.soc-nav{display:none;position:absolute;top:calc(100% + 1px);inset-inline:14px;margin:0;padding:10px;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;background:rgba(14,18,24,.98);border:1px solid var(--line-2);border-radius:0 0 14px 14px;box-shadow:var(--shadow)}
  .soc-topbar.menu-open .soc-nav{display:grid}.soc-nav a{padding:10px;background:var(--panel);border-color:var(--line)}
  .command-hero,.ops-grid,.case-grid,.control-layout,.assistant-layout{grid-template-columns:1fr}.posture-card{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.posture-head{grid-column:1/-1}.posture-card>small{grid-column:1/-1}
  .decision-grid{grid-template-columns:1fr}.service-grid{grid-template-columns:repeat(2,1fr)}.gap-panel,.topic-panel{width:100%}
}
@media(max-width:720px){
  .shell{width:min(100% - 26px,1240px)}.main{padding-top:18px}.demo-state{display:none}.soc-brand-text span{display:none}.soc-topbar{padding:10px 13px}
  .hero-copy{padding:24px 19px;min-height:auto}.hero-copy h1{font-size:29px}.hero-actions,.action-buttons{flex-direction:column;align-items:stretch}
  .command-hero{grid-template-columns:1fr}.posture-card{display:block}.kpi-grid{grid-template-columns:repeat(2,1fr)}.section-title{align-items:flex-start}.section-note{display:none}
  .stage-grid,.stat-grid,.case-kpis{grid-template-columns:repeat(2,1fr)}.filter-bar{align-items:flex-start;flex-wrap:wrap}.filter-bar>small{width:100%;margin:0}.filter-bar>div{overflow-x:auto;max-width:100%}
  .incident-card-head{grid-template-columns:4px minmax(0,1fr)}.incident-card-head>.tag{grid-column:2;justify-self:start}.incident-facts{grid-template-columns:repeat(2,1fr);margin-inline:0}.incident-facts span{border:0;border-bottom:1px solid var(--line);padding:7px}
  .next-action{align-items:flex-start;margin-inline:0;flex-wrap:wrap}.next-action a{width:100%;margin-inline-start:26px}.case-head,.action-panel{flex-direction:column;align-items:stretch}.case-state{text-align:right}.case-kpis{grid-template-columns:repeat(2,1fr)}
  .service-grid,.control-grid,.system-health-grid{grid-template-columns:1fr}.operational-assistants{grid-template-columns:repeat(2,1fr)}.remediation-card{grid-template-columns:1fr}.remediation-id{display:flex;align-items:center;justify-content:space-between}.remediation-id .mono{margin:0}.flow-steps{grid-template-columns:1fr}.flow-steps>span:not(:last-child)::after{top:auto;bottom:-10px;inset-inline-start:20px;width:1px;height:10px}
  .page-head{align-items:flex-start;flex-direction:column}.page-head .btn{width:100%}.back-row>span{display:none}
}
@media(max-width:480px){
  .soc-brand-mark{width:38px;height:38px}.soc-brand-text b{font-size:13px}.soc-menu-toggle{width:38px;height:38px}.soc-nav{grid-template-columns:1fr}
  .kpi-grid{grid-template-columns:1fr}.hero-actions .btn{width:100%}.stage-grid,.stat-grid{grid-template-columns:1fr 1fr}.case-kpis{grid-template-columns:1fr 1fr}
  .incident-row{grid-template-columns:4px minmax(0,1fr) auto}.incident-row>svg{display:none}.incident-meta small{display:none}
  .timeline-item{grid-template-columns:30px minmax(0,1fr)}.timeline-item time{grid-column:2;padding:0}.fab{inset-inline-end:13px;inset-block-end:13px}.fab-panel{inset-inline:12px;width:auto;inset-block-end:76px;height:min(580px,calc(100vh - 96px))}
}
