.angel-diagnostic{--ad-accent:#147c78;--ad-ink:#173f46;--ad-muted:#637779;--ad-border:#cfded9;--ad-line:#d7e3df;--ad-pill:#fbefd9;--ad-pill-border:#e6cfaa;width:100%;max-width:980px;margin:22px auto;color:var(--ad-ink);font-family:inherit}.angel-diagnostic [hidden]{display:none!important}.angel-diagnostic .ad-card{box-sizing:border-box;width:100%;padding:28px 32px 26px;border:1px solid var(--ad-border);border-radius:24px;background:radial-gradient(circle at 100% 0%,rgba(231,225,199,.42),transparent 28%),linear-gradient(135deg,#fbf9f1 0%,#f7faf5 54%,#eef8f5 100%)}.angel-diagnostic .ad-top-line,.angel-diagnostic .ad-progress{height:4px;margin:0 0 20px;overflow:hidden;border-radius:999px;background:var(--ad-line)}.angel-diagnostic .ad-progress>span{display:block;width:7.69%;height:100%;border-radius:inherit;background:var(--ad-accent);transition:width .2s ease}.angel-diagnostic .ad-progress-full>span{width:100%}.angel-diagnostic .ad-kicker,.angel-diagnostic .ad-section-label{color:var(--ad-ink);font-size:12px;line-height:1.2;font-weight:800;letter-spacing:.055em}.angel-diagnostic .ad-kicker{display:inline-flex;align-items:center;min-height:28px;padding:3px 12px;margin-bottom:11px;border:1px solid var(--ad-pill-border);border-radius:999px;background:var(--ad-pill)}.angel-diagnostic h2{margin:0 0 13px;color:var(--ad-ink);font-family:Georgia,"Times New Roman",serif;font-size:clamp(26px,3.4vw,38px);line-height:1.08;font-weight:400;letter-spacing:-.015em}.angel-diagnostic .ad-question{font-size:clamp(21px,2.6vw,29px);line-height:1.2}.angel-diagnostic h3{margin:4px 0 7px;color:var(--ad-ink);font-size:16px;line-height:1.35}.angel-diagnostic p{margin:0 0 12px;color:var(--ad-ink);font-size:15px;line-height:1.55}.angel-diagnostic .ad-lead{font-size:16px;line-height:1.5}.angel-diagnostic .ad-note{margin:14px 0 12px;padding:12px 14px;border:1px solid var(--ad-border);border-radius:12px;background:rgba(255,255,255,.65);color:var(--ad-muted);font-size:14px;line-height:1.5}.angel-diagnostic .ad-meta{margin-bottom:15px;color:var(--ad-muted);font-size:13px}.angel-diagnostic button,.angel-diagnostic a{font-family:inherit}.angel-diagnostic .ad-primary{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:50px;padding:11px 22px;border:0;border-radius:999px;background:var(--ad-accent);color:#fff!important;text-decoration:none;font-size:14px;font-weight:800;cursor:pointer;transition:transform .15s ease,filter .15s ease}.angel-diagnostic .ad-primary:hover,.angel-diagnostic .ad-primary:focus-visible{filter:brightness(.9);transform:translateY(-1px);outline:none}.angel-diagnostic .ad-counter{margin-bottom:9px;color:var(--ad-accent);font-size:12px;font-weight:900;letter-spacing:.055em}.angel-diagnostic .ad-options{display:grid;gap:9px;margin-top:17px}.angel-diagnostic .ad-option{width:100%;min-height:48px;padding:10px 14px;border:1px solid rgba(255,255,255,.95);border-radius:13px;background:rgba(255,255,255,.9);color:var(--ad-ink);font-size:14px;font-weight:700;line-height:1.35;text-align:left;cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .15s ease}.angel-diagnostic .ad-option:hover,.angel-diagnostic .ad-option:focus-visible,.angel-diagnostic .ad-option.is-selected{border-color:var(--ad-accent);background:#f8fffd;transform:translateY(-1px);outline:none}.angel-diagnostic .ad-back,.angel-diagnostic .ad-restart{display:table;width:auto;margin:11px 0 0;padding:0;border:0;background:transparent;color:var(--ad-muted);font-size:12px;line-height:1.2;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.angel-diagnostic .ad-restart{margin:12px auto 0}.angel-diagnostic .ad-analysis-list{display:grid;gap:9px;margin-top:15px}.angel-diagnostic .ad-analysis-list>div{padding:10px 12px;border:1px solid var(--ad-border);border-radius:11px;background:rgba(255,255,255,.72);font-size:13px;line-height:1.45}.angel-diagnostic .ad-chain-wrap,.angel-diagnostic .ad-result-box,.angel-diagnostic .ad-entry-card,.angel-diagnostic .ad-secondary,.angel-diagnostic .ad-step-card,.angel-diagnostic .ad-final-cta{margin-top:12px;padding:14px 15px;border:1px solid var(--ad-border);border-radius:13px}.angel-diagnostic .ad-chain-wrap,.angel-diagnostic .ad-box-light{background:rgba(255,255,255,.72)}.angel-diagnostic .ad-box-warm,.angel-diagnostic .ad-secondary{border-color:#e7d8b8;background:rgba(246,238,223,.78)}.angel-diagnostic .ad-box-mint,.angel-diagnostic .ad-entry-card,.angel-diagnostic .ad-step-card{border-color:#bfe0db;background:rgba(226,246,241,.78)}.angel-diagnostic .ad-chain{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-top:8px;font-size:14px;font-weight:800}.angel-diagnostic .ad-chain span{padding:6px 9px;border-radius:999px;background:#fff;border:1px solid var(--ad-border)}.angel-diagnostic .ad-chain b{color:var(--ad-muted);font-weight:700}.angel-diagnostic .ad-chain-caption{margin-top:7px;color:var(--ad-muted);font-size:11px}.angel-diagnostic .ad-section-label{color:var(--ad-accent)}.angel-diagnostic .ad-result-box p,.angel-diagnostic .ad-entry-card p,.angel-diagnostic .ad-secondary p,.angel-diagnostic .ad-step-card p{margin-bottom:0;font-size:14px}.angel-diagnostic .ad-step-card p+p{margin-top:8px}.angel-diagnostic .ad-final-cta{background:rgba(255,255,255,.72)}.angel-diagnostic .ad-final-cta .ad-cta{width:100%;margin-top:5px}.angel-diagnostic .ad-disclaimer{margin-top:14px;color:var(--ad-muted);font-size:11px;line-height:1.45}@media(max-width:720px){.angel-diagnostic{margin:18px auto}.angel-diagnostic .ad-card{padding:21px 16px 19px;border-radius:18px}.angel-diagnostic h2{font-size:clamp(23px,7.2vw,30px)}.angel-diagnostic .ad-question{font-size:clamp(20px,6vw,25px)}.angel-diagnostic .ad-option{min-height:46px;font-size:14px}.angel-diagnostic .ad-chain{gap:5px;font-size:13px}.angel-diagnostic .ad-chain b{display:none}.angel-diagnostic .ad-primary{width:100%}}


/* =========================================================
   v1.1 — standalone diagnostic page + branded start screen
   ========================================================= */

html:has(body.angel-diagnostic-standalone) {
  margin: 0 !important;
  background: #f8f5ee;
}

body.angel-diagnostic-standalone {
  margin: 0 !important;
  padding: 0 !important;
  min-width: 320px;
  background: #f8f5ee !important;
  color: #123f46;
}

body.angel-diagnostic-standalone #wpadminbar {
  position: fixed;
}

body.angel-diagnostic-standalone .ad-page-shell,
body.angel-diagnostic-standalone .ad-page-shell * {
  box-sizing: border-box;
}

.ad-page-shell {
  --ad-dark: #064b54;
  --ad-deep: #0d4b52;
  --ad-teal: #147c78;
  --ad-cream: #f8f5ee;
  --ad-mint: #edf8f5;
  --ad-border-soft: #c9ddda;
  width: 100%;
  min-height: 100vh;
  background:
    radial-gradient(circle at 88% 16%, rgba(217, 238, 232, .65), transparent 31%),
    var(--ad-cream);
  font-family: Arial, Helvetica, sans-serif;
}

.ad-site-header {
  width: 100%;
  background: var(--ad-dark);
  color: #fff;
}

.ad-site-container {
  width: min(1180px, calc(100% - 48px));
  margin: 0 auto;
}

.ad-site-header-inner {
  min-height: 78px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}

.ad-brand {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: #fff !important;
  text-decoration: none !important;
}

.ad-brand-mark {
  font-size: 20px;
  line-height: 1;
}

.ad-brand-copy {
  display: flex;
  flex-direction: column;
  gap: 3px;
}

.ad-brand-copy strong {
  color: #fff;
  font-size: 18px;
  line-height: 1;
  letter-spacing: .12em;
  font-weight: 900;
}

.ad-brand-copy small {
  color: #b9d5d2;
  font-size: 11px;
  line-height: 1.2;
  letter-spacing: .02em;
}

.ad-home-link {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  padding: 8px 15px;
  border: 1px solid rgba(255,255,255,.24);
  border-radius: 999px;
  color: #fff !important;
  text-decoration: none !important;
  font-size: 12px;
  font-weight: 800;
  transition: background .15s ease, border-color .15s ease;
}

.ad-home-link:hover,
.ad-home-link:focus-visible {
  background: rgba(255,255,255,.08);
  border-color: rgba(255,255,255,.42);
  outline: none;
}

.ad-main {
  width: 100%;
  padding: 58px 0 72px;
}

body.angel-diagnostic-standalone .angel-diagnostic {
  width: min(1180px, calc(100% - 48px));
  max-width: none;
  margin: 0 auto;
  color: var(--ad-ink);
  font-family: Arial, Helvetica, sans-serif;
}

body.angel-diagnostic-standalone .angel-diagnostic .ad-card {
  max-width: 940px;
  margin: 0 auto;
  padding: 30px 34px 28px;
  border-radius: 24px;
}

body.angel-diagnostic-standalone .angel-diagnostic .ad-start-card {
  max-width: none;
  min-height: 510px;
  padding: 54px 56px;
  border: 1px solid #bdd9d4;
  border-radius: 30px;
  background:
    radial-gradient(circle at 100% 0%, rgba(210, 230, 220, .55), transparent 31%),
    linear-gradient(135deg, #fffdf8 0%, #f7faf5 55%, #edf8f5 100%);
  box-shadow: 0 22px 60px rgba(13, 75, 82, .08);
}

.ad-start-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.18fr) minmax(330px, .82fr);
  gap: 58px;
  align-items: center;
  min-height: 400px;
}

.ad-start-copy {
  max-width: 690px;
}

body.angel-diagnostic-standalone .angel-diagnostic .ad-kicker {
  min-height: 31px;
  margin-bottom: 18px;
  padding: 4px 13px;
  border-color: #d9c69e;
  background: #fbefd9;
  color: #0c5359;
  font-size: 11px;
  letter-spacing: .075em;
}

body.angel-diagnostic-standalone .angel-diagnostic .ad-start-card h1 {
  max-width: 720px;
  margin: 0 0 20px;
  color: #123f46;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(44px, 4.15vw, 60px);
  line-height: 1.01;
  font-weight: 400;
  letter-spacing: -.025em;
}

body.angel-diagnostic-standalone .angel-diagnostic .ad-start-card .ad-lead {
  max-width: 720px;
  margin-bottom: 12px;
  color: #355d62;
  font-size: 17px;
  line-height: 1.55;
}

body.angel-diagnostic-standalone .angel-diagnostic .ad-start-card p:not(.ad-lead) {
  max-width: 700px;
  color: #4d6d70;
  font-size: 15px;
  line-height: 1.6;
}

body.angel-diagnostic-standalone .angel-diagnostic .ad-start-button {
  min-width: 230px;
  min-height: 52px;
  margin-top: 14px;
  padding: 12px 24px;
  font-size: 14px;
}

body.angel-diagnostic-standalone .angel-diagnostic .ad-meta {
  margin: 12px 0 0;
  color: #647d7f;
  font-size: 12px;
}

.ad-start-map {
  position: relative;
  padding: 30px 28px;
  border: 1px solid #b9d8d3;
  border-radius: 24px;
  background: rgba(255,255,255,.78);
  box-shadow: 0 18px 42px rgba(17, 78, 84, .08);
}

.ad-map-label {
  margin-bottom: 18px;
  color: #147c78;
  font-size: 10px;
  line-height: 1.2;
  font-weight: 900;
  letter-spacing: .09em;
}

.ad-map-flow {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
}

.ad-map-flow span {
  display: flex;
  align-items: center;
  min-height: 45px;
  padding: 9px 13px;
  border: 1px solid #d1e2df;
  border-radius: 12px;
  background: #fff;
  color: #123f46;
  font-size: 14px;
  font-weight: 800;
}

.ad-map-flow b {
  display: none;
}

body.angel-diagnostic-standalone .angel-diagnostic .ad-start-map p {
  margin: 18px 0 0;
  color: #61797b;
  font-size: 13px;
  line-height: 1.55;
}

/* Question / analysis / result screens also sit cleanly inside the standalone page */
body.angel-diagnostic-standalone .angel-diagnostic [data-ad-screen="question"],
body.angel-diagnostic-standalone .angel-diagnostic [data-ad-screen="analysis"],
body.angel-diagnostic-standalone .angel-diagnostic [data-ad-screen="result"] {
  background:
    radial-gradient(circle at 100% 0%, rgba(214, 230, 221, .4), transparent 30%),
    linear-gradient(135deg, #fffdf8 0%, #f7faf5 55%, #edf8f5 100%);
  box-shadow: 0 18px 50px rgba(13, 75, 82, .07);
}

body.angel-diagnostic-standalone .angel-diagnostic .ad-question {
  font-family: Georgia, "Times New Roman", serif;
  color: #123f46;
}

@media (max-width: 980px) {
  .ad-main {
    padding-top: 38px;
  }

  .ad-start-grid {
    grid-template-columns: 1fr;
    gap: 28px;
  }

  body.angel-diagnostic-standalone .angel-diagnostic .ad-start-card {
    min-height: 0;
    padding: 42px 38px;
  }

  .ad-start-map {
    max-width: 620px;
  }
}

@media (max-width: 720px) {
  .ad-site-container,
  body.angel-diagnostic-standalone .angel-diagnostic {
    width: min(100% - 28px, 1180px);
  }

  .ad-site-header-inner {
    min-height: 68px;
  }

  .ad-brand-copy small {
    display: none;
  }

  .ad-brand-copy strong {
    font-size: 16px;
  }

  .ad-home-link {
    min-height: 34px;
    padding: 7px 12px;
    font-size: 11px;
  }

  .ad-main {
    padding: 24px 0 42px;
  }

  body.angel-diagnostic-standalone .angel-diagnostic .ad-start-card {
    padding: 28px 21px 25px;
    border-radius: 22px;
  }

  .ad-start-grid {
    gap: 24px;
    min-height: 0;
  }

  body.angel-diagnostic-standalone .angel-diagnostic .ad-start-card h1 {
    font-size: clamp(34px, 10vw, 46px);
    line-height: 1.02;
  }

  body.angel-diagnostic-standalone .angel-diagnostic .ad-start-card .ad-lead {
    font-size: 15px;
  }

  body.angel-diagnostic-standalone .angel-diagnostic .ad-start-card p:not(.ad-lead) {
    font-size: 14px;
  }

  body.angel-diagnostic-standalone .angel-diagnostic .ad-start-button {
    width: 100%;
  }

  .ad-start-map {
    padding: 22px 19px;
    border-radius: 18px;
  }

  body.angel-diagnostic-standalone .angel-diagnostic .ad-card {
    padding: 24px 18px 22px;
    border-radius: 20px;
  }
}


/* =========================================================
   v1.2 — start screen polish only
   ========================================================= */

body.angel-diagnostic-standalone .angel-diagnostic .ad-start-card {
  min-height: 488px;
  padding: 46px 52px 44px;
}

.ad-start-grid {
  grid-template-columns: minmax(0, 1.28fr) minmax(320px, .72fr);
  gap: 48px;
  min-height: 374px;
}

.ad-start-copy {
  max-width: 735px;
}

body.angel-diagnostic-standalone .angel-diagnostic .ad-start-card h1 {
  max-width: 760px;
  margin-bottom: 18px;
  font-size: clamp(42px, 3.75vw, 54px);
  line-height: 1.015;
}

body.angel-diagnostic-standalone .angel-diagnostic .ad-start-card .ad-lead {
  max-width: 735px;
  margin-bottom: 9px;
}

body.angel-diagnostic-standalone .angel-diagnostic .ad-start-card p:not(.ad-lead) {
  max-width: 720px;
  margin-top: 0;
  margin-bottom: 0;
}

body.angel-diagnostic-standalone .angel-diagnostic .ad-start-button {
  margin-top: 18px;
}

.ad-start-map {
  padding: 26px 25px 24px;
}

.ad-map-label {
  margin-bottom: 15px;
}

.ad-map-flow {
  gap: 7px;
}

.ad-map-flow span {
  min-height: 41px;
  padding: 8px 12px;
}

body.angel-diagnostic-standalone .angel-diagnostic .ad-start-map p {
  margin-top: 15px;
  font-size: 12.5px;
  line-height: 1.5;
}

@media (max-width: 980px) {
  body.angel-diagnostic-standalone .angel-diagnostic .ad-start-card {
    padding: 38px 34px 36px;
  }

  .ad-start-grid {
    grid-template-columns: 1fr;
    gap: 26px;
    min-height: 0;
  }

  body.angel-diagnostic-standalone .angel-diagnostic .ad-start-card h1 {
    max-width: 720px;
    font-size: clamp(39px, 6.5vw, 50px);
  }

  .ad-start-map {
    max-width: 600px;
  }
}

@media (max-width: 720px) {
  body.angel-diagnostic-standalone .angel-diagnostic .ad-start-card {
    padding: 26px 20px 24px;
  }

  body.angel-diagnostic-standalone .angel-diagnostic .ad-start-card h1 {
    max-width: 100%;
    font-size: clamp(33px, 9.4vw, 43px);
    line-height: 1.025;
  }

  .ad-start-grid {
    gap: 22px;
  }

  .ad-start-map {
    padding: 20px 18px;
  }

  .ad-map-flow span {
    min-height: 39px;
  }
}


/* =========================================================
   v1.3 — unified question screens
   Start screen and branded header are intentionally untouched.
   ========================================================= */

body.angel-diagnostic-standalone .angel-diagnostic [data-ad-screen="question"] {
  max-width: 940px;
  padding: 24px 30px 24px;
}

body.angel-diagnostic-standalone .angel-diagnostic [data-ad-screen="question"] .ad-progress {
  height: 4px;
  margin-bottom: 18px;
}

body.angel-diagnostic-standalone .angel-diagnostic [data-ad-screen="question"] .ad-counter {
  margin-bottom: 10px;
  color: var(--ad-accent);
  font-size: 11px;
  line-height: 1.2;
  font-weight: 900;
  letter-spacing: .075em;
}

body.angel-diagnostic-standalone .angel-diagnostic [data-ad-screen="question"] .ad-question {
  max-width: 850px;
  margin: 0 0 15px;
  color: #123f46;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(25px, 2.15vw, 28px);
  line-height: 1.16;
  font-weight: 400;
  letter-spacing: -.015em;
}

body.angel-diagnostic-standalone .angel-diagnostic [data-ad-screen="question"] .ad-options {
  display: grid;
  gap: 8px;
  margin-top: 14px;
}

body.angel-diagnostic-standalone .angel-diagnostic [data-ad-screen="question"] .ad-option {
  position: relative;
  width: 100%;
  min-height: 48px;
  padding: 10px 42px 10px 42px;
  border: 1px solid #d7e5e2;
  border-radius: 13px;
  background: rgba(255,255,255,.88);
  color: #123f46;
  font-size: 14px;
  line-height: 1.35;
  font-weight: 750;
  text-align: left;
  cursor: pointer;
  box-shadow: none;
  transform: none;
  transition:
    border-color .15s ease,
    background .15s ease,
    box-shadow .15s ease;
}

body.angel-diagnostic-standalone .angel-diagnostic [data-ad-screen="question"] .ad-option::before {
  content: "";
  position: absolute;
  left: 17px;
  top: 50%;
  width: 12px;
  height: 12px;
  border: 2px solid #5fa9a3;
  border-radius: 999px;
  background: #fff;
  transform: translateY(-50%);
  box-sizing: border-box;
}

body.angel-diagnostic-standalone .angel-diagnostic [data-ad-screen="question"] .ad-option:hover,
body.angel-diagnostic-standalone .angel-diagnostic [data-ad-screen="question"] .ad-option:focus-visible {
  border-color: #91c5c0;
  background: #f7fcfa;
  box-shadow: 0 5px 18px rgba(15, 91, 95, .055);
  outline: none;
  transform: none;
}

body.angel-diagnostic-standalone .angel-diagnostic [data-ad-screen="question"] .ad-option.is-selected {
  border-color: #188b84;
  background: #eaf7f4;
  box-shadow: 0 6px 18px rgba(15, 91, 95, .075);
}

body.angel-diagnostic-standalone .angel-diagnostic [data-ad-screen="question"] .ad-option.is-selected::before {
  content: "✓";
  display: flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  left: 15px;
  border: 0;
  background: #188b84;
  color: #fff;
  font-size: 10px;
  line-height: 1;
  font-weight: 900;
}

body.angel-diagnostic-standalone .angel-diagnostic [data-ad-screen="question"] .ad-option.ad-option-neutral {
  color: #526d70;
  background: rgba(255,255,255,.66);
}

body.angel-diagnostic-standalone .angel-diagnostic [data-ad-screen="question"] .ad-option.ad-option-neutral::before {
  border-color: #a7bdbc;
  background: transparent;
}

body.angel-diagnostic-standalone .angel-diagnostic [data-ad-screen="question"] .ad-option:disabled {
  cursor: default;
  opacity: 1;
}

body.angel-diagnostic-standalone .angel-diagnostic [data-ad-screen="question"] .ad-back {
  display: table;
  margin: 14px 0 0;
  padding: 3px 0;
  border: 0;
  background: transparent;
  color: #667d7f;
  font-size: 12px;
  line-height: 1.3;
  font-weight: 700;
  text-decoration: none;
  cursor: pointer;
}

body.angel-diagnostic-standalone .angel-diagnostic [data-ad-screen="question"] .ad-back:hover,
body.angel-diagnostic-standalone .angel-diagnostic [data-ad-screen="question"] .ad-back:focus-visible {
  color: var(--ad-accent);
  outline: none;
}

/* More compact question panel on common notebook heights */
@media (min-width: 721px) and (max-height: 820px) {
  body.angel-diagnostic-standalone .angel-diagnostic [data-ad-screen="question"] {
    padding-top: 22px;
    padding-bottom: 21px;
  }

  body.angel-diagnostic-standalone .angel-diagnostic [data-ad-screen="question"] .ad-option {
    min-height: 46px;
    padding-top: 9px;
    padding-bottom: 9px;
  }

  body.angel-diagnostic-standalone .angel-diagnostic [data-ad-screen="question"] .ad-options {
    gap: 7px;
  }
}

@media (max-width: 720px) {
  body.angel-diagnostic-standalone .angel-diagnostic [data-ad-screen="question"] {
    padding: 21px 17px 20px;
  }

  body.angel-diagnostic-standalone .angel-diagnostic [data-ad-screen="question"] .ad-question {
    max-width: 100%;
    font-size: clamp(23px, 6.7vw, 27px);
    line-height: 1.17;
  }

  body.angel-diagnostic-standalone .angel-diagnostic [data-ad-screen="question"] .ad-options {
    gap: 8px;
    margin-top: 13px;
  }

  body.angel-diagnostic-standalone .angel-diagnostic [data-ad-screen="question"] .ad-option {
    min-height: 48px;
    padding: 10px 34px 10px 39px;
    font-size: 13.5px;
  }

  body.angel-diagnostic-standalone .angel-diagnostic [data-ad-screen="question"] .ad-option::before {
    left: 15px;
  }

  body.angel-diagnostic-standalone .angel-diagnostic [data-ad-screen="question"] .ad-option.is-selected::before {
    left: 13px;
  }
}


/* =========================================================
   v1.4 — personal result hierarchy
   Start screen, questions and calculation are untouched.
   ========================================================= */

body.angel-diagnostic-standalone .angel-diagnostic [data-ad-screen="result"] {
  max-width: 980px;
  padding: 28px 34px 30px;
}

body.angel-diagnostic-standalone .angel-diagnostic [data-ad-screen="result"] > .ad-progress {
  margin-bottom: 22px;
}

body.angel-diagnostic-standalone .angel-diagnostic [data-ad-screen="result"] > .ad-kicker {
  margin-bottom: 18px;
}

.ad-result-intro {
  max-width: 890px;
}

body.angel-diagnostic-standalone .angel-diagnostic .ad-result-intro h2,
body.angel-diagnostic-standalone .angel-diagnostic [data-ad-neutral] h2 {
  max-width: 820px;
  margin: 0 0 13px;
  color: #123f46;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(34px, 3.35vw, 46px);
  line-height: 1.08;
  font-weight: 400;
  letter-spacing: -.02em;
}

body.angel-diagnostic-standalone .angel-diagnostic .ad-result-intro > p,
body.angel-diagnostic-standalone .angel-diagnostic [data-ad-neutral] > p {
  margin: 0;
  color: #355d62;
  font-size: 15px;
  line-height: 1.58;
}

/* The map is the primary visual summary */
body.angel-diagnostic-standalone .angel-diagnostic .ad-chain-wrap {
  margin-top: 20px;
  padding: 18px 19px 16px;
  border-color: #b9d7d3;
  border-radius: 17px;
  background: rgba(255,255,255,.87);
}

body.angel-diagnostic-standalone .angel-diagnostic .ad-chain {
  gap: 8px;
  margin-top: 9px;
  font-size: 15px;
}

body.angel-diagnostic-standalone .angel-diagnostic .ad-chain span {
  padding: 7px 11px;
  border-color: #c8ddda;
  background: #fbfdfc;
  color: #123f46;
}

body.angel-diagnostic-standalone .angel-diagnostic .ad-chain b {
  color: #799493;
}

body.angel-diagnostic-standalone .angel-diagnostic .ad-chain-caption {
  margin-top: 8px;
  font-size: 11px;
}

/* Two primary explanation cards */
.ad-result-core {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-top: 12px;
}

body.angel-diagnostic-standalone .angel-diagnostic .ad-result-core .ad-result-box {
  height: 100%;
  margin-top: 0;
  padding: 18px 18px 17px;
  border-radius: 16px;
}

body.angel-diagnostic-standalone .angel-diagnostic .ad-result-core h3 {
  margin: 6px 0 8px;
  color: #123f46;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 21px;
  line-height: 1.2;
  font-weight: 400;
}

body.angel-diagnostic-standalone .angel-diagnostic .ad-result-core p {
  color: #355d62;
  font-size: 13.5px;
  line-height: 1.55;
}

/* Supporting explanation about repeated numbers */
body.angel-diagnostic-standalone .angel-diagnostic .ad-numbers-card {
  margin-top: 12px;
  padding: 15px 18px;
  border-radius: 15px;
  background: rgba(229,247,243,.72);
}

body.angel-diagnostic-standalone .angel-diagnostic .ad-numbers-card p {
  margin-top: 4px;
  color: #355d62;
  font-size: 13.5px;
  line-height: 1.52;
}

/* Main diagnostic conclusion */
body.angel-diagnostic-standalone .angel-diagnostic .ad-entry-card {
  position: relative;
  margin-top: 16px;
  padding: 22px 22px 21px;
  overflow: hidden;
  border: 1px solid #84c5bd;
  border-radius: 18px;
  background:
    radial-gradient(circle at 100% 0%, rgba(255,255,255,.54), transparent 34%),
    linear-gradient(135deg, #dff4ef 0%, #e9f8f4 100%);
  box-shadow: 0 10px 30px rgba(17, 91, 91, .07);
}

.ad-entry-marker {
  display: inline-flex;
  margin-bottom: 9px;
  padding: 4px 8px;
  border-radius: 999px;
  background: #147c78;
  color: #fff;
  font-size: 9px;
  line-height: 1.2;
  font-weight: 900;
  letter-spacing: .08em;
}

body.angel-diagnostic-standalone .angel-diagnostic .ad-entry-card h3 {
  margin: 7px 0 8px;
  color: #123f46;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(25px, 2.3vw, 31px);
  line-height: 1.13;
  font-weight: 400;
}

body.angel-diagnostic-standalone .angel-diagnostic .ad-entry-card p {
  max-width: 850px;
  color: #315b60;
  font-size: 14px;
  line-height: 1.56;
}

/* Secondary theme should not compete with the main conclusion */
body.angel-diagnostic-standalone .angel-diagnostic .ad-secondary {
  margin-top: 11px;
  padding: 13px 17px;
  border-radius: 14px;
  background: rgba(247,241,228,.66);
}

body.angel-diagnostic-standalone .angel-diagnostic .ad-secondary h3 {
  display: inline-block;
  margin: 4px 0 5px;
  color: #284f54;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 18px;
  line-height: 1.2;
  font-weight: 400;
}

body.angel-diagnostic-standalone .angel-diagnostic .ad-secondary p {
  color: #526d70;
  font-size: 13px;
  line-height: 1.5;
}

/* The first practical action is the closing focus */
body.angel-diagnostic-standalone .angel-diagnostic .ad-step-card {
  margin-top: 16px;
  padding: 22px 22px 20px;
  border: 1px solid #a9d8d2;
  border-radius: 18px;
  background: #f6fcfa;
}

body.angel-diagnostic-standalone .angel-diagnostic .ad-step-card h3 {
  margin: 7px 0 11px;
  color: #123f46;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(23px, 2vw, 28px);
  line-height: 1.16;
  font-weight: 400;
}

body.angel-diagnostic-standalone .angel-diagnostic .ad-step-content {
  color: #315b60;
  font-size: 14px;
  line-height: 1.58;
}

body.angel-diagnostic-standalone .angel-diagnostic .ad-step-content p {
  margin: 0;
  color: inherit;
  font-size: inherit;
  line-height: inherit;
}

body.angel-diagnostic-standalone .angel-diagnostic .ad-step-content p + p {
  margin-top: 10px;
}

/* If the practical exercise contains one central question, display it as a quote */
body.angel-diagnostic-standalone .angel-diagnostic .ad-step-content p:first-child > strong:only-child {
  display: block;
  margin: 3px 0 2px;
  padding: 14px 17px;
  border-left: 3px solid #188b84;
  border-radius: 0 12px 12px 0;
  background: #e7f6f2;
  color: #123f46;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 19px;
  line-height: 1.35;
  font-weight: 400;
}

/* Optional configured next-step CTA */
body.angel-diagnostic-standalone .angel-diagnostic .ad-final-cta {
  margin-top: 18px;
  padding: 22px;
  border-color: #b9d7d3;
  border-radius: 18px;
  background: #fff;
  text-align: center;
}

body.angel-diagnostic-standalone .angel-diagnostic .ad-final-cta h3 {
  margin: 0 0 7px;
  color: #123f46;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 24px;
  line-height: 1.18;
  font-weight: 400;
}

body.angel-diagnostic-standalone .angel-diagnostic .ad-final-cta p {
  max-width: 650px;
  margin: 0 auto 13px;
  color: #526d70;
  font-size: 13.5px;
  line-height: 1.5;
}

body.angel-diagnostic-standalone .angel-diagnostic .ad-final-cta .ad-cta {
  width: auto;
  min-width: 260px;
  margin: 0 auto;
}

body.angel-diagnostic-standalone .angel-diagnostic .ad-restart {
  margin-top: 16px;
}

body.angel-diagnostic-standalone .angel-diagnostic .ad-disclaimer {
  max-width: 850px;
  margin: 17px auto 0;
  text-align: center;
  font-size: 10.5px;
}

/* Neutral result uses the same calmer hierarchy */
body.angel-diagnostic-standalone .angel-diagnostic [data-ad-neutral] {
  padding: 2px 0 8px;
}

body.angel-diagnostic-standalone .angel-diagnostic [data-ad-neutral] p + p {
  margin-top: 10px;
}

@media (max-width: 760px) {
  body.angel-diagnostic-standalone .angel-diagnostic [data-ad-screen="result"] {
    padding: 23px 17px 24px;
  }

  body.angel-diagnostic-standalone .angel-diagnostic .ad-result-intro h2,
  body.angel-diagnostic-standalone .angel-diagnostic [data-ad-neutral] h2 {
    font-size: clamp(29px, 8.4vw, 38px);
  }

  .ad-result-core {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  body.angel-diagnostic-standalone .angel-diagnostic .ad-chain {
    gap: 5px;
    font-size: 13px;
  }

  body.angel-diagnostic-standalone .angel-diagnostic .ad-chain b {
    display: none;
  }

  body.angel-diagnostic-standalone .angel-diagnostic .ad-chain span {
    padding: 6px 9px;
  }

  body.angel-diagnostic-standalone .angel-diagnostic .ad-entry-card,
  body.angel-diagnostic-standalone .angel-diagnostic .ad-step-card {
    padding: 19px 17px 18px;
  }

  body.angel-diagnostic-standalone .angel-diagnostic .ad-entry-card h3 {
    font-size: clamp(24px, 7vw, 29px);
  }

  body.angel-diagnostic-standalone .angel-diagnostic .ad-step-content p:first-child > strong:only-child {
    padding: 12px 14px;
    font-size: 17px;
  }

  body.angel-diagnostic-standalone .angel-diagnostic .ad-final-cta .ad-cta {
    width: 100%;
    min-width: 0;
  }
}


/* =========================================================
   v1.5 — animated analysis screen only
   ========================================================= */

body.angel-diagnostic-standalone .angel-diagnostic [data-ad-screen="analysis"] {
  max-width: 820px;
  min-height: 460px;
  padding: 44px 46px 40px;
  display: flex;
  align-items: center;
  justify-content: center;
}

body.angel-diagnostic-standalone .angel-diagnostic [data-ad-screen="analysis"][hidden] {
  display: none !important;
}

.ad-analysis-inner {
  width: 100%;
  max-width: 690px;
}

body.angel-diagnostic-standalone .angel-diagnostic [data-ad-screen="analysis"] .ad-kicker {
  margin-bottom: 16px;
}

body.angel-diagnostic-standalone .angel-diagnostic [data-ad-screen="analysis"] h2 {
  max-width: 640px;
  margin: 0 0 13px;
  color: #123f46;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(34px, 3.25vw, 46px);
  line-height: 1.06;
  font-weight: 400;
  letter-spacing: -.02em;
}

body.angel-diagnostic-standalone .angel-diagnostic .ad-analysis-lead {
  max-width: 650px;
  margin: 0 0 24px;
  color: #48686c;
  font-size: 14px;
  line-height: 1.55;
}

.ad-analysis-steps {
  display: grid;
  gap: 9px;
}

.ad-analysis-step {
  display: grid;
  grid-template-columns: 34px 1fr auto;
  gap: 12px;
  align-items: center;
  min-height: 54px;
  padding: 10px 14px;
  border: 1px solid #d2e2df;
  border-radius: 14px;
  background: rgba(255,255,255,.78);
  transition: border-color .2s ease, background .2s ease, box-shadow .2s ease;
}

.ad-analysis-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border: 1px solid #9fc5c1;
  border-radius: 999px;
  background: #fff;
  color: #477074;
  font-size: 11px;
  font-weight: 900;
  transition: all .2s ease;
}

.ad-analysis-text {
  color: #173f45;
  font-size: 14px;
  line-height: 1.35;
  font-weight: 750;
}

.ad-analysis-status {
  color: #8aa09f;
  font-size: 11px;
  line-height: 1.2;
  font-weight: 700;
}

.ad-analysis-step.is-active {
  border-color: #88c4bd;
  background: #f1faf7;
  box-shadow: 0 6px 18px rgba(17,91,91,.05);
}

.ad-analysis-step.is-active .ad-analysis-icon {
  border-color: #188b84;
  background: #188b84;
  color: #fff;
}

.ad-analysis-step.is-active .ad-analysis-status {
  color: #188b84;
}

.ad-analysis-step.is-done {
  border-color: #bedbd6;
  background: #edf8f5;
}

.ad-analysis-step.is-done .ad-analysis-icon {
  border-color: #188b84;
  background: #188b84;
  color: #fff;
}

.ad-analysis-step.is-done .ad-analysis-status {
  color: #477074;
}

.ad-analysis-note {
  margin-top: 16px;
  color: #748b8d;
  font-size: 11.5px;
  line-height: 1.45;
}

@media (max-width: 720px) {
  body.angel-diagnostic-standalone .angel-diagnostic [data-ad-screen="analysis"] {
    min-height: 0;
    padding: 30px 20px 28px;
  }

  body.angel-diagnostic-standalone .angel-diagnostic [data-ad-screen="analysis"] h2 {
    font-size: clamp(30px, 8.5vw, 39px);
  }

  .ad-analysis-step {
    grid-template-columns: 30px 1fr;
    gap: 9px;
    min-height: 50px;
    padding: 9px 11px;
  }

  .ad-analysis-status {
    display: none;
  }

  .ad-analysis-icon {
    width: 26px;
    height: 26px;
  }

  .ad-analysis-text {
    font-size: 13px;
  }
}


/* =========================================================
   v1.6 — slower analysis + paid PDF offer
   ========================================================= */

/* Give the last completed analysis step a moment to be perceived */
.ad-analysis-step.is-done {
  transition:
    border-color .25s ease,
    background .25s ease,
    box-shadow .25s ease;
}

/* Paid PDF offer */
body.angel-diagnostic-standalone .angel-diagnostic .ad-pdf-offer {
  margin-top: 18px;
  padding: 24px 25px;
  border: 1px solid #8fc8c1;
  border-radius: 20px;
  background:
    radial-gradient(circle at 100% 0%, rgba(218,243,237,.9), transparent 38%),
    linear-gradient(135deg, #fffdf7 0%, #f4fbf8 100%);
  box-shadow: 0 14px 38px rgba(15, 91, 95, .08);
  text-align: left;
}

.ad-pdf-badge {
  display: inline-flex;
  margin-bottom: 15px;
  padding: 5px 9px;
  border-radius: 999px;
  background: #147c78;
  color: #fff;
  font-size: 9px;
  line-height: 1.2;
  font-weight: 900;
  letter-spacing: .09em;
}

.ad-pdf-offer-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 300px;
  gap: 30px;
  align-items: center;
}

body.angel-diagnostic-standalone .angel-diagnostic .ad-pdf-offer h3 {
  max-width: 620px;
  margin: 0 0 10px;
  color: #123f46;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(27px, 2.45vw, 34px);
  line-height: 1.11;
  font-weight: 400;
}

body.angel-diagnostic-standalone .angel-diagnostic .ad-pdf-offer-copy > p {
  max-width: 650px;
  margin: 0 0 15px;
  color: #48686c;
  font-size: 13.5px;
  line-height: 1.56;
}

.ad-pdf-includes {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 7px 15px;
}

.ad-pdf-includes span {
  position: relative;
  padding-left: 17px;
  color: #315b60;
  font-size: 12.5px;
  line-height: 1.42;
}

.ad-pdf-includes span::before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 0;
  color: #188b84;
  font-weight: 900;
}

.ad-pdf-buy {
  padding: 20px 19px 18px;
  border: 1px solid #c4ddda;
  border-radius: 17px;
  background: rgba(255,255,255,.88);
  text-align: center;
}

.ad-pdf-product {
  margin-bottom: 11px;
  color: #123f46;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 18px;
  line-height: 1.25;
}

.ad-pdf-price {
  color: #0e6968;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 31px;
  line-height: 1;
}

.ad-pdf-meta {
  margin-top: 6px;
  color: #6a8183;
  font-size: 10.5px;
}

body.angel-diagnostic-standalone .angel-diagnostic .ad-pdf-buy .ad-cta {
  display: flex;
  justify-content: center;
  width: 100%;
  min-width: 0;
  margin-top: 15px;
  padding-left: 15px;
  padding-right: 15px;
  text-align: center;
}

.ad-pdf-note {
  margin-top: 9px;
  color: #829596;
  font-size: 9.5px;
  line-height: 1.35;
}

body.angel-diagnostic-standalone .angel-diagnostic .ad-restart {
  margin-top: 18px;
}

@media (max-width: 820px) {
  .ad-pdf-offer-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .ad-pdf-buy {
    max-width: 420px;
  }
}

@media (max-width: 560px) {
  body.angel-diagnostic-standalone .angel-diagnostic .ad-pdf-offer {
    padding: 20px 17px;
  }

  .ad-pdf-includes {
    grid-template-columns: 1fr;
  }

  body.angel-diagnostic-standalone .angel-diagnostic .ad-pdf-offer h3 {
    font-size: clamp(26px, 7.7vw, 31px);
  }

  .ad-pdf-buy {
    max-width: none;
  }
}


/* =========================================================
   v1.7 — direct payment CTA + secondary details link
   ========================================================= */

.ad-pdf-details-link {
  display: inline-flex;
  margin-top: 15px;
  color: #147c78 !important;
  font-size: 12px;
  line-height: 1.3;
  font-weight: 850;
  text-decoration: none !important;
}

.ad-pdf-details-link:hover {
  text-decoration: underline !important;
  text-underline-offset: 3px;
}

body.angel-diagnostic-standalone .angel-diagnostic .ad-pdf-buy .ad-cta.is-disabled {
  cursor: default;
  opacity: .52;
  box-shadow: none;
  pointer-events: none;
}

body.angel-diagnostic-standalone .angel-diagnostic .ad-pdf-buy .ad-cta {
  line-height: 1.25;
}


/* v1.8 — 7-day route offer */
.ad-pdf-product{font-size:19px}
.ad-pdf-meta{font-size:11px;letter-spacing:.01em}
.ad-pdf-offer-copy>p{max-width:690px!important}
.ad-pdf-includes span{min-height:34px}


/* =========================================================
   v1.9 — long integrated sales continuation after result
   Inspired by the flow principle, not copied from any site.
   ========================================================= */

/* Widen only the result page so the continuation can breathe */
body.angel-diagnostic-standalone .angel-diagnostic [data-ad-screen="result"] {
  max-width: 1180px;
  padding-left: 30px;
  padding-right: 30px;
}

body.angel-diagnostic-standalone .angel-diagnostic .ad-result-personal,
body.angel-diagnostic-standalone .angel-diagnostic [data-ad-neutral] {
  max-width: 980px;
  margin-left: auto;
  margin-right: auto;
}

body.angel-diagnostic-standalone .angel-diagnostic [data-ad-screen="result"] > .ad-progress,
body.angel-diagnostic-standalone .angel-diagnostic [data-ad-screen="result"] > .ad-kicker {
  max-width: 980px;
  margin-left: auto;
  margin-right: auto;
}

.ad-sales-continuation {
  margin-top: 30px;
}

.ad-sales-continuation[hidden] {
  display: none !important;
}

.ad-sales-continuation section {
  margin-top: 18px;
  padding: 34px 36px;
  border-radius: 24px;
}

.ad-sales-kicker {
  margin-bottom: 14px;
  color: #147c78;
  font-size: 10px;
  line-height: 1.2;
  font-weight: 900;
  letter-spacing: .09em;
}

.ad-sales-kicker-dark {
  color: #d9eee9;
}

.ad-sales-continuation h2 {
  margin: 0;
  color: #123f46;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(33px, 3.1vw, 45px);
  line-height: 1.05;
  font-weight: 400;
  letter-spacing: -.022em;
}

.ad-sales-system {
  border: 1px solid #c7dcda;
  background: #fffdf8;
}

.ad-sales-system-head {
  display: grid;
  grid-template-columns: .95fr 1.05fr;
  gap: 50px;
  align-items: end;
}

.ad-sales-system-head p {
  margin: 0;
  color: #587174;
  font-size: 14px;
  line-height: 1.58;
}

.ad-system-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
  margin-top: 24px;
  padding: 10px 14px;
  border-radius: 12px;
  background: #f4f8f6;
  color: #607779;
  font-size: 10.5px;
}

.ad-system-legend span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.ad-system-legend i {
  width: 9px;
  height: 9px;
  border-radius: 999px;
  background: #d9e4e1;
}

.ad-system-legend i.is-primary {
  background: #147c78;
}

.ad-system-legend i.is-secondary {
  background: #d4aa52;
}

.ad-system-map {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
  margin-top: 14px;
}

.ad-system-point {
  display: flex;
  justify-content: space-between;
  align-items: center;
  min-height: 68px;
  padding: 13px 15px;
  border: 1px solid #d6e3e0;
  border-radius: 14px;
  background: #fff;
}

.ad-system-point > div {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.ad-system-point strong {
  color: #264d52;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 18px;
  font-weight: 400;
}

.ad-system-point span {
  color: #819293;
  font-size: 9.5px;
}

.ad-system-point i {
  width: 12px;
  height: 12px;
  border-radius: 999px;
  background: #dce6e3;
}

.ad-system-point.is-primary {
  border-color: #83c4bc;
  background: #e7f6f2;
}

.ad-system-point.is-primary i {
  background: #147c78;
}

.ad-system-point.is-secondary {
  border-color: #dfc68c;
  background: #fbf5e8;
}

.ad-system-point.is-secondary i {
  background: #d4aa52;
}

/* Outcome */
.ad-sales-outcome {
  background: #064b54;
  color: #fff;
}

.ad-sales-outcome h2 {
  color: #fff;
  font-size: clamp(35px, 3.35vw, 49px);
}

.ad-sales-outcome-grid {
  display: grid;
  grid-template-columns: 1.08fr .92fr;
  gap: 55px;
  align-items: end;
}

.ad-sales-outcome-note {
  padding: 18px 20px;
  border-left: 3px solid #e5c979;
  border-radius: 0 14px 14px 0;
  background: rgba(255,255,255,.08);
  color: #c9ddda;
  font-size: 13.5px;
  line-height: 1.58;
}

.ad-sales-outcome-list {
  display: grid;
  margin-top: 26px;
  border-top: 1px solid rgba(255,255,255,.15);
}

.ad-sales-outcome-list > div {
  display: grid;
  grid-template-columns: 48px 1fr;
  gap: 14px;
  align-items: center;
  min-height: 65px;
  border-bottom: 1px solid rgba(255,255,255,.12);
}

.ad-sales-outcome-list span {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border: 1px solid rgba(229,201,121,.55);
  border-radius: 999px;
  color: #f0d996;
  font-size: 10px;
  font-weight: 900;
}

.ad-sales-outcome-list p {
  margin: 0;
  color: #d4e3e1;
  font-size: 13.5px;
  line-height: 1.48;
}

/* Route program */
.ad-sales-route {
  border: 1px solid #d7e1de;
  background: #f7f3ea;
}

.ad-sales-intro {
  max-width: 850px;
  margin: 13px 0 0;
  color: #587174;
  font-size: 14px;
  line-height: 1.58;
}

.ad-route-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 11px;
  margin-top: 25px;
}

.ad-route-grid article {
  min-height: 154px;
  padding: 18px;
  border: 1px solid #dedfd7;
  border-radius: 15px;
  background: rgba(255,255,255,.78);
}

.ad-route-grid article:last-child {
  grid-column: 1 / -1;
  min-height: 128px;
}

.ad-route-grid article > span {
  display: block;
  margin-bottom: 18px;
  color: #147c78;
  font-size: 9.5px;
  font-weight: 900;
  letter-spacing: .07em;
}

.ad-route-grid h3 {
  margin: 0 0 8px;
  color: #123f46;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 21px;
  line-height: 1.14;
  font-weight: 400;
}

.ad-route-grid p {
  margin: 0;
  color: #607779;
  font-size: 12.5px;
  line-height: 1.5;
}

/* Mid-page offer */
.ad-route-primary-offer {
  display: grid;
  grid-template-columns: 1fr 300px;
  gap: 32px;
  align-items: center;
  margin-top: 18px;
  padding: 24px 26px;
  border: 1px solid #9bcfc8;
  border-radius: 18px;
  background: linear-gradient(135deg,#f5fcf9,#e9f6f2);
}

.ad-route-offer-copy h3 {
  margin: 0 0 8px;
  color: #123f46;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 27px;
  line-height: 1.12;
  font-weight: 400;
}

.ad-route-offer-copy p {
  margin: 0;
  color: #587174;
  font-size: 13px;
  line-height: 1.5;
}

.ad-route-offer-buy {
  text-align: center;
}

.ad-route-price {
  color: #0f6c6b;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 34px;
  line-height: 1;
}

.ad-route-price-note {
  margin: 6px 0 13px;
  color: #718688;
  font-size: 10px;
}

.ad-route-cta {
  width: 100%;
  min-width: 0;
  text-align: center;
}

.ad-route-cta.is-disabled {
  opacity: .5;
  pointer-events: none;
  box-shadow: none;
}

.ad-route-admin-note {
  margin-top: 8px;
  color: #829596;
  font-size: 9px;
  line-height: 1.35;
}

/* After payment */
.ad-sales-afterpay {
  border: 1px solid #c8ddda;
  background: #fffdf8;
}

.ad-afterpay-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
  margin-top: 24px;
}

.ad-afterpay-grid article {
  min-height: 175px;
  padding: 17px;
  border: 1px solid #d9e4e1;
  border-radius: 14px;
  background: #fff;
}

.ad-afterpay-grid article > span {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  margin-bottom: 25px;
  border-radius: 9px;
  background: #eaf7f4;
  color: #147c78;
  font-size: 11px;
  font-weight: 900;
}

.ad-afterpay-grid h3 {
  margin: 0 0 7px;
  color: #123f46;
  font-size: 13px;
}

.ad-afterpay-grid p {
  margin: 0;
  color: #63797b;
  font-size: 11.5px;
  line-height: 1.48;
}

/* One day */
.ad-sales-one-day {
  border: 1px solid #d4e0dd;
  background: #f6f8f4;
}

.ad-one-day-grid {
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: 48px;
  align-items: start;
}

.ad-one-day-grid > div:first-child p {
  margin: 14px 0 0;
  color: #587174;
  font-size: 13.5px;
  line-height: 1.58;
}

.ad-one-day-list {
  display: grid;
  gap: 8px;
}

.ad-one-day-list div {
  position: relative;
  min-height: 48px;
  padding: 12px 14px 12px 40px;
  border: 1px solid #d7e2df;
  border-radius: 12px;
  background: #fff;
  color: #536d70;
  font-size: 12.5px;
  line-height: 1.4;
}

.ad-one-day-list div::before {
  content: "✓";
  position: absolute;
  left: 16px;
  color: #147c78;
  font-weight: 900;
}

/* FAQ */
.ad-sales-faq {
  border: 1px solid #dddcd2;
  background: #f7f3ea;
}

.ad-faq-list {
  display: grid;
  gap: 8px;
  margin-top: 22px;
}

.ad-faq-list details {
  padding: 14px 16px;
  border: 1px solid #dedfd8;
  border-radius: 13px;
  background: rgba(255,255,255,.76);
}

.ad-faq-list summary {
  cursor: pointer;
  color: #123f46;
  font-size: 13px;
  font-weight: 850;
}

.ad-faq-list p {
  margin: 9px 0 0;
  color: #617779;
  font-size: 12.5px;
  line-height: 1.52;
}

/* Final CTA */
.ad-sales-final {
  display: grid;
  grid-template-columns: 1fr 310px;
  gap: 40px;
  align-items: center;
  background: #064b54;
  color: #fff;
}

.ad-sales-final h2 {
  color: #fff;
}

.ad-sales-final > div:first-child > p {
  max-width: 720px;
  margin: 13px 0 0;
  color: #c6dbd8;
  font-size: 13.5px;
  line-height: 1.55;
}

.ad-sales-final-buy {
  text-align: center;
}

.ad-sales-final-price {
  color: #f4dfa7;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 38px;
  line-height: 1;
}

.ad-sales-final-meta {
  margin: 7px 0 14px;
  color: #bdd3d0;
  font-size: 10px;
}

body.angel-diagnostic-standalone .angel-diagnostic .ad-restart {
  display: table;
  margin: 22px auto 0;
}

@media (max-width: 900px) {
  .ad-sales-system-head,
  .ad-sales-outcome-grid,
  .ad-one-day-grid {
    grid-template-columns: 1fr;
    gap: 22px;
  }

  .ad-system-map {
    grid-template-columns: repeat(2, 1fr);
  }

  .ad-afterpay-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .ad-route-primary-offer,
  .ad-sales-final {
    grid-template-columns: 1fr;
  }

  .ad-route-offer-buy,
  .ad-sales-final-buy {
    max-width: 360px;
  }
}

@media (max-width: 720px) {
  body.angel-diagnostic-standalone .angel-diagnostic [data-ad-screen="result"] {
    padding-left: 14px;
    padding-right: 14px;
  }

  .ad-sales-continuation section {
    padding: 25px 18px;
    border-radius: 20px;
  }

  .ad-sales-continuation h2,
  .ad-sales-outcome h2 {
    font-size: clamp(29px, 8.6vw, 39px);
  }

  .ad-system-map,
  .ad-route-grid,
  .ad-afterpay-grid {
    grid-template-columns: 1fr;
  }

  .ad-route-grid article:last-child {
    grid-column: auto;
  }

  .ad-system-point {
    min-height: 60px;
  }

  .ad-sales-outcome-list > div {
    grid-template-columns: 42px 1fr;
  }

  .ad-route-primary-offer {
    padding: 20px 17px;
  }

  .ad-sales-final {
    gap: 26px;
  }
}


/* =========================================================
   v1.9.1 — final visual polish
   No scoring or structure changes.
   ========================================================= */

/* Slightly calmer sales typography */
.ad-sales-continuation h2 {
  font-size: clamp(30px, 2.75vw, 40px);
  line-height: 1.07;
}

.ad-sales-outcome h2 {
  font-size: clamp(31px, 2.95vw, 43px);
  line-height: 1.06;
}

.ad-route-offer-copy h3 {
  font-size: 25px;
}

.ad-sales-final h2 {
  font-size: clamp(30px, 2.8vw, 41px);
}

/* More compact vertical rhythm */
.ad-sales-continuation {
  margin-top: 24px;
}

.ad-sales-continuation section {
  margin-top: 15px;
  padding-top: 29px;
  padding-bottom: 29px;
}

.ad-sales-system-head {
  gap: 42px;
}

.ad-system-legend {
  margin-top: 20px;
}

.ad-system-map {
  margin-top: 12px;
}

.ad-sales-outcome-list,
.ad-route-grid,
.ad-afterpay-grid {
  margin-top: 20px;
}

.ad-route-primary-offer {
  margin-top: 15px;
}

.ad-faq-list {
  margin-top: 18px;
}

/* Current chain: role + value, so repeated words don't look like a bug */
.ad-role-chain {
  display: flex !important;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px !important;
}

.ad-role-chip {
  display: flex;
  flex-direction: column;
  gap: 3px;
  min-width: 150px;
  padding: 9px 12px;
  border: 1px solid #c9ddda;
  border-radius: 13px;
  background: #fff;
}

.ad-role-chip span {
  color: #789092 !important;
  font-size: 9px !important;
  line-height: 1.15 !important;
  font-weight: 800 !important;
  letter-spacing: .035em;
  text-transform: uppercase;
}

.ad-role-chip strong {
  color: #123f46 !important;
  font-size: 14px !important;
  line-height: 1.2 !important;
  font-weight: 850 !important;
}

.ad-role-arrow {
  color: #819796;
  font-size: 13px;
  font-style: normal;
}

/* Dark personalized outcome: bring the explanation closer to the heading */
.ad-sales-outcome-grid {
  align-items: center;
  gap: 46px;
}

.ad-sales-outcome-note {
  transform: translateY(-2px);
  padding: 16px 18px;
  font-size: 13px;
}

/* Seven days: less free detail, denser cards */
.ad-route-grid article {
  min-height: 136px;
  padding: 16px 17px;
}

.ad-route-grid article:last-child {
  min-height: 112px;
}

.ad-route-grid article > span {
  margin-bottom: 14px;
}

.ad-route-grid h3 {
  font-size: 20px;
}

.ad-route-grid p {
  font-size: 12px;
  line-height: 1.46;
}

/* After-payment cards also a touch tighter */
.ad-afterpay-grid article {
  min-height: 160px;
}

.ad-afterpay-grid article > span {
  margin-bottom: 20px;
}

/* First offer block more balanced */
.ad-route-primary-offer {
  grid-template-columns: 1fr 285px;
  padding: 22px 24px;
}

.ad-route-price {
  font-size: 32px;
}

/* Final CTA */
.ad-sales-final {
  grid-template-columns: 1fr 295px;
  gap: 34px;
}

.ad-sales-final-price {
  font-size: 36px;
}

@media (max-width: 900px) {
  .ad-role-chain {
    align-items: stretch;
  }

  .ad-role-chip {
    min-width: calc(50% - 24px);
    flex: 1 1 200px;
  }

  .ad-role-arrow {
    display: none;
  }
}

@media (max-width: 720px) {
  .ad-sales-continuation section {
    padding-top: 23px;
    padding-bottom: 23px;
  }

  .ad-sales-continuation h2,
  .ad-sales-outcome h2,
  .ad-sales-final h2 {
    font-size: clamp(28px, 7.8vw, 36px);
  }

  .ad-role-chip {
    min-width: 100%;
  }

  .ad-route-grid article {
    min-height: 0;
  }

  .ad-route-primary-offer,
  .ad-sales-final {
    grid-template-columns: 1fr;
  }
}


/* =========================================================
   v1.10 — Robokassa checkout bridge
   ========================================================= */
.ad-route-cta.is-loading {
  opacity: .72;
  cursor: wait;
  pointer-events: none;
}




/* v1.10.2 — legal consent under payment CTA */
.ad-legal-consent {
  margin-top: 10px;
  color: #748788;
  font-size: 10px;
  line-height: 1.45;
  text-align: center;
}
.ad-legal-consent a {
  color: #466f72;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.ad-legal-consent a:hover { color: #0f6e6d; }


/* =========================================================
   v1.10.3 — clean CTA + stronger final offer composition
   ========================================================= */

/* No extra lines beneath either price. */
.ad-route-price-note,
.ad-sales-final-meta,
.ad-route-admin-note,
.ad-disclaimer {
  display: none !important;
}

/* Price and button are enough; keep the light offer clean. */
.ad-route-offer-buy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 16px;
}

.ad-route-price {
  margin: 0;
}

/* Final dark CTA: distinct price panel + cream action button. */
.ad-sales-final {
  grid-template-columns: minmax(0, 1fr) 360px;
  gap: 54px;
  padding: 34px 38px !important;
  align-items: center;
}

.ad-sales-final-buy {
  display: flex;
  flex-direction: column;
  gap: 18px;
  text-align: center;
}

.ad-sales-final-price {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 100px;
  padding: 16px 22px;
  border: 1px solid rgba(244, 223, 167, .28);
  border-radius: 18px;
  background: rgba(255,255,255,.075);
  color: #f4dfa7;
  font-size: 44px;
  line-height: 1;
}

.ad-sales-final .ad-route-cta {
  min-height: 58px;
  border-radius: 15px;
  background: #f4e4ba !important;
  color: #294a42 !important;
  font-size: 14px;
  font-weight: 750;
  box-shadow: none;
}

.ad-sales-final .ad-route-cta:hover,
.ad-sales-final .ad-route-cta:focus-visible {
  filter: brightness(.97);
  transform: translateY(-1px);
  color: #173a35 !important;
}

/* Legal text remains, but subordinate to the CTA. */
.ad-sales-final .ad-legal-consent {
  margin-top: -7px;
  color: rgba(230, 241, 238, .72);
}

.ad-sales-final .ad-legal-consent a {
  color: #d7ebe6;
}

@media (max-width: 900px) {
  .ad-sales-final {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .ad-sales-final-buy {
    width: min(100%, 420px);
    max-width: none;
  }
}

@media (max-width: 720px) {
  .ad-sales-final {
    padding: 26px 20px !important;
  }

  .ad-sales-final-price {
    min-height: 78px;
    font-size: 38px;
  }

  .ad-sales-final .ad-route-cta {
    min-height: 54px;
  }
}


/* =========================================================
   v1.10.5 — unified site header typography
   ========================================================= */

.ad-brand {
  gap: 12px;
}

.ad-brand-mark {
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  flex: 0 0 40px;
  border: 1px solid rgba(255,255,255,.65);
  border-radius: 50%;
  color: #f1d9a3;
  font-size: 17px;
  line-height: 1;
}

.ad-brand-copy strong {
  font-size: 18px;
  line-height: 1;
  letter-spacing: .14em;
  font-weight: 900;
}

.ad-home-link {
  font-size: 12px;
  font-weight: 700;
}

@media (max-width: 720px) {
  .ad-brand-mark {
    width: 36px;
    height: 36px;
    flex-basis: 36px;
    font-size: 15px;
  }

  .ad-brand-copy strong {
    font-size: 16px;
    letter-spacing: .14em;
  }

  .ad-home-link {
    font-size: 11px;
    font-weight: 700;
  }
}
