.abm-campaign{box-sizing:border-box;width:min(720px,calc(100% - 32px));max-height:calc(100dvh - 32px);overflow:auto;border:1px solid #b58b2e;border-radius:6px;padding:28px;background:#fff;color:#222;font:16px/1.5 Roboto,Arial,sans-serif;letter-spacing:0}
.abm-campaign::backdrop{background:rgb(0 0 0 / 65%)}
.abm-campaign-preview{margin:0 40px 12px 0;font-size:13px;color:#555}
.abm-campaign h2{font-size:26px;line-height:1.25;margin:0 36px 20px 0;color:#171717;overflow-wrap:anywhere;letter-spacing:0}
.abm-campaign img{display:block;width:100%;height:auto;max-height:45dvh;object-fit:contain;background:#fff}
.abm-campaign-text{white-space:pre-line;overflow-wrap:anywhere}
/* Keep editorial spelling, even when the active theme transforms headings. */
dialog.abm-campaign #abm-campaign-title{text-transform:none!important}
dialog.abm-campaign img + .abm-campaign-text{margin-top:24px!important}
.abm-campaign .abm-campaign-close{position:absolute;right:10px;top:8px;width:40px;height:40px;background:#fff;border:1px solid #777;border-radius:4px;color:#111;font-size:26px;padding:0;cursor:pointer}
.abm-campaign-link{display:inline-block;padding:10px 16px;background:#e2b849;color:#171717;font-weight:600;border-radius:4px;text-decoration:none}
.abm-campaign-remember{display:flex;align-items:flex-start;gap:10px;margin-top:20px;font-size:14px;color:#454545}
.abm-campaign-remember input{flex:0 0 18px;width:18px;height:18px;margin:3px 0 0}
.abm-campaign :focus-visible{outline:3px solid #1767ac;outline-offset:3px}
@media(max-width:480px){.abm-campaign{padding:20px}.abm-campaign h2{font-size:22px}}
