:root{
    --vert-fond: #14452F;
    --vert-herbe: #2F7A55;
    --papier: #F6F5F1;
    --papier-creux: #ECEAE3;
    --encre: #1A1D1A;
    --encre-douce: #5C635C;
    --cuivre: #B0722F;
    --ligne: #D6D3CA;
    --alerte: #9B2C1F;
    --r: 3px;
  }
  *{box-sizing:border-box}
  html,body{margin:0;padding:0}
  body{
    background:var(--papier);
    color:var(--encre);
    font-family:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;
    font-size:16px;line-height:1.55;
    -webkit-font-smoothing:antialiased;
  }
  h1,h2,h3{font-family:'Bodoni Moda',Georgia,'Times New Roman',serif;font-weight:400;margin:0}
  .wrap{max-width:1180px;margin:0 auto;padding:0 24px}
  .mono{font-family:'IBM Plex Mono',ui-monospace,monospace}

  /* ---------- Bandeau ---------- */
  .masthead{background:var(--vert-fond);color:#F3F1EA}
  .masthead .wrap{display:flex;align-items:center;gap:16px;padding-top:14px;padding-bottom:14px}
  .toque{width:46px;height:46px;flex:0 0 46px;object-fit:contain;display:block}
  .mast-txt{line-height:1.2}
  .mast-txt b{display:block;font-family:'Bodoni Moda',Georgia,serif;font-weight:500;font-size:15px;letter-spacing:.16em;text-transform:uppercase}
  .mast-txt span{font-size:12px;letter-spacing:.1em;text-transform:uppercase;opacity:.72}
  .mast-actions{margin-left:auto}
  .lien-discret{background:none;border:0;color:#F3F1EA;opacity:.7;font:inherit;font-size:13px;cursor:pointer;padding:6px 2px;border-bottom:1px solid transparent}
  .lien-discret:hover{opacity:1;border-bottom-color:var(--cuivre)}

  /* ---------- Chapeau ---------- */
  .chapeau{border-bottom:1px solid var(--ligne);background:#fff}
  .chapeau .wrap{padding:44px 24px 36px;max-width:1180px}
  .eyebrow{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--cuivre);margin:0 0 14px}
  .chapeau h1{font-size:clamp(30px,4.6vw,50px);line-height:1.08;letter-spacing:-.01em;max-width:16ch}
  .chapeau h1 em{font-style:italic;color:var(--vert-herbe)}
  .chapeau p{max-width:56ch;color:var(--encre-douce);margin:18px 0 0;font-size:15.5px}
  .rappel{display:inline-flex;gap:10px;align-items:baseline;margin-top:22px;padding:9px 14px;background:var(--papier-creux);border-left:2px solid var(--cuivre);font-size:14px}
  .rappel b{font-weight:600}

  /* ---------- Colonnes ---------- */
  .colonnes{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:56px;padding:44px 0 72px}
  @media(max-width:900px){.colonnes{grid-template-columns:1fr;gap:36px;padding-top:32px}}

  /* ---------- Formulaire ---------- */
  fieldset{border:0;padding:0;margin:0 0 40px}
  legend{display:block;width:100%;padding:0 0 14px;margin-bottom:22px;border-bottom:1px solid var(--ligne)}
  .num{font-family:'Bodoni Moda',Georgia,serif;font-size:13px;letter-spacing:.14em;color:var(--cuivre);display:block;margin-bottom:4px}
  .titre-section{font-family:'Bodoni Moda',Georgia,serif;font-size:24px}
  .grille{display:grid;grid-template-columns:repeat(12,1fr);gap:18px 16px}
  .c3{grid-column:span 3}.c4{grid-column:span 4}.c5{grid-column:span 5}
  .c6{grid-column:span 6}.c7{grid-column:span 7}.c8{grid-column:span 8}.c12{grid-column:span 12}
  @media(max-width:620px){.c3,.c4,.c5,.c6,.c7,.c8{grid-column:span 12}}
  label{display:block;font-size:12.5px;font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:var(--encre-douce);margin-bottom:6px}
  label .req{color:var(--alerte)}
  input[type=text],input[type=email],input[type=tel],input[type=url],input[type=date],input[type=number],select,textarea{
    width:100%;padding:11px 12px;font:inherit;font-size:15px;color:var(--encre);
    background:#fff;border:1px solid var(--ligne);border-radius:var(--r);
    transition:border-color .15s, box-shadow .15s;
  }
  select{appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8'><path d='M1 1l5 5 5-5' fill='none' stroke='%235C635C' stroke-width='1.6'/></svg>");background-repeat:no-repeat;background-position:right 12px center;padding-right:34px}
  textarea{min-height:88px;resize:vertical}
  input:focus,select:focus,textarea:focus{outline:none;border-color:var(--vert-herbe);box-shadow:0 0 0 3px rgba(47,122,85,.15)}
  input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible{outline:2px solid var(--vert-herbe);outline-offset:2px}
  .aide{font-size:12.5px;color:var(--encre-douce);margin-top:6px;text-transform:none;letter-spacing:0;font-weight:400}
  .radios{display:flex;flex-wrap:wrap;gap:8px}
  .radios label{display:inline-flex;align-items:center;gap:8px;margin:0;padding:9px 14px;border:1px solid var(--ligne);border-radius:var(--r);background:#fff;cursor:pointer;text-transform:none;letter-spacing:0;font-size:14.5px;color:var(--encre);font-weight:400}
  .radios input{accent-color:var(--vert-herbe);margin:0}
  .radios label:has(input:checked){border-color:var(--vert-herbe);background:rgba(47,122,85,.07);font-weight:500}
  .case{display:flex;gap:11px;align-items:flex-start;margin-bottom:12px;font-size:14.5px;line-height:1.45;text-transform:none;letter-spacing:0;color:var(--encre);font-weight:400}
  .case input{accent-color:var(--vert-herbe);margin-top:3px;flex:0 0 auto;width:16px;height:16px}
  .champ-invalide input,.champ-invalide select{border-color:var(--alerte);background:#FDF6F5}

  .btn{font:inherit;font-size:15px;font-weight:500;padding:13px 26px;border-radius:var(--r);cursor:pointer;border:1px solid transparent;transition:background .15s,color .15s}
  .btn-plein{background:var(--vert-fond);color:#F3F1EA}
  .btn-plein:hover{background:#0E3323}
  .btn-plein:disabled{opacity:.55;cursor:wait}
  .btn-vide{background:transparent;color:var(--vert-fond);border-color:var(--vert-fond)}
  .btn-vide:hover{background:var(--vert-fond);color:#F3F1EA}
  .btn-petit{padding:8px 15px;font-size:13.5px}
  .barre-envoi{display:flex;align-items:center;gap:18px;flex-wrap:wrap;padding-top:8px}
  .msg-erreur{color:var(--alerte);font-size:14px}

  /* ---------- Fiche miroir ---------- */
  .miroir{position:sticky;top:24px}
  .miroir-titre{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--encre-douce);margin:0 0 12px}
  .fiche{background:#fff;border:1px solid var(--ligne);padding:30px 28px 26px;text-align:left}
  .fiche-photo{width:96px;height:96px;border-radius:50%;background:var(--papier-creux);margin:0 auto 16px;display:flex;align-items:center;justify-content:center}
  .fiche-nom{font-family:'Bodoni Moda',Georgia,serif;font-size:27px;text-align:center;margin:0 0 4px;min-height:34px}
  .fiche-nom b{font-weight:700}
  .fiche-sous{text-align:center;font-size:13px;color:var(--encre-douce);margin:0 0 26px;letter-spacing:.04em}
  .fiche dl{display:grid;grid-template-columns:auto 1fr;gap:9px 18px;margin:0;font-size:13.5px}
  .fiche dt{font-weight:600;color:var(--encre)}
  .fiche dd{margin:0;color:var(--encre-douce);word-break:break-word}
  .fiche h3{font-family:'Bodoni Moda',Georgia,serif;font-size:19px;margin:26px 0 14px;padding-top:18px;border-top:1px solid var(--ligne)}
  .vide{color:#B6B3AA}

  /* ---------- Confirmation ---------- */
  .merci{max-width:620px;margin:0 auto;padding:96px 24px;text-align:center}
  .merci h2{font-size:38px;margin-bottom:14px}
  .merci p{color:var(--encre-douce)}
  .sceau{width:62px;height:62px;margin:0 auto 26px}

  /* ---------- Espace président ---------- */
  .admin-tete{display:flex;align-items:flex-end;gap:20px;flex-wrap:wrap;padding:40px 0 24px;border-bottom:1px solid var(--ligne)}
  .admin-tete h2{font-size:34px}
  .admin-tete .actions{margin-left:auto;display:flex;gap:10px;flex-wrap:wrap}
  .stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;background:var(--ligne);border:1px solid var(--ligne);margin:28px 0}
  .stat{background:#fff;padding:18px 20px}
  .stat b{display:block;font-family:'Bodoni Moda',Georgia,serif;font-size:32px;line-height:1.1}
  .stat span{font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--encre-douce)}
  .filtres{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-bottom:18px}
  .filtres input[type=text]{max-width:280px}
  .filtres select{max-width:230px}
  .tableau-cadre{overflow-x:auto;border:1px solid var(--ligne);background:#fff}
  table{border-collapse:collapse;width:100%;font-size:13.5px}
  th{background:var(--papier-creux);text-align:left;padding:11px 14px;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--encre-douce);white-space:nowrap;border-bottom:1px solid var(--ligne)}
  td{padding:11px 14px;border-bottom:1px solid #EEEDE8;vertical-align:top}
  tbody tr:hover{background:#FBFAF7}
  .pastille{display:inline-block;padding:2px 8px;border-radius:20px;font-size:11.5px;font-weight:500;white-space:nowrap}
  .p-oui{background:rgba(47,122,85,.13);color:#1D5C3D}
  .p-non{background:rgba(155,44,31,.11);color:var(--alerte)}
  .p-nsp{background:var(--papier-creux);color:var(--encre-douce)}
  .btn-suppr{background:none;border:0;color:var(--encre-douce);cursor:pointer;font:inherit;font-size:13px;padding:2px 4px}
  .btn-suppr:hover{color:var(--alerte);text-decoration:underline}
  .etat{padding:44px 20px;text-align:center;color:var(--encre-douce)}

  /* ---------- Verrou ---------- */
  .verrou{max-width:400px;margin:0 auto;padding:90px 24px}
  .verrou h2{font-size:30px;margin-bottom:8px}
  .verrou p{color:var(--encre-douce);font-size:14.5px;margin:0 0 22px}

  footer{border-top:1px solid var(--ligne);background:#fff;padding:26px 0;font-size:12.5px;color:var(--encre-douce)}
  footer .wrap{display:flex;gap:18px;flex-wrap:wrap;align-items:center}
  footer .wrap span{margin-left:auto}
  .cache{display:none !important}
  .toast{position:fixed;left:50%;bottom:26px;transform:translateX(-50%);background:var(--vert-fond);color:#F3F1EA;padding:12px 22px;border-radius:var(--r);font-size:14px;box-shadow:0 8px 24px rgba(0,0,0,.18);z-index:50}
  @media (prefers-reduced-motion:reduce){*{transition:none !important;animation:none !important}}

  /* ---------- Bloc de secours (envoi) ---------- */
  .secours{margin-top:34px;padding:24px 26px;background:#fff;border:1px solid var(--ligne);text-align:left}
  .secours-titre{font-family:'Bodoni Moda',Georgia,serif;font-size:19px;margin:0 0 8px;color:var(--encre)}
  .secours p{font-size:14px;margin:0}
  #texte-fiche{width:100%;min-height:170px;margin-top:14px;font-family:'IBM Plex Mono',monospace;font-size:12px;line-height:1.6;background:var(--papier);border:1px solid var(--ligne);border-radius:var(--r);padding:12px;color:var(--encre-douce);resize:vertical}

  /* ---------- Console de dépouillement ---------- */
  .mode-emploi{margin:26px 0 18px;padding:20px 24px;background:#fff;border-left:2px solid var(--vert-herbe);font-size:14.5px}
  .mode-emploi p{margin:0}
  .mode-emploi .attention{margin-top:12px;color:var(--alerte);font-size:13.5px}
  #zone-collage{width:100%;min-height:150px;font-family:'IBM Plex Mono',monospace;font-size:12.5px;line-height:1.6;padding:14px;border:1px solid var(--ligne);border-radius:var(--r);background:#fff;resize:vertical}
  #zone-collage:focus{outline:none;border-color:var(--vert-herbe);box-shadow:0 0 0 3px rgba(47,122,85,.15)}
  @media print{.masthead,.chapeau,footer,.actions,.filtres{display:none}}

/* ============ Onglets de la console ============ */
.onglets{display:flex;gap:2px;flex-wrap:wrap;margin-top:30px;border-bottom:1px solid var(--ligne)}
.onglets a{padding:11px 18px;font-size:14.5px;color:var(--encre-douce);text-decoration:none;border-bottom:2px solid transparent;margin-bottom:-1px;display:inline-flex;align-items:center;gap:8px}
.onglets a:hover{color:var(--encre)}
.onglets a.actif{color:var(--vert-fond);border-bottom-color:var(--vert-fond);font-weight:500}
.badge{background:var(--cuivre);color:#fff;border-radius:20px;font-size:11px;padding:1px 7px;line-height:1.5}

/* ============ Bandeaux ============ */
.bandeau-ok,.bandeau-alerte{margin:22px 0 0;padding:12px 18px;font-size:14.5px;border-left:2px solid}
.bandeau-ok{background:rgba(47,122,85,.08);border-color:var(--vert-herbe);color:#1D5C3D}
.bandeau-alerte{background:rgba(155,44,31,.07);border-color:var(--alerte);color:var(--alerte)}

/* ============ Dossiers de cooptation ============ */
.dossier{background:#fff;border:1px solid var(--ligne);padding:26px 28px;margin-top:22px}
.dossier-tete{display:flex;gap:18px;align-items:flex-start;flex-wrap:wrap}
.dossier-tete h3{font-family:'Bodoni Moda',Georgia,serif;font-size:25px;font-weight:600;
  color:var(--vert-fond);margin:0;line-height:1.2}
.dossier-tete h3 b{font-weight:700}
.dossier-tete .pastille{margin-left:auto;flex:0 0 auto}
.dossier-sous{margin:4px 0 0;font-size:13.5px;color:var(--encre-douce)}
.dossier-infos{display:grid;grid-template-columns:auto 1fr;gap:7px 18px;margin:20px 0 0;font-size:13.5px}
.dossier-infos dt{font-weight:600}
.dossier-infos dd{margin:0;color:var(--encre-douce)}
.dossier-motivation{margin:20px 0 0;padding:16px 18px;background:var(--papier);font-size:14.5px;line-height:1.65}
.dossier-avis{margin-top:16px;padding:14px 18px;border-left:2px solid var(--vert-herbe);background:var(--papier);font-size:14px}
.dossier-avis p{margin:0}
.dossier-avis p+p{margin-top:6px;color:var(--encre-douce)}
.dossier-actions{margin-top:22px;padding-top:20px;border-top:1px solid var(--ligne);display:grid;gap:18px}
.bloc-action label{margin-bottom:8px}
.ligne-action{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.ligne-action select{max-width:220px}
.ligne-action input[type=text]{flex:1;min-width:200px}

/* ============ Verrou : champs ============ */
.verrou label{margin-bottom:6px}
.verrou input{width:100%}

/* ============ Blocs d'attribution ============ */
.titre-bloc{font-family:'Bodoni Moda',Georgia,serif;font-size:21px;font-weight:400;margin:0 0 6px}
.grille > .c6 > form select,.grille > .c6 > form input[type=text]{width:100%}

/* ============ Agenda ============ */
.puce{display:inline-block;padding:7px 14px;border:1px solid var(--ligne);border-radius:20px;background:#fff;font-size:13.5px;color:var(--encre-douce);text-decoration:none}
.puce:hover{border-color:var(--vert-herbe);color:var(--encre)}
.puce-active{background:var(--vert-fond);border-color:var(--vert-fond);color:#F3F1EA}
.mois{font-family:'Bodoni Moda',Georgia,serif;font-size:26px;font-weight:400;margin:38px 0 16px;padding-bottom:8px;border-bottom:1px solid var(--ligne)}
.mois:first-of-type{margin-top:0}
.evenement{display:flex;gap:24px;background:#fff;border:1px solid var(--ligne);padding:22px 26px;margin-bottom:14px}
.evenement-annule{opacity:.62}
.evenement-annule h3{text-decoration:line-through}
.ev-date{flex:0 0 62px;text-align:center;border-right:1px solid var(--ligne);padding-right:20px}
.ev-date b{display:block;font-family:'Bodoni Moda',Georgia,serif;font-size:34px;line-height:1;color:var(--vert-fond)}
.ev-date span{display:block;font-size:11.5px;letter-spacing:.14em;color:var(--cuivre);margin-top:5px}
.ev-corps{flex:1;min-width:0}
.ev-tete{display:flex;gap:14px;align-items:flex-start;flex-wrap:wrap}
.ev-tete h3{font-family:'Bodoni Moda',Georgia,serif;font-size:23px;font-weight:600;
  color:var(--vert-fond);margin:0;line-height:1.25}
.ev-tete .pastille{margin-left:auto}
.ev-meta{margin:5px 0 0;font-size:13px;color:var(--encre-douce)}
.ev-lieu{margin:8px 0 0;font-size:14.5px;font-weight:500}
.ev-desc{margin:12px 0 0;font-size:14.5px;line-height:1.6}
.ev-contact{margin:12px 0 0;padding-top:12px;border-top:1px solid #EEEDE8;font-size:13.5px;color:var(--encre-douce)}
@media(max-width:560px){
  .evenement{flex-direction:column;gap:14px}
  .ev-date{display:flex;gap:10px;align-items:baseline;text-align:left;border-right:0;border-bottom:1px solid var(--ligne);padding:0 0 12px}
  .ev-date b{font-size:26px}
  .ev-date span{margin:0}
}

/* ============ Organisation d'un événement ============ */
.jauge{height:6px;background:var(--papier-creux);border:1px solid var(--ligne);margin:0 0 30px;overflow:hidden}
.jauge-part{height:100%;background:var(--vert-herbe);transition:width .3s}
.colonnes-org{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:44px}
@media(max-width:900px){.colonnes-org{grid-template-columns:1fr;gap:34px}}
.sous-titre{font-family:'Bodoni Moda',Georgia,serif;font-size:17px;font-weight:400;margin:26px 0 12px}
.cadre-form{background:#fff;border:1px solid var(--ligne);padding:20px 22px}
.cadre-form .barre-envoi{padding-top:16px}

/* Frise du rétroplanning */
.frise{list-style:none;margin:0;padding:0 0 0 26px;position:relative}
.frise::before{content:'';position:absolute;left:7px;top:6px;bottom:6px;width:1px;background:var(--ligne)}
.frise-item{position:relative;padding:0 0 20px}
.frise-puce{position:absolute;left:-26px;top:2px;width:15px;height:15px;border-radius:50%;
  background:#fff;border:2px solid var(--ligne);display:flex;align-items:center;justify-content:center;
  font-size:9px;color:#fff;line-height:1}
.frise-item.faite .frise-puce{background:var(--vert-herbe);border-color:var(--vert-herbe)}
.frise-item.retard .frise-puce{border-color:var(--alerte);background:var(--alerte)}
.frise-item.proche .frise-puce{border-color:var(--cuivre)}
.frise-item.nulle{opacity:.5}
.frise-item.faite .frise-tete b{text-decoration:line-through;color:var(--encre-douce)}
.frise-tete{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}
.frise-tete b{font-size:15px}
.frise-meta{margin:3px 0 0;font-size:12.5px;color:var(--encre-douce)}
.frise-notes{margin:7px 0 0;font-size:13.5px;line-height:1.5;color:var(--encre)}
.frise-actions{margin:8px 0 0;display:flex;gap:8px;flex-wrap:wrap;align-items:center;font-size:13px}
.frise-actions a{color:var(--vert-herbe)}
.mini-btn{background:none;border:1px solid var(--ligne);border-radius:3px;padding:2px 9px;
  font:inherit;font-size:12px;color:var(--encre-douce);cursor:pointer}
.mini-btn:hover{border-color:var(--vert-herbe);color:var(--vert-fond)}

/* Porte-documents */
.docs{list-style:none;margin:0;padding:0}
.doc{display:flex;gap:14px;background:#fff;border:1px solid var(--ligne);padding:14px 16px;margin-bottom:10px}
.doc-icone{flex:0 0 46px;height:46px;background:var(--papier-creux);display:flex;align-items:center;
  justify-content:center;font-family:'IBM Plex Mono',monospace;font-size:10.5px;color:var(--encre-douce);letter-spacing:.04em}
.doc-corps{min-width:0;flex:1}
.doc-corps b{font-size:14.5px}
.doc-meta{margin:3px 0 0;font-size:12.5px;color:var(--encre-douce)}
.doc-actions{margin:7px 0 0;display:flex;gap:12px;flex-wrap:wrap;align-items:center;font-size:13px}
.doc-actions a{color:var(--vert-herbe)}
input[type=file]{width:100%;padding:9px 10px;font:inherit;font-size:14px;background:#fff;
  border:1px solid var(--ligne);border-radius:var(--r)}

/* ============ Fiche du destinataire, dans l'onglet Écrire ============ */
#fiche-destinataire{margin-top:18px;padding:16px 20px;background:#fff;border:1px solid var(--ligne);border-left:2px solid var(--cuivre)}
.fiche-titre{margin:0 0 10px;font-family:'Bodoni Moda',Georgia,serif;font-size:17px;color:var(--vert-fond)}
.fiche-dest{display:grid;grid-template-columns:auto 1fr;gap:6px 18px;margin:0;font-size:13.5px}
.fiche-dest dt{font-weight:600;color:var(--encre)}
.fiche-dest dd{margin:0;color:var(--encre-douce);word-break:break-word}

/* ============ Liens externes de la navigation ============ */
.onglets-separateur{flex:1}
.onglets a.externe{color:var(--cuivre);border-bottom-color:transparent}
.onglets a.externe:hover{color:var(--vert-fond);border-bottom-color:var(--cuivre)}
.onglets a.externe .fleche{font-size:11px;margin-left:5px;opacity:.75}
@media(max-width:760px){.onglets-separateur{display:none}}

/* ============ Anniversaires ============ */
.anniversaires{margin-top:26px;padding:18px 22px;background:#fff;border:1px solid var(--ligne);border-left:2px solid var(--cuivre)}
.anniv-titre{margin:0 0 12px;font-family:'Bodoni Moda',Georgia,serif;font-size:18px;color:var(--vert-fond)}
.anniversaires ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px 26px}
.anniversaires li{display:flex;gap:9px;align-items:baseline;font-size:14px}
.anniversaires li span{font-size:12.5px;color:var(--encre-douce)}
.anniversaires li a{font-size:12.5px;color:var(--vert-herbe)}
.anniversaires li.aujourdhui b{color:var(--cuivre)}
.anniversaires li.aujourdhui::before{content:'●';color:var(--cuivre);font-size:9px;align-self:center}

/* ============ Annonces ============ */
.annonce{background:#fff;border:1px solid var(--ligne);padding:22px 26px;margin-bottom:14px}
.annonce-attente{border-left:2px solid var(--cuivre)}
.annonce-tete{display:flex;gap:12px;align-items:baseline;flex-wrap:wrap}
.annonce-tete h3{font-family:'Bodoni Moda',Georgia,serif;font-size:23px;font-weight:600;
  color:var(--vert-fond);margin:0;line-height:1.25}
.annonce-meta{margin:6px 0 0;font-size:12.5px;color:var(--encre-douce)}
.annonce-texte{margin:14px 0 0;font-size:14.5px;line-height:1.6}
.annonce-prix{margin:10px 0 0;font-size:14.5px;font-weight:500;color:var(--vert-fond)}
.annonce-contact{margin:14px 0 0;padding-top:12px;border-top:1px solid #EEEDE8;font-size:13.5px;color:var(--encre-douce)}
.annonce-actions{margin:12px 0 0;display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.depot-annonce{margin-top:50px;padding:30px 32px;background:#fff;border:1px solid var(--ligne)}
.depot-annonce h2{font-family:'Bodoni Moda',Georgia,serif;font-size:26px;font-weight:400;margin:0 0 4px}

/* ============ Tableau long : hauteur bornée, en-tête fixe ============ */
.tableau-defilant{max-height:520px;overflow-y:auto}
.tableau-defilant thead th{position:sticky;top:0;z-index:2}

/* ============ Justification dépliante ============ */
.justif{display:inline-block;margin-top:4px}
.justif summary{list-style:none;cursor:pointer;display:inline-block}
.justif summary::-webkit-details-marker{display:none}
.justif summary .pastille{border:1px dashed transparent}
.justif summary:hover .pastille{border-color:var(--cuivre)}
.justif[open] summary .pastille{border-color:var(--cuivre)}
.justif-form{margin-top:8px;padding:12px 14px;background:var(--papier);border:1px solid var(--ligne);
  border-left:2px solid var(--cuivre);min-width:290px}
.justif-form label{display:block;font-size:11px;letter-spacing:.04em;text-transform:uppercase;
  color:var(--encre-douce);margin-bottom:6px}
.justif-form input[type=text]{width:100%;font-size:13.5px;padding:8px 10px}
.justif-form button{margin-top:9px}

/* ============ Identité modifiable en ligne ============ */
.justif-nom summary{display:inline-flex;gap:7px;align-items:baseline;padding:2px 0}
.justif-nom summary .crayon{font-size:11px;color:var(--ligne);transition:color .15s}
.justif-nom summary:hover .crayon,.justif-nom[open] summary .crayon{color:var(--cuivre)}
.justif-nom summary:hover b{color:var(--vert-fond)}
.justif-nom .justif-form{min-width:270px}

/* ============ Sous-navigation ============ */
.sous-onglets{display:flex;gap:20px;flex-wrap:wrap;padding:12px 2px 0;margin-bottom:-6px}
.sous-onglets a{font-size:13.5px;color:var(--encre-douce);text-decoration:none;padding-bottom:3px;
  border-bottom:1px solid transparent}
.sous-onglets a:hover{color:var(--encre)}
.sous-onglets a.actif{color:var(--cuivre);border-bottom-color:var(--cuivre);font-weight:500}

/* ============ Partenaires ============ */
.partenaire{background:#fff;border:1px solid var(--ligne);padding:24px 28px;margin-bottom:16px}
.partenaire-inactif{opacity:.62}
.partenaire-tete{display:flex;gap:14px;align-items:baseline;flex-wrap:wrap}
.partenaire-tete h4{font-family:'Bodoni Moda',Georgia,serif;font-size:26px;font-weight:600;
  color:var(--vert-fond);margin:0;line-height:1.2;letter-spacing:-.005em}
.partenaire-tete .pastille{margin-left:auto}
.partenaire-meta{margin:7px 0 0;font-size:12.5px;color:var(--encre-douce)}
.partenaire-tete{padding-bottom:2px}
.partenaire-texte{margin:14px 0 0;font-size:14.5px;line-height:1.6}
.avantage{margin:16px 0 0;padding:14px 18px;background:rgba(47,122,85,.07);border-left:2px solid var(--vert-herbe)}
.avantage-titre{margin:0 0 6px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--vert-fond);font-weight:600}
.avantage p{margin:0;font-size:14.5px;line-height:1.55}
.avantage-conditions{margin-top:8px !important;font-size:13px;color:var(--encre-douce);font-style:italic}
.partenaire-contact{margin:14px 0 0;padding-top:12px;border-top:1px solid #EEEDE8;font-size:13.5px;color:var(--encre-douce)}
.partenaire-actions{margin:12px 0 0;display:flex;gap:6px;align-items:center}

/* ============ Recommandations ============ */
.soutiens{margin:16px 0 0;padding:14px 18px;background:rgba(47,122,85,.06);border-left:2px solid var(--vert-herbe)}
.soutiens-titre{margin:0;font-size:14px;color:var(--vert-fond)}
.soutiens-noms{margin:5px 0 0;font-size:13px;color:var(--encre-douce)}

/* ============ Parrainages aboutis ============ */
.parrains{display:flex;flex-wrap:wrap;gap:10px 14px;margin:0;padding:0;list-style:none}
.parrains li{display:flex;align-items:baseline;gap:8px;background:#fff;border:1px solid var(--ligne);padding:8px 14px}
.parrains b{font-family:'Bodoni Moda',Georgia,serif;font-size:19px;font-weight:600;color:var(--cuivre)}
.parrains span{font-size:13.5px}

/* ============ Vitrine des établissements ============ */
.photo-maison{display:block;max-width:100%;width:340px;border:1px solid var(--ligne)}
.maison-carte{margin:14px 0 0;padding:16px 20px;background:#fff;border:1px solid var(--ligne);border-left:2px solid var(--vert-herbe)}
.maison-carte h4{font-family:'Bodoni Moda',Georgia,serif;font-size:19px;font-weight:600;color:var(--vert-fond);margin:0 0 6px}
.maison-carte p{margin:0;font-size:14px;line-height:1.55}
.maison-carte img{margin-top:12px;max-width:260px;border:1px solid var(--ligne)}
.ligne-maison td{padding-top:0 !important;border-top:0 !important}
.maison-repli summary{list-style:none;cursor:pointer;display:inline-block}
.maison-repli summary::-webkit-details-marker{display:none}
.maison-repli summary .pastille{border:1px dashed transparent}
.maison-repli summary:hover .pastille,.maison-repli[open] summary .pastille{border-color:var(--vert-herbe)}

/* ============ Prospection : actions et filtres ============ */
.actions-prospection{display:flex;gap:14px;flex-wrap:wrap;margin:26px 0 22px;align-items:flex-start}
.volet{flex:0 0 auto}
.volet summary{list-style:none;cursor:pointer}
.volet summary::-webkit-details-marker{display:none}
.volet-bouton{display:inline-block;padding:11px 22px;font-size:13.5px;font-weight:500;
  border:1px solid var(--vert-fond);color:var(--vert-fond);background:#fff;transition:.15s}
.volet summary:hover .volet-bouton{background:var(--vert-fond);color:#fff}
.volet[open] summary .volet-bouton{background:var(--vert-fond);color:#fff}
.volet[open]{flex:1 1 100%}
.volet-corps{margin-top:16px;max-width:760px}

.barre-filtres{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:16px}
.barre-filtres input[type=search]{flex:1 1 260px;min-width:200px;padding:9px 12px;font-size:14px}
.barre-filtres select{padding:9px 10px;font-size:13.5px}
.compte-filtre{margin-left:auto;font-size:13px;color:var(--encre-douce)}

.pagination{display:flex;gap:20px;align-items:center;justify-content:center;padding:6px 0}
.pagination a{color:var(--vert-herbe);text-decoration:none;font-size:14px}
.pagination a:hover{text-decoration:underline}
.pagination span{font-size:13px;color:var(--encre-douce)}

.mode-emploi-repli summary{cursor:pointer;font-size:13.5px;color:var(--encre-douce);
  padding:8px 0;list-style:none}
.mode-emploi-repli summary::-webkit-details-marker{display:none}
.mode-emploi-repli summary::before{content:'▸ ';color:var(--cuivre)}
.mode-emploi-repli[open] summary::before{content:'▾ '}
.mode-emploi-repli summary:hover{color:var(--encre)}

/* ============ États de remise ============ */
.etat-envoi{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;
  font-size:12.5px;padding:4px 11px 4px 9px;border-radius:20px;cursor:default}
.etat-pastille{width:7px;height:7px;border-radius:50%;flex:0 0 7px}
.etat-abouti{background:rgba(47,122,85,.12);color:#1D5C3D}
.etat-abouti .etat-pastille{background:#2F7A55}
.etat-attente{background:rgba(176,114,47,.12);color:#8A5720}
.etat-attente .etat-pastille{background:var(--cuivre)}
.etat-echec{background:rgba(176,42,42,.10);color:#8F2020}
.etat-echec .etat-pastille{background:#B02A2A}
.etat-inconnu{background:#EFEEE9;color:var(--encre-douce)}
.etat-inconnu .etat-pastille{background:#BDBBB4}
.legende-etats{display:flex;gap:14px;flex-wrap:wrap;align-items:center;margin:0 0 12px}
.liste-mortes{list-style:none;margin:0;padding:0}
.liste-mortes li{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:5px 0;
  border-bottom:1px solid #EEEDE8;font-size:13.5px}
.liste-mortes li:last-child{border-bottom:0}
.liste-mortes .mono{font-size:12.5px;color:var(--encre-douce)}
.tri{color:inherit;text-decoration:none;white-space:nowrap}
.tri:hover{color:var(--vert-fond)}
.tri-actif{color:var(--cuivre);font-weight:600}

/* ============ Facturation ============ */
.grille-deux{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
.grille-trois{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:16px}
.grille-facture{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:44px;align-items:start}
@media(max-width:900px){.grille-facture{grid-template-columns:1fr;gap:30px}}

.bandeau-info{background:var(--papier-creux);border-left:2px solid var(--vert-herbe);
  padding:12px 16px;margin:0 0 14px;font-size:14px;border-radius:0 var(--r) var(--r) 0}

.lien-bouton{background:none;border:0;padding:0;font:inherit;font-size:13.5px;
  color:var(--encre-douce);text-decoration:underline;text-underline-offset:2px;cursor:pointer}
.lien-bouton:hover{color:var(--alerte)}

.recap-totaux p{display:flex;justify-content:space-between;align-items:baseline;gap:20px;
  margin:0;padding:9px 0;border-bottom:1px solid var(--ligne);font-size:14px}
.recap-totaux p:last-child{border-bottom:0}
.recap-totaux span{color:var(--encre-douce)}
.recap-totaux b{white-space:nowrap;font-variant-numeric:tabular-nums}
.recap-totaux .recap-fort{font-size:16px}
.recap-totaux .recap-fort b{font-size:19px}

/* Lien de texte sur fond clair — .lien-discret est blanc, réservé
   au bandeau sombre, et disparaîtrait sur la page. */
.lien-page{color:var(--vert-herbe);text-decoration:underline;text-underline-offset:2px;
  font-size:13.5px;background:none;border:0;padding:0;font-family:inherit;cursor:pointer}
.lien-page:hover{color:var(--vert-fond)}
