/* Customer decision support, scoped to the pricing configurator. */
body:has(#gs-pt-overlay.is-open) .gs-chatbot { visibility:hidden; pointer-events:none; }
#bundle-configurator .campaign-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; list-style:none; padding:0; margin:0 0 48px; border-block:1px solid var(--gm-line); }
#bundle-configurator .campaign-steps li { display:flex; gap:12px; padding-block:24px; }
#bundle-configurator .campaign-steps li > span { flex:none; display:grid; place-items:center; width:30px; height:30px; border:1px solid var(--sc-accent); border-radius:50%; color:var(--sc-accent); }
#bundle-configurator .campaign-steps strong, #bundle-configurator .campaign-start h3 { color:var(--sc-ink); }
#bundle-configurator .campaign-steps p, #bundle-configurator .campaign-start > p { color:var(--sc-ink-soft); margin:6px 0 0; font-size:.9rem; line-height:1.55; }
#bundle-configurator .campaign-start { margin-bottom:36px; }
#bundle-configurator .campaign-start h3 { font-family:var(--sc-font-display); font-size:1.5rem; margin:0; }
#bundle-configurator .campaign-presets { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-top:20px; }
#bundle-configurator .campaign-presets button { text-align:left; display:flex; flex-direction:column; align-items:flex-start; gap:12px; padding:22px; border:1px solid var(--gm-line); border-radius:14px; background:var(--sc-surface); font:inherit; color:var(--sc-ink); cursor:pointer; }
#bundle-configurator .campaign-presets button[aria-pressed="true"] { border-color:var(--sc-accent); box-shadow:inset 0 0 0 1px var(--sc-accent); background:color-mix(in oklab,var(--sc-accent) 8%,var(--sc-surface)); }
#bundle-configurator .campaign-presets strong { font-family:var(--sc-font-display); font-size:1.12rem; line-height:1.25; }
#bundle-configurator .campaign-presets span { flex:1; font-size:.88rem; line-height:1.55; color:var(--sc-ink-soft); }
#bundle-configurator .campaign-presets b { color:var(--sc-accent); font-size:.95rem; font-variant-numeric:tabular-nums; }
#bundle-configurator button:focus-visible, #bundle-configurator .gs-bndl-option-label:has(input:focus-visible) { outline:3px solid var(--sc-accent); outline-offset:4px; }
#bundle-configurator .campaign-radio { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }
#bundle-configurator .gs-bndl-group-hint a, #bundle-configurator .gs-pt-fineprint a { color:var(--sc-accent); text-decoration:underline; text-underline-offset:3px; }
#bundle-configurator .gs-bndl-seo-stepper { margin-top:12px; }
#bundle-configurator .gs-bndl-stepper-btn { min-width:44px; min-height:44px; }
#bundle-configurator button:disabled { opacity:.45; cursor:not-allowed; }
#bundle-configurator .campaign-equivalent, #bundle-configurator .campaign-setup-note { font-size:.84rem; line-height:1.6; color:var(--sc-ink-soft); margin:12px 0; }
#bundle-configurator .campaign-first-payment { padding-top:16px; border-top:1px solid var(--gm-line); font-size:.92rem; color:var(--sc-ink); line-height:1.6; }
#bundle-configurator .campaign-review { padding:16px; border:1px solid var(--gm-line); border-radius:12px; margin-bottom:22px; }
#bundle-configurator .campaign-review > strong { display:block; margin-bottom:12px; font-size:.9rem; color:var(--sc-ink); }
#bundle-configurator .campaign-review .gs-bndl-line-item { margin-top:8px; align-items:flex-start; gap:12px; }
#bundle-configurator .gs-pt-cad-name, #bundle-configurator .gs-pt-cad-billed, #bundle-configurator .gs-pt-cad-setup, #bundle-configurator .gs-pt-step-label, #bundle-configurator .gs-pt-m-tag { color:#b7c5bc; }
#bundle-configurator .gs-pt-cad-billed, #bundle-configurator .gs-pt-cad-setup { font-size:.75rem; line-height:1.5; }
#bundle-configurator .gs-pt-cad-name, #bundle-configurator .gs-pt-step-label { font-size:.78rem; }
#bundle-configurator .gs-pt-firstpay { font-size:.88rem; line-height:1.65; }
#bundle-configurator .gs-pt-dialog { max-width:640px; }
#bundle-configurator .gs-bndl-billing-toggle { border-radius:16px; flex-wrap:wrap; gap:4px; }
#bundle-configurator .gs-bndl-billing-btn { padding-inline:16px; }
@media(max-width:1000px) {
  #bundle-configurator .campaign-presets { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:760px) {
  #bundle-configurator .campaign-steps { grid-template-columns:1fr; gap:0; margin-bottom:32px; }
  #bundle-configurator .campaign-steps li { padding-block:14px; }
  #bundle-configurator .campaign-presets { grid-template-columns:repeat(2,minmax(0,1fr)); }
  #bundle-configurator .campaign-presets button { padding:16px; }
  #bundle-configurator .gs-bndl-mobile-bar .gs-bndl-lock-btn { padding-inline:14px!important; font-size:.8rem!important; white-space:normal; }
  #bundle-configurator .gs-bndl-mobile-bar { gap:10px; padding-bottom:max(12px,env(safe-area-inset-bottom)); }
  #bundle-configurator .gs-pt-cadence { gap:6px; }
  #bundle-configurator .gs-pt-cad-card { padding-inline:5px; }
}
@media(max-width:360px) {
  #bundle-configurator .campaign-presets { grid-template-columns:1fr; }
  #bundle-configurator .gs-bndl-billing-btn { padding-inline:10px; font-size:.8rem; }
}
