/* =====================================================================
   1-gest_plans — charte Plans Sécurité
   Barlow Condensed (titres) + Inter (texte), encre / rouge, rayures.
   ===================================================================== */

:root{
  --encre:#1B2733; --gris:#5B6770; --fond:#EEF0F2; --blanc:#fff;
  --rouge:#C8352B; --rouge-f:#A82920; --corail:#FF6B5E;
  --vert:#2E7D4F; --bleu:#2A5D8F; --orange:#B25E00; --ligne:#D8DCE0;
}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:Inter,system-ui,sans-serif;background:var(--fond);color:var(--encre);line-height:1.5}

/* ---- Barre de navigation ------------------------------------------- */
.nav{background:var(--encre);color:#fff;padding:0 22px;display:flex;align-items:center;
     height:56px;gap:20px;flex-wrap:wrap}
.nav .marque{font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:20px;
             text-transform:uppercase;letter-spacing:.09em;white-space:nowrap;
             display:flex;flex-direction:column;line-height:1.1}
.nav .marque a{font-family:Inter,sans-serif;font-weight:400;font-size:10.5px;
               text-transform:lowercase;letter-spacing:0;color:#8A939B;
               padding:2px 0 0;margin:0}
.nav .marque a:hover{color:#fff;background:none}
.nav .liens{display:flex;gap:4px;flex-wrap:wrap}
.nav a{color:#B9C2C9;text-decoration:none;font-size:14px;padding:8px 14px;border-radius:6px}
.nav a:hover{color:#fff;background:rgba(255,255,255,.07)}
.nav a.actif{background:rgba(255,255,255,.12);color:#fff}
.nav .droite{margin-left:auto;display:flex;align-items:center;gap:12px;font-size:13px;color:#B9C2C9}
.nav .droite a{padding:6px 10px}

.bande{height:4px;background:var(--rouge)}

.page{max-width:1400px;margin:0 auto;padding:24px 18px 40px}
.page.etroite{max-width:900px}
/* Le kanban a besoin de toute la largeur : les marges d'une page de
   lecture n'ont pas de sens pour un tableau qui défile. */
.page.large{max-width:100%;padding:20px 12px 30px}

h1{font-family:'Barlow Condensed',sans-serif;font-size:28px;text-transform:uppercase;
   letter-spacing:.01em;margin-bottom:2px}
h2{font-family:'Barlow Condensed',sans-serif;font-size:22px;text-transform:uppercase;margin:26px 0 12px}
h3{font-family:'Barlow Condensed',sans-serif;font-size:19px;text-transform:uppercase;margin:0 0 12px}
.sub{color:var(--gris);font-size:13.5px;margin-bottom:20px}

/* ---- Boutons -------------------------------------------------------- */
.btn{padding:11px 20px;background:var(--rouge);color:#fff;border:none;border-radius:6px;
     font-size:14px;font-weight:600;font-family:inherit;cursor:pointer;
     text-decoration:none;display:inline-block}
.btn:hover{background:var(--rouge-f)}
.btn.ghost{background:#fff;color:var(--encre);border:1px solid var(--ligne)}
.btn.ghost:hover{background:var(--fond)}
.btn.danger{background:#8B1F17}
.btn.petit{padding:6px 12px;font-size:12.5px}

/* ---- Formulaires ---------------------------------------------------- */
label{display:block;font-size:12px;font-weight:600;color:var(--gris);text-transform:uppercase;
      letter-spacing:.05em;margin:15px 0 6px}
input[type=text],input[type=email],input[type=password],input[type=number],
input[type=time],input[type=file],textarea,select{
  width:100%;padding:10px 12px;border:1px solid var(--ligne);border-radius:6px;
  font-size:15px;font-family:inherit;background:#fff}
input:focus,textarea:focus,select:focus{outline:2px solid var(--encre);outline-offset:1px;border-color:var(--encre)}
textarea{min-height:70px;resize:vertical}
.aide{font-size:12px;color:var(--gris);margin-top:4px;font-weight:400;text-transform:none;letter-spacing:0}
.champs{display:flex;gap:14px;flex-wrap:wrap}
.champs>*{flex:1;min-width:140px}
.coche{display:flex;align-items:flex-start;gap:9px;margin:16px 0;font-size:14px}
.coche input{width:auto;margin-top:3px}
.coche label{margin:0;font-weight:400;text-transform:none;letter-spacing:0;font-size:14px;color:var(--encre)}

/* ---- Blocs ---------------------------------------------------------- */
.bloc{background:#fff;border-radius:10px;padding:22px;
      box-shadow:0 2px 10px rgba(27,39,51,.07);margin-bottom:20px}
fieldset{border:1px solid var(--ligne);border-radius:8px;padding:6px 16px 18px;margin-top:18px}
legend{font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:17px;
       text-transform:uppercase;padding:0 8px}

/* ---- Messages ------------------------------------------------------- */
.alerte,.succes,.info,.attention{padding:12px 14px;border-radius:0 6px 6px 0;
     margin-bottom:16px;font-size:13.5px;line-height:1.5}
.alerte{background:#FBE4E2;border-left:3px solid var(--rouge)}
.succes{background:#E0F0E6;border-left:3px solid var(--vert)}
.info{background:#F0F4F8;border-left:3px solid var(--encre);color:var(--gris)}
.attention{background:#FFF3E0;border-left:3px solid var(--orange);color:#8A4A00}

/* ---- Tableaux ------------------------------------------------------- */
table.liste{width:100%;border-collapse:collapse;background:#fff;border-radius:10px;
            overflow:hidden;box-shadow:0 2px 10px rgba(27,39,51,.07)}
table.liste th{background:#F7F8F9;font-size:11px;text-transform:uppercase;letter-spacing:.05em;
               color:var(--gris);text-align:left;padding:11px 14px}
table.liste td{padding:12px 14px;font-size:14px;border-top:1px solid var(--ligne)}
table.liste tr.cliquable:hover td{background:#FAFBFB;cursor:pointer}
.vide{color:#93A0A8;font-size:13.5px;padding:26px;text-align:center}

/* ---- Pastilles et étiquettes ---------------------------------------- */
.et{display:inline-block;font-size:10px;font-weight:600;padding:2px 7px;border-radius:10px;
    background:var(--fond);color:var(--gris);white-space:nowrap}
.et.nouveau{background:var(--rouge);color:#fff}
.et.devis{background:#FFF3E0;color:var(--orange);border:1px solid #F0C98A}
.et.urgent{background:#8B1F17;color:#fff}
.et.pi{background:#FBE4E2;color:var(--rouge)}
.et.pe{background:#E0F0E6;color:var(--vert)}
.et.ch{background:#E3ECF5;color:var(--bleu)}
.et.attente{background:#FFF3E0;color:var(--orange)}
.et.relance{background:#8B1F17;color:#fff}
.et.actif{background:#E0F0E6;color:var(--vert)}
.et.invite{background:#FFF3E0;color:var(--orange)}
.et.susp{background:#F1F2F4;color:var(--gris)}

/* ---- Kanban --------------------------------------------------------- */
.tableau{display:flex;gap:9px;overflow-x:auto;padding-bottom:14px;align-items:flex-start}
.ascenseur-haut{overflow-x:auto;overflow-y:hidden;height:14px;margin-bottom:6px;display:none}
.ascenseur-haut>div{height:1px}
.colonne{background:#E2E5E8;border-radius:8px;min-width:210px;max-width:210px;padding:7px;flex-shrink:0}
.colonne>h2{font-family:'Barlow Condensed',sans-serif;font-size:13.5px;text-transform:uppercase;
            color:var(--gris);margin:0 0 9px;padding:2px 4px;display:flex;
            justify-content:space-between;align-items:center;gap:6px}
.colonne.attente-client>h2{color:var(--orange)}
.colonne .compteur{background:#fff;border-radius:10px;padding:0 8px;font-size:12px;
                   line-height:20px;font-family:Inter}
.zone{min-height:44px;border-radius:6px}
.zone.survol{background:#CFD5DA;outline:2px dashed #A9B2B9}

.fiche{background:#fff;border-radius:6px;padding:9px 10px;margin-bottom:7px;
       box-shadow:0 1px 2px rgba(27,39,51,.15);cursor:grab;border-left:4px solid transparent;
       text-decoration:none;color:inherit;display:block}
.fiche:active{cursor:grabbing}
.fiche:hover{background:#FAFBFB}
.fiche.deplacee{opacity:.35}
.fiche.neuve{border-left-color:var(--rouge)}
.fiche.relancee{border-left-color:#8B1F17;background:#FFF7F6}
.fiche .titre{font-weight:600;font-size:13px;line-height:1.35}
.fiche .societe{font-size:11px;color:var(--gris);margin-top:2px}
.fiche .etiquettes{display:flex;gap:4px;margin-top:6px;flex-wrap:wrap}
.fiche .rappel{font-size:11px;color:var(--orange);background:#FFF3E0;border-radius:4px;
               padding:4px 7px;margin-top:7px;font-weight:600}
.fiche .rappel.rouge{color:#8B1F17;background:#FBE4E2}
.fiche .rappel.vert{color:#1E5C3A;background:#E0F0E6}
.fiche.validee{border-left-color:var(--vert);background:#F7FBF8}
.et.bc{background:#FFF3E0;color:var(--orange);border:1px solid #F0C98A}
.fiche .date{font-size:10.5px;color:#8A939B;margin-top:5px}

.filtres{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end;margin-bottom:18px}
.filtres label{margin:0 0 5px}
.filtres select{min-width:190px}

/* ---- Zone de dépôt : toute la hauteur de la colonne ------------------ */
.colonne{display:flex;flex-direction:column;min-height:180px}
.zone{flex:1;min-height:120px;border-radius:6px;padding-bottom:8px;transition:background .12s}
.colonne.cible{background:#CFD5DA}
.colonne.cible .zone{background:rgba(255,255,255,.35)}
.zone-vide{border:2px dashed #B9C2C9;border-radius:6px;padding:18px 10px;text-align:center;
           font-size:12px;color:#8A939B;margin-top:4px}
.colonne.cible .zone-vide{border-color:var(--encre);color:var(--encre)}
.trait-depot{height:3px;background:var(--rouge);border-radius:2px;margin:5px 2px;
             box-shadow:0 0 0 2px rgba(200,53,43,.2)}
/* Pendant un déplacement, les cartes ne réagissent plus : pas d'effet
   « remplacement » quand on survole une fiche existante. */
body.en-deplacement .fiche{pointer-events:none}
body.en-deplacement .fiche:hover{background:#fff}

/* ---- Colonne « À facturer » ----------------------------------------- */
.colonne.facturer{background:#DCE9E1}
.colonne.facturer>h2{color:var(--vert)}
.fiche.facturer{border-left-color:var(--vert)}
.recap-fact{background:#F2F7F4;border:1px solid #C9DED3;border-radius:5px;
            padding:6px 8px;margin-top:7px;font-size:11px;color:#245F3C;line-height:1.55}
.recap-fact b{color:var(--vert)}
.jours{font-size:11px;margin-top:6px;font-weight:600;color:var(--gris)}
.jours.tard{color:#8B1F17}
.btn-archiver{margin-top:8px;width:100%;padding:6px;font-size:12px;background:#fff;
              border:1px solid var(--vert);color:var(--vert);border-radius:5px;
              cursor:pointer;font-family:inherit;font-weight:600}
.btn-archiver:hover{background:var(--vert);color:#fff}

/* ---- Caisses (colonne En impression) --------------------------------- */
.zone-caisses{display:flex;flex-direction:column;gap:0}

/* Zone haute : commandes non passées, on peut encore y déposer */
.caisses-prepa{padding-bottom:4px}
.caisses-titre{font-size:10px;text-transform:uppercase;letter-spacing:.06em;
               color:var(--bleu);font-weight:700;padding:2px 2px 4px}

/* Trait de séparation net entre les deux natures */
.caisses-separateur{position:relative;text-align:center;margin:18px 0 12px}
.caisses-separateur::before{content:"";position:absolute;top:50%;left:0;right:0;
                            height:2px;background:var(--encre);opacity:.25}
.caisses-separateur span{position:relative;background:#E2E5E8;padding:0 8px;
  font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--gris);font-weight:700}

.caisse{background:#fff;border:2px solid var(--bleu);border-radius:8px;padding:9px;
        margin-bottom:10px;box-shadow:0 2px 6px rgba(27,39,51,.16)}
/* Trait fin entre deux commandes passées : elles sont indépendantes. */
.caisses-passees .caisse + .caisse{margin-top:14px}
.caisses-passees .caisse + .caisse::before{content:"";display:block;height:1px;
  background:#C5CAD0;margin:-14px 4px 12px}
.caisse.survol{background:#E3ECF5;border-style:dashed;box-shadow:0 0 0 3px rgba(42,93,143,.18);
                position:relative}
/* La cible du dépôt doit être explicite : sans cela on ne sait pas si
   l'on ajoute à la commande ou si l'on en crée une autre. */
.caisse.survol::after{content:"Déposer ici";position:absolute;inset:0;
  display:flex;align-items:center;justify-content:center;
  background:rgba(42,93,143,.9);color:#fff;border-radius:5px;
  font-size:13px;font-weight:700;letter-spacing:.02em;pointer-events:none}
.caisse.etat-valide{border-color:var(--vert);background:#F7FBF8}
.caisse.etat-expedie{border-color:var(--gris);background:#FAFBFB;opacity:.8}

.caisse-tete{display:flex;justify-content:space-between;align-items:center;gap:6px;
             font-size:12.5px;font-weight:700;margin-bottom:7px}
.caisse-tete a{color:var(--bleu);text-decoration:none}
.caisse-tete a:hover{text-decoration:underline}
.caisse.etat-valide .caisse-tete a,
.caisse.etat-expedie .caisse-tete a{color:var(--vert)}
.caisse-etat{font-weight:400;font-size:10px;color:var(--gris);text-transform:uppercase;
             letter-spacing:.04em}

.caisse-dossier{font-size:11.5px;padding:5px 7px;background:var(--fond);
                border-radius:4px;margin-bottom:4px;line-height:1.35}
.caisse-dossier .ville{color:var(--gris);font-size:10.5px}
.caisse-dossier .ville::before{content:" · "}

.caisse-colis{margin-top:6px;font-size:11px}
.caisse-colis a{color:var(--bleu);text-decoration:none;display:block;margin-top:2px}
.caisse-colis a:hover{text-decoration:underline}

.caisse-pied{font-size:10.5px;color:var(--gris);margin-top:6px;padding-top:5px;
             border-top:1px dashed var(--ligne)}
.caisse-pied.validee{color:var(--gris);font-weight:600}
.caisse-pied a{color:var(--bleu);font-weight:600;text-decoration:none}
.caisse-pied a:hover{text-decoration:underline}

/* Saisie directe du n° de colis, sans ouvrir la fiche */
.caisse-action{display:flex;gap:4px;margin-top:7px}
.caisse-action input[type=text]{flex:1;padding:5px 7px;font-size:11.5px;min-width:0}
.caisse-action .btn.petit{padding:5px 9px;font-size:12px}
.btn-livre{width:100%;padding:6px;font-size:11.5px;font-weight:600;font-family:inherit;
           background:#fff;border:1px solid var(--vert);color:var(--vert);
           border-radius:5px;cursor:pointer}
.btn-livre:hover{background:var(--vert);color:#fff}

/* ---- Colonne « Devis » ----------------------------------------------- */
.colonne.devis{background:#F4EDE1}
.colonne.devis>h2{color:var(--orange)}
.fiche.devis{border-left-color:var(--orange)}
.etat-devis{font-size:11px;font-weight:600;margin-top:7px;padding:4px 7px;border-radius:4px;
            background:#FFF3E0;color:var(--orange)}
.etat-devis.etat-propose{background:#E3ECF5;color:var(--bleu)}
.etat-devis.etat-confirme{background:#E0F0E6;color:var(--vert)}
.etat-devis.etat-refuse{background:#F1F2F4;color:var(--gris)}
.etat-devis.etat-modif_demandee{background:#FBE4E2;color:var(--rouge)}

/* ---- Filtre urgent --------------------------------------------------- */
.bascule{display:inline-flex;align-items:center;gap:7px;background:#fff;
         border:1px solid var(--ligne);border-radius:20px;padding:8px 15px;
         font-size:13.5px;cursor:pointer;text-decoration:none;color:var(--encre);
         font-weight:600;white-space:nowrap}
.bascule:hover{border-color:var(--encre)}
.bascule.on{background:#8B1F17;border-color:#8B1F17;color:#fff}
.bascule.on.bleu{background:var(--bleu);border-color:var(--bleu)}

/* ---- Progression (suivi client) ------------------------------------- */
.etapes{display:flex;margin:16px 0 4px}
.etape{flex:1;text-align:center;position:relative;font-size:10.5px;color:var(--gris)}
.etape::before{content:"";position:absolute;top:9px;left:-50%;width:100%;height:3px;background:var(--ligne)}
.etape:first-child::before{display:none}
.pt{width:20px;height:20px;border-radius:50%;background:#fff;border:3px solid var(--ligne);
    margin:0 auto 5px;position:relative;z-index:1}
.etape.fait .pt{background:var(--vert);border-color:var(--vert)}
.etape.fait::before{background:var(--vert)}
.etape.cours .pt{border-color:var(--rouge);background:var(--rouge);box-shadow:0 0 0 4px rgba(200,53,43,.18)}
.etape.cours{color:var(--encre);font-weight:600}
.etape.cours::before{background:var(--vert)}

/* ---- Lignes PI / PE / Chambres -------------------------------------- */
.ligne-bloc{display:flex;gap:12px;align-items:flex-end;margin-top:10px}
.ligne-bloc .nb{max-width:95px}
.ligne-bloc label{margin-top:0}
.ligne-bloc .sup{background:none;border:none;color:var(--gris);font-size:19px;cursor:pointer;padding:8px}
.ligne-bloc .sup:hover{color:var(--rouge)}
.plus{margin-top:12px;background:#fff;border:1px dashed var(--ligne);color:var(--gris);
      border-radius:6px;padding:9px 15px;font-size:13px;font-weight:600;font-family:inherit;cursor:pointer}
.plus:hover{border-color:var(--encre);color:var(--encre)}

details.repliable>summary{cursor:pointer;font-family:'Barlow Condensed',sans-serif;font-weight:700;
     font-size:17px;text-transform:uppercase;padding:8px 0;color:var(--encre);list-style:none}
details.repliable>summary::-webkit-details-marker{display:none}
details.repliable>summary::before{content:"\25B6  ";color:var(--rouge);font-size:11px}
details.repliable[open]>summary::before{content:"\25BC  ";}

/* ---- Connexion ------------------------------------------------------ */
.centre{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px}
.carte{background:#fff;border-radius:10px;box-shadow:0 6px 30px rgba(27,39,51,.12);
       width:100%;max-width:400px;overflow:hidden}
.carte .bande{height:5px;background:var(--rouge)}
.carte .corps{padding:32px}
.logo{font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:26px;
      text-transform:uppercase;letter-spacing:.09em;line-height:1.1}
.sous-logo{font-size:13px;color:var(--gris);margin-top:4px}

/* ---- Zones de dépôt de fichiers -------------------------------------- */
.depot{border:2px dashed var(--ligne);border-radius:8px;padding:18px 16px;
       text-align:center;cursor:pointer;background:#FCFCFD;transition:background .12s}
.depot:hover{border-color:var(--encre);background:#fff}
.depot.survol{border-color:var(--rouge);background:#FBE4E2;border-style:solid}
.depot.rempli{border-style:solid;border-color:var(--vert);background:#F7FBF8}
.depot input[type=file]{display:none}
.depot-titre{font-weight:600;font-size:14px}
.depot-aide{font-size:12px;color:var(--gris);margin-top:4px}
.depot-liste{margin-top:10px}
.depot-fichier{font-size:13px;background:#fff;border:1px solid var(--ligne);
               border-radius:5px;padding:6px 10px;margin-top:5px;text-align:left}
.depot-poids{color:var(--gris);font-size:11.5px}

/* Les deux dépôts mis en valeur au formulaire de commande */
.depot.majeur{padding:24px 18px;border-width:2px;border-color:var(--rouge)}
.depot.majeur .depot-titre{font-family:'Barlow Condensed',sans-serif;font-size:17px;
                           text-transform:uppercase;letter-spacing:.02em}
.depot.majeur.rempli{border-color:var(--vert)}

/* ---- Zoom envoi : les trois dernières colonnes en grand -------------- */
.tableau.zoom .colonne{min-width:420px;max-width:420px}
.tableau.zoom .caisse-dossier{font-size:12.5px;padding:7px 9px}
.tableau.zoom .caisse-tete{font-size:14px}
.tableau.zoom .fiche .titre{font-size:14px}

/* ---- Barres de filtres ----------------------------------------------
   Chaque champ garde une largeur minimale, sinon les listes déroulantes
   se tassent et le bouton passe par-dessus. Le bouton ne s'étire jamais. */
.filtres{align-items:flex-end}
.filtres>div{min-width:145px}
.filtres>div.f-bouton{min-width:0;flex:0 0 auto}
.filtres>div.f-large{min-width:220px;flex:2}
.filtres>div.f-petit{min-width:110px;max-width:150px;flex:0 0 auto}
.filtres button, .filtres .btn{white-space:nowrap}

/* ---- Fiche dossier client (compacte) --------------------------------- */
.dossier-tete{display:flex;gap:24px;align-items:flex-start;flex-wrap:wrap}
.dossier-ident{min-width:210px;flex:0 0 auto}
.dossier-ident .titre{font-family:'Barlow Condensed',sans-serif;font-size:19px;
  font-weight:700;text-transform:uppercase;line-height:1.2}
.dossier-tete .etapes{flex:1;min-width:280px;margin:2px 0 0}
.dossier-tete .etape{font-size:10px}
.dossier-tete .pt{width:16px;height:16px;border-width:3px}
.dossier-tete .etape::before{top:7px}

.dossier-actions{display:flex;gap:22px;flex-wrap:wrap;margin-top:14px;
                 padding-top:12px;border-top:1px solid var(--ligne)}
.dossier-actions>details{flex:0 0 auto}
.dossier-actions>details[open]{flex:1 1 100%}
.dossier-actions>details>summary{padding:0}
.suivi-colis{background:#F0F4F8;border-radius:6px;padding:9px 12px;
             margin-top:10px;font-size:13px}
.suivi-colis a{color:var(--bleu);font-weight:600;text-decoration:none}
.suivi-colis a:hover{text-decoration:underline}

/* ---- Dossiers terminés (dépliables) ---------------------------------- */
.dossier-fini{border:1px solid var(--ligne);border-radius:8px;margin-bottom:8px;background:#fff}
.dossier-fini>summary{cursor:pointer;padding:12px 14px;list-style:none;
  display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.dossier-fini>summary::-webkit-details-marker{display:none}
.dossier-fini>summary::before{content:"\25B6";color:var(--gris);font-size:10px;margin-right:8px}
.dossier-fini[open]>summary::before{content:"\25BC"}
.dossier-fini>summary:hover{background:#FAFBFB}
.dossier-fini .titre-fini{font-weight:600;font-size:14px;flex:1}
.dossier-fini .contenu-fini{padding:4px 14px 16px;border-top:1px solid var(--ligne)}

/* ---- Réglages : liste de liens --------------------------------------- */
.reglages{display:flex;flex-direction:column;gap:9px}
.reglage{display:flex;align-items:center;gap:12px;background:#fff;
         border:1px solid var(--ligne);border-radius:10px;padding:14px 16px;
         text-decoration:none;color:inherit;box-shadow:0 1px 3px rgba(27,39,51,.06)}
.reglage:hover{border-color:var(--encre);box-shadow:0 2px 8px rgba(27,39,51,.1)}
.reglage.inactif{opacity:.6;cursor:default}
.reglage.inactif:hover{border-color:var(--ligne);box-shadow:0 1px 3px rgba(27,39,51,.06)}
.reglage-corps{flex:1;min-width:0}
.reglage-titre{display:block;font-family:'Barlow Condensed',sans-serif;font-weight:700;
               font-size:18px;text-transform:uppercase;letter-spacing:.01em}
.reglage-texte{display:block;font-size:12.5px;color:var(--gris);margin-top:2px}
.reglage-fleche{color:var(--gris);font-size:16px}
.reglage:hover .reglage-fleche{color:var(--rouge)}

/* ---- Pied de page --------------------------------------------------- */
.pied{text-align:center;font-size:11.5px;color:#93A0A8;padding:18px 16px 30px}
.pied b{color:var(--gris);font-weight:600}
.pied-mention{display:inline-block;margin-top:4px;font-size:11px;color:#A6B0B7}

@media(max-width:640px){
  .page{padding:14px}
  .nav{height:auto;padding:10px 14px}
  .champs,.ligne-bloc{flex-wrap:wrap}
  .etape{font-size:9px}
}

/* =====================================================================
   4.7 — Écran de dépôt refondu
   ===================================================================== */

/* Place pour la barre collante en bas de page. */
.depot-page{padding-bottom:110px}

/* Blocs numérotés. */
.bloc>h3{display:flex;align-items:center;gap:9px}
.num{width:22px;height:22px;border-radius:50%;background:var(--encre);color:#fff;
     font-family:Inter,sans-serif;font-size:12px;font-weight:600;
     display:inline-flex;align-items:center;justify-content:center;flex:none}

/* Contact du dossier : discret, en tête du premier bloc. */
.contact-haut{display:flex;align-items:center;gap:10px;flex-wrap:wrap;
  padding-bottom:12px;margin-bottom:4px;border-bottom:1px solid var(--fond)}
.contact-haut label{margin:0;font-size:11px;white-space:nowrap}
.contact-haut select{flex:1;min-width:220px;font-size:13px;padding:6px 9px}
.contact-haut .aide{margin:0;flex-basis:100%}

/* Type de demande : deux boutons plutôt qu'une liste. */
.segment{display:flex;gap:10px;margin-top:6px}
.segment input{position:absolute;opacity:0;pointer-events:none}
.segment label{flex:1;margin:0;text-transform:none;letter-spacing:0;font-size:14px;
  font-weight:600;color:var(--encre);border:2px solid var(--ligne);border-radius:8px;
  padding:12px 14px;cursor:pointer;background:#fff;text-align:left}
.segment label span{display:block;font-weight:400;font-size:12px;color:var(--gris);margin-top:2px}
.segment label:hover{border-color:var(--encre)}
.segment input:checked+label{border-color:var(--rouge);background:#FDF3F2}
.segment input:focus-visible+label{outline:2px solid var(--encre);outline-offset:1px}

/* Nom des plans / ville : le champ que l'œil doit trouver en premier. */
.vedette{background:#FFF6E5;border:1px solid #E8C98A;border-radius:8px;padding:14px 16px;margin-top:6px}
.vedette label{margin-top:0}
.vedette input{background:#fff;border-color:#D9B978}
.vedette input:focus{border-color:var(--orange)}

/* Zones de dépôt secondaires, alignées sur une ligne. */
.depot-secondaires{display:flex;gap:12px;margin-top:12px;flex-wrap:wrap}
.depot-secondaires>*{flex:1;min-width:200px}
.depot.mini{padding:12px 14px}
.depot.mini .depot-titre{font-size:13px}

/* Sous-blocs de quantités : PI, PE et chambres traités à l'identique. */
.sousbloc{border:1px solid var(--ligne);border-radius:8px;padding:14px 16px;
  margin-top:12px;background:#FCFCFD}
.sousbloc h4{font-family:'Barlow Condensed',sans-serif;font-size:16px;text-transform:uppercase;
  font-weight:600;display:flex;align-items:center;gap:8px}
details.sousbloc>summary{font-family:'Barlow Condensed',sans-serif;font-size:16px;
  text-transform:uppercase;font-weight:600;cursor:pointer;list-style:none;
  display:flex;align-items:center;gap:8px}
details.sousbloc>summary::-webkit-details-marker{display:none}
details.sousbloc>summary::before{content:'▸';color:var(--gris)}
details.sousbloc[open]>summary::before{content:'▾'}
.pastille{font-size:11px;background:var(--encre);color:#fff;border-radius:4px;
  padding:2px 7px;font-family:Inter,sans-serif;font-weight:500;letter-spacing:0}
.pastille.vide{background:var(--ligne);color:var(--gris)}

/* Barre collante : compteur, total et envoi toujours visibles. */
.barre-depot{position:fixed;left:0;right:0;bottom:0;background:#fff;
  border-top:1px solid var(--ligne);box-shadow:0 -3px 14px rgba(27,39,51,.10);z-index:40}
.barre-depot .in{max-width:900px;margin:0 auto;padding:12px 18px;
  display:flex;align-items:center;gap:18px}
.barre-depot .rec{font-size:13px;color:var(--gris);flex:1}
.barre-depot .rec b{color:var(--encre);font-size:15px}
.barre-depot .tot{text-align:right;line-height:1.25}
.barre-depot .tot small{display:block;font-size:11.5px;color:var(--gris);
  text-transform:uppercase;letter-spacing:.05em}
.barre-depot .tot b{font-size:21px;color:var(--vert);font-family:'Barlow Condensed',sans-serif}
.detail-lien{font-size:12px;color:var(--bleu);cursor:pointer;text-decoration:underline}
#detail{max-width:900px;margin:0 auto;padding:0 18px 12px;font-size:13px;
  display:none;max-height:40vh;overflow-y:auto}
#detail table{width:100%;border-collapse:collapse}
#detail td{padding:4px 0;border-bottom:1px solid var(--fond)}

@media(max-width:640px){
  .segment{flex-direction:column}
  .barre-depot .in{gap:10px;padding:10px 12px}
  .barre-depot .tot b{font-size:18px}
}

/* =====================================================================
   4.7 — Ascenseur horizontal du kanban
   Épais et stable : la poignée change de couleur au survol, jamais
   de taille — on ne perd pas la prise en cours de glissement.
   ===================================================================== */
.ascenseur-haut{height:18px}
.ascenseur-haut{scrollbar-width:auto;scrollbar-color:#8A939B #DDE1E5}
.ascenseur-haut::-webkit-scrollbar{height:18px}
.ascenseur-haut::-webkit-scrollbar-track{background:#DDE1E5;border-radius:9px}
.ascenseur-haut::-webkit-scrollbar-thumb{background:#8A939B;border-radius:9px;
  border:3px solid #DDE1E5}
.ascenseur-haut::-webkit-scrollbar-thumb:hover{background:var(--encre)}

/* Celui du bas ferait doublon : le défilement reste, la barre disparaît. */
.tableau{scrollbar-width:none}
.tableau::-webkit-scrollbar{height:0}

/* Dossier bloqué faute de bon de commande. */
.fiche.sans-bc{border-left-color:var(--orange)}
.et.bc-bloque{background:#FFF3E0;color:var(--orange);font-weight:600}
