/* Pulsib Opt-in — un seul CSS, 3 styles (inline/card/contrast) x variantes. */
.pulsib-optin{--pulsib-accent:#b45309;box-sizing:border-box;margin:24px 0;font-family:inherit;line-height:1.5}
.pulsib-optin *,.pulsib-optin *::before,.pulsib-optin *::after{box-sizing:border-box}
.pulsib-optin__title{margin:0 0 6px;font-size:1.15em;font-weight:700}
.pulsib-optin__text{margin:0 0 12px;font-size:.95em;opacity:.85}
.pulsib-optin__row{display:flex;flex-wrap:wrap;gap:8px}
.pulsib-optin__email{flex:1 1 200px;min-width:0;padding:11px 14px;font-size:1em;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#111}
.pulsib-optin__email:focus{outline:2px solid var(--pulsib-accent);outline-offset:1px;border-color:var(--pulsib-accent)}
.pulsib-optin__btn{flex:0 0 auto;padding:11px 22px;font-size:1em;font-weight:700;color:#fff;background:var(--pulsib-accent);border:0;border-radius:8px;cursor:pointer;transition:filter .15s}
.pulsib-optin__btn:hover{filter:brightness(1.08)}
.pulsib-optin__btn[disabled]{opacity:.6;cursor:default}
.pulsib-optin__hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.pulsib-optin__msg{margin:10px 0 0;font-size:.9em;min-height:1.2em}
.pulsib-optin__msg.is-ok{color:#15803d}
.pulsib-optin__msg.is-err{color:#b91c1c}
/* Style CARD */
.pulsib-t-card .pulsib-optin__form{padding:22px;border:1px solid #e5e7eb;border-radius:14px;background:#fafafa}
.pulsib-t-card.pulsib-v-visual .pulsib-optin__form{border-color:var(--pulsib-accent);background:linear-gradient(180deg,rgba(180,83,9,.06),transparent)}
/* Style CONTRAST */
.pulsib-t-contrast .pulsib-optin__form{padding:24px;border-radius:14px;background:var(--pulsib-accent);color:#fff}
.pulsib-t-contrast .pulsib-optin__text{opacity:.92}
.pulsib-t-contrast .pulsib-optin__btn{background:#fff;color:var(--pulsib-accent)}
.pulsib-t-contrast .pulsib-optin__email{border-color:transparent}
.pulsib-t-contrast .pulsib-optin__msg.is-ok,.pulsib-t-contrast .pulsib-optin__msg.is-err{color:#fff;font-weight:600}
/* Style INLINE (léger) */
.pulsib-t-inline .pulsib-optin__form{padding:0}
/* POPUP */
.pulsib-optin-popup{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.55);padding:16px;opacity:0;transition:opacity .2s}
.pulsib-optin-popup.is-open{opacity:1}
.pulsib-optin-popup__inner{position:relative;width:100%;max-width:440px;background:#fff;border-radius:16px;padding:8px}
.pulsib-optin-popup__close{position:absolute;top:8px;right:10px;z-index:2;width:32px;height:32px;border:0;background:transparent;font-size:22px;line-height:1;color:#64748b;cursor:pointer}
.pulsib-optin-popup .pulsib-optin{margin:0}
/* STICKY */
.pulsib-optin-sticky{position:fixed;left:0;right:0;z-index:99998;background:#fff;border-top:1px solid #e5e7eb;box-shadow:0 -4px 16px rgba(0,0,0,.08);padding:12px 16px;transform:translateY(110%);transition:transform .25s}
.pulsib-optin-sticky.pos-top{top:0;bottom:auto;border-top:0;border-bottom:1px solid #e5e7eb;box-shadow:0 4px 16px rgba(0,0,0,.08);transform:translateY(-110%)}
.pulsib-optin-sticky.is-open{transform:translateY(0)}
.pulsib-optin-sticky__inner{display:flex;align-items:center;gap:12px;max-width:1080px;margin:0 auto}
.pulsib-optin-sticky .pulsib-optin{margin:0;flex:1}
.pulsib-optin-sticky .pulsib-optin__body{display:none}
.pulsib-optin-sticky__close{flex:0 0 auto;width:30px;height:30px;border:0;background:transparent;font-size:20px;color:#64748b;cursor:pointer}
@media(max-width:600px){.pulsib-optin-sticky__inner{flex-wrap:wrap}}
