/* Boutiques en marque blanche - socle commun aux 4 modeles (08/11/2026).
   Couleurs : variables --mb-c1 (principale), --mb-c2 (secondaire), --mb-c3 (accent) et --mb-cX-txt (texte lisible dessus),
   posees par MB/layout.inc.php a partir des reglages de la boutique. Les modules du site (catalogue, panier, compte)
   gardent leur balisage : ce fichier leur donne une presentation neutre, sans rien de l'adherent. */
:root { --mb-fond: #f5f6f8; --mb-carte: #ffffff; --mb-texte: #1f2933; --mb-doux: #616e7c; --mb-bord: #e4e7eb; --mb-rayon: 10px; }
html { scroll-behavior: smooth; }
body.mb { margin: 0; background: var(--mb-fond); color: var(--mb-texte); font: 16px/1.55 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; }
.mb a { color: var(--mb-c2); }
.mb a:hover, .mb a:focus { color: var(--mb-c1); }
.mb img { max-width: 100%; height: auto; }
.mb-conteneur { max-width: 1180px; margin: 0 auto; padding: 0 20px; }
.mb-evitement { position: absolute; left: -9999px; }
.mb-evitement:focus { left: 12px; top: 12px; z-index: 1000; background: #fff; padding: 8px 12px; border-radius: 6px; }

/* en-tete commun */
.mb-entete { background: var(--mb-c1); color: var(--mb-c1-txt); }
.mb-entete-in { display: flex; align-items: center; justify-content: space-between; gap: 20px; min-height: 76px; flex-wrap: wrap; }
.mb-marque { display: flex; align-items: center; gap: 12px; color: var(--mb-c1-txt) !important; text-decoration: none !important; font-weight: 800; font-size: 20px; }
.mb-logo { max-height: 54px; width: auto; }
.mb-nav { display: flex; flex-wrap: wrap; gap: 6px 18px; }
.mb-nav a { color: var(--mb-c1-txt) !important; text-decoration: none; font-weight: 600; padding: 6px 2px; border-bottom: 2px solid transparent; }
.mb-nav a:hover, .mb-nav a:focus { border-bottom-color: var(--mb-c3); }
.mb-nav-panier, .mb-nav a.mb-nav-panier { background: var(--mb-c3); color: var(--mb-c3-txt) !important; border-radius: 999px; padding: 6px 14px !important; border: 0 !important; }

/* contenu */
.mb-contenu { min-height: 55vh; padding: 0 0 48px; }
.mb-titre-page { margin: 32px 0 20px; font-size: 30px; font-weight: 800; color: var(--mb-c1); }
.mb-page { background: var(--mb-carte); border: 1px solid var(--mb-bord); border-radius: var(--mb-rayon); padding: 24px; }
.mb-message { max-width: 1180px; margin: 20px auto 0; padding: 12px 16px; border-radius: 8px; background: #fff4e5; border: 1px solid #f5c26b; color: #6b4b00; }

/* boutons */
.mb-bouton, .mb input[type=submit], .mb button[type=submit], .mb .btn-compte, .mb .bouton { display: inline-block; border: 0; border-radius: 999px; padding: 11px 22px; font-weight: 700; text-decoration: none !important; cursor: pointer; background: var(--mb-c1); color: var(--mb-c1-txt) !important; }
.mb-bouton-accent, .mb input[type=submit] { background: var(--mb-c3); color: var(--mb-c3-txt) !important; }
.mb-bouton-clair { background: rgba(255,255,255,.16); color: inherit !important; box-shadow: inset 0 0 0 2px currentColor; }
.mb-bouton:hover, .mb input[type=submit]:hover { filter: brightness(1.08); }

/* formulaires (connexion, compte, panier) */
.mb input[type=text], .mb input[type=password], .mb input[type=email], .mb input[type=number], .mb select, .mb textarea { border: 1px solid #cbd2d9; border-radius: 8px; padding: 9px 12px; max-width: 100%; background: #fff; }
.mb input:focus, .mb select:focus, .mb textarea:focus { outline: 2px solid var(--mb-c3); outline-offset: 1px; border-color: transparent; }
.mb fieldset { border: 0; padding: 0; margin: 0 0 16px; }
.mb legend { border: 0; font-size: 20px; font-weight: 800; color: var(--mb-c1); margin-bottom: 8px; }
.mb .blocAlerte { background: #fde8e8; border: 1px solid #f8b4b4; color: #9b1c1c; border-radius: 8px; padding: 10px 14px; }
.mb .blocAlerte img { display: none; }

/* tableaux (panier, commandes) */
.mb table { max-width: 100%; }
.mb .mb-page table th { background: var(--mb-c1); color: var(--mb-c1-txt); }
.mb .mb-page table td, .mb .mb-page table th { padding: 8px 10px; border-color: var(--mb-bord); vertical-align: middle; }

/* pied commun */
.mb-pied { background: #111827; color: #d2d6dc; font-size: 14px; }
.mb-pied a { color: #fff; }
.mb-pied-in { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 10px 30px; padding-top: 28px; padding-bottom: 28px; }
.mb-pied-marque { display: flex; flex-direction: column; gap: 4px; }
.mb-pied-liens { display: flex; flex-wrap: wrap; gap: 6px 18px; align-items: center; }
.mb-vendeur { flex-basis: 100%; margin: 6px 0 0; color: #9aa5b1; font-size: 13px; }

/* page de connexion (boutique privee, visiteur non connecte) */
body.mb-connexion .mb-page { max-width: 560px; margin: 0 auto; }

@media (max-width: 720px) {
  .mb-entete-in { padding-top: 10px; padding-bottom: 10px; }
  .mb-nav { width: 100%; gap: 4px 14px; font-size: 15px; }
  .mb-titre-page { font-size: 24px; }
  .mb-page { padding: 16px; }
}

/* ecran de connexion (MB/connexion.inc.php) */
.mb-connexion-carte { max-width: 440px; margin: 56px auto 0; background: var(--mb-carte); border: 1px solid var(--mb-bord); border-radius: 16px; padding: 32px 30px; box-shadow: 0 10px 30px rgba(17,24,39,.08); border-top: 6px solid var(--mb-c1); }
.mb-connexion-logo { display: block; max-height: 90px; margin: 0 auto 14px; }
.mb-connexion-titre { margin: 0 0 6px; text-align: center; font-size: 26px; font-weight: 800; color: var(--mb-c1); }
.mb-connexion-intro { margin: 0 0 20px; text-align: center; color: var(--mb-doux); }
.mb-connexion-form { display: flex; flex-direction: column; gap: 6px; }
.mb-connexion-form label { font-weight: 700; margin-top: 8px; }
.mb-connexion-form input[type=text], .mb-connexion-form input[type=password] { width: 100%; padding: 11px 14px; font-size: 16px; }
.mb-connexion-form input[type=submit] { margin-top: 18px; width: 100%; padding: 13px; font-size: 16px; }
.mb-connexion-aide { text-align: center; margin: 14px 0 0; }
.mb-connexion-contact { margin: 18px 0 0; padding-top: 16px; border-top: 1px solid var(--mb-bord); font-size: 14px; color: var(--mb-doux); text-align: center; }
.mb-message-erreur { background: #fde8e8; border-color: #f8b4b4; color: #9b1c1c; margin: 0 0 12px; }

/* liste des produits (module catalogue du site : form.filtre_left + table des produits) */
.mb .filtre_left { background: var(--mb-carte); border: 1px solid var(--mb-bord); border-radius: var(--mb-rayon); padding: 14px 16px; margin: 0 0 18px; }
.mb .filtre_left h5 { display: none; }
.mb .filtre_left .resp_search { display: flex !important; flex-wrap: wrap; align-items: flex-end; gap: 10px 16px; }
.mb .filtre_left .resp_search p { margin: 0; display: flex; flex-direction: column; gap: 4px; }
.mb .filtre_left label { font-weight: 700; font-size: 14px; }
.mb .categorie_filtre { display: none; }   /* arborescence interne de l'adherent : jamais dans la boutique */
.mb .marque_filtre { flex-basis: 100%; }
.mb .marque_filtre .scroll_categorie { display: flex; flex-wrap: wrap; gap: 6px 16px; max-height: none; }
.mb .marque_filtre .group_checkbox { display: flex; align-items: center; gap: 6px; }
.mb .bloc_tri { display: flex; gap: 10px; justify-content: flex-end; margin: 0 0 12px; }
.mb .liste_produits table { border-collapse: separate; border-spacing: 14px; margin: 0 -14px; width: calc(100% + 28px) !important; }
.mb .liste_produits td { vertical-align: top; background: var(--mb-carte); border: 1px solid var(--mb-bord); border-radius: var(--mb-rayon); padding: 16px; width: 33%; transition: box-shadow .2s, transform .2s; }
.mb .liste_produits td:hover { box-shadow: 0 8px 22px rgba(17,24,39,.10); transform: translateY(-2px); }
.mb .liste_produits td:empty { background: transparent; border: 0; box-shadow: none; transform: none; }
.mb .left_list_prod img { display: block; margin: 0 auto 10px; max-height: 220px; }
.mb .right_list_prod h3 { margin: 0 0 8px; font-size: 18px; font-weight: 800; line-height: 1.25; }
.mb .right_list_prod h3 a { color: var(--mb-c1); text-decoration: none; }
.mb .right_list_prod ul { padding-left: 18px; margin: 0 0 8px; color: var(--mb-doux); font-size: 14px; }
.mb .right_list_prod p { margin: 0 0 6px; font-size: 14px; color: var(--mb-doux); }
.mb .enstock img { width: 12px; height: 12px; vertical-align: -1px; margin-right: 6px; }
.mb .prix_list_prod .prix { font-size: 20px; font-weight: 800; color: var(--mb-texte); }
.mb .info_liste a.alt { display: inline-block; margin-top: 6px; padding: 8px 16px; border-radius: 999px; background: var(--mb-c1); color: var(--mb-c1-txt) !important; font-weight: 700; text-decoration: none; }
.mb .no_prod { padding: 30px; text-align: center; color: var(--mb-doux); }
@media (max-width: 720px) {
  .mb .liste_produits table, .mb .liste_produits tbody, .mb .liste_produits tr, .mb .liste_produits td { display: block; width: auto !important; }
  .mb .liste_produits table { margin: 0; border-spacing: 0; }
  .mb .liste_produits td { margin: 0 0 12px; }
  .mb .bloc_tri { justify-content: flex-start; flex-wrap: wrap; }
}

/* fiche produit : ni lien marque/categorie de l'adherent (il mene a son catalogue public), ni visuel du guide des tailles a ses couleurs */
.mb .ref_prod > a, .mb .ref_prod > a + br { display: none; }
.mb a[href*="prendre-votre-taille"] img { display: none; }
.mb a[href*="prendre-votre-taille"]::before { content: "Guide des tailles"; display: inline-block; padding: 9px 18px; border-radius: 999px; background: var(--mb-c2); color: var(--mb-c2-txt); font-weight: 700; }
.mb .prix_fiche strong { font-size: 24px; color: var(--mb-texte); }
.mb-bouton-secondaire { background: var(--mb-c2); color: var(--mb-c2-txt) !important; margin-top: 10px; }

/* fiche produit vue par un visiteur : commander demande un compte */
.mb-commander-connexion { margin: 18px 0; padding: 16px 18px; border-left: 4px solid var(--mb-c1); background: #f6f6f7; border-radius: 6px; }
.mb-commander-connexion p { margin: 0 0 10px; }
.mb-commander-connexion p:last-child { margin: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.mb-commander-connexion .mb-bouton { margin-top: 0; }

/* texte pour lecteurs d'ecran seulement */
.mb-sr { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }

/* fiche produit : tableau a 2 cellules du site (visuels | infos et commande). Le carrousel ne deborde plus ;
   sous 900 px les 2 cellules passent l'une sous l'autre (sinon la page devenait plus large que l'ecran). */
.mb #fiche_panier_add { max-width: 100%; }
.mb #fiche_panier_add table { width: 100%; max-width: 100%; table-layout: fixed; }
.mb #fiche_panier_add td.fiche_produit { width: 45%; }
.mb .left_produit, .mb .carousel_fiche, .mb .carousel_fiche .owl-stage-outer { max-width: 100%; overflow: hidden; }
.mb .carousel_fiche img { max-width: 100%; height: auto; }
.mb #fiche_panier_add td.fiche_produit + td { padding-left: 28px !important; vertical-align: top; }
.mb #fiche_panier_add h4 { font-size: 22px; font-weight: 700; margin: 0 0 8px; color: var(--mb-texte); }
@media (max-width: 900px) {
  .mb #fiche_panier_add table, .mb #fiche_panier_add tbody, .mb #fiche_panier_add tr,
  .mb #fiche_panier_add td.fiche_produit, .mb #fiche_panier_add td.fiche_produit + td { display: block; width: 100% !important; }
  .mb #fiche_panier_add td.fiche_produit + td { padding-left: 0 !important; padding-top: 18px; }
}
/* commande par tailles (compte connecte) : une grille de cases par coloris */
.mb .btn_ajout_panier_new { margin: 6px 0 4px; }
.mb .list_taille { display: flex; flex-wrap: wrap; gap: 10px; align-items: flex-end; margin: 0 0 14px; }
.mb .list_taille .image_taille { flex: 0 0 100%; font-weight: 700; margin-bottom: -2px; }
.mb .list_taille .block_taille { width: 78px; }
.mb .list_taille .intitule_taille { font-size: 13px; color: var(--mb-doux); margin-bottom: 3px; }
.mb .list_taille .input_taille input { width: 100%; padding: 8px 6px; text-align: center; }
/* commande d'un visiteur (taille, coloris, quantite, ajout) */
.mb .btn_ajout_panier .config, .mb .btn_ajout_panier .qty_add { display: flex; flex-wrap: wrap; gap: 12px; align-items: flex-end; margin: 0 0 12px; }
.mb .btn_ajout_panier .group_config, .mb .btn_ajout_panier .select_qty { display: flex; flex-direction: column; min-width: 120px; }
.mb .btn_ajout_panier label { font-weight: 700; font-size: 14px; margin-bottom: 4px; }
.mb .btn_ajout_panier select { max-width: 100%; padding: 8px 10px; border: 1px solid #cfd4da; border-radius: 6px; background: #fff; }
.mb a.bouton_panier { display: inline-block; padding: 11px 22px; border-radius: 999px; background: var(--mb-c3); color: var(--mb-c3-txt) !important; font-weight: 700; text-decoration: none; }
.mb a.bouton_panier:hover, .mb a.bouton_panier:focus { filter: brightness(1.08); text-decoration: none; }
.mb #fiche_panier_add ul { padding-left: 20px; margin-top: 14px; }

/* tunnel de commande (module panier du site, .mdlPanier) : etapes en frise, lignes d'articles en cartes, recapitulatif en tableau,
   sections de l'etape 2 (livraison, reglement, coordonnees) en blocs ; rien ne depasse de l'ecran */
.mb .mdlPanier { max-width: 100%; }
.mb .mdlPanier input[type=text], .mb .mdlPanier input[type=email], .mb .mdlPanier input[type=tel], .mb .mdlPanier select, .mb .mdlPanier textarea { max-width: 100%; box-sizing: border-box; }
.mb .mdlPanier .title_top { display: none; }
.mb .mdlPanier .relative_panier { margin: 0 0 22px; }
.mb .mdlPanier .etape { display: flex; gap: 6px; counter-reset: mb-etape; }
.mb .mdlPanier .item-etape { flex: 1 1 0; min-width: 0; counter-increment: mb-etape; border-top: 4px solid var(--mb-bord); padding-top: 8px; color: var(--mb-doux); }
.mb .mdlPanier .item-etape p { margin: 0; font-size: 14px; font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.mb .mdlPanier .item-etape p::before { content: counter(mb-etape) ". "; }
.mb .mdlPanier .item-etape.active { border-top-color: var(--mb-c1); color: var(--mb-texte); }
.mb .mdlPanier .counter { display: none; }
.mb .mdlPanier .item_panier { display: grid; grid-template-columns: 1fr auto auto; gap: 12px 24px; align-items: center; padding: 16px 0; border-bottom: 1px solid var(--mb-bord); }
.mb .mdlPanier .item_panier ul { margin: 6px 0 0; padding-left: 18px; color: var(--mb-doux); font-size: 14px; }
.mb .mdlPanier .item_panier br { display: none; }
.mb .mdlPanier .title_panier a { color: var(--mb-texte); }
.mb .mdlPanier .supp-resp, .mb .mdlPanier .delete_all a { display: inline-block; margin-top: 8px; font-size: 14px; color: var(--mb-doux); }
.mb .mdlPanier .quantite_panier { display: flex; flex-direction: row-reverse; align-items: center; gap: 8px; }
.mb .mdlPanier .quantite_panier select { padding: 6px 8px; border: 1px solid #cfd4da; border-radius: 6px; }
.mb .mdlPanier .label_panier { font-size: 14px; color: var(--mb-doux); }
.mb .mdlPanier .tarif_panier { font-weight: 800; white-space: nowrap; text-align: right; }
.mb .mdlPanier .delete_all { margin: 10px 0 18px; }
.mb .mdlPanier .recap_commande { margin: 0 0 18px auto; max-width: 380px; background: var(--mb-fond); border-radius: var(--mb-rayon); padding: 16px 18px; }
.mb .mdlPanier .recap_commande h4 { margin: 0 0 10px; font-size: 18px; font-weight: 700; }
.mb .mdlPanier .content_recap { display: grid; grid-template-columns: 1fr auto; gap: 6px 16px; }
.mb .mdlPanier .content_recap .left_recap { display: none; }
.mb .mdlPanier .content_recap .right_recap { display: contents; }
.mb .mdlPanier .value_recap { text-align: right; white-space: nowrap; }
.mb .mdlPanier .bold { font-weight: 800; }
.mb .mdlPanier p.action { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 10px; margin: 18px 0 0; }
.mb .mdlPanier p.action input[type=submit] { border: 0; border-radius: 999px; padding: 12px 24px; font-weight: 700; cursor: pointer; background: var(--mb-c3); color: var(--mb-c3-txt); }
.mb .mdlPanier p.action input[name=PANIER_ETAPE_0], .mb .mdlPanier p.action input[value^="Etape pr"] { background: #fff; color: var(--mb-texte) !important; border: 1px solid #cfd4da; }
.mb .mdlPanier h5 { font-size: 17px; font-weight: 700; margin: 22px 0 10px; }
.mb .mdlPanier .mode_livraison { display: flex; align-items: center; gap: 12px; padding: 12px 14px; border: 1px solid var(--mb-bord); border-radius: var(--mb-rayon); margin: 0 0 8px; background: #fff; }
.mb .mdlPanier .mode_livraison .block_liv { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; }
.mb .mdlPanier .mode_livraison .block_liv span:first-child { font-weight: 700; }
.mb .mdlPanier .desc_liv { font-size: 14px; color: var(--mb-doux); }
.mb .mdlPanier .tarif_liv { font-weight: 700; white-space: nowrap; }
.mb .mdlPanier .mode_livraison input[type=radio] { width: 18px; height: 18px; accent-color: var(--mb-c1); }
.mb .mdlPanier table.tab_addresse { width: 100%; table-layout: fixed; }
.mb .mdlPanier table.tab_addresse td { vertical-align: top; }
.mb .mdlPanier .input_panier { margin: 0 0 10px; }
.mb .mdlPanier .input_panier label { display: block; font-weight: 600; font-size: 14px; margin-bottom: 4px; }
.mb .mdlPanier .input_panier input[type=text], .mb .mdlPanier textarea, .mb .mdlPanier .choix_avoir input[type=text], .mb .mdlPanier .num_bdc input[type=text] { width: 100%; padding: 9px 10px; border: 1px solid #cfd4da; border-radius: 6px; }
@media (max-width: 700px) {
  .mb .mdlPanier .item-etape p { font-size: 0; }
  .mb .mdlPanier .item-etape p::before { font-size: 14px; }
  .mb .mdlPanier .item-etape.active p { font-size: 13px; }
  .mb .mdlPanier .item-etape.active p::before { font-size: 13px; }
  .mb .mdlPanier .item-etape.active { flex: 3 1 0; }
  .mb .mdlPanier .item_panier { grid-template-columns: 1fr auto; }
  .mb .mdlPanier .item_panier .left-panier { grid-column: 1 / -1; }
  .mb .mdlPanier .recap_commande { max-width: none; }
  .mb .mdlPanier table.tab_addresse, .mb .mdlPanier table.tab_addresse tbody, .mb .mdlPanier table.tab_addresse tr, .mb .mdlPanier table.tab_addresse td { display: block; width: 100%; }
  .mb .mdlPanier p.action { justify-content: stretch; }
  .mb .mdlPanier p.action input[type=submit] { flex: 1 1 auto; }
}

/* corrections relevees en relecture des modeles (08/11) */
.mb .mb-page .liste_produits td { vertical-align: top; }            /* l'emporte sur .mb .mb-page table td (middle) */
.mb .mb-page .liste_produits table { max-width: none; }             /* largeur calc(100% + 28px) des cartes, plafonnee par .mb table */
.mb .mb-page a.btn-compte.reassort { background: var(--mb-fond); border: 1px solid var(--mb-bord); border-radius: var(--mb-rayon); color: var(--mb-texte) !important; padding: 12px; }

/* creation de compte et informations du compte (formIdentificationLog : tableau libelle | champ du site) */
.mb #formIdentificationLog fieldset { border: 0; padding: 0; margin: 0; min-width: 0; }
.mb #formIdentificationLog legend { font-size: 20px; font-weight: 700; margin-bottom: 8px; }
.mb #formIdentificationLog table { width: 100%; border-collapse: collapse; }
.mb #formIdentificationLog td { padding: 6px 8px 6px 0; vertical-align: top; border: 0; }
.mb #formIdentificationLog td:first-child { width: 190px; padding-top: 14px; font-weight: 600; }
.mb #formIdentificationLog input[type=text], .mb #formIdentificationLog input[type=password], .mb #formIdentificationLog input[type=email] { width: 100%; max-width: 460px; box-sizing: border-box; padding: 9px 10px; border: 1px solid #cfd4da; border-radius: 6px; }
.mb #formIdentificationLog select { max-width: 100%; padding: 8px; border: 1px solid #cfd4da; border-radius: 6px; margin: 0 6px 4px 0; }
.mb #formIdentificationLog .cp_ville input + input { margin-top: 8px; }
.mb #formIdentificationLog em { font-size: 13px; color: var(--mb-doux); }
.mb #formIdentificationLog input[type=reset] { margin-left: 10px; background: #fff; color: var(--mb-texte); border: 1px solid #cfd4da; border-radius: 999px; padding: 11px 22px; font-weight: 700; }
@media (max-width: 700px) {
  .mb #formIdentificationLog table, .mb #formIdentificationLog tbody, .mb #formIdentificationLog tr, .mb #formIdentificationLog td { display: block; width: 100% !important; }
  .mb #formIdentificationLog td:first-child { padding: 10px 0 2px; }
  .mb #formIdentificationLog td { padding: 0; }
  .mb #formIdentificationLog tr[style*="none"] { display: none; }
}
.mb .mb-prix-nul { display: none; }
.mb .mb-pastille { display: inline-block; min-width: 20px; padding: 1px 6px; margin-left: 4px; border-radius: 999px; background: var(--mb-c3-txt); color: var(--mb-c3); font-size: 12px; font-weight: 800; line-height: 18px; text-align: center; }
.mb .mb-legal-intro { margin: 0 0 16px; padding: 14px 16px; background: var(--mb-carte); border: 1px solid var(--mb-bord); border-left: 4px solid var(--mb-c1); border-radius: var(--mb-rayon); }
/* options de la boutique (12/11/2026) : stock masque ; texte a floquer au panier */
.mb.mb-sans-stock .enstock { display: none; }
.mb .mb-perso-champ { margin: 8px 0 10px; max-width: 460px; }
.mb .mb-perso-champ label { display: block; font-weight: 700; margin-bottom: 4px; }
.mb .mb-perso-champ .mb-requis { font-weight: 400; font-size: 12px; color: var(--mb-c1-encre); }
.mb .mb-perso-champ input { width: 100%; padding: 8px 10px; border: 1px solid var(--mb-bord); border-radius: var(--mb-rayon); font-size: 15px; }
.mb .mb-perso-champ small { display: block; margin-top: 3px; color: #555; font-size: 12px; }
/* pied de page cale en bas de l'ecran sur les pages courtes (12/11/2026) */
body.mb { min-height: 100vh; display: flex; flex-direction: column; }
body.mb > .mb-contenu { flex: 1 0 auto; }
body.mb > .mb-pied { flex-shrink: 0; }
/* boutons personnalisables du menu (liens externes) : contour, pour les distinguer des pages de la boutique */
.mb .mb-nav a.mb-nav-lien { border: 2px solid currentColor; border-radius: 999px; padding: 4px 12px; }
.mb .mb-nav a.mb-nav-lien:hover, .mb .mb-nav a.mb-nav-lien:focus { border-color: var(--mb-c3); }
/* guide des tailles (lien de la fiche produit) desactive par l'option guide_tailles */
.mb.mb-sans-guide a[href*="prendre-votre-taille"] { display: none; }
/* marquage par article au panier (12/11/2026) */
.mb .mb-marq-champ { margin: 8px 0 10px; max-width: 460px; display: grid; gap: 4px; }
.mb .mb-marq-champ label { font-weight: 700; margin-top: 4px; }
.mb .mb-marq-champ .mb-requis { font-weight: 400; font-size: 12px; color: var(--mb-c1-encre); }
.mb .mb-marq-champ select, .mb .mb-marq-champ input { width: 100%; padding: 8px 10px; border: 1px solid var(--mb-bord); border-radius: var(--mb-rayon); font-size: 15px; background: #fff; }
.mb .mb-marq-champ small { color: #555; font-size: 12px; }
.mb .item_panier.mb-marq-ligne { margin-left: 32px; border-left: 4px solid var(--mb-c1); padding-left: 12px; background: color-mix(in srgb, var(--mb-c1) 4%, #fff); }
.mb .mb-marq-note { margin: 4px 0; font-size: 14px; color: #374151; }
.mb .mb-marq-qte { display: inline-block; min-width: 40px; padding: 6px 10px; text-align: center; font-weight: 700; }
@media (max-width: 720px) { .mb .item_panier.mb-marq-ligne { margin-left: 12px; } }
