.sw-wizard-backdrop{position:fixed;inset:0;z-index:2000;display:grid;place-items:center;padding:20px;background:rgba(20,7,34,.82)}
.sw-quick-title{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.sw-service-status{display:inline-flex;align-items:center;gap:7px;width:max-content;border:1px solid currentColor;border-radius:999px;padding:5px 10px;color:#fff;font-size:.68rem;font-weight:950;letter-spacing:.12em;line-height:1;text-transform:uppercase;white-space:nowrap}
.sw-service-status-dot{width:8px;height:8px;border-radius:50%;background:currentColor;box-shadow:0 0 7px currentColor,0 0 14px currentColor}
.sw-service-status--live{border-color:#34d399;background:rgba(6,78,59,.9);color:#86efac;box-shadow:0 0 8px rgba(52,211,153,.75),0 0 20px rgba(52,211,153,.38);animation:sw-status-live-glow 2.2s ease-in-out infinite}
.sw-service-status--soon{border-color:#fb7185;background:rgba(127,29,29,.92);color:#fecdd3;box-shadow:0 0 8px rgba(251,113,133,.65),0 0 18px rgba(251,113,133,.3);animation:sw-status-soon-glow 2.2s ease-in-out infinite}
@keyframes sw-status-live-glow{0%,100%{box-shadow:0 0 7px rgba(52,211,153,.62),0 0 16px rgba(52,211,153,.28)}50%{box-shadow:0 0 12px rgba(52,211,153,.92),0 0 27px rgba(52,211,153,.5)}}
@keyframes sw-status-soon-glow{0%,100%{box-shadow:0 0 7px rgba(251,113,133,.58),0 0 16px rgba(251,113,133,.26)}50%{box-shadow:0 0 12px rgba(251,113,133,.88),0 0 27px rgba(251,113,133,.48)}}
@media(prefers-reduced-motion:reduce){.sw-service-status--live,.sw-service-status--soon{animation:none}}
.sw-wizard-backdrop[hidden]{display:none}
.sw-wizard{position:relative;width:min(100%,760px);min-height:520px;display:flex;flex-direction:column;justify-content:center;border:1px solid rgba(213,170,67,.75);border-radius:24px;background:linear-gradient(145deg,#fff,#f7f1fa);padding:58px clamp(24px,7vw,72px) 44px;box-shadow:0 34px 90px rgba(0,0,0,.46)}
.sw-wizard-close{position:absolute;right:18px;top:13px;border:0;background:transparent;color:#321354;font-size:36px;line-height:1;cursor:pointer}
.sw-wizard-progress{position:absolute;left:0;right:0;top:0;height:7px;overflow:hidden;border-radius:24px 24px 0 0;background:#e9e0ee}
.sw-wizard-progress span{display:block;width:0;height:100%;background:linear-gradient(90deg,#9c7320,#d5aa43);transition:width .25s}
.sw-wizard-count{color:#7b6b83;font-size:13px;font-weight:900;letter-spacing:1px;text-transform:uppercase}
.sw-wizard h2{margin:14px 0 10px;color:#321354;font-size:clamp(30px,5vw,48px);line-height:1.05}
.sw-wizard-intro{margin:0 0 24px;color:#655b69;font-size:17px;line-height:1.55}
.sw-wizard label{display:grid;gap:9px;color:#2b2133;font-weight:800}
.sw-wizard input,.sw-wizard select,.sw-wizard textarea{width:100%;border:1px solid #cfc3d8;border-radius:12px;padding:15px;background:#fff;color:#211a28;font:inherit}
.sw-wizard input:focus,.sw-wizard select:focus,.sw-wizard textarea:focus{outline:3px solid rgba(213,170,67,.3);border-color:#9b7220}
.sw-wizard-choices{display:grid;gap:12px}.sw-wizard-choices label{grid-template-columns:auto 1fr;align-items:start;padding:16px;border:1px solid #ded4e5;border-radius:14px;background:#fff;cursor:pointer}.sw-wizard-choices input{width:auto;margin-top:3px}
.sw-sms-protection-choices label{font-size:14px;font-weight:400;line-height:1.45}
.sw-sms-protection-choices label span{font-weight:400}
.sw-wizard-help{display:block;margin-top:9px;color:#6d6372;font-size:13px;line-height:1.5}
.sw-wizard-radius{display:grid;grid-template-columns:1fr 150px;gap:18px;align-items:end}.sw-wizard-radius output{display:block;margin-top:8px;color:#321354;font-weight:900}
.sw-wizard-actions{display:flex;justify-content:space-between;gap:12px;margin-top:30px}.sw-wizard-actions .sw-btn{min-width:130px}.sw-wizard-error{margin-top:18px;padding:12px 14px;border-left:5px solid #a52d4c;background:#fff0f4;color:#731c35;font-weight:800}
.sw-wizard-summary{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px 18px;padding:18px;border-radius:14px;background:#fff;border:1px solid #ded4e5}.sw-wizard-summary dt{min-width:0;color:#321354;font-weight:900}.sw-wizard-summary dd{min-width:0;margin:0;overflow-wrap:anywhere;word-break:break-word}
.sw-wizard-question-in{animation:sw-question-in .28s ease both}@keyframes sw-question-in{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.sw-wizard-question-in{animation:none}.sw-wizard-progress span{transition:none}}
body.sw-wizard-open{overflow:hidden}
@media(max-width:620px){.sw-wizard{min-height:100%;border-radius:0;padding:54px 22px 32px}.sw-wizard-backdrop{padding:0}.sw-wizard-radius{grid-template-columns:1fr}.sw-wizard-actions{position:sticky;bottom:0;padding-top:16px;background:linear-gradient(transparent,#f7f1fa 24%)}.sw-wizard-actions .sw-btn{min-width:0;flex:1}}

.sw-wizard-returning{padding:20px;border:1px solid rgba(213,170,67,.7);border-radius:14px;background:#fff;color:#321354;box-shadow:0 10px 28px rgba(50,19,84,.08)}
.sw-wizard-returning strong{display:block;margin-bottom:8px;font-size:18px}.sw-wizard-returning p{margin:0;color:#655b69;line-height:1.55}
.sw-wizard button:focus-visible{outline:3px solid rgba(213,170,67,.65);outline-offset:3px}
@media(max-width:620px){.sw-wizard-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.45fr);gap:10px}.sw-wizard-actions #sw-wizard-reset{grid-column:1/-1;grid-row:2}.sw-wizard-actions .sw-btn{width:100%;min-height:48px;white-space:normal}}


/* Mobile viewport and safe-area protection for service/package popups */
.sw-wizard-backdrop{
  overflow:auto;
  overscroll-behavior:contain;
}
.sw-wizard{
  box-sizing:border-box;
  min-height:min(520px,calc(100vh - 40px));
  min-height:min(520px,calc(100dvh - 40px));
  max-height:calc(100vh - 40px);
  max-height:calc(100dvh - 40px);
  justify-content:flex-start;
  overflow-y:auto;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
}
@media(max-width:620px){
  .sw-wizard-backdrop{
    place-items:stretch;
    overflow:hidden;
    padding:max(8px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));
  }
  .sw-wizard{
    width:100%;
    min-height:0;
    height:auto;
    max-height:100%;
    border-radius:18px;
    padding:50px 18px max(18px,env(safe-area-inset-bottom));
    overflow-x:hidden;
    overflow-y:auto;
    scrollbar-gutter:stable;
  }
  .sw-wizard-count{font-size:12px;line-height:1.3}
  .sw-wizard h2{
    margin:10px 0 16px;
    font-size:clamp(24px,6.5vw,30px);
    line-height:1.12;
    overflow-wrap:anywhere;
  }
  .sw-wizard-choices{gap:10px}
  .sw-wizard-choices label{align-items:center;padding:13px 14px}
  .sw-wizard input,.sw-wizard select,.sw-wizard textarea{font-size:16px}
  .sw-wizard-actions{
    z-index:2;
    bottom:0;
    margin-inline:-2px;
    padding:16px 2px max(12px,env(safe-area-inset-bottom));
    background:linear-gradient(180deg,rgba(247,241,250,0),#f7f1fa 22%,#f7f1fa 100%);
  }
  .sw-wizard-summary{
    grid-template-columns:minmax(88px,.72fr) minmax(0,1.28fr);
    gap:10px 12px;
    padding:16px;
  }
  .sw-wizard:has(.sw-wizard-summary) .sw-wizard-actions{
    position:static;
    padding-bottom:max(12px,env(safe-area-inset-bottom));
  }
}
.sw-wizard-returning.sw-wizard-benefit-box{padding:28px 24px}
.sw-wizard-returning.sw-wizard-benefit-box strong{margin:0;font-size:clamp(24px,4.4vw,32px);font-weight:800;line-height:1.2;letter-spacing:-.02em}
.sw-wizard .sw-wizard-gpt-button{
  width:100%;
  min-height:58px;
  margin-top:14px;
  padding:16px 22px;
  border:2px solid #d5aa43;
  border-radius:14px;
  background:linear-gradient(135deg,#321354 0%,#4b1f73 100%);
  color:#fff;
  font-size:17px;
  font-weight:800;
  letter-spacing:.035em;
  box-shadow:0 10px 24px rgba(50,19,84,.2);
}
.sw-wizard .sw-wizard-gpt-button:hover{transform:translateY(-1px);box-shadow:0 13px 28px rgba(50,19,84,.26)}
.sw-wizard .sw-wizard-no-images{
  display:flex;
  align-items:center;
  gap:12px;
  margin:0 0 16px;
  padding:14px 16px;
  border:2px solid rgba(213,170,67,.7);
  border-radius:12px;
  background:#fff;
  color:#321354;
  font-weight:800;
  cursor:pointer;
}
.sw-wizard .sw-wizard-no-images input{width:22px;height:22px;flex:0 0 auto;accent-color:#321354}
.sw-wizard [data-image-upload-cards][hidden]{display:none!important}

/* Text Blast message builder */
.sw-text-blast-meter {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 14px 0 8px;
}

.sw-text-blast-meter span {
  min-width: 0;
  padding: 12px 10px;
  border: 1px solid rgba(62, 20, 96, 0.16);
  border-radius: 14px;
  background: #fff;
  text-align: center;
}

.sw-text-blast-meter strong {
  display: block;
  color: #321054;
  font-size: 1.05rem;
  line-height: 1.2;
}

.sw-text-blast-meter small {
  display: block;
  margin-top: 3px;
  color: #6f6575;
  font-size: 0.76rem;
  line-height: 1.2;
}

.sw-text-cost-note {
  margin-top: 0;
}

.sw-text-emoji-picker {
  margin-top: 18px;
}

.sw-text-emoji-picker > strong {
  display: block;
  margin-bottom: 9px;
  color: #2d2332;
}

.sw-text-emoji-picker small {
  color: #6f6575;
  font-weight: 600;
}

.sw-text-emoji-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.sw-text-emoji {
  width: 44px;
  min-width: 44px;
  min-height: 42px;
  padding: 6px;
  border: 1px solid rgba(62, 20, 96, 0.18);
  border-radius: 12px;
  background: #fff;
  font-size: 1.25rem;
  line-height: 1;
  cursor: pointer;
}

.sw-text-emoji:hover,
.sw-text-emoji:focus-visible {
  border-color: #d6aa31;
  background: #fff9e8;
  outline: 3px solid rgba(214, 170, 49, 0.22);
  outline-offset: 1px;
}

@media (max-width: 640px) {
  .sw-text-blast-meter {
    grid-template-columns: 1fr;
  }

  .sw-text-blast-meter span {
    display: flex;
    align-items: center;
    justify-content: space-between;
    text-align: left;
  }

  .sw-text-blast-meter small {
    margin-top: 0;
  }
}

/* Text Blast scheduling */
.sw-text-timing-panel {
  margin-top: 16px;
  padding: 18px;
  border: 1px solid rgba(62, 20, 96, 0.16);
  border-radius: 16px;
  background: #fffaf0;
}

.sw-text-timing-panel > label,
.sw-text-timing-questions label {
  display: block;
  color: #2d2332;
  font-weight: 800;
}

.sw-text-timing-panel input,
.sw-text-timing-panel select {
  width: 100%;
  margin-top: 8px;
}

.sw-text-timing-questions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-top: 16px;
}

.sw-text-recommend-button {
  margin-top: 18px;
}

.sw-text-recommendation {
  margin-top: 16px;
  padding: 16px;
  border: 2px solid #15803d;
  border-radius: 16px;
  background: #f0fdf4;
}

.sw-text-recommendation > strong {
  display: block;
  color: #166534;
  font-size: 1.05rem;
}

.sw-text-recommendation p {
  margin: 6px 0 12px;
  color: #425047;
}

.sw-text-use-time {
  min-height: 44px;
  padding: 10px 16px;
  border: 0;
  border-radius: 12px;
  background: #321054;
  color: #fff;
  font-weight: 800;
  cursor: pointer;
}

.sw-text-use-time:hover,
.sw-text-use-time:focus-visible {
  background: #4a176f;
  outline: 3px solid rgba(214, 170, 49, 0.32);
  outline-offset: 2px;
}

[data-text-time-selected] {
  display: inline-block;
  margin-left: 10px;
  color: #166534;
  font-weight: 800;
}

@media (max-width: 640px) {
  .sw-text-timing-questions {
    grid-template-columns: 1fr;
  }

  .sw-text-timing-panel {
    padding: 14px;
  }

  [data-text-time-selected] {
    display: block;
    margin: 10px 0 0;
  }
}
[data-text-time-selected][hidden] {
  display: none;
}
@media (max-width: 620px) {
  .sw-wizard:has(.sw-text-timing-builder) .sw-wizard-actions {
    position: static;
    margin-top: 24px;
  }
}
.sw-wizard-radius .sw-target-zip {
  grid-column: 1 / -1;
}

.sw-wizard-radius .sw-target-zip input {
  width: 100%;
}

/* Text Blast audience targeting */
.sw-targeting-builder{display:grid;gap:18px}
.sw-target-dropdown,.sw-target-group{margin:0;border:1px solid #ded4e5;border-radius:14px;background:#fff}
.sw-target-dropdown summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px;cursor:pointer;color:#321354;font-weight:900}
.sw-target-dropdown summary strong{color:#6d6372;font-size:13px;white-space:nowrap}
.sw-target-dropdown-panel{padding:0 16px 16px}
.sw-target-search-label{font-size:14px}
.sw-target-search-label input{margin-top:8px}
.sw-target-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px;max-height:280px;overflow:auto;padding:4px}
.sw-target-options label,.sw-target-age-grid label,.sw-target-gender-grid label{display:flex;align-items:center;gap:9px;padding:10px;border:1px solid #e6ddea;border-radius:10px;background:#fff;cursor:pointer;font-weight:750}
.sw-target-options input,.sw-target-age-grid input,.sw-target-gender-grid input{width:auto;flex:0 0 auto;margin:0;accent-color:#321354}
.sw-target-group{padding:14px 16px}
.sw-target-group legend{padding:0 7px;color:#321354;font-weight:900}
.sw-target-age-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.sw-target-gender-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
@media(max-width:620px){
  .sw-target-options{grid-template-columns:1fr;max-height:230px}
  .sw-target-age-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
.sw-email-budget-builder input[type="range"]{width:100%;margin:18px 0;accent-color:#c9a227}
.sw-email-budget-builder .sw-fee-breakdown{display:grid;gap:10px;margin:18px 0;padding:16px;border:1px solid rgba(201,162,39,.4);border-radius:14px;background:#f8fafc}
.sw-email-budget-builder .sw-fee-breakdown>div{display:flex;justify-content:space-between;gap:20px;padding-bottom:8px;border-bottom:1px solid #e2e8f0}
.sw-email-budget-builder .sw-fee-breakdown>div:last-child{padding:10px 0 0;border:0;color:#071c35;font-size:1.05rem}
.sw-website-addon-list{margin-top:20px}.sw-website-addon-list>legend{padding:0 6px;color:#071c35;font-weight:800}.sw-website-addon-list>.sw-wizard-help{margin:2px 0 10px}.sw-website-addon-group{display:grid;gap:10px;margin-top:16px}.sw-website-addon-group h4{margin:0;padding:0 2px;color:#321354;font-size:.82rem;letter-spacing:.08em;text-transform:uppercase}.sw-wizard-choices .sw-website-addon-group label.sw-website-addon{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:start;margin:0}.sw-website-addon-copy{display:grid;gap:7px;min-width:0}.sw-website-addon-heading{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;color:#071c35}.sw-website-addon-heading>b{flex:0 0 auto;color:#8a6412}.sw-website-addon-copy small{color:#526174;font-size:.9rem;font-weight:400;line-height:1.5}.sw-website-running-total{display:grid;gap:0;margin:30px 0 18px;padding:24px;border:1px solid rgba(201,162,39,.5);border-radius:16px;background:#f8fafc;box-shadow:0 8px 24px rgba(7,28,53,.07)}.sw-website-running-total h4{margin:0 0 12px;padding-bottom:14px;border-bottom:2px solid rgba(201,162,39,.35);color:#071c35;font-size:1.08rem}.sw-website-running-total>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:start;padding:12px 0;border-bottom:1px solid #e2e8f0}.sw-website-running-total>div span{line-height:1.4}.sw-website-running-total>div strong{white-space:nowrap;text-align:right}.sw-website-running-total>div.sw-running-total-final{margin-top:4px;padding:18px 0 0;border:0;color:#071c35;font-size:1.08rem;font-weight:800}@media(max-width:620px){.sw-website-addon-heading{display:grid;gap:6px}.sw-website-addon-heading>b{justify-self:start}.sw-website-running-total{margin:24px 0 16px;padding:18px}.sw-website-running-total>div{gap:14px}.sw-website-running-total>div.sw-running-total-final{grid-template-columns:1fr;gap:6px}.sw-website-running-total>div.sw-running-total-final strong{text-align:left;font-size:1.16rem}}
.sw-domain-search{display:grid;gap:16px}.sw-domain-search-status{padding:12px 14px;border-radius:10px;background:#f8fafc;color:#526174}.sw-domain-search-status[data-state="error"]{background:#fff1f2;color:#9f1239}.sw-domain-search-status[data-state="ready"],.sw-domain-search-status[data-state="selected"]{background:#ecfdf5;color:#166534}.sw-domain-results{display:grid;gap:10px}.sw-domain-result{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;padding:14px;border:1px solid;border-radius:12px}.sw-domain-result--available{border-color:#86efac;background:#f0fdf4;color:#166534;cursor:pointer}.sw-domain-result--taken{grid-template-columns:auto minmax(0,1fr);border-color:#fda4af;background:#fff1f2;color:#9f1239}.sw-domain-result input{width:18px;height:18px}.sw-domain-result-kind{display:block;margin-bottom:3px;font-size:.68rem;font-weight:800;letter-spacing:.08em;opacity:.72}.sw-domain-selected,.sw-domain-email-options{display:grid;gap:7px;margin:18px 0;padding:16px;border-left:4px solid #c9a227;border-radius:10px;background:#f8fafc;color:#071c35}.sw-domain-selected[hidden]{display:none}.sw-domain-selected span{font-weight:800}.sw-domain-selected small,.sw-domain-email-options .sw-wizard-help{color:#526174;line-height:1.5}.sw-domain-email-options{margin:24px 0;padding:20px;border:1px solid rgba(7,28,53,.16);border-left:4px solid #c9a227;border-radius:16px;background:#fff}.sw-domain-email-options h4{margin:0 0 6px;color:#071c35}
.sw-email-reference-prices{display:grid;gap:6px;padding:14px 16px;border-radius:12px;background:#f8fafc;color:#071c35}.sw-email-reference-prices span{font-weight:700}.sw-email-reference-prices small{color:#526174;line-height:1.45}
