.mdm-form-wrap, .mdm-form { max-width: 520px; margin: 32px auto; }
.mdm-form { display: flex; flex-direction: column; gap: 12px; background: var(--mdm-form-bg, #f7f4ec); color: var(--mdm-text, #2e2e2e); padding: 24px; border-radius: calc(var(--mdm-radius, 12px) + 8px); }
.mdm-field { display: block; font-weight: 700; }
.mdm-field em { font-weight: 400; color: var(--wp--preset--color--gris-texte, #6a665c); }
.mdm-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.mdm-field input { display: block; width: 100%; box-sizing: border-box; margin: 0; padding: 14px 16px; font: inherit; font-weight: 400; border: 1px solid var(--mdm-field-border, #a9a497); border-radius: var(--mdm-radius, 12px); background: var(--mdm-field-bg, #fff); color: var(--mdm-field-text, #2e2e2e); }
.mdm-field input::placeholder { color: var(--mdm-field-text, #2e2e2e); opacity: .55; }
.mdm-field input:focus { outline: 2px solid var(--mdm-btn-bg, #c6bc89); border-color: transparent; }
.mdm-consent { display: flex; gap: 10px; font-size: .9rem; color: var(--mdm-text, #2e2e2e); opacity: .8; }
.mdm-consent input { margin-top: 4px; }
.mdm-btn { display: inline-block; text-align: center; background: var(--mdm-btn-bg, #c6bc89); color: var(--mdm-btn-text, #fff); font: inherit; font-weight: 700; padding: 16px 28px; border: 0; border-radius: var(--mdm-btn-radius, 999px); cursor: pointer; text-decoration: none; }
.mdm-btn:hover { background: var(--mdm-btn-bg, #c6bc89); color: var(--mdm-btn-text, #fff); filter: brightness(.93); }
.mdm-btn[disabled] { opacity: .6; cursor: wait; }
.mdm-msg { margin: 0; color: #9a2f22; font-weight: 700; }
.mdm-hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.mdm-buy { text-align: center; margin: 32px 0; }
.mdm-warn { background: #fff3cd; padding: 12px 16px; border-radius: 8px; }
body.single-mdm_optin main, body.single-mdm_vente main, body.single-mdm_merci main { padding: 0; }
body.single-mdm_optin .wp-block-post-content > :first-child:not(.alignfull), body.single-mdm_vente .wp-block-post-content > :first-child:not(.alignfull), body.single-mdm_merci .wp-block-post-content > :first-child:not(.alignfull) { margin-top: 48px; }
body.single-mdm_optin .wp-block-post-content > :last-child:not(.alignfull), body.single-mdm_vente .wp-block-post-content > :last-child:not(.alignfull), body.single-mdm_merci .wp-block-post-content > :last-child:not(.alignfull) { margin-bottom: 48px; }

/* Fenêtre d'inscription */
html.mdm-lock { overflow: hidden; }
.mdm-modal[hidden] { display: none; }
.mdm-modal { position: fixed; inset: 0; z-index: 99999; display: flex; align-items: center; justify-content: center; padding: 16px; }
.mdm-modal-backdrop { position: absolute; inset: 0; background: var(--mdm-overlay, rgba(28, 28, 28, .72)); }
.mdm-modal-box { position: relative; width: 100%; max-width: 460px; max-height: 94vh; overflow: auto; background: var(--mdm-pop-bg, #fff); color: var(--mdm-text, #2e2e2e); border-radius: calc(var(--mdm-radius, 12px) + 10px); padding: 32px 28px 28px; box-shadow: 0 30px 80px rgba(0, 0, 0, .35); }
.mdm-modal-close { position: absolute; top: 10px; right: 14px; border: 0; background: none; font-size: 30px; line-height: 1; cursor: pointer; color: var(--mdm-text, #6a665c); opacity: .7; }
.mdm-steps { display: flex; align-items: center; gap: 12px; margin: 0 28px 20px 0; }
.mdm-steps-bar { flex: 1; height: 8px; background: var(--mdm-bar-track, #e9e6de); border-radius: 99px; overflow: hidden; }
.mdm-steps-bar span { display: block; height: 100%; background: var(--mdm-bar, #c6bc89); border-radius: 99px; }
.mdm-steps-pct { font-size: .85rem; font-weight: 700; color: var(--mdm-bar, #756425); }
.mdm-modal-box h2 { margin: 0 0 8px; font-size: 1.6rem; line-height: 1.2; text-align: center; color: var(--mdm-title, #1c1c1c); }
.mdm-modal-sub { margin: 0 0 16px; text-align: center; color: var(--mdm-text, #6a665c); opacity: .8; }
.mdm-modal .mdm-form { background: none; padding: 8px 0 0; margin: 0; max-width: none; }
.mdm-modal .mdm-btn { width: 100%; }

.mdm-disclaimer { margin: 4px 0 0; font-size: .78rem; line-height: 1.45; color: var(--mdm-text, #6a665c); opacity: .75; text-align: center; }

.mdm-buy-full { margin: 0; }
.mdm-buy-full .mdm-btn { width: 100%; }
