/* JETINVITE — Console d'organisation (thème clair) */
:root{
  --encre:#16171c;
  --encre-2:#6b6f78;
  --fond:#ececec;
  --surface:#fff;
  --trait:#e2e3e6;
  --rose:#ef3a72;
  --rose-clair:#fdeaf0;
  --or:#b4852a;
  --vert:#17855c;
  --rouge:#c23b30;
  --r:14px;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;background:var(--fond);color:var(--encre);
  font:15px/1.6 "Poppins",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}
h1,h2,h3{font-weight:600;letter-spacing:-.01em}
h1{font-size:24px;margin:0}
h2{font-size:18px;margin:0 0 14px}
h3{font-size:15px;margin:0 0 8px}
a{color:var(--rose)}
img{max-width:100%}
:focus-visible{outline:2px solid var(--rose);outline-offset:2px}

/* Barre principale */
.barre{
  display:flex;align-items:center;gap:22px;flex-wrap:wrap;
  background:var(--surface);padding:14px 22px;border-bottom:1px solid var(--trait);
}
.marque{color:var(--rose);text-decoration:none;font-size:21px;font-weight:600;letter-spacing:-.02em}
.marque-logo{max-height:30px;display:block}
.barre-liens{display:flex;gap:20px;flex:1}
.barre-liens a{color:var(--encre-2);text-decoration:none;font-size:14.5px}
.barre-liens a:hover{color:var(--encre)}
.barre-compte{display:flex;align-items:center;gap:14px;font-size:14px;color:var(--encre-2)}
.lien-sobre{color:var(--encre-2);text-decoration:underline}

/* Bandeau événement */
.bandeau-event{
  background:var(--surface);border-bottom:1px solid var(--trait);
  padding:20px 22px;display:flex;gap:16px;align-items:center;flex-wrap:wrap;
}
.bandeau-titre{flex:1;min-width:240px}
.bandeau-titre p{margin:5px 0 0;color:var(--encre-2);font-size:13.5px}
.etat{padding:2px 10px;border-radius:30px;font-size:12px;background:#f1f2f4;color:var(--encre-2)}
.etat-publie{background:#e4f5ee;color:var(--vert)}
.etat-archive{background:#fbecea;color:var(--rouge)}
.badge-plan{margin-left:6px;background:var(--rose-clair);color:var(--rose);padding:2px 10px;border-radius:30px;font-size:12px}

/* Onglets */
.onglets{
  background:var(--surface);border-bottom:1px solid var(--trait);
  display:flex;gap:4px;padding:0 14px;overflow-x:auto;-webkit-overflow-scrolling:touch;
}
.onglets a{
  padding:12px 14px;color:var(--encre-2);text-decoration:none;font-size:14.5px;white-space:nowrap;
  border-bottom:2px solid transparent;
}
.onglets a:hover{color:var(--encre)}
.onglets a.actif{color:var(--rose);border-bottom-color:var(--rose);font-weight:500}

/* Page */
.page{max-width:1120px;margin:0 auto;padding:24px 16px 70px}
.pied{text-align:center;color:var(--encre-2);font-size:13px;padding:22px}

/* Cartes et grilles */
.carte{background:var(--surface);border:1px solid var(--trait);border-radius:var(--r);padding:20px;margin-bottom:18px}
.grille{display:grid;gap:16px}
.g2{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.g3{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}
.g4{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}
.entre{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px}

/* Statistiques */
.stat{background:var(--surface);border:1px solid var(--trait);border-radius:var(--r);padding:16px 18px}
.stat b{display:block;font-size:27px;line-height:1.1;font-weight:600;letter-spacing:-.02em}
.stat span{color:var(--encre-2);font-size:13px}
.stat-or b{color:var(--or)}
.stat-vert b{color:var(--vert)}

.jauge{height:6px;background:#eceef1;border-radius:6px;overflow:hidden;margin-top:8px}
.jauge i{display:block;height:100%;background:var(--rose)}

/* Formulaires */
.champ{margin-bottom:14px}
.champ label{display:block;font-size:13px;color:var(--encre-2);margin-bottom:5px}
input[type=text],input[type=email],input[type=password],input[type=tel],input[type=date],
input[type=time],input[type=number],input[type=url],input[type=file],select,textarea{
  width:100%;padding:10px 13px;border:1px solid var(--trait);border-radius:10px;
  background:#fafafa;font:inherit;color:var(--encre);
}
input:focus,select:focus,textarea:focus{background:#fff;border-color:var(--rose);outline:none}
textarea{min-height:90px;resize:vertical}
input[type=color]{width:54px;height:38px;padding:2px;border:1px solid var(--trait);border-radius:10px;background:#fff}
select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--encre-2) 50%),linear-gradient(135deg,var(--encre-2) 50%,transparent 50%);
  background-position:calc(100% - 18px) 17px,calc(100% - 13px) 17px;background-size:5px 5px;background-repeat:no-repeat}
.aide{font-size:12.5px;color:var(--encre-2);margin:4px 0 0}
.interrupteurs label{display:flex;align-items:center;gap:8px;padding:7px 0;font-size:14px;color:var(--encre)}
.interrupteurs input{width:auto}

/* Boutons */
.bouton{
  display:inline-block;padding:10px 20px;border-radius:30px;border:1px solid var(--rose);
  background:var(--rose);color:#fff;text-decoration:none;font-size:14.5px;font-weight:500;cursor:pointer;
}
.bouton:hover{background:#d92b62;border-color:#d92b62}
.bouton-clair{background:var(--rose-clair);color:var(--rose);border-color:var(--rose-clair)}
.bouton-clair:hover{background:#fbdae5;border-color:#fbdae5}
.bouton-fantome{background:#fff;border-color:var(--trait);color:var(--encre-2)}
.bouton-fantome:hover{background:#f6f6f7;color:var(--encre)}
.bouton-danger{background:var(--rouge);border-color:var(--rouge)}
.bouton-danger:hover{background:#a43026}
.bouton-petit{padding:6px 13px;font-size:13px}
.barre-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}

/* Tableaux */
.tableau{width:100%;border-collapse:collapse;font-size:14px}
.tableau th{
  text-align:left;font-weight:500;color:var(--encre-2);font-size:12.5px;
  border-bottom:1px solid var(--trait);padding:9px 10px;white-space:nowrap;
}
.tableau td{border-bottom:1px solid #f1f2f4;padding:10px;vertical-align:middle}
.tableau tr:hover td{background:#fafafa}
.defile{overflow-x:auto}
.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px}

.pastille{display:inline-block;padding:3px 11px;border-radius:30px;font-size:12px;background:#f1f2f4;color:var(--encre-2)}
.p-confirme{background:#e4f5ee;color:var(--vert)}
.p-decline{background:#fbecea;color:var(--rouge)}
.p-attente{background:#fdf2e3;color:var(--or)}

/* Flash */
.flash{padding:12px 16px;border-radius:12px;margin-bottom:16px;font-size:14px;border:1px solid}
.flash-ok{background:#e9f7f1;border-color:#c6e8da;color:var(--vert)}
.flash-err{background:#fdeeec;border-color:#f2cdc9;color:var(--rouge)}
.flash-info{background:var(--rose-clair);border-color:#f8d3e0;color:var(--rose)}

/* Vide */
.vide{text-align:center;color:var(--encre-2);padding:34px 16px}
.vide p{margin:0 0 14px}

/* Cartes événement */
.carte-event{display:block;text-decoration:none;color:inherit;background:var(--surface);
  border:1px solid var(--trait);border-radius:var(--r);overflow:hidden}
.carte-event:hover{border-color:#d6d7db}
.carte-event .vignette{height:120px;background:#e6e7ea center/cover}
.carte-event .corps{padding:16px}
.carte-event h3{margin:0 0 4px;font-size:16px}
.carte-event p{margin:0;color:var(--encre-2);font-size:13px}

/* Galerie de modèles */
.modeles{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}
.modele{display:block;cursor:pointer;position:relative}
.modele input{position:absolute;opacity:0;width:0}
.modele-vue{
  display:block;position:relative;aspect-ratio:3/4;border-radius:12px;overflow:hidden;
  border:1px solid var(--trait);background:#f4f4f5;
}
.modele-vue img{width:100%;height:100%;object-fit:cover}
.modele-nuancier{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:34px}
.modele-tag{position:absolute;top:8px;left:8px;background:var(--rose);color:#fff;font-size:11px;
  padding:3px 10px;border-radius:30px}
.modele input:checked + .modele-vue{outline:2px solid var(--rose);outline-offset:2px;border-color:var(--rose)}
.modele-nom{display:block;font-size:14px;margin-top:8px;font-weight:500}
.modele-desc{display:block;font-size:12.5px;color:var(--encre-2);line-height:1.35}

@media (max-width:640px){
  .barre{gap:10px;padding:12px 16px}
  .barre-liens{order:3;width:100%;gap:16px}
  h1{font-size:20px}
  .page{padding:16px 12px 50px}
  .carte{padding:16px}
}
@media print{
  .barre,.onglets,.bandeau-event .bouton,.pied,.barre-actions{display:none}
  body{background:#fff}
}
