/* Charte Archipel Group — Profils clients Promark */
:root{
  --navy:#1B2A4A; --orange:#E8630A; --porcelaine:#FDFDFC; --filet:#DDE3EC;
  --gris:#6B7280; --encre:#222222; --lavis:#F4F6FA; --lavis-orange:#FDEEE2;
  --vert:#1F7A5A;
}
*{box-sizing:border-box}
body{margin:0;background:var(--porcelaine);color:var(--encre);
     font-family:'Poppins',Arial,sans-serif;font-size:14px;line-height:1.55;
     -webkit-font-smoothing:antialiased}

/* Masthead — même dessin que le front des enquêtes */
.masthead{background:var(--navy);color:#fff;padding:20px 22px 16px;position:relative}
.masthead::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--orange)}
.masthead .inner{max-width:1080px;margin:0 auto;display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap}
.brand{font-size:10px;letter-spacing:.3em;text-transform:uppercase;font-weight:700;color:#F2A868;margin-bottom:8px}
.masthead h1{margin:0;font-family:'Poppins',Arial,sans-serif;font-weight:500;font-size:17px;line-height:1.25}
.masthead .qui{font-size:11.5px;color:#8E99AE;padding-bottom:2px}
.masthead .qui a{color:#8E99AE}

.wrap{max-width:1080px;margin:28px auto 80px;padding:0 18px}
.wrap.etroit{max-width:420px;margin-top:64px}

/* Intertitres de section */
.intertitre{font-size:10px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;
            color:var(--gris);margin:0 0 10px}
.intertitre.orange{color:var(--orange)}

/* Blocs */
.bloc{background:#fff;border:1px solid var(--filet);border-radius:2px;padding:22px 24px}
.bloc + .bloc{margin-top:14px}
.encadre{background:var(--lavis);border:1px solid var(--filet);border-radius:2px;padding:14px 16px}
.encadre.orange{background:var(--lavis-orange);border-color:#F2C9A8}

/* Formulaires */
label{display:block;font-size:10px;font-weight:700;letter-spacing:.09em;
      text-transform:uppercase;color:var(--gris);margin:16px 0 6px}
label:first-child{margin-top:0}
input[type=text],input[type=email],input[type=password],textarea,select{
  width:100%;font-family:Arial,sans-serif;font-size:14px;color:var(--encre);
  border:1px solid var(--filet);border-radius:2px;background:#fff;
  padding:9px 10px}
textarea{min-height:72px;resize:vertical;line-height:1.5}
input:focus,textarea:focus,select:focus,button:focus,a:focus{
  outline:2px solid var(--orange);outline-offset:1px}
.aide{font-size:12px;color:var(--gris);margin:4px 0 0}
.erreur{background:var(--lavis-orange);border-left:3px solid var(--orange);
        padding:10px 12px;font-size:13px;margin:14px 0 0;border-radius:2px}

/* Boutons */
.btn{display:inline-block;font-family:Arial,sans-serif;font-size:12px;font-weight:700;
     letter-spacing:.09em;text-transform:uppercase;padding:11px 22px;cursor:pointer;
     border-radius:2px;border:1px solid var(--navy);background:var(--navy);color:#fff;
     text-decoration:none}
.btn:hover{background:var(--orange);border-color:var(--orange)}
.btn.secondaire{background:#fff;color:var(--navy)}
.btn.secondaire:hover{color:var(--orange);border-color:var(--orange);background:#fff}
.btn.vert{background:var(--vert);border-color:var(--vert)}
.btn:disabled{opacity:.4;cursor:default}

/* Divers */
a{color:var(--navy)}
.muted{color:var(--gris);font-size:12.5px}
.pied{margin-top:26px;font-size:12px;color:var(--gris)}
code.lien{display:block;background:var(--lavis);border:1px solid var(--filet);
          padding:10px 12px;font-size:12.5px;word-break:break-all;border-radius:2px}

@media (max-width:480px){
  .bloc{padding:16px 14px}
  .wrap{margin-top:18px}
}

/* ——— Écran profils ——— */
.wrap.large{max-width:1200px}
.deux-colonnes{display:grid;grid-template-columns:300px 1fr;gap:22px}
@media (max-width:860px){.deux-colonnes{grid-template-columns:1fr}}

.vignette{display:block;background:#fff;border:1px solid var(--filet);border-radius:2px;
          padding:12px 14px;margin-bottom:8px;text-decoration:none;color:var(--encre);
          border-left:3px solid transparent}
.vignette:hover{border-left-color:var(--orange)}
.vignette.active{border-left-color:var(--orange);background:var(--lavis)}
.vignette-nom{font-weight:600;font-size:14px}
.pastilles{display:flex;align-items:center;gap:5px;margin-top:6px}
.pastille{width:9px;height:9px;border-radius:50%;display:inline-block;border:1px solid var(--filet)}
.pastille.oui{background:var(--vert);border-color:var(--vert)}
.pastille.non{background:#A03020;border-color:#A03020}
.pastille.attente{background:#fff}

.titre-profil{font-family:'Poppins',Arial,sans-serif;font-size:20px;font-weight:500;
              border:none;border-bottom:1.5px solid var(--filet);border-radius:0;
              padding:6px 2px;width:100%}
.titre-profil:focus{outline:none;border-bottom-color:var(--orange)}

.onglets{display:flex;gap:0;border-bottom:1px solid var(--filet);margin:18px 0 20px}
.onglet{font-family:inherit;font-size:12px;font-weight:700;letter-spacing:.09em;
        text-transform:uppercase;color:var(--gris);background:none;border:none;
        border-bottom:2px solid transparent;padding:10px 16px;cursor:pointer;margin-bottom:-1px}
.onglet.actif{color:var(--navy);border-bottom-color:var(--orange)}

.choix-frontiere{display:flex;gap:10px;flex-wrap:wrap}
.btn-frontiere{font-family:inherit;font-size:12.5px;font-weight:600;padding:10px 18px;
               border:1px solid var(--filet);background:#fff;cursor:pointer;border-radius:2px}
.btn-frontiere.actif{background:var(--navy);border-color:var(--navy);color:#fff}
.btn-frontiere.hors.actif{background:var(--gris);border-color:var(--gris)}
.btn-frontiere:disabled{opacity:.5;cursor:default}

.grille-verrouillable.verrouillee{opacity:.45;pointer-events:none}
.grille-verrouillable.verrouillee .message-verrou{pointer-events:auto}
.message-verrou{background:var(--lavis);border:1px dashed var(--filet);border-radius:2px;
                padding:10px 12px;margin:16px 0 0}
.section-grille{border:none;padding:0;margin:22px 0 0}
.section-grille legend{padding:0}
.ligne-choix{display:flex;gap:10px;align-items:baseline;font-size:14px;font-weight:400;
             text-transform:none;letter-spacing:0;color:var(--encre);
             padding:8px 2px;border-bottom:1px solid var(--filet);margin:0;cursor:pointer}
.ligne-choix input{width:auto;accent-color:var(--orange)}
.entree{margin-top:14px}
.entree .aide{margin:0 0 6px}
.feutre{margin-top:8px;font-size:12.5px}

.bandeau-soumission{display:flex;justify-content:space-between;align-items:center;
                    gap:14px;flex-wrap:wrap;margin-top:24px}
.portrait-tete{display:flex;gap:12px;align-items:center;justify-content:space-between}
.portrait-tete .fonction{font-weight:600;font-size:15px;flex:1}
.indicateur-enregistrement{margin:18px 0 0;min-height:18px;text-align:right}

/* ——— Navigation ——— */
.navigation{background:#fff;border-bottom:1px solid var(--filet)}
.inner-nav{max-width:1080px;margin:0 auto;padding:0 18px;display:flex;gap:2px;
           overflow-x:auto;white-space:nowrap}
.navigation a{display:inline-block;padding:12px 14px;font-size:12px;font-weight:700;
              letter-spacing:.09em;text-transform:uppercase;color:var(--gris);
              text-decoration:none;border-bottom:2px solid transparent}
.navigation a.actif{color:var(--navy);border-bottom-color:var(--orange)}
.badge{display:inline-block;background:var(--orange);color:#fff;border-radius:9px;
       font-size:10.5px;padding:1px 7px;margin-left:4px;letter-spacing:0}

/* ——— Validation ——— */
.profil-condense{margin-top:14px}
.condense-tete{display:flex;justify-content:space-between;align-items:flex-start;
               gap:14px;flex-wrap:wrap}
.entrees-deux-colonnes{display:grid;grid-template-columns:1fr 1fr;gap:12px 22px;
                       margin-top:14px;font-size:13.5px}
@media (max-width:640px){.entrees-deux-colonnes{grid-template-columns:1fr}}
.barre-vote{display:flex;gap:10px;margin-top:16px;flex-wrap:wrap;align-items:center}
.barre-vote input{flex:1;min-width:220px}

/* ——— Réunion ——— */
.paquet{margin-top:22px;background:#fff;border:1px solid var(--filet);border-radius:2px}
.paquet-tete{display:flex;gap:14px;align-items:baseline;flex-wrap:wrap;
             padding:12px 14px;border-bottom:1px solid var(--filet);background:var(--lavis)}
.paquet-tete.orange{background:var(--lavis-orange)}
.paquet-titre{font-size:12px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;
              color:var(--navy)}
.ligne-reunion{display:flex;justify-content:space-between;gap:16px;padding:12px 14px;
               border-bottom:1px solid var(--filet);flex-wrap:wrap}
.ligne-reunion:last-child{border-bottom:none}
.decompte{white-space:nowrap;font-size:12.5px;color:var(--gris)}
.avis{font-size:12.5px;color:var(--encre);margin-top:3px}

/* ——— Grille & testeur ——— */
.curseur-ligne{display:grid;grid-template-columns:1fr 220px 34px;gap:14px;
               align-items:center;padding:10px 0;border-bottom:1px solid var(--filet)}
@media (max-width:560px){.curseur-ligne{grid-template-columns:1fr 80px 30px}}
.curseur-ligne label{margin:0}
.curseur-ligne input[type=range]{accent-color:var(--orange);width:100%}
.curseur-ligne output{font-variant-numeric:tabular-nums;text-align:right;font-weight:600}
.deux-seuils{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}
@media (max-width:560px){.deux-seuils{grid-template-columns:1fr}}
.verdict{margin-top:18px}
.verdict-titre{font-family:'Poppins',Arial,sans-serif;font-size:17px;font-weight:600}

/* ——— Document ——— */
.filtre{display:flex;gap:2px;border:1px solid var(--filet);border-radius:2px;overflow:hidden}
.filtre a{padding:8px 14px;font-size:12px;font-weight:600;text-decoration:none;color:var(--gris)}
.filtre a.actif{background:var(--navy);color:#fff}
.markdown-affiche{background:var(--lavis);border:1px solid var(--filet);border-radius:2px;
                  padding:16px;font-size:12px;line-height:1.5;overflow-x:auto;
                  white-space:pre-wrap;max-height:520px;overflow-y:auto}

/* ——— Comptes ——— */
.ligne-creation{display:grid;grid-template-columns:1fr 1fr 220px auto;gap:14px}
@media (max-width:760px){.ligne-creation{grid-template-columns:1fr}}
.table-comptes{border-collapse:collapse;width:100%;font-size:13.5px}
.table-comptes th{font-size:10px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;
                  color:var(--gris);text-align:left;padding:8px 10px;border-bottom:1px solid var(--filet)}
.table-comptes td{padding:9px 10px;border-bottom:1px solid var(--filet);vertical-align:top}
.badge-statut{font-size:11px;font-weight:600;padding:2px 8px;border-radius:2px;
              border:1px solid var(--filet)}
.badge-statut.actif{color:var(--vert);border-color:var(--vert)}
.badge-statut.invite{color:var(--orange);border-color:var(--orange)}
.badge-statut.desactive{color:var(--gris)}
.actions-compte{display:flex;gap:10px;flex-wrap:wrap}
.actions-compte form{margin:0}
.lien-action{background:none;border:none;padding:0;font-family:inherit;font-size:12.5px;
             color:var(--navy);text-decoration:underline;cursor:pointer}
.lien-action.danger{color:#A03020}

/* ——— Barre d'outils des impressions (écran seulement) ——— */
.page-impression{background:#fff}
.barre-outils{display:flex;gap:14px;align-items:center;padding:12px 18px;
              border-bottom:1px solid var(--filet);background:var(--lavis)}
.feuille{max-width:760px;margin:24px auto;padding:0 18px}

/* ——— La définition (huit axes) ——— */
.axe-def{border:1px solid var(--filet);border-radius:2px;padding:12px 14px;margin:12px 0 0}
.axe-def legend{font-size:12px;font-weight:700;letter-spacing:.04em;color:var(--navy);
                padding:0 6px;text-transform:none}
.case-indifferent{display:inline-flex;gap:6px;align-items:center;font-size:12px;
                  font-weight:600;text-transform:none;letter-spacing:0;color:var(--gris);
                  margin:0 0 8px;cursor:pointer}
.valeurs-axe{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.famille-axe{flex-basis:100%;font-size:10px;font-weight:700;letter-spacing:.09em;
             text-transform:uppercase;color:var(--gris);margin:6px 0 0}
.val-def{display:inline-flex;gap:6px;align-items:center;font-size:12.5px;font-weight:400;
         text-transform:none;letter-spacing:0;color:var(--encre);border:1px solid var(--filet);
         border-radius:2px;padding:6px 10px;margin:0;cursor:pointer;background:#fff}
.val-def:has(input:checked){background:var(--navy);border-color:var(--navy);color:#fff}
.val-def input{accent-color:var(--orange)}
.val-def.proposee span{font-style:italic}
#indicateurs-definition{margin-top:14px}

/* ——— Récurrences ——— */
.cases-recurrence{display:flex;flex-direction:column;gap:2px;margin:4px 0 6px}
.case-rec{display:flex;gap:10px;align-items:baseline;font-size:13.5px;font-weight:400;
          text-transform:none;letter-spacing:0;color:var(--encre);margin:0;
          padding:7px 2px;border-bottom:1px solid var(--filet);cursor:pointer}
.case-rec input{accent-color:var(--orange)}
.chev-total{background:var(--lavis-orange);border-left:3px solid var(--orange);
            padding:8px 10px;margin:6px 0;border-radius:2px;color:var(--encre)}
.familles-envergure{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:8px}
.onglet-famille{font-family:inherit;font-size:11px;font-weight:600;letter-spacing:.06em;
                text-transform:uppercase;color:var(--gris);background:#fff;
                border:1px solid var(--filet);border-radius:2px;padding:5px 10px;cursor:pointer}
.onglet-famille.actif{background:var(--navy);border-color:var(--navy);color:#fff}
.ligne-prospect{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;
                padding:8px 2px;border-bottom:1px solid var(--filet);font-size:13px}
.ligne-prospect:last-child{border-bottom:none}
.val-def[hidden]{display:none}

/* ——— autre — préciser · écran cartographie ——— */
.autre-valeur{display:flex;gap:8px;margin-top:8px;align-items:center}
.autre-valeur input{max-width:260px;font-size:12.5px;padding:6px 8px}
.autre-valeur .btn{padding:7px 12px;font-size:10.5px}
.ligne-trou{display:flex;justify-content:space-between;gap:14px;align-items:baseline;
            padding:8px 2px;border-bottom:1px solid var(--filet);font-size:13.5px;flex-wrap:wrap}
.ligne-trou.alerte{background:var(--lavis-orange);padding:8px 10px;border-radius:2px;
                   border-bottom:none;margin:4px 0}
.ligne-proposee{display:flex;gap:10px;align-items:center;padding:8px 0;flex-wrap:wrap;
                border-bottom:1px solid var(--filet)}
.ligne-proposee input{max-width:300px}
.axe-valeurs{border:1px solid var(--filet);border-radius:2px;padding:8px 12px;margin-top:8px}
.axe-valeurs summary{font-size:12px;font-weight:700;letter-spacing:.06em;
                     text-transform:uppercase;color:var(--navy);cursor:pointer}
.ligne-valeur{display:flex;justify-content:space-between;gap:10px;padding:5px 0;
              border-bottom:1px solid var(--lavis);font-size:13px}
