/**
 * Projet         : MageTicket
 * Fichier        : public/assets/css/itsm.css
 * Rôle           : Interface responsive bord à bord du centre ITSM et de ses assistants.
 * Auteur         : Régis KREMER
 * Version        : 0.33.1
 * Version projet : 0.33.0
 * Lot            : MAGETICKET ITSM ADVANCED GOVERNANCE UI COMPLETION1
 * Base requise   : 0.33.0 + MAGETICKET ROUTING SLA OPERATIONAL ACTIONS UI COMPLETION1
 * Créé le        : 2026-07-22
 * Modifié le     : 2026-07-25
 * Dépendances    : app.css et tokens MageTicket
 * Contraintes    : WCAG 2.2 AA, zones sûres, 100dvh et aucun débordement horizontal
 * Modifications  : ajout des panneaux de gouvernance avancée avec les tokens et composants MageTicket existants.
 */

.itsm-shell{min-height:100dvh;background:var(--bg);color:var(--text)}.itsm-brand{display:flex;align-items:center;gap:9px;color:var(--text);font-size:var(--fs-lg);font-weight:800;text-decoration:none}.itsm-brand img{width:38px;height:38px;object-fit:contain}.itsm-main{min-width:0;padding:12px 14px 20px}.itsm-connection{margin-bottom:8px;padding:10px 12px;border:1px solid var(--orange);background:color-mix(in srgb,var(--orange) 12%,var(--surface));color:var(--text)}.itsm-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-bottom:8px}.itsm-kpis article{min-width:0;min-height:78px;display:flex;align-items:center;gap:11px;padding:12px;border:1px solid var(--line);border-radius:var(--r-md);background:linear-gradient(145deg,var(--surface-2),var(--surface));box-shadow:var(--shadow)}.itsm-kpis strong,.itsm-kpis span{display:block}.itsm-kpis strong{font-size:var(--fs-xl)}.itsm-kpis article div span{overflow:hidden;text-overflow:ellipsis;color:var(--muted);white-space:nowrap;font-size:var(--fs-xs)}.itsm-kpi-icon{width:35px;height:35px;display:grid!important;place-items:center;border-radius:7px}.itsm-kpi-icon.critical{background:#5c1f2d;color:#ff7988}.itsm-kpi-icon.incident{background:#173e75;color:#72adff}.itsm-kpi-icon.problem{background:#493574;color:#c8abff}.itsm-kpi-icon.change{background:#14593f;color:#6be1a8}.itsm-kpi-icon.warning{background:#6b4517;color:#ffc45e}.itsm-workspace{display:grid;grid-template-columns:minmax(360px,.95fr) minmax(430px,1.1fr) minmax(330px,.78fr);gap:8px;min-height:520px}.itsm-panel,.itsm-conflicts{min-width:0;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);box-shadow:var(--shadow);overflow:hidden}.itsm-panel>header,.itsm-conflicts>header{min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 12px;border-bottom:1px solid var(--line)}.itsm-panel h2,.itsm-panel small,.itsm-conflicts h2,.itsm-conflicts small{margin:0}.itsm-panel h2,.itsm-conflicts h2{font-size:var(--fs-base)}.itsm-panel small,.itsm-conflicts small{color:var(--muted);font-size:var(--fs-xs)}.itsm-panel header input{width:min(170px,36vw);height:34px;border:1px solid var(--line-strong);background:var(--bg-deep);color:var(--text);padding:0 9px}.itsm-tabs{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--line)}.itsm-tabs button{min-height:40px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--muted);font-size:var(--fs-xs)}.itsm-tabs button[aria-selected="true"]{border-bottom-color:var(--brand);background:var(--brand-soft);color:var(--text)}.itsm-list,.itsm-change-list{height:420px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin}.itsm-list>button,.itsm-change-list>button{width:100%;min-height:62px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 11px;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--text);text-align:left}.itsm-list>button:hover,.itsm-change-list>button:hover{background:var(--surface-2)}.itsm-list>button strong,.itsm-list>button small,.itsm-change-list>button strong,.itsm-change-list>button small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.itsm-list>button strong,.itsm-change-list>button strong{font-size:var(--fs-xs)}.itsm-list>button small,.itsm-change-list>button small{margin-top:4px;color:var(--muted);font-size:var(--fs-xs)}.itsm-severity,.itsm-risk{min-width:38px;height:30px;display:grid;place-items:center;border:1px solid var(--line-strong);border-radius:4px;background:var(--surface-3);font-size:var(--fs-xs);font-weight:800}.itsm-severity.sev1,.itsm-risk.critical{border-color:#9c3344;background:#5f1e2c;color:#ff9aaa}.itsm-severity.sev2,.itsm-risk.high{border-color:#a36522;background:#583813;color:#ffc56d}.itsm-severity.sev3,.itsm-risk.medium{border-color:#556aa0;background:#21375f;color:#9ab9ff}.itsm-severity.sev4,.itsm-risk.low{border-color:#2a795b;background:#153e30;color:#72d9ae}.itsm-severity.known{background:var(--brand-soft);color:#cbbaff}.itsm-empty{min-height:130px;display:grid;place-content:center;padding:20px;color:var(--muted);text-align:center}.itsm-conflict-summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-bottom:1px solid var(--line);font-size:var(--fs-xs)}.itsm-conflict-summary span{color:var(--muted)}.itsm-conflict-summary.has-conflicts{background:color-mix(in srgb,var(--orange) 12%,var(--surface))}.itsm-conflict-summary.is-clear{background:color-mix(in srgb,var(--green) 9%,var(--surface))}.itsm-change-list>button{grid-template-columns:72px minmax(0,1fr) 36px}.itsm-change-list time{color:var(--muted);font-size:var(--fs-xs)}.itsm-detail{position:relative}.itsm-detail-empty{height:100%;min-height:420px;display:grid;place-content:center;justify-items:center;padding:30px;color:var(--muted);text-align:center}.itsm-detail-empty span{font-size:var(--fs-2xl)}.itsm-detail-empty h2,.itsm-detail-empty p{margin:5px 0}.itsm-detail-empty h2{color:var(--text)}.itsm-detail-content{height:100%;overflow:auto}.itsm-detail-content>header{position:sticky;top:0;background:var(--surface);z-index:2}.itsm-close{width:36px;height:36px;border:1px solid var(--line-strong);background:transparent;color:var(--text)}.itsm-detail-content dl{margin:0;padding:8px 12px}.itsm-detail-content dl>div{display:grid;grid-template-columns:110px minmax(0,1fr);gap:8px;padding:7px 0;border-bottom:1px solid var(--line)}.itsm-detail-content dt{color:var(--muted);font-size:var(--fs-xs)}.itsm-detail-content dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:var(--fs-xs)}.itsm-detail-content section{padding:10px 12px;border-top:1px solid var(--line)}.itsm-detail-content h3{margin:0 0 8px;font-size:var(--fs-xs)}.itsm-detail-content section button{width:100%;display:flex;justify-content:space-between;gap:8px;padding:8px;border:1px solid var(--line);background:var(--surface-2);color:var(--text);text-align:left}.itsm-conflicts{margin-top:8px}.itsm-conflicts>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:8px}.itsm-conflicts article{display:grid;gap:4px;padding:10px;border:1px solid var(--orange);background:color-mix(in srgb,var(--orange) 9%,var(--surface));font-size:var(--fs-xs)}.itsm-conflicts article span,.itsm-conflicts article small{color:var(--muted)}.itsm-state{position:fixed;z-index:80;inset:66px 0 0;display:grid;place-content:center;justify-items:center;background:color-mix(in srgb,var(--bg) 94%,transparent);text-align:center}.itsm-state span{font-size:var(--fs-2xl)}.itsm-state h2,.itsm-state p{margin:5px}.itsm-wizard{position:fixed;z-index:200;inset:0;display:grid;grid-template-rows:auto auto minmax(0,1fr);background:var(--bg);color:var(--text)}.itsm-wizard>header{min-height:70px;display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:12px;padding:calc(8px + env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) 8px max(14px,env(safe-area-inset-left));border-bottom:1px solid var(--line);background:var(--bg-deep)}.itsm-wizard>header button{width:42px;height:42px;border:1px solid var(--line-strong);background:transparent;color:var(--text)}.itsm-wizard>header h2,.itsm-wizard>header small{margin:0}.itsm-wizard>header small,.itsm-wizard>header>span{color:var(--muted);font-size:var(--fs-xs)}.itsm-wizard-progress{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,35%);align-items:center;gap:16px;padding:10px max(18px,env(safe-area-inset-right)) 10px max(18px,env(safe-area-inset-left));border-bottom:1px solid var(--line);background:var(--surface)}.itsm-wizard progress{width:100%;accent-color:var(--brand)}.itsm-wizard form{min-height:0;display:grid;grid-template-rows:minmax(0,1fr) auto;overflow:hidden}.itsm-wizard fieldset,.itsm-confirmation{min-width:0;margin:0;padding:24px max(24px,env(safe-area-inset-right)) 90px max(24px,env(safe-area-inset-left));border:0;overflow:auto}.itsm-wizard legend{margin-bottom:20px;font-size:var(--fs-xl);font-weight:800}.itsm-wizard label{display:grid;gap:6px;margin-bottom:14px}.itsm-wizard label>span{color:var(--muted);font-size:var(--fs-xs)}.itsm-wizard input,.itsm-wizard textarea,.itsm-wizard select{width:100%;border:1px solid var(--line-strong);background:var(--surface);color:var(--text);padding:11px;border-radius:var(--r-sm)}.itsm-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.itsm-choice-grid label{position:relative;min-height:130px;align-content:center;padding:16px;border:1px solid var(--line-strong);background:var(--surface)}.itsm-choice-grid input{position:absolute;inset:10px auto auto 10px;width:auto}.itsm-choice-grid strong,.itsm-choice-grid span{display:block}.itsm-choice-grid strong{font-size:var(--fs-md)}.itsm-choice-grid span{margin-top:7px}.itsm-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.itsm-wizard footer{position:fixed;z-index:2;right:0;bottom:0;left:0;display:grid;grid-template-columns:auto 1fr auto;gap:8px;padding:10px max(18px,env(safe-area-inset-right)) calc(10px + env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left));border-top:1px solid var(--line);background:var(--bg-deep)}.itsm-wizard footer [data-itsm-save-exit]{justify-self:start}.itsm-wizard footer [data-itsm-next]{grid-column:3}.itsm-wizard-warning{padding:14px;border-left:3px solid var(--orange);background:color-mix(in srgb,var(--orange) 10%,var(--surface))}.itsm-confirmation{place-content:center;justify-items:center;text-align:center}.itsm-confirmation>span{font-size:var(--fs-2xl);color:var(--green)}.itsm-summary-row{display:grid;grid-template-columns:160px minmax(0,1fr);gap:10px;padding:8px 0;border-bottom:1px solid var(--line)}.itsm-summary-row dt{color:var(--muted)}
@media(max-width:1180px){.itsm-workspace{grid-template-columns:minmax(320px,.9fr) minmax(430px,1.1fr)}.itsm-detail{position:fixed;z-index:70;inset:66px 0 0 auto;width:min(430px,92vw);transform:translateX(105%);transition:transform .18s ease}.itsm-detail.is-open{transform:none}.itsm-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.itsm-conflicts>div{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.itsm-brand{width:44px}.itsm-brand img{width:36px;height:36px}.itsm-brand span{display:none}.itsm-main{padding:0 0 calc(10px + env(safe-area-inset-bottom))}.itsm-kpis{display:flex;gap:0;overflow:auto;border-bottom:1px solid var(--line);scroll-snap-type:x mandatory}.itsm-kpis article{min-width:72vw;min-height:74px;border-width:0 1px 0 0;border-radius:0;box-shadow:none;scroll-snap-align:start}.itsm-workspace{display:block;min-height:calc(100dvh - 150px)}.itsm-panel{border-inline:0;border-radius:0;box-shadow:none}.itsm-calendar{margin-top:8px}.itsm-list,.itsm-change-list{height:auto;max-height:52dvh}.itsm-list>button,.itsm-change-list>button{min-height:70px;padding-inline:max(12px,env(safe-area-inset-left)) max(12px,env(safe-area-inset-right))}.itsm-panel>header{padding-inline:max(12px,env(safe-area-inset-left)) max(12px,env(safe-area-inset-right))}.itsm-detail{inset:calc(58px + env(safe-area-inset-top)) 0 0;width:100%;border:0;border-radius:0}.itsm-conflicts{border-inline:0;border-radius:0;box-shadow:none}.itsm-conflicts>div{grid-template-columns:1fr}.itsm-state{inset:calc(58px + env(safe-area-inset-top)) 0 0}.itsm-wizard>header{grid-template-columns:44px minmax(0,1fr)}.itsm-wizard>header>span{display:none}.itsm-wizard-progress{grid-template-columns:1fr}.itsm-choice-grid,.itsm-form-grid{grid-template-columns:1fr}.itsm-wizard fieldset,.itsm-confirmation{padding:18px max(14px,env(safe-area-inset-right)) 100px max(14px,env(safe-area-inset-left))}.itsm-wizard legend{font-size:var(--fs-lg)}.itsm-wizard input,.itsm-wizard textarea{font-size:var(--fs-md)}.itsm-wizard footer{grid-template-columns:1fr 1fr}.itsm-wizard footer [data-itsm-save-exit]{display:none}.itsm-wizard footer [data-itsm-next]{grid-column:2}.itsm-summary-row{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.itsm-detail{transition:none}}

/* Gouvernance ITSM avancée — mêmes tokens et géométrie que le registre existant. */
.itsm-governance{margin-top:12px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);box-shadow:var(--shadow);overflow:hidden}
.itsm-governance-header{padding:12px 14px;border-bottom:1px solid var(--line);background:var(--surface-2)}
.itsm-governance-header small,.itsm-governance-form header small,.itsm-governance-decisions header small{color:var(--muted);font-size:var(--fs-xs)}
.itsm-governance-header h2,.itsm-governance-header p,.itsm-governance-form h3,.itsm-governance-decisions h3{margin:3px 0}
.itsm-governance-header p{color:var(--muted);font-size:var(--fs-xs)}
.itsm-governance-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-bottom:1px solid var(--line)}
.itsm-governance-tabs button{min-height:44px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--muted);font-size:var(--fs-xs);font-weight:700}
.itsm-governance-tabs button[aria-selected="true"]{border-bottom-color:var(--brand);background:var(--brand-soft);color:var(--text)}
.itsm-governance-panel{display:grid;gap:0}
.itsm-governance-form,.itsm-governance-decisions{padding:14px;border-bottom:1px solid var(--line)}
.itsm-governance-form:last-child,.itsm-governance-decisions:last-child{border-bottom:0}
.itsm-governance-form>header,.itsm-governance-decisions>header{margin-bottom:12px}
.itsm-governance-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px}
.itsm-governance-grid label{display:grid;gap:6px;min-width:0}
.itsm-governance-grid label>span{color:var(--muted);font-size:var(--fs-xs)}
.itsm-governance-grid .wide{grid-column:1/-1}
.itsm-governance input,.itsm-governance textarea,.itsm-governance select{width:100%;min-width:0;border:1px solid var(--line-strong);border-radius:var(--r-sm);background:var(--surface);color:var(--text);padding:10px}
.itsm-governance select[multiple]{min-height:132px}
.itsm-governance-form>footer{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:12px;padding-top:10px;border-top:1px solid var(--line)}
.itsm-governance-form>footer p{flex:1;margin:0;color:var(--muted);font-size:var(--fs-xs)}
.itsm-governance-decisions{display:grid;gap:8px}
.itsm-approval-row{display:grid;grid-template-columns:minmax(220px,1fr) 130px minmax(180px,.7fr) auto;align-items:center;gap:8px;padding:10px;border:1px solid var(--line);background:var(--surface-2)}
.itsm-approval-row strong,.itsm-approval-row small{display:block}.itsm-approval-row small{margin-top:4px;color:var(--muted);font-size:var(--fs-xs)}
.itsm-approval-row p{grid-column:1/-1;margin:0;color:var(--muted);font-size:var(--fs-xs)}
.itsm-review-actions,.itsm-crisis-roles{margin-top:12px;padding-top:10px;border-top:1px solid var(--line)}
.itsm-review-actions h4,.itsm-crisis-roles h4{margin:0 0 8px;font-size:var(--fs-xs)}
.itsm-review-actions>div{display:grid;grid-template-columns:minmax(220px,1fr) minmax(170px,.7fr) 150px 130px;gap:8px;margin-top:8px}.itsm-crisis-roles>div{display:grid;grid-template-columns:minmax(160px,.5fr) minmax(190px,.7fr) minmax(220px,1fr);gap:8px;margin-top:8px}
@media(max-width:900px){.itsm-governance-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.itsm-approval-row{grid-template-columns:1fr 130px}.itsm-approval-row label:nth-of-type(2){grid-column:1/-1}.itsm-review-actions>div,.itsm-crisis-roles>div{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.itsm-governance{margin-top:8px;border-inline:0;border-radius:0;box-shadow:none}.itsm-governance-header,.itsm-governance-form,.itsm-governance-decisions{padding-inline:max(12px,env(safe-area-inset-left)) max(12px,env(safe-area-inset-right))}.itsm-governance-tabs{display:flex;overflow-x:auto;scrollbar-width:thin}.itsm-governance-tabs button{min-width:160px}.itsm-governance-grid,.itsm-approval-row,.itsm-review-actions>div,.itsm-crisis-roles>div{grid-template-columns:1fr}.itsm-governance-grid .wide,.itsm-approval-row label:nth-of-type(2){grid-column:auto}.itsm-governance-form>footer{align-items:stretch;flex-direction:column}.itsm-governance-form>footer .button{width:100%}}
