:root{font-family:Inter,ui-sans-serif,system-ui,sans-serif;color:#e9edf2;background:#10151b;color-scheme:dark}*{box-sizing:border-box}body{margin:0;background:linear-gradient(135deg,#10151b,#17212b);min-height:100vh}header{height:64px;padding:0 28px;display:flex;align-items:center;justify-content:space-between;background:#0b1015;border-bottom:1px solid #26313d;font-weight:800;letter-spacing:.12em}header small{color:#8c9bab;margin-left:8px}.signal{color:#ffb020;text-shadow:0 0 12px #ffb020}main{max-width:1400px;margin:auto;padding:28px}.hero{display:flex;align-items:center;justify-content:space-between}.hero h1{margin:0;font-size:2rem}.hero p{color:#95a3b3}.card{background:#161e27;border:1px solid #2a3541;border-radius:14px;padding:20px;margin:18px 0;box-shadow:0 10px 30px #0003}.narrow{max-width:480px;margin:12vh auto}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.stat{padding:18px;background:#161e27;border:1px solid #2a3541;border-radius:14px}.stat strong{font-size:2rem;display:block}.stat span{color:#9dacbb}button{border:0;border-radius:8px;padding:10px 15px;background:#ffb020;color:#17120a;font-weight:750;cursor:pointer}input{width:100%;padding:11px;border-radius:8px;border:1px solid #3a4652;background:#0f151b;margin:7px 0 14px}label{display:block;color:#aeb9c5}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:11px;border-bottom:1px solid #29343f;font-size:.92rem}th{color:#94a2b1}.badge{display:inline-block;border-radius:99px;padding:4px 9px;background:#293440}.badge.online,.badge.active,.badge.camera,.badge.closed{color:#71df9b;background:#173628}.badge.offline,.badge.inactive,.badge.open{color:#ff8d8d;background:#3b2024}.badge.degraded{color:#ffd070;background:#3b321b}.badge.unknown,.badge.ssh_host,.badge.web_device{color:#d5b981}dialog{border:1px solid #354351;background:#17202a;color:#e9edf2;border-radius:14px;min-width:min(600px,90vw)}dialog::backdrop{background:#000a}.actions{display:flex;justify-content:flex-end;gap:9px;margin-top:18px}pre{white-space:pre-wrap;background:#0c1116;padding:14px;border-radius:8px;color:#9fe6b8}.table-wrap{overflow:auto}code{color:#ffca68}@media(max-width:800px){.stats{grid-template-columns:1fr 1fr}main{padding:16px}}

.eyebrow{font-size:.72rem;font-weight:800;letter-spacing:.18em;color:#ffb020!important;margin-bottom:8px}.section-title{display:flex;align-items:center;justify-content:space-between;gap:20px}.section-title>span{color:#8f9dac;font-size:.9rem}.secondary{background:#26313d;color:#dce4ec;margin-bottom:18px}.stat.good{border-color:#24533a}.stat.danger{border-color:#71323a}.stat.danger strong{color:#ff7c88}.center-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px}.center-card{background:#161e27;border:1px solid #2a3541;border-radius:14px;padding:20px;cursor:pointer;transition:.16s transform,.16s border-color,.16s box-shadow}.center-card:hover,.center-card:focus{transform:translateY(-2px);border-color:#ffb020;box-shadow:0 12px 30px #0005;outline:none}.center-card.offline{border-left:4px solid #ef5968}.center-card.online{border-left:4px solid #50c878}.center-card h3{font-size:1.35rem;margin:18px 0 4px}.center-card p{color:#93a2b1;margin:0}.center-card-top,.incident-top{display:flex;align-items:center;justify-content:space-between}.center-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:22px 0}.center-metrics div{background:#111820;border-radius:9px;padding:10px}.center-metrics strong,.center-metrics small{display:block}.center-metrics strong{font-size:1.25rem}.center-metrics small,.center-card>small,.incident-card small{color:#8292a1}.mono{font-family:ui-monospace,monospace;color:#8292a1;font-size:.8rem}.incident-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}.incident-card{background:#111820;border:1px solid #2c3742;border-left:4px solid #e05b68;border-radius:10px;padding:15px;cursor:pointer;transition:.16s transform,.16s border-color,.16s box-shadow}.incident-card:hover,.incident-card:focus-visible{transform:translateY(-2px);border-color:#ffb020;border-left-color:#e05b68;box-shadow:0 10px 24px #0005;outline:none}.incident-card.closed{border-left-color:#42bd72;opacity:.78}.incident-card.closed:hover,.incident-card.closed:focus-visible{border-left-color:#42bd72}.incident-card h3{margin:14px 0 4px}.incident-card p{margin:0 0 12px;color:#98a6b4}.severity{font-size:.76rem;text-transform:uppercase;letter-spacing:.08em}.severity.critical,.severity.major{color:#ff8791}.empty-state{grid-column:1/-1;display:flex;gap:12px;align-items:center;color:#72d99a;background:#11231a;border:1px solid #214b32;border-radius:10px;padding:18px}.empty-state span{color:#93ab9c}.hero #center-state .badge{font-size:1rem;padding:8px 14px}@media(max-width:800px){.center-grid,.incident-grid{grid-template-columns:1fr}.section-title{align-items:flex-start;flex-direction:column;gap:2px}.hero{align-items:flex-start;gap:16px}}
.button-group{display:flex;gap:6px;flex-wrap:wrap}.small-button,.danger-button{padding:7px 9px;font-size:.78rem}.small-button{background:#2a3a49;color:#dce6ef}.danger-button{background:#5b2930;color:#ffbec4}.pending{color:#ffd070;background:#3b321b}.running{color:#79caff;background:#17324a}.succeeded{color:#71df9b;background:#173628}.failed{color:#ff8d8d;background:#3b2024}
.refresh-controls{display:flex;align-items:center;gap:12px}.refresh-controls a{color:#dce6ef;font-size:.78rem;letter-spacing:0;text-decoration:none}.refresh-controls a:hover{color:#ffb020}.refresh-controls span{font-size:.72rem;letter-spacing:0;color:#8c9bab}.refresh-controls .refresh-ok{color:#71df9b}.refresh-controls .refresh-error{color:#ff8d8d}.command-result summary{cursor:pointer;color:#79caff;white-space:nowrap}.command-result pre{max-width:620px;max-height:320px;overflow:auto;font-size:.78rem}
.checkbox{display:flex;align-items:center;gap:9px;margin:8px 0 16px}.checkbox input{width:auto;margin:0}.service-actions{display:flex;gap:6px}.service-actions button{padding:7px 9px;font-size:.78rem}.machine-identity{display:grid;gap:3px;min-width:150px}.machine-identity small{color:#8292a1;font-size:.72rem;white-space:nowrap}
select{width:100%;padding:11px;border-radius:8px;border:1px solid #3a4652;background:#0f151b;margin:7px 0 14px;color:#e9edf2}
.version-link{padding:0;background:transparent;color:#8c9bab;font:inherit;letter-spacing:0;border-radius:3px}.version-link:hover{color:#ffb020;text-decoration:underline}.history-dialog{width:min(850px,92vw);max-height:85vh}.version-history{display:grid;gap:12px;margin-top:18px}.version-entry{background:#10171f;border:1px solid #2a3541;border-radius:10px;padding:16px}.version-entry-top{display:flex;justify-content:space-between;gap:12px;color:#ffb020}.version-entry-top time{color:#8c9bab;font-size:.85rem}.version-entry h3{margin:8px 0}.version-entry ul{margin:8px 0 0;padding-left:22px;color:#bcc7d2}.version-entry li{margin:5px 0}
.grafana-frame{width:100%;height:620px;border:1px solid #2a3541;border-radius:10px;background:#0b1015;margin-top:16px}.section-title a{color:#ffb020;text-decoration:none;white-space:nowrap}.integration-note{color:#9dacbb;padding:14px;background:#111820;border-radius:9px}.preview-dialog{width:min(1000px,94vw)}.camera-preview{min-height:240px;display:grid;place-items:center;margin-top:16px;background:#0b1015;border-radius:10px;overflow:hidden}.camera-preview img{display:block;max-width:100%;max-height:70vh}.camera-preview p{color:#9dacbb;padding:30px}.button-group button:disabled{opacity:.5;cursor:not-allowed}
.camera-live-loader{width:42px;height:42px;margin:24px auto;border:4px solid #354351;border-top-color:#ffb020;border-radius:50%;animation:camera-live-spin .8s linear infinite}@keyframes camera-live-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.camera-live-loader{animation-duration:1.8s}}
.camera-live-dialog{width:min(1080px,94vw);max-width:none;padding:0;overflow:hidden;border-color:#3a4a56;border-radius:22px;background:#111a22;box-shadow:0 35px 100px #000b}.camera-live-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:25px 28px 21px;border-bottom:1px solid #2b3944;background:linear-gradient(135deg,#19242d,#131c23)}.camera-live-heading h2{margin:1px 0 7px;font-size:clamp(1.55rem,3vw,2.35rem);letter-spacing:-.035em}.camera-live-heading p:last-child{margin:0;color:#81909c;font-size:.82rem}.camera-live-dismiss{display:grid;place-items:center;flex:0 0 auto;width:42px;height:42px;padding:0;border:1px solid #40505d;border-radius:12px;background:#1c2831;color:#dce4ea;font-size:1.55rem;font-weight:400}.camera-live-viewport{position:relative;display:grid;place-items:center;min-height:min(58vh,620px);margin:22px 28px 0;overflow:hidden;border:1px solid #2c3b46;border-radius:17px;background:radial-gradient(circle at 50% 42%,#1c2a341a,#091015 65%)}.camera-live-viewport.is-live{background:#05080a}.camera-live-viewport.is-error{border-color:#63343b;background:radial-gradient(circle at 50% 42%,#612d3218,#0b1116 64%)}.camera-live-viewport img{display:block;width:100%;height:100%;max-height:62vh;object-fit:contain;background:#05080a}.camera-live-state{display:grid;justify-items:center;max-width:480px;padding:48px 24px;text-align:center}.camera-live-state-icon{display:grid;place-items:center;width:58px;height:58px;margin-bottom:20px;border:1px solid #53616b;border-radius:18px;background:#1b2730;color:#79dca0;font-size:1.45rem;font-weight:900}.camera-live-viewport.is-error .camera-live-state-icon{border-color:#75414a;background:#3b2025;color:#ff8792}.camera-live-state strong{font-size:1.18rem}.camera-live-state>span:last-of-type{margin-top:9px;color:#8998a4;line-height:1.55}.camera-live-retry{margin-top:24px;background:#273744;color:#e5ebef}.camera-live-footer{display:flex;align-items:center;gap:14px;padding:18px 28px 24px}.camera-live-footer p{margin:0 auto 0 0;color:#7f8e99;font-size:.76rem}.camera-live-badge{padding:7px 10px;border-radius:999px;background:#2a3741;color:#aab5bd;font-size:.68rem;font-weight:800;text-transform:uppercase}.camera-live-badge.live{background:#173c2b;color:#6ee29b}.camera-live-badge.error{background:#44242a;color:#ff929c}.camera-live-badge.ended{background:#283640;color:#aab6bf}@media(max-width:650px){.camera-live-dialog{width:100vw;max-height:100dvh;border-radius:0}.camera-live-heading{padding:19px 18px}.camera-live-heading p:last-child{display:none}.camera-live-viewport{min-height:52vh;margin:14px 14px 0}.camera-live-footer{align-items:stretch;flex-wrap:wrap;padding:14px}.camera-live-footer p{width:100%}.camera-live-footer button{flex:1}.camera-live-badge{display:grid;place-items:center}}
.surveillé{color:#71df9b;background:#173628}.découvert{color:#79caff;background:#17324a}.ignoré{color:#aeb7c0;background:#29313a}
[hidden]{display:none!important}
.center-tabs{position:sticky;top:0;z-index:20;display:flex;gap:6px;margin:18px 0 8px;padding:8px;background:#0d141bd9;border:1px solid #293642;border-radius:12px;backdrop-filter:blur(12px);overflow-x:auto;box-shadow:0 8px 24px #0005}
.center-tab{flex:0 0 auto;background:transparent;color:#98a7b6;padding:10px 13px;border:1px solid transparent}.center-tab:hover{color:#fff;background:#1d2934}.center-tab.active{color:#17120a;background:#ffb020;border-color:#ffc457}.tab-count{display:inline-grid;place-items:center;min-width:21px;height:21px;margin-left:5px;padding:0 6px;border-radius:99px;background:#0d141b33;font-size:.72rem}
.center-pane{animation:pane-in .16s ease-out}.center-pane>.card:first-child{margin-top:12px}.dashboard-grid{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(420px,1.2fr);gap:14px}.dashboard-grid>.card{margin:12px 0 0;min-height:190px}.dashboard-grid .incident-grid{grid-template-columns:1fr}.incident-grid.compact .incident-card{padding:12px}.incident-grid.compact .incident-card h3{font-size:1rem;margin:8px 0 2px}
.center-pane .card h2{margin:2px 0 8px}.center-pane .section-title span{color:#8f9dac;font-size:.88rem}.center-pane .table-wrap{max-height:58vh;overflow:auto;border-radius:8px}.center-pane .table-wrap thead{position:sticky;top:0;z-index:2;background:#161e27}.equipment-table{max-height:calc(100vh - 330px)!important}.assistance-card{min-height:220px}.primary-link{display:inline-block;padding:10px 15px;border-radius:8px;background:#ffb020;color:#17120a!important;font-weight:750}.grafana-viewport{height:clamp(600px,calc(100vh - 250px),900px);margin-top:12px;overflow:hidden;border:1px solid #2a3541;border-radius:14px;background:#0b1015}.center-pane .grafana-frame{height:100%;margin:0;border:0;border-radius:0}
@keyframes pane-in{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
@media(max-width:900px){.dashboard-grid{grid-template-columns:1fr}.center-tabs{top:0}.center-tab{padding:9px 11px}.center-pane .table-wrap{max-height:none}.equipment-table{max-height:none!important}}

.incident-pagination{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:16px}.incident-pagination span{color:#8f9dac;font-size:.88rem}.global-actions{position:relative}.global-actions summary{display:flex;align-items:center;gap:9px;height:42px;padding:0 13px;border:1px solid #43515d;border-radius:9px;background:#141d24cc;color:#dbe3e9;cursor:pointer;font-size:.82rem;font-weight:750;list-style:none;transition:.16s border-color,.16s background,.16s color}.global-actions summary::-webkit-details-marker{display:none}.global-actions summary:hover,.global-actions[open] summary{border-color:#65737d;background:#1d2831;color:#fff}.global-actions-symbol{color:#ffb020;font-size:.82rem;letter-spacing:.08em;line-height:1}.global-actions-chevron{width:7px;height:7px;margin-left:2px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .16s}.global-actions[open] .global-actions-chevron{transform:translateY(2px) rotate(225deg)}.global-actions-menu{position:absolute;right:0;top:calc(100% + 9px);z-index:25;width:315px;padding:9px;border:1px solid #3a4853;border-radius:13px;background:#101820f5;box-shadow:0 18px 50px #000a;backdrop-filter:blur(14px);animation:global-menu-in .14s ease-out}.global-actions-menu:before{content:"";position:absolute;right:22px;top:-5px;width:9px;height:9px;border-top:1px solid #3a4853;border-left:1px solid #3a4853;background:#101820;transform:rotate(45deg)}.global-actions-menu>p{margin:4px 8px 8px;color:#758590;font-size:.62rem;font-weight:850;letter-spacing:.16em}.global-action-item{display:grid;width:100%;grid-template-columns:40px minmax(0,1fr) 20px;align-items:center;gap:11px;padding:12px;border:1px solid transparent;border-radius:10px;background:transparent;color:#e7edf2;text-align:left}.global-action-item:hover,.global-action-item:focus-visible{border-color:#4a4d40;background:linear-gradient(110deg,#ffb02017,#1c252b);outline:none}.global-action-icon{display:grid;place-items:center;width:38px;height:38px;border:1px solid #76591f;border-radius:10px;background:#ffb02018;color:#ffb020;font-weight:900}.global-action-item strong,.global-action-item small{display:block}.global-action-item strong{font-size:.9rem}.global-action-item small{margin-top:3px;color:#8796a1;font-size:.7rem;font-weight:550;line-height:1.35}.global-action-arrow{justify-self:end;color:#71808b;font-size:1.05rem;transition:.16s transform,.16s color}.global-action-item:hover .global-action-arrow{color:#ffb020;transform:translateX(2px)}@keyframes global-menu-in{from{opacity:0;transform:translateY(-5px) scale(.98)}to{opacity:1;transform:none}}@media(max-width:520px){.global-actions-menu{left:0;right:auto;width:min(315px,calc(100vw - 44px))}.global-actions-menu:before{left:22px;right:auto}}

.agent-actions{position:relative;min-width:44px}.agent-actions-toggle{display:grid;place-items:center;width:38px;height:34px;padding:0;font-size:1.35rem;line-height:1}.agent-actions-list{position:fixed;z-index:120;display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:8px;margin:0;padding:10px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;background:linear-gradient(160deg,#17222b,#0d151b);border:1px solid #3a4a56;border-radius:14px;box-shadow:0 20px 55px #000b}.agent-actions-heading{grid-column:1/-1;display:flex;align-items:center;gap:11px;padding:5px 5px 10px;border-bottom:1px solid #33424d}.agent-actions-heading-icon{display:grid;flex:0 0 auto;place-items:center;width:34px;height:34px;border:1px solid #37684b;border-radius:10px;background:#63d89312;color:#72dfa0;font-size:.8rem;font-weight:900}.agent-actions-heading strong,.agent-actions-heading small{display:block;max-width:350px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.agent-actions-heading strong{color:#f1f5f7;font-size:.84rem}.agent-actions-heading small{margin-top:3px;color:#80909c;font-size:.65rem}.agent-actions-section{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:8px;border:1px solid #2b3944;border-radius:11px;background:#0b1319aa}.agent-actions-section-label{grid-column:1/-1;margin:0 2px 3px;color:#95a5b1;font-size:.65rem;font-weight:900;letter-spacing:.11em;text-transform:uppercase}.agent-actions-list button{width:100%;min-height:36px;padding:8px 9px;text-align:left;white-space:normal;border:1px solid transparent;border-radius:8px;font-size:.72rem;line-height:1.25}.agent-actions-list .small-button{background:#2b3b4a;color:#e3eaf0}.agent-actions-list .small-button:hover:not(:disabled){border-color:#5b7081;background:#35495a}.agent-actions-list button:disabled{opacity:.42;background:#202b35;color:#87939d}.agent-actions-section:last-child{border-color:#543239;background:#2a161b66}.agent-actions-section:last-child .agent-actions-section-label{color:#d28c95}.agent-actions-list .danger-button{background:#642d35;color:#ffd0d5}.agent-actions-list .danger-button:hover:not(:disabled){border-color:#b35865;background:#783640}.agent-actions-list .agent-uninstall-action{border-top:1px solid #8a454e}@media(max-width:600px){.agent-actions-list{grid-template-columns:1fr;padding:9px;border-radius:12px}.agent-actions-section{grid-template-columns:1fr;padding:8px}.agent-actions-heading strong,.agent-actions-heading small{max-width:250px}.agent-actions-list button{min-height:40px}}

/* Boutons de navigation */
.toolbar-actions{display:flex;align-items:center;gap:6px}.toolbar-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:36px;padding:8px 12px;border:1px solid #34434e;border-radius:9px;background:#17222b;color:#dce5eb!important;font-size:.78rem;font-weight:800;letter-spacing:0;text-decoration:none}.toolbar-button:hover{border-color:#866522;background:#24261f;color:#ffc24e!important;transform:translateY(-1px)}.toolbar-button>span{color:var(--accent);font-size:.9rem}

/* Roger collecte, le QG analyse, l'opérateur agit. */
.roger-flow{position:absolute;z-index:2;right:245px;top:50%;display:flex;align-items:center;gap:9px;transform:translateY(-50%)}.roger-flow-node{display:grid;place-items:center;width:72px;height:72px;border:1px solid #76591f;border-radius:20px;background:linear-gradient(145deg,#2a2418,#121a20);box-shadow:0 13px 30px #0005,0 0 25px #ffb21c12}.roger-flow-node b{color:var(--accent);font-size:1.15rem}.roger-flow-node small{color:#a8b3bb;font-size:.61rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.roger-flow-node.qg{border-color:#35627b;background:linear-gradient(145deg,#172c38,#111a20)}.roger-flow-node.qg b{color:#80d3ff}.roger-flow-node.alert{border-color:#476b55;background:linear-gradient(145deg,#183024,#111a1e)}.roger-flow-node.alert b{color:var(--good)}.roger-flow-link{position:relative;width:47px;height:12px;border-top:1px solid #5a6670}.roger-flow-link i{position:absolute;top:-4px;width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 10px #ffb21c}.roger-flow-link i:nth-child(1){animation:roger-packet 2.1s linear infinite}.roger-flow-link i:nth-child(2){animation:roger-packet 2.1s .7s linear infinite}.roger-flow-link i:nth-child(3){animation:roger-packet 2.1s 1.4s linear infinite}@keyframes roger-packet{0%{left:0;opacity:0;transform:scale(.6)}20%,80%{opacity:1}100%{left:40px;opacity:0;transform:scale(1)}}
.roger-fleet-node{position:relative;display:flex;align-items:center;width:110px;height:92px}.roger-mini{position:absolute;display:grid;place-items:center;width:58px;height:58px;border:1px solid #76591f;border-radius:17px;background:linear-gradient(145deg,#2a2418,#121a20);box-shadow:0 10px 24px #0007}.roger-mini b{color:var(--accent)}.roger-mini small{font-size:.48rem;color:#a8b3bb;text-transform:uppercase}.roger-mini:nth-child(1){left:0;top:2px;transform:rotate(-7deg)}.roger-mini:nth-child(2){left:25px;top:0;z-index:2}.roger-mini:nth-child(3){left:50px;top:4px;transform:rotate(7deg)}.roger-fleet-node em{position:absolute;left:0;right:0;bottom:0;text-align:center;color:#a8b3bb;font-size:.58rem;font-style:normal;font-weight:800;text-transform:uppercase}
.badge.late{color:#ffd36f;background:#4a381a}.center-card.late:before{background:#ffd36f}

/* Le pilotage du parc occupe l'écran : aucune information cachée dans une petite fenêtre. */
.fleet-dialog{inset:0;width:100vw;max-width:none;height:100vh;max-height:none;margin:0;padding:0;border:0;border-radius:0}.fleet-heading{padding-left:max(32px,calc((100vw - 1180px)/2));padding-right:max(32px,calc((100vw - 1180px)/2))}.fleet-body{width:100%;max-width:1180px;margin:auto;padding:30px 32px}.fleet-actions{padding-left:max(32px,calc((100vw - 1180px)/2));padding-right:max(32px,calc((100vw - 1180px)/2))}
@media(max-width:1250px){.roger-flow{display:none}}
@media(max-width:760px){.fleet-dialog{width:100vw;height:100vh;max-height:none;border-radius:0}.toolbar-button{padding:8px}.fleet-body{padding:20px 18px}}
@media(prefers-reduced-motion:reduce){.roger-flow-link i{animation:none}.roger-flow-link i:nth-child(1){left:4px}.roger-flow-link i:nth-child(2){left:20px}.roger-flow-link i:nth-child(3){left:36px}}

#identification-dialog{width:min(1000px,94vw)}.identity-grid{display:grid;grid-template-columns:minmax(150px,.7fr) minmax(200px,1.3fr);gap:8px 20px}.identity-grid dt{color:#8f9dac}.identity-grid dd{margin:0;overflow-wrap:anywhere}.identity-section{border-top:1px solid #293642;margin-top:20px}.intake-filters{display:flex;gap:10px;flex-wrap:wrap}.intake-filters input{flex:1;min-width:220px}#intake-feedback{color:#ffb020}#intake-list td{overflow-wrap:anywhere;max-width:280px}#identification-dialog .table-wrap,#intake-tokens{overflow:auto}@media(max-width:600px){.identity-grid{grid-template-columns:1fr}.identity-grid dd{margin-bottom:8px}}

.network-map{display:grid;gap:16px;margin-top:18px}.network-subnet{border:1px solid #344659;border-radius:12px;padding:18px;background:#101820}.network-subnet h3{color:#79caff;margin:0 0 8px}.network-caption{color:#9dacbb;font-size:.88rem}.network-hosts{display:flex;gap:12px;flex-wrap:wrap}.network-host{display:grid;gap:8px;border:1px solid #466781;padding:12px;border-radius:8px}.network-host small{color:#9dacbb}.network-equipment{border-left:2px dashed #466781;margin:16px 0 0 12px;padding-left:18px;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.network-device{padding:12px;background:#18232d;border-radius:8px;overflow-wrap:anywhere}.network-device summary{cursor:pointer;display:flex;flex-wrap:wrap;gap:8px;align-items:center}.network-device summary strong{flex-basis:100%}.network-device p{color:#adbdcc;font-size:.85rem}.network-device .button-group{flex-wrap:wrap}.asset-type{font-weight:750}.asset-type-camera{color:#86ddff;background:#153747}.asset-type-web_device{color:#c9a7ff;background:#33264b}.asset-type-ssh_host{color:#ffd070;background:#44351b}.asset-type-unknown{color:#b7c0c9;background:#29313a}@media(max-width:600px){.network-equipment{grid-template-columns:1fr;margin-left:0;padding-left:10px}.network-subnet{padding:12px}}

/* Cockpit — accueil */
:root{--ink:#f5f7fa;--muted:#8e9ba8;--panel:#151d25;--panel-deep:#0d141a;--line:#283641;--accent:#ffb21c;--accent-soft:#ffd36f;--good:#63d893;--danger:#ff6f7d}body{background:radial-gradient(circle at 18% 0,#1b2833 0,transparent 34rem),linear-gradient(145deg,#0b1116 0,#111a22 48%,#0b1116 100%);color:var(--ink)}body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.3;background-image:linear-gradient(#ffffff05 1px,transparent 1px),linear-gradient(90deg,#ffffff05 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(to bottom,#000,transparent 72%)}.topbar{position:relative;z-index:30;height:76px;padding:0 max(28px,calc((100vw - 1460px)/2));background:#091015e8;border-color:#24323d;backdrop-filter:blur(18px)}.brand{display:flex;align-items:center;gap:12px}.brand-name{font-size:1rem;letter-spacing:.13em}.brand-name b{color:var(--accent)}.brand-divider{width:1px;height:22px;background:#31404c}.brand-mark{position:relative;display:grid;grid-template-columns:repeat(3,4px);align-items:end;gap:3px;width:23px;height:23px;padding:3px;border:1px solid #3a4650;border-radius:6px}.brand-mark i{display:block;background:var(--accent);border-radius:2px;box-shadow:0 0 10px #ffb21c88}.brand-mark i:nth-child(1){height:7px}.brand-mark i:nth-child(2){height:14px}.brand-mark i:nth-child(3){height:10px}.refresh-controls nav{display:flex;align-items:center;gap:4px;padding:4px;background:#111a21;border:1px solid #25323c;border-radius:10px}.refresh-controls nav a{padding:7px 10px;border-radius:7px;color:#aab5c0}.refresh-controls nav a:hover{background:#1c2831;color:#fff}.icon-button{display:grid;place-items:center;width:36px;height:36px;padding:0;border:1px solid #34424d;background:#18232c;color:#eef3f6;font-size:1.2rem}.icon-button:hover{border-color:var(--accent);color:var(--accent)}main{position:relative;max-width:1460px;padding:42px 28px 70px}.global-hero{position:relative;min-height:230px;padding:36px 38px;overflow:hidden;border:1px solid #30404b;border-radius:24px;background:linear-gradient(115deg,#18232c 0,#121a21 60%,#171b1d 100%);box-shadow:0 24px 70px #0005}.global-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,#ffffff07,transparent 45%),radial-gradient(circle at 75% 50%,#ffb21c17,transparent 24rem);pointer-events:none}.hero-copy{position:relative;z-index:2;max-width:680px}.global-hero h1{max-width:650px;font-size:clamp(2.4rem,4.6vw,4.6rem);line-height:.98;letter-spacing:-.055em}.hero-lead{max-width:660px;margin:22px 0 0!important;font-size:1.06rem;line-height:1.65;color:#b0bcc6!important}.global-hero .updated{margin:18px 0 0;font-size:.78rem;text-transform:uppercase;letter-spacing:.1em;color:#71808d}.global-hero>.button-group{position:relative;z-index:3;align-self:flex-start}.global-hero button,.global-hero summary{min-height:42px}.hero-orbit{position:absolute;right:15%;top:50%;width:180px;height:180px;transform:translateY(-50%);opacity:.8}.orbit-core{position:absolute;inset:72px;border:2px solid var(--accent);border-radius:50%;background:#ffb21c2b;box-shadow:0 0 42px #ffb21c77}.orbit-ring{position:absolute;border:1px solid #e8eef42b;border-radius:50%}.orbit-ring-one{inset:38px}.orbit-ring-two{inset:5px}.orbit-dot{position:absolute;width:8px;height:8px;border-radius:50%;background:var(--accent-soft);box-shadow:0 0 16px var(--accent)}.dot-one{top:36px;left:50px}.dot-two{right:12px;bottom:66px}.stats{position:relative;z-index:4;margin:-22px 26px 30px;gap:12px}.stat{position:relative;overflow:hidden;min-height:118px;padding:24px 22px;border-color:#2d3b46;background:linear-gradient(145deg,#18232c,#111920);box-shadow:0 15px 35px #0004}.stat:after{content:"";position:absolute;top:20px;right:20px;width:8px;height:8px;border-radius:50%;background:#65727d;box-shadow:0 0 0 5px #65727d18}.stat.good:after{background:var(--good);box-shadow:0 0 0 5px #63d89318}.stat.danger:after{background:var(--danger);box-shadow:0 0 0 5px #ff6f7d18}.stat strong{font-size:2.35rem;line-height:1;letter-spacing:-.04em}.stat span{display:block;margin-top:13px;font-size:.74rem;font-weight:750;letter-spacing:.09em;text-transform:uppercase}.global-dashboard{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(320px,.75fr);gap:18px;align-items:start}.global-dashboard>.card{margin:0;border-radius:18px;background:linear-gradient(145deg,#161f27,#121920);box-shadow:0 18px 45px #0003}.global-dashboard h2,.centers-section h2{margin:2px 0 6px;font-size:1.45rem;letter-spacing:-.025em}.global-dashboard .section-title p:not(.eyebrow){margin:8px 0 0;color:#8997a4}.intake-card{padding:26px}.intake-filters{display:grid;grid-template-columns:minmax(220px,1fr) 180px auto;gap:10px;margin-top:24px;padding:12px;background:#0d141a;border:1px solid #25323c;border-radius:12px}.intake-filters input,.intake-filters select{height:42px;margin:0;border-color:transparent;background:#151f27}.intake-filters input:focus,.intake-filters select:focus{outline:2px solid #ffb21c66;border-color:var(--accent)}.intake-filters button{padding-inline:15px}.intake-empty{display:grid;justify-items:center;gap:6px;min-height:180px;padding:38px 20px;text-align:center;color:#dce5eb}.intake-empty-icon{display:grid;place-items:center;width:42px;height:42px;margin-bottom:5px;border:1px solid #2c5d42;border-radius:50%;background:#14291d;color:var(--good);font-weight:900}.intake-empty small{color:#7f8e9a}.incident-overview{padding:26px}.incident-overview .incident-grid{grid-template-columns:1fr;margin-top:22px}.incident-overview .empty-state{min-height:180px;flex-direction:column;justify-content:center;text-align:center;border-color:#294638;background:linear-gradient(145deg,#12241a,#101c17)}.incident-overview .empty-state strong{font-size:1.05rem}.incident-overview .empty-state span{max-width:230px;line-height:1.5}.centers-section{margin-top:44px}.centers-section>.section-title{margin-bottom:18px}.center-grid{grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:14px}.center-card{position:relative;overflow:hidden;min-height:220px;border-radius:16px;background:linear-gradient(145deg,#18222b,#111920);box-shadow:0 12px 32px #0003}.center-card:after{content:"→";position:absolute;right:20px;bottom:17px;color:#687784;font-size:1.2rem;transition:.16s transform,.16s color}.center-card:hover:after,.center-card:focus:after{transform:translateX(4px);color:var(--accent)}.center-card h3{letter-spacing:-.02em}.center-metrics div{border:1px solid #26333d;background:#0d151b}.center-card.online,.center-card.offline{border-left-width:1px}.center-card.online:before,.center-card.offline:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--good)}.center-card.offline:before{background:var(--danger)}button,a,summary,input,select{transition:border-color .16s,background .16s,color .16s,transform .16s}button:hover:not(:disabled){transform:translateY(-1px);filter:brightness(1.06)}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,.center-card:focus-visible{outline:2px solid var(--accent);outline-offset:3px}#intake-feedback:not(:empty){margin:14px 0 0;padding:12px 14px;border:1px solid #6f5321;border-radius:10px;background:#2b2111;color:#ffc85a}
@media(max-width:1100px){.hero-orbit{right:22%;opacity:.42}.global-dashboard{grid-template-columns:1fr}.incident-overview .incident-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.incident-overview .empty-state{min-height:130px}.refresh-controls nav a{display:none}}
@media(max-width:800px){.topbar{height:auto;min-height:68px;padding:12px 16px;gap:12px}.brand-divider,.brand small,.refresh-controls>span{display:none}.refresh-controls{gap:7px}main{padding:20px 14px 48px}.global-hero{min-height:0;padding:27px 22px 86px;border-radius:18px;align-items:flex-start}.global-hero h1{font-size:2.65rem}.hero-lead{font-size:.96rem}.global-hero>.button-group{position:absolute;left:22px;right:22px;bottom:22px}.hero-orbit{right:-60px;top:38%;transform:scale(.72) translateY(-50%);opacity:.28}.stats{grid-template-columns:1fr 1fr;margin:-12px 10px 24px}.stat{min-height:100px;padding:19px 17px}.stat strong{font-size:1.9rem}.intake-card,.incident-overview{padding:20px}.intake-filters{grid-template-columns:1fr}.intake-filters input{min-width:0}.centers-section{margin-top:32px}}
@media(max-width:480px){.global-hero h1{font-size:2.25rem}.global-hero>.button-group{flex-wrap:nowrap}.global-hero>.button-group>*{flex:1}.global-hero>.button-group>button{white-space:nowrap}.stats{gap:8px;margin-inline:0}.stat{min-height:92px;padding:16px 14px}.stat strong{font-size:1.7rem}.stat span{font-size:.65rem}.center-grid{grid-template-columns:1fr}.section-title>button{width:100%;margin-top:12px}}

/* Cockpit — vue centre */
.back-link{margin:0 0 14px;padding:9px 13px;border:1px solid #2d3a44;background:transparent;color:#9eabb6}.back-link:hover{border-color:#53626e;background:#172129;color:#fff}.center-hero{position:relative;min-height:220px;padding:34px 38px;overflow:hidden;border:1px solid #30404b;border-radius:24px;background:linear-gradient(115deg,#18242d 0,#121a21 62%,#171b1d 100%);box-shadow:0 24px 70px #0005}.center-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,#ffffff07,transparent 45%),radial-gradient(circle at 69% 52%,#ffb21c18,transparent 20rem);pointer-events:none}.center-identity{position:relative;z-index:2;max-width:690px}.center-hero h1{font-size:clamp(2.5rem,4.4vw,4.3rem);line-height:1;letter-spacing:-.05em}.center-subtitle{margin:16px 0 0!important;color:#b0bcc6!important;font-size:1.04rem}.center-hero .updated{margin:18px 0 0;font-family:ui-monospace,monospace;font-size:.76rem;letter-spacing:.035em;color:#73828e}.center-health{position:relative;z-index:3;align-self:flex-start;display:grid;justify-items:end;gap:8px;min-width:130px}.health-label{font-size:.62rem;font-weight:800;letter-spacing:.16em;color:#788792}.center-hero #center-state .badge{position:relative;padding:8px 14px 8px 28px;border:1px solid currentColor;background:#10171ccc;text-transform:capitalize;font-size:.84rem}.center-hero #center-state .badge:before{content:"";position:absolute;left:12px;top:50%;width:7px;height:7px;border-radius:50%;background:currentColor;transform:translateY(-50%);box-shadow:0 0 10px currentColor}.center-visual{position:absolute;right:22%;top:50%;width:170px;height:150px;transform:translateY(-50%);opacity:.76}.building{position:absolute;left:45px;bottom:15px;display:grid;grid-template-columns:repeat(2,12px);grid-auto-rows:12px;gap:12px;width:82px;height:105px;padding:20px 17px;border:1px solid #6f7b8266;border-radius:8px 8px 3px 3px;background:linear-gradient(145deg,#26343d99,#10171dbb);box-shadow:0 20px 35px #0005}.building:before{content:"";position:absolute;left:30px;top:-18px;width:20px;height:18px;border:1px solid #6f7b8266;border-bottom:0;border-radius:4px 4px 0 0}.building i{border-radius:2px;background:#ffbd3c;box-shadow:0 0 12px #ffb21c77}.building i:nth-child(2),.building i:nth-child(5){opacity:.25}.center-pulse{position:absolute;inset:0;border:1px solid #ffb21c25;border-radius:50%;box-shadow:inset 0 0 30px #ffb21c0a}.center-pulse:before,.center-pulse:after{content:"";position:absolute;border:1px solid #ffb21c24;border-radius:50%}.center-pulse:before{inset:22px}.center-pulse:after{inset:44px}#center-view>.stats{margin:-22px 26px 24px}.center-tabs{top:10px;gap:4px;margin:0 0 18px;padding:6px;border-color:#2b3944;border-radius:14px;background:#0c1319e8;box-shadow:0 14px 35px #0005}.center-tab{position:relative;padding:11px 16px;border-radius:9px;font-size:.82rem;font-weight:700}.center-tab:hover{background:#1a252e}.center-tab.active{color:#f5f7fa;border-color:#3b4851;background:linear-gradient(145deg,#293741,#202b34);box-shadow:0 5px 15px #0005}.center-tab.active:after{content:"";position:absolute;left:18px;right:18px;bottom:-7px;height:2px;border-radius:2px;background:var(--accent);box-shadow:0 0 10px #ffb21c88}.center-tab.active .tab-count{background:#ffb21c;color:#181108}.center-pane>.card{margin:14px 0;padding:27px;border-color:#293742;border-radius:18px;background:linear-gradient(145deg,#161f27,#111920);box-shadow:0 18px 45px #0003}.center-pane .section-title{margin-bottom:20px}.center-pane .section-title h2{font-size:1.45rem;letter-spacing:-.025em}.center-pane .section-title span{display:block;margin-top:6px;color:#83919d}.center-pane .table-wrap{border:1px solid #283640;border-radius:12px;background:#0d151b}.center-pane table{min-width:800px}.center-pane th{position:relative;padding:13px 14px;border-bottom-color:#34434e;background:#121c23;color:#778692;font-size:.68rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.center-pane td{padding:14px;border-bottom-color:#22303a;color:#d4dce2}.center-pane tbody tr{transition:background .15s}.center-pane tbody tr:hover{background:#19242c}.center-pane tbody tr:last-child td{border-bottom:0}.center-pane .badge{white-space:nowrap}.agents-panel{position:relative}.agents-panel:before,.alerts-panel:before{content:"";position:absolute;left:0;top:28px;width:3px;height:48px;border-radius:0 3px 3px 0;background:var(--accent)}.alerts-panel:before{background:var(--danger)}.agents-panel #add-center-agent{padding:10px 13px;border:1px solid #3b4a55;background:#22303a;color:#e7edf2}.alerts-panel .incident-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:10px}.alerts-panel .incident-card{border-color:#313d47;border-left-color:var(--danger);border-radius:12px;background:#0e161c}.alerts-panel .incident-card.closed{border-left-color:var(--good)}.alerts-panel .empty-state{min-height:116px;justify-content:center;border-color:#294638;background:linear-gradient(145deg,#12241a,#101c17)}.center-pane .integration-note{border:1px solid #283640;background:#0d151b}.center-pane .network-subnet{border-color:#334651;background:#0d151b}.center-pane .network-device{border:1px solid #293943;background:#17222a}.center-pane .grafana-frame{border-radius:14px}.center-pane .primary-link{box-shadow:0 8px 24px #ffb21c20}
@media(max-width:1100px){.center-visual{right:18%;opacity:.38}.center-tab{padding-inline:12px}.center-pane>.card{padding:22px}}
@media(max-width:800px){.back-link{margin-bottom:10px}.center-hero{min-height:190px;padding:26px 22px 74px;border-radius:18px;align-items:flex-start}.center-hero h1{font-size:2.55rem}.center-health{position:absolute;left:22px;bottom:20px;justify-items:start}.health-label{display:none}.center-visual{right:-35px;top:44%;transform:scale(.75) translateY(-50%);opacity:.27}#center-view>.stats{margin:-12px 10px 20px}.center-tabs{top:4px;margin-inline:-2px}.center-tab{padding:10px 12px}.center-pane>.card{padding:20px}.center-pane .section-title{margin-bottom:16px}.center-pane .table-wrap{margin-inline:-8px;border-radius:9px}.alerts-panel .incident-grid{grid-template-columns:1fr}}
@media(max-width:480px){.center-hero h1{font-size:2.15rem}.center-subtitle{font-size:.92rem}.center-pane>.card{padding:18px 16px}.agents-panel:before,.alerts-panel:before{top:24px}.center-tabs{border-radius:11px}.center-pane .section-title>button{width:100%}}

/* Inventaire local : liste lisible sans double défilement. */
.runtime-inventory{overflow:visible}.runtime-list{display:grid;gap:8px}.runtime-item{display:grid;grid-template-columns:150px minmax(240px,1fr) minmax(180px,.45fr) auto;align-items:center;gap:20px;min-width:0;padding:16px 18px;border:1px solid #293943;border-radius:12px;background:linear-gradient(145deg,#111b22,#0c141a);transition:border-color .15s,background .15s,transform .15s}.runtime-item:hover{border-color:#40515d;background:linear-gradient(145deg,#17232b,#101920);transform:translateY(-1px)}.runtime-state,.runtime-identity,.runtime-seen{display:grid;min-width:0}.runtime-state{justify-items:start;gap:7px}.runtime-state small{color:#778894;font-size:.67rem;font-weight:750}.runtime-identity{gap:6px}.runtime-identity strong{overflow:hidden;color:#eef3f6;font-size:.92rem;text-overflow:ellipsis;white-space:nowrap}.runtime-identity span{overflow:hidden;color:#82929e;font-family:ui-monospace,monospace;font-size:.72rem;text-overflow:ellipsis;white-space:nowrap}.runtime-seen{gap:5px}.runtime-seen small{color:#657580;font-size:.6rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.runtime-seen time{color:#aeb9c1;font-size:.76rem}.runtime-action{display:flex;justify-self:end;gap:7px}.runtime-table-actions{display:flex;align-items:center;gap:7px}.runtime-action .small-button{min-width:105px;border:1px solid #73591f;background:#ffb21c14;color:#ffc653}.runtime-action .small-button:hover{border-color:#b88725;background:#ffb21c;color:#1c1508}.runtime-ignore-button{padding:7px 9px;border:1px solid #3b4852;border-radius:8px;background:transparent;color:#8999a5;font-size:.75rem;font-weight:750}.runtime-ignore-button:hover{border-color:#74434a;background:#3c2227;color:#ff9aa3}.incident-mute-button{align-self:flex-start;margin-top:13px;padding:6px 9px;border:1px solid #4a5863;background:#1c2831;color:#b9c4cc;font-size:.68rem}.incident-mute-button:hover{border-color:#846829;background:#ffb21c12;color:#ffd06c}.incident-mute-title{padding:12px 14px;border:1px solid #34444f;border-radius:9px;background:#0d151b;color:#eef3f6;font-weight:800}
@media(max-width:900px){.runtime-item{grid-template-columns:130px minmax(0,1fr) auto}.runtime-seen{grid-column:2}.runtime-action{grid-column:3;grid-row:1/3}}
@media(max-width:600px){.runtime-list{gap:10px}.runtime-item{grid-template-columns:1fr auto;gap:14px;padding:15px}.runtime-state{grid-template-columns:auto 1fr;align-items:center}.runtime-identity{grid-column:1/-1;grid-row:2}.runtime-seen{grid-column:1;grid-row:3}.runtime-action{grid-column:2;grid-row:3;align-self:end}.runtime-action .small-button{min-width:96px}}
.runtime-status-compact{position:relative;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.runtime-status-compact>.badge{color:#ff8d8d;background:#3b2024}.runtime-status-detail{position:relative}.runtime-status-detail>summary{display:grid;place-items:center;width:22px;height:22px;border:1px solid #4d5c67;border-radius:50%;background:#202c35;color:#cbd5dc;font-size:.9rem;font-weight:800;line-height:1;cursor:pointer;list-style:none}.runtime-status-detail>summary::-webkit-details-marker{display:none}.runtime-status-detail[open]>summary{border-color:#9a762d;background:#ffb21c1a;color:#ffc34b}.runtime-status-detail>p{position:absolute;z-index:15;top:28px;left:0;width:min(340px,70vw);margin:0;padding:11px 13px;border:1px solid #4a5964;border-radius:9px;background:#101920;color:#d8e0e5;font-size:.72rem;font-weight:500;line-height:1.45;white-space:normal;overflow-wrap:anywhere;box-shadow:0 14px 35px #0009}#infrastructure-docker th:nth-child(3),#infrastructure-docker td:nth-child(3){width:120px;min-width:120px}

/* FAQ */
.refresh-controls nav .topbar-link{padding:7px 10px;border-radius:7px;background:transparent;color:#aab5c0;font-size:.78rem;font-weight:700;letter-spacing:0}.refresh-controls nav .topbar-link:hover{transform:none;background:#1c2831;color:#fff}.faq-dialog{width:min(1120px,94vw);max-height:90vh;padding:0;overflow:hidden;border-color:#34434d;border-radius:22px;background:#101820;box-shadow:0 30px 100px #000b}.faq-dialog::backdrop{background:#05080dcc;backdrop-filter:blur(5px)}.faq-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:32px 36px 28px;border-bottom:1px solid #2b3943;background:radial-gradient(circle at 80% 20%,#ffb21c16,transparent 20rem),linear-gradient(135deg,#1a252d,#121a20)}.faq-heading h2{margin:2px 0 8px;font-size:clamp(1.8rem,3vw,2.6rem);letter-spacing:-.04em}.faq-heading p:not(.eyebrow){max-width:720px;margin:0;color:#96a4af;line-height:1.55}.faq-close{display:grid;flex:0 0 auto;place-items:center;width:40px;height:40px;padding:0;border:1px solid #3b4954;border-radius:50%;background:#111920;color:#cbd4db;font-size:1.5rem;font-weight:400}.faq-layout{display:grid;grid-template-columns:270px minmax(0,1fr);gap:28px;max-height:calc(90vh - 150px);padding:28px 36px 36px;overflow:auto}.faq-summary{position:sticky;top:0;align-self:start;padding:24px;border:1px solid #31404a;border-radius:16px;background:linear-gradient(145deg,#18232b,#11191f)}.faq-summary-icon{display:grid;place-items:center;width:46px;height:46px;margin-bottom:18px;border:1px solid #805e20;border-radius:12px;background:#ffb21c18;color:var(--accent);font-size:1.25rem;font-weight:900;box-shadow:inset 0 0 20px #ffb21c0c}.faq-summary>strong{font-size:1.05rem}.faq-summary ol{margin:18px 0;padding-left:20px;color:#d7dfe5}.faq-summary li{margin:10px 0}.faq-summary p{margin:20px 0 0;padding-top:18px;border-top:1px solid #2a3741;color:#7f8e99;font-size:.78rem;line-height:1.55}.faq-list{display:grid;gap:9px}.faq-list details{border:1px solid #2a3943;border-radius:13px;background:#141e25;overflow:hidden}.faq-list details[open]{border-color:#44535d;background:#172129;box-shadow:0 10px 28px #0003}.faq-list summary{display:flex;align-items:center;gap:14px;padding:17px 19px;cursor:pointer;color:#e9eef2;font-weight:750;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{display:grid;flex:0 0 auto;place-items:center;width:28px;height:28px;border-radius:8px;background:#202d36;color:#8293a0;font-family:ui-monospace,monospace;font-size:.7rem}.faq-list summary:after{content:"+";margin-left:auto;color:#7f8e99;font-size:1.2rem;font-weight:400}.faq-list details[open] summary:after{content:"−";color:var(--accent)}.faq-list details[open] summary span{background:#ffb21c1d;color:var(--accent)}.faq-answer{padding:0 20px 20px 62px;color:#a9b5be;line-height:1.65}.faq-answer p{margin:0 0 12px}.faq-answer p:last-child{margin-bottom:0}.faq-answer ol,.faq-answer ul{margin:0 0 14px;padding-left:20px}.faq-answer li{margin:6px 0}.faq-answer strong{color:#eef3f6}.faq-answer code{display:inline-block;margin:2px 0;padding:3px 7px;border:1px solid #31404a;border-radius:5px;background:#0b1217;color:#ffd174;font-size:.78rem;overflow-wrap:anywhere}
@media(max-width:800px){.faq-dialog{width:96vw;max-height:94vh;border-radius:17px}.faq-heading{padding:24px 20px 20px}.faq-heading p:not(.eyebrow){font-size:.88rem}.faq-layout{grid-template-columns:1fr;gap:14px;max-height:calc(94vh - 145px);padding:18px 18px 28px}.faq-summary{position:static;padding:18px}.faq-summary-icon{float:left;width:38px;height:38px;margin:0 12px 8px 0}.faq-summary ol{display:flex;clear:both;flex-wrap:wrap;gap:5px 18px;margin:15px 0 0}.faq-summary li{margin:2px 0}.faq-summary p{display:none}.faq-list summary{padding:15px 14px;font-size:.9rem}.faq-answer{padding:0 15px 17px;font-size:.88rem}}

/* Recherche des centres */
.centers-toolbar{display:flex;align-items:center;gap:16px;margin:0 0 18px;padding:9px 10px;border:1px solid #2b3943;border-radius:14px;background:#0c141ad9;box-shadow:0 10px 30px #0002}.center-search{position:relative;display:flex;align-items:center;flex:1;color:#71808c}.center-search>span{position:absolute;left:13px;z-index:1;font-size:1.35rem;line-height:1;transform:rotate(-15deg)}.center-search input{height:46px;margin:0;padding:10px 44px;border-color:transparent;background:#151f27;color:#eef3f6;font-size:.92rem}.center-search input::placeholder{color:#71808c}.center-search input:focus{border-color:#ffb21c88;outline:2px solid #ffb21c2c}.center-search input::-webkit-search-cancel-button{cursor:pointer;filter:invert(1);opacity:.6}#center-search-count{flex:0 0 auto;padding:0 10px;color:#82919d;font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.center-search-empty{grid-column:1/-1;display:grid;justify-items:center;gap:7px;min-height:230px;padding:48px 20px;border:1px dashed #35444f;border-radius:16px;background:#111920;text-align:center}.center-search-empty-icon{display:grid;place-items:center;width:48px;height:48px;margin-bottom:5px;border:1px solid #4a5964;border-radius:14px;background:#19242c;color:var(--accent);font-size:1.55rem;transform:rotate(-15deg)}.center-search-empty strong{font-size:1.05rem}.center-search-empty p{margin:0;color:#7e8d98}
@media(max-width:600px){.centers-toolbar{align-items:stretch;flex-direction:column;gap:7px}.center-search input{font-size:.84rem}#center-search-count{padding:2px 5px 4px}.center-search-empty{min-height:190px}}

/* Édition d’un centre */
.edit-center-button{margin-top:6px;padding:7px 10px;border:1px solid #3b4a54;background:#172129;color:#aebac3;font-size:.72rem}.edit-center-button:hover{border-color:#ffb21c88;color:#fff}.center-edit-dialog{width:min(560px,92vw)}.center-edit-dialog form>p{color:#95a3ae;line-height:1.55}.center-edit-dialog input[readonly]{color:#7f8d98;background:#0c1318;cursor:not-allowed}.form-feedback{min-height:1.5em;margin:4px 0!important;color:#ffc65d!important;font-size:.86rem}
.center-edit-dialog form>small{display:block;margin:-8px 0 12px;color:#7f8d98}.identity-configurations{margin:22px 0;padding:18px;border:1px solid #5f4b20;border-radius:13px;background:#151b1d}.identity-configurations-heading{display:flex;align-items:center;justify-content:space-between;gap:18px}.identity-configurations-heading h3{margin:0}.identity-configuration-lists{display:grid;gap:18px;margin-top:16px}.identity-configuration-lists h4{margin:0 0 8px;color:#dce4e9}.identity-configuration-lists .table-wrap{border:1px solid #2b3943;border-radius:10px;background:#0d151b}.identity-configuration-lists table{min-width:650px}.identity-configuration-lists button{white-space:nowrap}
@media(max-width:800px){.center-health{align-items:center;display:flex;right:22px}.edit-center-button{margin:0}.center-edit-dialog .section-title{align-items:center;flex-direction:row}.center-edit-dialog .section-title button{width:auto;margin:0}}
@media(max-width:600px){.identity-configurations{padding:14px}.identity-configurations-heading{align-items:flex-start;flex-direction:column}.identity-configurations-heading .section-count{width:100%;text-align:center}}

#ssh-target-form input[name="ip"]{font-family:ui-monospace,monospace;font-size:1rem;letter-spacing:.025em}.faq-dialog[open]{display:flex;flex-direction:column}.faq-heading{flex:0 0 auto}.faq-layout{min-height:0;width:100%;overflow-x:hidden}

/* Installation universelle */
.install-roger-link{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 15px;border:1px solid #73571f;border-radius:8px;background:#ffb020;color:#17120a;text-decoration:none;font-size:.86rem;font-weight:800;white-space:nowrap;box-shadow:0 8px 22px #ffb02020}.install-roger-link:hover{transform:translateY(-1px);filter:brightness(1.06)}.faq-install-link{display:inline-flex;padding:9px 12px;border:1px solid #6f5625;border-radius:8px;background:#ffb21c17;color:#ffd170!important;text-decoration:none;font-weight:800}.faq-install-link:hover{border-color:var(--accent);background:#ffb21c24}.universal-install-dialog{width:min(980px,94vw);height:min(820px,92vh);padding:0;overflow:hidden;border-color:#34434d;border-radius:22px;background:#0e151b;box-shadow:0 30px 100px #000b}.universal-install-dialog::backdrop{background:#05080dcc;backdrop-filter:blur(5px)}.universal-install-dialog[open]{display:flex;flex-direction:column}.universal-install-heading{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:20px 24px;border-bottom:1px solid #2a3943;background:#151f27}.universal-install-heading h2{margin:2px 0 4px}.universal-install-heading p:not(.eyebrow){margin:0;color:#8d9aa5;font-size:.85rem}.universal-install-heading a{display:inline-flex;align-items:center;padding:9px 12px;color:#ffc458;text-decoration:none;white-space:nowrap}.universal-install-heading button{background:#26343e;color:#e5ebef}.universal-install-dialog iframe{flex:1;width:100%;min-height:0;border:0;background:#0d1318}
@media(max-width:800px){.global-hero>.button-group{overflow-x:auto}.global-hero>.button-group>*{flex:0 0 auto}.install-roger-link{font-size:.78rem}}
@media(max-width:600px){.universal-install-dialog{width:96vw;height:94vh;border-radius:16px}.universal-install-heading{align-items:flex-start;padding:16px;flex-direction:column;gap:10px}.universal-install-heading .button-group{width:100%;justify-content:space-between}}

/* Actions principales du cockpit */
.hero-actions{align-items:center;gap:8px;padding:6px;border:1px solid #33424d;border-radius:14px;background:#0c1319b8;box-shadow:0 14px 34px #0004;backdrop-filter:blur(12px)}.hero-actions>button,.hero-actions>.global-actions>summary{height:44px;min-height:44px;border-radius:9px;font-size:.82rem}.hero-actions>button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 15px;white-space:nowrap}.hero-actions>button>span{font-size:1.05rem;line-height:1}.hero-actions .hero-action-primary{border:1px solid #8e681d;box-shadow:none}.hero-actions .hero-action-secondary{border:1px solid transparent;background:transparent;color:#dce5eb}.hero-actions .hero-action-secondary:hover{border-color:#41515d;background:#1a252d}.hero-actions .global-actions summary{height:44px;padding:0 13px;border-color:transparent;background:transparent}.hero-actions .global-actions summary:hover,.hero-actions .global-actions[open] summary{border-color:#41515d;background:#1a252d}.hero-actions .global-actions-menu{top:calc(100% + 14px);width:292px;padding:8px;border-radius:12px}.hero-actions .global-actions-menu:before{right:20px}.hero-actions .global-actions-menu>p{margin:5px 9px 6px;font-size:.58rem}.hero-actions .global-action-item{grid-template-columns:36px minmax(0,1fr) 16px;gap:10px;padding:10px}.hero-actions .global-action-icon{width:34px;height:34px;border-radius:9px}.hero-actions .global-action-item strong{font-size:.84rem}.hero-actions .global-action-item small{font-size:.67rem}
@media(max-width:800px){.global-hero{padding-bottom:92px}.global-hero>.hero-actions{overflow:visible}.hero-actions>button,.hero-actions>.global-actions{flex:0 0 auto}}
@media(max-width:600px){.global-hero{padding-bottom:142px}.global-hero>.hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px}.hero-actions>.hero-action-primary{grid-column:1/-1}.hero-actions>.global-actions{justify-self:stretch}.hero-actions>.global-actions>summary{justify-content:center}.hero-actions .global-actions-menu{right:0;width:min(292px,calc(100vw - 44px))}}

/* Installation SSH d'une machine découverte */
.ssh-install-dialog{width:min(720px,92vw);max-height:90vh;padding:26px;overflow:auto}.ssh-install-dialog h2{margin-top:0}.ssh-install-dialog>p{line-height:1.5}.ssh-install-dialog .ssh-install-confirm{align-items:flex-start;margin:18px 0 14px;line-height:1.45}.ssh-install-dialog .ssh-install-confirm input{flex:0 0 auto;margin-top:.2em}.ssh-install-dialog .ssh-install-fingerprint{min-height:1.5em;margin:15px 0 0;color:#ffd170;font-family:ui-monospace,monospace;overflow-wrap:anywhere}.ssh-install-dialog .ssh-install-status{min-height:1.5em;color:#aeb9c5}.ssh-install-dialog button{margin:0 8px 8px 0}.ssh-install-dialog button:disabled{opacity:.42;cursor:not-allowed;filter:saturate(.35);transform:none}
@media(max-width:600px){.ssh-install-dialog{width:96vw;padding:20px 16px}.ssh-install-dialog button{width:100%;margin-right:0}}

/* Pilotage des mises à jour Roger */
.fleet-dialog{width:min(920px,94vw);max-height:92vh;padding:0;overflow:hidden;border-color:#3a4853;border-radius:22px;background:#0d151b;box-shadow:0 32px 100px #000c}.fleet-dialog::backdrop{background:#03070bcc;backdrop-filter:blur(5px)}.fleet-dialog[open]{display:flex;flex-direction:column}.fleet-dialog form{display:flex;min-height:0;flex:1;flex-direction:column}.fleet-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:28px 32px 24px;border-bottom:1px solid #2b3943;background:radial-gradient(circle at 80% 10%,#ffb21c17,transparent 20rem),linear-gradient(135deg,#19242c,#111920)}.fleet-heading h2{margin:2px 0 7px;font-size:2rem;letter-spacing:-.035em}.fleet-heading p:not(.eyebrow){margin:0;color:#94a2ad}.fleet-close{display:grid;flex:0 0 auto;place-items:center;width:40px;height:40px;padding:0;border:1px solid #3b4954;border-radius:50%;background:#111920;color:#cbd4db;font-size:1.5rem;font-weight:400}.fleet-body{min-height:0;padding:24px 32px 28px;overflow:auto}.fleet-overview{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.fleet-overview>div{min-width:0;padding:15px;border:1px solid #293842;border-radius:11px;background:#131d24}.fleet-overview span{display:block;margin-bottom:9px;color:#7f8e9a;font-size:.63rem;font-weight:800;letter-spacing:.1em}.fleet-overview strong{display:block;overflow:hidden;color:#f3f6f8;font-size:1.2rem;text-overflow:ellipsis;white-space:nowrap}.fleet-overview>div:first-child{border-color:#624b22;background:linear-gradient(145deg,#251f14,#151b1e)}.fleet-overview>div:first-child strong{color:#ffc75c}.fleet-status{min-height:1.3em;margin:11px 2px 22px;color:#82919d;font-size:.8rem}.fleet-status.loading{color:#82bfff}.fleet-status.error{color:#ff8d8d}.fleet-status.success{color:#71df9b}.fleet-strategy{margin:0;padding:0;border:0}.fleet-strategy legend{margin-bottom:11px;color:#dfe6eb;font-size:.92rem;font-weight:800}.fleet-mode-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.fleet-mode{position:relative;display:grid;grid-template-columns:38px minmax(0,1fr);align-items:start;gap:11px;min-height:112px;margin:0;padding:16px;border:1px solid #2e3d48;border-radius:13px;background:#131c23;color:#dce4e9;cursor:pointer}.fleet-mode:hover{border-color:#55636d;background:#17232b}.fleet-mode:has(input:checked){border-color:#9a7020;background:linear-gradient(145deg,#2b2416,#182026);box-shadow:inset 0 0 0 1px #ffb21c33,0 8px 24px #0003}.fleet-mode input{position:absolute;width:1px;height:1px;margin:0;opacity:0}.fleet-mode-icon{display:grid;place-items:center;width:38px;height:38px;border:1px solid #3b4a55;border-radius:10px;background:#202c35;color:#96a5b0;font-weight:900}.fleet-mode:has(input:checked) .fleet-mode-icon{border-color:#82601e;background:#ffb21c1d;color:var(--accent)}.fleet-mode strong,.fleet-mode small{display:block}.fleet-mode strong{margin:1px 0 6px;color:#edf2f5;font-size:.9rem}.fleet-mode small{color:#83919c;font-size:.74rem;line-height:1.4}.fleet-mode-pause:has(input:checked){border-color:#72545a;background:linear-gradient(145deg,#2a1c20,#181e23)}.fleet-mode-pause:has(input:checked) .fleet-mode-icon{border-color:#75444c;background:#ff6f7d17;color:#ff8d98}.fleet-settings{margin-top:14px;padding:17px;border:1px solid #2b3943;border-radius:13px;background:#10181e}.fleet-settings label{margin:0}.fleet-settings label>span{display:block;color:#dce4e9;font-size:.82rem;font-weight:800}.fleet-settings select{margin-bottom:5px}.fleet-settings small{display:block;color:#7e8d98;line-height:1.45}.fleet-pause-note{margin:0;color:#e1b1b6;line-height:1.55}.fleet-impact{margin-top:20px;padding:18px;border:1px solid #30404b;border-radius:14px;background:linear-gradient(145deg,#151f27,#10171d)}.fleet-impact-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.fleet-impact-heading span:first-child{color:#8998a4;font-size:.74rem;font-weight:800}.fleet-impact-heading h3{margin:5px 0 0;font-size:1.05rem}.fleet-impact-heading .badge{flex:0 0 auto}.fleet-impact>#fleet-preview{margin-top:15px;color:#d4dde3;line-height:1.55}.fleet-protection{margin:14px 0 0;padding-top:13px;border-top:1px solid #283640;color:#7f8e99;font-size:.77rem;line-height:1.5}.fleet-actions{display:flex;justify-content:flex-end;gap:9px;padding:17px 32px;border-top:1px solid #2a3842;background:#111920}.fleet-actions button{margin:0}.fleet-actions .secondary{margin:0;background:#26313d;color:#dce4ec}.fleet-actions button:disabled{opacity:.42;cursor:not-allowed;filter:saturate(.4);transform:none}
@media(max-width:760px){.fleet-dialog{width:96vw;max-height:95vh;border-radius:17px}.fleet-heading{padding:22px 20px 18px}.fleet-heading h2{font-size:1.65rem}.fleet-heading p:not(.eyebrow){font-size:.84rem;line-height:1.45}.fleet-body{padding:19px 18px 22px}.fleet-overview{grid-template-columns:1fr 1fr}.fleet-mode-grid{grid-template-columns:1fr}.fleet-mode{min-height:0}.fleet-actions{padding:14px 18px;flex-wrap:wrap}.fleet-actions button{flex:1}.fleet-actions #fleet-apply{flex-basis:100%;order:-1}}
@media(max-width:430px){.fleet-overview{gap:7px}.fleet-overview>div{padding:12px}.fleet-overview strong{font-size:1.05rem}.fleet-actions button{width:100%;flex-basis:100%}}

/* Synthèse des actions de la vue globale */
.attention-summary{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:0 0 20px}.attention-tile{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:17px;min-height:112px;padding:20px 22px;border:1px solid #3b4650;border-radius:17px;background:linear-gradient(135deg,#1b252d,#121a20);color:var(--ink);text-align:left;box-shadow:0 14px 38px #0003}.attention-tile:hover{border-color:#65727c}.attention-icon{display:grid;place-items:center;width:52px;height:52px;border:1px solid #765a24;border-radius:14px;background:#ffb21c17;color:var(--accent);font-size:1.45rem;font-weight:900}.attention-copy small,.attention-copy strong,.attention-copy span{display:block}.attention-copy small{margin-bottom:5px;color:#8b98a3;font-size:.62rem;font-weight:850;letter-spacing:.12em}.attention-copy strong{float:left;margin-right:11px;color:#ffd06a;font-size:2.25rem;line-height:1}.attention-copy>span{padding-top:9px;color:#e3e9ed;font-size:.9rem;font-weight:750}.attention-action{color:#98a5af;font-size:.76rem;font-weight:750;white-space:nowrap}.attention-action b{margin-left:7px;color:var(--accent);font-size:1rem}.attention-tile-alerts{border-color:#5a3339;background:linear-gradient(135deg,#261b20,#151a20)}.attention-tile-alerts .attention-icon{border-color:#704049;background:#ff6f7d16;color:#ff7e8a}.attention-tile-alerts .attention-copy strong,.attention-tile-alerts .attention-action b{color:#ff7e8a}.attention-tile.is-clear{border-color:#29483a;background:linear-gradient(135deg,#14231c,#111a18)}.attention-tile.is-clear .attention-icon{border-color:#326146;background:#63d89313;color:var(--good)}.attention-tile.is-clear .attention-copy strong,.attention-tile.is-clear .attention-action b{color:var(--good)}.global-dashboard{grid-template-columns:minmax(0,1.35fr) minmax(380px,1fr)}.section-count{padding:7px 10px;border:1px solid #5b343a;border-radius:999px;background:#ff6f7d12;color:#ff8a94;font-size:.72rem;font-weight:800;white-space:nowrap}.incident-overview{position:relative;overflow:hidden}.incident-overview:before{content:"";position:absolute;left:0;top:28px;width:3px;height:54px;border-radius:0 3px 3px 0;background:var(--danger)}.incident-overview .incident-grid{gap:10px;max-height:480px;padding-right:5px;overflow:auto;scrollbar-color:#46545e transparent}.incident-overview .incident-card{padding:17px 18px;border-radius:12px;background:#0e161c}.incident-overview .incident-card h3{margin:15px 0 6px;font-size:1rem}.incident-overview .incident-card p{margin:0 0 12px}
@media(max-width:1100px){.global-dashboard{grid-template-columns:1fr}.incident-overview .incident-grid{max-height:none}}
@media(max-width:720px){.attention-summary{grid-template-columns:1fr}.attention-tile{grid-template-columns:auto minmax(0,1fr);padding:17px}.attention-action{display:none}.attention-icon{width:46px;height:46px}.intake-filters{grid-template-columns:1fr}.global-dashboard .section-title{align-items:flex-start;flex-direction:column}.global-dashboard .section-title>button{width:100%}}

/* Navigation par vignettes de la vue globale */
.global-kpis{position:relative;z-index:4;display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin:-22px 26px 26px}.global-kpi{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:14px;min-height:124px;padding:20px;border:1px solid #2d3b46;border-radius:16px;background:linear-gradient(145deg,#18232c,#111920);color:var(--ink);text-align:left;box-shadow:0 15px 35px #0004}.global-kpi:hover{border-color:#576570}.global-kpi.active{border-color:#9b7429;background:linear-gradient(145deg,#272318,#151c20);box-shadow:inset 0 0 0 1px #ffb21c25,0 16px 38px #0005}.global-kpi.active:after{content:"";position:absolute;inset:auto 18px 0;height:3px;border-radius:3px;background:var(--accent);box-shadow:0 0 12px #ffb21c88}.global-kpi{position:relative}.global-kpi>span:last-child{min-width:0}.global-kpi small,.global-kpi strong,.global-kpi>span:last-child>span{display:block}.global-kpi small{margin-bottom:7px;color:#85939f;font-size:.6rem;font-weight:850;letter-spacing:.1em}.global-kpi strong{font-size:clamp(1.35rem,2vw,2rem);line-height:1;letter-spacing:-.04em}.global-kpi>span:last-child>span{margin-top:8px;color:#9ba8b2;font-size:.72rem}.global-kpi-icon{display:grid;place-items:center;width:42px;height:42px;border:1px solid #46545e;border-radius:12px;background:#202c35;color:#a7b3bc;font-weight:900}.global-kpi-icon.good{border-color:#326146;background:#63d89313;color:var(--good)}.global-kpi-icon.warning,.global-kpi-icon.guide{border-color:#765a24;background:#ffb21c17;color:var(--accent)}.global-kpi-icon.danger{border-color:#704049;background:#ff6f7d16;color:#ff7e8a}.global-kpi.is-clear .global-kpi-icon.danger{border-color:#326146;background:#63d89313;color:var(--good)}.global-panel-stack{min-height:360px}.global-panel[hidden]{display:none!important}.global-panel.active{animation:global-panel-in .18s ease-out}.global-panel-stack>.card{margin:0;padding:27px;border-color:#293742;border-radius:18px;background:linear-gradient(145deg,#161f27,#111920);box-shadow:0 18px 45px #0003}.global-panel-stack>.centers-section{margin-top:0}.rogers-overview .table-wrap{margin-top:20px;border:1px solid #283640;border-radius:12px;background:#0d151b}.roger-empty{min-height:210px;flex-direction:column;justify-content:center;text-align:center;border-color:#294638;background:linear-gradient(145deg,#12241a,#101c17)}@keyframes global-panel-in{from{opacity:.35;transform:translateY(6px)}to{opacity:1;transform:none}}
@media(max-width:1050px){.global-kpis{grid-template-columns:1fr 1fr}.global-kpi{min-height:108px}}
@media(max-width:600px){.global-kpis{grid-template-columns:1fr;margin:-12px 0 20px;gap:8px}.global-kpi{min-height:88px;padding:14px 16px}.global-kpi strong{font-size:1.65rem}.global-panel-stack>.card{padding:20px}.global-panel-stack .section-title{align-items:flex-start;flex-direction:column}.global-panel-stack .section-title>button{width:100%}}

/* Présentation Roger + QG et comparaison de marché */
.guide-panel{overflow:hidden}.guide-status{padding:8px 11px;border:1px solid #326146;border-radius:999px;background:#63d89312;color:var(--good);font-size:.72rem;font-weight:800;white-space:nowrap}.guide-flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:stretch;gap:13px;margin:25px 0}.guide-flow>article{padding:22px;border:1px solid #32414c;border-radius:15px;background:linear-gradient(145deg,#19242c,#0e171d)}.guide-flow>article>span{display:grid;place-items:center;width:34px;height:34px;margin-bottom:15px;border:1px solid #765a24;border-radius:9px;background:#ffb21c16;color:var(--accent);font-size:.72rem;font-weight:900}.guide-flow h3,.guide-details h3{margin:0 0 9px;color:#edf2f5;font-size:1rem}.guide-flow p,.guide-details li,.comparison-heading p{color:#9ba9b3;line-height:1.6}.guide-flow p{margin:0;font-size:.84rem}.guide-flow>i{align-self:center;color:var(--accent);font-size:1.25rem;font-style:normal}.guide-details{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-bottom:34px}.guide-details article{padding:20px;border:1px solid #293842;border-radius:14px;background:#0d151b}.guide-details ul{margin:0;padding-left:18px}.guide-details li{margin:7px 0;font-size:.8rem}.comparison-heading{margin:8px 0 18px}.comparison-heading h2{margin:4px 0 8px}.comparison-heading p{max-width:920px;margin:0}.comparison-table-wrap{overflow-x:auto;border:1px solid #31404a;border-radius:14px}.comparison-table{min-width:940px}.comparison-table th,.comparison-table td{vertical-align:top;padding:16px 17px;line-height:1.5}.comparison-table thead th{background:#1c2831;color:#dfe6eb;font-size:.72rem;letter-spacing:.07em;text-transform:uppercase}.comparison-table tbody th{color:#f0f4f6;white-space:nowrap}.comparison-table tbody td{color:#aeb9c1;font-size:.79rem}.comparison-table .roger-row{background:#ffb21c0b}.comparison-table .roger-row th{color:var(--accent)}.comparison-note{margin:15px 2px 0;color:#778691;font-size:.7rem;line-height:1.55}.comparison-note a{color:#c9a557}.comparison-note a:hover{color:var(--accent)}
@media(max-width:950px){.guide-flow{grid-template-columns:1fr}.guide-flow>i{transform:rotate(90deg);justify-self:center}.guide-details{grid-template-columns:1fr}.guide-status{white-space:normal}}
.global-kpis{grid-template-columns:repeat(4,1fr)}.hero-guide-button{border:1px solid #6e5628;background:#ffb21c12;color:#ffd06a;box-shadow:inset 0 0 20px #ffb21c08}.hero-guide-button:hover{border-color:var(--accent);background:#ffb21c20;color:#fff}.hero-guide-button span{margin-right:6px}.guide-panel{position:fixed;z-index:80;inset:0;overflow:auto;background:#091015;color:var(--ink);scrollbar-color:#46545e #091015}.guide-panel:before{content:"";position:fixed;inset:0;background:radial-gradient(circle at 82% 14%,#ffb21c18,transparent 28rem),radial-gradient(circle at 16% 32%,#3aa9ff0d,transparent 25rem);pointer-events:none}.guide-topbar{position:sticky;z-index:5;top:0;display:flex;align-items:center;justify-content:space-between;min-height:70px;padding:12px max(24px,calc((100vw - 1440px)/2));border-bottom:1px solid #26343e;background:#091015e8;backdrop-filter:blur(18px)}.guide-topbar span{color:#8998a3;font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.guide-hero{position:relative;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr);align-items:center;gap:60px;max-width:1440px;min-height:560px;margin:auto;padding:72px 40px}.guide-hero h1{max-width:900px;margin:10px 0 24px;font-size:clamp(3.1rem,6.5vw,7rem);line-height:.94;letter-spacing:-.065em}.guide-hero h1 em{color:var(--accent);font-style:normal}.guide-hero>div>p:not(.eyebrow){max-width:720px;color:#a9b6bf;font-size:1.12rem;line-height:1.7}.guide-hero-badges{display:flex;flex-wrap:wrap;gap:9px;margin-top:28px}.guide-hero-badges span{padding:8px 11px;border:1px solid #354550;border-radius:999px;background:#111b22;color:#c9d2d8;font-size:.72rem;font-weight:750}.guide-neural{position:relative;width:min(430px,38vw);aspect-ratio:1;justify-self:center;border:1px solid #ffb21c20;border-radius:50%;background:radial-gradient(circle,#ffb21c14,transparent 57%);box-shadow:0 0 90px #ffb21c0b}.guide-neural:before,.guide-neural:after{content:"";position:absolute;inset:16%;border:1px solid #ffb21c25;border-radius:50%}.guide-neural:after{inset:32%}.neural-core{position:absolute;z-index:3;inset:38%;display:grid;place-items:center;border:1px solid #b7882f;border-radius:50%;background:#231d12;color:var(--accent);font-size:1.5rem;font-weight:950;box-shadow:0 0 45px #ffb21c30}.neural-core small{font-size:.48rem;letter-spacing:.08em}.guide-neural b{position:absolute;z-index:2;display:grid;place-items:center;width:54px;height:54px;border:1px solid #49616f;border-radius:50%;background:#14222b;color:#dbe4e9}.guide-neural b:nth-of-type(1){left:3%;top:43%}.guide-neural b:nth-of-type(2){right:10%;top:8%}.guide-neural b:nth-of-type(3){right:3%;bottom:18%}.guide-neural i{position:absolute;left:50%;top:50%;width:42%;height:1px;background:linear-gradient(90deg,#ffb21caa,#5f8295);transform-origin:left}.guide-neural i:nth-of-type(1){transform:rotate(180deg)}.guide-neural i:nth-of-type(2){transform:rotate(-43deg)}.guide-neural i:nth-of-type(3){transform:rotate(36deg)}.guide-content{position:relative;max-width:1440px;margin:auto;padding:50px 40px 90px;border-top:1px solid #26343e}.guide-content>.section-title{margin-bottom:24px}
.guide-advantages{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:0 0 54px}.guide-advantages article{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;padding:19px;border:1px solid #2c3b45;border-radius:15px;background:linear-gradient(145deg,#17232b,#0d161c)}.guide-advantages article>span{display:grid;place-items:center;width:34px;height:34px;border:1px solid #765a24;border-radius:9px;background:#ffb21c15;color:var(--accent);font-size:.68rem;font-weight:900}.guide-advantages h3{margin:2px 0 7px;color:#edf2f5;font-size:.92rem}.guide-advantages p{margin:0;color:#91a0aa;font-size:.76rem;line-height:1.55}
@media(max-width:1050px){.global-kpis{grid-template-columns:1fr 1fr}.guide-hero{grid-template-columns:1fr;min-height:auto}.guide-neural{width:min(420px,75vw)}.guide-advantages{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.global-kpis{grid-template-columns:1fr}.hero-actions{align-items:stretch}.hero-actions>button,.hero-actions>details{width:100%}.guide-topbar{padding:10px 16px}.guide-topbar span{display:none}.guide-hero{padding:52px 20px 42px;gap:30px}.guide-hero h1{font-size:clamp(2.65rem,14vw,4.4rem)}.guide-neural{width:min(330px,82vw)}.guide-content{padding:36px 16px 70px}.guide-content .section-title{align-items:flex-start;flex-direction:column}.guide-advantages{grid-template-columns:1fr}}

/* Recherche transversale de la home */
.global-search-shell{position:relative;z-index:6;margin:-22px 26px 16px}.global-search-box{display:grid;grid-template-columns:auto auto minmax(180px,1fr) auto;align-items:center;gap:14px;min-height:72px;margin:0;padding:11px 14px;border:1px solid #3b4a55;border-radius:16px;background:#0c141aee;box-shadow:0 16px 40px #0005;backdrop-filter:blur(14px);cursor:text}.global-search-box:focus-within{border-color:#a77b27;box-shadow:0 0 0 3px #ffb21c17,0 18px 42px #0005}.global-search-icon{display:grid;place-items:center;width:42px;height:42px;border:1px solid #4b5964;border-radius:12px;background:#19242c;color:var(--accent);font-size:1.45rem;transform:rotate(-12deg)}.global-search-copy{min-width:165px}.global-search-copy strong,.global-search-copy small{display:block}.global-search-copy strong{color:#edf2f5;font-size:.82rem}.global-search-copy small{margin-top:4px;color:#71808c;font-size:.63rem;line-height:1.35}.global-search-box input{height:48px;margin:0;padding:10px 14px;border-color:transparent;background:#151f27;color:#f1f5f7;font-size:1rem}.global-search-box input:focus{outline:0;border-color:#4a5964}.global-search-box input::placeholder{color:#768591}.global-search-box kbd{padding:5px 8px;border:1px solid #3b4954;border-bottom-width:2px;border-radius:6px;background:#172129;color:#8896a1;font-family:inherit;font-size:.65rem}#global-search-status{display:block;min-height:18px;margin:7px 5px 0;color:#82919c;font-size:.68rem;font-weight:800;letter-spacing:.08em;text-align:right;text-transform:uppercase}.global-search-results{min-height:360px;padding:27px;border:1px solid #2d3b46;border-radius:18px;background:linear-gradient(145deg,#161f27,#111920);box-shadow:0 18px 45px #0003}.global-search-results>.section-title{margin-bottom:20px}.global-search-group-list{display:grid;gap:15px}.global-search-group{padding:15px;border:1px solid #293842;border-radius:14px;background:#0d151b}.global-search-group-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.global-search-group-title h3{margin:0;color:#aab6bf;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase}.global-search-group-title span{display:grid;place-items:center;min-width:25px;height:25px;padding:0 7px;border-radius:999px;background:#26343e;color:#cad3da;font-size:.7rem;font-weight:800}.global-search-result-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:8px}.global-search-result{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px;border:1px solid #293741;border-radius:11px;background:#151f27;color:#e8edf1;text-align:left}.global-search-result:hover{border-color:#586771;background:#1a2630}.global-search-result-icon{display:grid;place-items:center;width:34px;height:34px;border:1px solid #495863;border-radius:9px;background:#202c35;color:var(--accent);font-size:.76rem;font-weight:900}.global-search-result>span:nth-child(2){min-width:0}.global-search-result strong,.global-search-result small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.global-search-result strong{font-size:.86rem}.global-search-result small{margin-top:5px;color:#83919c;font-size:.7rem}.global-search-result-arrow{color:#687783}.global-search-empty{display:grid;justify-items:center;gap:7px;min-height:240px;padding:48px 20px;text-align:center}.global-search-empty-icon{display:grid;place-items:center;width:48px;height:48px;margin-bottom:5px;border:1px solid #4a5964;border-radius:14px;background:#19242c;color:var(--accent);font-size:1.55rem;transform:rotate(-15deg)}.global-search-empty p{margin:0;color:#7e8d98}
@media(max-width:900px){.global-search-box{grid-template-columns:auto minmax(0,1fr) auto}.global-search-copy{display:none}.global-search-shell{margin-top:-12px}.global-search-result-list{grid-template-columns:1fr}}
@media(max-width:600px){.global-search-shell{margin:0 0 14px}.global-search-box{grid-template-columns:auto minmax(0,1fr);gap:9px;padding:9px}.global-search-box kbd{display:none}.global-search-box input{font-size:.86rem}.global-search-results{padding:20px 14px}.global-search-group{padding:10px}.global-search-result{padding:11px}}

/* Barre d’outils inférieure et correction définitive de la vue Centres */
.global-panel.centers-section,.global-panel.centers-section.active{padding:27px;border:1px solid #293742;border-radius:18px;background:linear-gradient(145deg,#161f27,#111920);color:var(--ink);box-shadow:0 18px 45px #0003}.global-panel.centers-section>.section-title{margin-bottom:20px}.global-panel.centers-section .center-card.online{color:var(--ink);background:linear-gradient(145deg,#18222b,#111920)}.global-panel.centers-section .center-card.online h3{color:#eef3f6}.global-panel.centers-section .center-grid{gap:14px}.tool-footer{position:relative;z-index:20;border-top:1px solid #26343e;background:#091015e8;backdrop-filter:blur(16px)}.tool-footer-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;max-width:1460px;min-height:64px;margin:auto;padding:10px 28px}.tool-version{padding:8px 11px;border:1px solid #34424d;background:#151f27;color:#b8c3cb;font-size:.76rem;font-weight:750}.tool-footer nav{display:flex;align-items:center;gap:6px}.tool-footer nav a{padding:8px 11px;border:1px solid transparent;border-radius:8px;color:#aab6bf;text-decoration:none;font-size:.78rem;font-weight:750}.tool-footer nav a:hover{border-color:#3c4a55;background:#18232c;color:var(--accent)}
@media(max-width:700px){.global-panel.centers-section{padding:20px}.tool-footer-inner{align-items:stretch;flex-direction:column;padding:14px 16px}.tool-version{width:100%}.tool-footer nav{display:grid;grid-template-columns:repeat(3,1fr)}.tool-footer nav a{text-align:center}}
.reporting-token-card{grid-column:1/-1}.reporting-token-form{display:grid;grid-template-columns:minmax(220px,1fr) auto;align-items:end;gap:12px;margin:18px 0}.reporting-token-form button{margin:0}.reporting-token-created{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;margin:0 0 18px;padding:14px;border:1px solid #765a24;border-radius:10px;background:#ffb21c0d}.reporting-token-created strong{grid-column:1/-1;color:#ffd06a}.reporting-token-created code{overflow:auto;padding:10px;border-radius:7px;background:#091015;color:#edf2f5;user-select:all}@media(max-width:650px){.reporting-token-form,.reporting-token-created{grid-template-columns:1fr}.reporting-token-created button{width:100%}}

/* Historique des incidents et action de mise en sourdine */
.incident-card-context{display:flex;flex-wrap:wrap;gap:7px 16px;margin:2px 0 12px;color:#b8c4cc;font-size:.76rem}.incident-card-context span{position:relative;padding-left:12px}.incident-card-context span:before{content:"";position:absolute;left:0;top:.46em;width:5px;height:5px;border-radius:50%;background:#687985}.incident-card-context span:first-child:before{background:#ffb21c}.incident-card-footer{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin-top:14px}.incident-card-footer small{line-height:1.55}.incident-mute-button{display:grid;flex:0 0 30px;place-items:center;width:30px;height:30px;margin:0;padding:0;border:1px solid #3c4a55;border-radius:9px;background:#172129;color:#8796a1;font-size:1rem}.incident-mute-button:hover{border-color:#846829;background:#ffb21c14;color:#ffd06c}.incident-history-group{grid-column:1/-1;display:grid;gap:10px}.incident-history-group+.incident-history-group{margin-top:12px;padding-top:20px;border-top:1px solid #2b3842}.incident-history-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.incident-history-heading h3{margin:0;color:#eef3f6;font-size:.92rem}.incident-history-heading span{color:#7f8e99;font-size:.72rem}.incident-history-group>.incident-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:10px}
.incident-card-actions{display:flex;gap:6px}.incident-resolve-button{display:grid;flex:0 0 30px;place-items:center;width:30px;height:30px;padding:0;border:1px solid #315f4b;border-radius:9px;background:#14271f;color:#80d5ac;font-size:1rem}.incident-resolve-button:hover{border-color:#4b9b74;background:#1b3529;color:#b1f1cf}.incident-resolve-button:disabled{cursor:wait;opacity:.55}

/* Tableaux de la fiche centre présentés comme des cartes lisibles. */
.center-pane .table-wrap:not(.runtime-inventory){width:100%;max-width:100%;max-height:none!important;margin-inline:0;overflow:visible!important;border:0;background:transparent}.center-pane .table-wrap:not(.runtime-inventory) table{display:block;width:100%;min-width:0;table-layout:auto}.center-pane .table-wrap:not(.runtime-inventory) thead{display:none}.center-pane .table-wrap:not(.runtime-inventory) tbody{display:grid;width:100%;gap:9px}.center-pane .table-wrap:not(.runtime-inventory) tr{display:grid;width:100%;grid-template-columns:repeat(auto-fit,minmax(min(100%,145px),1fr));align-items:start;gap:14px 20px;padding:16px 18px;border:1px solid #2c3b46;border-radius:12px;background:linear-gradient(145deg,#111b22,#0c141a);transition:border-color .15s,background .15s,transform .15s}.center-pane .table-wrap:not(.runtime-inventory) tr:hover{border-color:#40515d;background:linear-gradient(145deg,#17232b,#101920);transform:translateY(-1px)}.center-pane .table-wrap:not(.runtime-inventory) td{display:grid;align-content:start;gap:6px;min-width:0;max-width:100%;padding:0;border:0;color:#dce3e8;overflow-wrap:anywhere;white-space:normal}.center-pane .table-wrap:not(.runtime-inventory) td:before{content:attr(data-label);color:#748490;font-size:.6rem;font-weight:850;letter-spacing:.09em;text-transform:uppercase}.center-pane .table-wrap:not(.runtime-inventory) td:last-child{justify-items:start}.center-pane .table-wrap:not(.runtime-inventory) .button-group{justify-content:flex-start;margin:0;flex-wrap:wrap}
@media(max-width:700px){.center-pane .table-wrap:not(.runtime-inventory) tr{grid-template-columns:1fr 1fr;padding:14px}.center-pane .table-wrap:not(.runtime-inventory) td:last-child{grid-column:1/-1}}
@media(max-width:480px){.center-pane .table-wrap:not(.runtime-inventory) tr{grid-template-columns:1fr}.center-pane .table-wrap:not(.runtime-inventory) td:last-child{grid-column:auto}}

/* Cartes Roger : lecture plus nette et actions toujours accessibles à droite. */
#center-agents tr{position:relative;z-index:0;min-height:154px;padding:18px 82px 18px 18px;border-color:#334651;background:linear-gradient(135deg,#121d24,#0c141a);box-shadow:inset 3px 0 0 #63d89355,0 8px 22px #0002}#center-agents tr:hover{border-color:#4a5d69;box-shadow:inset 3px 0 0 #63d893,0 12px 28px #0003}#center-agents tr:has(.agent-actions-list:not([hidden])){z-index:20}#center-agents td{gap:7px}#center-agents td:last-child{position:absolute;z-index:4;right:18px;top:50%;display:block;width:44px;transform:translateY(-50%)}#center-agents td:last-child:before{display:none}#center-agents .agent-actions{min-width:44px}#center-agents .agent-actions-toggle{border:1px solid #455665;background:#263746;color:#dce8ef;box-shadow:0 7px 18px #0004}#center-agents .agent-actions-toggle:hover{border-color:#d99b23;background:#ffb21c;color:#17120a}
@media(max-width:600px){#center-agents tr{min-height:0;padding:15px 68px 15px 15px}#center-agents td:last-child{right:14px;top:18px;transform:none}}

.global-search-box{grid-template-columns:auto minmax(180px,1fr) auto}

/* Priorité finale : le déploiement Roger est une page plein écran. */
.fleet-dialog{inset:0;width:100vw;max-width:none;height:100vh;max-height:none;margin:0;padding:0;border:0;border-radius:0}.fleet-heading{padding-left:max(32px,calc((100vw - 1180px)/2));padding-right:max(32px,calc((100vw - 1180px)/2))}.fleet-body{width:100%;max-width:1180px;margin:auto;padding:30px 32px}.fleet-actions{padding-left:max(32px,calc((100vw - 1180px)/2));padding-right:max(32px,calc((100vw - 1180px)/2))}@media(max-width:760px){.fleet-dialog{width:100vw;height:100vh;max-height:none;border-radius:0}.fleet-body{padding:20px 18px}}

/* Présentation Roger + QG : quatre briques et roadmap. */
.guide-flow{grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;gap:11px}.guide-flow>article.guide-flow-control{border-color:#856526;background:linear-gradient(145deg,#2b2416,#11191e);box-shadow:inset 0 0 35px #ffb21c0b}.guide-flow>article>span{display:inline-grid;width:auto;min-width:34px;padding:0 9px;font-size:.65rem;letter-spacing:.04em}.guide-flow p{font-size:.8rem}.guide-flow>i{font-size:1.15rem}.guide-details{margin-bottom:44px}.guide-roadmap{margin:0 0 52px;padding:28px;border:1px solid #31404a;border-radius:18px;background:linear-gradient(145deg,#121d24,#0b1318)}.roadmap-track{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:24px}.roadmap-track article{position:relative;padding:20px 18px 18px;border-top:2px solid #43535e;background:#101920}.roadmap-track article:before{content:"";position:absolute;width:12px;height:12px;top:-7px;left:18px;border:2px solid #101920;border-radius:50%;background:#71828d;box-shadow:0 0 0 2px #43535e}.roadmap-track article+article{border-left:1px solid #2b3942}.roadmap-track article.roadmap-current{border-top-color:var(--accent);background:#ffb21c0a}.roadmap-track article.roadmap-current:before{background:var(--accent);box-shadow:0 0 0 2px #755a26,0 0 18px #ffb21c66}.roadmap-track h3{margin:0 0 9px;color:#edf2f5;font-size:1rem}.roadmap-track span{display:block;margin:3px 0 14px;color:var(--accent);font-size:.66rem;font-weight:900;letter-spacing:.09em}.roadmap-track p{min-height:102px;margin:0 0 15px;color:#9ba9b3;font-size:.78rem;line-height:1.6}.roadmap-track strong{color:#dbe4e9;font-size:.7rem}
@media(max-width:1100px){.roadmap-track{grid-template-columns:1fr 1fr}.roadmap-track article:nth-child(3){border-left:0}.roadmap-track p{min-height:auto}}
@media(max-width:950px){.guide-flow{grid-template-columns:1fr}}
@media(max-width:650px){.guide-roadmap{padding:21px 16px}.roadmap-track{grid-template-columns:1fr}.roadmap-track article+article{border-left:0}}

/* Cahier des charges et comparaison visuelle. */
.guide-spec{margin:0 0 46px;padding:30px;border:1px solid #715a2d;border-radius:20px;background:radial-gradient(circle at 100% 0,#ffb21c15,transparent 30rem),linear-gradient(145deg,#182128,#0d151a);box-shadow:0 22px 60px #0003}.guide-spec-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:24px}.guide-spec-heading h2{margin:5px 0 8px;font-size:clamp(1.7rem,3vw,2.6rem)}.guide-spec-heading p:not(.eyebrow){max-width:820px;margin:0;color:#9ba9b3;line-height:1.6}.guide-spec-heading>span{flex:0 0 auto;padding:9px 12px;border:1px solid #725a2b;border-radius:999px;background:#ffb21c10;color:#ffd16f;font-size:.7rem;font-weight:850}.guide-spec-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}.guide-spec-grid article{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);gap:13px;min-height:150px;padding:18px 18px 36px;border:1px solid #2f3e48;border-radius:13px;background:#0d171d}.guide-spec-grid b{display:grid;place-items:center;width:32px;height:32px;border-radius:8px;background:#ffb21c17;color:var(--accent);font-size:.68rem}.guide-spec-grid h3{margin:2px 0 7px;color:#edf2f5;font-size:.91rem}.guide-spec-grid p{margin:0;color:#91a0aa;font-size:.75rem;line-height:1.55}.guide-spec-grid i{position:absolute;right:16px;bottom:13px;color:#67d895;font-size:.61rem;font-style:normal;font-weight:900;letter-spacing:.1em}.comparison-section{margin-top:4px;padding:34px;border:1px solid #2d3d47;border-radius:20px;background:linear-gradient(160deg,#121c23,#0a1217)}.comparison-section>.comparison-heading h2{font-size:clamp(1.8rem,3.7vw,3.3rem);letter-spacing:-.035em}.comparison-showcase{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin:26px 0}.comparison-card{display:flex;flex-direction:column;min-height:310px;padding:19px;border:1px solid #30404b;border-radius:15px;background:linear-gradient(145deg,#19242c,#0e171d);transition:transform .18s ease,border-color .18s ease}.comparison-card:hover{transform:translateY(-3px);border-color:#556875}.comparison-card-roger{grid-column:span 2;border-color:#8b6928;background:radial-gradient(circle at 95% 5%,#ffb21c20,transparent 16rem),linear-gradient(145deg,#2a2417,#111a20);box-shadow:0 18px 45px #0003}.comparison-brand{display:flex;align-items:center;gap:12px}.comparison-brand>span{display:grid;place-items:center;width:43px;height:43px;border:1px solid #4c606d;border-radius:12px;background:#111c23;color:#dce6eb;font-size:.8rem;font-weight:950}.comparison-card-roger .comparison-brand>span{border-color:#8b6928;background:#ffb21c16;color:var(--accent)}.comparison-brand small{color:#7f909b;font-size:.58rem;font-weight:900;letter-spacing:.09em}.comparison-brand h3{margin:2px 0 0;color:#f0f4f6;font-size:1.05rem}.comparison-card>p{margin:18px 0;color:#9ba9b3;font-size:.77rem;line-height:1.55}.comparison-tags{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 16px}.comparison-tags span{padding:5px 7px;border:1px solid #795d28;border-radius:999px;background:#ffb21c0d;color:#e4c275;font-size:.59rem;font-weight:800}.comparison-card dl{display:grid;gap:11px;margin:auto 0 0}.comparison-card dl div{padding-top:10px;border-top:1px solid #293842}.comparison-card dt{margin-bottom:4px;color:#778995;font-size:.58rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.comparison-card dd{margin:0;color:#d0d9de;font-size:.7rem;line-height:1.4}.comparison-table-wrap{margin-top:18px}
@media(max-width:1150px){.comparison-showcase{grid-template-columns:repeat(3,1fr)}.comparison-card-roger{grid-column:span 2}}
@media(max-width:900px){.guide-spec-grid{grid-template-columns:1fr 1fr}.comparison-showcase{grid-template-columns:1fr 1fr}.comparison-card-roger{grid-column:span 2}}
@media(max-width:650px){.guide-spec,.comparison-section{padding:21px 16px}.guide-spec-heading{align-items:flex-start;flex-direction:column}.guide-spec-grid,.comparison-showcase{grid-template-columns:1fr}.comparison-card-roger{grid-column:auto}.comparison-card{min-height:0}.comparison-section>.comparison-heading h2{font-size:2rem}}

/* Matrice de positionnement : lecture immédiate avant les fiches détaillées. */
.comparison-visual{overflow:hidden;margin:28px 0 18px;border:1px solid #3a4b56;border-radius:17px;background:#0b141a;box-shadow:0 18px 48px #0003}.comparison-visual-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:19px 22px;border-bottom:1px solid #2e3d47;background:linear-gradient(90deg,#19252d,#101920)}.comparison-visual-head>div:first-child span,.comparison-visual-head>div:first-child strong{display:block}.comparison-visual-head>div:first-child span{margin-bottom:5px;color:var(--accent);font-size:.59rem;font-weight:950;letter-spacing:.12em}.comparison-visual-head>div:first-child strong{color:#e9eef1;font-size:1.02rem}.comparison-legend{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:14px}.comparison-legend span{display:flex;align-items:center;gap:6px;color:#8d9ca6;font-size:.64rem;font-weight:750}.comparison-legend i{width:9px;height:9px;border-radius:50%;box-shadow:0 0 12px currentColor}.comparison-legend .level-native{background:#62d795;color:#62d795}.comparison-legend .level-strong{background:#5ca9f6;color:#5ca9f6}.comparison-legend .level-adapt{background:#7b8993;color:#7b8993}.fit-matrix{min-width:850px;padding:9px}.fit-row{display:grid;grid-template-columns:1.35fr repeat(5,1fr);gap:7px;align-items:center;min-height:53px;border-bottom:1px solid #202d35}.fit-row:last-child{border-bottom:0}.fit-row>span,.fit-row>strong{min-width:0}.fit-row>strong{display:flex;align-items:center;gap:10px;padding:7px 11px;color:#dfe7eb;font-size:.75rem}.fit-row>strong i{display:grid;place-items:center;flex:0 0 auto;width:29px;height:29px;border:1px solid #40515c;border-radius:8px;background:#152129;color:#aebbc3;font-size:.58rem;font-style:normal;font-weight:950}.fit-row>span:not(:first-child){position:relative;margin:0 4px;padding:9px 7px 9px 25px;border-radius:8px;font-size:.65rem;font-weight:800}.fit-row>span:not(:first-child):before{content:"";position:absolute;left:9px;top:50%;width:8px;height:8px;border-radius:50%;transform:translateY(-50%);box-shadow:0 0 10px currentColor}.fit-row>span.level-native{background:#62d79510;color:#76dda1}.fit-row>span.level-native:before{background:#62d795}.fit-row>span.level-strong{background:#5ca9f610;color:#7ebafa}.fit-row>span.level-strong:before{background:#5ca9f6}.fit-row>span.level-adapt{background:#7b89930c;color:#929fa8}.fit-row>span.level-adapt:before{background:#6e7d87}.fit-row.fit-header{min-height:39px;border-bottom-color:#354651}.fit-row.fit-header>span{padding:6px 11px!important;background:transparent!important;color:#6f808b!important;font-size:.57rem!important;font-weight:900!important;letter-spacing:.06em;text-transform:uppercase}.fit-row.fit-header>span:before{display:none}.fit-row.fit-roger{border:1px solid #7f6128;border-radius:11px;background:linear-gradient(90deg,#ffb21c12,#121b21)}.fit-row.fit-roger>strong{color:#ffd374}.fit-row.fit-roger>strong i{border-color:#8a6828;background:#ffb21c17;color:var(--accent);box-shadow:0 0 18px #ffb21c20}.fit-takeaway{display:flex;align-items:center;gap:12px;margin:0;padding:17px 22px;border-top:1px solid #30404a;background:#ffb21c09;color:#aab6bd;font-size:.75rem;line-height:1.5}.fit-takeaway>span{display:grid;place-items:center;flex:0 0 auto;width:29px;height:29px;border:1px solid #7c602b;border-radius:50%;color:var(--accent);font-weight:900}.fit-takeaway strong{color:#f1d28b}
@media(max-width:950px){.comparison-visual{overflow-x:auto}.comparison-visual-head,.fit-takeaway{position:sticky;left:0;width:min(100%,calc(100vw - 66px))}.comparison-visual-head{align-items:flex-start;flex-direction:column}.comparison-legend{justify-content:flex-start}}
@media(max-width:650px){.comparison-visual-head,.fit-takeaway{width:calc(100vw - 66px);padding:16px}.fit-takeaway{align-items:flex-start}.fit-matrix{min-width:780px}}

/* Tableau comparatif inversé : avantages en lignes, solutions en colonnes. */
.comparison-checks-wrap{overflow-x:auto;margin:28px 0 8px;padding:0 0 2px;border:1px solid #3b4b56;border-radius:20px;background:#0a1319;box-shadow:0 24px 65px #0005;scrollbar-color:#576873 #111a20}.comparison-checks-legend{position:sticky;left:0;display:flex;align-items:center;justify-content:flex-end;gap:20px;min-width:1120px;padding:14px 20px;border-bottom:1px solid #2c3b45;background:#111b22}.comparison-checks-legend span{display:flex;align-items:center;gap:7px;color:#8f9da7;font-size:.65rem;font-weight:750}.comparison-checks-legend i{display:grid;place-items:center;width:23px;height:23px;border-radius:7px;font-size:.82rem;font-style:normal;font-weight:950}.comparison-checks{width:100%;min-width:1120px;border:0;border-collapse:separate;border-spacing:0;table-layout:fixed}.comparison-checks th,.comparison-checks td{border:0}.comparison-checks thead th{position:relative;height:142px;padding:22px 9px 17px;border-right:1px solid #2a3943;background:linear-gradient(180deg,#22313b,#17222a);text-align:center}.comparison-checks thead th:first-child{width:286px;padding:26px 24px;background:linear-gradient(145deg,#1c2a33,#101920);text-align:left}.comparison-checks thead th:first-child span,.comparison-checks thead th:first-child strong{display:block}.comparison-checks thead th:first-child span{margin-bottom:9px;color:var(--accent);font-size:.62rem;letter-spacing:.12em}.comparison-checks thead th:first-child strong{max-width:190px;color:#e5ebee;font-size:1.12rem;line-height:1.35}.comparison-checks thead th>i{display:grid;place-items:center;width:40px;height:40px;margin:0 auto 10px;border:1px solid #485d69;border-radius:12px;background:#111c23;color:#b9c5cc;font-size:.72rem;font-style:normal;font-weight:950}.comparison-checks thead th>strong,.comparison-checks thead th>small{display:block}.comparison-checks thead th>strong{color:#edf2f4;font-size:.82rem}.comparison-checks thead th>small{margin-top:5px;color:#788994;font-size:.58rem;font-weight:700}.comparison-checks thead th.solution-roger{border-right-color:#816326;border-left:1px solid #816326;background:radial-gradient(circle at 50% 15%,#ffb21c2a,transparent 6rem),linear-gradient(180deg,#453616,#201d17)}.comparison-checks thead th.solution-roger:after{content:"";position:absolute;right:0;bottom:-8px;left:0;height:8px;background:linear-gradient(135deg,#201d17 50%,transparent 51%) 0 0/16px 8px repeat-x}.comparison-checks thead th.solution-roger>b{position:absolute;top:0;right:12px;left:12px;padding:5px;border-radius:0 0 8px 8px;background:var(--accent);color:#211708;font-size:.56rem;letter-spacing:.1em}.comparison-checks thead th.solution-roger>i{margin-top:14px;border-color:#aa7f2a;background:#ffb21c18;color:var(--accent);box-shadow:0 0 25px #ffb21c33}.comparison-checks tbody th{position:sticky;z-index:2;left:0;width:286px;padding:14px 20px;border-right:1px solid #34444e;border-bottom:1px solid #24323b;background:#111b22;color:#cbd5da;font-size:.72rem;line-height:1.35;text-align:left}.comparison-checks tbody td{height:54px;border-right:1px solid #25333c;border-bottom:1px solid #25333c;background:#0e171d;text-align:center}.comparison-checks tbody tr:nth-child(even) td{background:#111b22}.comparison-checks tbody tr:nth-child(even) th{background:#142028}.comparison-checks tbody td.roger-col{border-right-color:#665027;border-left:1px solid #665027;background:#ffb21c09}.comparison-checks tbody tr:nth-child(even) td.roger-col{background:#ffb21c0e}.comparison-checks tbody td>b{display:grid;place-items:center;width:30px;height:30px;margin:auto;border-radius:9px;font-size:1.1rem;font-weight:950}.check-yes{background:#59d58e18;color:#67df9a;box-shadow:inset 0 0 0 1px #59d58e32}.check-partial{background:#ffb21c13;color:#ffc24a;box-shadow:inset 0 0 0 1px #ffb21c28}.check-no{background:#71818b0c;color:#667681;box-shadow:inset 0 0 0 1px #71818b18}.comparison-checks tbody td>small{display:block;margin-top:3px;color:#d3a94d;font-size:.54rem;font-weight:850;text-transform:uppercase}.comparison-checks tbody tr.feature-highlight th{border-top:1px solid #816326;border-bottom:1px solid #816326;background:#2a2418;color:#f2d58e}.comparison-checks tbody tr.feature-highlight td{border-top:1px solid #665027;border-bottom:1px solid #665027;background:#ffb21c08}.comparison-checks-takeaway{position:sticky;left:0;display:flex;align-items:center;gap:14px;min-width:1120px;margin:0;padding:18px 22px;background:linear-gradient(90deg,#2a2315,#151d22);color:#a9b5bc;font-size:.75rem}.comparison-checks-takeaway>span{display:grid;place-items:center;flex:0 0 auto;width:34px;height:34px;border:1px solid #8b6929;border-radius:10px;background:#ffb21c16;color:var(--accent);font-weight:950}.comparison-checks-takeaway strong{color:#f0d28c}
@media(max-width:700px){.comparison-checks-wrap{margin-right:-16px;margin-left:-16px;border-right:0;border-left:0;border-radius:0}.comparison-checks-legend{justify-content:flex-start;min-width:1050px}.comparison-checks{min-width:1050px}.comparison-checks thead th:first-child,.comparison-checks tbody th{width:230px}.comparison-checks-takeaway{min-width:1050px}}

/* Fonctionnement technique détaillé. */
.technical-guide{margin:38px 0 44px;padding:32px;border:1px solid #37505e;border-radius:20px;background:radial-gradient(circle at 85% 0,#3aa9ff12,transparent 28rem),linear-gradient(150deg,#131f27,#0a1319);box-shadow:0 24px 65px #0004}.technical-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:25px}.technical-heading h2{margin:5px 0 8px;font-size:clamp(1.8rem,3.5vw,3rem);letter-spacing:-.04em}.technical-heading p:not(.eyebrow){max-width:850px;margin:0;color:#9aa9b2;line-height:1.65}.technical-heading>span{flex:0 0 auto;padding:9px 12px;border:1px solid #386179;border-radius:999px;background:#3aa9ff10;color:#85c9f8;font-size:.65rem;font-weight:850}.technical-pipeline{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:stretch;gap:12px;margin-bottom:18px}.technical-pipeline article{position:relative;padding:19px 18px 17px 58px;border:1px solid #334650;border-radius:14px;background:#0e1920}.technical-pipeline article>span{position:absolute;top:18px;left:17px;display:grid;place-items:center;width:29px;height:29px;border:1px solid #567283;border-radius:9px;background:#172731;color:#8ecdf6;font-size:.7rem;font-weight:950}.technical-pipeline small,.technical-functions small{display:block;margin-bottom:5px;color:#6e8491;font-size:.57rem;font-weight:900;letter-spacing:.1em}.technical-pipeline strong{display:block;color:#edf2f4;font-size:.95rem}.technical-pipeline p{margin:5px 0 0;color:#84949e;font-size:.67rem}.technical-pipeline>i{align-self:center;color:#5eaee1;font-size:.66rem;font-style:normal;font-weight:850;white-space:nowrap}.technical-functions{display:grid;grid-template-columns:1fr 1fr;gap:11px}.technical-functions>article{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;min-height:188px;padding:19px;border:1px solid #2d404b;border-radius:14px;background:linear-gradient(145deg,#16232b,#0d171d)}.technical-icon{display:grid;place-items:center;width:38px;height:38px;border:1px solid #446273;border-radius:11px;background:#3aa9ff0c;color:#75bce9;font-size:1rem;font-weight:900}.technical-functions h3{margin:0 0 7px;color:#edf2f4;font-size:.95rem}.technical-functions p{margin:0 0 13px;color:#93a2ac;font-size:.75rem;line-height:1.55}.technical-functions code{display:inline-block;padding:5px 7px;border:1px solid #2e4756;border-radius:6px;background:#091218;color:#72b7df;font-size:.61rem}.technical-guardrails{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:18px;padding:15px;border:1px solid #3d543f;border-radius:13px;background:#63d89308}.technical-guardrails strong{margin-right:6px;color:#8fe2ae;font-size:.72rem}.technical-guardrails span{padding:6px 8px;border:1px solid #315140;border-radius:999px;color:#a8beb1;font-size:.61rem;font-weight:750}
.roger-map{margin:42px 0;padding:32px;border:1px solid #4b4936;border-radius:22px;background:radial-gradient(circle at 50% 20%,#ffb21c12,transparent 32rem),linear-gradient(145deg,#131e25,#091218);box-shadow:0 28px 75px #0005}.roger-map-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:26px}.roger-map-heading h2{margin:5px 0 8px;font-size:clamp(1.8rem,3.5vw,3rem);letter-spacing:-.04em}.roger-map-heading p:not(.eyebrow){max-width:810px;margin:0;color:#9aa9b2;line-height:1.65}.roger-map-legend{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}.roger-map-legend span{padding:7px 9px;border:1px solid #384a55;border-radius:999px;color:#b9c4ca;font-size:.6rem;font-weight:850;white-space:nowrap}.roger-map-legend span:before{content:"";display:inline-block;width:7px;height:7px;margin-right:6px;border-radius:50%;background:#61bbed}.roger-map-legend .map-control:before{background:#ffb21c}.roger-map-legend .map-local:before{background:#63d893}.roger-map-canvas{display:grid;grid-template-columns:minmax(0,1fr) minmax(190px,.42fr) minmax(0,1fr);align-items:stretch;gap:15px}.roger-map-zone{padding:21px;border:1px solid #334651;border-radius:17px;background:#0d171d}.roger-map-zone header{display:flex;align-items:center;gap:11px;margin-bottom:16px}.roger-map-zone header>span{display:grid;place-items:center;width:34px;height:34px;border:1px solid #7f6228;border-radius:10px;background:#ffb21c14;color:var(--accent);font-size:.7rem;font-weight:950}.roger-map-zone header small{display:block;color:#70828d;font-size:.56rem;font-weight:900;letter-spacing:.1em}.roger-map-zone h3{margin:3px 0 0;color:#eef3f5;font-size:1.08rem}.map-assets{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-bottom:11px}.map-assets span{padding:8px;border:1px solid #293b46;border-radius:8px;background:#111d24;color:#9cabb4;font-size:.65rem}.map-assets span:last-child{grid-column:1/-1}.map-main-node{padding:15px;border:1px solid #6e5728;border-radius:12px;background:#ffb21c0b}.map-main-node strong{color:#f1f4f6;font-size:.85rem}.map-main-node p,.map-supervisor p,.map-operator p{margin:5px 0 0;color:#93a2ab;font-size:.66rem;line-height:1.5}.map-main-node>div{display:flex;flex-wrap:wrap;gap:5px;margin-top:11px}.map-main-node b{padding:5px 6px;border-radius:6px;background:#ffb21c12;color:#e8bd62;font-size:.56rem}.map-supervisor,.map-operator{margin-top:10px;padding:12px;border:1px solid #315240;border-radius:11px;background:#63d89308}.map-supervisor strong{color:#86dda5;font-size:.7rem}.roger-map-link{display:flex;align-items:stretch;justify-content:center;flex-direction:column;gap:10px;text-align:center}.map-link-lock{align-self:center;padding:6px 9px;border:1px solid #355266;border-radius:999px;color:#83c7f2;font-size:.58rem;font-weight:900}.roger-map-link div{position:relative;padding:12px 10px;border-top:1px solid #4b7086;border-bottom:1px solid #4b7086;background:#3aa9ff08}.roger-map-link b{display:block;color:#87c8ef;font-size:.66rem}.roger-map-link small{display:block;margin-top:5px;color:#7f919c;font-size:.56rem;line-height:1.45}.roger-map-link .map-link-down{border-color:#806426;background:#ffb21c08}.roger-map-link .map-link-down b{color:#e5b959}.map-no-entry{color:#ef8d8d;font-size:.58rem;text-transform:uppercase;letter-spacing:.08em}.map-qg-services{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:10px}.map-qg-services>span{padding:10px;border:1px solid #2d404b;border-radius:9px;background:#111d24}.map-qg-services b,.map-qg-services small{display:block}.map-qg-services b{color:#dfe6ea;font-size:.66rem}.map-qg-services small{margin-top:3px;color:#73858f;font-size:.56rem}.map-operator{border-color:#6e5728;background:#ffb21c08}.map-operator strong{color:#e8bd62;font-size:.7rem}.roger-map-sequence{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;counter-reset:none;margin:18px 0 0;padding:0;list-style:none}.roger-map-sequence li{position:relative;min-height:94px;padding:13px;border:1px solid #2d404b;border-radius:11px;background:#0c161c}.roger-map-sequence li+li:before{content:"›";position:absolute;left:-8px;top:34px;color:var(--accent);font-weight:900}.roger-map-sequence b,.roger-map-sequence span{display:block}.roger-map-sequence b{margin-bottom:6px;color:#e8edf0;font-size:.68rem}.roger-map-sequence span{color:#83939d;font-size:.6rem;line-height:1.45}.roger-map-camera{display:flex;align-items:center;gap:15px;margin-top:12px;padding:13px 15px;border:1px solid #38536a;border-radius:11px;background:#3aa9ff08}.roger-map-camera strong{flex:0 0 auto;color:#84c8f3;font-size:.68rem}.roger-map-camera span{color:#93a4ae;font-size:.63rem;line-height:1.5}
@media(max-width:1050px){.roger-map-canvas{grid-template-columns:1fr}.roger-map-link{min-height:180px}.roger-map-sequence{grid-template-columns:repeat(3,1fr)}}
@media(max-width:650px){.roger-map{padding:22px 16px}.roger-map-heading{align-items:flex-start;flex-direction:column}.roger-map-legend{justify-content:flex-start}.roger-map-sequence{grid-template-columns:1fr 1fr}.roger-map-camera{align-items:flex-start;flex-direction:column}.map-assets{grid-template-columns:1fr}.map-assets span:last-child{grid-column:auto}}
@media(max-width:980px){.technical-pipeline{grid-template-columns:1fr}.technical-pipeline>i{justify-self:center;transform:rotate(90deg)}.technical-functions{grid-template-columns:1fr}}
@media(max-width:650px){.technical-guide{padding:22px 16px}.technical-heading{align-items:flex-start;flex-direction:column}.technical-functions>article{grid-template-columns:1fr;min-height:0}.technical-guardrails{align-items:flex-start;flex-direction:column}.technical-guardrails span{width:100%}}

/* Stack d’observabilité intégrée. */
.observability-stack{margin-top:18px;padding:24px;border:1px solid #493c68;border-radius:16px;background:radial-gradient(circle at 90% 0,#f4680020,transparent 18rem),linear-gradient(145deg,#171a2a,#0c141b)}.observability-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:19px}.observability-heading h3{margin:4px 0 7px;color:#f0f3f5;font-size:clamp(1.25rem,2.4vw,1.85rem)}.observability-heading p:not(.eyebrow){max-width:830px;margin:0;color:#969fad;font-size:.77rem;line-height:1.6}.observability-heading>span{flex:0 0 auto;padding:8px 10px;border:1px solid #684871;border-radius:999px;background:#b342c313;color:#dc9de5;font-size:.62rem;font-weight:850}.observability-flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:9px;align-items:stretch}.observability-flow article{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:11px;align-items:center;min-height:82px;padding:13px;border:1px solid #354450;border-radius:12px;background:#0d171e}.observability-flow article>i{grid-row:1/3;display:grid;place-items:center;width:38px;height:38px;border:1px solid #576875;border-radius:11px;background:#17242c;color:#c8d2d8;font-size:.68rem;font-style:normal;font-weight:950}.observability-flow article>strong{align-self:end;color:#e7edef;font-size:.78rem}.observability-flow article>small{align-self:start;margin-top:3px;color:#778791;font-size:.58rem}.observability-flow>b{align-self:center;color:#746e8d;font-size:.85rem}.observability-flow .stack-grafana>i{border-color:#aa5c25;background:#f4680019;color:#ff9d59}.observability-flow .stack-prom>i{border-color:#8f512f;background:#e6522c18;color:#f48668}.observability-flow .stack-loki>i{border-color:#52764b;background:#62c45113;color:#8bd681}.observability-flow .stack-alloy>i{border-color:#755888;background:#a65dcc13;color:#ce94e8}.observability-flow article:nth-of-type(4){grid-column:1}.observability-capabilities{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}.observability-capabilities span{padding:7px 9px;border:1px solid #384650;border-radius:8px;background:#101a21;color:#a8b3ba;font-size:.61rem;font-weight:750}.observability-security{display:flex;align-items:center;gap:14px;margin-top:14px;padding:13px 15px;border:1px solid #315340;border-radius:11px;background:#63d89308}.observability-security strong{flex:0 0 auto;color:#82dda4;font-size:.7rem}.observability-security p{margin:0;color:#91a49a;font-size:.67rem;line-height:1.5}.observability-security code{color:#88dba6;font-size:.62rem}
@media(max-width:980px){.observability-flow{grid-template-columns:1fr}.observability-flow>b{justify-self:center;transform:rotate(90deg)}.observability-flow article:nth-of-type(4){grid-column:auto}}
@media(max-width:650px){.observability-stack{padding:18px 14px}.observability-heading{align-items:flex-start;flex-direction:column}.observability-security{align-items:flex-start;flex-direction:column}}

/* Accès permanent à la présentation depuis la barre supérieure. */
.toolbar-actions .topbar-guide-button{border-color:#765c28;background:#ffb21c12;color:#ffd06a!important;box-shadow:inset 0 0 18px #ffb21c09}.toolbar-actions .topbar-guide-button:hover{border-color:var(--accent);background:#ffb21c20;color:#fff!important}.hero-actions{grid-template-columns:auto auto}.hero-actions>.hero-action-primary{grid-column:auto}
@media(max-width:600px){.toolbar-actions{gap:4px}.toolbar-button{padding:8px 9px;font-size:.72rem}.global-hero{padding-bottom:92px}.global-hero>.hero-actions{display:flex}.hero-actions>.hero-action-primary{grid-column:auto}}

/* Une seule zone défilable dans la présentation plein écran. */
html.guide-page-open,body.guide-page-open{height:100%;overflow:hidden}.guide-panel{height:100dvh;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}

/* Page de déploiement : un seul défilement, lecture en deux zones et actions toujours accessibles. */
html.fleet-page-open,body.fleet-page-open{height:100%;overflow:hidden}.fleet-dialog{position:fixed;inset:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;border:0;border-radius:0;background:radial-gradient(circle at 78% 0,#ffb21c12,transparent 30rem),linear-gradient(145deg,#0c141a,#101920 58%,#0b1217);box-shadow:none}.fleet-dialog::backdrop{background:#071016}.fleet-dialog[open]{display:block}.fleet-dialog form{display:block;min-height:100%;padding-bottom:92px}.fleet-heading{position:sticky;top:0;z-index:5;align-items:center;padding:22px max(32px,calc((100vw - 1320px)/2));border-bottom:1px solid #2b3943;background:#101920ed;backdrop-filter:blur(18px)}.fleet-heading h2{margin:0 0 4px;font-size:clamp(1.8rem,2.6vw,2.6rem)}.fleet-heading .eyebrow{margin:0 0 5px}.fleet-heading p:not(.eyebrow){font-size:.86rem}.fleet-close{width:44px;height:44px;border-radius:12px}.fleet-body{width:100%;max-width:1320px;margin:auto;padding:24px 32px 30px;overflow:visible}.fleet-overview{grid-template-columns:1.25fr repeat(3,1fr);gap:12px}.fleet-overview>div{padding:17px 19px;border-radius:14px}.fleet-overview strong{font-size:1.35rem}.fleet-status{margin:10px 3px 17px}.fleet-workspace{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(340px,.88fr);gap:16px;align-items:start}.fleet-controls,.fleet-impact{padding:20px;border:1px solid #2d3d48;border-radius:17px;background:linear-gradient(145deg,#151f27,#10181e);box-shadow:0 16px 38px #0002}.fleet-strategy legend{margin-bottom:14px;font-size:.98rem}.fleet-mode-grid{gap:9px}.fleet-mode{min-height:116px;padding:15px}.fleet-settings{margin-top:12px;padding:15px;border-color:#34444f;background:#0d151b}.fleet-settings select{height:45px}.fleet-impact{position:sticky;top:116px;margin:0}.fleet-impact-heading h3{font-size:1.25rem}.fleet-impact>#fleet-preview{margin-top:18px}.fleet-actions{position:fixed;z-index:7;right:0;bottom:0;left:0;align-items:center;padding:15px max(32px,calc((100vw - 1320px)/2));border-top:1px solid #33434e;background:#0e171ee8;box-shadow:0 -15px 40px #0006;backdrop-filter:blur(18px)}.fleet-actions button{min-height:45px}.fleet-actions #fleet-apply{min-width:230px}.fleet-plan{max-height:38vh;overflow:auto}
@media(max-width:1050px){.fleet-workspace{grid-template-columns:1fr}.fleet-impact{position:static}.fleet-mode-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.fleet-dialog{height:100dvh}.fleet-dialog form{padding-bottom:150px}.fleet-heading{padding:16px 18px}.fleet-heading p:not(.eyebrow){display:none}.fleet-body{padding:18px}.fleet-overview{grid-template-columns:1fr 1fr}.fleet-workspace{grid-template-columns:1fr}.fleet-controls,.fleet-impact{padding:15px}.fleet-mode-grid{grid-template-columns:1fr}.fleet-mode{min-height:0}.fleet-actions{display:grid;grid-template-columns:1fr 1fr;padding:12px 18px}.fleet-actions #fleet-apply{grid-column:1/-1;grid-row:1;min-width:0}.fleet-actions button{width:100%}}

/* Authentification */
.auth-shell{display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,500px);align-items:center;gap:clamp(42px,8vw,130px);min-height:calc(100vh - 190px);max-width:1120px;margin:auto}.auth-intro{max-width:520px}.auth-emblem{display:grid;place-items:center;width:58px;height:58px;margin-bottom:28px;border:1px solid #8a671f;border-radius:17px;background:linear-gradient(145deg,#322814,#151a1d);color:var(--accent);font-size:1.05rem;font-weight:900;letter-spacing:.12em;box-shadow:0 14px 40px #0005,0 0 36px #ffb21c13}.auth-intro h1{margin:0;font-size:clamp(2.8rem,5vw,5rem);line-height:.96;letter-spacing:-.06em}.auth-intro h1 strong{color:var(--accent)}.auth-intro>p:not(.eyebrow){max-width:480px;margin:24px 0;color:#9ba9b4;font-size:1.04rem;line-height:1.65}.auth-security{display:flex;align-items:center;gap:13px;margin-top:34px;padding-top:24px;border-top:1px solid #283640}.auth-security>span:first-child{display:grid;place-items:center;width:34px;height:34px;border:1px solid #326146;border-radius:50%;background:#63d89313;color:var(--good);font-weight:900}.auth-security strong,.auth-security small{display:block}.auth-security strong{font-size:.8rem}.auth-security small{margin-top:4px;color:#72818d;font-size:.7rem}.auth-card{padding:38px;border:1px solid #34434e;border-radius:22px;background:linear-gradient(145deg,#18232c,#10171d);box-shadow:0 28px 80px #0007}.auth-heading{margin-bottom:28px}.auth-heading h2{margin:3px 0 8px;font-size:1.75rem;letter-spacing:-.035em}.auth-heading>p:last-child{margin:0;color:#84939f;line-height:1.5}.auth-card label{margin-bottom:7px;color:#c7d0d7;font-size:.8rem;font-weight:750}.auth-card input{height:50px;margin:0 0 19px;padding:12px 14px;border-color:#3a4853;background:#0c1319;color:#f4f6f8}.auth-card input:focus{border-color:#a67a25;outline:2px solid #ffb21c24}.auth-label-row{display:flex;align-items:center;justify-content:space-between}.auth-label-row label{margin:0}.text-button,.auth-back{padding:0;background:transparent;color:var(--accent);font-size:.76rem}.text-button:hover,.auth-back:hover{transform:none;filter:none;color:#ffd172}.password-field{position:relative}.password-field input{padding-right:82px}.password-toggle{position:absolute;right:7px;top:7px;height:36px;padding:0 9px;background:#1b2730;color:#abb7c0;font-size:.7rem}.auth-submit{width:100%;min-height:50px;margin-top:4px;font-size:.88rem}.auth-feedback{min-height:22px;margin:0 0 8px;color:#ff8d96;font-size:.78rem;line-height:1.45}.password-manager-note{margin:18px 0 0;color:#6f7e89;font-size:.69rem;line-height:1.5;text-align:center}.auth-back{margin-bottom:28px}.auth-card form[hidden]{display:none}.auth-card button:disabled{opacity:.55;cursor:wait}.auth-card input:-webkit-autofill{-webkit-text-fill-color:#f4f6f8;-webkit-box-shadow:0 0 0 1000px #0c1319 inset}
@media(max-width:820px){.auth-shell{grid-template-columns:1fr;gap:34px;min-height:0;padding:28px 0}.auth-intro{text-align:center;margin:auto}.auth-emblem{margin:0 auto 22px}.auth-intro h1{font-size:3rem}.auth-intro>p:not(.eyebrow){margin:18px auto}.auth-security{justify-content:center;text-align:left;margin-top:24px}.auth-card{padding:28px 22px}}
.users-page{max-width:1320px}.users-hero{display:flex;align-items:end;justify-content:space-between;margin:18px 0 28px;padding:30px 34px;border:1px solid #30404b;border-radius:20px;background:linear-gradient(135deg,#18232c,#111920)}.users-hero h1{margin:2px 0 8px;font-size:2.5rem}.users-hero p:last-child{margin:0;color:#8998a4}.users-layout{display:grid;grid-template-columns:minmax(300px,380px) minmax(0,1fr);gap:20px;align-items:start}.users-layout>.card{margin:0}.users-create h2,.users-directory h2{margin-top:0}.users-create>p{color:#84939f}.users-directory .secondary{margin:0}.users-directory table{min-width:780px}
.users-sessions{grid-column:1/-1}.users-sessions table{min-width:640px}.users-sessions th,.users-sessions td{white-space:nowrap}.users-directory .button-group{flex-wrap:nowrap}@media(max-width:850px){.users-layout{grid-template-columns:1fr}.users-hero{align-items:flex-start;flex-direction:column;gap:18px}.users-directory .section-title{align-items:center;flex-direction:row}}

/* Détail de la prévisualisation des mises à jour Roger */
.fleet-plan{margin-top:16px;padding-top:16px;border-top:1px solid #2d3b45}.fleet-plan-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px}.fleet-plan-summary>div{padding:12px;border:1px solid #2b3943;border-radius:10px;background:#0d151b}.fleet-plan-summary strong,.fleet-plan-summary span{display:block}.fleet-plan-summary strong{font-size:1.25rem}.fleet-plan-summary span{margin-top:5px;color:#82919c;font-size:.67rem;font-weight:750;text-transform:uppercase}.fleet-plan-centers{display:grid;gap:8px}.fleet-plan-center{overflow:hidden;border:1px solid #2d3b46;border-radius:11px;background:#0d151b}.fleet-plan-center>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 15px;cursor:pointer;list-style:none}.fleet-plan-center>summary::-webkit-details-marker{display:none}.fleet-plan-center>summary:after{content:"+";color:#87949e}.fleet-plan-center[open]>summary:after{content:"−";color:var(--accent)}.fleet-plan-center>summary>span:first-child{min-width:0}.fleet-plan-center>summary strong,.fleet-plan-center>summary small{display:block}.fleet-plan-center>summary small{margin-top:4px;color:#73828e;font-family:ui-monospace,monospace;font-size:.64rem}.fleet-plan-center-count{margin-left:auto;color:#96a3ad;font-size:.7rem;font-weight:750}.fleet-plan-list{border-top:1px solid #283640}.fleet-plan-row{display:grid;grid-template-columns:minmax(150px,1.1fr) minmax(130px,.7fr) minmax(220px,1.4fr);gap:13px;padding:12px 15px;border-bottom:1px solid #222f38;border-left:3px solid #64717b}.fleet-plan-row:last-child{border-bottom:0}.fleet-plan-row.update{border-left-color:var(--good);background:#63d89308}.fleet-plan-row.deferred{border-left-color:var(--accent);background:#ffb21c07}.fleet-plan-row.unchanged{border-left-color:#52606b}.fleet-plan-row>span{min-width:0}.fleet-plan-row strong,.fleet-plan-row small{display:block}.fleet-plan-row strong{overflow:hidden;color:#dfe6eb;font-size:.75rem;text-overflow:ellipsis;white-space:nowrap}.fleet-plan-row small{margin-top:4px;color:#7d8b96;font-size:.65rem;line-height:1.35}
@media(max-width:650px){.fleet-plan-summary{grid-template-columns:1fr 1fr 1fr}.fleet-plan-summary>div{padding:9px}.fleet-plan-center>summary{align-items:flex-start;flex-wrap:wrap}.fleet-plan-center-count{width:100%;margin:0}.fleet-plan-row{grid-template-columns:1fr;gap:8px}.fleet-plan-row>span+span{padding-top:7px;border-top:1px solid #27343d}}

.badge.unhealthy{color:#ff8d8d;background:#3b2024}

/* État de mise à jour dans la liste des Roger actifs */
.home-update-state{min-width:180px}.home-update-state strong,.home-update-state small{display:block}.home-update-state strong{font-size:.76rem}.home-update-state small{margin-top:4px;color:#81909b;font-size:.66rem;line-height:1.3}.home-update-state.update strong{color:var(--good)}.home-update-state.deferred strong{color:var(--accent)}.home-update-state.unchanged strong{color:#aab6bf}.rogers-overview table{min-width:900px}
.paused-roger-section{margin-top:30px;padding-top:24px;border-top:1px solid #35424d}.paused-roger-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px}.paused-roger-heading h3{margin:4px 0 7px;font-size:1.15rem}.paused-roger-heading p:not(.eyebrow){margin:0;color:#8f9dac;font-size:.82rem}.paused-roger-section .section-count{border-color:#505b66;background:#74808b16;color:#aeb8c1}.paused-roger-section .agent-actions-list{right:0;left:auto}

/* Catégories et filtres des alertes en cours */
.incident-filters{display:flex;gap:8px;margin-top:21px;padding-bottom:4px;overflow-x:auto}.incident-filter{display:inline-flex;flex:0 0 auto;align-items:center;gap:8px;min-height:40px;padding:7px 10px 7px 8px;border:1px solid #34434e;background:#111a21;color:#aab6bf}.incident-filter:hover{border-color:#596873;color:#fff}.incident-filter.active{border-color:#9a7020;background:#ffb21c16;color:#ffd06a;box-shadow:inset 0 0 0 1px #ffb21c20}.incident-filter-icon{display:grid;place-items:center;width:25px;height:25px;border-radius:7px;background:#25333d;color:#b8c4cc;font-size:.68rem;font-weight:900}.incident-filter.active .incident-filter-icon{background:#ffb21c25;color:var(--accent)}.incident-filter strong{font-size:.76rem}.incident-filter small{display:grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:99px;background:#293741;color:#cad2d8;font-size:.65rem}.incident-groups{display:grid;gap:17px;margin-top:18px}.incident-category-group{padding:13px;border:1px solid #293842;border-radius:14px;background:#0c141a}.incident-category-heading{display:flex;align-items:center;justify-content:space-between;margin:0 2px 10px}.incident-category-heading h3{margin:0;color:#dfe6eb;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}.incident-category-heading span{color:#788792;font-size:.68rem;font-weight:750}.incident-category-group .incident-grid{margin:0;max-height:none;padding:0;overflow:visible}@media(max-width:600px){.incident-filter{padding-right:8px}.incident-category-group{padding:10px}}

/* Cartographie téléchargeable et chaîne d'observabilité QG */
.roger-map-tools{display:flex;align-items:flex-end;flex-direction:column;gap:10px}.roger-map-download{padding:10px 13px;border:1px solid #856526;border-radius:10px;background:#ffb21c14;color:#ffd06a;font-size:.68rem;font-weight:900;text-decoration:none;white-space:nowrap}.roger-map-download:hover{border-color:var(--accent);background:#ffb21c24;color:#fff}.roger-backend-flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:8px;margin-top:17px;padding:16px;border:1px solid #334651;border-radius:14px;background:#091218}.roger-backend-flow>article{padding:12px;border:1px solid #2d404b;border-radius:10px;background:#111d24}.roger-backend-flow small,.roger-backend-flow strong,.roger-backend-flow span{display:block}.roger-backend-flow small{color:#71838e;font-size:.52rem;font-weight:900;letter-spacing:.09em}.roger-backend-flow strong{margin:4px 0;color:#e9eef1;font-size:.76rem}.roger-backend-flow span{color:#84949e;font-size:.58rem}.roger-backend-flow>i{color:var(--accent);font-style:normal;font-weight:900}.backend-branch{grid-column:span 5;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 11px;border-left:3px solid #5aaee0;background:#3aa9ff08}.backend-branch:nth-of-type(2){border-color:#bb72dc;background:#bb72dc09}.backend-branch:nth-of-type(3){border-color:#63d893;background:#63d89309}.backend-branch b{color:#cbd7dd;font-size:.64rem}.backend-branch span{color:#7f919c;font-size:.58rem;text-align:right}@media(max-width:650px){.roger-map-tools{align-items:flex-start}.roger-map-download{white-space:normal}.roger-backend-flow{grid-template-columns:1fr}.roger-backend-flow>i{transform:rotate(90deg);justify-self:center}.backend-branch{grid-column:1;align-items:flex-start;flex-direction:column}.backend-branch span{text-align:left}}

/* Configurations isolées de la vigilance opérationnelle */
.global-kpis{grid-template-columns:repeat(6,1fr)}.configuration-overview:before{background:var(--accent)}.configuration-overview .section-count{border-color:#765a24;background:#ffb21c12;color:#ffd06a}.global-kpi.is-clear .global-kpi-icon.warning{border-color:#326146;background:#63d89313;color:var(--good)}
@media(max-width:1050px){.global-kpis{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.global-kpis{grid-template-columns:1fr}}

/* Menu compact des actions d'incident et suivi des versions Docker observées */
.incident-card-footer{position:relative}.incident-actions-dropdown{position:relative}.incident-actions-dropdown>summary{display:grid;place-items:center;width:34px;height:32px;border:1px solid #3c4a55;border-radius:9px;background:#172129;color:#c3cdd4;font-size:1.15rem;line-height:1;cursor:pointer;list-style:none}.incident-actions-dropdown>summary::-webkit-details-marker{display:none}.incident-actions-dropdown[open]>summary{border-color:#9a7020;background:#ffb21c18;color:#ffd06a}.incident-actions-dropdown-menu{position:absolute;z-index:40;right:0;bottom:38px;display:grid;gap:6px;width:min(250px,calc(100vw - 48px));padding:8px;border:1px solid #3a4a56;border-radius:11px;background:#101920;box-shadow:0 16px 38px #000b}.incident-actions-dropdown-menu button{width:100%;min-height:38px;padding:8px 10px;text-align:left;border:1px solid #344550;background:#263746;color:#e4ebef;font-size:.74rem}.incident-actions-dropdown-menu button:hover:not(:disabled){border-color:#657987;background:#314656}.incident-actions-dropdown-menu .incident-resolve-button,.incident-actions-dropdown-menu .incident-mute-button{display:block;width:100%;height:auto;margin:0;color:#e4ebef;font-size:.74rem}.incident-actions-dropdown-menu .incident-resolve-button{border-color:#315f4b;background:#14271f;color:#9be2bd}.incident-actions-dropdown-menu small{padding:7px;color:#91a0aa;line-height:1.35}.docker-updates-overview{padding:26px}.docker-update-actions{display:flex;align-items:center;gap:10px}.docker-update-actions button{white-space:nowrap}.docker-updates-overview .table-wrap{margin-top:22px;border:1px solid #283640;border-radius:12px;background:#0d151b}.docker-updates-overview table{min-width:820px}.docker-updates-overview th{color:#7f8e99;font-size:.68rem;letter-spacing:.08em;text-transform:uppercase}.docker-update-version{display:grid;gap:3px}.docker-update-version strong{color:#ffd06a}.docker-update-version small{color:#7f8e99}.docker-updates-overview .empty-state{margin:22px 0 0}
@media(max-width:600px){.docker-update-actions{width:100%;align-items:stretch;flex-direction:column}.docker-update-actions .section-count{text-align:center}.docker-update-actions button{width:100%}}

/* Supervision : paramètres, observations, tendances et reprise ciblée. */
#supervision-root{display:grid;gap:18px}.supervision-card{min-width:0}.supervision-card .section-title{gap:16px}.supervision-card h3{margin:0 0 8px;font-size:1rem}.supervision-card h4{margin:20px 0 8px}.supervision-card .integration-note{line-height:1.55}.supervision-health-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0}.supervision-health{padding:16px;border:1px solid #334651;border-radius:12px;background:#0c171e;min-width:0}.supervision-health small,.supervision-health strong{display:block}.supervision-health small{color:#96a7b3}.supervision-health strong{margin:9px 0;color:#e4edf3;font-size:1.05rem;overflow-wrap:anywhere}.supervision-health p{margin:0;color:#92a2ad;font-size:.76rem;line-height:1.5}.supervision-policy-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:20px 0}.supervision-field{display:flex;flex-direction:column;gap:7px;min-width:0;font-size:.78rem;color:#b9c9d3}.supervision-field input,.supervision-field select{width:100%;min-width:0;min-height:42px;padding:9px 10px;border:1px solid #435663;border-radius:8px;background:#101c24;color:#e3ecf1;font:inherit}.supervision-field input:focus,.supervision-field select:focus{outline:2px solid var(--accent);outline-offset:2px}.supervision-checkbox{flex-direction:row;align-items:center;justify-content:space-between}.supervision-checkbox input{width:22px;min-height:22px;accent-color:var(--accent)}.supervision-policy-form button{align-self:end;min-height:42px}.supervision-controls{display:flex;flex-wrap:wrap;gap:14px;margin:18px 0}.supervision-controls .supervision-field{min-width:200px;flex:1}.supervision-chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:18px}.supervision-chart{min-width:0;padding:16px;border:1px solid #304450;border-radius:12px;background:#0b151c}.supervision-chart svg{display:block;width:100%;height:auto}.supervision-chart svg text{fill:#91a6b4;font-size:11px}.supervision-gridline{stroke:#31434e;stroke-width:1}.supervision-average{stroke:#6bbff2;fill:none;stroke-width:2.5;stroke-linejoin:round}.supervision-max{stroke:#f8b54b;fill:none;stroke-width:1.8;stroke-linejoin:round;stroke-dasharray:5 3}circle.supervision-average{fill:#6bbff2}circle.supervision-max{fill:#f8b54b}.supervision-chart-caption{font-size:.76rem;color:#a6bac7;line-height:1.5}.supervision-detail{margin:12px 0;border:1px solid #314752;border-radius:10px;padding:12px;min-width:0}.supervision-detail summary{cursor:pointer;font-weight:700;line-height:1.5}.supervision-detail>.table-wrap{margin-top:14px}.supervision-chart .table-wrap{max-height:320px;overflow:auto}.supervision-priorities,.supervision-recovery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}.supervision-priority,.supervision-recovery-item{padding:16px;border:1px solid #3b4b56;border-radius:12px;min-width:0;overflow-wrap:anywhere}.supervision-priority{border-left:3px solid #f8b54b}.supervision-priority p,.supervision-recovery-item p{font-size:.8rem;line-height:1.55}.supervision-card .table-wrap{max-width:100%;overflow:auto}.supervision-card td{white-space:normal;overflow-wrap:anywhere}.supervision-dialog{width:min(580px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto;border:1px solid #52616c;border-radius:16px;background:#101d26;color:#e8eff3;padding:24px}.supervision-dialog::backdrop{background:#000b}.supervision-dialog p{line-height:1.6;overflow-wrap:anywhere}.supervision-dialog-actions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap;margin-top:24px}.supervision-dialog-actions button{min-height:44px}.supervision-card button:disabled{cursor:not-allowed;opacity:.55}
@media(max-width:1000px){.supervision-health-grid{grid-template-columns:1fr}.supervision-policy-form{grid-template-columns:repeat(2,minmax(0,1fr))}.supervision-chart-grid{grid-template-columns:1fr}}
@media(max-width:600px){.supervision-policy-form,.supervision-priorities,.supervision-recovery{grid-template-columns:1fr}.supervision-controls{flex-direction:column}.supervision-controls .supervision-field{min-width:0}.supervision-card{padding:18px}.supervision-dialog-actions{flex-direction:column}.supervision-dialog-actions button{width:100%}}

.speedtest-controls { display:flex; flex-wrap:wrap; align-items:center; gap:12px; }
.speedtest-controls label { display:flex; flex-wrap:wrap; align-items:center; gap:8px; }
.speedtest-panel { min-width:0; }
.speedtest-panel select { min-height:36px; max-width:100%; }

.incident-diagnosis > code, .incident-diagnosis > small { display: block; margin-top: 6px; }

/* Les actions Roger se déplient dans une vignette sous la machine. */
.agent-actions-panel-row[hidden], .agent-actions-list[hidden] { display:none !important; }
.agent-actions-panel-row > td { padding:8px 0 16px; }
.agent-actions-list { position:static; z-index:auto; width:100%; max-width:100%; max-height:none; left:auto; right:auto; top:auto; bottom:auto; transform:none; overflow:visible; grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr)); box-shadow:0 8px 22px #0003; }
.agent-actions-section { min-width:0; grid-template-columns:repeat(auto-fit,minmax(min(140px,100%),1fr)); }
.agent-actions-heading { min-width:0; }
.agent-actions-heading strong, .agent-actions-heading small { max-width:none; white-space:normal; overflow-wrap:anywhere; }
.agent-actions-list button { min-width:0; overflow-wrap:normal; word-break:normal; }
#center-agents tr.agent-actions-panel-row { display:block; min-height:0; padding:0; margin:0 0 16px; border:0; background:none; box-shadow:none; }
#center-agents tr.agent-actions-panel-row > td { display:block; position:static; width:100%; padding:0; transform:none; right:auto; top:auto; }
#center-agents tr.agent-actions-panel-row > td::before { display:none; }

.docker-version-filter { display:flex; flex-wrap:wrap; align-items:center; gap:12px; margin:18px 0 8px; color:#aab7c1; }
.docker-version-filter select { width:auto; max-width:100%; min-width:0; }
.docker-version-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr)); gap:16px; margin:20px 0 28px; }
.docker-version-card { min-width:0; padding:18px; border:1px solid #34444e; border-radius:16px; background:#0d161c; }
.docker-version-card h3 { margin:0 0 16px; overflow-wrap:anywhere; }
.docker-version-donut { display:grid; place-items:center; width:174px; height:174px; margin:8px auto 20px; border-radius:50%; }
.docker-version-donut > span { display:grid; place-content:center; width:116px; height:116px; border-radius:50%; background:#0d161c; text-align:center; }
.docker-version-donut strong { font-size:1.7rem; }.docker-version-donut small { color:#94a5b1; }
.docker-version-legend { display:grid; gap:9px; padding:0; list-style:none; font-size:.78rem; }
.docker-version-legend li { display:flex; align-items:baseline; gap:8px; min-width:0; }
.docker-version-legend li > span:not(.docker-version-dot) { flex:1; min-width:0; overflow-wrap:anywhere; }
.docker-version-legend strong { flex:none; white-space:nowrap; }
.docker-version-dot { flex:none; width:9px; height:9px; border-radius:50%; }
.docker-version-card summary { color:#aab7c1; cursor:pointer; font-size:.8rem; }

/* Informations regroupées séparément des alertes en direct. */
.global-kpis { grid-template-columns:repeat(7,minmax(0,1fr)); }
.global-kpi-icon.information { border-color:#436e94; background:#4aa7ec14; color:#89c7f7; }
.information-overview .section-count { border-color:#436e94; background:#4aa7ec12; color:#a5d9ff; }
@media(max-width:1200px){.global-kpis{grid-template-columns:repeat(4,minmax(0,1fr));}}
@media(max-width:1050px){.global-kpis{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:650px){.global-kpis{grid-template-columns:1fr;}}

/* Compact overview: full-width headings and values, icon reserved in the footer. */
.global-hero { min-height:174px; padding:26px 30px; border-radius:20px; }
.global-hero h1 { font-size:clamp(2.1rem,3.4vw,3.4rem); }
.global-hero .hero-lead { margin-top:14px!important; font-size:.95rem; line-height:1.5; }
.global-hero .updated { margin-top:12px; font-size:.67rem; }
.global-search-shell { margin:16px 0 18px; }
.global-search-box { min-height:54px; padding:7px 11px; gap:10px; border-radius:13px; box-shadow:0 8px 22px #0003; }
.global-search-icon { width:32px; height:32px; border-radius:9px; font-size:1.15rem; transform:none; }
.global-search-box input { height:38px; padding:8px 11px; font-size:.9rem; }
.global-kpis { margin:0 0 24px; gap:10px; align-items:stretch; }
.global-kpi { grid-template-columns:minmax(0,1fr); align-items:start; min-height:138px; padding:16px; gap:0; border-radius:14px; box-shadow:0 7px 18px #0002; }
.global-kpi > span:last-child { display:flex; flex-direction:column; width:100%; min-width:0; }
.global-kpi small { min-height:2.25em; margin:0 0 8px; color:#a1afba; font-size:.63rem; line-height:1.2; letter-spacing:.065em; white-space:normal; }
.global-kpi strong { max-width:100%; font-size:clamp(1.35rem,1.7vw,2rem); font-variant-numeric:tabular-nums; line-height:1.1; letter-spacing:-.045em; white-space:nowrap; }
.global-kpi > span:last-child > span { max-width:calc(100% - 34px); min-height:2.6em; margin-top:9px; font-size:.66rem; line-height:1.3; }
.global-kpi-icon { position:absolute; right:14px; bottom:14px; width:29px; height:29px; border-radius:9px; font-size:.8rem; }
.global-kpi.active { box-shadow:inset 0 0 0 1px #ffb21c22,0 7px 20px #0003; }
.global-kpi.active:after { left:16px; right:16px; height:2px; box-shadow:none; }
@media(max-width:650px){
 .global-hero { min-height:0; padding:22px 20px 82px; }
 .global-kpis { grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
 .global-kpi { min-height:132px; padding:13px; }
 .global-kpi strong { font-size:1.45rem; }
 .global-kpi small { font-size:.59rem; }
 .global-kpi-icon { right:11px; bottom:13px; width:27px; height:27px; }
 .global-search-box { grid-template-columns:auto minmax(0,1fr); }
}
@media(max-width:350px){.global-kpi{padding:11px}.global-kpi strong{font-size:1.28rem}.global-kpi small{font-size:.55rem;letter-spacing:.02em}}

/* Speedtest history: labelled summaries, expandable measurements and bounded pages. */
.speedtest-history { display:grid; gap:12px; margin-top:16px; }
.speedtest-result { min-width:0; border:1px solid var(--border,#30434f); border-radius:14px; background:rgba(8,16,21,.32); }
.speedtest-result > summary { padding:16px 20px; cursor:pointer; list-style:none; }
.speedtest-result > summary::-webkit-details-marker { display:none; }
.speedtest-result > summary:focus-visible { outline:2px solid #ffb31a; outline-offset:3px; border-radius:14px; }
.speedtest-result-heading { display:flex; flex-wrap:wrap; gap:10px 18px; align-items:center; }
.speedtest-result-heading time { color:#a9b7c0; font-size:.88rem; }
.speedtest-state { margin-left:auto; border-radius:99px; padding:4px 10px; font-size:.8rem; background:#263844; }
.speedtest-state.state-succeeded { color:#6bdfa7; }.speedtest-state.state-failed,.speedtest-error { color:#ff9299; }
.speedtest-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin:16px 0 8px; }
.speedtest-field { min-width:0; }.speedtest-field dt { color:#9dacb6; font-size:.76rem; margin-bottom:5px; }
.speedtest-field dd { margin:0; overflow-wrap:anywhere; }.speedtest-metrics dd { font-size:1.25rem; font-weight:700; font-variant-numeric:tabular-nums; }
.speedtest-detail-link { color:#ffc34e; font-size:.8rem; }.speedtest-detail-link::before { content:'＋ '; }.speedtest-result[open] .speedtest-detail-link::before { content:'− '; }
.speedtest-result-details { border-top:1px solid #30434f; padding:16px 20px; }
.speedtest-detail-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px 24px; margin:0 0 16px; }
.speedtest-pagination { display:flex; gap:12px; flex-wrap:wrap; align-items:center; justify-content:flex-end; margin-top:14px; }
@media(max-width:700px) { .speedtest-metrics,.speedtest-detail-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.speedtest-result > summary,.speedtest-result-details { padding:14px; }.speedtest-result-heading strong { width:100%; }.speedtest-metrics dd { font-size:1.05rem; } }
@media(max-width:370px) { .speedtest-detail-grid { grid-template-columns:1fr; } }
.docker-version-legend li > .docker-version-dropdown { width:100%; min-width:0; }
.docker-version-dropdown > summary { display:flex; gap:8px; align-items:center; color:inherit; padding:5px 0; }
.docker-version-dropdown > summary > span:not(.docker-version-dot) { min-width:0; flex:1; overflow-wrap:anywhere; }
.docker-version-dropdown > summary::after { content:'▾'; color:#aab7c1; }.docker-version-dropdown[open] > summary::after { content:'▴'; }
.docker-version-placements { display:grid; gap:10px; border-top:1px solid #34444e; margin-top:8px; padding:12px 0; }
.docker-version-placements label { display:grid; gap:5px; min-width:0; }.docker-version-placements select { width:100%; max-width:100%; min-width:0; }
.docker-version-machine { border:1px solid #34444e; border-radius:10px; padding:10px; margin:8px 0; min-width:0; overflow-wrap:anywhere; }
.docker-version-machine ul { padding-left:15px; }.docker-version-machine li { display:list-item; margin-top:8px; overflow-wrap:anywhere; }
.docker-version-machine .integration-note { font-size:.7rem; }.docker-center-link { color:#ffc34e; font-size:.8rem; }
.speedtest-result-heading > * { min-width:0; overflow-wrap:anywhere; }
.reporting-token-form fieldset { min-width:0; max-width:100%; border:1px solid #34444e; border-radius:10px; padding:12px; }
.reporting-token-form fieldset label { display:flex; gap:8px; align-items:flex-start; margin:8px 0; }
.reporting-token-form input[type="checkbox"] { width:auto; min-width:0; flex:none; }
/* A wide accounts table must scroll inside its card, without widening the grid. */
.users-layout > .card { min-width:0; }
.users-layout .table-wrap { min-width:0; max-width:100%; overflow-x:auto; }
.users-hero > div { min-width:0; overflow-wrap:anywhere; }
@media(max-width:950px) { .users-layout { grid-template-columns:minmax(0,1fr); } }
.docker-version-grid { align-items:start; }

/* Administration: panneau dans le flux, hors du bandeau qui masque les débordements. */
.global-actions-panel{position:relative;margin:14px 0;padding:18px;border:1px solid #344752;border-radius:16px;background:#101a21;box-shadow:0 12px 32px #0003}
.global-actions-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.global-actions-panel .global-action-item{width:100%;min-width:0;min-height:92px;text-decoration:none;color:var(--ink);text-align:left;background:#17242c;border:1px solid #334650;border-radius:12px;display:grid;grid-template-columns:38px minmax(0,1fr) 16px;gap:12px;align-items:center;padding:14px;white-space:normal}.global-actions-panel .global-action-item strong{display:block;font-size:.95rem}.global-actions-panel .global-action-item small{display:block;margin-top:5px;color:#a4b5c0;font-size:.8rem;line-height:1.45}.global-actions-panel .global-action-icon{width:36px;height:36px;display:grid;place-items:center;border:1px solid #806127;border-radius:10px;color:var(--accent)}
.admin-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.admin-tabs a{padding:12px 14px;color:var(--ink);border:1px solid #344752;border-radius:10px;text-decoration:none}.admin-tabs a.active{border-color:var(--accent);background:#ffb21c15;color:var(--accent)}
.admin-data-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:12px;align-items:end;margin:20px 0}.admin-data-filters label{display:grid;gap:8px;min-width:0}.admin-data-filters input,.admin-data-filters select{width:100%;min-width:0;margin:0}.admin-data-filters button{margin:0}.admin-record-json{white-space:pre-wrap;overflow-wrap:anywhere;max-height:360px;max-width:min(70vw,700px);overflow:auto;font-size:.78rem}.admin-data-pagination{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.admin-api-operations{display:grid;gap:8px;margin-top:20px}.admin-api-operations details{padding:12px;border:1px solid #344752;border-radius:8px;overflow-wrap:anywhere}.admin-api-operations summary{white-space:normal}#admin-api-content>details{margin-top:18px}#api-tokens{scroll-margin-top:30px}#admin-console,#admin-api{min-width:0}
@media(max-width:1000px){.global-actions-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-data-filters{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.global-actions-grid,.admin-data-filters{grid-template-columns:1fr}.global-actions-panel{padding:12px}.admin-tabs a{flex:1;text-align:center}.admin-data-pagination button{width:100%}.admin-record-json{max-width:70vw}.users-page{padding-inline:14px}}

/* Contrat API : catégories repliées et recherche, détails à la demande. */
.admin-api-search{display:grid;gap:8px;max-width:620px;margin-top:24px}.admin-api-search input{margin:0}.admin-api-status{color:#a4b5c0;font-size:.85rem;line-height:1.5}.admin-api-operations{margin-bottom:20px}.admin-api-category{min-width:0}.admin-api-category>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;list-style:none}.admin-api-category>summary::-webkit-details-marker{display:none}.admin-api-category>summary:before{content:'▸';color:var(--accent)}.admin-api-category[open]>summary:before{content:'▾'}.admin-api-category>summary strong{flex:1;min-width:0}.admin-api-category>p{color:#a4b5c0;font-size:.85rem;line-height:1.5}.admin-api-category .section-count{flex-shrink:0;white-space:nowrap}.admin-api-route-list{display:grid;gap:8px;margin-top:14px}.admin-api-route summary{cursor:pointer;overflow-wrap:anywhere}.admin-api-method{display:inline-block;margin-right:10px;color:#a4b5c0;font-size:.75rem;font-weight:800}.admin-api-route code{font-size:.8rem;overflow-wrap:anywhere}.admin-api-route .admin-record-json{max-width:100%}.admin-api-route[hidden],.admin-api-category[hidden]{display:none}.admin-api-category>summary:focus-visible{outline:2px solid var(--accent);outline-offset:5px;border-radius:4px}

/* Messages QG et confirmations accessibles. */
.qg-modal-open{overflow:hidden}.qg-message-dialog{position:fixed;inset:0;margin:auto;width:min(520px,calc(100vw - 32px));min-width:0;max-height:calc(100dvh - 32px);overflow:auto;padding:28px;border:1px solid #435462;border-radius:18px;background:#15212b;color:#eef3f6;box-shadow:0 26px 100px #0009}.qg-message-dialog::backdrop,dialog::backdrop{background:#050b12a8;backdrop-filter:blur(5px)}.qg-message-dialog h2{margin:6px 0 16px;font-size:1.4rem;letter-spacing:-.025em}.qg-message-description{white-space:pre-wrap;overflow-wrap:anywhere;color:#b5c4cf;line-height:1.6;margin:0 0 20px}.qg-message-dialog label{display:grid;gap:8px}.qg-message-dialog input,.qg-message-dialog select{width:100%;min-height:46px;margin:0;font:inherit}.qg-message-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.qg-message-actions button{min-height:42px}.qg-message-dialog button:focus-visible,.qg-message-dialog input:focus-visible,.qg-message-dialog select:focus-visible{outline:2px solid #ffb21c;outline-offset:3px}
.incident-status-meta{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.incident-age{font-size:clamp(1.2rem,2vw,1.7rem);font-weight:900;line-height:1.1;font-variant-numeric:tabular-nums;white-space:nowrap;color:#dbe7ee}.incident-card.severity-warning{border-left-color:#f5bf45}.incident-card.severity-major{border-left-color:#ff9350}.incident-card.severity-critical{border-left-color:#ff6575}.incident-card.severity-info{border-left-color:#69baff}.severity.warning{color:#ffd56f;background:#58431655;border:1px solid #846424}.severity.major{color:#ffad77;background:#6a351f55;border:1px solid #9b542c}.severity.critical{color:#ff8e9a;background:#68273366;border:1px solid #a34253}.severity.info{color:#96d2ff;background:#22486166;border:1px solid #3a779d}.severity{border-radius:8px;padding:5px 9px;font-weight:850;font-size:.72rem}.incident-card.severity-critical .incident-age{color:#ff9da7}.incident-card.severity-major .incident-age{color:#ffb383}.incident-card.severity-warning .incident-age{color:#ffe096}
@media(max-width:500px){.qg-message-dialog{padding:22px}.qg-message-actions{flex-wrap:wrap}.qg-message-actions button{flex:1}}

/* Compact overview: one row per live alert in the All tab. */
.incident-table-wrap{max-height:65vh;overflow:auto;max-width:100%;border:1px solid var(--border,#2c3b46);border-radius:12px;background:#0e161c}
.incident-table{width:100%;table-layout:fixed;border-collapse:separate;border-spacing:0;font-size:.82rem;min-width:1040px}
.incident-table caption.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.incident-table th{position:sticky;top:0;z-index:2;background:#1b252e;color:#a9b6c2;font-size:.7rem;text-transform:uppercase;letter-spacing:.045em;text-align:left;padding:12px 10px;border-bottom:1px solid #34424c;white-space:nowrap}
.incident-table td{height:46px;padding:7px 10px;border-bottom:1px solid #25323c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}
.incident-table tbody tr:nth-child(even){background:#131d25}
.incident-table tbody tr:hover{background:#202d37}
.incident-table tbody tr:last-child td{border-bottom:0}
.incident-table th:nth-child(1){width:95px}.incident-table th:nth-child(2){width:18%}.incident-table th:nth-child(3){width:17%}.incident-table th:nth-child(4){width:29%}.incident-table th:nth-child(5){width:105px}.incident-table th:nth-child(6){width:153px}.incident-table th:nth-child(7){width:64px}
.incident-table-row{--incident-tone:#78b8ed}.incident-table-row.severity-warning{--incident-tone:#fbbf24}.incident-table-row.severity-major{--incident-tone:#ff9a52}.incident-table-row.severity-critical{--incident-tone:#ff647c}
.incident-table td:first-child{border-left:3px solid var(--incident-tone)}
.incident-table .severity{font-size:.65rem;padding:4px 6px;white-space:nowrap}
.incident-table a{color:#e2e8ee;text-decoration:none}.incident-table a:hover{text-decoration:underline}
.incident-table-title{display:block;max-width:100%;padding:0;background:none;border:0;border-radius:0;color:#eef3f7;text-align:left;font:inherit;font-weight:650;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;line-height:1.4}
.incident-table-title:hover{color:#fbbf24}.incident-table-title:focus-visible,.incident-table a:focus-visible{outline:2px solid #fbbf24;outline-offset:3px}
.incident-table .incident-age{font-size:.9rem;line-height:1.2;font-weight:750;color:var(--incident-tone);font-variant-numeric:tabular-nums}
.incident-table-machine,.incident-table-date{color:#9eafbc}.incident-table-date{font-size:.75rem;font-variant-numeric:tabular-nums}
.incident-table td.incident-table-actions{overflow:visible;text-align:right}.incident-table .incident-actions-dropdown{display:inline-block;text-align:left}.incident-table .incident-actions-dropdown>summary{width:28px;height:28px;min-height:28px;padding:0;display:grid;place-items:center}
.incident-table tbody tr:has(.incident-actions-dropdown[open]){position:relative;z-index:3}

.incident-table tbody tr:nth-child(-n+2) .incident-actions-dropdown-menu{bottom:auto;top:34px}

.incident-table-action-menu[popover]{position:fixed;inset:auto;margin:0}.incident-table-action-menu[popover]:not(:popover-open){display:none}.incident-table-action-menu[popover]:popover-open{display:grid}
.incident-table .incident-actions-dropdown>summary{font-size:0}.incident-table .incident-actions-dropdown>summary::after{content:'•••';font-size:.72rem;letter-spacing:2px;transform:rotate(90deg)}
/* Keep category and All rows dense, including the action control's baseline. */
.incident-table td{height:42px;padding:6px 10px;font-size:.8rem;line-height:1.25}
.incident-table td.incident-table-date{font-size:.7rem}
.incident-table .incident-actions-dropdown{display:block;width:28px;margin-left:auto;line-height:1}

/* Expanded incident details, with an always-visible close action. */
.qg-message-dialog.qg-message-dialog-wide{width:min(1120px,calc(100vw - 32px));height:min(860px,calc(100dvh - 32px));overflow:hidden}
.qg-message-dialog-wide>form{height:100%;min-height:0;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto}
.qg-message-dialog-wide .qg-message-description{min-height:0;overflow:auto;margin:0;padding-right:12px;scrollbar-gutter:stable}
.qg-message-dialog-wide .qg-message-actions{margin-top:20px}

.information-archives{margin-top:24px;border-top:1px solid var(--border,#2b3b46);padding-top:16px}.information-archives>summary{cursor:pointer;font-weight:700}.information-archive-controls{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:14px}.information-archive-controls select{max-width:100%;flex:1 1 240px}.information-archives .table-wrap{max-height:60vh;overflow:auto}.information-archives table{font-size:13px}.information-archives th{position:sticky;top:0;background:#14212a}.information-archives [role=alert]:empty{display:none}

/* Keep long system names and network addresses inside their card cell. */
#center-agents .machine-identity,#center-agents .machine-identity>*{min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere;word-break:normal}#center-agents td[data-label="Adresse MAC"],#center-agents td[data-label="IP locales"],#center-agents td[data-label="IP VPN"]{overflow-wrap:anywhere;word-break:normal}#center-agents td:not(:last-child)>*{min-width:0;max-width:100%}

.muted-alerts{margin-top:28px;padding-top:24px;border-top:1px solid var(--border,#2c3b46)}
.information-email-form{display:grid;gap:12px;max-width:680px}.information-email-form label{display:block}.information-email-form textarea{width:100%;box-sizing:border-box;padding:12px;color:var(--ink);background:#0d151b;border:1px solid #34434d;border-radius:8px;font:inherit}.information-email-form input[type=checkbox]{width:auto}

.center-tabs a.center-tab{display:inline-flex;align-items:center;text-decoration:none}

.incident-mute-presets{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.incident-mute-presets button[aria-pressed="true"]{border:1px solid var(--accent);color:var(--accent);background:#322917}

.global-search-duplicate-warning{padding:15px 18px;border:1px solid #a66b35;border-radius:12px;background:#352314;color:#f3dfca}.global-search-duplicate-warning strong{display:block;font-size:.84rem}.global-search-duplicate-warning p{margin:7px 0 0;color:#dfc8b0;font-size:.76rem;line-height:1.5}

.ssh-vpn-repair-dialog{width:min(1080px,calc(100vw - 28px));max-width:none;max-height:calc(100dvh - 28px);overflow:auto;padding:24px}.ssh-vpn-repair-dialog .section-title{align-items:flex-start;gap:14px}.ssh-vpn-repair-dialog .section-title h2{margin:0}.ssh-vpn-repair-dialog .section-title p:last-child{margin:8px 0 0;color:#aab9c4;overflow-wrap:anywhere}.ssh-vpn-repair-dialog .section-title button{flex:none}.ssh-vpn-repair-dialog .actions{position:sticky;bottom:-24px;z-index:1;flex-wrap:wrap;padding:14px 0;background:#17202a}.ssh-vpn-repair-dialog .actions button{min-height:42px}.ssh-vpn-repair-dialog button:focus-visible,.ssh-vpn-repair-dialog summary:focus-visible{outline:2px solid #ffb020;outline-offset:3px}.ssh-vpn-repair-section{margin:18px 0;padding:16px;border:1px solid #34434f;border-radius:12px;background:#111a22;min-width:0}.ssh-vpn-repair-section .ssh-vpn-repair-section{margin:12px 0 0;background:#0d151b}.ssh-vpn-repair-section h3{margin:0 0 12px;font-size:1rem}.ssh-vpn-repair-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.ssh-vpn-repair-field{min-width:0;padding:10px;border:1px solid #2d3c47;border-radius:8px}.ssh-vpn-repair-field span{display:block;color:#93a6b5;font-size:.76rem}.ssh-vpn-repair-field strong{display:block;margin-top:5px;overflow-wrap:anywhere;font-size:.89rem}.ssh-vpn-repair-details{min-width:0;margin:8px 0;padding:10px;border:1px solid #2d3c47;border-radius:8px}.ssh-vpn-repair-details summary{cursor:pointer;color:#83c8f4}.ssh-vpn-repair-details pre{max-height:260px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;font-size:.78rem}
@media(max-width:640px){.ssh-vpn-repair-dialog{padding:15px}.ssh-vpn-repair-dialog .section-title{display:block}.ssh-vpn-repair-dialog .section-title button{margin-top:12px}.ssh-vpn-repair-grid{grid-template-columns:1fr}.ssh-vpn-repair-dialog .actions{bottom:-15px;display:grid;grid-template-columns:1fr}.ssh-vpn-repair-dialog .actions button{width:100%}}
