/*
 * Espace personnel (pages « Mon compte »), chargé après le CSS du thème.
 *
 * CUSTOM: tout le rendu passe par ce fichier plutôt que par des utilitaires
 * Tailwind. Le CSS du thème est compilé dans le dépôt des composants iLucid, où
 * ce plugin n'existe pas : une classe utilisée ici seulement n'y serait jamais
 * générée. Les valeurs reprennent les styles calculés de l'ancien site
 * (captures-avant-bascule/2026-10-18/espace-perso/styles/*.json).
 *
 * Les règles du thème pour le compte sont hors couche CSS et certaines portent
 * !important : les sélecteurs ci-dessous sont au moins aussi précis, et
 * l'emportent par leur ordre de chargement.
 */

/* Mise en page et menu du compte : ceux d'iLucid v2 (carte, groupes titrés,
   menu replié sur mobile), comme sur Vignerons Bio. Les reprises de l'ancien
   site (menu plat en capitales, colonne de 292 px) sont retirées. */

/* ── Contenu des vues ── */

.luciole-ep {
  color: #374151;
  font-size: 16px;
  line-height: normal;
}
.luciole-ep p {
  margin: 0;
}
.luciole-ep a {
  color: #d35d72;
  font-weight: 500;
  text-decoration: none;
}
.luciole-ep a:hover {
  text-decoration: underline;
}
.luciole-ep strong {
  font-weight: 600;
}
.luciole-ep b {
  font-weight: 700;
}
.luciole-ep__texte {
  line-height: 22.4px;
}

/* Titres « Bonjour … » : marges du thème neutralisées (!important chez lui). */
.woocommerce-MyAccount-content .luciole-ep h2.luciole-ep__bonjour {
  margin: 0 0 20px !important;
  font-family: var(--font-titres);
  font-size: 36px;
  font-weight: 700;
  line-height: normal;
  color: #111827;
}

/* Tableau de bord abonné : h2 de 34 px, récapitulatif puis deux paragraphes. */
.woocommerce-MyAccount-content .luciole-ep h2.luciole-ep-abonnements__titre {
  margin: 0 !important;
  font-family: var(--font-titres);
  font-size: 34px;
  font-weight: 700;
  line-height: normal;
  color: #111827;
}
.luciole-ep-abonnements {
  line-height: normal;
}
.luciole-ep .luciole-ep-abonnements__ligne {
  margin: 16px 0 8px;
}
.luciole-ep .luciole-ep-abonnements__ligne--expire {
  margin: 16px 0;
}
.luciole-ep--abonne .luciole-ep__texte {
  margin-top: 20px;
}

/* Présentation des tableaux non abonnés. */
.luciole-ep__presentation {
  display: flex;
  flex-direction: column;
}
.luciole-ep__presentation > .luciole-ep__texte + .luciole-ep-iconbox {
  margin-top: 20px;
}

/* Texte d'accueil iLucid : 20 px avant la carte, comme le texte enrichi d'origine. */
.luciole-ep--ilucid .luciole-ep__presentation {
  margin-bottom: 20px;
}

/* Intertitre « iLucid, un site Internet en mode SAAS » du texte d'accueil. */
.woocommerce-MyAccount-content .luciole-ep__texte h3 {
  margin: 0 !important;
  padding: 26px 0 30px;
  font-family: var(--font-titres);
  font-size: 26px;
  font-weight: 700;
  line-height: normal;
  color: #111827;
}

/* Blocs icône + texte. */
.luciole-ep-iconbox {
  display: flex;
  gap: 20px;
  margin: 0 0 30px;
  padding: 15px;
  background: #ffffff;
  border: 1px solid #ececec;
  border-radius: 10px;
}
.luciole-ep-iconbox__icone {
  flex: none;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  padding: 12px;
  background: #d0d0d0;
  border-radius: 8px;
  color: #ffffff;
}
.luciole-ep-iconbox__icone svg {
  display: block;
  width: 24px;
  height: 24px;
  fill: currentColor;
}
.luciole-ep .luciole-ep-iconbox__titre {
  margin: 0 0 8px;
  font-family: var(--font-titres);
  font-size: 26px;
  font-weight: 400;
  line-height: normal;
}
.luciole-ep-iconbox__texte {
  line-height: normal;
}
@media (max-width: 1023px) {
  .luciole-ep-iconbox {
    flex-direction: column;
  }
}

/* Carte produit. */
.luciole-ep-carte {
  margin: 0 0 30px;
  padding: 16px;
  background: #ffffff;
  border: 1px solid #ececec;
  border-radius: 10px;
}
.luciole-ep-carte__produit {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  margin-bottom: 20px;
}
.woocommerce-MyAccount-content .luciole-ep .luciole-ep-carte__titre {
  margin: 0 !important;
  width: 100%;
  font-family: var(--font-titres);
  font-size: 32px;
  font-weight: 700;
  line-height: normal;
  text-align: center;
  color: #111827;
}
.luciole-ep-carte .price {
  margin: 0;
  font-family: var(--font-titres);
  font-size: 25px;
  font-weight: 600;
  line-height: 30px;
  color: #111827;
}
.luciole-ep-carte .price .woocommerce-price-suffix {
  font-family: var(--font-corps);
  font-size: 16px;
  font-weight: 400;
  color: #4b5563;
}
.luciole-ep-carte__achat {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
}
.luciole-ep-carte__produit--variable .luciole-ep-carte__achat form.cart {
  width: 360px;
  max-width: 100%;
}

/* Formulaire de WooCommerce : libellés, quantité et description masqués. */
.luciole-ep-carte form.cart {
  margin: 0;
  gap: 0 !important;
}
.luciole-ep-carte form.cart:not(.variations_form) {
  justify-content: center;
  margin-top: 0;
}
.luciole-ep-carte .variations_form .variations {
  margin: 0 0 8px;
}
.luciole-ep-carte .variations_form .variations tr {
  margin: 0;
  gap: 0;
}
.luciole-ep-carte .variations th.label,
.luciole-ep-carte .variations td.label,
.luciole-ep-carte .variations label,
.luciole-ep-carte .woocommerce-variation-description,
.luciole-ep-carte div.quantity {
  display: none !important;
}
.luciole-ep-carte .variations_form select {
  width: 100%;
  padding: 12px 32px 12px 16px;
  border: 1px solid #d1d5db;
  border-radius: 3px;
  background-image: none;
  color: #374151;
  font-size: 16px;
  line-height: 22.4px;
}
.luciole-ep-carte .single_variation_wrap .woocommerce-variation-price {
  margin: 0 0 5px;
}
.luciole-ep-carte .woocommerce-variation-add-to-cart {
  margin-top: 15px;
}
/* CUSTOM: le thème force les boutons du compte en petit (!important sur
   .woocommerce-MyAccount-content .button) : on rétablit le bouton de l'ancienne
   carte, avec la même arme. */
.woocommerce-MyAccount-content .luciole-ep-carte .single_add_to_cart_button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 14px 24px !important;
  border: 1px solid transparent !important;
  border-radius: 3px !important;
  background-color: #d35d72 !important;
  color: #ffffff !important;
  font-family: Arial, sans-serif;
  font-size: 16px !important;
  font-weight: 500 !important;
  line-height: 16px;
  letter-spacing: normal !important;
  text-transform: uppercase !important;
  cursor: pointer;
}
.woocommerce-MyAccount-content .luciole-ep-carte .single_add_to_cart_button:hover {
  background-color: #b54b5e !important;
  border-color: #b54b5e !important;
}
/* Sans formule choisie, le bouton gardait sa couleur pleine (WooCommerce
   affiche alors son message « choisissez une option » au clic). */
.woocommerce-MyAccount-content .luciole-ep-carte .single_add_to_cart_button.disabled {
  opacity: 1 !important;
}
.luciole-ep-carte__produit--variable .single_add_to_cart_button {
  width: 100%;
}

/* Actions propres à l'état de l'abonnement, rendues par WooCommerce Subscriptions. */
.luciole-ep-carte .limited-subscription-notice {
  margin: 16px 0;
  padding: 0;
  background: none;
  border: 0;
  text-align: center;
}
.woocommerce-MyAccount-content .luciole-ep-carte a.product-resubscribe-link {
  display: inline;
  padding: 0 !important;
  background: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  color: #d35d72 !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  letter-spacing: normal !important;
  text-decoration: underline !important;
  text-transform: none !important;
}

/* Liste à coches vertes. */
.luciole-ep-coche {
  display: flex;
  gap: 15px;
  padding: 10px;
}
.luciole-ep-coche__icone {
  flex: none;
  width: 25px;
  height: 25px;
  color: #39b515;
}
.luciole-ep-coche__icone svg {
  display: block;
  width: 25px;
  height: 25px;
  fill: currentColor;
}
.luciole-ep-coche__texte {
  line-height: normal;
}

/* Pied : liste « ne comprend pas » et contact. */
.luciole-ep__pied ul {
  margin: 16px 0;
  padding: 0 0 0 40px;
  list-style: disc;
}
.luciole-ep__pied li {
  margin: 0;
  padding: 0;
}
.luciole-ep__pied ul + p {
  margin-top: 16px;
}

/* ── Onglets ── */

.woocommerce-MyAccount-content .luciole-ep .luciole-ep-onglet__titre {
  margin: 0 0 20px !important;
  font-family: var(--font-titres);
  font-size: 38px;
  font-weight: 700;
  line-height: normal;
  color: #111827;
}
.woocommerce-MyAccount-content .luciole-ep .luciole-ep-onglet__titre-presentation {
  margin: 0 0 20px !important;
  font-family: var(--font-titres);
  font-size: 34px;
  font-weight: 700;
  line-height: normal;
  color: #111827;
}

/* Texte long de la présentation iLucid : rythme du texte enrichi Breakdance. */
.luciole-ep__texte--long ul {
  margin: 16px 0;
  padding: 0 0 0 40px;
  list-style: disc;
}
.luciole-ep__texte--long ul ul {
  margin: 0;
  list-style: circle;
}
.luciole-ep__texte--long li,
.luciole-ep__texte--long li p {
  margin: 0;
}
.woocommerce-MyAccount-content .luciole-ep__texte--long h3 {
  margin: 0 !important;
  padding: 24px 0 16px;
  font-size: 26px;
}
.woocommerce-MyAccount-content .luciole-ep__texte--long h4 {
  margin: 0;
  padding: 16px 0 8px;
  font-family: var(--font-titres);
  font-size: 20px;
  font-weight: 700;
  color: #111827;
}
.luciole-ep__texte--long p + p {
  margin-top: 16px;
}

/* Contenu des pages CGU et CGV, au rythme de l'ancien rendu. */
.luciole-ep__page p,
.luciole-ep__page ul,
.luciole-ep__page ol {
  margin: 0 0 24px;
}
.luciole-ep__page ul,
.luciole-ep__page ol {
  padding-left: 40px;
}
.luciole-ep__page ul {
  list-style: disc;
}
.luciole-ep__page ol {
  list-style: decimal;
}
.luciole-ep__page li {
  margin: 0;
}
.woocommerce-MyAccount-content .luciole-ep__page h2,
.woocommerce-MyAccount-content .luciole-ep__page h3 {
  margin: 0 !important;
  padding: 24px 0 32px;
  font-family: var(--font-titres);
  font-weight: 700;
  line-height: normal;
  color: #111827;
}
.woocommerce-MyAccount-content .luciole-ep__page h2 {
  font-size: 34px;
}
.woocommerce-MyAccount-content .luciole-ep__page h3 {
  font-size: 26px;
}

/* ── Téléphone ── */

@media (max-width: 767px) {
  .woocommerce-MyAccount-content .luciole-ep h2.luciole-ep-abonnements__titre {
    font-size: 30px;
  }
  .woocommerce-MyAccount-content .luciole-ep h2.luciole-ep__bonjour {
    font-size: 32px;
  }
  .woocommerce-MyAccount-content .luciole-ep .luciole-ep-carte__titre {
    font-size: 28px;
  }
  .woocommerce-MyAccount-content .luciole-ep .luciole-ep-onglet__titre {
    font-size: 32px;
  }
}
