/* Existing UPLIFY primitives; optional invitation and explicit native dialog. */
.exit-offer-inline{border-block:1px solid var(--line);background:var(--bg-1);padding-block:var(--sp-2xl,48px)}
.exit-offer-inline-inner{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:32px;align-items:center}
.exit-offer-inline h2{font:500 clamp(28px,3vw,40px)/1.08 var(--font-display);letter-spacing:-.03em;max-width:28ch;margin:0 0 16px;text-wrap:balance}
.exit-offer-inline h2 em,.exit-offer-summary h2 em{font-style:normal;color:var(--accent)}
.exit-offer-inline p,.exit-offer-invitation p{color:var(--fg-2);font-size:1rem;line-height:1.55;margin:0;max-width:65ch}
.exit-offer-choices{display:flex;flex-direction:column;gap:12px}
.exit-offer-choices .btn{justify-content:space-between;text-align:left;min-height:48px;white-space:normal;font-family:Onest,var(--font-body);font-size:1rem;color:var(--fg)}
.exit-offer-choices .btn span{color:var(--accent)}
.exit-offer-invitation{position:fixed;bottom:24px;right:24px;z-index:90;width:min(400px,calc(100vw - 48px));padding:44px 24px 24px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--bg-2)}
.exit-offer-invitation h2{font:500 1.5rem/1.15 var(--font-display);letter-spacing:-.02em;margin:0 0 16px;text-wrap:balance}
.exit-offer-invitation .exit-offer-choices{margin-top:24px}
.exit-offer-close{position:absolute;top:8px;right:8px;width:44px;height:44px;display:flex;align-items:center;justify-content:center;border:0;border-radius:var(--r-sm);background:transparent;color:var(--fg-2);cursor:pointer}
.exit-offer-close:hover{color:var(--accent);background:var(--bg-3)}
.exit-offer-close:focus-visible,.exit-offer-choices .btn:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.exit-offer-dialog{width:min(960px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 32px);padding:0;border:1px solid var(--line);border-radius:var(--r-md);background:var(--bg-2);color:var(--fg);overflow:auto;overscroll-behavior:contain}
.exit-offer-dialog::backdrop{background:oklch(10% 0 0 / .93)}
.exit-offer-dialog>.exit-offer-close{position:sticky;top:8px;float:right;margin:8px 8px -52px 0;z-index:1;background:var(--bg-2)}
.exit-offer-layout.xscan{position:relative;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);grid-template-areas:"title form" "summary form";padding:0}
.exit-offer-summary{grid-area:summary;padding:24px 32px 40px;min-width:0;background:var(--bg-1)}
.exit-offer-layout>h2{grid-area:title;min-width:0;overflow-wrap:anywhere;font:500 clamp(28px,3vw,36px)/1.08 var(--font-display);letter-spacing:-.03em;margin:0;padding:40px 32px 0;background:var(--bg-1);text-wrap:balance}
.exit-offer-layout>h2 em{font-style:normal;color:var(--accent)}
.exit-offer-summary p{font-size:1rem;line-height:1.55;color:var(--fg-2);margin:0 0 16px;max-width:65ch}
.exit-offer-example{margin-top:24px;padding:16px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--bg-2)}
.exit-offer-example .exit-offer-example-label{font-size:1rem;font-weight:600;color:var(--fg);margin-bottom:12px}
.exit-offer-example h3{font:600 1.125rem/1.35 var(--font-body);color:var(--fg);margin:0 0 8px}
.exit-offer-summary .exit-offer-coverage{margin:24px 0 0}
.exit-offer-layout.xscan .xscan-form{grid-area:form;padding:48px 32px 32px;align-content:start;gap:16px}
.exit-offer-layout.xscan .xscan-form::before{content:none}
.exit-offer-profile{padding:0;margin:0;min-width:0;border:0}
.exit-offer-profile legend{font-size:1rem;color:var(--fg);margin-bottom:12px;padding:0}
.exit-offer-layout.xscan .xscan-profile{margin:0;border-radius:var(--r-sm)}
.exit-offer-layout.xscan .xscan-profile label{font-family:Onest,var(--font-body);font-size:1rem;padding:10px 8px;border-radius:var(--r-sm);text-align:center}
.exit-offer-layout.xscan .xscan-profile label:has(input:disabled){opacity:.65;cursor:progress}
.exit-offer-layout.xscan .xscan-field label{font:400 1rem/1.3 var(--font-body);text-transform:none;letter-spacing:normal;color:var(--fg-2)}
.exit-offer-layout.xscan .xscan-field input::placeholder{color:var(--fg-2);opacity:1}
.exit-offer-layout.xscan .xscan-field input:focus-visible{outline:2px solid var(--accent);outline-offset:3px;box-shadow:none}
.exit-offer-layout.xscan .xscan-field input[aria-invalid="true"]{border-color:var(--danger)}
.exit-offer-layout.xscan .xscan-submit{--action-min-height:56px;font-size:1rem;border-radius:var(--r-sm)}
.exit-offer-layout.xscan .xscan-submit:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.exit-offer-layout.xscan .xscan-err,.exit-offer-layout.xscan .xscan-note,.exit-offer-timing{font:400 1rem/1.55 var(--font-body);margin:0;color:var(--fg-2)}
.exit-offer-layout.xscan .xscan-err{color:var(--danger)}
.exit-offer-layout.xscan .xscan-note a{text-decoration:underline;text-underline-offset:3px;color:var(--fg)}
@media(max-width:760px){
  .exit-offer-inline-inner{grid-template-columns:1fr;gap:24px}
  .exit-offer-layout.xscan{grid-template-columns:1fr;grid-template-areas:"title" "form" "summary"}
  .exit-offer-summary{padding:24px}
  .exit-offer-layout>h2{font-size:1.75rem;padding:48px 24px 0;background:var(--bg-2)}
  .exit-offer-layout.xscan .xscan-form{padding:24px;border-left:0;border-top:0;border-bottom:1px solid var(--line)}
  .exit-offer-example{margin-top:16px}
  .exit-offer-layout.xscan .xscan-profile label{min-height:64px}
}
@media(max-width:380px){.exit-offer-layout>h2{font-size:1.5rem}.exit-offer-layout.xscan .xscan-profile{grid-template-columns:1fr}.exit-offer-layout.xscan .xscan-profile label{min-height:48px}}
@media(prefers-reduced-motion:reduce){.exit-offer-layout.xscan button,.exit-offer-layout.xscan input,.exit-offer-choices .btn{transition:none;transform:none}}
