/* ==========================================================================
   SUPERVISION — LEGACY CLEANUP V16
   Point d'entrée unique. Ne pas ajouter de règles CSS ici.
   La cascade est volontairement ordonnée de l'héritage vers le design system.
   ========================================================================== */

@import url("./css/00-tokens.css");
@import url("./css/legacy/10-base.css");
@import url("./css/legacy/11-shell-layout.css");
@import url("./css/legacy/12-topology-legacy.css");
@import url("./css/legacy/13-tools-legacy.css");
@import url("./css/legacy/14-dashboard-deployment.css");
@import url("./css/legacy/15-parc-legacy.css");
@import url("./css/legacy/16-enterprise-refactors.css");
@import url("./css/legacy/17-shared-page-refactors.css");
@import url("./css/20-design-system.css");
@import url("./css/21-core-components.css");
@import url("./css/23-responsive.css");
@import url("./css/30-theme-contrast.css");
@import url("./css/pages/40-parc-dark.css");
@import url("./css/pages/41-console-dark.css");
@import url("./css/pages/42-config-dark.css");
@import url("./css/pages/43-tandem-dark.css");
@import url("./css/pages/44-users-dark.css");

@import url("./css/pages/45-fleet-workspace.css");

@import url("./css/pages/46-fleet-100pct-fix.css");

@import url("./css/pages/49-inventory-original-restore.css");
@import url("./css/pages/53-inventory-explorer.css");
@import url("./css/pages/60-topology-pro.css");
@import url("./css/pages/61-tandem-pipeline.css");
@import url("./css/pages/62-maintenance-center.css");
@import url("./css/pages/63-maintenance-progress-console.css");
@import url("./css/pages/64-maintenance-enterprise-progress.css");
@import url("./css/pages/65-maintenance-progress-visible.css");
@import url("./css/pages/66-maintenance-lightbar-clean.css");
@import url("./css/pages/67-snmp-industrial-pipeline.css");
@import url("./css/pages/68-dashboard-v25.css");
@import url("./css/pages/69-fleet-selection-panel-fix.css");
@import url("./css/pages/70-fleet-table-filters.css");
@import url("./css/pages/71-fleet-final-safe.css");
@import url("./css/pages/72-final-dark-ui.css");

@import url("./css/pages/73-final-dark-polished.css");


/* ============================================================
   V1.0.9 - SIDEBAR FINAL FIX
   - Déconnexion toujours visible
   - Navigation scrollable
   - Cohérence des groupes et boutons
   - Compatible avec la barre de statut basse
============================================================ */

/* La sidebar s'arrête AVANT la barre d'état du bas */
.console-sidebar {
  display: flex !important;
  flex-direction: column !important;

  height: calc(100vh - 34px) !important;
  height: calc(100dvh - 34px) !important;

  max-height: calc(100vh - 34px) !important;
  max-height: calc(100dvh - 34px) !important;

  min-height: 0 !important;

  overflow: hidden !important;

  box-sizing: border-box !important;

  padding-bottom: 0 !important;
}


/* =========================
   LOGO / ENTÊTE
========================= */

.console-sidebar .sidebar-brand {
  flex: 0 0 auto !important;

  margin: 0 8px 8px !important;
  padding: 12px 4px 10px !important;

  min-height: 58px !important;

  border-bottom: 1px solid rgba(255,255,255,.12) !important;
}


/* =========================
   NAVIGATION
========================= */

.console-sidebar .sidebar-nav {
  flex: 1 1 auto !important;

  min-height: 0 !important;

  display: block !important;

  overflow-y: auto !important;
  overflow-x: hidden !important;

  padding:
    2px
    8px
    10px
    8px !important;

  margin: 0 !important;

  scrollbar-width: thin !important;
}


/* scrollbar Edge / Chrome */
.console-sidebar .sidebar-nav::-webkit-scrollbar {
  width: 5px;
}

.console-sidebar .sidebar-nav::-webkit-scrollbar-track {
  background: transparent;
}

.console-sidebar .sidebar-nav::-webkit-scrollbar-thumb {
  background: rgba(255,255,255,.20);
  border-radius: 3px;
}


/* =========================
   GROUPES
========================= */

.console-sidebar .ui-nav-group {
  margin: 0 !important;
  padding: 0 !important;
}

.console-sidebar .ui-nav-group + .ui-nav-group {
  margin-top: 11px !important;
}


/* titres SUPERVISION / EXPLOITATION... */
.console-sidebar .ui-nav-group-title {
  display: flex !important;
  align-items: center !important;

  min-height: 20px !important;

  margin: 0 0 4px !important;
  padding: 0 7px !important;

  font-size: 9px !important;
  font-weight: 700 !important;

  line-height: 1 !important;

  letter-spacing: .10em !important;

  color: #78b9dc !important;
}


/* =========================
   BOUTONS
========================= */

.console-sidebar .sidebar-link {
  display: flex !important;
  align-items: center !important;

  width: 100% !important;

  min-height: 35px !important;
  height: 35px !important;

  margin: 0 0 2px !important;
  padding: 0 10px !important;

  gap: 9px !important;

  border-radius: 2px !important;

  box-sizing: border-box !important;

  font-size: 12px !important;
  line-height: 1 !important;
}


/* icônes identiques */
.console-sidebar .sidebar-link-icon {
  flex: 0 0 18px !important;

  width: 18px !important;

  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
}


/* suppression des animations qui décalent les boutons */
.console-sidebar .sidebar-link:hover {
  transform: none !important;
}


/* =========================
   DÉCONNEXION
========================= */

.console-sidebar .sidebar-footer {
  flex: 0 0 auto !important;

  position: relative !important;
  bottom: auto !important;

  z-index: 100 !important;

  width: 100% !important;

  margin: 0 !important;

  padding:
    8px
    8px
    9px !important;

  box-sizing: border-box !important;

  border-top: 1px solid rgba(255,255,255,.14) !important;

  background: #0d2935 !important;
}


/* bouton Déconnexion */
.console-sidebar .sidebar-logout {
  display: flex !important;

  align-items: center !important;
  justify-content: flex-start !important;

  width: 100% !important;

  min-height: 36px !important;
  height: 36px !important;

  gap: 9px !important;

  padding: 0 11px !important;

  box-sizing: border-box !important;

  border: 1px solid rgba(255,255,255,.20) !important;
  border-radius: 2px !important;

  background: rgba(255,255,255,.08) !important;

  color: #ffffff !important;

  font-size: 12px !important;
  font-weight: 600 !important;

  text-decoration: none !important;
}


.console-sidebar .sidebar-logout:hover {
  background: rgba(255,255,255,.14) !important;
  color: #ffffff !important;
}


/* =========================
   PETITES HAUTEURS D'ÉCRAN
========================= */

@media (max-height: 760px) {

  .console-sidebar .sidebar-brand {
    min-height: 48px !important;

    padding-top: 7px !important;
    padding-bottom: 7px !important;
  }


  .console-sidebar .ui-nav-group + .ui-nav-group {
    margin-top: 7px !important;
  }


  .console-sidebar .sidebar-link {
    height: 31px !important;
    min-height: 31px !important;

    font-size: 11px !important;
  }


  .console-sidebar .ui-nav-group-title {
    min-height: 17px !important;

    font-size: 8px !important;

    margin-bottom: 2px !important;
  }


  .console-sidebar .sidebar-footer {
    padding-top: 6px !important;
    padding-bottom: 6px !important;
  }


  .console-sidebar .sidebar-logout {
    min-height: 32px !important;
    height: 32px !important;
  }
}

/* === INLINE FINAL VALIDATED CASCADE — MUST REMAIN LAST === */
/* ==========================================================================
   IMPRIMANTESMONITOR V1.0 — UI FINAL VALIDATED
   Filet de sécurité final après correction des règles sources historiques.
   !important limité aux collisions historiques qui en utilisent déjà.
   ========================================================================== */
body.dark-mode{
  --ui-final-bg:#0d151b;
  --ui-final-surface:#15232c;
  --ui-final-surface-2:#17262f;
  --ui-final-hover:#20333e;
  --ui-final-selected:#173b4c;
  --ui-final-selected-2:#1d485c;
  --ui-final-border:#3b5260;
  --ui-final-border-strong:#557080;
  --ui-final-text:#edf4f7;
  --ui-final-text-2:#d2dfe5;
  --ui-final-muted:#a9bbc4;
  --ui-final-accent:#54b7df;
}

/* États interactifs partagés : aucune sélection/interaction blanche. */
body.dark-mode .console-view :where(
  button,.ui-button,.btn,.btn-secondary,.fleet-toolbar-details-btn,
  .fleet-icon-btn,.fleet-close-details,.fleet-reset-btn
):where(:not(.btn-primary):not(.ui-button-primary):not(.my-printer-primary-action):not(.danger):not(.btn-danger)){
  background-color:var(--ui-final-surface-2)!important;
  color:var(--ui-final-text-2)!important;
  border-color:var(--ui-final-border)!important;
}
body.dark-mode .console-view :where(
  button,.ui-button,.btn,.btn-secondary,.fleet-toolbar-details-btn,
  .fleet-icon-btn,.fleet-close-details,.fleet-reset-btn
):where(:not(:disabled):not(.btn-primary):not(.ui-button-primary):not(.my-printer-primary-action)):hover{
  background-color:var(--ui-final-hover)!important;
  color:var(--ui-final-text)!important;
  border-color:var(--ui-final-border-strong)!important;
}
body.dark-mode .console-view :is(button,.ui-button,.btn,input,select,textarea):focus-visible{
  outline:1px solid var(--ui-final-accent)!important;
  outline-offset:1px!important;
}
body.dark-mode .console-view :is(button,.ui-button,.btn):disabled{
  background:var(--ui-final-surface-2)!important;
  color:#82959f!important;
  border-color:#344852!important;
  opacity:1!important;
}

/* Contrôles de formulaire : dark réel jusque dans les options. */
body.dark-mode .console-view :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea){
  background-color:#101b23!important;
  color:var(--ui-final-text)!important;
  border-color:var(--ui-final-border)!important;
}
body.dark-mode .console-view select option{
  background:#14232c!important;
  color:var(--ui-final-text)!important;
}
body.dark-mode .console-view select option:checked{
  background:var(--ui-final-selected-2)!important;
  color:#f2f8fa!important;
}

/* DataTables et tableaux partagés. */
body.dark-mode .console-view table thead :is(th,td){
  background:#1b2b35!important;
  color:#dfeaf0!important;
  border-color:#48616d!important;
}
body.dark-mode .console-view table tbody tr:hover>*{
  background:var(--ui-final-hover)!important;
  color:var(--ui-final-text)!important;
}
body.dark-mode .console-view table tbody tr:is(.selected,.dt-selected,[aria-selected="true"])>*{
  background:var(--ui-final-selected)!important;
  color:#f2f8fa!important;
  box-shadow:inset 3px 0 0 var(--ui-final-accent)!important;
}

/* Gestion du parc : panneau équipement historique encore piloté par règles claires. */
body.dark-mode [data-view-panel="parc"] :is(
  #fleetDetailsPane,.fleet-details-content,.fleet-info-card-pro,.fleet-tab-panel,
  .smart-bottom-titlebar,.smart-bottom-resizer
){
  background:var(--ui-final-surface)!important;
  color:var(--ui-final-text)!important;
  border-color:var(--ui-final-border)!important;
}
body.dark-mode [data-view-panel="parc"] .smart-bottom-resizer{background:#1b2b35!important}
body.dark-mode [data-view-panel="parc"] .fleet-details-tabs button{
  background:var(--ui-final-surface-2)!important;
  color:var(--ui-final-text-2)!important;
  border-color:var(--ui-final-border)!important;
}
body.dark-mode [data-view-panel="parc"] .fleet-details-tabs button:hover{
  background:var(--ui-final-hover)!important;color:var(--ui-final-text)!important
}
body.dark-mode [data-view-panel="parc"] .fleet-details-tabs button.active{
  background:var(--ui-final-selected)!important;
  color:#f2f8fa!important;
  border-bottom-color:var(--ui-final-accent)!important;
}
body.dark-mode [data-view-panel="parc"] .fleet-row-printer-img{
  background:#17262f!important;border-color:var(--ui-final-border)!important
}

/* Mon imprimante : garde-fous correspondant aux valeurs validées par computed styles. */
body.dark-mode [data-view-panel="my-printer"] .my-printer-progress-count{font-size:12.5px!important}
body.dark-mode [data-view-panel="my-printer"] .my-printer-progress-steps span{font-size:12px!important}
body.dark-mode [data-view-panel="my-printer"] .my-printer-info-banner{font-size:12px!important}
body.dark-mode [data-view-panel="my-printer"] .my-printer-table thead th{font-size:12.5px!important}
body.dark-mode [data-view-panel="my-printer"] .my-printer-table tbody td{font-size:13px!important}

/* Topologie : sélection cohérente, sans altérer le layout 100 %. */
body.dark-mode [data-view-panel="topologie"] :is(
  .tp-tree-head,.tp-tree-printer,.tp-node,.tp-switch-card,.tp-port-row,
  .topology-pro-tabs button
):hover{
  background:var(--ui-final-hover)!important;color:var(--ui-final-text)!important
}
body.dark-mode [data-view-panel="topologie"] :is(
  .tp-tree-head,.tp-tree-printer,.tp-node,.tp-switch-card,.tp-port-row,
  .topology-pro-tabs button
):is(.active,.selected,.is-selected,.is-active,[aria-selected="true"]){
  background:var(--ui-final-selected)!important;
  color:#f2f8fa!important;
  border-color:var(--ui-final-accent)!important;
}

/* Console : texte opérationnel confortable à zoom 100 %. */
body.dark-mode [data-view-panel="console"] :is(
  .terminal-output,.console-output,.terminal-line,.diagnostic-terminal-output,
  .secure-terminal,.secure-terminal pre,.secure-terminal code,pre,code
){
  font-size:13.5px!important;
  line-height:1.5!important;
}

body.dark-mode [data-view-panel="topologie"] .topology-pro-tabs button{
  font-size:12px!important;
}
body.dark-mode [data-view-panel="topologie"] .topology-pro-tabs button:hover{
  background:#20333e!important;color:#edf4f7!important;border-color:#557080!important;
}
body.dark-mode [data-view-panel="topologie"] .topology-pro-tabs button.active,
body.dark-mode [data-view-panel="topologie"] .topology-pro-tabs button.is-active,
body.dark-mode [data-view-panel="topologie"] .topology-pro-tabs button[aria-selected="true"]{
  background:#173b4c!important;color:#f2f8fa!important;border-color:#54b7df!important;
}


/* === DARK FINAL FIX — PALETTE / STATES ONLY === */
/* Mon imprimante : couleurs et états uniquement. Typographie volontairement inchangée. */
body.dark-mode [data-view-panel="my-printer"] .my-printer-option{
  background:#14232d!important;
  color:#dbe5ea!important;
  border-color:#324956!important;
  outline:none!important;
  box-shadow:none!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-option:hover{
  background:#1c303c!important;
  border-color:#3a5260!important;
  outline:none!important;
  box-shadow:none!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-option.is-selected,
body.dark-mode [data-view-panel="my-printer"] .my-printer-option:has(input[type="radio"]:checked){
  background:#183648!important;
  color:#e5eef2!important;
  border-color:#324956!important;
  border-left-color:#54b7df!important;
  outline:none!important;
  box-shadow:inset 3px 0 0 #54b7df!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-option:focus,
body.dark-mode [data-view-panel="my-printer"] .my-printer-option:focus-within,
body.dark-mode [data-view-panel="my-printer"] .my-printer-option:focus-visible{
  outline:none!important;
  border-color:#3a5260!important;
  border-left-color:#54b7df!important;
  box-shadow:inset 3px 0 0 #54b7df!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-option input[type="radio"]{
  accent-color:#54b7df!important;
  outline:none!important;
  box-shadow:none!important;
  border-color:#3a5260!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-option input[type="radio"]:focus,
body.dark-mode [data-view-panel="my-printer"] .my-printer-option input[type="radio"]:focus-visible{
  outline:1px solid #54b7df!important;
  outline-offset:2px!important;
  box-shadow:none!important;
}

/* Inventaire local Windows. */
body.dark-mode [data-view-panel="my-printer"] .my-printer-installed-list{
  background:#0d1b24!important;
  border-color:#324956!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-installed-item{
  background:#14232d!important;
  color:#dbe5ea!important;
  border-color:#324956!important;
  outline:none!important;
  box-shadow:none!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-installed-item:hover{
  background:#1c303c!important;
  border-color:#3a5260!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-installed-item.is-default{
  background:#15352d!important;
  border-color:#397866!important;
  box-shadow:inset 3px 0 0 #48c29d!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-installed-state{
  background:#172832!important;
  color:#c8d7de!important;
  border:1px solid #3a5260!important;
  border-radius:3px!important;
  padding:4px 8px!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-installed-state.is-default{
  background:#15352d!important;
  color:#7bd9bb!important;
  border-color:#397866!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-installed-state.is-installed{
  background:#183040!important;
  color:#9fd4ea!important;
  border-color:#3a6075!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-installed-state:is(.is-error,.is-offline){
  background:#3a2228!important;
  color:#ee8b95!important;
  border-color:#76515a!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-installed-actions .btn-secondary{
  background:#172832!important;color:#dbe5ea!important;border-color:#3a5260!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-installed-actions .btn-secondary:hover{
  background:#1c303c!important;color:#edf4f7!important;border-color:#4b6877!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-installed-actions .btn-danger{
  background:#231b20!important;color:#ee8b95!important;border-color:#76515a!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-installed-actions .btn-danger:hover{
  background:#3a2228!important;color:#f3a2aa!important;border-color:#955b65!important;
}

/* Journal utilisateur : vraie alternance Dark, sans surfaces claires. */
body.dark-mode [data-view-panel="my-printer"] .my-printer-table-wrap,
body.dark-mode [data-view-panel="my-printer"] .my-printer-table{
  background:#0d1b24!important;
  border-color:#324956!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-table thead th{
  background:#172832!important;
  color:#d2dfe5!important;
  border-color:#3a5260!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-table tbody tr:nth-child(odd)>td{
  background:#14232d!important;
  color:#dbe5ea!important;
  border-color:#324956!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-table tbody tr:nth-child(even)>td{
  background:#172832!important;
  color:#dbe5ea!important;
  border-color:#324956!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-table tbody tr:hover>td{
  background:#1c303c!important;
  color:#edf4f7!important;
  border-color:#3a5260!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-table tbody tr:is(.selected,.is-selected,[aria-selected="true"])>td{
  background:#183648!important;
  color:#edf4f7!important;
  border-color:#3a5260!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-log-state{
  background:#172832!important;
  border-color:#3a5260!important;
}

/* Préférence utilisateur : aucune carte claire. */
body.dark-mode [data-view-panel="my-printer"] .my-printer-favorite-card{
  background:#14232d!important;
  color:#dbe5ea!important;
  border-color:#324956!important;
  box-shadow:none!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-favorite-card:hover{
  background:#1c303c!important;
  border-color:#3a5260!important;
}

/* Dernière vérification inter-onglets : incohérences de surfaces claires uniquement. */
body.dark-mode [data-view-panel="parc"] :is(.fleet-select,.fleet-toolbar-details-btn,.fleet-toolbar-reset-btn){
  background:#172832!important;color:#dbe5ea!important;border-color:#3a5260!important;
}
body.dark-mode [data-view-panel="parc"] :is(.fleet-select,.fleet-toolbar-details-btn,.fleet-toolbar-reset-btn):hover{
  background:#1c303c!important;color:#edf4f7!important;border-color:#4b6877!important;
}
body.dark-mode [data-view-panel="topologie"] .topology-pro-canvas-wrap{
  background:#0d1b24!important;color:#dbe5ea!important;
}


/* === MON IMPRIMANTE — DEPLOIEMENT POSTE FINAL ===
   Scope volontairement limité au panneau État de l'application. */
body.dark-mode [data-view-panel="my-printer"] .my-printer-request-panel{
  --mp-deploy-track:#31434d;
  --mp-deploy-track-border:#5b6f79;
  --mp-deploy-fill:#55a8ca;
  --mp-deploy-ok:#48c29d;
  --mp-deploy-muted:#91a6af;
}

body.dark-mode [data-view-panel="my-printer"] .my-printer-deployment-heading{
  align-items:center!important;
  gap:10px!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-deployment-title{
  min-width:0;
  display:flex;
  align-items:center;
  gap:8px;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-deployment-title>.fa-windows{
  flex:0 0 auto;
  color:#55a8ca;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-deployment-title>div{
  min-width:0;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-deployment-target{
  min-width:0;
  max-width:46%;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:6px;
  color:#a9bbc4;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-deployment-target>i{
  flex:0 0 auto;
  color:#55a8ca;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-deployment-target>strong{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#dbe5ea;
}

/* Même géométrie/track que la progression Maintenance : 10px, bordure 1px,
   fond #31434d, remplissage #55a8ca, transition .35s linéaire. */
body.dark-mode [data-view-panel="my-printer"] .my-printer-deployment-progress{
  margin:0 0 8px!important;
  padding:8px 9px!important;
  background:#17262f!important;
  border-color:#3c4e58!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-deployment-progress .my-printer-progress-head{
  min-height:20px!important;
  margin-bottom:5px!important;
  align-items:center!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-progress-percent{
  color:#dbe5ea;
  font-weight:700;
  font-variant-numeric:tabular-nums;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-deployment-progress .my-printer-progress-track{
  display:block!important;
  position:relative!important;
  width:100%!important;
  height:10px!important;
  min-height:10px!important;
  overflow:hidden!important;
  border:1px solid var(--mp-deploy-track-border)!important;
  border-radius:0!important;
  background:var(--mp-deploy-track)!important;
  box-shadow:none!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-deployment-progress .my-printer-progress-fill{
  display:block!important;
  position:absolute!important;
  inset:0 auto 0 0!important;
  height:100%!important;
  min-height:100%!important;
  border:0!important;
  border-radius:0!important;
  background:var(--mp-deploy-fill)!important;
  box-shadow:none!important;
  transition:width .35s linear!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-deployment-progress.is-complete .my-printer-progress-fill{
  background:var(--mp-deploy-ok)!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-progress-state{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  min-height:22px;
  padding-top:4px;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-progress-state .my-printer-progress-label{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#d2dfe5!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-progress-state .my-printer-progress-count{
  flex:0 0 auto;
  color:#a9bbc4!important;
  font-variant-numeric:tabular-nums;
}

/* Étapes compactes : terminé = check vert, courant = point cyan, futur = cercle gris. */
body.dark-mode [data-view-panel="my-printer"] .my-printer-deployment-progress .my-printer-progress-steps{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:4px!important;
  margin-top:3px!important;
  text-align:left!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-deployment-progress .my-printer-progress-steps>span{
  min-width:0;
  display:flex;
  align-items:center;
  gap:5px;
  color:var(--mp-deploy-muted)!important;
  white-space:nowrap;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-deployment-progress .my-printer-progress-steps>span>i{
  flex:0 0 auto;
  width:12px;
  text-align:center;
  color:#708793;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-deployment-progress .my-printer-progress-steps>span>b{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  font-weight:600;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-deployment-progress .my-printer-progress-steps>span.is-done{
  color:#7bd9bb!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-deployment-progress .my-printer-progress-steps>span.is-done>i{
  color:var(--mp-deploy-ok)!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-deployment-progress .my-printer-progress-steps>span.is-active{
  color:#9fd4ea!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-deployment-progress .my-printer-progress-steps>span.is-active>i{
  color:var(--mp-deploy-fill)!important;
}

/* Informations d'état en grille 2x2 pour gagner de la hauteur sans perdre de contenu. */
body.dark-mode [data-view-panel="my-printer"] .my-printer-request-panel>.my-printer-property-list{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  border:1px solid #324956!important;
  background:#14232d!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-request-panel>.my-printer-property-list>.my-printer-property-row{
  min-width:0;
  min-height:48px!important;
  display:flex!important;
  flex-direction:column;
  align-items:flex-start!important;
  justify-content:center;
  gap:3px!important;
  padding:6px 8px!important;
  border-bottom:1px solid #324956!important;
  border-right:1px solid #324956!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-request-panel>.my-printer-property-list>.my-printer-property-row:nth-child(2n){
  border-right:0!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-request-panel>.my-printer-property-list>.my-printer-property-row:nth-last-child(-n+2){
  border-bottom:0!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-request-panel>.my-printer-property-list>.my-printer-property-row>strong{
  width:100%;
  min-width:0;
  overflow-wrap:anywhere;
  text-align:left!important;
}

/* Le message Windows reste compact et directement relié au statut. */
body.dark-mode [data-view-panel="my-printer"] .my-printer-request-panel>.my-printer-info-banner{
  margin-top:7px!important;
  padding:6px 8px!important;
  align-items:flex-start!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-request-panel>.my-printer-info-banner>i{
  margin-top:2px;
  color:#55a8ca!important;
}

@media(max-width:1366px){
  body.dark-mode [data-view-panel="my-printer"] .my-printer-deployment-target{
    max-width:40%;
  }
  body.dark-mode [data-view-panel="my-printer"] .my-printer-deployment-progress .my-printer-progress-steps{
    gap:2px!important;
  }
}


/* === MON IMPRIMANTE — PROGRESSION MAINTENANCE RÉUTILISÉE === */
/* Scope strict : Déploiement poste uniquement. Maintenance n'est pas modifié. */
body.dark-mode [data-view-panel="my-printer"] .my-printer-deployment-heading{
  align-items:center!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-deployment-title{
  display:flex;
  align-items:center;
  gap:8px;
  min-width:0;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-deployment-title>.fa-windows{
  flex:0 0 auto;
  color:#55a8ca;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-deployment-title>div{
  min-width:0;
}

/* Reproduction stricte du composant final Maintenance :
   même structure/classes, mêmes dimensions, couleurs et transition. */
body.dark-mode [data-view-panel="my-printer"] .my-printer-maintenance-progress{
  display:block!important;
  visibility:visible!important;
  flex:0 0 auto!important;
  min-height:52px!important;
  margin:0 0 8px!important;
  padding:8px 10px 7px!important;
  background:#18262f!important;
  border-top:1px solid #3c4e58!important;
  border-bottom:1px solid #3c4e58!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-maintenance-progress .maintenance-progress-head{
  display:flex!important;
  align-items:end!important;
  justify-content:space-between!important;
  gap:12px!important;
  min-height:20px!important;
  margin:0 0 5px!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-maintenance-progress .maintenance-progress-head>div{
  min-width:0!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-maintenance-progress .maintenance-progress-head span{
  display:block!important;
  color:#9fb0b8!important;
  font-size:11.5px!important;
  text-transform:uppercase!important;
  letter-spacing:.04em!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-maintenance-progress .maintenance-progress-head strong{
  display:block!important;
  margin-top:1px!important;
  color:#edf4f7!important;
  font-size:11.5px!important;
  font-weight:600!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-maintenance-progress .maintenance-progress-percent{
  margin:0!important;
  color:#edf4f7!important;
  font:600 11.5px/1 "Segoe UI",Arial,sans-serif!important;
  white-space:nowrap!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-maintenance-progress .maintenance-task-progress{
  display:block!important;
  position:relative!important;
  width:100%!important;
  height:10px!important;
  min-height:10px!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  border:1px solid #5b6f79!important;
  border-radius:0!important;
  background:#31434d!important;
  box-shadow:none!important;
  opacity:1!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-maintenance-progress .maintenance-task-progress-bar{
  display:block!important;
  position:absolute!important;
  inset:0 auto 0 0!important;
  height:100%!important;
  min-height:100%!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:#55a8ca!important;
  box-shadow:none!important;
  opacity:1!important;
  transition:width .35s linear!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-maintenance-progress.is-complete .maintenance-task-progress-bar{
  background:#48c29d!important;
}
body.dark-mode [data-view-panel="my-printer"] .my-printer-maintenance-progress .maintenance-progress-meta{
  min-height:17px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  padding-top:3px!important;
  color:#9fb0b8!important;
  font-size:11.5px!important;
}
body.dark-mode [data-view-panel="my-printer"] #myPrinterVerifiedProgressText{
  font-family:"Cascadia Mono","Consolas",monospace!important;
}



/* MxService Lab - bandeau session DEMO */
.mx-demo-banner{position:sticky;top:0;z-index:9999;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:10px 22px;background:#0d1516;color:#fff;border-bottom:1px solid #293738;box-shadow:0 8px 24px rgba(0,0,0,.16)}
.mx-demo-banner>div:first-child{display:flex;flex-direction:column;gap:2px}.mx-demo-banner strong{font-size:13px}.mx-demo-banner span{font-size:10px;color:#aebbb8}.mx-demo-time{display:flex;align-items:center;gap:10px}.mx-demo-time small{font-size:8px;letter-spacing:.14em;color:#5bdec7;font-weight:800}.mx-demo-time b{min-width:58px;text-align:center;padding:6px 9px;border-radius:9px;background:linear-gradient(90deg,#57dcc7,#b9f47a);color:#07100e;font-size:14px}
@media(max-width:700px){.mx-demo-banner{padding:8px 12px}.mx-demo-banner span{display:none}.mx-demo-banner strong{font-size:11px}}
