.mlap-v15-app{--bg:#07090a;--panel:#101516;--line:#3a4243;--gold:#f4c634;--orange:#ff8d18;--green:#1aa65b;--paper:#f5f5f0;--ink:#111516;--muted:#bfc4c2;width:100vw;max-width:none;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);background:var(--bg);color:white;font-family:Arial,Helvetica,sans-serif;min-height:100vh;overflow-x:hidden}.mlap-v15-app *{box-sizing:border-box}.mlap-v15-app button,.mlap-v15-app input,.mlap-v15-app textarea{font:inherit}.mlap-v15-app button{cursor:pointer}.v10-screen{display:none}.v10-screen.active{display:block}.v10-home{background:radial-gradient(circle at 10% 10%,rgba(33,62,38,.16),transparent 28%),radial-gradient(circle at 90% 90%,rgba(95,42,12,.15),transparent 28%),#07090a;min-height:100vh}.v10-hero{position:relative;height:46vh;min-height:420px;max-height:700px;background:#0b0d0e;overflow:hidden}.v10-hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 42%;display:block}.v10-hero-shade{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,.08),rgba(0,0,0,.04) 55%,rgba(0,0,0,.58) 100%)}.v10-back-home,.v10-cart-home{position:absolute;z-index:5;top:18px;background:rgba(7,11,12,.9);color:white;border:1px solid rgba(255,255,255,.15);box-shadow:0 8px 24px rgba(0,0,0,.3)}.v10-back-home{left:18px;width:62px;height:62px;border-radius:50%;font-size:30px}.v10-cart-home{right:18px;min-width:98px;height:62px;border-radius:999px;font-size:21px;font-weight:800}.v10-logo{position:absolute;z-index:4;top:18px;left:50%;transform:translateX(-50%);width:min(54vw,420px);height:145px;display:flex;align-items:flex-start;justify-content:center}.v10-logo img{width:100%;height:100%;object-fit:contain;object-position:center top;display:block;filter:drop-shadow(0 5px 14px rgba(0,0,0,.45))}.v10-slogan{position:absolute;z-index:4;left:50%;bottom:20px;transform:translateX(-50%);width:94%;text-align:center;font-family:"Brush Script MT","Segoe Script",cursive;font-size:clamp(40px,7vw,72px);line-height:.88;text-shadow:0 4px 15px rgba(0,0,0,.7)}.v10-slogan span{display:block}.v10-slogan em{display:block;color:var(--gold);font-style:normal}.v10-facts{display:grid;grid-template-columns:repeat(4,1fr);background:#090b0c;border-top:1px solid #303536;border-bottom:1px solid #303536}.v10-fact{min-height:150px;padding:18px 8px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px;border-right:1px solid #3b4041;font-size:16px;line-height:1.18}.v10-fact:last-child{border-right:0}.v10-fact-icon{font-size:38px;color:var(--gold)}.v10-fact b{color:var(--gold)}.v10-fact small{color:#d1d3d2}.v10-home-main{max-width:900px;margin:auto;padding:30px 24px 58px;text-align:center}.v10-kicker{font-size:15px;letter-spacing:5px;color:#e1e2df;margin-bottom:14px}.v10-home-main h1{font-size:clamp(52px,9vw,90px);line-height:.95;margin:0 0 30px;font-weight:900}.v10-home-main h1 em{color:var(--gold);font-style:normal}.v10-primary,.v10-secondary{width:100%;min-height:74px;border-radius:999px;margin:9px 0;display:grid;grid-template-columns:55px 1fr 40px;align-items:center;padding:0 22px;font-size:24px;font-weight:850}.v10-primary{border:0;background:linear-gradient(90deg,#ffd54e,var(--orange));color:#111}.v10-secondary{border:1px solid #485052;background:#101516;color:#fff}.v10-primary b,.v10-secondary b{font-size:38px;font-weight:400}.v10-primary.full{margin-top:18px}.v10-signature{margin-top:28px;color:var(--gold);font-family:"Brush Script MT","Segoe Script",cursive;font-size:48px;transform:rotate(-2deg)}.v10-other-header{position:sticky;top:0;z-index:30;height:70px;display:grid;grid-template-columns:56px 1fr auto;align-items:center;gap:10px;padding:7px 12px;background:rgba(7,9,10,.97);border-bottom:1px solid var(--line)}.v10-other-header button{height:46px;border-radius:999px;border:1px solid var(--line);background:#141a1b;color:#fff;padding:0 15px;font-weight:800}.v10-page-title{text-align:center;font-weight:900}.v10-content{max-width:1160px;margin:auto;padding:24px 16px 60px}.v10-filters{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:18px}.v10-filters button{border:1px solid var(--line);background:#121718;color:#fff;border-radius:999px;padding:11px 15px;font-weight:800}.v10-filters button.active{background:var(--gold);color:#111}.v10-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.v10-card{background:linear-gradient(150deg,#151b1c,#0e1213);border:1px solid var(--line);border-radius:20px;overflow:hidden;display:flex;flex-direction:column}.v10-card-img{height:220px;background:#111}.v10-card-img img{width:100%;height:100%;object-fit:cover}.v10-card-body{padding:16px;display:flex;flex-direction:column;gap:9px;flex:1}.v10-card h3{margin:0;font-size:21px}.v10-base{color:var(--gold);font-size:12px;font-weight:900;text-transform:uppercase}.v10-card p{color:var(--muted);margin:0;line-height:1.4}.v10-card-foot{display:flex;justify-content:space-between;align-items:center;margin-top:auto}.v10-price{font-size:21px;font-weight:950}.v10-choose{border:0;background:var(--green);color:white;border-radius:999px;padding:10px 13px;font-weight:900}.v10-product{display:grid;grid-template-columns:.9fr 1.1fr;background:var(--paper);color:var(--ink);border-radius:24px;overflow:hidden}.v10-product-img{min-height:430px;background:#111}.v10-product-img img{width:100%;height:100%;object-fit:contain}.v10-product-body{padding:28px}.v10-product-body h2{font-size:42px;margin:10px 0}.v10-product-body p{color:#59605e}.v10-qty{display:flex;align-items:center;gap:12px;margin:20px 0}.v10-qty button,.v10-cart-line button{width:38px;height:38px;border-radius:50%;border:1px solid #bbc1bf;background:#fff}.v10-paper{max-width:800px;margin:24px auto;background:var(--paper);color:var(--ink);border-radius:24px;padding:26px}.v10-paper label{display:block;font-weight:850;margin:16px 0}.v10-paper input,.v10-paper textarea{display:block;width:100%;margin-top:7px;padding:14px;border:1px solid #c9cfcc;border-radius:12px;background:#fff}.v10-info{padding:13px 15px;background:#fff2c8;border:1px solid #e6c761;border-radius:12px}.v10-slots{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.v10-slot{padding:14px;border:1px solid #cbd0ce;border-radius:12px;background:#fff;font-weight:900}.v10-slot.selected{background:var(--green);color:#fff;border-color:var(--green)}.v10-cart-box{max-width:850px;margin:auto;background:var(--paper);color:var(--ink);border-radius:24px;padding:22px}.v10-cart-line{display:grid;grid-template-columns:1fr auto auto;gap:14px;align-items:center;padding:15px 0;border-bottom:1px solid #d5d9d7}.v10-cart-total{display:flex;justify-content:space-between;font-size:25px;font-weight:950;padding:22px 0 5px}.v10-warning{padding:14px;border:1px solid #e1ad3e;background:#fff0bd;border-radius:13px;margin-top:20px}.v10-review-row{display:flex;justify-content:space-between;gap:14px;padding:8px 0;border-bottom:1px solid #ddd}.v10-carte{display:block;width:100%;height:auto;border-radius:18px;border:1px solid var(--line)}.v10-visit-frame{width:100%;height:min(70vh,700px);border:0;border-radius:18px;background:#000}.v10-done{text-align:center;max-width:700px;margin:45px auto;padding:40px;border:1px solid var(--line);border-radius:28px}.v10-done>div{width:90px;height:90px;background:var(--green);display:grid;place-items:center;border-radius:50%;font-size:55px;margin:0 auto 20px}.v10-toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,20px);opacity:0;background:#fff;color:#111;padding:12px 18px;border-radius:999px;transition:.25s;z-index:50}.v10-toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:850px){.v10-grid{grid-template-columns:repeat(2,1fr)}.v10-product{grid-template-columns:1fr}}
@media(max-width:650px){.v10-hero{height:43vh;min-height:390px}.v10-back-home{left:14px;top:14px;width:56px;height:56px}.v10-cart-home{right:14px;top:14px;min-width:88px;height:56px}.v10-logo{top:10px;width:58vw;height:125px}.v10-slogan{bottom:16px;font-size:44px}.v10-fact{min-height:128px;padding:12px 4px;font-size:12px}.v10-fact-icon{font-size:29px}.v10-home-main{padding:22px 15px 44px}.v10-kicker{font-size:12px;letter-spacing:2.8px}.v10-home-main h1{font-size:49px;margin-bottom:20px}.v10-primary,.v10-secondary{min-height:62px;grid-template-columns:44px 1fr 28px;padding:0 15px;font-size:20px}.v10-signature{font-size:40px}.v10-grid{grid-template-columns:1fr}.v10-slots{grid-template-columns:repeat(2,1fr)}}
@media(max-width:420px){.v10-logo{width:62vw;height:116px}.v10-fact{font-size:11px;min-height:120px}.v10-home-main h1{font-size:44px}}

/* ===== V13 consolidée : toutes les demandes précédentes ===== */

/* 1. Suppression totale des espaces blancs du thème WordPress */
html, body{
  background:#07090a !important;
}

/* ===== V16.3 : boutons et pages d'informations ===== */
#mlap-v15-app .v16-info-links{
  display:grid;
  gap:10px;
  margin-top:18px;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.14);
}
#mlap-v15-app .v16-info-links .v10-secondary{
  width:100%;
}
#mlap-v15-app .v16-info-links .v10-secondary strong{
  font-size:clamp(12px,3.2vw,15px);
  line-height:1.2;
}
#mlap-v15-app .v16-info-page{
  max-width:760px;
  margin:0 auto;
}
#mlap-v15-app .v16-info-page .v10-paper{
  line-height:1.6;
}
#mlap-v15-app .v16-info-page h2{
  margin-top:4px;
}
#mlap-v15-app .v16-info-page ol{
  margin:18px 0;
  padding-left:24px;
}
#mlap-v15-app .v16-info-page li{
  margin:10px 0;
}
#mlap-v15-app .v16-info-icon{
  font-size:44px;
  line-height:1;
  margin-bottom:12px;
}
#mlap-v15-app .v16-info-note{
  padding:14px 16px;
  border-left:4px solid var(--gold);
  background:rgba(244,198,52,.09);
  border-radius:0 10px 10px 0;
}
#mlap-v15-app .v16-hours-page{
  overflow:hidden;
  margin:20px 0;
  border:1px solid rgba(255,255,255,.14);
  border-radius:16px;
  background:#0b0f10;
}
#mlap-v15-app .v16-hours-page > div{
  display:grid;
  grid-template-columns:1fr auto;
  align-items:center;
  gap:18px;
  padding:15px 16px;
  border-bottom:1px solid rgba(255,255,255,.12);
}
#mlap-v15-app .v16-hours-page > div:last-child{
  border-bottom:0;
}
#mlap-v15-app .v16-hours-page strong{
  color:var(--gold);
  text-align:right;
}
@media(max-width:480px){
  #mlap-v15-app .v16-hours-page > div{
    grid-template-columns:1fr;
    gap:3px;
  }
  #mlap-v15-app .v16-hours-page strong{
    text-align:left;
  }
}
#mlap-v15-app .v16-cgv-consent{
  display:flex;
  align-items:flex-start;
  gap:10px;
  margin:18px 0;
  line-height:1.4;
}
#mlap-v15-app .v16-cgv-consent input{
  width:22px;
  height:22px;
  margin:1px 0 0;
  flex:0 0 22px;
}
#mlap-v15-app .v16-cgv-consent button{
  display:inline;
  padding:0;
  border:0;
  background:none;
  color:var(--gold);
  font:inherit;
  text-decoration:underline;
  cursor:pointer;
}
body:has(#mlap-v15-app),
body:has(#mlap-v15-app) #page,
body:has(#mlap-v15-app) .site,
body:has(#mlap-v15-app) .site-content,
body:has(#mlap-v15-app) .content-area,
body:has(#mlap-v15-app) .site-main,
body:has(#mlap-v15-app) main,
body:has(#mlap-v15-app) article,
body:has(#mlap-v15-app) .entry-content,
body:has(#mlap-v15-app) .page-content,
body:has(#mlap-v15-app) .container,
body:has(#mlap-v15-app) .elementor,
body:has(#mlap-v15-app) .elementor-section,
body:has(#mlap-v15-app) .elementor-container,
body:has(#mlap-v15-app) .elementor-widget-wrap{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  background:#07090a !important;
}
body:has(#mlap-v15-app) .entry-header,
body:has(#mlap-v15-app) .entry-title,
body:has(#mlap-v15-app) .page-title,
body:has(#mlap-v15-app) h1.entry-title{
  display:none !important;
}

/* 2. La borne remplit réellement tout l'écran */
#mlap-v15-app{
  width:100vw !important;
  max-width:none !important;
  margin-left:calc(50% - 50vw) !important;
  margin-right:calc(50% - 50vw) !important;
  padding:0 !important;
  border-radius:0 !important;
  background:#07090a !important;
  min-height:100vh !important;
}

/* 3. Une seule image dans le haut. AUCUN logo/slogan rajouté au-dessus. */
#mlap-v15-app .v10-logo,
#mlap-v15-app .v10-slogan,
#mlap-v15-app .v10-signature{
  display:none !important;
}
#mlap-v15-app .v10-hero{
  position:relative;
  width:100% !important;
  overflow:hidden;
  background:#07090a;
}
#mlap-v15-app .v10-hero-photo{
  width:100% !important;
  height:100% !important;
  display:block;
  object-fit:cover !important;
  object-position:center center !important;
}

/* 4. Seuls retour + panier sont autorisés au-dessus de la photo */
#mlap-v15-app .v10-back-home,
#mlap-v15-app .v10-cart-home{
  z-index:20 !important;
}

/* 5. Le lien visite virtuelle garde l'apparence d'un bouton */
#mlap-v15-app .v13-link-button{
  text-decoration:none !important;
  display:grid !important;
}

/* 6. Mobile plein écran */
@media(max-width:650px){
  #mlap-v15-app .v10-hero{
    height:44vh !important;
    min-height:380px !important;
    max-height:520px !important;
  }
  #mlap-v15-app .v10-content,
  #mlap-v15-app .v10-home-main{
    width:100% !important;
    max-width:none !important;
  }
}


/* ===== V14 — corrections verrouillées ===== */

/* Le visuel/logo du haut est ENTIER et remplit toute la largeur.
   Étirement horizontal assumé conformément à la demande : aucun rognage. */
#mlap-v15-app .v10-hero{
  width:100vw !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  aspect-ratio:710 / 650;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
  background:#07090a !important;
}
#mlap-v15-app .v10-hero-photo{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  object-fit:fill !important;
  object-position:center center !important;
  display:block !important;
}

/* Aucun logo, slogan ou "Fait avec passion" rajouté par-dessus l'image. */
#mlap-v15-app .v10-logo,
#mlap-v15-app .v10-slogan,
#mlap-v15-app .v10-signature{
  display:none !important;
}

/* La page borne prend toute la largeur et le fond reste noir. */
html, body:has(#mlap-v15-app){
  margin:0 !important;
  padding:0 !important;
  background:#07090a !important;
}
#mlap-v15-app{
  width:100vw !important;
  max-width:none !important;
  min-height:100vh !important;
  margin-left:calc(50% - 50vw) !important;
  margin-right:calc(50% - 50vw) !important;
  background:#07090a !important;
}

/* Masque les éléments WordPress qui apparaissaient sous la borne
   (J'aime ça, commentaires, Avis Google, footer/sidebar). */
body:has(#mlap-v15-app) .sharedaddy,
body:has(#mlap-v15-app) .sd-sharing-enabled,
body:has(#mlap-v15-app) .comments-area,
body:has(#mlap-v15-app) #comments,
body:has(#mlap-v15-app) .post-navigation,
body:has(#mlap-v15-app) .site-footer,
body:has(#mlap-v15-app) footer,
body:has(#mlap-v15-app) .widget-area,
body:has(#mlap-v15-app) aside{
  display:none !important;
}

/* Le slogan validé garde la hiérarchie blanc / or / blanc. */
#mlap-v15-app .v10-home-main h1 em{
  color:var(--gold) !important;
}


/* ===== V15 : visuel haut plein cadre SANS déformation ===== */

/* Annule le ratio/hauteur forcés de V14 : la zone prend exactement la hauteur de l'image. */
#mlap-v15-app .v10-hero{
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  aspect-ratio:auto !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
  line-height:0 !important;
  background:#07090a !important;
}

/* L'image remplit toute la largeur, conserve strictement ses proportions
   et détermine elle-même la hauteur du bloc. Aucun étirement, aucun rognage. */
#mlap-v15-app .v10-hero-photo{
  position:relative !important;
  inset:auto !important;
  display:block !important;
  width:100% !important;
  max-width:none !important;
  height:auto !important;
  object-fit:contain !important;
  object-position:center center !important;
  transform:none !important;
  margin:0 !important;
  padding:0 !important;
}

/* Les seuls éléments superposés autorisés restent Retour et Panier. */
#mlap-v15-app .v10-back-home,
#mlap-v15-app .v10-cart-home{
  position:absolute !important;
  z-index:20 !important;
}

/* Pas de logo ou slogan supplémentaire injecté par le plugin. */
#mlap-v15-app .v10-logo,
#mlap-v15-app .v10-slogan,
#mlap-v15-app .v10-signature{
  display:none !important;
}

@media(max-width:650px){
  #mlap-v15-app .v10-hero{
    width:100% !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    aspect-ratio:auto !important;
  }
  #mlap-v15-app .v10-hero-photo{
    width:100% !important;
    height:auto !important;
  }
}

#mlap-v15-app .v15-retrait-trigger{appearance:none;-webkit-appearance:none;background:transparent;border:0;border-radius:0;color:inherit;font:inherit;cursor:pointer;margin:0;padding:0 4px;width:100%}
#mlap-v15-app .v15-more{display:block!important;margin-top:5px;font-size:9px!important;line-height:1.15;color:#aeb3b5!important;font-weight:600}
#mlap-v15-app .v15-retrait-modal[hidden]{display:none!important}
#mlap-v15-app .v15-retrait-modal{position:fixed;inset:0;z-index:999999;display:flex;align-items:center;justify-content:center;padding:20px}
#mlap-v15-app .v15-retrait-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.82);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}
#mlap-v15-app .v15-retrait-box{position:relative;width:min(92vw,420px);background:#0d1112;border:1px solid #3d4649;border-radius:26px;padding:28px 22px 22px;color:#fff;text-align:center;box-shadow:0 24px 80px rgba(0,0,0,.55)}
#mlap-v15-app .v15-retrait-close{position:absolute;right:12px;top:8px;width:42px;height:42px;border:0;background:transparent;color:#fff;font-size:34px;cursor:pointer}
#mlap-v15-app .v15-retrait-icon{font-size:40px;color:#e33227}
#mlap-v15-app .v15-retrait-box h2{margin:4px 0 18px;font-size:26px;color:#fff}
#mlap-v15-app .v15-retrait-hours{border:1px solid #31383a;border-radius:18px;overflow:hidden}
#mlap-v15-app .v15-retrait-hours p{display:flex;justify-content:space-between;gap:12px;margin:0;padding:14px 16px;border-bottom:1px solid #31383a;font-size:16px}
#mlap-v15-app .v15-retrait-hours p:last-child{border-bottom:0}
#mlap-v15-app .v15-retrait-hours b{color:#f6c338;white-space:nowrap}
#mlap-v15-app .v15-retrait-note{margin:18px 0 0;color:#c6cbcd;font-size:14px}


/* ===== V15.1 : popup retrait lisible et finition mobile ===== */

/* Carte retrait : jamais blanche, même au toucher/focus iOS */
#mlap-v15-app button.v15-retrait-trigger,
#mlap-v15-app button.v15-retrait-trigger:hover,
#mlap-v15-app button.v15-retrait-trigger:focus,
#mlap-v15-app button.v15-retrait-trigger:active{
  appearance:none !important;
  -webkit-appearance:none !important;
  background:#080a0b !important;
  color:#ffffff !important;
  border:0 !important;
  border-radius:0 !important;
  outline:none !important;
  box-shadow:none !important;
  -webkit-tap-highlight-color:transparent !important;
}
#mlap-v15-app .v15-retrait-trigger .v10-fact-icon{
  color:#e33227 !important;
}
#mlap-v15-app .v15-retrait-trigger b{
  color:#f6c338 !important;
}
#mlap-v15-app .v15-retrait-trigger .v15-more{
  display:block !important;
  margin-top:6px !important;
  color:#c9cdcf !important;
  font-size:9px !important;
  line-height:1.25 !important;
  font-weight:600 !important;
}

/* Popup : vrai overlay centré, indépendant des styles du thème */
html body #mlap-v15-app .v15-retrait-modal[hidden]{
  display:none !important;
}
html body #mlap-v15-app .v15-retrait-modal{
  position:fixed !important;
  inset:0 !important;
  z-index:2147483000 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:20px !important;
  margin:0 !important;
  width:100vw !important;
  height:100vh !important;
  background:transparent !important;
}
html body #mlap-v15-app .v15-retrait-backdrop{
  position:absolute !important;
  inset:0 !important;
  background:rgba(0,0,0,.82) !important;
  backdrop-filter:blur(4px);
  -webkit-backdrop-filter:blur(4px);
}
html body #mlap-v15-app .v15-retrait-box{
  position:relative !important;
  z-index:2 !important;
  width:min(92vw,420px) !important;
  margin:0 !important;
  padding:30px 22px 22px !important;
  background:#101516 !important;
  color:#ffffff !important;
  border:1px solid #3b4548 !important;
  border-radius:24px !important;
  box-shadow:0 24px 80px rgba(0,0,0,.6) !important;
  text-align:center !important;
  line-height:1.3 !important;
}
html body #mlap-v15-app .v15-retrait-close{
  position:absolute !important;
  top:10px !important;
  right:12px !important;
  width:40px !important;
  height:40px !important;
  padding:0 !important;
  border:0 !important;
  border-radius:50% !important;
  background:#1a2022 !important;
  color:#ffffff !important;
  font-size:28px !important;
  line-height:40px !important;
  text-align:center !important;
  box-shadow:none !important;
}
html body #mlap-v15-app .v15-retrait-icon{
  margin:0 0 6px !important;
  color:#e33227 !important;
  font-size:38px !important;
  line-height:1 !important;
}
html body #mlap-v15-app .v15-retrait-box h2{
  margin:0 0 18px !important;
  padding:0 !important;
  color:#ffffff !important;
  font-size:26px !important;
  line-height:1.15 !important;
  font-weight:800 !important;
}
html body #mlap-v15-app .v15-retrait-hours{
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
  border:1px solid #323a3d !important;
  border-radius:16px !important;
  background:#0b0f10 !important;
}
html body #mlap-v15-app .v15-hour-row{
  display:grid !important;
  grid-template-columns:1fr auto !important;
  align-items:center !important;
  gap:18px !important;
  margin:0 !important;
  padding:14px 16px !important;
  border-bottom:1px solid #323a3d !important;
  color:#ffffff !important;
  font-size:16px !important;
  line-height:1.25 !important;
  text-align:left !important;
}
html body #mlap-v15-app .v15-hour-row:last-child{
  border-bottom:0 !important;
}
html body #mlap-v15-app .v15-hour-row span{
  display:block !important;
  color:#ffffff !important;
  font-weight:500 !important;
}
html body #mlap-v15-app .v15-hour-row strong{
  display:block !important;
  color:#f6c338 !important;
  white-space:nowrap !important;
  font-weight:800 !important;
}
html body #mlap-v15-app .v15-retrait-note{
  margin:18px 0 0 !important;
  padding:0 !important;
  color:#c9cdcf !important;
  font-size:14px !important;
  line-height:1.35 !important;
}
html body #mlap-v15-app .v15-retrait-note strong{
  color:#f6c338 !important;
}

@media(max-width:390px){
  html body #mlap-v15-app .v15-retrait-box{
    width:94vw !important;
    padding:28px 16px 18px !important;
  }
  html body #mlap-v15-app .v15-hour-row{
    gap:10px !important;
    padding:13px 12px !important;
    font-size:15px !important;
  }
}

/* ===== V16.17 : priorité absolue au bouton généré ===== */
#mlap-v15-app button.v16-add-cart{
  display:flex !important;
  grid-template-columns:none !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:hidden !important;
}
#mlap-v15-app button.v16-add-cart > strong{
  display:flex !important;
  flex:1 1 auto !important;
  width:auto !important;
  min-width:0 !important;
  align-items:center !important;
  justify-content:center !important;
  flex-direction:column !important;
  white-space:nowrap !important;
}
@media(max-width:390px){
  #mlap-v15-app button.v16-add-cart > strong{font-size:14px !important;gap:5px !important;}
}


/* ===== V15.2 : retrait — plus aucun fond blanc / focus parasite ===== */
#mlap-v15-app .v15-retrait-trigger,
#mlap-v15-app .v15-retrait-trigger:hover,
#mlap-v15-app .v15-retrait-trigger:focus,
#mlap-v15-app .v15-retrait-trigger:focus-visible,
#mlap-v15-app .v15-retrait-trigger:active{
  background:#080a0b !important;
  color:#fff !important;
  border:none !important;
  outline:none !important;
  box-shadow:none !important;
  -webkit-tap-highlight-color:transparent !important;
}
#mlap-v15-app .v15-retrait-trigger *{
  color:inherit;
}
#mlap-v15-app .v15-retrait-trigger .v10-fact-icon{
  color:#e33227 !important;
}
#mlap-v15-app .v15-retrait-trigger b{
  color:#f6c338 !important;
}
#mlap-v15-app .v15-retrait-trigger .v15-more{
  color:#bfc4c6 !important;
}


/* ===== V15.3 : retrait — bouton foncé + suppression ancienne bulle ===== */

/* Le bloc retrait doit avoir exactement le même fond sombre que les autres cases */
#mlap-v15-app .v15-retrait-trigger,
#mlap-v15-app .v15-retrait-trigger:hover,
#mlap-v15-app .v15-retrait-trigger:focus,
#mlap-v15-app .v15-retrait-trigger:focus-visible,
#mlap-v15-app .v15-retrait-trigger:active{
  background:#080a0b !important;
  color:#ffffff !important;
  border:0 !important;
  border-right:1px solid #3b4041 !important;
  border-radius:0 !important;
  outline:none !important;
  box-shadow:none !important;
  -webkit-tap-highlight-color:transparent !important;
}
#mlap-v15-app .v15-retrait-trigger span,
#mlap-v15-app .v15-retrait-trigger div{
  color:#ffffff !important;
}
#mlap-v15-app .v15-retrait-trigger b{
  color:#f6c338 !important;
}
#mlap-v15-app .v15-retrait-trigger .v15-more{
  color:#bfc4c6 !important;
}
#mlap-v15-app .v15-retrait-trigger .v10-fact-icon{
  color:#e33227 !important;
}

/* Sécurité : si une ancienne bulle legacy est encore injectée par cache/markup,
   elle ne doit jamais s'afficher. */
#mlap-v15-app .v15-retrait-modal,
#mlap-v15-app #v15-retrait-modal{
  display:none !important;
}


/* ===== V16 retrait : composant neuf, sans <button> ===== */
#mlap-v15-app .v16-retrait-trigger{
  min-height:150px !important;
  padding:18px 8px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  gap:8px !important;
  border-right:1px solid #3b4041 !important;
  background:#090b0c !important;
  color:#fff !important;
  font-size:16px !important;
  line-height:1.18 !important;
  cursor:pointer !important;
  outline:none !important;
  -webkit-tap-highlight-color:transparent !important;
  user-select:none !important;
}
#mlap-v15-app .v16-retrait-trigger:focus,
#mlap-v15-app .v16-retrait-trigger:active{
  background:#090b0c !important;
  color:#fff !important;
  outline:none !important;
  box-shadow:none !important;
}
#mlap-v15-app .v16-retrait-trigger .v10-fact-icon{color:#e33227 !important;}
#mlap-v15-app .v16-retrait-trigger b{color:#f4c634 !important;}
#mlap-v15-app .v16-retrait-trigger .v16-more{
  display:block !important;
  margin-top:6px !important;
  color:#d1d3d2 !important;
  font-size:.78em !important;
  line-height:1.25 !important;
}
@media(max-width:650px){
  #mlap-v15-app .v16-retrait-trigger{
    min-height:128px !important;
    padding:12px 4px !important;
    font-size:12px !important;
  }
}
@media(max-width:420px){
  #mlap-v15-app .v16-retrait-trigger{min-height:120px !important;font-size:11px !important;}
}

/* ===== V16.6 : contraste définitif des jours sur la page Horaires ===== */
#mlap-v15-app .v16-hours-page,
#mlap-v15-app .v16-hours-page > div{
  color:#ffffff !important;
}
#mlap-v15-app .v16-hours-page > div > span{
  display:block !important;
  color:#ffffff !important;
  opacity:1 !important;
  font-weight:800 !important;
  visibility:visible !important;
}
#mlap-v15-app .v16-hours-page > div > strong{
  display:block !important;
  color:#f4c634 !important;
  opacity:1 !important;
  visibility:visible !important;
}

/* ===== V16.7 : cartouches de jours résistants aux styles du thème ===== */
#mlap-v15-app .v16-hours-page > div > .v16-day-label{
  display:inline-block !important;
  width:max-content !important;
  max-width:100% !important;
  padding:5px 10px !important;
  border-radius:999px !important;
  background:#ffffff !important;
  color:#111111 !important;
  -webkit-text-fill-color:#111111 !important;
  font-weight:900 !important;
  line-height:1.25 !important;
  opacity:1 !important;
  visibility:visible !important;
}
#mlap-v15-app .v10-other-header .v10-page-title{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  opacity:1 !important;
}

/* ===== V16.9 : accès direct à la localisation ===== */
#mlap-v15-app .v16-location-link{
  color:#ffffff !important;
  text-decoration:none !important;
  cursor:pointer !important;
  background:#090b0c !important;
  transition:background .2s ease,transform .2s ease !important;
}
#mlap-v15-app .v16-location-link:hover,
#mlap-v15-app .v16-location-link:focus-visible{
  background:#141a1b !important;
  outline:2px solid var(--gold) !important;
  outline-offset:-3px !important;
}
#mlap-v15-app .v16-location-link:active{transform:scale(.98) !important;}
#mlap-v15-app .v16-location-link strong{
  display:block !important;
  color:var(--gold) !important;
  font-size:18px;
  line-height:1.15;
  text-decoration:none !important;
}
#mlap-v15-app .v16-location-link small{
  display:block !important;
  margin-top:7px;
  color:#ffffff !important;
  text-decoration:none !important;
}

/* ===== V16.10 : lien discret vers le compte WooCommerce ===== */
#mlap-v15-app .v16-woo-access{
  padding:12px 16px !important;
  background:#07090a !important;
  border-top:1px solid #303536 !important;
  border-bottom:1px solid #303536 !important;
  text-align:center !important;
}
#mlap-v15-app .v16-woo-access a{
  width:max-content !important;
  max-width:100% !important;
  margin:0 auto !important;
  padding:3px 8px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:9px !important;
  border:0 !important;
  background:transparent !important;
  color:var(--gold) !important;
  -webkit-text-fill-color:var(--gold) !important;
  text-decoration:underline !important;
  text-underline-offset:4px !important;
  font-size:16px !important;
  font-weight:800 !important;
}
#mlap-v15-app .v16-woo-access a span{
  color:var(--gold) !important;
  -webkit-text-fill-color:var(--gold) !important;
  font-size:25px !important;
  line-height:1 !important;
  text-decoration:none !important;
}
#mlap-v15-app .v16-woo-access a:hover,
#mlap-v15-app .v16-woo-access a:focus-visible{
  color:#ffe071 !important;
  -webkit-text-fill-color:#ffe071 !important;
  outline:1px solid var(--gold) !important;
  outline-offset:4px !important;
}
@media(max-width:650px){
  #mlap-v15-app .v16-woo-access{padding:10px 12px !important;}
  #mlap-v15-app .v16-woo-access a{font-size:15px !important;padding:3px 7px !important;}
}

/* ===== V16.11 : bandeau d'information défilant dans le visuel ===== */
#mlap-v15-app .v16-ticker{
  position:absolute !important;
  z-index:6 !important;
  left:0 !important;
  right:0 !important;
  top:72% !important;
  bottom:auto !important;
  height:74px !important;
  display:flex !important;
  align-items:center !important;
  overflow:hidden !important;
  border-top:1px solid var(--gold) !important;
  border-bottom:1px solid var(--gold) !important;
  background:rgba(7,9,10,.88) !important;
  color:var(--gold) !important;
  -webkit-text-fill-color:var(--gold) !important;
  white-space:nowrap !important;
  pointer-events:auto !important;
}
#mlap-v15-app .v16-ticker-text{
  display:inline-block !important;
  min-width:100% !important;
  padding-left:100% !important;
  font-size:clamp(24px,3vw,34px) !important;
  line-height:1 !important;
  font-weight:900 !important;
  letter-spacing:.2px !important;
  animation:v16TickerScroll 18s linear infinite !important;
  will-change:transform !important;
}
#mlap-v15-app .v16-ticker:hover .v16-ticker-text{animation-play-state:paused !important;}
@keyframes v16TickerScroll{
  from{transform:translateX(0);}
  to{transform:translateX(-100%);}
}
@media(max-width:650px){
  #mlap-v15-app .v16-ticker{height:64px !important;top:72% !important;bottom:auto !important;}
  #mlap-v15-app .v16-ticker-text{font-size:24px !important;animation-duration:15s !important;}
}
@media(prefers-reduced-motion:reduce){
  #mlap-v15-app .v16-ticker-text{
    padding:0 16px !important;
    text-align:center !important;
    white-space:normal !important;
    animation:none !important;
  }
}

/* ===== V16.16 : bouton Ajouter au panier lisible sur mobile ===== */
#mlap-v15-app .v10-product-body .v10-primary.full{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 38px !important;
  gap:8px !important;
  min-height:74px !important;
  padding:10px 18px !important;
}
#mlap-v15-app .v10-product-body .v10-primary.full strong{
  display:block !important;
  min-width:0 !important;
  font-size:clamp(16px,4.5vw,22px) !important;
  line-height:1.15 !important;
  white-space:nowrap !important;
  text-align:center !important;
}
#mlap-v15-app .v10-product-body .v10-primary.full b{
  display:block !important;
  width:38px !important;
  text-align:center !important;
}
@media(max-width:390px){
  #mlap-v15-app .v10-product-body .v10-primary.full{padding:10px 12px !important;}
  #mlap-v15-app .v10-product-body .v10-primary.full strong{font-size:15px !important;}
}

/* V16.20: scoped editorial pages */
#mlap-v15-app .v16-updated-content{min-width:0;overflow-wrap:anywhere;color:#151919;line-height:1.65}
#mlap-v15-app .v16-updated-content h3{font-size:clamp(20px,4vw,25px);line-height:1.3;margin:28px 0 12px;color:#151919}
#mlap-v15-app .v16-updated-content p{margin:0 0 18px;color:#151919}
#mlap-v15-app .v16-updated-content a{color:#705300;text-decoration:underline}
#mlap-v15-app .v16-updated-content table{width:100%;table-layout:fixed;border-collapse:collapse;color:#151919;background:#fff}
#mlap-v15-app .v16-updated-content td,#mlap-v15-app .v16-updated-content th{padding:10px;text-align:left;border-bottom:1px solid #ccc;color:#151919;white-space:normal}
#mlap-v15-app .v16-updated-content mark{color:#151919;background:#fff0b5}

/* V16.22: intrinsic text width prevents mobile marquee clipping. */
#mlap-v15-app .v16-ticker-text{flex:0 0 auto!important;width:max-content!important;max-width:none!important;min-width:0!important;padding:0!important;margin-left:100%!important;white-space:nowrap!important;animation:v22Scroll 30s linear infinite!important;}
#mlap-v15-app .v16-ticker:hover .v16-ticker-text{animation-play-state:running!important;}
@keyframes v22Scroll{from{transform:translateX(0)}to{transform:translateX(calc(-100% - 100vw))}}
#mlap-v15-app .v22-preparation{min-width:0;margin:24px 0;padding:16px;border:1px solid #c9cfcc;border-radius:12px;color:#111;background:#fff}
#mlap-v15-app .v22-preparation label{display:flex;align-items:center;gap:12px;color:#111;line-height:1.4}
#mlap-v15-app .v22-preparation input{width:22px;height:22px;flex:0 0 22px;margin:0;accent-color:#157844}
@media(prefers-reduced-motion:reduce){#mlap-v15-app .v16-ticker{height:auto!important;min-height:64px!important}#mlap-v15-app .v16-ticker-text{animation:none!important;margin-left:0!important;width:100%!important;white-space:normal!important;overflow-wrap:anywhere!important;padding:12px!important;line-height:1.3!important}}

/* V16.23 : informations spécifiques aux Teglia. */
#mlap-v15-app .v23-teglia-info{display:flex;flex-direction:column;gap:6px;margin:16px 0;padding:15px;border:1px solid #e1ad3e;border-radius:13px;background:#fff0bd;color:#151919;line-height:1.4}
#mlap-v15-app .v23-teglia-info strong{font-size:18px}
