/* Charte Komu pour la page d'adhesion publique Dolibarr (injectee via Caddy).
   Scopee a body.publicnewmemberform : n'affecte que la page d'adhesion. */
body.publicnewmemberform{
  --k-orange:#E8620A; --k-orange-dark:#C4510A; --k-soft:#FFF3E8;
  --k-dark:#2D2D2D; --k-text:#444; --k-border:#E3E3E3;
  background:#FBFBFB !important;
  font-family:'Segoe UI',system-ui,Arial,sans-serif !important;
  color:var(--k-text) !important;
}
/* Fonds gris Dolibarr -> fond Komu clair */
body.publicnewmemberform .backgreypublicpayment,
body.publicnewmemberform .bodyline{ background:transparent !important; border:0 !important; box-shadow:none !important; }
/* Masquer le "powered by Dolibarr" */
body.publicnewmemberform .poweredbypublicpayment{ display:none !important; }

/* Carte centrale */
body.publicnewmemberform .divmainbodylarge{
  max-width:700px; margin:26px auto; background:#fff;
  border:1px solid var(--k-border); border-radius:18px;
  box-shadow:0 10px 34px rgba(0,0,0,.07); padding:30px 34px 34px;
}
/* Logo : centre, taille raisonnable */
body.publicnewmemberform .logopublicpayment{ text-align:center; margin-bottom:6px; }
body.publicnewmemberform #dolpaymentlogo{ max-height:64px; width:auto; }

/* Titre */
body.publicnewmemberform .titre{
  color:var(--k-dark) !important; font-weight:800 !important; font-size:1.5rem !important;
  display:block; text-align:center; margin:6px 0 4px;
}
body.publicnewmemberform .subscriptionformhelptext{
  background:var(--k-soft) !important; border:1px solid #F0C9A6 !important;
  border-left:5px solid var(--k-orange) !important; border-radius:10px !important;
  color:var(--k-dark) !important; opacity:1 !important; font-size:.97rem !important;
  line-height:1.55; padding:14px 18px !important; margin:8px 0 20px !important;
  text-align:left !important; font-weight:500;
}
body.publicnewmemberform .subscriptionformhelptext a{ color:var(--k-orange-dark) !important; font-weight:700; }

/* Tableau de formulaire -> espace et lisibilite */
body.publicnewmemberform #tablesubscribe{ width:100%; border-collapse:separate; border-spacing:0 10px; }
body.publicnewmemberform #tablesubscribe td{ border:0 !important; padding:4px 6px; vertical-align:middle; }
body.publicnewmemberform #tablesubscribe label,
body.publicnewmemberform .fieldrequired{ color:var(--k-dark); font-weight:600; }

/* Champs */
body.publicnewmemberform input[type=text],
body.publicnewmemberform input[type=email],
body.publicnewmemberform input[type=tel],
body.publicnewmemberform input[type=number],
body.publicnewmemberform input[type=password],
body.publicnewmemberform textarea,
body.publicnewmemberform select,
body.publicnewmemberform .select2-selection{
  border:1px solid var(--k-border) !important; border-radius:10px !important;
  padding:9px 12px !important; font-size:.95rem !important; background:#fff !important;
  min-height:40px; box-shadow:none !important;
}
body.publicnewmemberform input:focus,
body.publicnewmemberform textarea:focus,
body.publicnewmemberform select:focus{
  outline:none !important; border-color:var(--k-orange) !important;
  box-shadow:0 0 0 3px var(--k-soft) !important;
}

/* Bouton "Rejoindre" */
body.publicnewmemberform #submitsave,
body.publicnewmemberform input.button[type=submit]{
  background:var(--k-orange) !important; color:#fff !important; border:0 !important;
  border-radius:12px !important; padding:12px 26px !important; font-weight:700 !important;
  font-size:1rem !important; cursor:pointer; box-shadow:0 3px 10px rgba(232,98,10,.30) !important;
  transition:background .15s, transform .1s;
}
body.publicnewmemberform #submitsave:hover{ background:var(--k-orange-dark) !important; transform:translateY(-1px); }
body.publicnewmemberform .center.modal-footer,
body.publicnewmemberform [align=center]{ text-align:center !important; }

/* Liens en orange Komu */
body.publicnewmemberform a{ color:var(--k-orange); }
@media (prefers-reduced-motion:reduce){ body.publicnewmemberform *{ transition:none !important; } }
