/* CNS-MCEC — portée limitée au widget existant, sans police distante. */
#whatsapp-widget, #whatsapp-widget *, #whatsapp-widget *::before, #whatsapp-widget *::after { box-sizing: border-box; }
#whatsapp-widget { position: fixed; inset-inline-end: max(10px, env(safe-area-inset-right, 0px)); bottom: calc(75px + env(safe-area-inset-bottom, 0px)); z-index: 9999; display:flex; flex-direction:column; align-items:flex-end; gap:14px; width:max-content; max-width:calc(100vw - 20px); color:#111b21; font:400 14px/1.45 "Segoe UI", Arial, sans-serif; }
#whatsapp-widget [hidden] { display:none !important; }
#whatsapp-widget .wa-chat-box { width:350px; max-width:calc(100vw - 20px); margin:0; overflow:hidden; border:1px solid rgba(17,27,33,.08); border-radius:14px; background:#fff; box-shadow:0 12px 32px rgba(17,27,33,.18); animation:mcec-wa-in .22s ease-out both; }
@keyframes mcec-wa-in { from {opacity:0;transform:translateY(12px) scale(.98)} to {opacity:1;transform:none} }
#whatsapp-widget .wa-header { position:relative; min-height:72px; display:flex; align-items:center; gap:12px; padding:12px 52px 12px 16px; background:#075e54; color:#fff; }
#whatsapp-widget .wa-avatar { width:44px; height:44px; flex:none; border-radius:50%; overflow:hidden; background:#fff; }
#whatsapp-widget .wa-avatar svg, #whatsapp-widget .wa-avatar img { width:100%; height:100%; object-fit:contain; display:block; }
#whatsapp-widget .wa-header-text { min-width:0; }
#whatsapp-widget .wa-header-text strong { display:block; font-size:15px; font-weight:600; overflow-wrap:anywhere; }
#whatsapp-widget .wa-header-text p { margin:2px 0 0; font-size:12px; opacity:.95; overflow-wrap:anywhere; }
#whatsapp-widget .wa-close { position:absolute; inset-block-start:50%; inset-inline-end:8px; translate:0 -50%; width:40px; height:40px; display:grid; place-items:center; padding:0; border:0; border-radius:50%; background:transparent; color:#fff; font-size:24px; cursor:pointer; }
#whatsapp-widget .wa-close:hover { background:rgba(255,255,255,.12); }
#whatsapp-widget .wa-body { max-height:min(300px, calc(100dvh - 250px)); overflow-y:auto; padding:20px; background:#efeae2; overscroll-behavior:contain; }
#whatsapp-widget .wa-message { position:relative; width:fit-content; max-width:90%; padding:10px 12px; border-radius:0 9px 9px 9px; background:#fff; color:#303030; box-shadow:0 1px 2px rgba(0,0,0,.12); overflow-wrap:anywhere; }
#whatsapp-widget .wa-message::before { content:""; position:absolute; left:-8px; top:0; border-style:solid; border-width:0 8px 8px 0; border-color:transparent #fff transparent transparent; }
#whatsapp-widget .wa-message strong { display:block; margin-bottom:4px; color:#08776c; font-size:12px; }
#whatsapp-widget .wa-footer { padding:12px 16px 16px; background:#fff; }
#whatsapp-widget .wa-btn-start { min-height:44px; display:flex; align-items:center; justify-content:center; padding:10px 16px; border-radius:999px; background:#168c45; color:#fff; text-decoration:none; text-align:center; font-size:14px; font-weight:600; }
#whatsapp-widget .wa-btn-start:hover { background:#117537; color:#fff; }
#whatsapp-widget .wa-not-configured { margin:0; color:#475569; font-size:12px; }
#whatsapp-widget .wa-launcher { position:relative; width:45px; height:45px; min-width:45px; min-height:45px; max-width:45px; max-height:45px; flex:0 0 45px; display:flex; align-items:center; justify-content:center; padding:0; border:0; border-radius:50%; background:#25d366; color:#fff; box-shadow:0 5px 16px rgba(0,0,0,.22); cursor:pointer; transition:transform .18s ease, background-color .18s ease; }
#whatsapp-widget .wa-launcher:hover { background:#20c45c; transform:scale(1.05); }
/* Logo embarqué : aucun fichier SVG externe nécessaire. */
#whatsapp-widget .wa-launcher::before { content:""; position:absolute; inset:0; margin:auto; display:block; width:25px; height:25px; background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2032%2032%22%3E%3Cpath%20fill%3D%22%23ffffff%22%20d%3D%22M16%203a13%2013%200%200%200-11.2%2019.6L3%2029l6.7-1.8A13%2013%200%201%200%2016%203Zm0%2023.7a10.6%2010.6%200%200%201-5.4-1.5l-.4-.2-3.9%201%201-3.8-.2-.4A10.6%2010.6%200%201%201%2016%2026.7Zm5.8-7.9c-.3-.1-1.9-.9-2.2-1-.3-.1-.5-.2-.7.2s-.8%201-1%201.2-.4.3-.7.1a8.7%208.7%200%200%201-2.6-1.6%209.6%209.6%200%200%201-1.8-2.3c-.2-.3%200-.5.1-.6l.5-.6c.2-.2.2-.4.3-.6s0-.4%200-.6c0-.2-.7-1.8-1-2.5-.3-.7-.6-.6-.8-.6h-.7c-.2%200-.6.1-.9.5s-1.2%201.2-1.2%203%201.3%203.6%201.5%203.9c.2.3%202.6%204%206.3%205.6%201%20.4%201.8.6%202.4.8%201%20.3%201.9.2%202.6.1.8-.1%201.9-.8%202.2-1.6.3-.8.3-1.5.2-1.6-.1-.2-.3-.3-.6-.4Z%22%2F%3E%3C%2Fsvg%3E"); background-repeat:no-repeat; background-position:center; background-size:contain; pointer-events:none; }
/* SVG redondant supprimé visuellement : le logo blanc CSS reste en place.
   Retirer physiquement <svg class="wa-logo-svg"> du template si présent. */
#whatsapp-widget .wa-logo-svg { display:none !important; }
/* Badge attaché au lanceur 45 × 45 px, sans modifier ses dimensions. */
#whatsapp-widget .wa-launcher .wa-badge {
    position:absolute;
    inset-block-start:-5px;
    inset-inline-end:-7px;
    inset-block-end:auto;
    inset-inline-start:auto;
    display:grid;
    place-items:center;
    min-width:20px;
    height:20px;
    padding:0 4px;
    border:2px solid #fff;
    border-radius:999px;
    background:#d8292f;
    color:#fff;
    font:700 10px/1 "Segoe UI", Arial, sans-serif;
    text-align:center;
    white-space:nowrap;
    pointer-events:none;
    transform:none;
}
#whatsapp-widget .wa-launcher .wa-badge[hidden] { display:none !important; }
/* Remplace l'image absente ou une ancienne icône par le pictogramme intégré. */
#whatsapp-widget .wa-launcher > :is(svg,img,.wa-icon) { display:none; }
#whatsapp-widget :is(.wa-launcher,.wa-close,.wa-btn-start):focus-visible { outline:3px solid #174ea6; outline-offset:3px; }
#whatsapp-widget[dir="rtl"] .wa-header { padding:12px 16px 12px 52px; }
#whatsapp-widget[dir="rtl"] .wa-message { border-radius:9px 0 9px 9px; }
#whatsapp-widget[dir="rtl"] .wa-message::before { left:auto; right:-8px; border-width:0 0 8px 8px; border-color:transparent transparent transparent #fff; }
@media(max-width:480px) { #whatsapp-widget { inset-inline-end:max(8px,env(safe-area-inset-right,0px)); max-width:calc(100vw - 16px); } #whatsapp-widget .wa-chat-box { width:min(350px, calc(100vw - 16px)); } #whatsapp-widget .wa-body { padding:16px; } }
@media(prefers-reduced-motion:reduce) { #whatsapp-widget .wa-chat-box { animation:none; } #whatsapp-widget .wa-launcher {transition:none} #whatsapp-widget .wa-launcher:hover {transform:none} }

/* Protection ciblée contre les règles génériques de boutons du thème CMS. */
#whatsapp-widget button.wa-launcher { width:45px !important; height:45px !important; min-width:45px !important; min-height:45px !important; max-width:45px !important; max-height:45px !important; padding:0 !important; border-radius:50% !important; aspect-ratio:1; }

/* Round 35 — same baseline as Back to top, independent of WhatsApp panel. */
#whatsapp-widget{inset-inline-end:max(12px,env(safe-area-inset-right,0px));bottom:calc(20px + env(safe-area-inset-bottom,0px))}
@media(max-width:480px){#whatsapp-widget{inset-inline-end:max(8px,env(safe-area-inset-right,0px));bottom:calc(20px + env(safe-area-inset-bottom,0px))}}

/* Round 40: breathing space from viewport bottom, including mobile safe area. */
#whatsapp-widget{bottom:calc(36px + env(safe-area-inset-bottom,0px))}
@media(max-width:480px){#whatsapp-widget{bottom:calc(32px + env(safe-area-inset-bottom,0px))}}

/* Round 41: small inward offset with a comfortable bottom safe area, RTL-aware. */
#whatsapp-widget{inset-inline-end:max(24px,calc(env(safe-area-inset-right,0px) + 20px));bottom:calc(42px + env(safe-area-inset-bottom,0px))}
@media(max-width:480px){#whatsapp-widget{inset-inline-end:max(16px,calc(env(safe-area-inset-right,0px) + 12px));bottom:calc(38px + env(safe-area-inset-bottom,0px))}}

/* Round42: match back-to-top bottom line; account for the opposite RTL safe edge. */
html[dir="rtl"] #whatsapp-widget{inset-inline-end:max(24px,calc(env(safe-area-inset-left,0px) + 20px))}
@media(max-width:480px){html[dir="rtl"] #whatsapp-widget{inset-inline-end:max(16px,calc(env(safe-area-inset-left,0px) + 12px))}}
