:root {
  --paper: #fffdf8;
  --sheet: #ffffff;
  --ledger: #171813;
  --ledger-soft: #51534c;
  --route-green: #176b4d;
  --route-green-soft: #e8f2ed;
  --route-green-line: #b9d3c6;
  --signal-yellow: #f4cd2f;
  --signal-yellow-strong: #dfb900;
  --signal-yellow-soft: #fff8d8;
  --signal-yellow-line: #e8d16d;
  --warning-paper: #fff7df;
  --warning-ink: #765408;
  --risk-paper: #fcedeb;
  --risk-ink: #9b332d;
  --rule: #e8e5da;
  --rule-strong: #cbc6b7;
  --muted: #74766e;
  --radius: 8px;
  --ease: 180ms ease;
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--ledger);
  background: var(--paper);
  font-synthesis: none;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; min-width: 320px; background: var(--paper); color: var(--ledger); }
.carrot-announcement { display: none; }
button, input { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
a { color: inherit; }
button:focus-visible, a:focus-visible, input:focus-visible {
  outline: 3px solid rgba(23, 107, 77, .24);
  outline-offset: 3px;
}
[hidden] { display: none !important; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }

.topbar {
  position: sticky;
  top: 0;
  z-index: 20;
  border-bottom: 1px solid var(--rule);
  background: rgba(245, 244, 239, .96);
  backdrop-filter: blur(14px);
}
.topbar-shell {
  width: min(1460px, calc(100% - 48px));
  min-height: 70px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 28px;
}
.brand { display: inline-flex; align-items: center; gap: 11px; width: fit-content; text-decoration: none; }
.brand-mark { width: 34px; height: 34px; border: 1px solid var(--ledger); border-radius: 50%; display: grid; place-items: center; }
.brand-mark::before, .brand-mark::after, .brand-mark i { content: ""; display: block; border: 1px solid var(--ledger); border-radius: 50%; grid-area: 1 / 1; }
.brand-mark::before { width: 20px; height: 20px; }
.brand-mark::after { width: 8px; height: 8px; background: var(--signal-yellow); }
.brand-mark i { width: 2px; height: 2px; background: var(--ledger); }
.brand > span:last-child { display: grid; gap: 2px; }
.brand strong { font-size: 13px; line-height: 1; }
.brand small { font-size: 9px; font-weight: 700; color: var(--route-green); text-transform: uppercase; letter-spacing: .12em; }
.global-route { display: flex; align-items: center; }
.global-route > span { width: 42px; height: 1px; background: var(--rule-strong); }
.global-route a { display: flex; align-items: center; gap: 7px; text-decoration: none; color: var(--muted); font-size: 11px; font-weight: 700; }
.global-route a b { width: 23px; height: 23px; display: grid; place-items: center; border: 1px solid var(--rule-strong); border-radius: 50%; font-size: 9px; }
.global-route a.active { color: var(--ledger); }
.global-route a.active b { color: #fff; border-color: var(--route-green); background: var(--route-green); }
.global-route a[aria-disabled="true"] { pointer-events: none; opacity: .55; }
.reset-button { justify-self: end; padding: 8px 11px; border: 1px solid var(--rule); border-radius: 5px; background: transparent; color: var(--ledger-soft); font-size: 10px; font-weight: 700; cursor: pointer; }
.reset-button:hover { border-color: var(--ledger); color: var(--ledger); }

main { width: min(1460px, calc(100% - 48px)); margin: 0 auto; }
.route-intro {
  min-height: 155px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
  border-bottom: 1px solid var(--rule);
}
.eyebrow { margin: 0 0 9px; color: var(--route-green); font-size: 10px; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.route-intro h1 { margin: 0; max-width: 770px; font-size: clamp(28px, 3.3vw, 48px); line-height: 1.02; letter-spacing: -.045em; }
.route-intro h1 span { color: var(--route-green); }
.route-intro-copy { max-width: 720px; margin: 11px 0 0; color: var(--ledger-soft); font-size: 11px; line-height: 1.55; }
.time-map { display: flex; align-items: center; flex: 0 0 auto; }
.time-map span { display: grid; gap: 3px; color: var(--muted); font-size: 9px; text-transform: uppercase; letter-spacing: .08em; }
.time-map b { color: var(--ledger); font-size: 16px; letter-spacing: -.02em; text-transform: none; }
.time-map i { width: 45px; height: 1px; margin: 0 12px; background: var(--rule-strong); }

.workbench { display: grid; grid-template-columns: 260px minmax(0, 1fr); gap: 40px; padding: 32px 0 64px; }
.journey-card { position: sticky; top: 102px; align-self: start; padding: 22px; border: 1px solid var(--rule); border-radius: var(--radius); background: rgba(255,255,255,.58); }
.journey-head { display: flex; align-items: end; justify-content: space-between; margin-bottom: 12px; }
.journey-head small { font-size: 9px; font-weight: 800; color: var(--muted); text-transform: uppercase; letter-spacing: .1em; }
.journey-head strong { font-size: 10px; }
.journey-line { height: 3px; overflow: hidden; background: #e1e4e1; }
.journey-line i { display: block; width: 0; height: 100%; background: var(--route-green); transition: width var(--ease); }
.journey-card ol { list-style: none; padding: 15px 0 17px; margin: 0; display: grid; }
.journey-card li { position: relative; display: grid; grid-template-columns: 31px 1fr; gap: 11px; min-height: 67px; color: var(--muted); }
.journey-card li:not(:last-child)::after { content: ""; position: absolute; left: 14px; top: 27px; bottom: 3px; width: 1px; background: var(--rule); }
.journey-card li > b { width: 29px; height: 29px; z-index: 1; display: grid; place-items: center; border: 1px solid var(--rule); border-radius: 50%; background: var(--paper); font-size: 8px; }
.journey-card li > span { display: grid; align-content: start; gap: 3px; padding-top: 2px; }
.journey-card li strong { font-size: 11px; color: inherit; }
.journey-card li small { font-size: 9px; line-height: 1.35; }
.journey-card li.active, .journey-card li.done { color: var(--ledger); }
.journey-card li.active > b { color: #fff; border-color: var(--route-green); background: var(--route-green); }
.journey-card li.done > b { color: var(--route-green); border-color: var(--route-green-line); background: var(--route-green-soft); }
.privacy-note { display: flex; gap: 9px; padding-top: 15px; border-top: 1px solid var(--rule); }
.privacy-note > span { color: var(--route-green); font-size: 19px; }
.privacy-note p { margin: 0; font-size: 9px; line-height: 1.5; color: var(--ledger-soft); }
.privacy-note strong { color: var(--ledger); }

.question-stage { min-width: 0; }
#v2Form { position: relative; min-height: 680px; border: 1px solid var(--rule); border-radius: var(--radius); background: var(--sheet); overflow: hidden; }
.screen { min-height: 586px; padding: 56px clamp(28px, 6vw, 88px) 38px; animation: screen-in 180ms ease both; }
@keyframes screen-in { from { opacity: 0; transform: translateY(5px); } to { opacity: 1; transform: translateY(0); } }
.screen-counter { margin: 0 0 13px; color: var(--route-green); font-size: 10px; font-weight: 800; letter-spacing: .11em; text-transform: uppercase; }
.screen h2 { max-width: 800px; margin: 0; font-size: clamp(27px, 3.4vw, 45px); line-height: 1.06; letter-spacing: -.04em; }
.screen-lead { max-width: 720px; margin: 16px 0 30px; color: var(--ledger-soft); font-size: 14px; line-height: 1.65; }
fieldset { min-width: 0; padding: 0; margin: 0; border: 0; }

.answer-list { display: grid; gap: 9px; }
.answer-list > label {
  min-height: 68px;
  padding: 13px 16px;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 15px;
  border: 1px solid var(--rule);
  border-radius: 6px;
  cursor: pointer;
  transition: border-color var(--ease), background var(--ease);
}
.answer-list > label:hover, .answer-grid > label:hover { border-color: var(--rule-strong); background: #fafbf9; }
.answer-list input, .answer-grid input, .scenario-list input { position: absolute; opacity: 0; pointer-events: none; }
.answer-list label > span:not(.answer-index) { display: grid; gap: 5px; }
.answer-list label strong { font-size: 13px; }
.answer-list label small { color: var(--muted); font-size: 10px; line-height: 1.4; }
.answer-list label > i { width: 25px; height: 25px; display: grid; place-items: center; border: 1px solid var(--rule); border-radius: 50%; color: var(--muted); font-size: 11px; font-style: normal; }
.answer-list label:has(input:checked) { border-color: var(--route-green); background: var(--route-green-soft); }
.answer-list label:has(input:checked) > i { color: #fff; border-color: var(--route-green); background: var(--route-green); }
.answer-list label:has(input:focus-visible), .answer-grid label:has(input:focus-visible),
.scenario-list label:has(input:focus-visible), .risk-acknowledgement:has(input:focus-visible) {
  outline: 3px solid rgba(23, 107, 77, .24);
  outline-offset: 3px;
}
.answer-list-hero > label { grid-template-columns: 42px 1fr auto; min-height: 86px; padding: 15px 18px; }
.answer-index { font-size: 10px; font-weight: 800; color: var(--muted); letter-spacing: .08em; }
.answer-list-hero label strong { font-size: 16px; letter-spacing: -.015em; }

.answer-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.answer-grid > label {
  min-height: 112px;
  padding: 18px;
  display: grid;
  align-content: end;
  border: 1px solid var(--rule);
  border-radius: 6px;
  cursor: pointer;
  transition: border-color var(--ease), background var(--ease);
}
.answer-grid label > span { display: grid; gap: 6px; }
.answer-grid strong { font-size: 14px; }
.answer-grid small { color: var(--muted); font-size: 10px; }
.answer-grid label:has(input:checked) { border-color: var(--route-green); background: var(--route-green-soft); }
.recommended-choice { position: relative; }
.recommended-choice > b {
  position: absolute;
  top: 10px;
  right: 10px;
  padding: 4px 6px;
  border-radius: 3px;
  background: var(--signal-yellow);
  font-size: 7px;
  letter-spacing: .05em;
  text-transform: uppercase;
}
.answer-grid-three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.time-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.time-grid > label { min-height: 130px; }
.workload-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.workload-grid > label { min-height: 126px; }

.text-entry, .followup-field { max-width: 720px; display: grid; gap: 8px; }
.text-entry > span, .followup-field > span {
  color: var(--ledger-soft);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.text-entry input, .followup-field input {
  width: 100%;
  min-height: 52px;
  padding: 12px 14px;
  border: 1px solid var(--rule-strong);
  border-radius: 6px;
  background: #fff;
  color: var(--ledger);
}
.followup-field { margin-top: 16px; }
.profile-transfer, .cloud-auth {
  max-width: 720px;
  margin-top: 22px;
  padding: 16px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  border: 1px solid var(--route-green-line);
  border-radius: 6px;
  background: var(--route-green-soft);
}
.profile-transfer div, .cloud-auth > div { display: grid; gap: 5px; }
.profile-transfer b, .cloud-auth b { font-size: 11px; }
.profile-transfer span, .cloud-auth span { color: var(--ledger-soft); font-size: 9px; line-height: 1.5; }
.profile-transfer button, .cloud-auth button, .cloud-auth a {
  flex: 0 0 auto;
  padding: 9px 12px;
  border: 1px solid var(--route-green);
  border-radius: 5px;
  background: #fff;
  color: var(--route-green);
  font-size: 9px;
  font-weight: 800;
  cursor: pointer;
  text-decoration: none;
}
.cloud-auth { margin-top: 16px; background: #f0fbf5; }
.cloud-auth-actions { display: flex !important; align-items: center; justify-content: flex-end; gap: 8px !important; }
.cloud-auth .inline-status { margin: 1px 0 0; }
.cloud-auth button[hidden], .cloud-auth a[hidden] { display: none; }
.inline-status { min-height: 16px; margin: 8px 0 0; font-size: 9px; color: var(--route-green); }
.inline-status.error { color: var(--risk-ink); }

.context-note { margin-top: 20px; padding: 13px 15px; display: grid; grid-template-columns: 145px 1fr; gap: 16px; border-left: 3px solid var(--route-green); background: #f7f9f7; font-size: 10px; line-height: 1.55; }
.context-note b { color: var(--route-green); }
.context-note span { color: var(--ledger-soft); }
.context-note.warning { border-left-color: var(--signal-yellow); background: var(--warning-paper); }
.context-note.warning b { color: var(--warning-ink); }

.capital-control { max-width: 800px; padding: 26px; border: 1px solid var(--rule); border-radius: 6px; background: #fafbf9; }
.capital-value { display: flex; justify-content: space-between; align-items: baseline; }
.capital-value small { font-size: 10px; font-weight: 700; color: var(--muted); text-transform: uppercase; letter-spacing: .08em; }
.capital-value output { font-size: 40px; font-weight: 800; letter-spacing: -.05em; }
#capitalRange { width: 100%; margin: 26px 0 5px; accent-color: var(--route-green); }
.range-labels { display: flex; justify-content: space-between; color: var(--muted); font-size: 9px; }
.preset-row { margin-top: 22px; display: flex; align-items: stretch; gap: 8px; }
.preset-row button { min-width: 74px; padding: 10px 12px; border: 1px solid var(--rule); border-radius: 5px; background: #fff; font-size: 11px; font-weight: 700; cursor: pointer; }
.preset-row button:hover { border-color: var(--ledger); }
.preset-row button.recommended { border-color: #dec327; background: #fff9d6; }
.preset-row button small { display: block; margin-top: 2px; color: #806b00; font-size: 7px; text-transform: uppercase; }
.preset-row label { margin-left: auto; display: grid; gap: 4px; }
.preset-row label span { font-size: 8px; font-weight: 700; color: var(--muted); text-transform: uppercase; letter-spacing: .07em; }
.preset-row input { width: 130px; padding: 9px 10px; border: 1px solid var(--rule); border-radius: 5px; background: #fff; }

.contribution-fields { margin-top: 16px; padding: 18px; display: grid; grid-template-columns: 1fr 1fr; gap: 14px; border: 1px solid var(--route-green-line); border-radius: 6px; background: var(--route-green-soft); }
.contribution-fields > label { display: grid; gap: 7px; }
.contribution-fields > label > span { font-size: 9px; font-weight: 800; color: var(--ledger-soft); text-transform: uppercase; letter-spacing: .08em; }
.contribution-fields label div { display: flex; align-items: center; gap: 8px; padding: 0 11px; border: 1px solid var(--route-green-line); border-radius: 5px; background: #fff; }
.contribution-fields input { min-width: 0; width: 100%; padding: 11px 0; border: 0; outline: 0; background: transparent; font-weight: 700; }
.contribution-fields b { color: var(--route-green); font-size: 10px; }
.contribution-fields-wide { grid-template-columns: 1fr 1.2fr 1fr; }
.schedule-choice { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; }
.schedule-choice legend { grid-column: 1 / -1; margin-bottom: 1px; color: var(--ledger-soft); font-size: 9px; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }
.schedule-choice label {
  padding: 10px;
  border: 1px solid var(--route-green-line);
  border-radius: 5px;
  background: #fff;
  font-size: 9px;
  font-weight: 700;
  text-align: center;
  cursor: pointer;
}
.schedule-choice input { position: absolute; opacity: 0; }
.schedule-choice label:has(input:checked) { color: #fff; border-color: var(--route-green); background: var(--route-green); }
.day-range-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; }
.day-range-fields label { display: grid; gap: 6px; color: var(--ledger-soft); font-size: 9px; font-weight: 800; text-transform: uppercase; }
.day-range-fields input { padding: 11px; border: 1px solid var(--route-green-line); border-radius: 5px; background: #fff; }
.commission-split {
  margin-top: 15px;
  padding: 16px;
  display: grid;
  gap: 14px;
  border: 1px solid var(--route-green-line);
  border-radius: 6px;
  background: var(--route-green-soft);
}
.commission-split strong { font-size: 11px; color: var(--route-green); }
.commission-split input { width: 100%; accent-color: var(--route-green); }

.scenario-list { display: grid; gap: 12px; }
.scenario-list fieldset { padding: 16px; border: 1px solid var(--rule); border-radius: 6px; }
.scenario-list legend { width: 100%; display: grid; grid-template-columns: 30px 1fr; gap: 10px; }
.scenario-list legend > b { color: var(--route-green); font-size: 9px; }
.scenario-list legend > span { display: grid; gap: 3px; }
.scenario-list legend strong { font-size: 12px; }
.scenario-list legend small { color: var(--muted); font-size: 9px; }
.scenario-list legend .loss-line { color: var(--risk-ink); font-weight: 800; }
.scenario-list fieldset > div { margin: 12px 0 0 40px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 7px; }
.scenario-list label { min-height: 50px; padding: 10px; display: grid; place-items: center; border: 1px solid var(--rule); border-radius: 5px; color: var(--ledger-soft); font-size: 9px; line-height: 1.4; text-align: center; cursor: pointer; }
.scenario-list label:hover { border-color: var(--rule-strong); }
.scenario-list label:has(input:checked) { color: var(--ledger); border-color: var(--route-green); background: var(--route-green-soft); }
.risk-acknowledgement { margin-top: 14px; padding: 14px; display: grid; grid-template-columns: 28px 1fr; gap: 11px; border: 1px solid var(--rule); border-radius: 6px; cursor: pointer; }
.risk-acknowledgement input { position: absolute; opacity: 0; }
.risk-acknowledgement > span:first-of-type { width: 26px; height: 26px; display: grid; place-items: center; border: 1px solid var(--rule-strong); border-radius: 4px; color: transparent; }
.risk-acknowledgement > span:last-child { display: grid; gap: 4px; }
.risk-acknowledgement strong { font-size: 11px; }
.risk-acknowledgement small { color: var(--muted); font-size: 9px; line-height: 1.5; }
.risk-acknowledgement:has(input:checked) { border-color: var(--route-green); background: var(--route-green-soft); }
.risk-acknowledgement:has(input:checked) > span:first-of-type { color: #fff; border-color: var(--route-green); background: var(--route-green); }
.risk-stop { border-left-color: var(--risk-ink); background: var(--risk-paper); }
.risk-stop b { color: var(--risk-ink); }
.commission-note {
  margin-top: 12px;
  padding: 13px 15px;
  display: grid;
  grid-template-columns: 230px 1fr;
  gap: 14px;
  border-left: 3px solid var(--route-green);
  background: var(--route-green-soft);
  font-size: 9px;
  line-height: 1.55;
}
.commission-note b { color: var(--route-green); }
.commission-note span { color: var(--ledger-soft); }

.form-actions { min-height: 92px; padding: 20px clamp(28px, 6vw, 88px); display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 18px; border-top: 1px solid var(--rule); background: #fbfcfa; }
.back-button, .next-button { min-height: 42px; padding: 10px 16px; border-radius: 5px; font-size: 10px; font-weight: 800; cursor: pointer; }
.back-button { justify-self: start; border: 1px solid var(--rule); background: #fff; color: var(--ledger); }
.next-button { justify-self: end; border: 1px solid var(--ledger); background: var(--ledger); color: #fff; }
.next-button span { margin-left: 10px; }
.next-button:disabled { border-color: #d7dbd8; background: #d7dbd8; color: #8e9691; cursor: not-allowed; }
.save-state { display: flex; align-items: center; gap: 7px; color: var(--muted); font-size: 8px; text-align: center; }
.save-state i { width: 6px; height: 6px; border-radius: 50%; background: var(--route-green); }

.result-screen { min-height: 680px; }
.result-heading { display: grid; grid-template-columns: 1fr 120px; gap: 24px; align-items: start; }
.readiness-badge { display: inline-flex; margin-bottom: 11px; padding: 6px 9px; border-radius: 4px; background: var(--route-green-soft); color: var(--route-green); font-size: 8px; font-weight: 800; text-transform: uppercase; letter-spacing: .07em; }
.readiness-badge.caution { color: var(--warning-ink); background: var(--warning-paper); }
.readiness-badge.stop { color: var(--risk-ink); background: var(--risk-paper); }
.result-heading h2 { font-size: clamp(25px, 3vw, 38px); }
.result-heading p { margin: 12px 0 0; color: var(--ledger-soft); font-size: 12px; line-height: 1.55; }
.route-score { aspect-ratio: 1; padding: 13px; display: grid; align-content: center; justify-items: center; border: 1px solid var(--route-green-line); border-radius: 50%; background: var(--route-green-soft); text-align: center; }
.route-score small { color: var(--muted); font-size: 8px; text-transform: uppercase; }
.route-score strong { margin: 3px 0; font-size: 25px; letter-spacing: -.05em; }
.route-score span { font-size: 8px; font-weight: 700; }
.recommendation-board { margin-top: 24px; display: grid; grid-template-columns: 1.35fr .75fr; border: 1px solid var(--rule); border-radius: 6px; overflow: hidden; }
.first-position { padding: 22px; }
.position-topline { display: flex; justify-content: space-between; color: var(--route-green); font-size: 8px; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }
.first-position h3 { margin: 11px 0 7px; font-size: 19px; letter-spacing: -.025em; }
.first-position > p { margin: 0; color: var(--ledger-soft); font-size: 10px; line-height: 1.55; }
.first-position dl { margin: 17px 0; display: grid; grid-template-columns: repeat(4, 1fr); border: 1px solid var(--rule); border-width: 1px 0; }
.first-position dl div { padding: 12px 10px; border-right: 1px solid var(--rule); }
.first-position dl div:first-child { padding-left: 0; }
.first-position dl div:last-child { border-right: 0; }
.first-position dt { color: var(--muted); font-size: 7px; text-transform: uppercase; letter-spacing: .06em; }
.first-position dd { margin: 4px 0 0; font-size: 10px; font-weight: 800; }
.decision-note { display: grid; grid-template-columns: 165px 1fr; gap: 12px; padding: 11px; border-left: 3px solid var(--signal-yellow); background: var(--warning-paper); font-size: 8px; line-height: 1.5; }
.decision-note span { color: var(--ledger-soft); }
.profile-summary { padding: 22px; border-left: 1px solid var(--rule); background: #fafbf9; }
.profile-summary > small { color: var(--muted); font-size: 8px; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }
.profile-summary dl { margin: 13px 0 17px; display: grid; gap: 9px; }
.profile-summary dl div { display: flex; justify-content: space-between; gap: 12px; padding-bottom: 8px; border-bottom: 1px solid var(--rule); }
.profile-summary dt { color: var(--muted); font-size: 8px; }
.profile-summary dd { margin: 0; font-size: 8px; font-weight: 700; text-align: right; }
.profile-summary button { width: 100%; margin-top: 7px; padding: 9px; border: 1px solid var(--rule-strong); border-radius: 5px; background: #fff; font-size: 9px; font-weight: 700; cursor: pointer; }
.position-sequence { list-style: none; margin: 17px 0 0; padding: 0; display: grid; grid-template-columns: repeat(4, 1fr); border: 1px solid var(--rule); border-radius: 6px; }
.position-sequence li { min-height: 64px; padding: 12px; display: grid; grid-template-columns: 25px 1fr; gap: 8px; border-right: 1px solid var(--rule); }
.position-sequence li:last-child { border-right: 0; }
.position-sequence li > b { color: var(--muted); font-size: 8px; }
.position-sequence li > span { display: grid; gap: 3px; }
.position-sequence strong { font-size: 9px; }
.position-sequence small { color: var(--muted); font-size: 7px; line-height: 1.4; }
.position-sequence li.current { background: var(--route-green-soft); }
.position-sequence li.current > b, .position-sequence li.current strong { color: var(--route-green); }
.result-actions { margin-top: 18px; display: flex; justify-content: space-between; gap: 12px; }
.submission-panel {
  margin-top: 18px;
  padding: 15px 17px;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 20px;
  border: 1px solid var(--route-green-line);
  border-radius: 6px;
  background: var(--route-green-soft);
}
.submission-panel div { display: grid; gap: 4px; }
.submission-panel b { color: var(--route-green); font-size: 10px; }
.submission-panel span { color: var(--ledger-soft); font-size: 8px; line-height: 1.5; }
.submission-panel p { min-width: 210px; margin: 0; color: var(--muted); font-size: 9px; text-align: right; }
.submission-panel p.success { color: var(--route-green); }
.submission-panel p.error { color: var(--risk-ink); }
.primary-action, .secondary-action { min-height: 43px; padding: 11px 16px; display: inline-flex; align-items: center; justify-content: center; border-radius: 5px; font-size: 10px; font-weight: 800; text-decoration: none; cursor: pointer; }
.primary-action { border: 1px solid var(--route-green); background: var(--route-green); color: #fff; }
.primary-action span { margin-left: 13px; }
.primary-action.disabled { pointer-events: none; border-color: #d7dbd8; background: #d7dbd8; color: #8e9691; }
.secondary-action { border: 1px solid var(--rule); background: #fff; color: var(--ledger); }

.shortcut-screen { min-height: 680px; display: grid; align-content: center; }
.shortcut-screen .screen-lead { max-width: 610px; }
.shortcut-map { display: grid; grid-template-columns: 1fr auto 1fr auto 1fr; align-items: center; gap: 12px; margin-top: 10px; }
.shortcut-map > span { min-height: 130px; padding: 17px; display: grid; align-content: start; gap: 7px; border: 1px solid var(--rule); border-radius: 6px; }
.shortcut-map > span b { color: var(--route-green); font-size: 9px; }
.shortcut-map > span strong { font-size: 12px; }
.shortcut-map > span small { color: var(--muted); font-size: 9px; line-height: 1.5; }
.shortcut-map > i { color: var(--muted); font-style: normal; }

.page-footer { width: min(1460px, calc(100% - 48px)); min-height: 90px; margin: 0 auto; padding: 20px 0; display: flex; align-items: center; justify-content: space-between; gap: 30px; border-top: 1px solid var(--rule); color: var(--muted); font-size: 8px; line-height: 1.5; }
.page-footer p { max-width: 850px; margin: 0; }
.page-footer span { font-weight: 700; white-space: nowrap; }

/* Version 2 visual direction: bright white workspace with a single yellow route accent. */
.topbar { background: rgba(255, 255, 255, .96); }
.brand strong { font-size: 14px; }
.brand small { color: #806600; font-size: 10px; }
.brand-mark::after { background: var(--signal-yellow); }
.global-route a { font-size: 12px; }
.global-route a b { width: 26px; height: 26px; font-size: 10px; }
.global-route a.active b {
  color: var(--ledger);
  border-color: var(--signal-yellow-strong);
  background: var(--signal-yellow);
}
.reset-button { background: #fff; font-size: 11px; }

.eyebrow { color: #806600; font-size: 11px; }
.route-intro h1 span { color: #8a6b00; }
.route-intro-copy { font-size: 13px; line-height: 1.6; }
.time-map span { font-size: 10px; }
.time-map b { font-size: 18px; }

.journey-card { background: #fff; }
.journey-head small, .journey-head strong { font-size: 11px; }
.journey-line i { background: var(--signal-yellow-strong); }
.journey-card li strong { font-size: 13px; }
.journey-card li small { font-size: 11px; line-height: 1.45; }
.journey-card li > b { width: 31px; height: 31px; font-size: 9px; }
.journey-card li.active > b {
  color: var(--ledger);
  border-color: var(--signal-yellow-strong);
  background: var(--signal-yellow);
}
.journey-card li.done > b {
  color: var(--ledger);
  border-color: var(--signal-yellow-line);
  background: var(--signal-yellow-soft);
}
.privacy-note > span { color: #8a6b00; }
.privacy-note p { font-size: 11px; line-height: 1.55; }

.screen-counter { color: #806600; font-size: 11px; }
.screen-lead { font-size: 16px; line-height: 1.65; }
.answer-list label strong, .answer-grid strong { font-size: 15px; }
.answer-list label small, .answer-grid small { font-size: 12px; line-height: 1.45; }
.answer-list > label { min-height: 76px; padding: 15px 18px; }
.answer-grid > label { min-height: 122px; padding: 20px; }
.answer-list label:has(input:checked),
.answer-grid label:has(input:checked) {
  border-color: var(--signal-yellow-strong);
  background: var(--signal-yellow-soft);
}
.answer-list label:has(input:checked) > i {
  color: var(--ledger);
  border-color: var(--signal-yellow-strong);
  background: var(--signal-yellow);
}
.recommended-choice > b { color: var(--ledger); }
.text-entry > span, .followup-field > span { font-size: 10px; }
.text-entry input, .followup-field input { min-height: 58px; font-size: 16px; }
.profile-transfer, .cloud-auth {
  border-color: var(--signal-yellow-line);
  background: var(--signal-yellow-soft);
}
.profile-transfer b, .cloud-auth b { font-size: 13px; }
.profile-transfer span, .cloud-auth span { font-size: 11px; }
.profile-transfer button, .cloud-auth button, .cloud-auth a {
  border-color: var(--signal-yellow-strong);
  color: var(--ledger);
  font-size: 11px;
}

.context-note { font-size: 12px; }
.capital-control { background: #fffefa; }
.capital-value small { font-size: 11px; }
#capitalRange, .commission-split input { accent-color: var(--signal-yellow-strong); }
.preset-row button, .preset-row input { font-size: 13px; }
.preset-row button.recommended {
  border-color: var(--signal-yellow-strong);
  background: var(--signal-yellow-soft);
}
.contribution-fields,
.commission-split {
  border-color: var(--signal-yellow-line);
  background: var(--signal-yellow-soft);
}
.contribution-fields > label > span,
.schedule-choice legend { font-size: 10px; }
.schedule-choice label { border-color: var(--signal-yellow-line); font-size: 11px; }
.schedule-choice label:has(input:checked) {
  color: var(--ledger);
  border-color: var(--signal-yellow-strong);
  background: var(--signal-yellow);
}
.commission-split strong { color: #755b00; font-size: 13px; }

.scenario-list legend strong { font-size: 14px; }
.scenario-list legend small { font-size: 11px; }
.scenario-list label { min-height: 58px; font-size: 11px; }
.scenario-list label:has(input:checked) {
  border-color: var(--signal-yellow-strong);
  background: var(--signal-yellow-soft);
}
.risk-acknowledgement strong { font-size: 13px; }
.risk-acknowledgement small { font-size: 11px; }
.risk-acknowledgement:has(input:checked) {
  border-color: var(--signal-yellow-strong);
  background: var(--signal-yellow-soft);
}
.risk-acknowledgement:has(input:checked) > span:first-of-type {
  color: var(--ledger);
  border-color: var(--signal-yellow-strong);
  background: var(--signal-yellow);
}
.commission-note {
  border-left-color: var(--signal-yellow-strong);
  background: var(--signal-yellow-soft);
  font-size: 11px;
}
.commission-note b { color: #755b00; }

.back-button, .next-button { min-height: 48px; font-size: 12px; }
.next-button {
  color: var(--ledger);
  border-color: var(--signal-yellow-strong);
  background: var(--signal-yellow);
}
.next-button:hover:not(:disabled),
.primary-action:hover { background: #e9c11f; }
.save-state { font-size: 10px; }

.readiness-badge { font-size: 10px; }
.result-heading p { font-size: 14px; }
.route-score { border-color: var(--signal-yellow-line); background: var(--signal-yellow-soft); }
.route-score small, .route-score span { font-size: 9px; }
.position-topline { color: #806600; font-size: 10px; }
.first-position h3 { font-size: 22px; }
.first-position > p { font-size: 12px; }
.first-position dt { font-size: 9px; }
.first-position dd { font-size: 12px; }
.decision-note { font-size: 10px; }
.profile-summary > small { font-size: 10px; }
.profile-summary dt, .profile-summary dd { font-size: 10px; line-height: 1.4; }
.profile-summary button { min-height: 38px; font-size: 11px; }
.submission-panel {
  border-color: var(--signal-yellow-line);
  background: var(--signal-yellow-soft);
}
.submission-panel b { color: #755b00; font-size: 12px; }
.submission-panel span, .submission-panel p { font-size: 10px; }
.primary-action, .secondary-action { min-height: 48px; font-size: 12px; }
.primary-action {
  color: var(--ledger);
  border-color: var(--signal-yellow-strong);
  background: var(--signal-yellow);
}
.page-footer { font-size: 10px; }

@media (max-width: 1080px) {
  .topbar-shell { grid-template-columns: 1fr auto; }
  .global-route { order: 3; grid-column: 1 / -1; justify-content: center; padding: 0 0 12px; }
  .route-intro { align-items: flex-start; flex-direction: column; justify-content: center; }
  .workbench { grid-template-columns: 210px minmax(0, 1fr); gap: 20px; }
  .time-grid { grid-template-columns: repeat(3, 1fr); }
  .workload-grid { grid-template-columns: repeat(3, 1fr); }
  .recommendation-board { grid-template-columns: 1fr; }
  .profile-summary { border-left: 0; border-top: 1px solid var(--rule); }
  .first-position dl { grid-template-columns: repeat(2, 1fr); }
  .first-position dl div:nth-child(2) { border-right: 0; }
}

@media (max-width: 760px) {
  .topbar-shell, main, .page-footer { width: min(100% - 28px, 1460px); }
  .topbar-shell { gap: 14px; }
  .reset-button { font-size: 0; }
  .reset-button::after { content: "Сбросить"; font-size: 9px; }
  .global-route { overflow-x: auto; justify-content: flex-start; }
  .global-route > span { width: 18px; }
  .route-intro { min-height: 180px; padding: 24px 0; }
  .time-map { width: 100%; justify-content: space-between; }
  .time-map i { flex: 1; width: auto; margin: 0 8px; }
  .workbench { display: block; padding-top: 18px; }
  .journey-card { position: static; margin-bottom: 12px; padding: 15px; }
  .journey-card ol { grid-template-columns: repeat(5, 1fr); gap: 5px; padding-bottom: 10px; }
  .journey-card li { display: flex; min-height: auto; justify-content: center; }
  .journey-card li::after, .journey-card li > span { display: none; }
  .privacy-note { display: none; }
  #v2Form { min-height: 0; }
  .screen { min-height: 0; padding: 34px 20px 28px; }
  .screen h2 { font-size: 29px; }
  .screen-lead { margin-bottom: 23px; font-size: 14px; }
  .answer-grid, .answer-grid-three, .time-grid { grid-template-columns: 1fr 1fr; }
  .answer-list-hero > label { grid-template-columns: 28px 1fr auto; }
  .context-note { grid-template-columns: 1fr; gap: 5px; }
  .preset-row { flex-wrap: wrap; }
  .preset-row label { width: 100%; margin-left: 0; }
  .preset-row input { width: 100%; }
  .contribution-fields { grid-template-columns: 1fr; }
  .contribution-fields-wide { grid-template-columns: 1fr; }
  .profile-transfer, .cloud-auth { align-items: stretch; flex-direction: column; }
  .cloud-auth-actions { justify-content: flex-start; flex-wrap: wrap; }
  .commission-note, .submission-panel { grid-template-columns: 1fr; }
  .submission-panel p { min-width: 0; text-align: left; }
  .scenario-list fieldset > div { margin-left: 0; grid-template-columns: 1fr; }
  .form-actions { min-height: 80px; padding: 16px 20px; grid-template-columns: 1fr 1fr; }
  .save-state { display: none; }
  .result-heading { grid-template-columns: 1fr; }
  .route-score { width: 104px; }
  .first-position dl, .position-sequence { grid-template-columns: 1fr 1fr; }
  .first-position dl div, .position-sequence li { border-bottom: 1px solid var(--rule); }
  .position-sequence li:nth-child(2) { border-right: 0; }
  .decision-note { grid-template-columns: 1fr; }
  .shortcut-map { grid-template-columns: 1fr; }
  .shortcut-map > i { transform: rotate(90deg); text-align: center; }
  .page-footer { align-items: flex-start; flex-direction: column; }
}

.allocation-control {
  max-width: 820px;
  padding: 24px;
  border: 1px solid var(--rule);
  border-radius: 16px;
  background: #fff;
}
.allocation-cards {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: stretch;
  gap: 12px;
}
.allocation-card {
  min-width: 0;
  padding: 18px;
  display: grid;
  gap: 6px;
  border: 1px solid var(--rule);
  border-radius: 13px;
}
.allocation-card > span {
  color: var(--muted);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.allocation-card strong {
  font-size: clamp(34px, 4vw, 48px);
  line-height: 1;
  letter-spacing: -.05em;
}
.allocation-card b { font-size: 14px; }
.allocation-card small { color: var(--ledger-soft); font-size: 11px; line-height: 1.45; }
.hold-card { background: #f7f7ff; }
.defi-card { background: var(--route-green-soft); }
.allocation-divider { display: grid; place-items: center; color: var(--muted); font-size: 22px; font-weight: 800; }
.allocation-slider-label { margin-top: 23px; display: grid; gap: 12px; }
.allocation-slider-label > span { font-size: 12px; font-weight: 800; }
.allocation-slider-label input { width: 100%; accent-color: var(--route-green); }
.allocation-scale { margin-top: 5px; display: flex; justify-content: space-between; color: var(--muted); font-size: 9px; }
.plan-b-progress {
  margin-top: 17px;
  padding: 13px 16px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  border: 1px solid var(--rule);
  border-radius: 12px;
  background: #fafbf9;
}
.plan-b-progress b { color: var(--route-green); font-size: 13px; }
.plan-b-progress span { color: var(--ledger-soft); font-size: 11px; }

body[data-design="carrot"] .allocation-control,
body[data-design="carrot"] .allocation-card,
body[data-design="carrot"] .plan-b-progress {
  border: 1.5px solid #171717;
  color: #171717;
  box-shadow: 3px 3px 0 #eceeea;
}
body[data-design="carrot"] .allocation-control {
  border-radius: 18px;
  background: #fff;
}
body[data-design="carrot"] .allocation-card { border-radius: 15px; }
body[data-design="carrot"] .hold-card { background: #ededff; }
body[data-design="carrot"] .defi-card { background: #e8f9ed; }
body[data-design="carrot"] .allocation-slider-label input { accent-color: var(--carrot-purple); }
body[data-design="carrot"] .plan-b-progress {
  background: #fff0e3;
  box-shadow: 3px 3px 0 var(--carrot-orange);
}
body[data-design="carrot"] .plan-b-progress b { color: #ad4f00; }

@media (max-width: 560px) {
  .allocation-control { padding: 16px; }
  .allocation-cards { grid-template-columns: 1fr; }
  .allocation-divider { min-height: 12px; }
  .allocation-divider { font-size: 0; }
  .allocation-divider::after { content: "и"; font-size: 12px; text-transform: uppercase; }
  .allocation-card { padding: 15px; }
  .plan-b-progress { align-items: flex-start; flex-direction: column; }
}

@media (max-width: 420px) {
  .brand small { display: none; }
  .global-route a span { display: none; }
  .global-route > span { flex: 1; }
  .answer-grid, .answer-grid-three, .time-grid, .workload-grid { grid-template-columns: 1fr; }
  .answer-grid > label { min-height: 82px; }
  .capital-control { padding: 18px; }
  .first-position dl, .position-sequence { grid-template-columns: 1fr; }
  .first-position dl div, .position-sequence li { border-right: 0; }
  .result-actions { flex-direction: column-reverse; }
  .primary-action, .secondary-action { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; transition-duration: .01ms !important; }
}

/* Design comparison lab. The switcher changes only presentation; form state and logic stay shared. */
body { padding-bottom: 82px; }
.design-switcher {
  position: fixed;
  z-index: 60;
  left: 50%;
  bottom: 18px;
  width: min(760px, calc(100% - 28px));
  min-height: 54px;
  padding: 6px 7px 6px 14px;
  display: flex;
  align-items: center;
  gap: 12px;
  border: 1px solid rgba(23, 32, 28, .16);
  border-radius: 12px;
  background: rgba(255, 255, 255, .94);
  box-shadow: 0 8px 24px rgba(23, 32, 28, .11);
  backdrop-filter: blur(18px);
  transform: translateX(-50%);
}
.design-switcher-label {
  flex: 0 0 auto;
  color: #666b66;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.design-switcher-tabs {
  min-width: 0;
  flex: 1;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 4px;
}
.design-switcher button {
  min-width: 0;
  min-height: 40px;
  padding: 6px 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  border: 0;
  border-radius: 7px;
  background: transparent;
  color: #686e69;
  cursor: pointer;
}
.design-switcher button b { font-size: 8px; opacity: .62; }
.design-switcher button span { overflow: hidden; font-size: 11px; font-weight: 700; text-overflow: ellipsis; }
.design-switcher button:hover { background: #f2f3ef; color: #17201c; }
.design-switcher button[aria-selected="true"] { background: #17201c; color: #fff; }
.design-switcher button[aria-selected="true"] b { color: #f2cf31; opacity: 1; }

/* Variant 02 — Route: a warm financial journey with a dark navigation instrument. */
body[data-design="route"] {
  --paper: #eeeae0;
  --sheet: #fffdf8;
  --ledger: #171b18;
  --ledger-soft: #515852;
  --route-green: #244f3c;
  --route-green-soft: #e7efe8;
  --route-green-line: #b9cbbd;
  --signal-yellow: #efd252;
  --signal-yellow-strong: #b99a11;
  --signal-yellow-soft: #fbf3ca;
  --signal-yellow-line: #d9c45d;
  --rule: #d8d2c5;
  --rule-strong: #aaa497;
  --muted: #6f746d;
  --radius: 12px;
  font-family: "Golos Text", Inter, sans-serif;
  background:
    radial-gradient(circle at 18% 0%, rgba(239, 210, 82, .14), transparent 24rem),
    var(--paper);
}
body[data-design="route"] .topbar {
  border-color: rgba(255, 255, 255, .1);
  background: rgba(23, 27, 24, .96);
  color: #fffdf8;
}
body[data-design="route"] .brand-mark,
body[data-design="route"] .brand-mark::before,
body[data-design="route"] .brand-mark::after,
body[data-design="route"] .brand-mark i { border-color: rgba(255, 255, 255, .72); }
body[data-design="route"] .brand small { color: #efd252; }
body[data-design="route"] .global-route a { color: #9ba19c; }
body[data-design="route"] .global-route a.active { color: #fff; }
body[data-design="route"] .global-route a.active b { border-color: #efd252; background: #efd252; color: #171b18; }
body[data-design="route"] .global-route > span { background: #444a45; }
body[data-design="route"] .reset-button { border-color: #4b514c; background: transparent; color: #e5e7e3; }
body[data-design="route"] main { width: min(1320px, calc(100% - 48px)); }
body[data-design="route"] .route-intro { min-height: 138px; }
body[data-design="route"] .eyebrow { color: #806a12; }
body[data-design="route"] .route-intro h1 { font-size: clamp(30px, 3.15vw, 46px); }
body[data-design="route"] .route-intro h1 span { position: relative; color: #244f3c; }
body[data-design="route"] .route-intro h1 span::after {
  content: "";
  position: absolute;
  z-index: -1;
  right: -4px;
  bottom: 2px;
  left: -4px;
  height: .28em;
  background: rgba(239, 210, 82, .65);
  transform: rotate(-1deg);
}
body[data-design="route"] .time-map b { font-variant-numeric: tabular-nums; }
body[data-design="route"] .workbench { grid-template-columns: 248px minmax(0, 1fr); gap: 24px; padding-top: 24px; }
body[data-design="route"] .journey-card {
  top: 94px;
  padding: 22px;
  border-color: #29312c;
  background: #171b18;
  color: #fffdf8;
}
body[data-design="route"] .journey-head small,
body[data-design="route"] .journey-card li,
body[data-design="route"] .journey-card li small,
body[data-design="route"] .privacy-note p { color: #9ea49f; }
body[data-design="route"] .journey-head strong,
body[data-design="route"] .journey-card li.active,
body[data-design="route"] .journey-card li.done,
body[data-design="route"] .journey-card li strong,
body[data-design="route"] .privacy-note strong { color: #fffdf8; }
body[data-design="route"] .journey-line { background: #353b37; }
body[data-design="route"] .journey-line i { background: #efd252; }
body[data-design="route"] .journey-card li > b { border-color: #4a514c; background: #202622; }
body[data-design="route"] .journey-card li:not(:last-child)::after,
body[data-design="route"] .privacy-note { border-color: #343a36; }
body[data-design="route"] .journey-card li.active > b { border-color: #efd252; background: #efd252; color: #171b18; }
body[data-design="route"] .journey-card li.done > b { border-color: #53665a; background: #27352e; color: #dce8df; }
body[data-design="route"] #v2Form {
  min-height: 640px;
  border-color: #d4ccbd;
  background: var(--sheet);
  box-shadow: 0 1px 0 rgba(23, 27, 24, .04);
}
body[data-design="route"] .screen { min-height: 546px; padding-top: 48px; }
body[data-design="route"] .screen-counter { color: #806a12; }
body[data-design="route"] .screen h2 { max-width: 740px; font-size: clamp(29px, 3vw, 42px); }
body[data-design="route"] .answer-list > label,
body[data-design="route"] .answer-grid > label,
body[data-design="route"] .scenario-list fieldset { background: rgba(255, 255, 255, .72); }
body[data-design="route"] .answer-list > label:hover,
body[data-design="route"] .answer-grid > label:hover { background: #fff; }
body[data-design="route"] .form-actions { background: #f8f5ee; }
body[data-design="route"] .next-button,
body[data-design="route"] .primary-action { border-color: #244f3c; background: #244f3c; color: #fff; }
body[data-design="route"] .next-button:hover:not(:disabled),
body[data-design="route"] .primary-action:hover { background: #193c2c; }
body[data-design="route"] .design-switcher { border-color: #343a36; background: rgba(23, 27, 24, .95); }
body[data-design="route"] .design-switcher-label { color: #9ea49f; }
body[data-design="route"] .design-switcher button { color: #aeb3af; }
body[data-design="route"] .design-switcher button:hover { background: #29302b; color: #fff; }
body[data-design="route"] .design-switcher button[aria-selected="true"] { background: #efd252; color: #171b18; }
body[data-design="route"] .design-switcher button[aria-selected="true"] b { color: #695600; }

/* Variant 03 — Focus: remove ceremony and let the current decision lead. */
body[data-design="focus"] {
  --paper: #f2f3ef;
  --sheet: #ffffff;
  --ledger: #17201c;
  --ledger-soft: #4d5651;
  --route-green: #176b4d;
  --route-green-soft: #e8f3ed;
  --route-green-line: #b9d3c6;
  --signal-yellow: #f2cf31;
  --signal-yellow-strong: #c7a900;
  --signal-yellow-soft: #fff8d8;
  --signal-yellow-line: #e8d16d;
  --rule: #e0e3df;
  --rule-strong: #bdc3be;
  --muted: #69716c;
  --radius: 10px;
  font-family: "Golos Text", Inter, sans-serif;
}
body[data-design="focus"] .topbar-shell { min-height: 62px; }
body[data-design="focus"] .brand small { color: #176b4d; }
body[data-design="focus"] .global-route a.active b { border-color: #17201c; background: #17201c; color: #fff; }
body[data-design="focus"] main { width: min(1080px, calc(100% - 40px)); }
body[data-design="focus"] .route-intro {
  min-height: 112px;
  display: grid;
  grid-template-columns: 1fr auto;
}
body[data-design="focus"] .eyebrow { margin-bottom: 5px; color: #176b4d; font-size: 9px; }
body[data-design="focus"] .route-intro h1 { font-size: clamp(25px, 2.6vw, 36px); letter-spacing: -.035em; }
body[data-design="focus"] .route-intro h1 span { color: #17201c; }
body[data-design="focus"] .route-intro-copy { max-width: 640px; margin-top: 7px; font-size: 11px; }
body[data-design="focus"] .time-map span:nth-of-type(2),
body[data-design="focus"] .time-map span:nth-of-type(3),
body[data-design="focus"] .time-map i:nth-of-type(2) { display: none; }
body[data-design="focus"] .time-map i { width: 28px; }
body[data-design="focus"] .workbench { display: block; padding: 18px 0 54px; }
body[data-design="focus"] .journey-card {
  position: sticky;
  z-index: 12;
  top: 74px;
  margin-bottom: 12px;
  padding: 11px 14px;
  display: grid;
  grid-template-columns: 130px 1fr;
  gap: 14px;
  border-color: #d8dcd7;
  background: rgba(255, 255, 255, .94);
  backdrop-filter: blur(14px);
}
body[data-design="focus"] .journey-head { margin: 0; align-items: center; }
body[data-design="focus"] .journey-line { grid-column: 1; height: 2px; margin-top: -8px; align-self: end; }
body[data-design="focus"] .journey-card ol {
  grid-row: 1 / span 2;
  grid-column: 2;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 4px;
}
body[data-design="focus"] .journey-card li {
  min-height: 38px;
  display: flex;
  align-items: center;
  gap: 7px;
}
body[data-design="focus"] .journey-card li:not(:last-child)::after,
body[data-design="focus"] .journey-card li small,
body[data-design="focus"] .privacy-note { display: none; }
body[data-design="focus"] .journey-card li > b { flex: 0 0 27px; width: 27px; height: 27px; }
body[data-design="focus"] .journey-card li > span { padding: 0; }
body[data-design="focus"] .journey-card li strong { font-size: 10px; }
body[data-design="focus"] #v2Form { min-height: 590px; }
body[data-design="focus"] .screen { min-height: 500px; padding: 44px clamp(26px, 7vw, 76px) 34px; }
body[data-design="focus"] .screen-counter { color: #176b4d; }
body[data-design="focus"] .screen h2 { font-size: clamp(28px, 3.4vw, 42px); }
body[data-design="focus"] .screen-lead { max-width: 670px; margin: 13px 0 24px; font-size: 14px; }
body[data-design="focus"] .form-actions { padding-right: clamp(26px, 7vw, 76px); padding-left: clamp(26px, 7vw, 76px); }
body[data-design="focus"] .next-button,
body[data-design="focus"] .primary-action { border-color: #17201c; background: #17201c; color: #fff; }
body[data-design="focus"] .answer-list label:has(input:checked),
body[data-design="focus"] .answer-grid label:has(input:checked),
body[data-design="focus"] .scenario-list label:has(input:checked) { border-color: #176b4d; background: #e8f3ed; }

@media (max-width: 760px) {
  .design-switcher {
    bottom: 10px;
    min-height: 50px;
    padding: 5px;
    border-radius: 10px;
  }
  .design-switcher-label { display: none; }
  .design-switcher button { min-height: 40px; padding: 5px 7px; }
  body[data-design="route"] main { width: min(100% - 28px, 1320px); }
  body[data-design="route"] .route-intro { min-height: 158px; }
  body[data-design="route"] .journey-card { padding: 14px; }
  body[data-design="route"] .journey-head strong { color: #fff; }
  body[data-design="route"] .journey-card li > b { background: #202622; }
  body[data-design="focus"] .topbar-shell,
  body[data-design="focus"] main,
  body[data-design="focus"] .page-footer { width: min(100% - 24px, 1080px); }
  body[data-design="focus"] .route-intro {
    min-height: auto;
    padding: 16px 0 12px;
    display: block;
  }
  body[data-design="focus"] .route-intro h1 { font-size: 25px; }
  body[data-design="focus"] .route-intro-copy { margin-top: 6px; }
  body[data-design="focus"] .time-map { margin-top: 12px; justify-content: flex-start; }
  body[data-design="focus"] .time-map i { width: 24px; flex: 0 0 24px; }
  body[data-design="focus"] .workbench { padding-top: 10px; }
  body[data-design="focus"] .journey-card {
    top: 112px;
    margin-bottom: 8px;
    padding: 10px 12px;
    display: block;
  }
  body[data-design="focus"] .journey-head { margin-bottom: 7px; }
  body[data-design="focus"] .journey-line { margin: 0; }
  body[data-design="focus"] .journey-card ol {
    margin-top: 8px;
    grid-template-columns: repeat(5, 1fr);
  }
  body[data-design="focus"] .journey-card li { justify-content: center; }
  body[data-design="focus"] .journey-card li > span { display: none; }
  body[data-design="focus"] .screen { padding: 28px 20px 24px; }
  body[data-design="focus"] .screen h2 { font-size: 29px; }
}

@media (max-width: 420px) {
  .design-switcher button b { display: none; }
  .design-switcher button span { font-size: 10px; }
  body[data-design="route"] .route-intro-copy { font-size: 12px; }
  body[data-design="focus"] .route-intro-copy { display: none; }
  body[data-design="focus"] .route-intro h1 { font-size: 22px; }
  body[data-design="focus"] .time-map { margin-top: 9px; }
  body[data-design="focus"] .time-map b { font-size: 15px; }
}

/* Variant 04 — Video reference: monochrome stage, highlighted type, one luminous profile object. */
body[data-design="video"] {
  --paper: #090909;
  --sheet: #111211;
  --ledger: #f6f6f2;
  --ledger-soft: #a1a39f;
  --route-green: #f1f1ec;
  --route-green-soft: #20211f;
  --route-green-line: #393b37;
  --signal-yellow: #f2cf31;
  --signal-yellow-strong: #d1ae00;
  --signal-yellow-soft: #292613;
  --signal-yellow-line: #625616;
  --warning-paper: #292613;
  --warning-ink: #f1d45a;
  --risk-paper: #271817;
  --risk-ink: #f08d83;
  --rule: #292a28;
  --rule-strong: #484a46;
  --muted: #7d807a;
  --radius: 14px;
  --ease: 180ms ease-out;
  font-family: "Golos Text", Inter, sans-serif;
  color-scheme: dark;
  background:
    radial-gradient(circle at 50% 35%, rgba(242, 207, 49, .045), transparent 28rem),
    #090909;
}
body[data-design="video"] button:focus-visible,
body[data-design="video"] a:focus-visible,
body[data-design="video"] input:focus-visible {
  outline-color: rgba(242, 207, 49, .72);
}
body[data-design="video"] .topbar {
  border-color: #242523;
  background: rgba(9, 9, 9, .9);
  color: #f6f6f2;
}
body[data-design="video"] .topbar-shell { min-height: 68px; }
body[data-design="video"] .brand-mark,
body[data-design="video"] .brand-mark::before,
body[data-design="video"] .brand-mark::after,
body[data-design="video"] .brand-mark i { border-color: #d9dbd6; }
body[data-design="video"] .brand small { color: #8e918b; }
body[data-design="video"] .global-route a { color: #6f726d; }
body[data-design="video"] .global-route a.active { color: #f6f6f2; }
body[data-design="video"] .global-route a b { border-color: #454743; background: #111211; }
body[data-design="video"] .global-route a.active b { border-color: #f6f6f2; background: #f6f6f2; color: #090909; }
body[data-design="video"] .global-route > span { background: #343532; }
body[data-design="video"] .reset-button {
  border-color: #323330;
  background: #151615;
  color: #e5e6e2;
  border-radius: 999px;
}
body[data-design="video"] main { position: relative; width: min(1400px, calc(100% - 48px)); }
body[data-design="video"] .route-intro {
  min-height: 270px;
  padding: 42px 0 32px;
  display: grid;
  justify-items: center;
  align-content: center;
  border-color: #242523;
  text-align: center;
}
body[data-design="video"] .route-intro > div:first-child { display: grid; justify-items: center; }
body[data-design="video"] .eyebrow { color: #82857f; font-size: 10px; letter-spacing: .17em; }
body[data-design="video"] .route-intro h1 {
  max-width: 1050px;
  font-size: clamp(44px, 6vw, 82px);
  font-weight: 500;
  line-height: .98;
  letter-spacing: -.055em;
}
body[data-design="video"] .route-intro h1 span {
  display: inline-block;
  padding: .02em .13em .08em;
  background: #f5f5f1;
  color: #090909;
  line-height: .9;
}
body[data-design="video"] .route-intro-copy {
  max-width: 720px;
  margin-top: 22px;
  color: #777a74;
  font-size: 14px;
  line-height: 1.55;
}
body[data-design="video"] .time-map { margin-top: 25px; }
body[data-design="video"] .time-map span { color: #696c67; }
body[data-design="video"] .time-map b { color: #ecece8; font-variant-numeric: tabular-nums; }
body[data-design="video"] .time-map i { background: #353633; }
body[data-design="video"] .workbench {
  position: relative;
  width: min(930px, calc(100% - 40px));
  margin: 0 auto;
  padding: 92px 0 96px;
  display: block;
}
body[data-design="video"] .journey-card {
  position: absolute;
  z-index: 4;
  inset: 0;
  padding: 0;
  border: 0;
  background: transparent;
  pointer-events: none;
}
body[data-design="video"] .journey-head,
body[data-design="video"] .journey-line,
body[data-design="video"] .privacy-note { display: none; }
body[data-design="video"] .journey-card ol { display: block; padding: 0; margin: 0; }
body[data-design="video"] .journey-card li {
  position: absolute;
  min-height: 0;
  width: max-content;
  padding: 8px 11px 8px 8px;
  display: flex;
  align-items: center;
  gap: 8px;
  border: 1px solid #30312f;
  border-radius: 999px;
  background: rgba(15, 16, 15, .93);
  color: #777a74;
  box-shadow: 0 5px 18px rgba(0, 0, 0, .18);
  backdrop-filter: blur(12px);
}
body[data-design="video"] .journey-card li:nth-child(1) { top: 22px; left: -112px; }
body[data-design="video"] .journey-card li:nth-child(2) { top: 138px; right: -136px; }
body[data-design="video"] .journey-card li:nth-child(3) { top: 370px; right: -152px; }
body[data-design="video"] .journey-card li:nth-child(4) { bottom: 116px; right: -98px; }
body[data-design="video"] .journey-card li:nth-child(5) { bottom: 42px; left: -96px; }
body[data-design="video"] .journey-card li:not(:last-child)::after { display: none; }
body[data-design="video"] .journey-card li > b {
  flex: 0 0 25px;
  width: 25px;
  height: 25px;
  border-color: #3d3f3b;
  background: #191a18;
  color: #8a8d87;
}
body[data-design="video"] .journey-card li > span { padding: 0; }
body[data-design="video"] .journey-card li strong { color: inherit; font-size: 10px; }
body[data-design="video"] .journey-card li small { display: none; }
body[data-design="video"] .journey-card li.active {
  border-color: #f2f2ed;
  background: #f2f2ed;
  color: #090909;
}
body[data-design="video"] .journey-card li.active > b {
  border-color: #090909;
  background: #090909;
  color: #f2cf31;
}
body[data-design="video"] .journey-card li.done { border-color: #474944; color: #d5d6d1; }
body[data-design="video"] .question-stage { position: relative; z-index: 2; }
body[data-design="video"] #v2Form {
  min-height: 650px;
  border: 1px solid transparent;
  border-radius: 18px;
  background:
    linear-gradient(#111211, #111211) padding-box,
    conic-gradient(from 205deg, #2f6d5b, #7a6320, #2c2d2b, #49314f, #2c2d2b, #2f6d5b) border-box;
  box-shadow: 0 0 42px rgba(242, 207, 49, .045);
}
body[data-design="video"] .screen {
  min-height: 554px;
  padding: 54px clamp(28px, 7vw, 82px) 40px;
  background: linear-gradient(145deg, rgba(255, 255, 255, .018), transparent 35%);
  animation: none;
}
body[data-design="video"] .screen-counter { color: #8b8e88; font-size: 10px; letter-spacing: .15em; }
body[data-design="video"] .screen h2 {
  max-width: 760px;
  color: #f7f7f3;
  font-size: clamp(32px, 4vw, 50px);
  font-weight: 500;
  letter-spacing: -.045em;
}
body[data-design="video"] .screen-lead { color: #8d908a; font-size: 14px; }
body[data-design="video"] .text-entry > span,
body[data-design="video"] .followup-field > span { color: #989b95; }
body[data-design="video"] .text-entry input,
body[data-design="video"] .followup-field input,
body[data-design="video"] .preset-row input,
body[data-design="video"] .contribution-fields label div,
body[data-design="video"] .day-range-fields input {
  border-color: #393b37;
  background: #0c0d0c;
  color: #f4f4ef;
}
body[data-design="video"] .text-entry input::placeholder,
body[data-design="video"] .followup-field input::placeholder { color: #62655f; }
body[data-design="video"] .profile-transfer,
body[data-design="video"] .contribution-fields,
body[data-design="video"] .commission-split,
body[data-design="video"] .submission-panel {
  border-color: #343632;
  background: #171816;
}
body[data-design="video"] .profile-transfer b,
body[data-design="video"] .submission-panel b,
body[data-design="video"] .commission-split strong { color: #efefe9; }
body[data-design="video"] .profile-transfer span,
body[data-design="video"] .submission-panel span { color: #82857f; }
body[data-design="video"] .profile-transfer button,
body[data-design="video"] .preset-row button,
body[data-design="video"] .schedule-choice label,
body[data-design="video"] .profile-summary button,
body[data-design="video"] .secondary-action,
body[data-design="video"] .back-button {
  border-color: #3b3d39;
  background: #20211f;
  color: #f3f3ee;
}
body[data-design="video"] .answer-list > label,
body[data-design="video"] .answer-grid > label,
body[data-design="video"] .scenario-list fieldset,
body[data-design="video"] .risk-acknowledgement,
body[data-design="video"] .capital-control,
body[data-design="video"] .shortcut-map > span {
  border-color: #2e302d;
  background: #151614;
  color: #efefea;
}
body[data-design="video"] .answer-list > label:hover,
body[data-design="video"] .answer-grid > label:hover {
  border-color: #50524d;
  background: #1a1b19;
}
body[data-design="video"] .answer-list label small,
body[data-design="video"] .answer-grid small,
body[data-design="video"] .scenario-list legend small,
body[data-design="video"] .risk-acknowledgement small,
body[data-design="video"] .range-labels { color: #858882; }
body[data-design="video"] .answer-list label:has(input:checked),
body[data-design="video"] .answer-grid label:has(input:checked),
body[data-design="video"] .scenario-list label:has(input:checked),
body[data-design="video"] .risk-acknowledgement:has(input:checked) {
  border-color: #e9e9e4;
  background: #efefea;
  color: #090909;
}
body[data-design="video"] .answer-list label:has(input:checked) small,
body[data-design="video"] .answer-grid label:has(input:checked) small,
body[data-design="video"] .scenario-list label:has(input:checked) { color: #555853; }
body[data-design="video"] .answer-list label:has(input:checked) > i,
body[data-design="video"] .risk-acknowledgement:has(input:checked) > span:first-of-type {
  border-color: #090909;
  background: #090909;
  color: #f2cf31;
}
body[data-design="video"] .context-note { border-left-color: #d0d1cc; background: #171816; }
body[data-design="video"] .context-note b,
body[data-design="video"] .commission-note b { color: #f0f0eb; }
body[data-design="video"] .context-note span,
body[data-design="video"] .commission-note span { color: #898c86; }
body[data-design="video"] .context-note.warning,
body[data-design="video"] .commission-note { border-left-color: #a68e2b; background: #201e13; }
body[data-design="video"] .context-note.warning b { color: #f1d45a; }
body[data-design="video"] .schedule-choice label:has(input:checked) { border-color: #f1f1ec; background: #f1f1ec; color: #090909; }
body[data-design="video"] .form-actions {
  min-height: 94px;
  border-color: #292a28;
  background: #0d0e0d;
}
body[data-design="video"] .next-button,
body[data-design="video"] .primary-action {
  border-color: #f2f2ed;
  background: #f2f2ed;
  color: #090909;
  border-radius: 999px;
}
body[data-design="video"] .next-button:hover:not(:disabled),
body[data-design="video"] .primary-action:hover { background: #fff; }
body[data-design="video"] .next-button:disabled,
body[data-design="video"] .primary-action.disabled {
  border-color: #2b2c2a;
  background: #2b2c2a;
  color: #686b65;
}
body[data-design="video"] button,
body[data-design="video"] .primary-action,
body[data-design="video"] .secondary-action,
body[data-design="video"] .answer-list > label,
body[data-design="video"] .answer-grid > label {
  transition:
    transform 150ms ease-out,
    border-color 180ms ease-out,
    background-color 180ms ease-out,
    color 180ms ease-out;
}
body[data-design="video"] button:active,
body[data-design="video"] .primary-action:active,
body[data-design="video"] .secondary-action:active,
body[data-design="video"] .answer-list > label:active,
body[data-design="video"] .answer-grid > label:active { transform: scale(.97); }
body[data-design="video"] .save-state { color: #777a74; }
body[data-design="video"] .save-state i { background: #f2cf31; }
body[data-design="video"] .result-heading p,
body[data-design="video"] .first-position > p { color: #92958f; }
body[data-design="video"] .route-score,
body[data-design="video"] .readiness-badge {
  border-color: #4a4c47;
  background: #1a1b19;
  color: #f3f3ee;
}
body[data-design="video"] .recommendation-board,
body[data-design="video"] .position-sequence { border-color: #31322f; background: #111211; }
body[data-design="video"] .first-position dl,
body[data-design="video"] .first-position dl div,
body[data-design="video"] .position-sequence li { border-color: #30312e; }
body[data-design="video"] .profile-summary { border-color: #30312e; background: #151614; }
body[data-design="video"] .decision-note { background: #201e13; }
body[data-design="video"] .page-footer { border-color: #252624; color: #696c67; }
body[data-design="video"] .design-switcher {
  border-color: #30312e;
  background: rgba(18, 19, 18, .94);
}
body[data-design="video"] .design-switcher-label { color: #72756f; }
body[data-design="video"] .design-switcher button { color: #858882; }
body[data-design="video"] .design-switcher button:hover { background: #222321; color: #f2f2ed; }
body[data-design="video"] .design-switcher button[aria-selected="true"] { background: #f2f2ed; color: #090909; }
body[data-design="video"] .design-switcher button[aria-selected="true"] b { color: #8c7400; }

@media (max-width: 1180px) {
  body[data-design="video"] .workbench { padding-top: 84px; }
  body[data-design="video"] .journey-card {
    top: 22px;
    right: 0;
    bottom: auto;
    left: 0;
  }
  body[data-design="video"] .journey-card ol {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 6px;
  }
  body[data-design="video"] .journey-card li,
  body[data-design="video"] .journey-card li:nth-child(n) {
    position: static;
    width: auto;
    justify-content: center;
  }
  body[data-design="video"] .journey-card li > span { display: none; }
}

@media (max-width: 760px) {
  body[data-design="video"] .topbar-shell,
  body[data-design="video"] main,
  body[data-design="video"] .page-footer { width: min(100% - 24px, 1400px); }
  body[data-design="video"] .route-intro {
    min-height: 230px;
    padding: 28px 0 24px;
  }
  body[data-design="video"] .route-intro h1 { font-size: clamp(36px, 12vw, 54px); }
  body[data-design="video"] .route-intro-copy { max-width: 540px; margin-top: 16px; font-size: 12px; }
  body[data-design="video"] .time-map { margin-top: 18px; }
  body[data-design="video"] .workbench {
    width: 100%;
    padding: 76px 0 56px;
  }
  body[data-design="video"] .journey-card { top: 14px; }
  body[data-design="video"] .journey-card li { padding: 6px; border-radius: 50%; }
  body[data-design="video"] .journey-card li > b { width: 28px; height: 28px; }
  body[data-design="video"] #v2Form { min-height: 0; border-radius: 14px; }
  body[data-design="video"] .screen { min-height: 0; padding: 34px 20px 28px; }
  body[data-design="video"] .screen h2 { font-size: 31px; }
  body[data-design="video"] .screen-lead { margin-bottom: 24px; }
}

@media (max-width: 420px) {
  body[data-design="video"] .route-intro { min-height: 206px; }
  body[data-design="video"] .route-intro h1 { font-size: 38px; }
  body[data-design="video"] .route-intro-copy { display: none; }
  body[data-design="video"] .time-map span:nth-of-type(2),
  body[data-design="video"] .time-map span:nth-of-type(3),
  body[data-design="video"] .time-map i:nth-of-type(2) { display: none; }
  body[data-design="video"] .time-map { justify-content: center; }
  body[data-design="video"] .time-map i { flex: 0 0 32px; }
  body[data-design="video"] .profile-transfer { gap: 13px; }
}

/* Variant 05 — Carrot: bright editorial SaaS energy adapted to a private DeFi profile. */
body[data-design="carrot"] {
  --paper: #fbfbf7;
  --sheet: #fff;
  --ledger: #161616;
  --ledger-soft: #5e625f;
  --route-green: #00a958;
  --route-green-soft: #e5f9eb;
  --route-green-line: #8ad8aa;
  --signal-yellow: #d0ff37;
  --signal-yellow-strong: #8eae19;
  --signal-yellow-soft: #f2ffc7;
  --signal-yellow-line: #b9dc46;
  --warning-paper: #fff1e3;
  --warning-ink: #9d4700;
  --risk-paper: #fff0ed;
  --risk-ink: #a9342a;
  --rule: #d9dcd7;
  --rule-strong: #171717;
  --muted: #696d69;
  --radius: 22px;
  --carrot-green: #00bf63;
  --carrot-orange: #fc7c01;
  --carrot-lime: #d0ff37;
  --carrot-lilac: #a7a7ff;
  --carrot-purple: #7b36ff;
  --ease: 160ms ease-out;
  font-family: "Golos Text", Inter, sans-serif;
  background:
    radial-gradient(circle at 9% 22%, rgba(167, 167, 255, .12), transparent 19rem),
    radial-gradient(circle at 91% 35%, rgba(0, 191, 99, .09), transparent 22rem),
    #fbfbf7;
  padding-bottom: 0;
}
body[data-design="carrot"] .carrot-announcement {
  min-height: 42px;
  padding: 9px 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  background: var(--carrot-green);
  color: #111;
  font-size: 12px;
}
body[data-design="carrot"] .carrot-announcement strong { font-weight: 800; }
body[data-design="carrot"] .carrot-announcement span { font-weight: 600; }
body[data-design="carrot"] .carrot-announcement i {
  display: inline-block;
  margin-left: 5px;
  font-style: normal;
  transition: transform var(--ease);
}
body[data-design="carrot"] .carrot-announcement:hover i { transform: translateX(4px); }
body[data-design="carrot"] button:focus-visible,
body[data-design="carrot"] a:focus-visible,
body[data-design="carrot"] input:focus-visible {
  outline: 3px solid rgba(123, 54, 255, .28);
  outline-offset: 3px;
}
body[data-design="carrot"] .topbar {
  top: 0;
  border-bottom: 1.5px solid #171717;
  background: rgba(255, 255, 255, .94);
}
body[data-design="carrot"] .topbar-shell { min-height: 76px; }
body[data-design="carrot"] .brand-mark {
  border: 2px solid #171717;
  background: var(--carrot-lime);
  box-shadow: 3px 3px 0 #171717;
}
body[data-design="carrot"] .brand-mark::before,
body[data-design="carrot"] .brand-mark::after,
body[data-design="carrot"] .brand-mark i { border-color: #171717; }
body[data-design="carrot"] .brand-mark::after { background: var(--carrot-orange); }
body[data-design="carrot"] .brand strong { font-size: 15px; letter-spacing: -.02em; }
body[data-design="carrot"] .brand small { color: #555; font-size: 9px; }
body[data-design="carrot"] .global-route a { color: #777; }
body[data-design="carrot"] .global-route a.active { color: #171717; }
body[data-design="carrot"] .global-route a b {
  border: 1.5px solid #171717;
  background: #fff;
  color: #171717;
}
body[data-design="carrot"] .global-route a.active b {
  border-color: #171717;
  background: var(--carrot-lime);
  color: #171717;
  box-shadow: 2px 2px 0 #171717;
}
body[data-design="carrot"] .global-route > span { height: 1.5px; background: #171717; }
body[data-design="carrot"] .reset-button {
  padding: 10px 15px;
  border: 1.5px solid #171717;
  border-radius: 999px;
  background: #fff;
  color: #171717;
}
body[data-design="carrot"] .reset-button:hover {
  background: var(--carrot-lime);
  box-shadow: 2px 2px 0 #171717;
}
body[data-design="carrot"] main { width: min(1360px, calc(100% - 48px)); }
body[data-design="carrot"] .route-intro {
  position: relative;
  min-height: 420px;
  padding: 56px 128px 48px;
  display: grid;
  justify-items: center;
  align-content: center;
  overflow: hidden;
  border-bottom: 0;
  text-align: center;
}
body[data-design="carrot"] .route-intro::before,
body[data-design="carrot"] .route-intro::after {
  position: absolute;
  display: grid;
  place-items: center;
  border: 2px solid #171717;
  color: #171717;
  font-weight: 800;
  line-height: 1;
  box-shadow: 7px 7px 0 #171717;
  transform: rotate(-8deg);
}
body[data-design="carrot"] .route-intro::before {
  content: "↗";
  top: 76px;
  left: 34px;
  width: 92px;
  height: 68px;
  border-radius: 52% 48% 44% 56%;
  background: var(--carrot-lilac);
  font-size: 42px;
}
body[data-design="carrot"] .route-intro::after {
  content: "✓";
  right: 42px;
  bottom: 72px;
  width: 76px;
  height: 76px;
  border-radius: 50% 44% 52% 48%;
  background: var(--carrot-orange);
  font-size: 32px;
  transform: rotate(9deg);
}
body[data-design="carrot"] .route-intro > div:first-child {
  position: relative;
  z-index: 1;
  display: grid;
  justify-items: center;
}
body[data-design="carrot"] .route-intro > div:first-child::before {
  content: "$";
  position: absolute;
  right: -120px;
  top: -8px;
  width: 54px;
  height: 54px;
  display: grid;
  place-items: center;
  border: 2px solid #171717;
  border-radius: 16px 22px 15px 24px;
  background: var(--carrot-lime);
  box-shadow: 5px 5px 0 #171717;
  color: #171717;
  font-size: 26px;
  font-weight: 800;
  transform: rotate(7deg);
}
body[data-design="carrot"] .eyebrow {
  margin-bottom: 18px;
  padding: 8px 13px;
  border-radius: 999px;
  background: #ededff;
  color: #4336a3;
  font-size: 11px;
  letter-spacing: .08em;
}
body[data-design="carrot"] .route-intro h1 {
  max-width: 980px;
  font-size: clamp(48px, 6.2vw, 82px);
  font-weight: 700;
  line-height: .98;
  letter-spacing: -.055em;
}
body[data-design="carrot"] .route-intro h1 span {
  position: relative;
  display: inline-block;
  z-index: 0;
  padding: 0 .08em .06em;
  color: #171717;
  white-space: nowrap;
}
body[data-design="carrot"] .route-intro h1 span::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 20% -.02em 3%;
  background: var(--carrot-lime);
  transform: rotate(-1deg);
}
body[data-design="carrot"] .route-intro h1 span::after {
  content: "";
  position: absolute;
  left: 8%;
  right: 7%;
  bottom: -.14em;
  height: 8px;
  border-top: 3px solid var(--carrot-orange);
  border-radius: 50%;
  transform: rotate(-2deg);
}
body[data-design="carrot"] .route-intro-copy {
  max-width: 680px;
  margin-top: 27px;
  color: #545854;
  font-size: 15px;
  line-height: 1.55;
}
body[data-design="carrot"] .time-map {
  position: relative;
  z-index: 2;
  margin-top: 29px;
  padding: 10px 16px;
  border: 1.5px solid #171717;
  border-radius: 999px;
  background: #fff;
  box-shadow: 4px 4px 0 rgba(23, 23, 23, .12);
}
body[data-design="carrot"] .time-map span { color: #666; font-size: 9px; }
body[data-design="carrot"] .time-map b { color: #171717; font-size: 15px; }
body[data-design="carrot"] .time-map i { width: 32px; background: #171717; }
body[data-design="carrot"] .workbench {
  grid-template-columns: 278px minmax(0, 1fr);
  gap: 30px;
  padding: 16px 0 80px;
}
body[data-design="carrot"][data-current-screen="identity"] .route-intro { display: none; }
body[data-design="carrot"][data-current-screen="identity"] .workbench { padding-top: 24px; }
body[data-design="carrot"] .journey-card {
  top: 96px;
  padding: 24px;
  border: 1.5px solid #171717;
  border-radius: 24px;
  background: #fff;
  box-shadow: 7px 7px 0 var(--carrot-lilac);
}
body[data-design="carrot"] .journey-head small { color: #656965; }
body[data-design="carrot"] .journey-head strong {
  padding: 5px 8px;
  border-radius: 999px;
  background: #e5f9eb;
  color: #007c42;
}
body[data-design="carrot"] .journey-line {
  height: 6px;
  border: 1px solid #171717;
  border-radius: 999px;
  background: #fff;
}
body[data-design="carrot"] .journey-line i { background: var(--carrot-green); }
body[data-design="carrot"] .journey-card li { min-height: 72px; color: #777b77; }
body[data-design="carrot"] .journey-card li:not(:last-child)::after { width: 2px; background: #cfd2ce; }
body[data-design="carrot"] .journey-card li > b {
  border: 1.5px solid #171717;
  background: #fff;
  color: #171717;
}
body[data-design="carrot"] .journey-card li.active > b {
  border-color: #171717;
  background: var(--carrot-lime);
  box-shadow: 2px 2px 0 #171717;
  color: #171717;
}
body[data-design="carrot"] .journey-card li.done > b {
  border-color: #171717;
  background: var(--carrot-green);
  color: #171717;
}
body[data-design="carrot"] .privacy-note { border-color: #171717; }
body[data-design="carrot"] .privacy-note > span {
  color: var(--carrot-purple);
  font-size: 25px;
}
body[data-design="carrot"] #v2Form {
  min-height: 700px;
  border: 1.5px solid #171717;
  border-radius: 28px;
  background: #fff;
  box-shadow: 9px 9px 0 #dff2e3;
}
body[data-design="carrot"] .screen {
  min-height: 602px;
  padding: 58px clamp(28px, 6vw, 78px) 42px;
  animation: none;
}
body[data-design="carrot"] .screen-counter {
  width: fit-content;
  margin-bottom: 18px;
  padding: 7px 10px;
  border-radius: 999px;
  background: #fff0e3;
  color: #ad4f00;
  font-size: 10px;
  letter-spacing: .08em;
}
body[data-design="carrot"] .screen h2 {
  max-width: 860px;
  color: #171717;
  font-size: clamp(36px, 4.2vw, 56px);
  font-weight: 700;
  line-height: 1.02;
  letter-spacing: -.05em;
}
body[data-design="carrot"] .screen-lead {
  max-width: 760px;
  margin: 18px 0 31px;
  color: #626662;
  font-size: 15px;
  line-height: 1.58;
}
body[data-design="carrot"] .text-entry > span,
body[data-design="carrot"] .followup-field > span { color: #343734; }
body[data-design="carrot"] .text-entry input,
body[data-design="carrot"] .followup-field input {
  min-height: 62px;
  padding: 14px 18px;
  border: 1.5px solid #171717;
  border-radius: 14px;
  background: #fff;
  color: #171717;
  box-shadow: 3px 3px 0 #ededff;
}
body[data-design="carrot"] .text-entry input:focus,
body[data-design="carrot"] .followup-field input:focus { box-shadow: 4px 4px 0 var(--carrot-lilac); }
body[data-design="carrot"] .profile-transfer,
body[data-design="carrot"] .cloud-auth,
body[data-design="carrot"] .contribution-fields,
body[data-design="carrot"] .commission-split,
body[data-design="carrot"] .submission-panel {
  border: 1.5px solid #171717;
  border-radius: 16px;
  background: #ededff;
}
body[data-design="carrot"] .profile-transfer button,
body[data-design="carrot"] .cloud-auth button,
body[data-design="carrot"] .cloud-auth a,
body[data-design="carrot"] .preset-row button,
body[data-design="carrot"] .schedule-choice label,
body[data-design="carrot"] .profile-summary button,
body[data-design="carrot"] .secondary-action,
body[data-design="carrot"] .back-button {
  border: 1.5px solid #171717;
  border-radius: 999px;
  background: #fff;
  color: #171717;
}
body[data-design="carrot"] .answer-list > label,
body[data-design="carrot"] .answer-grid > label,
body[data-design="carrot"] .scenario-list fieldset,
body[data-design="carrot"] .risk-acknowledgement,
body[data-design="carrot"] .capital-control,
body[data-design="carrot"] .shortcut-map > span {
  border: 1.5px solid #171717;
  border-radius: 16px;
  background: #fff;
  color: #171717;
  box-shadow: 3px 3px 0 #eceeea;
}
body[data-design="carrot"] .answer-list > label:hover,
body[data-design="carrot"] .answer-grid > label:hover {
  border-color: #171717;
  background: #f7ffe0;
  box-shadow: 4px 4px 0 #171717;
  transform: translate(-1px, -1px);
}
body[data-design="carrot"] .answer-list label:has(input:checked),
body[data-design="carrot"] .answer-grid label:has(input:checked),
body[data-design="carrot"] .scenario-list label:has(input:checked),
body[data-design="carrot"] .risk-acknowledgement:has(input:checked) {
  border-color: #171717;
  background: var(--carrot-lime);
  color: #171717;
  box-shadow: 4px 4px 0 #171717;
}
body[data-design="carrot"] .answer-list label:has(input:checked) > i,
body[data-design="carrot"] .risk-acknowledgement:has(input:checked) > span:first-of-type {
  border-color: #171717;
  background: #171717;
  color: var(--carrot-lime);
}
body[data-design="carrot"] .recommended-choice > b {
  border: 1px solid #171717;
  border-radius: 999px;
  background: var(--carrot-orange);
  color: #171717;
}
body[data-design="carrot"] .capital-control { background: #f8f8ff; }
body[data-design="carrot"] #capitalRange,
body[data-design="carrot"] .commission-split input { accent-color: var(--carrot-purple); }
body[data-design="carrot"] .preset-row button.recommended {
  border-color: #171717;
  background: var(--carrot-lime);
}
body[data-design="carrot"] .contribution-fields,
body[data-design="carrot"] .commission-split { background: #e8f9ed; }
body[data-design="carrot"] .contribution-fields label div,
body[data-design="carrot"] .day-range-fields input {
  border: 1.5px solid #171717;
  border-radius: 11px;
}
body[data-design="carrot"] .schedule-choice label:has(input:checked) {
  border-color: #171717;
  background: var(--carrot-lime);
  color: #171717;
}
body[data-design="carrot"] .context-note {
  border: 1.5px solid #171717;
  border-left-width: 7px;
  border-radius: 13px;
  background: #e8f9ed;
}
body[data-design="carrot"] .context-note.warning,
body[data-design="carrot"] .commission-note {
  border-left-color: var(--carrot-orange);
  background: #fff0e3;
}
body[data-design="carrot"] .form-actions {
  min-height: 98px;
  border-color: #171717;
  background: #fafaf7;
}
body[data-design="carrot"] .next-button,
body[data-design="carrot"] .primary-action {
  min-height: 48px;
  padding-right: 20px;
  padding-left: 20px;
  border: 1.5px solid #171717;
  border-radius: 999px;
  background: #171717;
  color: #fff;
  box-shadow: 4px 4px 0 var(--carrot-lime);
}
body[data-design="carrot"] .next-button:hover:not(:disabled),
body[data-design="carrot"] .primary-action:hover {
  background: var(--carrot-purple);
  box-shadow: 4px 4px 0 #171717;
}
body[data-design="carrot"] .next-button:disabled,
body[data-design="carrot"] .primary-action.disabled {
  border-color: #c8cbc7;
  background: #d9dcd8;
  box-shadow: none;
  color: #777b77;
}
body[data-design="carrot"] button,
body[data-design="carrot"] .primary-action,
body[data-design="carrot"] .secondary-action,
body[data-design="carrot"] .answer-list > label,
body[data-design="carrot"] .answer-grid > label {
  transition:
    transform 150ms ease-out,
    box-shadow 150ms ease-out,
    border-color 150ms ease-out,
    background-color 150ms ease-out,
    color 150ms ease-out;
}
body[data-design="carrot"] button:active,
body[data-design="carrot"] .primary-action:active,
body[data-design="carrot"] .secondary-action:active,
body[data-design="carrot"] .answer-list > label:active,
body[data-design="carrot"] .answer-grid > label:active { transform: scale(.97); }
body[data-design="carrot"] .save-state i { background: var(--carrot-green); }
body[data-design="carrot"] .readiness-badge {
  border: 1px solid #171717;
  border-radius: 999px;
  background: #e8f9ed;
  color: #007740;
}
body[data-design="carrot"] .route-score {
  border: 1.5px solid #171717;
  background: var(--carrot-lime);
  box-shadow: 4px 4px 0 #171717;
}
body[data-design="carrot"] .recommendation-board,
body[data-design="carrot"] .position-sequence {
  border: 1.5px solid #171717;
  border-radius: 16px;
}
body[data-design="carrot"] .profile-summary { background: #ededff; }
body[data-design="carrot"] .decision-note { background: #fff0e3; }
body[data-design="carrot"] .position-sequence li.current { background: var(--carrot-lime); }
body[data-design="carrot"] .page-footer { border-color: #171717; }
body[data-design="carrot"] .design-switcher {
  border: 1.5px solid #171717;
  background: rgba(255, 255, 255, .96);
  box-shadow: 5px 5px 0 #171717;
}
body[data-design="carrot"] .design-switcher-label { color: #555; }
body[data-design="carrot"] .design-switcher button { color: #626662; }
body[data-design="carrot"] .design-switcher button:hover { background: #eef0eb; color: #171717; }
body[data-design="carrot"] .design-switcher button[aria-selected="true"] {
  background: var(--carrot-lime);
  color: #171717;
}
body[data-design="carrot"] .design-switcher button[aria-selected="true"] b { color: #6b2fdc; }

@media (max-width: 1040px) {
  body[data-design="carrot"] .route-intro { padding-right: 95px; padding-left: 95px; }
  body[data-design="carrot"] .route-intro > div:first-child::before { right: -75px; }
  body[data-design="carrot"] .workbench { grid-template-columns: 1fr; }
  body[data-design="carrot"] .journey-card {
    position: relative;
    top: auto;
    padding: 18px;
  }
  body[data-design="carrot"] .journey-card ol {
    grid-template-columns: repeat(5, 1fr);
    gap: 7px;
    padding-bottom: 0;
  }
  body[data-design="carrot"] .journey-card li {
    min-height: 0;
    display: flex;
    align-items: center;
    gap: 7px;
  }
  body[data-design="carrot"] .journey-card li:not(:last-child)::after,
  body[data-design="carrot"] .journey-card li small,
  body[data-design="carrot"] .privacy-note { display: none; }
  body[data-design="carrot"] .journey-card li > span { padding-top: 0; }
}

@media (max-width: 760px) {
  .design-switcher {
    gap: 0;
    padding: 5px;
  }
  .design-switcher-tabs { gap: 2px; }
  .design-switcher button { padding: 5px 3px; gap: 3px; }
  .design-switcher-label { display: none; }
  body[data-design="carrot"] .carrot-announcement {
    min-height: 38px;
    padding: 8px 14px;
    justify-content: space-between;
    gap: 10px;
    font-size: 10px;
  }
  body[data-design="carrot"] .carrot-announcement span { max-width: 210px; text-align: right; }
  body[data-design="carrot"] .topbar-shell,
  body[data-design="carrot"] main,
  body[data-design="carrot"] .page-footer { width: min(100% - 24px, 1360px); }
  body[data-design="carrot"] .topbar-shell { min-height: 64px; }
  body[data-design="carrot"] .route-intro {
    min-height: 340px;
    padding: 36px 38px 30px;
  }
  body[data-design="carrot"] .route-intro::before {
    top: 35px;
    left: -26px;
    width: 66px;
    height: 50px;
    font-size: 28px;
    box-shadow: 4px 4px 0 #171717;
  }
  body[data-design="carrot"] .route-intro::after {
    right: -19px;
    bottom: 59px;
    width: 58px;
    height: 58px;
    font-size: 24px;
    box-shadow: 4px 4px 0 #171717;
  }
  body[data-design="carrot"] .route-intro > div:first-child::before { display: none; }
  body[data-design="carrot"] .eyebrow { margin-bottom: 14px; font-size: 9px; }
  body[data-design="carrot"] .route-intro h1 { font-size: clamp(40px, 11.5vw, 58px); }
  body[data-design="carrot"] .route-intro-copy { margin-top: 21px; font-size: 13px; }
  body[data-design="carrot"] .time-map { margin-top: 21px; padding: 8px 11px; }
  body[data-design="carrot"] .time-map { width: fit-content; justify-content: center; }
  body[data-design="carrot"] .time-map span:nth-of-type(3),
  body[data-design="carrot"] .time-map i:nth-of-type(2) { display: none; }
  body[data-design="carrot"] .time-map i { width: 22px; margin: 0 8px; }
  body[data-design="carrot"] .workbench { gap: 20px; padding: 6px 0 54px; }
  body[data-design="carrot"] .journey-card {
    padding: 14px;
    border-radius: 18px;
    box-shadow: 5px 5px 0 var(--carrot-lilac);
  }
  body[data-design="carrot"] .journey-head { margin-bottom: 10px; }
  body[data-design="carrot"] .journey-card ol { gap: 3px; padding-top: 11px; }
  body[data-design="carrot"] .journey-card li { justify-content: center; }
  body[data-design="carrot"] .journey-card li > span { display: none; }
  body[data-design="carrot"] .journey-card li > b { width: 32px; height: 32px; }
  body[data-design="carrot"] #v2Form { min-height: 0; border-radius: 22px; box-shadow: 6px 6px 0 #dff2e3; }
  body[data-design="carrot"] .screen { min-height: 0; padding: 34px 20px 30px; }
  body[data-design="carrot"] .screen h2 { font-size: clamp(32px, 9.8vw, 43px); }
  body[data-design="carrot"] .screen-lead { margin-bottom: 25px; font-size: 14px; }
  body[data-design="carrot"] .form-actions { padding: 17px 20px; }
}

@media (max-width: 420px) {
  .design-switcher button b { display: none; }
  .design-switcher button span { font-size: 9px; }
  body[data-design="carrot"] .carrot-announcement strong { display: none; }
  body[data-design="carrot"] .carrot-announcement span { max-width: none; margin: 0 auto; text-align: center; }
  body[data-design="carrot"] .route-intro {
    min-height: 310px;
    padding: 30px 26px 25px;
  }
  body[data-design="carrot"] .route-intro h1 { font-size: 38px; }
  body[data-design="carrot"] .route-intro-copy {
    display: block;
    max-width: 310px;
    margin-top: 17px;
    font-size: 12px;
    line-height: 1.45;
  }
  body[data-design="carrot"] .time-map { margin-top: 17px; }
  body[data-design="carrot"] .time-map span:nth-of-type(2),
  body[data-design="carrot"] .time-map i { display: none; }
  body[data-design="carrot"] .screen { padding: 30px 17px 26px; }
  body[data-design="carrot"] .screen h2 { font-size: 32px; }
  body[data-design="carrot"] .profile-transfer { gap: 14px; }
}
