.growth-dialog {
  box-sizing: border-box;
  width: min(94vw, 900px);
  max-height: 90dvh;
  overflow: auto;
  border: 1px solid #415045;
  border-radius: 22px;
  background: #151b19;
  color: #f0f4ed;
  padding: 32px;
  font:
    15px/1.6 "Space Grotesk",
    system-ui,
    sans-serif;
  box-shadow: 0 30px 100px #0008;
}
.growth-dialog::backdrop {
  background: #060d10bd;
  backdrop-filter: blur(6px);
}
.growth-dialog header {
  display: flex;
  justify-content: space-between;
  gap: 20px;
}
.growth-dialog h2,
.growth-review h2 {
  margin: 0;
  font-size: clamp(23px, 4vw, 34px);
  line-height: 1.2;
  letter-spacing: -0.04em;
}
.growth-dialog h3 {
  font-size: 22px;
  line-height: 1.3;
  margin: 12px 0 20px;
}
.growth-dialog p,
.growth-review p {
  line-height: 1.6;
}
.growth-muted,
.growth-terms {
  color: #afbbb2;
  font-size: 13px;
}
.growth-terms {
  border-top: 1px solid #ffffff12;
  padding-top: 14px;
}
.growth-plan-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
  margin: 25px 0;
}
.growth-plan-grid article {
  padding: 24px;
  border: 1px solid #ffffff22;
  border-radius: 16px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.growth-plan-grid .growth-pro {
  border-color: #d0f493;
  background: #d0f40706;
}
.growth-plan-grid ul {
  padding-left: 20px;
  font-size: 14px;
  flex: 1;
}
.growth-plan-grid li {
  margin-bottom: 10px;
}
.growth-eyebrow {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.14em;
  color: #afc5ac;
  text-transform: uppercase;
}
.growth-price {
  font-size: 48px;
  line-height: 1.2;
  font-weight: 600;
  letter-spacing: -0.07em;
}
.growth-dialog button,
.growth-review button {
  font: inherit;
  border: 1px solid #ffffff35;
  border-radius: 9px;
  background: transparent;
  color: inherit;
  padding: 10px 16px;
  cursor: pointer;
}
.growth-dialog .growth-primary,
.growth-review .growth-primary {
  background: #d4f5a0;
  color: #162112;
  border-color: #d4f5a0;
  font-weight: 650;
}
.growth-dialog button:disabled {
  opacity: 0.5;
  cursor: wait;
}
.growth-dialog .growth-close {
  padding: 0;
  width: 32px;
  height: 32px;
  font-size: 23px;
  flex-shrink: 0;
}
.growth-switch {
  display: flex;
  gap: 4px;
  margin-bottom: 18px;
}
.growth-switch [aria-pressed="true"] {
  background: #d4f5a0;
  color: #162112;
}
.growth-badge {
  color: #d4f5a0;
  font-size: 12px;
  border-bottom: 1px solid #d4f5a0;
}
.growth-dialog label,
.growth-review label {
  display: flex;
  flex-direction: column;
  gap: 5px;
  font-size: 13px;
  margin: 16px 0;
}
.growth-dialog input,
.growth-dialog select,
.growth-review select {
  font: inherit;
  color: inherit;
  background: #1c2720;
  border: 1px solid #708071;
  border-radius: 8px;
  padding: 11px;
  min-height: 44px;
}
.growth-dialog option,
.growth-review option {
  background: #1c2720;
  color: #fff;
}
.growth-actions {
  display: flex;
  gap: 12px;
  align-items: center;
  flex-wrap: wrap;
  margin: 20px 0;
}
.growth-dialog :focus-visible,
.growth-review :focus-visible {
  outline: 2px solid #d4f5a0;
  outline-offset: 4px;
}
.growth-setup {
  max-width: 560px;
}
.growth-status:empty {
  display: none;
}
.growth-review {
  background: #17211d;
  color: #f0f4ed;
  border: 1px solid #3f5046;
  border-radius: 18px;
  padding: 28px;
  margin: 22px 0;
}
.growth-review h2 {
  margin-top: 12px;
}
.growth-delta {
  font-size: 34px;
}
.growth-links {
  display: flex;
  justify-content: center;
  gap: 22px;
  margin: 20px auto;
  font: 13px system-ui;
}
.growth-links a,
.growth-links button {
  color: inherit;
}
.growth-links button {
  background: none;
  border: 0;
  text-decoration: underline;
  cursor: pointer;
}
.growth-history-note {
  color: var(--text-muted, #889);
  padding: 12px;
  font-size: 12px;
}
.growth-demo-label {
  background: #d4f5a0;
  color: #15210e;
  text-align: center;
  padding: 8px 12px;
  font: 12px system-ui;
}
.growth-demo-label button {
  background: none;
  border: 0;
  text-decoration: underline;
  color: inherit;
  cursor: pointer;
}
@media (max-width: 600px) {
  .growth-dialog {
    padding: 22px 18px;
  }
  .growth-plan-grid {
    grid-template-columns: 1fr;
  }
  .growth-plan-grid article {
    padding: 20px;
  }
  .growth-review {
    padding: 22px 18px;
  }
  .growth-actions {
    align-items: stretch;
  }
  .growth-actions button {
    flex: 1;
    min-width: 150px;
  }
}
.growth-dialog p {
  white-space: pre-line;
}
.monthly-payments li {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}
.monthly-payments li button {
  font-size: 12px;
}

/* Choose a setup method before entering the manual guide or Pro importer. */
.growth-dialog.growth-setup-choice{margin:auto;width:min(94vw,820px);max-width:820px;background:var(--ff-surface,#172226);color:var(--text,#edf4ef);border-color:var(--ff-line,#334155)}
.growth-setup-choice .growth-muted{color:var(--ff-muted,#9aaeb5);max-width:580px;margin:14px 0 0}
.growth-setup-options{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:26px 0 18px}
.growth-dialog .growth-setup-option{display:flex;flex-direction:column;align-items:flex-start;gap:14px;text-align:left;position:relative;min-width:0;padding:24px;border:1px solid var(--ff-line,#334155);border-radius:18px;background:var(--ff-soft,rgba(154,177,188,.055));transition:transform .18s,border-color .18s,box-shadow .18s}
.growth-dialog .growth-setup-option:hover{transform:translateY(-3px);border-color:var(--ff-positive,#a6df94);box-shadow:0 12px 32px #0002}
.growth-dialog .growth-setup-option:focus-visible{outline:2px solid var(--ff-positive,#a6df94);outline-offset:4px}
.growth-dialog .growth-setup-option:active{transform:translateY(0)}
.growth-dialog .growth-setup-ai{background:linear-gradient(145deg,rgba(166,223,148,.09),transparent 75%),var(--ff-soft,rgba(154,177,188,.055))}
.growth-setup-icon{display:grid;place-items:center;width:52px;height:52px;border:1px solid var(--ff-line,#334155);border-radius:15px;color:var(--ff-positive,#a6df94);margin-bottom:2px}
.growth-setup-icon svg{width:34px;height:34px;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.growth-setup-badge{font-size:10px;letter-spacing:.02em;padding:4px 8px;border:1px solid var(--ff-line,#334155);border-radius:99px;color:var(--ff-muted,#9aaeb5)}
.growth-setup-option>strong{font-size:21px;font-weight:500;line-height:1.25;letter-spacing:-.6px}
.growth-setup-description{font-size:13px;line-height:1.65;color:var(--ff-muted,#9aaeb5)}
.growth-setup-note{font-size:11px;line-height:1.6;color:var(--ff-muted,#9aaeb5)}
.growth-setup-action{margin-top:auto;padding-top:8px;font-size:12px;font-weight:600;color:var(--ff-positive,#a6df94)}
.growth-dialog .growth-setup-later{border:0;color:var(--ff-muted,#9aaeb5);padding:10px 0;min-height:44px;font-size:12px}
@media(max-width:600px){.growth-dialog.growth-setup-choice{padding:24px 20px}.growth-setup-options{grid-template-columns:1fr;gap:12px;margin-top:22px}.growth-dialog .growth-setup-option{padding:20px;gap:11px}.growth-setup-icon{width:42px;height:42px}.growth-setup-icon svg{width:29px;height:29px}.growth-setup-option>strong{font-size:20px}}
@media(prefers-reduced-motion:reduce){.growth-dialog .growth-setup-option{transition:none}.growth-dialog .growth-setup-option:hover{transform:none}}

/* Shared decorative particles; controls and copy stay still and readable. */
.ff-entry-particles{position:absolute;inset:0;overflow:hidden;border-radius:inherit;pointer-events:none;z-index:0}
.ff-entry-particles i{position:absolute;left:var(--x);top:var(--y);width:3px;height:3px;border-radius:50%;background:var(--ff-positive,#bcec8b);box-shadow:0 0 8px currentColor;opacity:.35;animation:ff-entry-drift var(--duration,9s) ease-in-out var(--delay,0s) infinite}
.ff-entry-particles i:nth-child(1){--x:6%;--y:18%;--delay:-2s}.ff-entry-particles i:nth-child(2){--x:93%;--y:22%;--delay:-6s;--duration:11s}.ff-entry-particles i:nth-child(3){--x:14%;--y:66%;--delay:-4s}.ff-entry-particles i:nth-child(4){--x:86%;--y:76%;--delay:-8s;--duration:12s}.ff-entry-particles i:nth-child(5){--x:42%;--y:8%;--delay:-3s}.ff-entry-particles i:nth-child(6){--x:67%;--y:92%;--delay:-5s}.ff-entry-particles i:nth-child(7){--x:8%;--y:92%;--delay:-7s;--duration:13s}.ff-entry-particles i:nth-child(8){--x:96%;--y:53%;--delay:-1s}.ff-entry-particles i:nth-child(9){--x:72%;--y:14%;--delay:-9s}.ff-entry-particles i:nth-child(10){--x:31%;--y:94%;--delay:-4s;--duration:14s}
.growth-dialog.growth-setup-choice{position:relative;isolation:isolate}
.growth-setup-choice>:not(.ff-entry-particles){position:relative;z-index:1}
.growth-setup-icon{position:relative;--entry-orbit:31px;border-radius:50%;background:color-mix(in srgb,currentColor 5%,transparent)}
.growth-setup-manual .growth-setup-icon{color:#82c6f7}
.growth-setup-icon::before,.growth-setup-icon::after{content:"";position:absolute;left:50%;top:50%;width:4px;height:4px;margin:-2px;border-radius:50%;background:currentColor;box-shadow:0 0 10px currentColor;transform:translateX(var(--entry-orbit));animation:ff-entry-orbit 9s linear infinite;pointer-events:none}
.growth-setup-icon::after{width:3px;height:3px;margin:-1.5px;opacity:.55;animation-duration:13s;animation-direction:reverse;animation-delay:-5s}
.growth-setup-ai .growth-setup-icon svg{animation:ff-entry-bot 5s ease-in-out infinite}
.growth-setup-ai .growth-setup-icon circle{transform-box:fill-box;transform-origin:center;animation:ff-entry-blink 7s ease-in-out infinite}
.growth-pencil-tip{transform-origin:center;animation:ff-entry-write 5s ease-in-out infinite}
.growth-pencil-line{stroke-dasharray:25;animation:ff-entry-ink 5s ease-in-out infinite}
@keyframes ff-entry-drift{0%,100%{transform:translate(0,0);opacity:.2}50%{transform:translate(12px,-20px);opacity:.6}}
@keyframes ff-entry-orbit{from{transform:rotate(0deg) translateX(var(--entry-orbit)) rotate(0deg)}to{transform:rotate(360deg) translateX(var(--entry-orbit)) rotate(-360deg)}}
@keyframes ff-entry-bot{0%,100%{transform:translateY(1px) rotate(-2deg)}50%{transform:translateY(-3px) rotate(2deg)}}
@keyframes ff-entry-blink{0%,43%,47%,100%{transform:scaleY(1)}45%{transform:scaleY(.15)}}
@keyframes ff-entry-write{0%,65%,100%{transform:translate(0,0) rotate(0deg)}20%{transform:translate(-2px,1px) rotate(-6deg)}40%{transform:translate(2px,-1px) rotate(3deg)}}
@keyframes ff-entry-ink{0%,100%{stroke-dashoffset:25;opacity:.25}45%,80%{stroke-dashoffset:0;opacity:1}}
@media(max-width:600px){.growth-setup-icon{--entry-orbit:26px}}
@media(prefers-reduced-motion:reduce){.ff-entry-particles i,.growth-setup-icon::before,.growth-setup-icon::after,.growth-setup-icon svg,.growth-setup-icon circle,.growth-pencil-tip,.growth-pencil-line{animation:none}.growth-pencil-line{stroke-dashoffset:0}.ff-entry-particles i{opacity:.25}}
