/* Espace production du staff (static/production-ui.js, lot 8, vue 11) : mise en page seulement ; les contrôles sont
   ceux de la bibliothèque (components.css). Jetons de brand/tokens.css uniquement, clair et sombre. */
.prod{display:flex;flex-direction:column;gap:var(--space-4);container-type:inline-size;container-name:prod;min-width:0}
.prod-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-3)}
.prod-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:var(--space-5);align-items:start}
.prod-grid>*{min-width:0}
.prod-list{padding:0;overflow:hidden}
.prod-lead{display:grid;place-items:center;width:var(--space-10);flex:none;color:var(--blue)}
.prod-meta{display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-1)}
.prod-fiche{display:flex;flex-direction:column;gap:var(--space-4);min-width:0}
.prod-title{font-size:var(--fs-24);line-height:1.2;margin:0;overflow-wrap:anywhere}
.prod-meta-line{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-2);margin:var(--space-1) 0 0;color:var(--text-2);font-size:var(--fs-14)}
.prod-sub{font-size:var(--fs-16);margin:0 0 var(--space-3);display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}
.prod-two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-5);align-items:start}
.prod-two>*{min-width:0}
.prod-steps{position:relative;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;margin-bottom:var(--space-3)}
.prod-seg{max-width:100%;overflow-x:auto}
.prod-specs{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--space-1) var(--space-4);font-size:var(--fs-14);margin:0 0 var(--space-3)}
.prod-specs dt{color:var(--text-2)}
.prod-specs dd{margin:0;overflow-wrap:anywhere}
.prod-acts{display:flex;gap:var(--space-2);flex-wrap:wrap}
.prod-acts+.prod-sub{margin-top:var(--space-5)}
.prod-msg{font-size:var(--fs-14);color:var(--text-2);min-height:1.2em;margin:0}
.prod-msg:empty{display:none}
.prod-prev{display:flex;flex-wrap:wrap;gap:var(--space-4);justify-content:center;background:var(--bg-2);border-radius:var(--radius-md);padding:var(--space-4)}
.prod-face{margin:0;display:flex;flex-direction:column;align-items:center;gap:var(--space-2);flex:1 1 calc(var(--space-24) * 1.8);max-width:calc(var(--space-24) * 2.7)}
.prod-face--badge{flex:0 1 calc(var(--space-24) * 1.2)}
.prod-face .support-face{width:100%;margin:0}
.prod-face figcaption{font-weight:600}
.prod-help{margin:var(--space-2) 0 var(--space-3)}
.prod-sheet{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3);margin-top:var(--space-3)}
.prod-sheet[hidden]{display:none}
.prod-files{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.prod-file{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:var(--space-3);align-items:center;padding:var(--space-2) 0;border-top:1px solid var(--line);font-size:var(--fs-14)}
.prod-file:first-child{border-top:0}
.prod-file code{display:block;font-size:var(--fs-12);overflow-wrap:anywhere}
.prod-file small{display:block;color:var(--text-2)}
.prod-form{display:flex;flex-direction:column;gap:var(--space-4);margin-top:var(--space-3)}
.prod-form-error{color:var(--error);font-size:var(--fs-14);margin:0}
.prod-form-error:empty{display:none}
.prod-mix{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-3);max-height:40vh;overflow:auto}
.prod-mix li{display:grid;grid-template-columns:minmax(0,1fr) calc(var(--space-24) * 1.1);gap:var(--space-3);align-items:end}
@container prod (max-width:1000px){
  .prod-grid,.prod-two{grid-template-columns:minmax(0,1fr)}
  .prod-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@container prod (max-width:520px){
  .prod-kpis .hl-kpi__value{font-size:var(--fs-24)}
  /* AV-081 : ligne de commande en deux rangées sur téléphone (client, puis étape), jamais serrée à côté de la pastille. */
  .prod-list .hl-row__main{flex-wrap:wrap}
  .prod-list .hl-row__text{flex:1 1 calc(100% - var(--space-10) - var(--space-3))}
  .prod-meta{flex:1 1 100%;flex-direction:row;flex-wrap:wrap;align-items:center;padding-inline-start:calc(var(--space-10) + var(--space-3))}
  .prod-mix li,.prod-sheet{grid-template-columns:minmax(0,1fr)}
}
