/* ============================================================
   Atlas Admin · Sécurité — Security Operations Center
   Extras propres au module (le reste réutilise les classes st-* de
   atlas-settings.css + tokens de atlas-admin.css / atlas-cockpit.css).
   ============================================================ */

/* score ring */
.sc-ring{width:118px;height:118px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;position:relative}
.sc-ring::before{content:'';position:absolute;inset:9px;border-radius:50%;background:#0b1738}
.sc-ring .sc-ring-in{position:relative;text-align:center;z-index:1}
.sc-ring .sc-ring-in b{display:block;font-family:'Space Grotesk',sans-serif;font-size:2rem;font-weight:700;line-height:1}
.sc-ring .sc-ring-in span{font-size:.66rem;color:var(--dim);letter-spacing:.04em}
body.theme-light .sc-ring::before{background:#fff}

/* severity chips */
.sev{display:inline-flex;align-items:center;gap:5px;font-size:.7rem;font-weight:800;letter-spacing:.02em;padding:3px 9px;border-radius:7px;white-space:nowrap}
.sev-s1{background:rgba(248,113,113,.16);color:#f87171;border:1px solid rgba(248,113,113,.4)}
.sev-s2{background:rgba(255,107,26,.15);color:#ff914d;border:1px solid rgba(255,107,26,.38)}
.sev-s3{background:rgba(245,166,35,.15);color:var(--gold);border:1px solid rgba(245,166,35,.36)}
.sev-s4{background:rgba(96,165,250,.14);color:var(--blue-l);border:1px solid var(--line2)}
.sev-info{background:rgba(148,163,184,.14);color:#94a3b8;border:1px solid var(--line2)}

/* alert / event rows */
.sc-alert{display:flex;align-items:center;gap:13px;padding:13px 15px;border-radius:13px;border:1px solid var(--line);background:rgba(8,16,40,.42);margin-bottom:9px;cursor:pointer;transition:border-color .16s,transform .16s,background .16s}
.sc-alert:hover{border-color:var(--blue-l);transform:translateY(-1px);background:rgba(96,165,250,.05)}
.sc-alert .sc-a-ic{width:42px;height:42px;border-radius:12px;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:#fff}
.sc-alert .sc-a-ic svg{width:20px;height:20px;stroke:#fff;fill:none;stroke-width:2}
.sc-alert .sc-a-b{flex:1;min-width:0}
.sc-alert .sc-a-b h4{font-size:.9rem;font-weight:600;color:var(--txt);display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.sc-alert .sc-a-b p{font-size:.76rem;color:var(--dim);margin-top:2px}
.sc-alert .sc-a-r{display:flex;align-items:center;gap:8px;flex-shrink:0;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:640px){.sc-alert .sc-a-r{display:none}}

/* incident timeline */
.sc-tl{position:relative;padding-left:24px;margin-top:6px}
.sc-tl::before{content:'';position:absolute;left:7px;top:4px;bottom:4px;width:2px;background:var(--line2)}
.sc-tl-item{position:relative;padding:0 0 15px 4px}
.sc-tl-item::before{content:'';position:absolute;left:-21px;top:3px;width:12px;height:12px;border-radius:50%;background:#0b1738;border:2px solid var(--blue-l)}
.sc-tl-item.done::before{background:var(--blue-l)}
.sc-tl-item.now::before{background:var(--gold);border-color:var(--gold);box-shadow:0 0 0 4px rgba(245,166,35,.18)}
.sc-tl-item h5{font-size:.84rem;font-weight:600;color:var(--txt)}
.sc-tl-item p{font-size:.74rem;color:var(--dim);margin-top:1px}

/* workflow steps */
.sc-wf{display:flex;gap:6px;flex-wrap:wrap;margin:4px 0 2px}
.sc-wf-step{font-size:.7rem;font-weight:600;padding:4px 9px;border-radius:7px;border:1px solid var(--line);color:var(--dim);background:rgba(8,16,40,.4)}
.sc-wf-step.done{color:#4ade80;border-color:rgba(34,197,94,.3);background:rgba(34,197,94,.08)}
.sc-wf-step.now{color:var(--gold);border-color:rgba(245,166,35,.4);background:rgba(245,166,35,.1)}

/* quick response bar */
.sc-qr{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:9px}
.sc-qr-btn{display:flex;align-items:center;gap:10px;padding:12px 13px;border-radius:12px;border:1px solid var(--line2);background:rgba(8,16,40,.44);cursor:pointer;transition:.16s;text-align:left}
.sc-qr-btn:hover{border-color:var(--red);background:rgba(248,113,113,.07);transform:translateY(-2px)}
.sc-qr-btn svg{width:18px;height:18px;stroke:var(--red);fill:none;stroke-width:2;flex-shrink:0}
.sc-qr-btn span{font-size:.82rem;font-weight:600;color:var(--txt)}
.sc-qr-btn.safe:hover{border-color:var(--blue-l);background:rgba(96,165,250,.08)}
.sc-qr-btn.safe svg{stroke:var(--blue-l)}

/* KPI clickable */
.sc-kpi{cursor:pointer}
.sc-kpi:hover{border-color:var(--blue-l)}

/* dimension list (score detail) */
.sc-dimrow{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}
.sc-dimrow:last-child{border-bottom:0}
.sc-dimrow .sc-dl{flex:1;min-width:0}
.sc-dimrow .sc-dl h5{font-size:.84rem;font-weight:600;color:var(--txt)}
.sc-dimrow .sc-dl p{font-size:.73rem;color:var(--dim);margin-top:1px}
.sc-dimrow .bar{width:120px;height:6px;border-radius:50px;background:rgba(255,255,255,.08);overflow:hidden;flex-shrink:0}
.sc-dimrow .bar i{display:block;height:100%;border-radius:50px}
.sc-dimrow b{font-family:'Space Grotesk',sans-serif;font-size:.9rem;width:52px;text-align:right;flex-shrink:0}
@media(max-width:600px){.sc-dimrow .bar{display:none}}

/* health legend */
.sc-legend{display:flex;gap:14px;flex-wrap:wrap;margin-top:12px;font-size:.73rem;color:var(--dim)}
.sc-legend span{display:inline-flex;align-items:center;gap:6px}

/* masked secret */
.sc-mask{font-family:'JetBrains Mono',monospace;font-size:.8rem;color:var(--mid);background:rgba(8,16,40,.5);border:1px solid var(--line);padding:3px 9px;border-radius:7px}

/* trend spark */
.sc-trend{display:inline-flex;align-items:center;gap:4px;font-size:.72rem;font-weight:700}
.sc-trend.up{color:#4ade80}
.sc-trend.down{color:#f87171}
.sc-trend.flat{color:var(--dim)}

/* env pill reuse st-env; extra: status line */
.sc-statusline{display:flex;gap:16px;flex-wrap:wrap;font-size:.78rem;color:var(--mid);margin-top:6px}
.sc-statusline b{color:var(--txt);font-weight:600}
.sc-statusline .sc-ok{color:#4ade80}

/* device compliance dot */
.sc-cdot{width:8px;height:8px;border-radius:50%;display:inline-block;margin-right:5px}
