/* LCF Gravure : styles de la fiche produit, du panier et de la commande.
   Le simulateur a sa propre feuille, chargee dans son cadre : assets/sim/. */

/* ═══════════════════════════════════════════════════════════
   CADRE DU SIMULATEUR, PAR-DESSUS LA FICHE PRODUIT
   ═══════════════════════════════════════════════════════════ */
.lcf-voile{position:fixed;inset:0;z-index:2147483000;background:rgba(16,22,40,.74)}
.lcf-voile[hidden]{display:none !important}
.lcf-cadre{position:absolute;inset:0;width:100%;height:100%;border:0;background:transparent;display:block}
.lcf-voile-attente{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:#fff;
  font:500 15px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}
html.lcf-fige,html.lcf-fige body{overflow:hidden !important}
.lcf-entree-alerte{margin-top:8px;padding:8px 10px;border-radius:3px;background:#fff;color:#A81217;font-size:12.5px;font-weight:600;line-height:1.4}
.lcf-entree-alerte[hidden]{display:none !important}

/* ═══════════════════════════════════════════════════════════
   BLOC D'ENTREE SUR LA FICHE PRODUIT
   Styles hors .lcf-overlay : ils vivent dans la page Flatsome.
   Selecteurs prefixes lcf- pour ne rien percuter du theme.
   ═══════════════════════════════════════════════════════════ */
.lcf-entree{
  background:#243873;border-radius:4px;padding:13px 14px;margin:14px 0;
  position:relative;overflow:hidden;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}
/* emblème du coq, coupé par l'angle, comme dans le panneau du simulateur */
.lcf-entree::before,.lcf-entree::after{
  content:'';position:absolute;border-radius:50%;pointer-events:none;
}
.lcf-entree::before{right:-30px;bottom:-28px;width:112px;height:112px;border:10px solid rgba(255,255,255,.10)}
.lcf-entree::after{right:-6px;bottom:-4px;width:60px;height:60px;border:6px solid rgba(255,255,255,.075)}
.lcf-entree>*{position:relative}

.lcf-entree-titre{font-size:15px;font-weight:600;color:#fff;line-height:1.3}
.lcf-entree-texte{font-size:12.5px;color:#DDE3F3;margin-top:4px;line-height:1.45}
.lcf-entree-texte strong{color:#fff;font-weight:600}
.lcf-entree-texte .amount{color:#fff}

.lcf-entree-bouton{
  display:block;width:100%;margin-top:11px;padding:11px 14px;
  background:#fff;color:#243873;border:0;border-radius:3px;
  font:inherit;font-size:13.5px;font-weight:600;cursor:pointer;
  transition:background .16s ease;
}
.lcf-entree-bouton:hover,.lcf-entree-bouton:focus{background:#E7EAF3;color:#243873}
/* Face au theme (releve sur le site le 13/11/2026) : « form.cart > * » annule les marges du bloc,
   et la regle generale des boutons met le texte en capitales, ajoute des marges et une hauteur minimale. */
form.cart > .lcf-entree{margin:14px 0}
.lcf-entree .lcf-entree-bouton{margin:11px 0 0;min-height:0;min-width:0;letter-spacing:0;text-transform:none;line-height:1.3}
.lcf-entree-note{font-size:11px;color:#DDE3F3;text-align:center;margin-top:7px;line-height:1.4}

.lcf-recap{margin-top:11px;padding-top:10px;border-top:1px solid rgba(255,255,255,.22)}
.lcf-recap-titre{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#DDE3F3;margin-bottom:6px}
.lcf-recap-ligne{display:flex;align-items:baseline;gap:8px;font-size:12px;color:#DDE3F3;padding:2px 0}
.lcf-recap-contenu{flex:1;min-width:0;color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lcf-recap-prix{white-space:nowrap}
.lcf-recap-total{display:flex;justify-content:space-between;font-size:12.5px;color:#fff;margin-top:7px;padding-top:7px;border-top:1px solid rgba(255,255,255,.18)}

.lcf-badge-panier{
  display:inline-block;margin-left:6px;padding:1px 7px;border-radius:20px;
  background:#EEF1F7;color:#243873;font-size:10px;font-weight:600;vertical-align:middle;
}

@media (max-width:900px){
  .lcf-entree{padding:12px}
  .lcf-entree-bouton{padding:13px 14px;font-size:14px}
}

/* ═══════════════════════════════════════════════════════════
   PRODUITS COMPLEMENTAIRES SUR LA FICHE PRODUIT
   La photo est visible d'emblee : ce qu'on ne voit pas ne se desire pas.
   Les coloris sont des carres, jamais des ronds, pour ne pas evoquer
   une variation de produit.
   ═══════════════════════════════════════════════════════════ */
/* 1.8.3 : plusieurs cartes possibles, textes lisibles (ni gris ni corps minuscules), et regles ecrites
   pour tenir face au theme : il met les boutons en capitales, leur ajoute marges et hauteur minimale,
   et les arrondit a 20px avec !important (releve sur le site le 13/11/2026). */
.lcf-comp{margin:14px 0;font-family:inherit;text-align:left}
form.cart > .lcf-comp{margin:14px 0}
.lcf-comp *{box-sizing:border-box}
.lcf-comp-intertitre{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#243873;margin:0 0 8px;line-height:1.3}
.lcf-comp-carte{display:flex;gap:12px;align-items:stretch;border:1px solid #C9D0E0;border-radius:8px;padding:10px;background:#fff;margin:0 0 8px;transition:border-color .16s ease, box-shadow .16s ease}
.lcf-comp-carte.prise{border-color:#243873;box-shadow:0 0 0 1px #243873}
.lcf-comp .lcf-comp-photo{width:84px;height:84px;max-width:none;flex:none;border-radius:6px;object-fit:cover;background:#F4F5F8;display:block;margin:0;padding:0;border:0}
.lcf-comp-corps{flex:1;min-width:0;display:flex;flex-direction:column}
.lcf-comp-tete{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.lcf-comp-titre{font-size:15px;font-weight:700;color:#1B2233;line-height:1.3;margin:0}
.lcf-comp-prix{font-size:15px;font-weight:700;color:#1B2233;white-space:nowrap;line-height:1.3}
.lcf-comp-argument{font-size:13px;color:#1B2233;margin:2px 0 0;line-height:1.4}
.lcf-comp-pied{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:8px}
.lcf-comp-coloris{display:flex;align-items:center;gap:8px;flex-wrap:wrap;flex:1 1 0;min-width:0}
.lcf-comp .lcf-comp-carre{display:block;width:34px;height:34px;min-width:0;min-height:0;flex:none;margin:0;padding:2px;cursor:pointer;border:0;border-radius:5px !important;background:#fff;box-shadow:0 0 0 1px #8A93A6;line-height:1;letter-spacing:0;text-transform:none;transition:box-shadow .14s ease}
.lcf-comp .lcf-comp-carre img{width:100%;height:100%;max-width:none;object-fit:cover;border-radius:3px;display:block;margin:0}
.lcf-comp .lcf-comp-carre:hover{box-shadow:0 0 0 2px #5F7191;background:#fff}
.lcf-comp .lcf-comp-carre.on{box-shadow:0 0 0 2px #243873}
.lcf-comp .lcf-comp-carre.hs{opacity:.4;cursor:not-allowed}
.lcf-comp .lcf-comp-carre.hs:hover{box-shadow:0 0 0 1px #8A93A6}
.lcf-comp-mention{font-size:13px;font-weight:600;color:#1B2233;line-height:1.3}
/* avec des coloris, la mention occupe sa propre ligne : la carte garde la meme hauteur d'un coloris a l'autre */
.lcf-comp-coloris .lcf-comp-carre ~ .lcf-comp-mention{flex:0 0 100%}
.lcf-comp-mention[data-etat="ok"]{color:#0B6B3A}
.lcf-comp-mention[data-etat="faible"]{color:#9A4D00}
.lcf-comp-mention[data-etat="rupture"]{color:#A81217}
.lcf-comp-bilan{margin:2px 0 0;padding:0;font-size:13.5px;font-weight:700;color:#243873;line-height:1.4}
.lcf-comp-bilan[hidden]{display:none}
.lcf-comp .lcf-comp-ajouter{display:inline-block;flex:none;min-width:92px;text-align:center;min-height:0;height:auto;margin:0;padding:9px 18px;background:#243873;color:#fff;border:2px solid #243873;border-radius:20px !important;font:inherit;font-size:13.5px;font-weight:700;line-height:1.2;letter-spacing:0;text-transform:none;cursor:pointer;white-space:nowrap;box-shadow:none;transition:background .14s ease, color .14s ease}
.lcf-comp .lcf-comp-ajouter:hover,.lcf-comp .lcf-comp-ajouter:focus-visible{background:#182550;border-color:#182550;color:#fff;box-shadow:none}
.lcf-comp .lcf-comp-ajouter.pris{background:#fff;color:#243873;border-color:#243873}
.lcf-comp .lcf-comp-ajouter.pris:hover,.lcf-comp .lcf-comp-ajouter.pris:focus-visible{background:#EEF1F8;color:#243873;border-color:#243873}
.lcf-comp .lcf-comp-ajouter:focus{outline:0}
.lcf-comp .lcf-comp-ajouter:focus-visible,.lcf-comp .lcf-comp-carre:focus-visible{outline:2px solid #243873;outline-offset:2px}
.lcf-comp .lcf-comp-ajouter:disabled{background:#5B6478;border-color:#5B6478;color:#fff;cursor:not-allowed;opacity:1}

@media (max-width:900px){
  .lcf-comp .lcf-comp-photo{width:68px;height:68px}
  .lcf-comp-carte{gap:10px}
  .lcf-comp-titre,.lcf-comp-prix{font-size:14.5px}
  .lcf-comp .lcf-comp-carre{width:36px;height:36px}       /* cible tactile confortable */
  .lcf-comp .lcf-comp-ajouter{padding:10px 16px;font-size:13.5px}
}

/* apercu de gravure dans le panier et la commande */
.lcf-apercu{margin:6px 0}
.lcf-apercu img{max-width:100%;height:auto;border:1px solid #DFE3EC;border-radius:3px;display:block;background:#fff}

/* le prenom choisi dans la boutique attend sur la fiche */
.lcf-entree .lcf-entree-suivi{margin:8px 0 10px;font-size:14.5px;line-height:1.4;color:#fff}
.lcf-entree .lcf-entree-suivi strong{color:#fff;font-weight:700}
.lcf-entree-suivi[hidden]{display:none}
