:root{
  --bg:#F5F5F7;
  --ink:#1D1D1F;
  --ink-80:rgba(29,29,31,.82);
  --ink-72:rgba(29,29,31,.72);
  --ink-60:rgba(29,29,31,.60);
  --ink-45:rgba(29,29,31,.45);
  --ink-38:rgba(29,29,31,.38);
  --hairline:rgba(29,29,31,.10);
  --accent:#2F6AE0;
  --accent-press:#2457C3;
  --accent-sky:#5AC8FA;
  --accent-coral:#FF6B5E;
  --accent-tint:rgba(47,106,224,.08);
  --accent-tint-2:rgba(47,106,224,.20);
  --glass:rgba(255,255,255,.86);
  --glass-quiet:rgba(255,255,255,.58);
  --glass-bar:rgba(255,255,255,.82);
  --glass-edge:rgba(255,255,255,.96);
  --blur:blur(24px) saturate(1.25);
  --blur-bar:blur(20px) saturate(1.2);
  --shadow-panel:0 18px 54px rgba(24,39,75,.075), 0 2px 8px rgba(24,39,75,.04);
  --shadow-bar:0 10px 30px rgba(24,39,75,.07);
  --shadow-accent:0 14px 30px rgba(47,106,224,.22);
  --r-panel:26px;
  --r-sub:20px;
}

body{
  color:var(--ink-72);
  background:
    radial-gradient(800px 460px at 82% -8%, rgba(90,200,250,.12), transparent 66%),
    radial-gradient(620px 420px at 8% 108%, rgba(47,106,224,.08), transparent 64%),
    var(--bg);
}
body::before{ display:none }

h1,h2,h3{ letter-spacing:-.025em }
h1{ font-weight:600 }
h2,h3{ font-weight:500 }
.eyebrow{ color:var(--accent); font-weight:500 }

.panel{
  background:var(--glass);
  border:1px solid rgba(29,29,31,.055);
  box-shadow:var(--shadow-panel);
}
.panel--quiet{ background:rgba(255,255,255,.55); border-color:rgba(29,29,31,.05) }
.panel--current{ border-color:var(--accent-tint-2); box-shadow:0 20px 56px rgba(47,106,224,.11) }

.btn{
  border-radius:16px;
  background:linear-gradient(135deg, var(--accent) 0%, #3478EA 64%, var(--accent-sky) 140%);
  box-shadow:0 12px 28px rgba(47,106,224,.22);
  min-height:48px;
  letter-spacing:-.01em;
}
.btn--compact{ min-height:38px; border-radius:12px }
.btn--secondary{ background:transparent; box-shadow:none; border-color:rgba(29,29,31,.16) }
.btn--quiet{ background:none; box-shadow:none; border-radius:10px; color:var(--accent) }
.btn[disabled]{ background:rgba(29,29,31,.10); color:var(--ink-38) }

.pill{
  background:var(--glass-bar);
  border-color:rgba(29,29,31,.06);
  box-shadow:var(--shadow-bar);
}
.bar{ align-items:center }
.pill--brand{ box-shadow:none; background:rgba(255,255,255,.64) }
.brandmark{ filter:drop-shadow(0 6px 11px rgba(47,106,224,.18)) }
.field{ color:var(--ink); border-top-color:var(--hairline) }

.shell{ max-width:1360px; gap:28px; padding-block:28px }
.side{ width:218px; gap:14px }
.side__brand,.side__nav,.side__foot{
  background:rgba(255,255,255,.78);
  border:1px solid rgba(29,29,31,.055);
  box-shadow:0 16px 44px rgba(24,39,75,.06);
}
.side__resume{
  position:relative; overflow:hidden;
  background:linear-gradient(135deg, #2864DC, #3A83EF 72%, #65CFFA 145%);
  border-radius:22px; box-shadow:0 18px 38px rgba(47,106,224,.22);
}
.side__resume::after{
  content:''; position:absolute; width:110px; height:110px; border-radius:50%;
  inset-inline-end:-46px; inset-block-end:-70px;
  border:1px solid rgba(255,255,255,.36); box-shadow:0 0 0 16px rgba(255,255,255,.06);
}
.side__nav a{ border-radius:14px }
.side__nav a[aria-current="page"]{
  background:var(--accent-tint); color:var(--accent); box-shadow:none;
}
.side__nav a[aria-current="page"] svg{ stroke:var(--accent) }
.tabbar{
  background:rgba(255,255,255,.92); border-top:1px solid rgba(29,29,31,.08);
  border-radius:20px 20px 0 0;
  box-shadow:0 -8px 30px rgba(24,39,75,.10); backdrop-filter:blur(22px) saturate(1.2);
}
.tabbar a{ border-radius:15px }
.tabbar a[aria-current="page"]{
  background:linear-gradient(145deg, #2F6AE0, #3D7DE9); box-shadow:0 8px 20px rgba(47,106,224,.20);
}

.land-hero{ padding-block:22px 26px; max-width:760px }
.land-hero__mark{
  display:block; width:104px; height:104px; margin:0 auto 20px;
  filter:drop-shadow(0 14px 26px rgba(47,106,224,.24));
}
.land-hero h1{
  max-width:640px; margin-inline:auto; font-size:clamp(36px,5vw,62px);
  line-height:1.25; letter-spacing:-.045em;
}
.land-hero__sub{ color:var(--ink-60); font-size:14px; margin-top:8px }

.land-signin{
  display:flex; align-items:center; justify-content:space-between; gap:var(--s4);
  max-width:520px; margin:18px auto 0; padding:14px 18px;
  border:1px solid var(--accent-tint-2); border-radius:18px;
  background:linear-gradient(135deg, rgba(47,106,224,.07), rgba(90,200,250,.05));
}
.land-signin__txt{ display:flex; flex-direction:column; text-align:start; min-width:0 }
.land-signin__t{ font-size:14px; font-weight:600; color:var(--ink) }
.land-signin__d{ font-size:12.5px; color:var(--ink-60) }
.land-signin__btn{ flex:none; min-height:44px; padding-inline:24px }
@media (max-width:520px){
  .land-signin{ flex-direction:column; align-items:stretch; text-align:center }
  .land-signin__txt{ text-align:center }
  .land-signin__btn{ width:100% }
}
.land-dump{ max-width:760px; padding:0; overflow:hidden; border-radius:30px }
.land-mode{
  display:grid; grid-template-columns:1fr 1fr; gap:4px; padding:6px;
  border-bottom:1px solid var(--hairline); background:rgba(245,245,247,.72);
}
.land-mode__btn{
  border:0; min-height:46px; border-radius:14px; background:transparent;
  color:var(--ink-60); font:500 13px var(--font); cursor:pointer;
}
.land-mode__btn--active{ color:var(--accent); background:#fff; box-shadow:0 6px 18px rgba(24,39,75,.07) }
.land-mode__btn[disabled]{ opacity:.38; cursor:not-allowed }
.land-input-stage{ padding:26px 32px 0 }
.land-dump .field{ min-height:128px; font-size:14px; line-height:2.05 }
.land-mic-stage{ position:relative; padding:22px 32px 28px; overflow:hidden }
.land-mic-stage::before{
  content:''; position:absolute; inset-inline:32px; inset-block-start:50%; height:1px;
  background:linear-gradient(to left, transparent, rgba(47,106,224,.36), var(--accent-sky), rgba(47,106,224,.36), transparent);
}
.land-mic-stage .mic{
  position:relative; display:grid; grid-template-columns:1fr 122px 1fr;
  align-items:center; justify-items:center; gap:18px; min-height:150px;
}
.land-mic-stage .mic__btn{
  grid-column:2; width:112px; height:112px; position:relative; z-index:2;
  background:radial-gradient(circle at 36% 28%, #77CFFA 0%, #377CEB 36%, #2358C8 72%, #163B90 100%);
  border:1px solid rgba(255,255,255,.88);
  box-shadow:0 0 0 10px rgba(47,106,224,.06), 0 0 0 22px rgba(47,106,224,.035), 0 22px 46px rgba(47,106,224,.26), inset 0 2px 4px rgba(255,255,255,.65);
}
.land-mic-stage .mic__btn svg{ width:34px; height:34px }
.land-mic-stage .level{
  position:absolute; inset-inline:0; inset-block-start:50%; transform:translateY(-50%);
  height:62px; align-items:center; justify-content:space-between; gap:0; z-index:1;
}
.land-mic-stage .level i{ width:2px; height:18px; background:rgba(47,106,224,.30) }
.land-mic-stage .level i:nth-child(2),.land-mic-stage .level i:nth-child(5){ height:34px }
.land-mic-stage .level i:nth-child(3),.land-mic-stage .level i:nth-child(4){ height:48px }
.land-mic-stage .land-micnote{ grid-column:1 / -1; text-align:center; align-items:center; z-index:2 }
.land-mic-stage .land-timer{ position:absolute; inset-block-start:10px; inset-inline-end:10px }
.land-dump .hero-outs{
  max-width:none; margin:0; padding:0 32px 28px;
  grid-template-columns:repeat(4,1fr); gap:0;
}
.land-dump .hero-out{
  display:block; padding:12px 14px; border:0; border-inline-start:1px solid var(--hairline);
  border-radius:0; background:transparent; text-align:center; font-size:11.5px;
}
.land-dump .hero-out:first-child{ border-inline-start:0 }
.land-dump .hero-out__n{ margin:0 auto 8px; background:transparent; font-size:11px }
.land-dump > .actions{ margin:0; padding:0 28px 28px }
.land-dump > .actions .btn{ width:100% }
.land-dump .gate-note{ margin:0 32px 24px }

.journey-canvas{
  max-width:980px; margin-inline:auto; padding:30px 34px 34px;
  border:1px solid rgba(29,29,31,.055); border-radius:32px;
  background:rgba(255,255,255,.82); box-shadow:var(--shadow-panel);
  backdrop-filter:blur(24px) saturate(1.2);
}
.journey-head{ display:flex; align-items:flex-start; justify-content:space-between; gap:28px; padding-bottom:24px; border-bottom:1px solid var(--hairline) }
.journey-head h1{ font-size:42px; margin-bottom:4px }
.journey-head p:last-child{ max-width:560px; color:var(--ink-60) }
.journey-progress{ text-align:end; padding-top:8px }
.journey-progress strong{ display:block; color:var(--accent); font-size:22px; font-weight:500 }
.journey-progress span{ display:block; font-size:11.5px; color:var(--ink-45) }
.journey-route{ position:relative; max-width:820px; margin:0 auto; padding:30px 28px 0 }
.route-destinations{ position:relative; display:flex; justify-content:center; gap:16px; padding-bottom:48px }
.store-target{
  min-width:180px; min-height:68px; display:flex; align-items:center; justify-content:center; gap:12px;
  border-radius:18px; background:rgba(255,255,255,.92); border:1px solid rgba(29,29,31,.07);
  box-shadow:0 12px 30px rgba(24,39,75,.09); color:var(--ink); font-size:14px; font-weight:500;
}
.store-mark{
  width:32px; height:32px; display:block; flex:none; object-fit:contain;
  filter:drop-shadow(0 5px 8px rgba(24,39,75,.14));
}
.route-fork{
  position:absolute; inset-block-end:0; inset-inline:0; width:210px; height:38px; margin-inline:auto;
  border-block-start:5px solid rgba(47,106,224,.14); border-inline:5px solid rgba(47,106,224,.14); border-radius:22px 22px 0 0;
}
.route-fork::after{ content:''; position:absolute; inset-inline:0; inset-block-end:-20px; width:5px; height:24px; margin-inline:auto; background:rgba(47,106,224,.14) }
.route-phase{ position:relative; display:grid; grid-template-columns:128px 1fr; gap:20px; align-items:center; padding-block:18px 26px }
.route-phase::after{ content:''; position:absolute; inset-inline-end:0; inset-block-end:-12px; width:46%; height:28px; border-block-end:3px solid rgba(47,106,224,.14); border-inline-end:3px solid rgba(47,106,224,.14); border-radius:0 0 20px 0 }
.route-phase--turn::after{ inset-inline-end:auto; inset-inline-start:0; border-inline-end:0; border-inline-start:3px solid rgba(47,106,224,.14); border-radius:0 0 0 20px }
.route-phase__head{ display:flex; align-items:flex-start; gap:10px }
.route-phase__n{ font-size:28px; line-height:1; color:rgba(47,106,224,.30); font-weight:300 }
.route-phase__head strong{ display:block; color:var(--ink); font-size:14px }
.route-phase__head small{ display:block; color:var(--ink-45); font-size:10.5px; margin-top:4px }
.route-phase__line{ position:relative; min-height:72px; display:flex; align-items:center; gap:12px; padding:10px 18px; direction:ltr }
.route-phase--turn .route-phase__line{ direction:rtl }
.route-phase__line::before{
  content:''; position:absolute; inset-inline:0; inset-block-start:50%; height:4px; transform:translateY(-50%);
  border-radius:999px; background:rgba(29,29,31,.07);
}
.route-phase--active .route-phase__line::before{ background:linear-gradient(90deg, rgba(47,106,224,.16), rgba(47,106,224,.90), rgba(255,107,94,.35)) }
.route-stop{
  position:relative; z-index:2; flex:none; display:grid; place-items:center; direction:rtl;
  color:var(--ink-45); text-decoration:none;
}
.route-stop__id{
  width:38px; height:38px; display:grid; place-items:center; border-radius:50%;
  background:#fff; border:1px solid rgba(29,29,31,.13); font-size:11px; box-shadow:0 5px 14px rgba(24,39,75,.06);
}
.route-stop--done .route-stop__id{ color:#fff; background:var(--accent); border-color:var(--accent); box-shadow:0 7px 18px rgba(47,106,224,.24) }
.route-stop--open .route-stop__id{ color:var(--accent); border-color:var(--accent-tint-2) }
.route-stop--locked{ cursor:not-allowed }
.route-stop--current{
  display:grid; grid-template-columns:auto 1fr auto; gap:14px; align-items:center;
  min-width:300px; min-height:88px; padding:13px 16px; border-radius:21px;
  background:rgba(255,255,255,.95); border:1px solid rgba(255,107,94,.22);
  box-shadow:0 16px 38px rgba(24,39,75,.10); color:var(--ink);
}
.route-stop--current .route-stop__id{
  width:52px; height:52px; color:#fff; background:var(--accent-coral); border-color:var(--accent-coral);
  box-shadow:0 9px 20px rgba(255,107,94,.26); font-size:14px;
}
.route-stop__body{ display:flex; flex-direction:column; min-width:0; line-height:1.55 }
.route-stop__body strong{ color:var(--ink); font-size:15px }
.route-stop__body > span:last-child{ color:var(--ink-45); font-size:10.5px }
.route-stop__eyebrow{ color:var(--accent-coral); font-size:10px }
.route-stop__go{ color:var(--accent-coral); font-size:11.5px; white-space:nowrap }
.route-origin{ display:inline-flex; align-items:center; gap:10px; margin-top:16px; padding:10px 16px; border-radius:16px; color:var(--accent); background:var(--accent-tint) }
.route-origin small,.route-origin strong{ display:block }
.route-origin small{ color:var(--ink-45); font-size:10px }
.route-origin strong{ font-size:14px }
.route-origin__lamp{ width:20px; height:20px; border:2px solid var(--accent); border-radius:50%; position:relative }
.route-origin__lamp::after{ content:''; position:absolute; inset-inline:0; inset-block-end:-6px; width:8px; height:2px; margin-inline:auto; background:var(--accent); border-radius:3px }

.bar--funnel{ margin-bottom:28px }
.fsteps{ box-shadow:none; background:rgba(255,255,255,.68) }
.fstep-sep{ flex:1; max-width:34px; background:rgba(47,106,224,.16) }
.fstep--at{ color:var(--accent) }
.scope-item{ background:rgba(255,255,255,.70); border-color:rgba(29,29,31,.08); border-radius:15px; box-shadow:0 5px 15px rgba(24,39,75,.035) }
.scope-move{ border-radius:10px }
.nums{ position:relative; gap:0; padding-block:16px }
.nums::before{ content:''; position:absolute; inset-inline:10%; inset-block-start:50%; height:3px; background:rgba(47,106,224,.13); transform:translateY(-50%) }
.num{ position:relative; z-index:1; background:transparent; padding:14px 6px }

.num__disc{
  width:clamp(66px,19vw,80px); aspect-ratio:1;
  border-radius:999px; background:#fff;
  box-shadow:0 8px 24px rgba(47,106,224,.10);
}
.num__v{ position:relative }
.vs,.vs--us{ border-radius:20px; background:rgba(255,255,255,.62); border-color:rgba(29,29,31,.08) }
.vs--us{ background:var(--accent-tint); border-color:var(--accent-tint-2) }
.big-range{ color:var(--accent); letter-spacing:-.045em }

.mission-stagebar{
  max-width:760px; margin:0 auto 18px; display:flex; align-items:center; padding:0 14px;
}
.mission-stage{ flex:1; position:relative; display:flex; flex-direction:column; align-items:center; gap:5px; color:var(--ink-38); font-size:11px }
.mission-stage::before{ content:''; position:absolute; inset-inline-start:50%; inset-inline-end:-50%; inset-block-start:16px; height:3px; background:rgba(29,29,31,.08) }
.mission-stage:first-child::before{ display:none }
.mission-stage__n{ position:relative; z-index:1; width:32px; height:32px; border-radius:50%; display:grid; place-items:center; background:#fff; border:1px solid var(--hairline); font-size:10px }
.mission-stage--active{ color:var(--accent); font-weight:500 }
.mission-stage--active .mission-stage__n{ color:#fff; background:var(--accent); border-color:var(--accent); box-shadow:0 7px 18px rgba(47,106,224,.20) }
.mission-flow{
  max-width:820px; gap:0; padding:12px 28px 28px; border-radius:30px;
  background:rgba(255,255,255,.82); border:1px solid rgba(29,29,31,.055); box-shadow:var(--shadow-panel);
}
.mission-flow > .panel{
  padding:24px 8px; border:0; border-radius:0; box-shadow:none; background:transparent; backdrop-filter:none;
}
.mission-flow > .panel + .panel{ border-top:1px solid var(--hairline) }
.mission-flow > .panel--quiet{ background:transparent }
.mission-flow .mfacts{ gap:0; border-block:1px solid var(--hairline); margin-top:18px }
.mission-flow .mfact{ flex:1; border:0; border-radius:0; background:transparent; padding:14px 18px }
.mission-flow .mfact + .mfact{ border-inline-start:1px solid var(--hairline) }
.mission-flow .prompt-body{ max-height:420px; padding:18px; border:1px solid var(--hairline); border-radius:18px; background:rgba(245,245,247,.72) }
.mission-flow .pitfalls li::before{ background:var(--accent-coral) }

.qa2-human{ color:var(--accent); font-size:12.5px; margin-top:-2px }
#qa2-root > .stack{ max-width:860px; margin-inline:auto }
#qa2-root .stack > .panel{ border-radius:25px }
#qa2-root article.panel{ position:relative; padding-inline-start:36px }
#qa2-root article.panel::before{ content:''; position:absolute; inset-inline-start:18px; inset-block:25px; width:3px; border-radius:3px; background:linear-gradient(var(--accent),rgba(47,106,224,.08)) }
.qa2-q{ font-size:16px }
.qa2-role--founder{ background:var(--accent-tint); color:var(--accent) }
.qa2-scopes{ box-shadow:none; background:transparent }
#qa2-composer .field{ min-height:130px; border:1px solid var(--hairline); border-radius:18px; padding:16px; background:rgba(245,245,247,.58) }

#ac-root{ max-width:820px }
#ac-root > .panel{ padding:30px 34px }
.account-journey{ display:flex; align-items:center; justify-content:space-between; gap:20px; padding:18px 0 20px; border-bottom:1px solid var(--hairline) }
.account-journey > div:first-child strong{ display:block; color:var(--accent); font-size:22px; font-weight:500 }
.account-journey > div:first-child span{ display:block; color:var(--ink-45); font-size:11px }
.account-destinations{ display:flex; align-items:center; gap:9px; color:var(--ink-60); font-size:11.5px }
.account-destinations__dot{ width:5px; height:5px; border-radius:50%; background:var(--accent) }
#ac-root .end-rows{ position:relative }
#ac-root .end-row{ position:relative; padding-block:15px; padding-inline:26px 4px; align-items:center }
#ac-root .end-row::before{ content:''; position:absolute; inset-inline-start:3px; inset-block-start:27px; width:8px; height:8px; border-radius:50%; background:var(--accent); box-shadow:0 0 0 5px var(--accent-tint) }
#ac-root .end-row::after{ content:''; position:absolute; inset-inline-start:6px; inset-block-start:35px; inset-block-end:-15px; width:2px; background:rgba(47,106,224,.12) }
#ac-root .end-row:last-child::after{ display:none }
#ac-root .end-row__k{ color:var(--ink); font-weight:500 }
#ac-root #ac-del{ color:var(--accent-coral); border-color:rgba(255,107,94,.34) }

@media (max-width:720px){
  body{ background:var(--bg) }
  .app,.shell{ padding-inline:14px }
  .panel{ border-radius:22px }
  .bar{ position:relative; background:transparent; padding-block:4px }
  .land-hero__mark{ width:84px; height:84px; margin-bottom:14px }
  .land-hero h1{ font-size:35px }
  .land-dump{ border-radius:24px }
  .land-input-stage{ padding-inline:20px }
  .land-mic-stage{ padding-inline:20px }
  .land-mic-stage .mic{ grid-template-columns:1fr 96px 1fr }
  .land-mic-stage .mic__btn{ width:88px; height:88px }
  .land-dump .hero-outs{ grid-template-columns:1fr 1fr; padding-inline:20px }
  .land-dump .hero-out:nth-child(3){ border-inline-start:0; border-top:1px solid var(--hairline) }
  .land-dump .hero-out:nth-child(4){ border-top:1px solid var(--hairline) }
  .land-dump > .actions{ padding-inline:20px }

  .journey-canvas{ padding:22px 14px 26px; border-radius:24px }
  .journey-head{ align-items:flex-end }
  .journey-head h1{ font-size:32px }
  .journey-head p:last-child{ font-size:12px }
  .journey-route{ padding-inline:2px }
  .store-target{ min-width:0; flex:1; min-height:60px; border-radius:16px; font-size:12px }
  .route-fork{ width:52%; }
  .route-phase{ grid-template-columns:1fr; gap:8px; padding-block:16px 24px }
  .route-phase__head{ padding-inline:8px }
  .route-phase__n{ font-size:22px }
  .route-phase__line,.route-phase--turn .route-phase__line{ direction:ltr; flex-wrap:wrap; padding-inline:8px; justify-content:flex-start }
  .route-phase::after,.route-phase--turn::after{ inset-inline-start:18px; inset-inline-end:auto; width:42%; border-inline:0; border-inline-start:3px solid rgba(47,106,224,.14); border-radius:0 0 0 18px }
  .route-stop--current{ order:-1; width:100%; min-width:0; grid-template-columns:auto 1fr; padding:12px }
  .route-stop--current .route-stop__go{ grid-column:1 / -1; padding-top:10px; border-top:1px solid var(--hairline) }
  .route-stop__id{ width:34px; height:34px }
  .route-origin{ margin-inline:8px }

  .mission-stagebar{ padding-inline:0 }
  .mission-flow{ padding:8px 18px 24px; border-radius:24px }
  .mission-flow > .panel{ padding-block:20px }
  .mission-flow .mfacts{ flex-direction:column }
  .mission-flow .mfact + .mfact{ border-inline-start:0; border-top:1px solid var(--hairline) }

  .nums{ grid-template-columns:repeat(3,1fr) }
  .nums::before{ display:none }
  #ac-root > .panel{ padding:24px 20px }
  .account-journey{ align-items:flex-start; flex-direction:column }
  #ac-root .end-row{ padding-inline-start:26px }
}

@media (max-width:390px){
  .route-destinations{ gap:8px }
  .store-target{ padding-inline:8px }
  .store-mark{ width:26px; height:26px }
  .land-dump .hero-outs{ grid-template-columns:1fr }
  .land-dump .hero-out{ border-inline-start:0; border-top:1px solid var(--hairline) }
  .land-dump .hero-out:first-child{ border-top:0 }
}

@media (prefers-reduced-motion:reduce){
  .land-mic-stage .level i{ animation:none !important }
}

::selection{ color:#fff; background:var(--accent) }
.pagehead{ min-height:44px; margin-bottom:18px }
.back{
  min-height:40px; padding:8px 14px; border-radius:13px;
  background:rgba(255,255,255,.72); border-color:rgba(29,29,31,.08);
  box-shadow:0 7px 18px rgba(24,39,75,.045); color:var(--ink-60);
}
.crumb{ color:var(--ink-38) }
.chip{
  min-height:38px; border-radius:13px; background:rgba(255,255,255,.76);
  border-color:rgba(29,29,31,.10); box-shadow:0 4px 12px rgba(24,39,75,.035);
}
.chip[aria-pressed="true"]{
  background:var(--accent); border-color:var(--accent); box-shadow:0 8px 18px rgba(47,106,224,.18);
}
.field{
  border:1px solid rgba(29,29,31,.10); border-radius:16px; padding:14px 16px;
  background:rgba(245,245,247,.62); transition:border-color .16s var(--ease),box-shadow .16s var(--ease),background .16s var(--ease);
}
.field:focus{ border-color:rgba(47,106,224,.48); background:#fff; box-shadow:0 0 0 4px rgba(47,106,224,.075) }
.field--single{ min-height:48px; padding-block:11px }
.gate-note{ color:var(--ink-45) }
.gate-fail{ color:var(--accent-coral) }
.gate-pass{ color:var(--accent) }
.panel--pass{ border-color:rgba(47,106,224,.24); box-shadow:0 20px 56px rgba(47,106,224,.10) }
.panel--pass::before{ background:var(--accent) }
.fact{ border-radius:15px; background:var(--accent-tint) }
.ring{ background:conic-gradient(var(--accent) 0 var(--p,0%),rgba(29,29,31,.07) var(--p,0%)); box-shadow:0 15px 34px rgba(47,106,224,.13) }
.ring__disc{ background:#fff }

.flow-screen,#result-root{ max-width:860px }
.flow-screen > .row:first-child,#result-root > .row:first-child{ min-height:42px }
.flow-screen > .panel{
  padding:34px 38px; border-radius:30px; position:relative; overflow:hidden;
}
.flow-screen > .panel::before,#result-root > .panel::before{
  content:''; position:absolute; inset-block-start:0; inset-inline:34px; height:2px;
  background:linear-gradient(90deg,transparent,var(--accent),var(--accent-sky),transparent); opacity:.65;
}
#idea-root .idea-pulse{ gap:8px }
#idea-root .idea-pulse i{ width:58px; height:4px; border-radius:999px }
#idea-root .need{
  margin-top:8px; padding:15px 16px; border:1px solid transparent; border-radius:17px;
  background:rgba(245,245,247,.58); transition:border-color .16s var(--ease),background .16s var(--ease);
}
#idea-root .need + .need{ border-top-color:transparent }
#idea-root .need:hover{ border-color:rgba(47,106,224,.12); background:#fff }
#idea-root .need .chips{ background:transparent; box-shadow:none }
#idea-root .need-ask{
  position:relative; padding:18px 20px; border:1px solid rgba(47,106,224,.13);
  border-radius:18px; background:linear-gradient(135deg,rgba(47,106,224,.07),rgba(90,200,250,.04));
}
#idea-root .need-ask::before{ content:''; position:absolute; inset-inline-start:-1px; inset-block:18px; width:3px; border-radius:3px; background:var(--accent) }
#idea-root .tbl__row{ padding:15px 4px }

#scope-root > .panel:first-of-type{ padding-bottom:36px }
#scope-root .split{
  gap:14px; border:0; padding-top:0; overflow:visible;
}
#scope-root .split > div{
  min-height:250px; padding:20px; border:1px solid rgba(29,29,31,.075); border-radius:20px;
  background:rgba(245,245,247,.50);
}
#scope-root .split > div:first-child{ border-color:rgba(47,106,224,.17); background:linear-gradient(145deg,rgba(47,106,224,.07),rgba(255,255,255,.66)) }
#scope-root .split > div:last-child{ padding-inline-start:20px }
#scope-root .split h3{ font-size:14px; color:var(--ink); margin-bottom:14px }
#scope-root .scope-list{ gap:8px }
#scope-root .scope-item{ padding:10px 12px; background:#fff; border-radius:14px }
#scope-root .scope-add{ padding-top:8px }
#scope-root .scope-move{ min-height:34px; background:transparent; box-shadow:none }

#result-root{ gap:22px }
#result-root > .panel{ position:relative; overflow:hidden; padding:34px 38px; border-radius:30px }
#result-root > .panel:first-of-type{ min-height:310px; background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(236,244,255,.78)) }
#result-root .verdict{ max-width:620px; font-size:clamp(34px,5vw,52px); letter-spacing:-.05em }
#result-root .nums{ margin-top:24px }
#result-root .num::before{ width:68px; height:68px; margin-bottom:-54px }
#result-root .tvs{ padding:22px; border-radius:20px; background:rgba(255,255,255,.68) }
#result-root .ticks li{ padding:4px 0 }
#result-root .vs{ box-shadow:0 12px 30px rgba(24,39,75,.05) }
#result-root .res-cta{ padding:38px; background:linear-gradient(150deg,rgba(255,255,255,.97),rgba(238,245,255,.88)) }
#result-root .res-cta .btn--wide{ max-width:520px; margin-inline:auto }
#result-root .panel--current::after{
  content:''; position:absolute; width:190px; height:190px; border-radius:50%;
  inset-inline-end:-110px; inset-block-start:-110px; border:1px solid rgba(47,106,224,.14); box-shadow:0 0 0 24px rgba(47,106,224,.025);
}
#result-root .faq-q{ font-size:14px }

#lg-root{ max-width:780px; padding-top:clamp(24px,7vh,70px) }
#lg-root > .panel{ padding:42px; border-radius:32px; text-align:center; overflow:hidden; position:relative }
#lg-root > .panel::before{
  content:''; display:block; width:76px; height:76px; margin:0 auto 22px; border-radius:22px;
  background:url('../img/mark-192.png') center/cover no-repeat; box-shadow:0 15px 34px rgba(47,106,224,.20);
}
#lg-root > .panel > p{ max-width:620px; margin-inline:auto }
#lg-root .lang-opts{ gap:14px; margin-top:28px; text-align:start }
#lg-root .lang-opt{
  min-height:150px; position:relative; padding:24px; border-radius:21px;
  background:rgba(245,245,247,.68); border-color:rgba(29,29,31,.07); box-shadow:0 9px 24px rgba(24,39,75,.04);
}
#lg-root .lang-opt::after{
  content:''; position:absolute; inset-inline-end:20px; inset-block-start:20px; width:18px; height:18px;
  border:1.5px solid rgba(29,29,31,.18); border-radius:50%; background:#fff;
}
#lg-root .lang-opt[aria-pressed="true"]{ background:var(--accent-tint); border-color:rgba(47,106,224,.44); box-shadow:0 14px 28px rgba(47,106,224,.10) }
#lg-root .lang-opt[aria-pressed="true"]::after{ border:5px solid var(--accent) }
#lg-root .lang-opt__name{ font-size:20px; margin-bottom:8px }
#lg-root .actions{ justify-content:center }

#pr-root{ max-width:660px; padding-top:clamp(26px,8vh,86px) }
#pr-root > .panel{ min-height:360px; padding:46px 42px; border-radius:32px; text-align:center; display:flex; flex-direction:column; align-items:center; justify-content:center }
#pr-root > .panel::before{
  content:''; width:78px; height:78px; margin-bottom:24px; border-radius:24px;
  background:radial-gradient(circle at 36% 28%,#7AD1FA,#3476E8 42%,#1E4CAB 100%);
  box-shadow:0 0 0 10px rgba(47,106,224,.055),0 18px 34px rgba(47,106,224,.22);
}
#pr-root > .panel--pass::before{ background:url('../img/mark-192.png') center/cover no-repeat }
#pr-root .sep{ width:100% }
#pr-root .actions{ justify-content:center }
#pr-root .pay-dot{ width:10px; height:10px; box-shadow:0 0 0 7px var(--accent-tint) }

.sheet-wrap::before{ background:rgba(17,24,39,.30); backdrop-filter:blur(18px) saturate(.9) }
.sheet{
  width:min(470px,100%); padding:36px; border-radius:30px; text-align:center;
  background:rgba(255,255,255,.94); border-color:rgba(255,255,255,.96); box-shadow:0 28px 90px rgba(16,31,68,.20);
}
.sheet__mark{ display:block; margin:0 auto 18px; filter:drop-shadow(0 12px 22px rgba(47,106,224,.20)) }
.sheet > p:not(.eyebrow):not(.gate-note){ color:var(--ink-60) }
.sheet .lbl{ margin-top:22px; text-align:start }
.sheet .field{ text-align:center; font-size:18px; letter-spacing:.08em }
.sheet .actions{ justify-content:center }

.sheet__country{
  letter-spacing:normal; font-size:14px; text-align:start;
  appearance:none; -webkit-appearance:none;
  padding-inline-end:22px; cursor:pointer;
  background:
    linear-gradient(45deg,transparent 50%,var(--ink-45) 50%) calc(100% - 12px) 55% / 5px 5px no-repeat,
    linear-gradient(135deg,var(--ink-45) 50%,transparent 50%) calc(100% - 7px)  55% / 5px 5px no-repeat;
}
.sheet__country:focus{ border-top-color:var(--accent) }

.sheet__partner{ display:flex; margin:14px auto 0; font-size:14px }
.sheet #as-partner{ font-size:15px; text-transform:uppercase }

#cv-root,#ce-root{ max-width:840px }
#cv-root > .panel,#ce-root > .panel{ padding:36px 40px; border-radius:30px }
#cv-root > .panel > h1{ max-width:650px; font-size:clamp(32px,4.6vw,48px) }
#cv-root > .panel > .sep{ display:grid; grid-template-columns:150px 1fr; gap:24px }
#cv-root > .panel > .sep h3{ color:var(--accent); font-size:12px; padding-top:3px }
#cv-root > .panel > .sep > p{ color:var(--ink-80) }
#cv-root > .panel > .sep:has(.cv-raw),#cv-root > .panel > .sep:last-child{ display:block }
.cv-share{ align-items:center; padding:26px 0 12px }
.cv-share .share{
  position:relative; width:min(390px,100%); border-radius:34px; overflow:hidden;
  background:
    radial-gradient(220px 220px at 18% 8%,rgba(90,200,250,.19),transparent 72%),
    linear-gradient(150deg,rgba(255,255,255,.98),rgba(237,244,255,.90));
  border:1px solid rgba(29,29,31,.06); box-shadow:0 30px 70px rgba(24,39,75,.15);
}
.cv-share .share::after{ content:''; position:absolute; width:220px; height:220px; border-radius:50%; inset-inline-end:-150px; inset-block-end:-130px; border:1px solid rgba(47,106,224,.15); box-shadow:0 0 0 24px rgba(47,106,224,.025) }
.share__mark{ flex:none; filter:drop-shadow(0 7px 12px rgba(47,106,224,.18)) }
.cv-share .share__idea{ font-size:26px; letter-spacing:-.035em }
.cv-share .fact{ background:rgba(255,255,255,.68); border:1px solid rgba(29,29,31,.055) }
#ce-root .ce-field{ min-height:112px; margin-top:8px }
#ce-root .panel > .sep{ padding-top:20px }
#ce-root .panel > .sep:focus-within .lbl{ color:var(--accent) }

#pf-root,#gr-root,#pv-root{ max-width:840px }
#pf-root > .panel,#gr-root > .panel,#pv-root > .panel{ padding:36px 40px; border-radius:30px }
#pf-root > .panel::before{
  content:''; display:block; width:84px; height:84px; margin-bottom:22px; border-radius:24px;
  background:url('../img/mark-192.png') center/cover no-repeat; box-shadow:0 16px 34px rgba(47,106,224,.18);
}
#pf-root .end-lbl{ margin-top:24px; padding-top:18px; color:var(--ink); font-weight:500 }
#pf-root #pf-ios,#pf-root #pf-play{ min-height:58px; background:#fff; box-shadow:0 8px 18px rgba(24,39,75,.045) }
#pf-root #pf-ios{ border-inline-start:4px solid var(--accent) }
#pf-root #pf-play{ border-inline-start:4px solid var(--accent-sky) }
.graduate-hero{ display:flex; align-items:center; gap:22px; padding-bottom:24px; border-bottom:1px solid var(--hairline) }
.graduate-hero__mark{ flex:none; filter:drop-shadow(0 16px 26px rgba(47,106,224,.22)) }
#gr-root .graduate-hero + .end-rows{ display:grid; grid-template-columns:1fr 1fr; gap:12px; padding-top:22px }
#gr-root .graduate-hero + .end-rows .end-row{ display:block; padding:18px; border:1px solid rgba(29,29,31,.07); border-radius:18px; background:rgba(245,245,247,.55) }
#gr-root .graduate-hero + .end-rows .end-row + .end-row{ border-top:1px solid rgba(29,29,31,.07) }
#gr-root .graduate-hero + .end-rows .end-row__k{ display:block; min-width:0; color:var(--accent); font-weight:500 }
#gr-root .graduate-hero + .end-rows .end-row__v{ display:block; margin-top:5px; overflow-wrap:anywhere }
#gr-root .end-sum{ padding:28px; border:0; border-radius:22px; background:rgba(245,245,247,.56) }

#pv-root .panel > .sep{ position:relative; padding-inline-start:26px }
#pv-root .panel > .sep::before{
  content:''; position:absolute; inset-inline-start:2px; inset-block-start:28px; width:8px; height:8px;
  border-radius:50%; background:var(--accent); box-shadow:0 0 0 6px var(--accent-tint);
}
#pv-root .panel > .sep::after{ content:''; position:absolute; inset-inline-start:5px; inset-block-start:38px; inset-block-end:-24px; width:2px; background:rgba(47,106,224,.11) }
#pv-root .panel > .sep:last-child::after{ display:none }

#nf-root{ min-height:520px; padding:72px 30px; display:flex; flex-direction:column; align-items:center; justify-content:center }
.lost__mark{ margin-bottom:20px; filter:drop-shadow(0 16px 28px rgba(47,106,224,.22)) }
#nf-root h1{ font-size:clamp(34px,5vw,52px) }
#nf-root .ltr{ margin:14px 0; padding:7px 14px; border-radius:10px; background:rgba(29,29,31,.045) }
#nf-root .actions{ min-width:240px }

@media (max-width:720px){
  .flow-screen > .panel,#result-root > .panel,#cv-root > .panel,#ce-root > .panel,
  #pf-root > .panel,#gr-root > .panel,#pv-root > .panel{ padding:25px 20px }
  #idea-root .need{ padding:14px }
  #scope-root .split{ gap:10px }
  #scope-root .split > div,#scope-root .split > div:last-child{ padding:17px }
  #result-root .tvs{ grid-template-columns:1fr; gap:14px }
  #result-root .tvs__sep{ height:1px; width:100%; overflow:hidden; background:var(--hairline) }
  #lg-root{ padding-top:8px }
  #lg-root > .panel,#pr-root > .panel,.sheet{ padding:28px 20px }
  #lg-root .lang-opt{ min-height:126px }
  #pr-root{ padding-top:12px }
  #pr-root > .panel{ min-height:420px }
  #cv-root > .panel > .sep{ grid-template-columns:1fr; gap:5px }
  .graduate-hero{ align-items:flex-start; flex-direction:column }
  #gr-root .graduate-hero + .end-rows{ grid-template-columns:1fr }
  .sheet{ border-radius:28px 28px 0 0; padding-bottom:calc(28px + env(safe-area-inset-bottom)) }
  #nf-root{ min-height:420px; padding-inline:12px }
}

@media (max-width:390px){
  .cv-share .facts{ grid-template-columns:1fr }
}

html,body{ max-width:100%; overflow-x:clip }
.app,.shell,.shell__main,.panel,.row,.actions,.tbl__row,.end-row,
.journey-canvas,.journey-route,.route-phase,.route-phase__line,
.mission-flow,.mission-flow > .panel,.mfacts,.mfact{ min-width:0; max-width:100% }
.panel h1,.panel h2,.panel h3,.panel p,.route-stop__body,
.end-row__v,.tbl__v,.mfact__v,.mfact__note,.prompt-body,.ltr{
  overflow-wrap:anywhere; word-break:normal;
}
.field,.prompt-body,.actions > *{ max-width:100% }
.step,.step > div,.step__cmd{ min-width:0; max-width:100% }
.step__cmd{ overflow:hidden }
.step__cmd code{ min-width:0; max-width:100% }
.mfact__v,.mfact__v > span{ min-width:0; max-width:100% }

.journey-progress strong{ white-space:nowrap; direction:ltr; unicode-bidi:isolate }
.journey-route{ width:100% }
.route-destinations{ flex-wrap:wrap }
.route-phase{ grid-template-columns:minmax(104px,128px) minmax(0,1fr) }
.route-phase__line{
  width:100%; flex-wrap:wrap; gap:9px; overflow:clip;
}
.route-stop--current{
  width:min(300px,100%); min-width:0; flex:1 1 278px;
}

.mission-stagebar{ position:relative; overflow:hidden; isolation:isolate }
.mission-stagebar::before{
  content:''; position:absolute; z-index:0; inset-inline:12.5%; inset-block-start:16px;
  height:3px; border-radius:999px; background:rgba(29,29,31,.08);
}
.mission-stage{ min-width:0; z-index:1; text-align:center }
.mission-stage::before{ display:none }

@media (max-width:1080px){
  .shell{ flex-direction:column; width:100%; padding:20px 20px 56px }
  .side{ display:none }
  .tabbar{ display:flex }
  .shell__main{ width:100% }

  .journey-route{ padding-inline:4px }
  .route-phase{ grid-template-columns:1fr; gap:9px; padding-block:17px 25px }
  .route-phase__head{ padding-inline:9px }
  .route-phase__line,.route-phase--turn .route-phase__line{
    direction:ltr; padding-inline:10px; justify-content:flex-start;
  }
  .route-phase::after,.route-phase--turn::after{
    inset-inline-start:18px; inset-inline-end:auto; width:42%;
    border-inline:0; border-inline-start:3px solid rgba(47,106,224,.14);
    border-radius:0 0 0 18px;
  }
  .route-stop--current{ order:-1; width:min(430px,100%) }
}

@media (max-width:720px){
  .shell{ padding:14px 14px 56px }

  .bar--funnel{ width:100%; gap:8px; align-items:center }
  .bar--funnel .pill--brand{
    width:48px; min-width:48px; height:48px; flex:0 0 48px;
    padding:0; justify-content:center; border-radius:16px;
  }
  .bar--funnel .brand,.bar--funnel .brand-div,.bar--funnel .slogan{ display:none }
  .bar--funnel .brandmark{ width:28px; height:28px; flex:none }
  .fsteps{
    flex:1 1 auto; width:calc(100% - 56px); min-width:0; gap:4px;
    justify-content:space-between; padding:8px 9px; overflow:hidden;
  }
  .fstep{ flex:1 1 0; min-width:0; overflow:hidden; text-overflow:ellipsis; text-align:center }
  .fstep-sep{ flex:0 1 12px; min-width:4px; max-width:12px }

  .journey-head{ display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:start; gap:12px }
  .journey-progress{ min-width:54px; padding-top:3px }
  .journey-progress strong{ font-size:19px }
  .journey-progress span{ max-width:64px; line-height:1.4 }
  .route-stop--current{ width:100%; flex-basis:100% }

}

@media (max-width:390px){
  .mission-flow{ overflow:hidden; padding-inline:14px }
  .mission-flow .mfact{ padding-inline:8px }
  .mission-flow .mfact__v{ flex:1 1 auto; justify-content:flex-end }
  .mission-flow .mfact__v > span{ overflow-wrap:anywhere; text-align:end }
  .mission-stage{ font-size:9.5px }
  .journey-canvas{ padding-inline:11px }
  .route-phase__line,.route-phase--turn .route-phase__line{ padding-inline:4px }
}

@media (max-width:340px){
  .bar--funnel .pill--brand{ display:none }
  .fsteps{ width:100%; flex-basis:100%; font-size:9.5px }
}

.journey-canvas--simple{ max-width:900px; padding:34px }
.journey-key{
  display:flex; flex-wrap:wrap; gap:10px 22px; padding:18px 0;
  border-bottom:1px solid var(--hairline); color:var(--ink-60); font-size:11.5px;
}
.journey-key > span{ display:inline-flex; align-items:center; gap:7px }
.journey-key__dot{
  width:10px; height:10px; border-radius:50%; background:#fff;
  border:1px solid rgba(29,29,31,.20);
}
.journey-key__dot--current{ background:var(--accent); border-color:var(--accent) }
.journey-key__dot--done{ background:var(--accent-tint-2); border-color:var(--accent-tint-2) }
.journey-list{ display:flex; flex-direction:column; gap:0 }
.journey-phase{ display:grid; grid-template-columns:150px minmax(0,1fr); gap:24px; padding:30px 0 }
.journey-phase + .journey-phase{ border-top:1px solid var(--hairline) }
.journey-phase__head{ display:flex; align-items:flex-start; gap:11px; padding-top:5px }
.journey-phase__n{
  width:34px; height:34px; flex:none; display:grid; place-items:center;
  border-radius:12px; color:var(--accent); background:var(--accent-tint); font-size:11px;
}
.journey-phase__head strong{ display:block; font-size:14px; color:var(--ink) }
.journey-phase__head small{ display:block; margin-top:4px; color:var(--ink-45); font-size:10.5px }
.journey-phase__missions{ display:flex; flex-direction:column; gap:9px }
.journey-mission{
  width:100%; min-height:74px; display:grid; grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center; gap:14px; padding:13px 16px; border-radius:18px;
  color:var(--ink); background:rgba(255,255,255,.66); border:1px solid rgba(29,29,31,.075);
  text-decoration:none; transition:transform .16s var(--ease),border-color .16s var(--ease),box-shadow .16s var(--ease);
}
a.journey-mission:hover{ transform:translateY(-1px); border-color:rgba(47,106,224,.24); box-shadow:0 10px 24px rgba(24,39,75,.07) }
.journey-mission__mark{
  width:42px; height:42px; display:grid; place-items:center; border-radius:14px;
  color:var(--ink-45); background:#fff; border:1px solid var(--hairline); font-size:11.5px;
}
.journey-mission__body{ min-width:0; display:flex; flex-direction:column; line-height:1.55 }
.journey-mission__body strong{ font-size:14px; color:var(--ink) }
.journey-mission__body > span:last-child{ color:var(--ink-45); font-size:10.5px }
.journey-mission__status{ color:var(--ink-45); font-size:10px; font-weight:500 }
.journey-mission__action{ color:var(--accent); font-size:11.5px; font-weight:500; white-space:nowrap }
.journey-mission--current{
  min-height:88px; background:linear-gradient(135deg,#2f6ae0,#4f84ee);
  border-color:transparent; box-shadow:0 16px 34px rgba(47,106,224,.22); color:#fff;
}
.journey-mission--current .journey-mission__mark{ color:var(--accent); border-color:#fff }
.journey-mission--current .journey-mission__body strong,
.journey-mission--current .journey-mission__status,
.journey-mission--current .journey-mission__body > span:last-child,
.journey-mission--current .journey-mission__action{ color:#fff }
.journey-mission--current .journey-mission__body > span:last-child{ opacity:.78 }
.journey-mission--done .journey-mission__mark{
  color:var(--accent); background:var(--accent-tint); border-color:var(--accent-tint-2); font-size:16px;
}
.journey-mission--done .journey-mission__status{ color:var(--accent) }
.journey-mission--preview{ background:rgba(255,255,255,.45) }
.journey-mission--upcoming{ opacity:.58 }
.journey-goal{
  display:flex; align-items:center; justify-content:space-between; gap:24px;
  margin-top:4px; padding:22px 24px; border-radius:22px;
  background:var(--accent-tint); border:1px solid var(--accent-tint-2);
}
.journey-goal strong,.journey-goal > div > span{ display:block }
.journey-goal strong{ color:var(--ink); font-size:15px }
.journey-goal > div > span{ margin-top:4px; color:var(--ink-60); font-size:11.5px }
.journey-goal__stores{ display:flex; flex-wrap:wrap; justify-content:flex-end; gap:10px }
.journey-goal__stores > span{
  display:flex; align-items:center; gap:8px; padding:8px 12px; border-radius:14px;
  background:#fff; color:var(--ink); font-size:11.5px; font-weight:500;
}
.journey-goal__stores .store-mark{ width:25px; height:25px }

.mission-pager--top{ flex-wrap:wrap }
.mission-bottom-nav{
  display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px;
  padding:20px 0 4px; border-top:1px solid var(--hairline);
}
.mission-nav-card{
  min-width:0; min-height:68px; display:flex; align-items:center; justify-content:flex-start;
  gap:12px; padding:11px 12px; border-radius:16px;
  border:1px solid rgba(17,29,43,.1); background:rgba(255,255,255,.78);
  color:var(--ink); font-family:var(--font); text-align:start; cursor:pointer;
  box-shadow:0 5px 18px rgba(17,29,43,.045);
  transition:transform .18s var(--ease),border-color .18s var(--ease),background .18s var(--ease);
}
.mission-nav-card:hover{ transform:translateY(-1px); border-color:rgba(47,106,224,.28); background:#fff }
.mission-nav-card:focus-visible{ outline:3px solid rgba(47,106,224,.18); outline-offset:2px }
.mission-nav-card--prev{ flex-direction:row-reverse }
.mission-nav-card--next{ background:var(--accent-tint); border-color:rgba(47,106,224,.18) }
.mission-nav-card__arrow{
  width:38px; height:38px; flex:0 0 38px; display:grid; place-items:center;
  border-radius:12px; background:#fff; color:var(--accent); box-shadow:0 3px 10px rgba(17,29,43,.06);
}
.mission-nav-card__arrow svg{ width:16px; height:16px; stroke:currentColor }
.mission-nav-card__copy{ min-width:0; display:flex; flex:1; flex-direction:column; gap:2px; direction:rtl }
.mission-nav-card--prev .mission-nav-card__copy{ text-align:right }
.mission-nav-card--next .mission-nav-card__copy{ text-align:left; align-items:flex-end }
.mission-nav-card small{ color:var(--ink-45); font-size:10.5px; font-weight:500 }
.mission-nav-card strong{ max-width:100%; color:var(--ink); font-size:13px; line-height:1.45; overflow-wrap:anywhere }
.mission-bottom-nav > :only-child{ grid-column:1 / 2 }
.design-handoff{
  display:flex; flex-direction:column; gap:4px; margin-bottom:16px; padding:14px 16px;
  border:1px solid rgba(47,106,224,.16); border-radius:16px; background:var(--accent-tint);
}
.design-handoff strong{ color:var(--ink); font-size:13px }
.design-handoff span{ color:var(--ink-72); font-size:12px; line-height:1.75 }
.mission-audience{
  margin-block:4px; padding:22px !important; border:1px solid var(--accent-tint-2) !important;
  border-radius:20px !important; background:var(--accent-tint) !important;
}
.mission-audience h3{ margin-bottom:7px; font-size:17px }
.mission-audience p:last-child{ color:var(--ink-72); font-size:12.5px }

@media (max-width:720px){
  .journey-canvas--simple{ padding:24px 16px }
  .journey-phase{ grid-template-columns:1fr; gap:12px; padding-block:24px }
  .journey-phase__head{ padding-inline:3px }
  .journey-mission{ padding:12px; gap:10px }
  .journey-mission__mark{ width:38px; height:38px; border-radius:12px }
  .journey-goal{ align-items:flex-start; flex-direction:column }
  .journey-goal__stores{ justify-content:flex-start }
  .mission-bottom-nav{ grid-template-columns:1fr; padding-inline:0 }
  .mission-nav-card--next{ order:-1 }
  .mission-bottom-nav > :only-child{ grid-column:auto }
}

.mission-flow{
  max-width:860px; padding:0; gap:16px; background:transparent;
  border:0; border-radius:0; box-shadow:none;
}
.mission-flow > .panel{
  padding:28px; border:1px solid rgba(29,29,31,.07); border-radius:26px;
  background:rgba(255,255,255,.88); box-shadow:0 12px 30px rgba(24,39,75,.055);
  overflow:hidden;
}
.mission-flow > .panel + .panel{ border-top:1px solid rgba(29,29,31,.07) }
.mission-flow > .panel--quiet{ background:rgba(255,255,255,.65) }
.mission-flow .mfacts{ margin-top:20px }
.mission-brief{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-top:20px }
.mission-brief__card{
  min-width:0; display:flex; align-items:flex-start; gap:12px; padding:17px;
  border-radius:19px; background:var(--accent-tint); border:1px solid var(--accent-tint-2);
}
.mission-brief__card--result{ background:#f2f8f5; border-color:#d8eade }
.mission-brief__icon,.mission-section__icon,.learning-card__icon{
  flex:none; display:grid; place-items:center; color:var(--accent);
}
.mission-brief__icon{
  width:38px; height:38px; border-radius:13px; background:#fff;
  box-shadow:0 6px 14px rgba(47,106,224,.10);
}
.mission-brief__card--result .mission-brief__icon{ color:#2f7a54; box-shadow:0 6px 14px rgba(47,122,84,.10) }
.mission-brief svg,.mission-section__head svg,.learning-card svg{ stroke:currentColor }
.mission-brief__card > span:last-child{ min-width:0 }
.mission-brief__card small{ display:block; margin-bottom:5px; color:var(--ink-45); font-size:10.5px }
.mission-brief__card strong{ display:block; color:var(--ink); font-size:12.5px; line-height:1.8; overflow-wrap:anywhere }
.mission-section__head{ display:flex; align-items:center; gap:13px; margin-bottom:20px }
.mission-section__head p,.mission-section__head h2{ margin:0 }
.mission-section__head h2{ margin-top:2px; font-size:19px; line-height:1.45 }
.mission-section__icon{
  width:42px; height:42px; border-radius:14px; background:var(--accent-tint);
}
.lesson-cards{ display:grid; grid-template-columns:repeat(auto-fit,minmax(190px,1fr)); gap:10px }
.lesson-card{
  min-width:0; display:flex; align-items:flex-start; gap:10px; padding:15px;
  border-radius:17px; background:rgba(245,245,247,.72); border:1px solid rgba(29,29,31,.055);
}
.lesson-card__n{
  width:28px; height:28px; flex:none; display:grid; place-items:center;
  border-radius:10px; background:#fff; color:var(--accent); font-size:10px;
}
.lesson-card p{ margin:0; color:var(--ink-72); font-size:12px; line-height:1.85 }
.learning-section{ position:relative }
.learning-section--mistakes .mission-section__icon{ color:#b56b2a; background:#fff4e8 }
.learning-section--tips .mission-section__icon{ color:#2f7a54; background:#eef8f2 }
.learning-cards{
  display:grid; grid-auto-flow:column; grid-auto-columns:minmax(230px,32%); gap:12px;
  overflow-x:auto; padding:2px 2px 12px; scroll-snap-type:x mandatory;
  overscroll-behavior-inline:contain; scrollbar-width:thin; scrollbar-color:var(--accent-tint-2) transparent;
}
.learning-card{
  position:relative; min-height:150px; display:flex; flex-direction:column; align-items:flex-start;
  gap:12px; padding:18px; border-radius:20px; scroll-snap-align:start;
  background:#fffaf4; border:1px solid #f1dfca;
}
.learning-section--tips .learning-card{ background:#f4faf6; border-color:#d9ebdf }
.learning-card__icon{
  width:36px; height:36px; border-radius:12px; background:#fff; color:#b56b2a;
  box-shadow:0 5px 13px rgba(75,47,24,.07);
}
.learning-section--tips .learning-card__icon{ color:#2f7a54 }
.learning-card__n{ position:absolute; inset-block-start:18px; inset-inline-end:18px; color:var(--ink-38); font-size:10px }
.learning-card p{ margin:0; color:var(--ink-72); font-size:12px; line-height:1.9 }
.learning-swipe{ margin:2px 2px 0; color:var(--ink-38); font-size:10.5px }

.learn-why{ margin-block-start:auto; width:100% }
.learn-why summary{
  cursor:pointer; display:inline-flex; align-items:center; gap:6px; list-style:none;
  padding:5px 11px; border-radius:var(--r-pill); background:#fff;
  border:1px solid #ecd8bf; color:#8a5320; font-size:11.5px; font-weight:500;

  -webkit-user-select:none; user-select:none;
}
.learn-why summary::-webkit-details-marker{ display:none }
.learn-why summary::before{ content:'＋'; font-weight:600 }
.learn-why[open] summary::before{ content:'－' }
.learn-why > p{ margin:11px 0 0; color:var(--ink-72); font-size:11.5px; line-height:2 }
.learning-section--tips .learn-why summary{ border-color:#cfe6d8; color:#256b46 }
.model-switch{
  padding:20px; border-radius:20px; background:var(--accent-tint); border:1px solid var(--accent-tint-2);
}
.model-switch ol{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin:13px 0 10px; padding:0; list-style:none }
.model-switch li{ display:flex; align-items:flex-start; gap:9px; padding:13px; border-radius:15px; background:#fff }
.model-switch li > span:first-child{
  width:25px; height:25px; flex:none; display:grid; place-items:center;
  border-radius:9px; background:var(--accent); color:#fff; font-size:10px;
}
.model-switch li p{ margin:0; color:var(--ink-72); font-size:11.5px; line-height:1.75 }

@media (max-width:720px){
  .mission-flow{ gap:12px }
  .mission-flow > .panel{ padding:21px 17px; border-radius:22px }
  .mission-brief{ grid-template-columns:1fr }
  .lesson-cards{ grid-template-columns:1fr }
  .learning-cards{ grid-auto-columns:minmax(238px,84%) }
  .model-switch ol{ grid-template-columns:1fr }
}

button.journey-mission{
  appearance:none; -webkit-appearance:none; font:inherit; text-align:start; cursor:pointer;
}
button.journey-mission:hover{
  transform:translateY(-1px); border-color:rgba(47,106,224,.24);
  box-shadow:0 10px 24px rgba(24,39,75,.07);
}
.journey-mission--locked{ background:rgba(255,255,255,.54) }
.journey-mission--locked .journey-mission__mark{ color:var(--ink-38); background:rgba(255,255,255,.82) }
.journey-mission--locked .journey-mission__status{ color:var(--ink-45) }
.journey-key > a{ color:var(--accent); font-weight:500; text-decoration:none }

.paywall-sheet{ padding-top:40px }
.paywall-sheet__lock,.mission-paywall-view__lock{
  width:64px; height:64px; margin:0 auto 18px; display:grid; place-items:center;
  border-radius:22px; color:var(--accent); background:var(--accent-tint);
  box-shadow:0 12px 26px rgba(47,106,224,.12);
}
.paywall-sheet__lock svg,.mission-paywall-view__lock svg{
  width:27px; height:27px; stroke:currentColor;
}
.paywall-sheet__price{
  margin:24px 0 4px; padding:16px 18px; display:flex; align-items:baseline;
  justify-content:center; gap:9px; border-radius:18px; background:var(--accent-tint);
}
.paywall-sheet__price strong{ color:var(--accent); font-size:32px; font-weight:500 }
.paywall-sheet__price span{ color:var(--ink-60); font-size:12px }
.mission-paywall-view{ text-align:center; padding-block:42px }
.mission-paywall-view .row{ justify-content:center }
.access-check{ margin-top:clamp(28px,8vh,84px); text-align:center; padding-block:44px }
.access-check__icon{
  width:62px; height:62px; margin:0 auto 18px; display:grid; place-items:center;
  border-radius:21px; color:var(--accent); background:var(--accent-tint);
}
.access-check__icon svg{ width:26px; height:26px; stroke:currentColor }
.access-check .actions{ justify-content:center }

@media (max-width:720px){
  .paywall-sheet{ padding:32px 22px calc(24px + env(safe-area-inset-bottom)) }
}

.journey-canvas--simple{
  max-width:980px; padding:0; background:transparent; border:0;
  border-radius:0; box-shadow:none; overflow:visible;
}
.journey-head{
  position:relative; isolation:isolate; overflow:hidden;
  display:grid; grid-template-columns:minmax(0,1fr) 150px; align-items:center; gap:34px;
  min-height:330px; padding:42px 46px 54px; border:0; border-radius:32px;
  background:
    radial-gradient(400px 240px at 5% 110%,rgba(90,200,250,.30),transparent 70%),
    linear-gradient(135deg,#173D91 0%,#2F6AE0 57%,#4B9BEF 120%);
  box-shadow:0 26px 62px rgba(34,79,165,.24); color:#fff;
}
.journey-head::before,.journey-head::after{
  content:''; position:absolute; z-index:-1; border:1px solid rgba(255,255,255,.15); border-radius:50%;
}
.journey-head::before{ width:330px; height:330px; inset-inline-start:-145px; inset-block-end:-225px }
.journey-head::after{ width:210px; height:210px; inset-inline-end:-105px; inset-block-start:-115px }
.journey-head .eyebrow{ color:rgba(255,255,255,.72) }
.journey-head h1{ color:#fff; font-size:clamp(34px,4.3vw,52px); letter-spacing:-.045em }
.journey-head p:last-of-type{ max-width:560px; color:rgba(255,255,255,.76); font-size:13px; line-height:1.95 }
.journey-next{
  width:min(430px,100%); margin-top:22px; padding:13px 16px;
  display:grid; grid-template-columns:minmax(0,1fr) auto; gap:2px 14px; align-items:center;
  border:1px solid rgba(255,255,255,.18); border-radius:18px;
  background:rgba(255,255,255,.12); color:#fff; backdrop-filter:blur(12px);
  transition:background .16s var(--ease),transform .16s var(--ease);
}
.journey-next:hover{ color:#fff; background:rgba(255,255,255,.18); transform:translateY(-1px) }
.journey-next__label{ grid-column:1; color:rgba(255,255,255,.64); font-size:10px }
.journey-next strong{ grid-column:1; color:#fff; font-size:14px }
.journey-next__go{ grid-column:2; grid-row:1/3; display:flex; align-items:center; gap:7px; color:#fff; font-size:11px; font-weight:500 }
.journey-next__go svg{ stroke:currentColor }
.journey-progress{ padding:0; text-align:center }
.journey-progress__ring{
  width:132px; height:132px; margin:0 auto 14px; padding:10px; display:grid; place-items:center;
  border-radius:50%; background:conic-gradient(#fff var(--journey-progress),rgba(255,255,255,.18) 0);
  box-shadow:0 16px 35px rgba(9,37,97,.18);
}
.journey-progress__ring::before{ content:''; grid-area:1/1; width:106px; height:106px; border-radius:50%; background:#2A64D3 }
.journey-progress__ring span{ grid-area:1/1; z-index:1; color:#fff; font-size:25px; font-weight:600 }
.journey-progress > strong{ color:#fff; font-size:13px }
.journey-progress > span{ color:rgba(255,255,255,.64); font-size:10.5px }

.journey-goal{
  position:relative; z-index:2; width:calc(100% - 52px); margin:-27px auto 0; padding:18px 22px;
  background:rgba(255,255,255,.94); border-color:rgba(47,106,224,.12);
  box-shadow:0 18px 42px rgba(24,39,75,.10); backdrop-filter:blur(20px);
}
.journey-goal__route{
  width:38px; height:38px; flex:none; border-radius:14px;
  background:var(--accent-tint) url('../img/mark-128.png') center/28px no-repeat;
}
.journey-goal > div:first-of-type{ flex:1 }
.journey-goal .eyebrow{ margin-bottom:1px; font-size:9.5px }
.journey-goal__stores > span{ border:1px solid var(--hairline); box-shadow:0 5px 14px rgba(24,39,75,.04) }
.journey-key{
  margin-top:28px; padding:13px 4px; border:0; color:var(--ink-45);
}
.journey-key__dot--current{ background:var(--accent-coral); border-color:var(--accent-coral); box-shadow:0 0 0 4px rgba(255,107,94,.10) }
.journey-key__dot--done{ background:var(--accent); border-color:var(--accent) }
.journey-list{ gap:14px }
.journey-phase{
  position:relative; grid-template-columns:164px minmax(0,1fr); gap:20px;
  padding:24px; border:1px solid rgba(29,29,31,.055) !important; border-radius:26px;
  background:rgba(255,255,255,.62); box-shadow:0 12px 34px rgba(24,39,75,.045);
}
.journey-phase--active{ background:linear-gradient(145deg,rgba(255,255,255,.94),rgba(255,248,247,.76)); border-color:rgba(255,107,94,.18) !important }
.journey-phase__head{ position:sticky; top:28px; align-self:start; padding:4px 0 }
.journey-phase__n{ width:40px; height:40px; border-radius:14px; font-weight:500 }
.journey-phase--active .journey-phase__n{ color:var(--accent-coral); background:rgba(255,107,94,.10) }
.journey-phase--future .journey-phase__n{ color:var(--ink-45); background:rgba(29,29,31,.055) }
.journey-phase__head strong{ font-size:15px }
.journey-phase--active .journey-phase__head small{ color:var(--accent-coral) }
.journey-phase__missions{ position:relative; gap:8px }
.journey-phase__missions::before{
  content:''; position:absolute; inset-block:22px; inset-inline-start:24px; width:2px;
  background:linear-gradient(var(--accent),rgba(47,106,224,.10));
}
.journey-phase--future .journey-phase__missions::before{ background:rgba(29,29,31,.09) }
.journey-mission{
  position:relative; min-height:68px; padding:10px 14px; border-radius:18px;
  background:rgba(255,255,255,.78); border-color:rgba(29,29,31,.065); box-shadow:none;
}
.journey-mission__mark{ z-index:1; width:38px; height:38px; border-radius:13px }
.journey-mission__mark svg{ width:16px; height:16px; stroke:currentColor }
.journey-mission__body strong{ font-size:13.5px }
.journey-mission--current{
  min-height:82px; background:linear-gradient(135deg,#FF6B5E,#FF8275);
  box-shadow:0 14px 30px rgba(255,107,94,.20);
}
.journey-mission--current .journey-mission__mark{ color:var(--accent-coral); background:#fff }
.journey-mission--done{ background:rgba(255,255,255,.82) }
.journey-mission--done .journey-mission__mark{ background:#edf3ff }
.journey-mission--preview,.journey-mission--upcoming{ opacity:.68; background:rgba(255,255,255,.46) }
.journey-origin{
  display:flex; align-items:center; gap:10px; width:max-content; max-width:100%; margin:18px 24px 0;
  color:var(--ink-45); font-size:11px;
}
.journey-origin strong{ color:var(--ink); font-size:12px }
.journey-origin__dot{ width:14px; height:14px; border:3px solid #fff; border-radius:50%; background:var(--accent); box-shadow:0 0 0 1px var(--accent-tint-2) }

#qa2-root > .stack{ max-width:980px }
.qa2-layout{ gap:18px }
.qa2-hero{
  min-height:300px; display:grid; grid-template-columns:minmax(0,1fr) 260px; align-items:center; gap:36px;
  padding:38px 42px; border:1px solid rgba(47,106,224,.10); border-radius:32px;
  background:
    radial-gradient(340px 220px at 4% 100%,rgba(90,200,250,.20),transparent 70%),
    linear-gradient(140deg,rgba(255,255,255,.95),rgba(235,243,255,.78));
  box-shadow:var(--shadow-panel);
}
.qa2-hero h1{ font-size:clamp(34px,4.3vw,49px); margin-bottom:10px }
.qa2-hero__copy > p:not(.eyebrow){ max-width:560px; color:var(--ink-60); font-size:13px; line-height:1.9 }
.qa2-hero__stats{ display:flex; align-items:center; gap:12px; margin:18px 0; color:var(--ink-45); font-size:11px }
.qa2-hero__stats strong{ color:var(--ink); font-size:14px }
.qa2-hero__stats i{ width:4px; height:4px; border-radius:50%; background:var(--accent) }
.qa2-hero__ask{ padding-inline:28px }
.qa2-human-card{
  position:relative; overflow:hidden; min-height:215px; padding:24px; display:flex; flex-direction:column; justify-content:flex-end;
  border-radius:25px; background:linear-gradient(145deg,#194596,#2F6AE0); color:#fff;
  box-shadow:0 20px 42px rgba(47,106,224,.22);
}
.qa2-human-card::before{ content:''; position:absolute; width:170px; height:170px; border:1px solid rgba(255,255,255,.14); border-radius:50%; inset-inline-end:-80px; inset-block-start:-75px }
.qa2-human-card__portrait{ position:absolute; inset-block-start:22px; inset-inline-start:22px; width:58px; height:58px; display:grid; place-items:center; border-radius:20px; background:rgba(255,255,255,.16); border:1px solid rgba(255,255,255,.22); font-size:22px; font-weight:500 }
.qa2-human-card__portrait i{ position:absolute; inset-inline-end:-2px; inset-block-end:-2px; width:13px; height:13px; border:3px solid #2860c5; border-radius:50%; background:#58D09E }
.qa2-human-card__status{ color:rgba(255,255,255,.68); font-size:10px }
.qa2-human-card strong{ margin-top:4px; color:#fff; font-size:14px }
.qa2-human-card p{ margin-top:5px; color:rgba(255,255,255,.70); font-size:10.5px; line-height:1.7 }

.journey-goal__how{ margin-top:8px; padding:0; border:0; background:none; cursor:pointer;
  font:inherit; font-size:11.5px; color:var(--accent); text-decoration:underline;
  text-underline-offset:3px; align-self:flex-start }
.journey-goal__how:hover{ opacity:.78 }

.howto{ max-width:520px; text-align:center }
.howto__lead{ margin:6px 0 0; font-size:12.5px; line-height:1.9; color:var(--ink-72) }
.howto-fig{ margin:16px 0 4px }
.howto-fig svg{ direction:ltr; width:100%; height:auto; max-width:340px }
.howto-steps{ margin:6px 0 0; padding:0; list-style:none; display:flex; flex-direction:column; gap:12px; text-align:start }
.howto-steps li{ display:flex; align-items:flex-start; gap:11px }
.howto-step__n{ flex:none; width:22px; height:22px; display:grid; place-items:center; margin-top:1px;
  border-radius:8px; background:var(--accent-tint); color:var(--accent);
  font-size:11px; font-weight:600; font-variant-numeric:tabular-nums }
.howto-step__b{ display:flex; flex-direction:column; gap:3px; min-width:0 }
.howto-step__b strong{ font-size:13.5px; font-weight:600; color:var(--ink) }
.howto-step__b span{ font-size:12px; line-height:1.85; color:var(--ink-72) }
.howto__foot{ margin:16px 0 0; padding-top:13px; border-top:1px solid var(--hairline);
  font-size:11.5px; color:var(--ink-60) }
@media (max-width:620px){
  .howto{ max-width:none; text-align:start }
  .howto-fig{ margin:14px 0 2px }
  .howto-fig svg{ max-width:100% }
  .howto__foot{ text-align:start }
}

.waiting{ margin-top:16px }
.waiting__lead{ margin:0; font-size:12px; line-height:1.85; color:var(--ink-60); text-align:center }
.waiting__bar{ position:relative; height:3px; margin:12px auto 14px; max-width:320px;
  border-radius:2px; background:var(--accent-tint); overflow:hidden }
.waiting__bar i{ position:absolute; inset-block:0; inset-inline-start:-40%; width:40%;
  border-radius:2px; background:var(--accent); animation:waitSlide 1.5s ease-in-out infinite }
@keyframes waitSlide{ to{ inset-inline-start:100% } }
.waiting__card{ padding:16px 18px; border:1px solid var(--hairline); border-radius:18px;
  background:rgba(255,255,255,.62); text-align:center;
  opacity:1; transform:none; transition:opacity .28s ease, transform .28s ease }
.waiting__card--in{ opacity:1; transform:none }
.waiting__card:not(.waiting__card--in){ opacity:.35; transform:translateY(4px) }
.waiting__k{ margin:0 0 6px; font-size:10px; font-weight:600; color:var(--accent) }
.waiting__card strong{ display:block; font-size:14px; font-weight:600; color:var(--ink) }
.waiting__card p:last-child{ margin:6px 0 0; font-size:12px; line-height:1.9; color:var(--ink-72) }
@media (prefers-reduced-motion:reduce){
  .waiting__bar i{ animation:none; inset-inline-start:0; width:100% }
  .waiting__card,.waiting__card:not(.waiting__card--in){ opacity:1; transform:none; transition:none }
}

.paywall-sheet__refund{ margin:10px 0 0; font-size:11.5px; line-height:1.8; color:var(--ink-60); text-align:center }
.qa2-filterbar{ display:flex; align-items:center; justify-content:space-between; gap:18px; padding:2px 4px }
.qa2-filterbar > span{ color:var(--ink); font-size:13px; font-weight:500; white-space:nowrap }
.qa2-filterbar .pill{ box-shadow:none; border-color:var(--hairline); background:rgba(255,255,255,.62) }
.qa2-feed{ display:flex; flex-direction:column; gap:12px }
.qa2-empty{
  display:grid; grid-template-columns:64px minmax(0,1fr); gap:18px 20px; align-items:center;
  padding:26px 28px; border:1px dashed rgba(47,106,224,.22); border-radius:24px;
  background:rgba(255,255,255,.54);
}
.qa2-empty__mark{ width:64px; height:64px; display:grid; place-items:center; border-radius:21px; color:var(--accent); background:var(--accent-tint) }
.qa2-empty__mark svg{ width:25px; height:25px; stroke:currentColor }
.qa2-empty .eyebrow{ margin-bottom:1px }
.qa2-empty h2{ font-size:19px }
.qa2-empty p:last-child{ max-width:620px; margin-top:4px; color:var(--ink-60); font-size:11.5px }
.qa2-empty__guide{ grid-column:1/-1; display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--hairline); padding-top:16px }
.qa2-empty__guide span{ display:flex; align-items:center; gap:9px; color:var(--ink-60); font-size:10.5px }
.qa2-empty__guide span + span{ padding-inline-start:16px; border-inline-start:1px solid var(--hairline) }
.qa2-empty__guide b{ color:var(--accent); font-size:9.5px }
#qa2-root article.panel{ padding:22px 24px; border-radius:22px; border-color:rgba(29,29,31,.06) }
#qa2-root article.panel::before{ display:none }
.qa2-card__head{ display:flex; align-items:center; gap:10px }
.qa2-card__head > span:nth-child(2){ display:flex; min-width:0; flex-direction:column }
.qa2-card__head b{ color:var(--ink); font-size:11.5px }
.qa2-card__head small{ color:var(--ink-45); font-size:9.5px }
.qa2-card__head .qa2-scope{ margin-inline-start:auto }
.qa2-avatar{ width:34px; height:34px; flex:none; display:grid; place-items:center; border-radius:12px; background:var(--accent-tint); color:var(--accent); font-size:11px; font-weight:500 }
.qa2-q{ margin:16px 44px 4px 0; font-size:15.5px }
.qa2-card__actions{ margin-inline-start:44px }
.qa2-answers{ margin-inline-start:44px }
.answer{ position:relative; display:flex; gap:10px }
.qa2-avatar--answer{ width:30px; height:30px; border-radius:10px; background:#fff; border:1px solid var(--accent-tint-2) }
.answer__rule{ display:none }
#qa2-composer{ border:1px solid var(--accent-tint-2) }

#ac-root{ width:100%; max-width:980px }
#ac-root > .panel{ padding:0; background:transparent; border:0; box-shadow:none }
.account-layout{ display:flex; flex-direction:column; gap:18px }
.account-hero{
  position:relative; overflow:hidden; display:grid; grid-template-columns:minmax(0,1fr) 180px; gap:30px;
  min-height:300px; padding:38px 42px 64px; border-radius:32px;
  background:
    radial-gradient(390px 250px at 4% 115%,rgba(90,200,250,.30),transparent 68%),
    linear-gradient(135deg,#173D91,#2F6AE0 64%,#52A6F1 135%);
  box-shadow:0 26px 62px rgba(34,79,165,.23); color:#fff;
}
.account-hero::after{ content:''; position:absolute; width:260px; height:260px; inset-inline-end:-130px; inset-block-start:-145px; border:1px solid rgba(255,255,255,.14); border-radius:50% }
.account-hero .eyebrow{ color:rgba(255,255,255,.65) }
.account-hero h1{ color:#fff; font-size:clamp(36px,4.5vw,50px) }
.account-hero__copy > p:last-of-type{ max-width:470px; color:rgba(255,255,255,.72); font-size:12.5px; line-height:1.9 }
.account-resume{
  width:min(390px,100%); margin-top:18px; padding:12px 14px; display:grid; grid-template-columns:minmax(0,1fr) auto;
  border:1px solid rgba(255,255,255,.18); border-radius:17px; background:rgba(255,255,255,.12); color:#fff; font-family:var(--font); text-align:start; cursor:pointer;
}
.account-resume span{ grid-column:1; color:rgba(255,255,255,.60); font-size:9.5px }
.account-resume strong{ grid-column:1; color:#fff; font-size:13px }
.account-resume svg{ grid-column:2; grid-row:1/3; align-self:center; stroke:#fff }
.account-progress{ align-self:center; text-align:center }
.account-progress__ring{ width:138px; height:138px; display:grid; place-content:center; border-radius:50%; background:radial-gradient(circle at center,#2b65d2 61%,transparent 62%),conic-gradient(#fff var(--account-progress),rgba(255,255,255,.18) 0); box-shadow:0 16px 34px rgba(8,36,97,.18) }
.account-progress__ring strong{ color:#fff; font-size:25px }
.account-progress__ring span,.account-progress__meta span{ display:block; color:rgba(255,255,255,.60); font-size:9.5px }
.account-progress__meta{ margin-top:10px }
.account-progress__meta strong{ color:#fff; font-size:12px }
.account-destinations{
  position:absolute; inset-inline:32px; inset-block-end:18px; display:flex; align-items:center; gap:10px;
  color:rgba(255,255,255,.60); font-size:9.5px;
}
.account-destinations b{ color:#fff; font-size:10.5px }
.account-destinations i{ width:34px; height:1px; background:rgba(255,255,255,.24) }
.account-content{ display:grid; grid-template-columns:1fr 1fr; gap:14px; align-items:start }
.account-section{
  overflow:hidden; padding:24px; border:1px solid rgba(29,29,31,.055); border-radius:24px;
  background:rgba(255,255,255,.76); box-shadow:0 12px 34px rgba(24,39,75,.045);
}
.account-identity{ grid-column:1/-1; display:grid; grid-template-columns:58px minmax(0,1fr); align-items:center; gap:18px; padding-block:18px }
.account-identity__avatar{ width:58px; height:58px; display:grid; place-items:center; border-radius:19px; color:var(--accent); background:var(--accent-tint) }
.account-identity__avatar svg{ width:24px; height:24px; stroke:currentColor }
.account-section__label{ display:block; margin-bottom:2px; color:var(--accent); font-size:9.5px; font-weight:500 }
.account-section__head{ display:flex; justify-content:space-between; align-items:flex-start; gap:16px; padding-bottom:16px; border-bottom:1px solid var(--hairline) }
.account-section__head h2{ font-size:17px }
.account-section__icon{ width:37px; height:37px; display:grid; place-items:center; border-radius:13px; color:var(--accent); background:var(--accent-tint) }
.account-section__icon svg{ stroke:currentColor }
#ac-root .end-row{ padding:14px 0; align-items:center }
#ac-root .end-row::before,#ac-root .end-row::after{ display:none }
#ac-root .end-row__k{ min-width:105px; font-size:11.5px }
#ac-root .end-row__v{ min-width:130px; color:var(--ink-60); font-size:11px }
#ac-root .end-row .btn{ min-height:36px; padding:7px 10px; font-size:10.5px }
.account-identity .end-row{ padding:3px 0 !important; border:0 }
.account-section--danger{ grid-column:1/-1; display:grid; padding:8px 22px; background:rgba(255,255,255,.46); box-shadow:none }
.account-section--danger .end-row__k{ color:var(--ink-60) !important }

@media (max-width:720px){
  .journey-head{ grid-template-columns:1fr; gap:28px; padding:30px 24px 52px; border-radius:26px }
  .journey-head h1{ font-size:34px }
  .journey-progress{ display:flex; align-items:center; text-align:start; gap:12px }
  .journey-progress__ring{ width:82px; height:82px; margin:0; padding:8px }
  .journey-progress__ring::before{ width:64px; height:64px }
  .journey-progress__ring span{ font-size:17px }
  .journey-progress > span{ margin-inline-start:-8px }
  .journey-goal{ width:calc(100% - 24px); padding:17px; gap:13px }
  .journey-goal__route{ display:none }
  .journey-goal__stores{ width:100%; display:grid; grid-template-columns:1fr 1fr }
  .journey-goal__stores > span{ justify-content:center; padding-inline:8px }
  .journey-key{ margin-top:20px; padding-inline:2px }
  .journey-phase{ grid-template-columns:1fr; gap:14px; padding:17px; border-radius:22px }
  .journey-phase__head{ position:static }
  .journey-mission__body > span:last-child{ display:none }
  .journey-mission__action{ font-size:10px }
  .journey-origin{ margin-inline:8px }

  .qa2-hero{ grid-template-columns:1fr; padding:28px 22px; border-radius:26px }
  .qa2-human-card{ min-height:180px }
  .qa2-filterbar{ align-items:flex-start; flex-direction:column; gap:8px }
  .qa2-filterbar .pill{ width:100%; overflow-x:auto; flex-wrap:nowrap }
  #qa2-root article.panel{ padding:19px 17px }
  .qa2-q{ margin-inline-start:0 }
  .qa2-card__actions,.qa2-answers{ margin-inline-start:0 }
  .qa2-ansmeta{ align-items:flex-start }
  .qa2-empty{ grid-template-columns:48px minmax(0,1fr); padding:20px 17px }
  .qa2-empty__mark{ width:48px; height:48px; border-radius:16px }
  .qa2-empty__guide{ grid-template-columns:1fr; gap:8px }
  .qa2-empty__guide span + span{ padding-inline-start:0; border:0 }

  .account-hero{ grid-template-columns:1fr; gap:24px; padding:30px 24px 62px; border-radius:26px }
  .account-progress{ display:flex; align-items:center; gap:14px; text-align:start }
  .account-progress__ring{ width:96px; height:96px }
  .account-content{ grid-template-columns:1fr }
  .account-identity,.account-section--danger{ grid-column:auto }
  .account-section{ padding:20px 17px }
  #ac-root .end-row{ align-items:flex-start }
  #ac-root .end-row__k{ min-width:100% }
  #ac-root .end-row__v{ min-width:0 }
  #ac-root .end-row .push{ margin-inline-start:0 }
}

@media (max-width:720px){
  .shell{ padding-block-start:12px }

  .journey-head{
    min-height:0; grid-template-columns:minmax(0,1fr) 70px; align-items:start;
    gap:12px; padding:20px 18px; border-radius:22px;
  }
  .journey-head .eyebrow{ margin-bottom:4px; font-size:9.5px }
  .journey-head h1{ font-size:28px; line-height:1.2 }
  .journey-head__copy > p:last-of-type{ display:none }
  .journey-next{ min-height:52px; margin-top:12px; padding:9px 11px; border-radius:14px }
  .journey-next__label{ font-size:8.5px }
  .journey-next strong{ font-size:12px }
  .journey-next__go{
    width:30px; height:30px; justify-content:center; border-radius:10px;
    background:rgba(255,255,255,.12); font-size:0;
  }
  .journey-progress{ display:flex; flex-direction:column; align-items:center; gap:5px; text-align:center }
  .journey-progress__ring{ width:68px; height:68px; padding:7px }
  .journey-progress__ring::before{ width:52px; height:52px }
  .journey-progress__ring span{ font-size:14px }
  .journey-progress > strong{ font-size:9.5px }
  .journey-progress > span{ display:none }
  .journey-goal{
    width:100%; margin:8px 0 0; padding:12px 14px; display:grid;
    grid-template-columns:minmax(0,1fr) auto; align-items:center; border-radius:18px;
  }
  .journey-goal strong{ font-size:12px; line-height:1.55 }
  .journey-goal > div:first-of-type > span{ display:none }
  .journey-goal__stores{ width:auto; display:flex; gap:6px }
  .journey-goal > .journey-goal__stores > span{ width:40px; height:40px; padding:6px; display:flex; border-radius:12px }
  .journey-goal__stores > span > .ltr{ display:none }
  .journey-goal__stores .store-mark{ width:25px; height:25px }
  .journey-key{ margin-top:8px; padding-block:10px; gap:8px 14px; font-size:9.5px }
  .journey-key__dot{ width:8px; height:8px }
  .journey-list{ gap:9px }
  .journey-phase{ gap:10px; padding:14px; border-radius:18px }
  .journey-phase__head{ align-items:center; padding:0 }
  .journey-phase__n{ width:34px; height:34px; border-radius:11px }
  .journey-phase__head strong{ font-size:13px }
  .journey-phase__head small{ margin-top:1px; font-size:9px }
  .journey-mission{ min-height:58px; padding:8px 10px; gap:9px; border-radius:15px }
  .journey-mission--current{ min-height:64px }
  .journey-mission__mark{ width:34px; height:34px; border-radius:11px }
  .journey-mission__body strong{ font-size:12px }
  .journey-mission__status,.journey-mission__action{ font-size:8.5px }
  .journey-phase__missions::before{ inset-inline-start:21px }

  .qa2-hero{
    min-height:0; grid-template-columns:1fr; gap:14px;
    padding:20px 18px; border-radius:22px;
  }
  .qa2-hero h1{ font-size:29px; line-height:1.25; margin-bottom:6px }
  .qa2-hero__copy > p:not(.eyebrow){
    display:-webkit-box; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:2;
    font-size:11px; line-height:1.75;
  }
  .qa2-hero__stats{ margin:10px 0; font-size:9.5px }
  .qa2-hero__stats strong{ font-size:11px }
  .qa2-hero__ask{ width:100%; min-height:44px }
  .qa2-human-card{
    min-height:0; padding:12px; display:grid; grid-template-columns:48px minmax(0,1fr);
    grid-template-rows:auto auto auto; align-items:center; gap:1px 11px; border-radius:17px;
    box-shadow:0 10px 24px rgba(47,106,224,.17);
  }
  .qa2-human-card::before{ display:none }
  .qa2-human-card__portrait{
    position:relative; inset:auto; grid-column:1; grid-row:1/4;
    width:48px; height:48px; border-radius:15px; font-size:17px;
  }
  .qa2-human-card__status,.qa2-human-card strong,.qa2-human-card p{ grid-column:2; margin:0 }
  .qa2-human-card__status{ font-size:8px }
  .qa2-human-card strong{ font-size:11.5px }
  .qa2-human-card p{ white-space:nowrap; overflow:hidden; text-overflow:ellipsis; font-size:8.5px }
  .qa2-empty{ gap:12px; padding:16px; border-radius:18px }
  .qa2-empty h2{ font-size:16px }
  .qa2-empty p:last-child{ font-size:10px; line-height:1.7 }
  .qa2-empty__guide{ display:none }

  .account-hero{
    min-height:0; grid-template-columns:minmax(0,1fr) 74px; align-items:start;
    gap:12px; padding:20px 18px 48px; border-radius:22px;
  }
  .account-hero .eyebrow{ margin-bottom:4px; font-size:9.5px }
  .account-hero h1{ font-size:30px }
  .account-hero__copy > p:last-of-type{ display:none }
  .account-resume{ min-height:50px; margin-top:10px; padding:8px 10px; border-radius:14px }
  .account-resume span{ font-size:8.5px }
  .account-resume strong{ font-size:11.5px }
  .account-progress{ display:block; text-align:center }
  .account-progress__ring{ width:70px; height:70px }
  .account-progress__ring strong{ font-size:16px }
  .account-progress__ring span{ font-size:8px }
  .account-progress__meta{ display:none }
  .account-destinations{ inset-inline:18px; inset-block-end:13px; gap:7px; font-size:8px }
  .account-destinations b{ font-size:8.5px }
  .account-destinations i{ width:20px }
  .account-layout{ gap:10px }
  .account-content{ gap:10px }
  .account-section{ padding:16px; border-radius:18px }
  .account-identity{ grid-template-columns:44px minmax(0,1fr); gap:12px; padding-block:13px }
  .account-identity__avatar{ width:44px; height:44px; border-radius:14px }
  .account-identity__avatar svg{ width:19px; height:19px }
  .account-section__head{ padding-bottom:12px }
  .account-section__head h2{ font-size:15px }
  #ac-root .end-row{ padding-block:10px }
}

.picks{ display:grid; gap:10px }
@media (min-width:600px){ .picks{ grid-template-columns:1fr 1fr } }
.pick{
  display:block; text-align:start; width:100%; cursor:pointer;
  border-radius:18px; padding:16px 18px; font-family:var(--font);
  background:rgba(255,255,255,.62); border:1px solid var(--hairline);
  transition:border-color .16s var(--ease), background .16s var(--ease);
}
.pick:hover{ border-color:var(--accent-tint-2) }
.pick[aria-pressed="true"]{ background:var(--accent-tint); border-color:var(--accent) }
.pick strong{ display:block; font-size:14px; font-weight:600; color:var(--ink) }
.pick[aria-pressed="true"] strong{ color:var(--accent) }
.pick span{ display:block; font-size:11.5px; color:var(--ink-60); margin-top:3px; line-height:1.8 }
.pick:focus-visible{ outline:2px solid var(--accent); outline-offset:2px }

.verdict-note{
  margin-top:16px; padding:16px 18px; border-radius:18px;
  border:1px solid var(--hairline); background:rgba(245,245,247,.60);
}
.verdict-note strong{ display:block; font-size:13.5px; font-weight:600; color:var(--ink) }
.verdict-note p{ margin:6px 0 0; font-size:12px; line-height:2; color:var(--ink-72) }
.verdict-note--go{ border-color:rgba(47,106,224,.28); background:var(--accent-tint) }
.verdict-note--go strong{ color:var(--accent) }
.verdict-note--skip{ border-color:rgba(22,140,90,.26); background:rgba(22,140,90,.07) }
.verdict-note--skip strong{ color:#12704A }

.tool-accts{ display:grid; gap:10px }
.tool-acct{
  display:grid; grid-template-columns:auto minmax(0,1fr); gap:14px; align-items:start;
  padding:14px 16px; border-radius:16px; border:1px solid var(--hairline);
  background:rgba(245,245,247,.55);
}
.tool-acct__n{
  font-size:12px; font-weight:600; color:var(--accent);
  padding:5px 11px; border-radius:var(--r-pill);
  background:var(--accent-tint); white-space:nowrap;
}
.tool-acct__b p{ margin:0; font-size:12.5px; line-height:1.95; color:var(--ink-80) }
.tool-acct__b p.meta{ margin-top:4px; font-size:11px }
.acct-steps{ margin:8px 0 6px; padding-inline-start:20px; display:grid; gap:5px }
.acct-steps li{ font-size:12px; line-height:1.85; color:var(--ink-80) }
.tool-acct__b .step__link{ display:inline-block; margin-top:2px; font-size:11.5px }

.quizx{ display:grid; gap:14px }
.quizx__q{
  padding:16px 18px; border-radius:18px;
  border:1px solid var(--hairline); background:rgba(255,255,255,.55);
}
.quizx__n{ margin:0 0 6px; font-size:10.5px; font-weight:600; letter-spacing:0; color:var(--ink-45) }
.quizx__def{ margin:0 0 12px; font-size:13.5px; line-height:2; color:var(--ink) }
.quizx__opts{ display:grid; gap:8px }
@media (min-width:640px){ .quizx__opts{ grid-template-columns:1fr 1fr } }
.quizx__opt{
  display:flex; align-items:center; justify-content:space-between; gap:10px;
  width:100%; text-align:start; cursor:pointer; font-family:var(--font);
  padding:12px 14px; border-radius:14px; font-size:13px; color:var(--ink);
  background:rgba(255,255,255,.72); border:1px solid var(--hairline);
  transition:border-color .16s var(--ease), background .16s var(--ease);
}
.quizx__opt:hover:not(:disabled){ border-color:var(--accent-tint-2) }
.quizx__opt:disabled{ cursor:default }
.quizx__opt--right{ background:rgba(22,140,90,.09); border-color:rgba(22,140,90,.45); color:#12704A; font-weight:500 }
.quizx__opt--wrong{ background:rgba(198,40,40,.08); border-color:rgba(198,40,40,.45); color:#B02A2A; font-weight:500 }
.quizx__mark{ font-size:13px; font-weight:600; line-height:1 }
.quizx__opt:focus-visible{ outline:2px solid var(--accent); outline-offset:2px }

.quizx__fb{
  margin:12px 0 0; padding:12px 14px; border-radius:14px;
  font-size:12px; line-height:2;
}
.quizx__fb--right{ background:rgba(22,140,90,.08); color:#12704A }
.quizx__fb--wrong{ background:rgba(198,40,40,.07); color:#8E2323 }
.quizx__fb b{ font-weight:600 }

.quizx__score{
  display:flex; align-items:center; gap:14px; flex-wrap:wrap;
  padding:14px 18px; border-radius:18px;
  background:var(--accent-tint); border:1px solid rgba(47,106,224,.22);
}
.quizx__score-v{ font-size:20px; font-weight:600; color:var(--accent) }
.quizx__score span:last-child{ font-size:12px; color:var(--ink-72); line-height:1.9 }

.uifig{ margin:12px 0 0 }
.uifig svg{

  direction:ltr;
  display:block; width:100%; max-width:340px; height:auto;
  border-radius:16px; border:1px solid var(--hairline);
  background:rgba(245,245,247,.7); padding:8px;
}
.uifig figcaption{
  margin-top:7px; font-size:11px; line-height:1.9; color:var(--ink-60);
}

#svc-panel .needs{ display:grid; gap:12px }
#svc-panel .need{
  padding:16px 18px; border-radius:18px;
  border:1px solid var(--hairline); background:rgba(245,245,247,.55);
  transition:border-color .16s var(--ease), background .16s var(--ease);
}
#svc-panel .need--on{ border-color:rgba(47,106,224,.35); background:var(--accent-tint) }
#svc-panel .need--off{ opacity:.62 }
#svc-panel .need--open{ border-color:rgba(214,150,0,.38); background:rgba(214,150,0,.06) }
#svc-panel .need__head{ display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:wrap; margin-bottom:10px }
#svc-panel .need__badge{ font-size:10.5px; font-weight:600; color:var(--ink-60) }
#svc-panel .need--on .need__badge{ color:var(--accent) }
#svc-panel .need__src{ font-size:10.5px; color:var(--ink-45) }
#svc-panel .need__why{ margin:8px 0 0; font-size:11.5px; line-height:1.95 }
#svc-panel .need__quote{
  margin:8px 0 0; padding-inline-start:11px; font-size:11.5px; line-height:1.95;
  color:var(--ink-60); border-inline-start:2px solid var(--accent-tint-2);
}

#svc-panel .need[data-svc-own]{ border-style:dashed; background:rgba(245,245,247,.3) }
#svc-panel .need__name{ margin:0; font-size:13.5px; font-weight:600; line-height:1.7 }
#svc-panel .need__pick{ display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-top:12px }
#svc-panel .need__pick .opt{ padding:11px 14px; border-radius:14px; text-align:center }
#svc-panel .need__pick .opt__t{ font-size:12.5px }

.svc-status{ margin:14px 0 0; padding:12px 15px; border-radius:14px; font-size:12px; line-height:1.95 }
.svc-status--open{ background:rgba(214,150,0,.09); color:#8A6100 }
.svc-status--done{ background:rgba(22,140,90,.08); color:#12704A }

.journey-total{
  margin:14px 0 0; padding:12px 16px; border-radius:16px;
  background:rgba(255,255,255,.16); border:1px solid rgba(255,255,255,.22);
  font-size:12.5px; line-height:1.95; color:#fff;
}
.journey-total b{ font-weight:600 }
.journey-total span{ display:block; margin-top:3px; font-size:11px; opacity:.78 }

@media (max-width:720px){
  .quizx__q{ padding:14px }
  .quizx__opt{ padding:11px 12px }
  .tool-acct{ grid-template-columns:1fr; gap:8px }
  .tool-acct__n{ justify-self:start }
  #svc-panel .need{ padding:14px }
  #svc-panel .need__pick{ grid-template-columns:1fr }
  .journey-total{ padding:11px 13px; font-size:11.5px }
}
#svc-panel .need--quiet{ opacity:.82 }

.walk{ display:grid; gap:2px }
.walk .check{
  padding:11px 13px; border-radius:13px;
  border:1px solid transparent; background:rgba(245,245,247,.5);
  transition:border-color .16s var(--ease), background .16s var(--ease);
}
.walk .check:hover{ border-color:var(--accent-tint-2); background:#fff }
.walk .check:has(input:checked){ background:var(--accent-tint); border-color:rgba(47,106,224,.30) }
.walk-lead{ margin-block-start:12px }
.walk-count{
  margin:12px 0 0; font-size:11.5px; font-weight:500; color:var(--ink-60);
}
.walk-count--done{ color:#12704A }

#edit-panel textarea, .fix-bridge textarea{ min-height:96px; line-height:2 }
.fix-bridge{
  padding-block-start:16px; border-block-start:1px solid var(--hairline);
}
.fix-bridge .eyebrow{ margin-block-end:4px }

.tracks{ display:grid; gap:12px }
@media (min-width:760px){ .tracks{ grid-template-columns:1fr 1fr; align-items:start } }
.trk-card{
  padding:16px 18px; border-radius:18px;
  border:1px solid var(--hairline); background:rgba(255,255,255,.62);
}
.trk-card__head h3{ margin:0 0 12px; font-size:14px; font-weight:600; color:var(--ink) }
.picks--sm{ gap:6px }
@media (min-width:600px){ .picks--sm{ grid-template-columns:1fr } }
.pick--sm{
  padding:9px 12px; border-radius:12px;
  font-size:12.5px; font-weight:500; color:var(--ink-72);
}
.pick--sm[aria-pressed="true"]{ color:var(--accent); font-weight:600 }

.trk-read{ padding-block-start:14px; border-block-start:1px solid var(--hairline) }
.trk-who{
  display:inline-block; padding:3px 10px; border-radius:999px;
  font-size:11px; font-weight:600; letter-spacing:0;
  background:rgba(245,245,247,.9); color:var(--ink-60);
}
.trk--you .trk-who{ background:var(--accent-tint); color:var(--accent) }
.trk--done .trk-who{ background:rgba(22,140,90,.10); color:#12704A }
.trk-mean{ margin:9px 0 0; font-size:12.5px; line-height:1.95; color:var(--ink-72) }
.trk-next{ margin:9px 0 0; font-size:12.5px; line-height:1.95; color:var(--ink) }
.trk-next strong{ font-weight:600 }
.trk-stamp{ margin-block-start:14px }

.trk-meter{ padding-block-start:14px; border-block-start:1px solid var(--hairline) }
.trk-meter__head{
  display:flex; justify-content:space-between; align-items:baseline; gap:10px;
  font-size:12px; color:var(--ink-60);
}
.trk-meter__head strong{ font-size:13.5px; font-weight:600; color:var(--ink) }
.trk-bar{
  margin-block-start:8px; height:6px; border-radius:999px;
  background:rgba(245,245,247,.95); overflow:hidden;
}
.trk-bar span{ display:block; height:100%; border-radius:999px; background:var(--accent) }
.trk-meter__row{
  display:flex; align-items:center; gap:8px; flex-wrap:wrap;
  margin-block-start:10px;
}
.trk-meter__row .meta{ flex:1 1 180px; margin:0 }

.trk-meter__row .btn{
  min-width:38px; padding-inline:0; text-align:center;
  border:1px solid var(--hairline); border-radius:10px;
  font-size:15px; line-height:1;
}
.trk-meter__row .btn:hover{ border-color:var(--accent-tint-2); background:var(--accent-tint) }

.briefs{ display:grid; gap:2px }
.brief{
  padding:12px 13px; border-radius:13px;
  background:rgba(245,245,247,.5); border:1px solid transparent;
}
.brief__t{ font-size:13.5px; font-weight:600; color:var(--ink); margin-bottom:3px }
.brief__d{ margin:0; font-size:12.5px; line-height:1.85; color:var(--ink-60) }

.sr-only{
  position:absolute; width:1px; height:1px; padding:0; margin:-1px;
  overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0;
}
.step{ align-items:flex-start }
.step__b{ flex:1; min-width:0 }
.step__tick{
  flex:none; align-self:center; cursor:pointer;
  display:grid; place-items:center; width:44px; height:44px;
}
.step__tick input{ position:absolute; opacity:0; width:0; height:0 }
.step__tick-box{
  width:24px; height:24px; border-radius:8px;
  border:1.5px solid var(--hairline); background:rgba(255,255,255,.7);
  display:grid; place-items:center;
  transition:border-color .16s var(--ease), background .16s var(--ease);
}

.step__tick-box svg{
  width:14px; height:14px; color:#fff; stroke:currentColor; stroke-width:2.4;
  transform:scale(.5); opacity:0;
  transition:transform .16s var(--ease), opacity .12s var(--ease);
}
.step__tick:hover .step__tick-box{ border-color:var(--accent-tint-2) }

input:focus-visible + .step__tick-box{ outline:2px solid var(--accent); outline-offset:2px }
input:checked + .step__tick-box{ background:var(--accent); border-color:var(--accent) }
input:checked + .step__tick-box svg{ transform:scale(1); opacity:1 }
.step--done .step__n{ background:rgba(22,140,90,.12); color:#12704A }
.step--done .step__t{ color:var(--ink-60) }

.step-count{
  margin:12px 0 0; font-size:11.5px; font-weight:500; color:var(--ink-60);
}
.step-count--done{ color:#12704A }

@media (max-width:720px){
  .step__tick{ width:40px; height:40px }
}

.ticks-list{ display:grid; gap:2px }
.tick-row{
  display:grid; grid-template-columns:auto minmax(0,1fr); gap:12px; align-items:center;
  padding:11px 13px; border-radius:13px; cursor:pointer;
  border:1px solid transparent; background:rgba(245,245,247,.5);
  transition:border-color .16s var(--ease), background .16s var(--ease);
}
.tick-row:hover{ border-color:var(--accent-tint-2); background:#fff }
.tick-row input{ position:absolute; opacity:0; width:0; height:0 }
.tick-row__t{ font-size:12.5px; line-height:1.9; color:var(--ink-80) }
.tick-row:has(input:checked){ background:var(--accent-tint); border-color:rgba(47,106,224,.28) }
.tick-row:has(input:checked) .tick-row__t{ color:var(--ink-60) }
