/* Only enqueue through the existing verified organic registry + paid deny gate.
   No global element rules. No new fonts, imagery, libraries or CSS on paid pages. */
#organic-v2-root[data-cmg-organic-v2]{--ov2-gap:clamp(1rem,3vw,1.5rem)}
/* The root may surround article content. Only our explicitly owned components
   receive typography/reset rules; ordinary article paragraphs stay untouched. */
#organic-v2-root[data-cmg-organic-v2] :is(.ov2-card,.ov2-hero,.ov2-result,.ov2-next,.ov2-sticky){box-sizing:border-box;color:var(--cmg-ink);font:400 1rem/1.6 var(--cmg-font-sans)}
#organic-v2-root[data-cmg-organic-v2] :is(.ov2-card,.ov2-hero,.ov2-result,.ov2-next,.ov2-sticky) *,#organic-v2-root[data-cmg-organic-v2] :is(.ov2-card,.ov2-hero,.ov2-result,.ov2-next,.ov2-sticky) *::before,#organic-v2-root[data-cmg-organic-v2] :is(.ov2-card,.ov2-hero,.ov2-result,.ov2-next,.ov2-sticky) *::after{box-sizing:border-box}
#organic-v2-root[data-cmg-organic-v2] [hidden]{display:none!important}
#organic-v2-root[data-cmg-organic-v2] :is(.ov2-card,.ov2-hero,.ov2-result,.ov2-next) :where(h1,h2,h3,p,ul,ol,fieldset){margin:0}
#organic-v2-root[data-cmg-organic-v2] :is(.ov2-card,.ov2-hero,.ov2-result,.ov2-next) :is(h1,h2,h3){color:var(--cmg-ink-strong);text-wrap:pretty;line-height:1.2;letter-spacing:-.025em}
#organic-v2-root[data-cmg-organic-v2] .ov2-hero h1{font:600 clamp(2rem,4vw,3.25rem)/1.12 var(--cmg-font-display)!important;max-width:22ch}
/* Scoped !important is necessary: surfaces.css pins all article h2/h3 fonts. */
#organic-v2-root[data-cmg-organic-v2] :is(.ov2-card,.ov2-hero,.ov2-result,.ov2-next) :is(h2,h3){font:700 clamp(1.375rem,3vw,1.75rem)/1.2 var(--cmg-font-sans)!important}
#organic-v2-root[data-cmg-organic-v2] :is(.ov2-card,.ov2-hero,.ov2-result,.ov2-next,.ov2-sticky) a{color:var(--cmg-link);text-underline-offset:.2em;overflow-wrap:anywhere}
#organic-v2-root[data-cmg-organic-v2] :is(.ov2-card,.ov2-hero,.ov2-result,.ov2-next,.ov2-sticky) :is(button,a,input,summary):focus-visible{outline:3px solid var(--cmg-focus);outline-offset:4px}
#organic-v2-root[data-cmg-organic-v2] :is(.ov2-card,.ov2-hero,.ov2-result,.ov2-next,.ov2-sticky) :is(button,input){font-family:inherit}
#organic-v2-root[data-cmg-organic-v2] :is(.ov2-card,.ov2-hero,.ov2-result,.ov2-next,.ov2-sticky) button{cursor:pointer;touch-action:manipulation}
#organic-v2-root[data-cmg-organic-v2] .ov2-stack>*+*{margin-top:1rem}
#organic-v2-root[data-cmg-organic-v2] .ov2-kicker{font-size:.8125rem;font-weight:750;letter-spacing:.09em;text-transform:uppercase;color:var(--cmg-muted)}
#organic-v2-root[data-cmg-organic-v2] .ov2-subtle{color:var(--cmg-muted)}
#organic-v2-root[data-cmg-organic-v2] .ov2-card{padding:var(--ov2-gap);border:1px solid var(--cmg-border-strong);border-radius:var(--cmg-radius-lg);background:var(--cmg-surface);box-shadow:var(--cmg-shadow-sm);max-width:100%;scroll-margin-block:calc(var(--cmg-header-height) + 1rem) 6rem}
#organic-v2-root[data-cmg-organic-v2] .ov2-card--ask{border-top:4px solid var(--cmg-brand)}
#organic-v2-root[data-cmg-organic-v2] .ov2-card--ask>header{display:grid;gap:.5rem}
/* Avoid nested legacy partner frames consuming the phone reading width. */
#organic-v2-root[data-cmg-organic-v2] #cmg-router-result>:is(.cmg-adv,.cmg-wa){margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
#organic-v2-root[data-cmg-organic-v2] .ov2-proof{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:.35rem 1.125rem;color:var(--cmg-link);font-weight:650}
#organic-v2-root[data-cmg-organic-v2] .ov2-proof li::before{content:'✓';margin-right:.4rem}
#organic-v2-root[data-cmg-organic-v2] .ov2-disclosure{font-size:1rem!important;line-height:1.55;font-weight:700!important;background:var(--cmg-surface-muted);border-left:3px solid var(--cmg-border-strong);padding:1rem;border-radius:0 var(--cmg-radius-sm) var(--cmg-radius-sm) 0;color:var(--cmg-ink)}
#organic-v2-root[data-cmg-organic-v2] .ov2-cta{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;min-height:52px;padding:.875rem 1rem;border:2px solid var(--cmg-brand);border-radius:var(--cmg-radius-sm);background:var(--cmg-brand);color:#fff!important;font-size:1.0625rem;font-weight:750;line-height:1.35;text-decoration:none;text-align:center;white-space:normal}
#organic-v2-root[data-cmg-organic-v2] .ov2-cta:hover{background:var(--cmg-brand-strong);border-color:var(--cmg-brand-strong)}
#organic-v2-root[data-cmg-organic-v2] .ov2-action>.ov2-cta{margin-top:.75rem}
#organic-v2-root[data-cmg-organic-v2] .ov2-after{margin-top:.625rem;font-size:.9375rem;color:var(--cmg-muted)}
#organic-v2-root[data-cmg-organic-v2] .ov2-text-button{display:inline-flex;align-items:center;min-height:44px;padding:.375rem 0;background:none;border:0;color:var(--cmg-link);font-size:1rem;text-decoration:underline;text-underline-offset:.2em}
#organic-v2-root[data-cmg-organic-v2] .ov2-choice-group{border:0;padding:0;min-width:0}
#organic-v2-root[data-cmg-organic-v2] .ov2-choice-group legend{font-size:clamp(1.375rem,3vw,1.75rem);font-weight:700;line-height:1.25;color:var(--cmg-ink-strong);padding:0;margin-bottom:.625rem}
#organic-v2-root[data-cmg-organic-v2] .ov2-choices{display:grid;grid-template-columns:1fr;gap:.625rem;margin-top:1rem}
#organic-v2-root[data-cmg-organic-v2] .ov2-choice{display:flex;align-items:center;justify-content:space-between;gap:1rem;width:100%;min-height:56px;padding:1rem;border:1px solid var(--cmg-border-strong);border-radius:var(--cmg-radius-sm);background:var(--cmg-surface);color:var(--cmg-ink-strong);font-size:1.0625rem;font-weight:650;line-height:1.35;text-align:left}
#organic-v2-root[data-cmg-organic-v2] .ov2-choice [aria-hidden]{color:var(--cmg-link);flex:none}
#organic-v2-root[data-cmg-organic-v2] .ov2-choice:hover{border-color:var(--cmg-brand);background:var(--cmg-surface-muted)}
#organic-v2-root[data-cmg-organic-v2] .ov2-reading-link{display:inline-flex;align-items:center;min-height:44px;gap:.5rem}
#organic-v2-root[data-cmg-organic-v2] .ov2-hero{padding:clamp(1.25rem,4vw,3rem);background:var(--cmg-paper);border:1px solid var(--cmg-border);border-radius:var(--cmg-radius-lg)}
#organic-v2-root[data-cmg-organic-v2] .ov2-hero .ov2-lede{font-size:1.125rem;max-width:62ch}
#organic-v2-root[data-cmg-organic-v2] .ov2-hero-nav{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem}
#organic-v2-root[data-cmg-organic-v2] .ov2-result{background:var(--cmg-surface-muted);border:1px solid var(--cmg-border);border-radius:var(--cmg-radius-md);padding:var(--ov2-gap);min-height:12rem;scroll-margin-top:calc(var(--cmg-header-height) + 1rem)}
#organic-v2-root[data-cmg-organic-v2] .ov2-result output{display:block;font-size:clamp(2rem,5vw,3rem);font-weight:750;line-height:1.2;color:var(--cmg-ink-strong);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
#organic-v2-root[data-cmg-organic-v2] .ov2-fields{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
#organic-v2-root[data-cmg-organic-v2] .ov2-fields label{display:grid;gap:.5rem;min-width:0;font-weight:650}
#organic-v2-root[data-cmg-organic-v2] .ov2-fields input{width:100%;min-width:0;min-height:48px;border:1px solid var(--cmg-border-strong);border-radius:.5rem;padding:.625rem;color:var(--cmg-ink-strong);background:white}
#organic-v2-root[data-cmg-organic-v2] .ov2-next{display:grid;gap:1rem;padding:var(--ov2-gap);border:1px solid var(--cmg-border);border-radius:var(--cmg-radius-md);background:var(--cmg-paper);scroll-margin-top:calc(var(--cmg-header-height) + 1rem)}
#organic-v2-root[data-cmg-organic-v2] .ov2-next-links{display:grid;gap:.75rem}
#organic-v2-root[data-cmg-organic-v2] .ov2-next-link{display:block;padding:1rem;border:1px solid var(--cmg-border);border-radius:var(--cmg-radius-sm);background:var(--cmg-surface);text-decoration:none;min-height:68px}
#organic-v2-root[data-cmg-organic-v2] .ov2-next-link strong{display:block;text-decoration:underline;text-underline-offset:.2em}
#organic-v2-root[data-cmg-organic-v2] .ov2-next-link span{display:block;color:var(--cmg-muted);margin-top:.25rem}
#organic-v2-root[data-cmg-organic-v2] .ov2-form-panel{height:780px;min-height:780px;overflow:auto;border:1px solid var(--cmg-border);border-radius:.5rem;margin-top:1rem;background:var(--cmg-surface);position:relative}
#organic-v2-root[data-cmg-organic-v2] .ov2-form-panel iframe{width:100%;height:100%;border:0;display:block}
#organic-v2-root[data-cmg-organic-v2] .ov2-form-status{padding:1rem;background:var(--cmg-paper)}
#organic-v2-root[data-cmg-organic-v2] .ov2-preview-form{padding:2rem 1rem;display:grid;align-content:start;gap:1rem;min-height:100%}
#organic-v2-root[data-cmg-organic-v2] .ov2-error{color:#8c3017;font-weight:650}
/* A permanently reserved document-end spacer, not on-scroll body padding. */
#organic-v2-root[data-cmg-organic-v2] .ov2-sticky-space{height:calc(5.5rem + env(safe-area-inset-bottom,0px))}
#organic-v2-root[data-cmg-organic-v2] .ov2-sticky{position:fixed;inset:auto 0 0;z-index:880;display:flex;align-items:center;gap:.5rem;padding:.75rem .75rem calc(.75rem + env(safe-area-inset-bottom,0px));border-top:1px solid var(--cmg-border-strong);background:var(--cmg-surface);box-shadow:0 -4px 18px rgb(11 34 51 / 8%)}
#organic-v2-root[data-cmg-organic-v2] .ov2-sticky a{flex:1;min-width:0;min-height:48px;padding:.75rem;font-size:1rem}
#organic-v2-root[data-cmg-organic-v2] .ov2-dismiss{flex:none;border:0;width:44px;height:44px;background:transparent;color:var(--cmg-muted);font-size:1.75rem;line-height:1}
@media(min-width:640px){#organic-v2-root[data-cmg-organic-v2] .ov2-choices{grid-template-columns:1fr 1fr}#organic-v2-root[data-cmg-organic-v2] .ov2-next-links{grid-template-columns:1fr 1fr}}
@media(min-width:768px){#organic-v2-root[data-cmg-organic-v2] .ov2-sticky,#organic-v2-root[data-cmg-organic-v2] .ov2-sticky-space{display:none!important}}
@media(prefers-reduced-motion:reduce){#organic-v2-root[data-cmg-organic-v2] *{scroll-behavior:auto!important}}
@media(prefers-contrast:more){#organic-v2-root[data-cmg-organic-v2] .ov2-card,#organic-v2-root[data-cmg-organic-v2] .ov2-choice{border-color:var(--cmg-ink)}}
