/* Scoped to the generator; loaded after the historical theme overrides. */
/* V155: Divi's page and footer create separate stacking contexts. Lift the
   generator's page context, so its fixed navigation can receive clicks above
   the footer. Raising only .storybd-nav cannot escape the page context. */
#main-content:has(#storybd-v7-app) { position:relative!important; z-index:2!important; }
#storybd-v7-app .storybd-style-step.is-active,
#storybd-v7-app .storybd-style-card-main,
#storybd-v7-app .cx-style-grid,
#storybd-v7-app .cx-style-tile { content-visibility:visible!important; contain-intrinsic-size:none!important; }
#storybd-v7-app .storybd-style-step { padding:24px 0 104px!important; min-height:0!important; overflow:visible!important; }
#storybd-v7-app .storybd-style-card-main { padding:24px!important; overflow:visible!important; border:2px solid #e0e1ea!important; border-radius:24px!important; background:#fff!important; box-shadow:0 10px 35px #2730470a!important; }
#storybd-v7-app .storybd-style-step .storybd-heading-row { display:flex!important; flex-wrap:wrap!important; align-items:center!important; justify-content:space-between!important; gap:16px!important; margin:0 0 22px!important; }
#storybd-v7-app .storybd-style-step .storybd-heading-row>div:first-child { flex:1 1 380px; min-width:0; }
#storybd-v7-app .storybd-style-step h1 { font-size:clamp(26px,3vw,38px)!important; line-height:1.12!important; letter-spacing:-1px!important; margin:8px 0!important; padding:0!important; text-shadow:none!important; }
#storybd-v7-app .storybd-style-step h1::after { display:none!important; }
#storybd-v7-app .storybd-style-step .storybd-kicker { font-size:11px!important; padding:6px 10px!important; border-width:2px!important; box-shadow:2px 2px 0 #192133!important; }
#storybd-v7-app .storybd-style-step .storybd-heading-row p { font-size:15px!important; line-height:1.5!important; margin:0!important; max-width:600px!important; }
#storybd-v7-app .storybd-style-step .storybd-credit-panel { flex:0 1 290px; min-width:0!important; width:auto!important; min-height:0!important; display:flex!important; flex-wrap:wrap!important; gap:5px 8px!important; align-items:baseline!important; padding:12px 16px!important; border-radius:16px!important; text-align:left!important; box-shadow:none!important; background:#fff7fa!important; }
#storybd-v7-app .storybd-style-step .storybd-credit-panel::before,
#storybd-v7-app .storybd-style-step .storybd-credit-panel::after { display:none!important; }
#storybd-v7-app .storybd-style-step .storybd-credit-label { font-size:12px!important; letter-spacing:0!important; margin:0!important; }
#storybd-v7-app .storybd-style-step .storybd-credit-total { font-size:24px!important; line-height:1.1!important; margin:0!important; padding:0!important; text-shadow:none!important; }
#storybd-v7-app .storybd-style-step .storybd-credit-panel>small { width:100%; font-size:11px!important; line-height:1.4!important; margin:0!important; }
#storybd-v7-app .storybd-style-step .storybd-buy-credits { flex-basis:100%; }
#storybd-v7-app .storybd-style-step .storybd-buy-credits[hidden] { display:none!important; }
#storybd-v7-app .cx-style-intro { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:14px; }
#storybd-v7-app .cx-style-intro p { color:#536074; font-size:13px; line-height:1.5; margin:0; padding:0; }
#storybd-v7-app .cx-style-intro>span { flex-shrink:0; font-size:11px; font-weight:700; color:#9b1748; }
#storybd-v7-app .cx-style-grid { display:grid!important; grid-template-columns:repeat(3,minmax(0,1fr))!important; gap:16px!important; margin:0!important; }
#storybd-v7-app #cx-more-styles { margin-top:16px!important; }
#storybd-v7-app #cx-more-styles[hidden] { display:none!important; }
#storybd-v7-app .cx-style-tile { position:relative!important; display:flex!important; flex-direction:column!important; width:100%!important; min-width:0!important; height:auto!important; min-height:0!important; aspect-ratio:auto!important; padding:0!important; margin:0!important; border:2px solid #e5e7ed!important; border-radius:18px!important; overflow:hidden!important; background:#fff!important; box-shadow:0 4px 16px #18203808!important; text-align:left!important; transform:none!important; cursor:pointer; isolation:isolate; outline:none!important; }
#storybd-v7-app .cx-style-tile::before,
#storybd-v7-app .cx-style-tile::after { display:none!important; }
#storybd-v7-app .cx-style-tile:hover { border-color:#e68ba8!important; box-shadow:0 8px 22px #c9225714!important; }
#storybd-v7-app .cx-style-tile.is-selected { border-color:#d52361!important; box-shadow:0 0 0 2px #d5236120!important; }
#storybd-v7-app .cx-style-tile:focus-visible,
#storybd-v7-app .cx-more-styles:focus-visible { outline:3px solid #243cbd!important; outline-offset:4px!important; }
#storybd-v7-app .cx-style-tile img { display:block!important; position:static!important; inset:auto!important; width:100%!important; height:auto!important; aspect-ratio:4/3!important; object-fit:cover!important; object-position:center 43%!important; transform:none!important; filter:none!important; border-radius:0!important; }
#storybd-v7-app .cx-style-awaiting { display:flex; align-items:center; justify-content:center; width:100%; aspect-ratio:4/3; background:#f1f0f4; color:#6c6577; font-size:12px; }
#storybd-v7-app .cx-style-label { display:flex!important; position:static!important; inset:auto!important; flex:1!important; flex-direction:column!important; gap:7px!important; padding:14px!important; background:#fff!important; color:#172237!important; text-shadow:none!important; min-height:122px!important; border:0!important; border-radius:0!important; box-shadow:none!important; }
#storybd-v7-app .cx-style-label strong { color:#172237!important; font-size:18px!important; line-height:1.2!important; letter-spacing:-.3px!important; text-shadow:none!important; white-space:normal!important; margin:0!important; padding:0!important; background:none!important; border:0!important; border-radius:0!important; box-shadow:none!important; backdrop-filter:none!important; }
#storybd-v7-app .cx-style-pitch { display:block; font-size:13px; line-height:1.4; font-weight:500; color:#46546b; }
#storybd-v7-app .cx-style-label small { margin-top:auto; padding-top:3px; font-size:10px; line-height:1.4; font-weight:600; color:#6d5170; }
#storybd-v7-app .cx-style-badge { position:absolute; left:10px; top:10px; z-index:2; border-radius:30px; background:#ffffffee; padding:4px 9px; color:#713559; font-size:10px; line-height:1.4; font-weight:800; }
#storybd-v7-app .cx-style-check { display:none; position:absolute; top:10px; right:10px; width:27px; height:27px; border:2px solid white; border-radius:50%; background:#d52361; color:#fff; text-align:center; line-height:23px; font-size:17px; font-weight:800; }
#storybd-v7-app .is-selected .cx-style-check { display:block; }
#storybd-v7-app .cx-more-styles { display:flex; align-items:center; justify-content:center; gap:12px; width:100%; padding:14px; margin:18px 0; border:1px solid #dedfe7; background:#fff; border-radius:12px; color:#293348; font:inherit; font-size:14px; font-weight:700; cursor:pointer; }
#storybd-v7-app .cx-ambiance { margin:20px 0 0; padding:0; border:0; min-width:0; }
#storybd-v7-app .cx-ambiance legend { font-size:14px; font-weight:700; margin-bottom:10px; color:#273349; }
#storybd-v7-app .cx-ambiance label { display:flex; align-items:center; gap:12px; background:#f8f6fb; padding:14px; border:1px solid #e8e3ee; border-radius:12px; cursor:pointer; }
#storybd-v7-app .cx-ambiance input { width:20px!important; height:20px!important; min-width:20px; margin:0!important; accent-color:#d52361; }
#storybd-v7-app .cx-ambiance strong { display:block; font-size:14px; color:#253249; }
#storybd-v7-app .cx-ambiance small { display:block; margin-top:3px; font-size:12px; line-height:1.45; color:#617086; }
#storybd-v7-app .cx-selection-summary { margin:14px 0 0; padding:0; font-size:13px; color:#5c677a; }
#storybd-v7-app .cx-selection-summary strong { color:#a11b4a; }
#storybd-v7-app:has(.storybd-style-step.is-active) .storybd-nav { position:fixed!important; bottom:12px!important; left:50%!important; right:auto!important; transform:translateX(-50%)!important; width:calc(100% - 32px)!important; max-width:1080px!important; margin:0!important; z-index:20!important; }
@media(max-width:760px) {
  #storybd-v7-app .storybd-style-card-main { padding:16px!important; }
  #storybd-v7-app .storybd-style-step .storybd-heading-row { gap:12px!important; margin-bottom:18px!important; }
  #storybd-v7-app .storybd-style-step .storybd-heading-row>div:first-child { flex-basis:100%; }
  #storybd-v7-app .storybd-style-step .storybd-credit-panel { flex:1 1 100%; padding:10px 12px!important; }
  #storybd-v7-app .cx-style-intro>span { display:none; }
  #storybd-v7-app .cx-style-grid { grid-template-columns:repeat(2,minmax(0,1fr))!important; gap:10px!important; }
  #storybd-v7-app .cx-style-tile { border-radius:13px!important; }
  #storybd-v7-app .cx-style-tile img { aspect-ratio:1!important; }
  #storybd-v7-app .cx-style-awaiting { aspect-ratio:1; }
  #storybd-v7-app .cx-style-label { padding:10px!important; min-height:136px!important; gap:6px!important; }
  #storybd-v7-app .cx-style-label strong { font-size:15px!important; }
  #storybd-v7-app .cx-style-pitch { font-size:12px; }
  #storybd-v7-app .cx-style-label small { font-size:9px; }
  #storybd-v7-app .cx-style-badge { left:6px; top:6px; font-size:9px; padding:3px 7px; }
  #storybd-v7-app .cx-style-check { right:6px; top:6px; }
}
@media(prefers-reduced-motion:reduce) {
  #storybd-v7-app .cx-style-tile { transition:none!important; }
}
