/* ==========================================================================
   IdeaSweetSpot — EXPERT ADDITIONS v2 (Apps 4 That Studio)
   8 layered modules. Front door stays calm; depth reveals in-context, collapsed,
   opt-in, or as post-action results. Shares brand tokens (styles.css) +
   sweetspot.css / explorer.css patterns. WCAG-AA, 44px targets, focus-visible,
   prefers-reduced-motion, keyboard, semantic landmarks. No grades/tiers shown.
   ========================================================================== */

/* ---- shared atoms -------------------------------------------------------- */
.iss-add-disc { /* a collapsed "go deeper" disclosure, reused across modules */
  margin: 0.9rem 0 0; border: 1.5px solid var(--border-strong, #D4D9E3);
  border-radius: 12px; background: #fff;
}
.iss-add-disc > summary {
  list-style: none; cursor: pointer; padding: 0.7rem 0.95rem;
  font-weight: 700; font-size: 0.9rem; color: var(--ink, #111827);
  display: flex; align-items: center; gap: 0.5rem; min-height: 44px;
  border-radius: 12px;
}
.iss-add-disc > summary::-webkit-details-marker { display: none; }
.iss-add-disc > summary::after {
  content: ""; width: 9px; height: 9px; margin-left: auto;
  border-right: 2.4px solid var(--muted, #5B6577); border-bottom: 2.4px solid var(--muted, #5B6577);
  transform: rotate(45deg); transition: transform 200ms ease;
}
.iss-add-disc[open] > summary::after { transform: rotate(225deg); }
.iss-add-disc > summary:focus-visible { outline: 3px solid var(--purple, #7B61FF); outline-offset: 2px; }
.iss-add-disc__body { padding: 0 0.95rem 0.95rem; }
.iss-add-disc__body p { font-size: 0.9rem; color: var(--ink, #111827); line-height: 1.55; margin: 0.5rem 0; }
.iss-add-disc__body .iss-add-src { color: var(--muted, #5B6577); font-size: 0.82rem; font-style: italic; }

.iss-honest-foot {
  display: flex; gap: 0.5rem; align-items: flex-start;
  margin: 1rem 0 0; padding: 0.7rem 0.9rem; border-radius: 10px;
  background: #FBFAFF; border: 1px dashed var(--purple, #7B61FF);
  color: var(--muted, #5B6577); font-size: 0.84rem; line-height: 1.5;
}
.iss-honest-foot svg { flex: 0 0 auto; color: var(--purple, #7B61FF); margin-top: 2px; }

/* =========================================================================
   1 + 5 — WHY-YOU expander (Stage 1) + its earned-advantage tags
   ========================================================================= */
.iss-whyyou { margin: 1.1rem 0 0; }
.iss-whyyou__trigger {
  width: 100%; text-align: left; cursor: pointer; min-height: 44px;
  display: flex; align-items: center; gap: 0.6rem;
  padding: 0.8rem 1rem; border: 1.5px solid var(--border-strong, #D4D9E3);
  border-radius: 12px; background: #FBFAFF; color: var(--ink, #111827);
  font-weight: 700; font-size: 0.94rem; font-family: inherit;
}
.iss-whyyou__trigger:hover { border-color: var(--purple, #7B61FF); }
.iss-whyyou__trigger:focus-visible { outline: 3px solid var(--purple, #7B61FF); outline-offset: 2px; }
.iss-whyyou__chev {
  margin-left: auto; flex: 0 0 auto; color: var(--purple, #7B61FF);
  transition: transform 220ms ease;
}
.iss-whyyou[aria-expanded-state="true"] .iss-whyyou__chev { transform: rotate(90deg); }
.iss-whyyou__opt { color: var(--muted, #5B6577); font-weight: 500; font-size: 0.86rem; }
.iss-whyyou__check {
  flex: 0 0 auto; color: var(--teal, #3DB7A3); opacity: 0;
  transform: scale(0.6); transition: opacity 260ms ease, transform 260ms ease;
}
.iss-whyyou.is-filled .iss-whyyou__check { opacity: 1; transform: scale(1); }

.iss-whyyou__panel {
  margin-top: 0.7rem; padding: 1rem 1.05rem; border: 1.5px solid var(--purple-soft, #EDE9FF);
  border-radius: 12px; background: #fff; overflow: hidden;
}
.iss-whyyou__intro { font-size: 0.9rem; color: var(--muted, #5B6577); line-height: 1.55; margin: 0 0 0.9rem; }
.iss-whyyou__field { margin: 0 0 1rem; }
.iss-whyyou__field:last-of-type { margin-bottom: 0; }
.iss-whyyou__field label { display: block; font-weight: 700; font-size: 0.88rem; margin: 0 0 0.35rem; color: var(--ink, #111827); }
.iss-whyyou__field textarea { width: 100%; box-sizing: border-box; }
.iss-whyyou__fieldfoot { display: flex; align-items: center; gap: 0.7rem; margin-top: 0.35rem; flex-wrap: wrap; }
.iss-whyyou__skip {
  border: 1px solid var(--border-strong, #D4D9E3); background: #fff; color: var(--muted, #5B6577);
  border-radius: 999px; padding: 0.3rem 0.7rem; font-size: 0.8rem; font-weight: 600; cursor: pointer;
  min-height: 32px; font-family: inherit;
}
.iss-whyyou__skip:hover { border-color: var(--purple, #7B61FF); color: var(--purple, #7B61FF); }
.iss-whyyou__skip:focus-visible { outline: 3px solid var(--purple, #7B61FF); outline-offset: 2px; }
.iss-whyyou__field.is-skipped textarea { opacity: 0.6; }
.iss-whyyou__field.is-skipped .iss-whyyou__skip { background: var(--purple-soft, #EDE9FF); color: var(--purple, #7B61FF); border-color: var(--purple, #7B61FF); }
.iss-whyyou__what { font-size: 0.8rem; color: var(--purple, #7B61FF); background: none; border: none; cursor: pointer; padding: 0.2rem 0; font-family: inherit; text-decoration: underline; }
.iss-whyyou__what:focus-visible { outline: 3px solid var(--purple, #7B61FF); outline-offset: 2px; }
.iss-whyyou__example { font-size: 0.84rem; color: var(--muted, #5B6577); line-height: 1.5; margin: 0.4rem 0 0; padding: 0.55rem 0.7rem; background: #FBFAFF; border-radius: 8px; border-left: 3px solid var(--purple, #7B61FF); }
.iss-whyyou__example b { color: var(--ink, #111827); }

.iss-edge-tag { /* earned-advantage label under the scorer circles (annotation, not a score boost) */
  display: inline-flex; align-items: center; gap: 0.3rem;
  font-size: 0.76rem; font-weight: 700; color: var(--teal, #3DB7A3);
  background: var(--teal-soft, #9EEBD8); padding: 0.2rem 0.55rem; border-radius: 999px;
  margin: 0.5rem 0.4rem 0 0;
}

/* =========================================================================
   2 — TRACK FORK (joy vs money) — the only new up-front element
   ========================================================================= */
.iss-track {
  margin: 0 0 1.4rem; padding: 1rem 1.1rem; border-radius: 14px;
  border: 1.5px solid var(--purple-soft, #EDE9FF); background: linear-gradient(180deg,#FBFAFF, #fff);
}
.iss-track__head { margin: 0 0 0.7rem; }
.iss-track__title { font-size: 1.02rem; font-weight: 800; margin: 0 0 0.2rem; color: var(--ink, #111827); }
.iss-track__intro { font-size: 0.88rem; color: var(--muted, #5B6577); line-height: 1.5; margin: 0; }
.iss-track__opts { display: flex; gap: 0.6rem; flex-wrap: wrap; }
.iss-track__opt {
  flex: 1 1 160px; min-height: 44px; cursor: pointer; font-family: inherit;
  display: flex; flex-direction: column; align-items: flex-start; gap: 0.3rem;
  padding: 0.8rem 0.9rem; border-radius: 12px; border: 1.5px solid var(--border-strong, #D4D9E3);
  background: #fff; color: var(--ink, #111827); text-align: left;
}
.iss-track__opt:hover { border-color: var(--purple, #7B61FF); }
.iss-track__opt:focus-visible { outline: 3px solid var(--purple, #7B61FF); outline-offset: 2px; }
.iss-track__opt[aria-checked="true"] { border-color: var(--purple, #7B61FF); background: var(--purple-soft, #EDE9FF); box-shadow: 0 0 0 1px var(--purple, #7B61FF) inset; }
.iss-track__opticon { color: var(--purple, #7B61FF); }
.iss-track__opt--joy[aria-checked="true"] { border-color: var(--coral, #FF6B57); box-shadow: 0 0 0 1px var(--coral, #FF6B57) inset; background: #FFF6F4; }
.iss-track__opt--joy .iss-track__opticon { color: var(--coral, #FF6B57); }
.iss-track__opt--earn[aria-checked="true"] { border-color: var(--teal, #3DB7A3); box-shadow: 0 0 0 1px var(--teal, #3DB7A3) inset; background: #F2FCFA; }
.iss-track__opt--earn .iss-track__opticon { color: var(--teal, #3DB7A3); }
.iss-track__optlabel { font-weight: 800; font-size: 0.95rem; }
.iss-track__opthint { font-weight: 500; font-size: 0.8rem; color: var(--muted, #5B6577); line-height: 1.4; }
.iss-track__ack { margin: 0.7rem 0 0; font-size: 0.85rem; color: var(--purple, #7B61FF); font-weight: 600; min-height: 1.2em; }

/* header pill */
.iss-track-pill {
  display: inline-flex; align-items: center; gap: 0.4rem; min-height: 36px;
  border: 1.5px solid var(--border-strong, #D4D9E3); background: #fff; cursor: pointer;
  border-radius: 999px; padding: 0.25rem 0.8rem; font-size: 0.82rem; font-weight: 700;
  color: var(--ink, #111827); font-family: inherit; margin: 0 0 1rem;
}
.iss-track-pill:hover { border-color: var(--purple, #7B61FF); }
.iss-track-pill:focus-visible { outline: 3px solid var(--purple, #7B61FF); outline-offset: 2px; }
.iss-track-pill__dot { width: 8px; height: 8px; border-radius: 50%; background: var(--purple, #7B61FF); }
.iss-track-pill--joy .iss-track-pill__dot { background: var(--coral, #FF6B57); }
.iss-track-pill--earn .iss-track-pill__dot { background: var(--teal, #3DB7A3); }
.iss-track-pill__change { color: var(--muted, #5B6577); font-weight: 500; }

/* =========================================================================
   3 — RISKIEST ASSUMPTION (Validate sub-step, 3-step in-card flow)
   ========================================================================= */
.iss-risky { margin: 0 0 1.3rem; border: 1.5px solid var(--mustard, #F4B942); border-radius: 14px; background: #FFFDF6; overflow: hidden; }
.iss-risky__head { padding: 0.95rem 1.05rem; display: flex; align-items: center; gap: 0.6rem; }
.iss-risky__head svg { color: var(--mustard, #F4B942); flex: 0 0 auto; }
.iss-risky__htext h3 { font-size: 0.98rem; font-weight: 800; margin: 0; color: var(--ink, #111827); }
.iss-risky__htext p { font-size: 0.85rem; color: var(--muted, #5B6577); margin: 0.2rem 0 0; line-height: 1.45; }
.iss-risky__breadcrumb { font-size: 0.74rem; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; color: var(--mustard, #F4B942); margin: 0 0 0.5rem; }
.iss-risky__body { padding: 0 1.05rem 1.05rem; }
.iss-risky__step { margin: 0 0 0.6rem; }
.iss-risky__framing { font-size: 0.9rem; color: var(--ink, #111827); line-height: 1.55; margin: 0 0 0.7rem; }
.iss-risky__chips { display: flex; flex-wrap: wrap; gap: 0.45rem; margin: 0.6rem 0; }
.iss-chip-suspect {
  cursor: pointer; font-family: inherit; min-height: 40px;
  border: 1.5px solid var(--border-strong, #D4D9E3); background: #fff; color: var(--ink, #111827);
  border-radius: 999px; padding: 0.4rem 0.8rem; font-size: 0.82rem; font-weight: 600;
}
.iss-chip-suspect:hover { border-color: var(--mustard, #F4B942); }
.iss-chip-suspect:focus-visible { outline: 3px solid var(--purple, #7B61FF); outline-offset: 2px; }
.iss-chip-suspect.is-on { background: #FFF3D6; border-color: var(--mustard, #F4B942); }
.iss-risky__bar { display: flex; align-items: center; gap: 0.5rem; flex-wrap: wrap; margin: 0.6rem 0; font-size: 0.9rem; color: var(--ink, #111827); font-weight: 600; }
.iss-step { width: 56px; }
.iss-risky__guard { font-size: 0.83rem; color: var(--coral-deep, #E8543F); margin: 0.3rem 0 0; font-weight: 600; }
.iss-risky__summary { display: flex; flex-direction: column; gap: 0.4rem; font-size: 0.88rem; color: var(--ink, #111827); }
.iss-risky__summary b { color: var(--ink, #111827); }
.iss-result-row { display: flex; gap: 0.5rem; flex-wrap: wrap; margin: 0.6rem 0; }
.iss-result-btn { min-height: 40px; cursor: pointer; font-family: inherit; border-radius: 10px; padding: 0.4rem 0.8rem; font-weight: 700; font-size: 0.85rem; border: 1.5px solid var(--border-strong, #D4D9E3); background: #fff; color: var(--ink, #111827); }
.iss-result-btn:hover { border-color: var(--purple, #7B61FF); }
.iss-result-btn:focus-visible { outline: 3px solid var(--purple, #7B61FF); outline-offset: 2px; }
.iss-result-btn.is-on { background: var(--purple-soft, #EDE9FF); border-color: var(--purple, #7B61FF); }
.iss-risky__win { margin: 0.7rem 0 0; padding: 0.7rem 0.9rem; border-radius: 10px; background: #F2FCFA; border-left: 3px solid var(--teal, #3DB7A3); font-size: 0.88rem; color: var(--ink, #111827); line-height: 1.5; }
.iss-risky__fix { display: flex; align-items: center; gap: 0.6rem; flex-wrap: wrap; margin: 0.8rem 0 0; padding-top: 0.7rem; border-top: 1px solid var(--border, #E5E8EF); }
.iss-risky__fix-note { font-size: 0.82rem; color: var(--muted, #5B6577); margin: 0; }

/* =========================================================================
   4 — NAPKIN MATH (First $20k) + Validate teaser
   ========================================================================= */
.iss-napkin-teaser {
  margin: 0 0 1.2rem; padding: 0.7rem 0.95rem; border-radius: 10px;
  border: 1px dashed var(--teal, #3DB7A3); background: #F2FCFA; cursor: pointer;
  font-size: 0.88rem; color: var(--ink, #111827); font-weight: 600; font-family: inherit;
  text-align: left; width: 100%; display: flex; align-items: center; gap: 0.5rem; min-height: 44px;
}
.iss-napkin-teaser:hover { border-style: solid; }
.iss-napkin-teaser:focus-visible { outline: 3px solid var(--purple, #7B61FF); outline-offset: 2px; }
.iss-napkin-teaser svg { color: var(--teal, #3DB7A3); flex: 0 0 auto; }
.iss-napkin-teaser__preview { margin: 0.6rem 0 0; font-size: 0.85rem; color: var(--teal, #3DB7A3); font-weight: 700; }

.iss-napkin { margin: 0 0 1.3rem; border: 1.5px solid var(--teal, #3DB7A3); border-radius: 14px; background: #F8FEFD; overflow: hidden; }
.iss-napkin__head { padding: 0.95rem 1.05rem 0; }
.iss-napkin__head h3 { font-size: 0.98rem; font-weight: 800; margin: 0; color: var(--ink, #111827); }
.iss-napkin__head p { font-size: 0.85rem; color: var(--muted, #5B6577); margin: 0.3rem 0 0; line-height: 1.5; }
.iss-napkin__body { padding: 0.9rem 1.05rem 1.05rem; }
.iss-napkin__inputs { display: flex; gap: 0.7rem; flex-wrap: wrap; align-items: flex-end; }
.iss-napkin__inp { flex: 1 1 130px; }
.iss-napkin__inp label { display: block; font-size: 0.82rem; font-weight: 700; margin: 0 0 0.3rem; color: var(--ink, #111827); }
.iss-napkin__inp input, .iss-napkin__inp select { width: 100%; box-sizing: border-box; min-height: 44px; }
.iss-napkin__result {
  margin: 0.9rem 0 0; padding: 0.85rem 1rem; border-radius: 12px; background: #fff;
  border: 1.5px solid var(--teal, #3DB7A3); font-size: 1rem; color: var(--ink, #111827); line-height: 1.55; font-weight: 600;
}
.iss-napkin__result b { color: var(--teal, #3DB7A3); font-weight: 800; }
.iss-napkin__result-sub { font-size: 0.86rem; color: var(--muted, #5B6577); font-weight: 500; margin: 0.4rem 0 0; }
.iss-napkin__bench-note { font-size: 0.8rem; color: var(--muted, #5B6577); font-style: italic; margin: 0.5rem 0 0; line-height: 1.45; }

/* =========================================================================
   6 — CONVERSATION LOG + PRE-SELL HERO (Validate)
   ========================================================================= */
.iss-presell-hero {
  margin: 0 0 1.2rem; padding: 1rem 1.1rem; border-radius: 14px;
  border: 2px solid var(--purple, #7B61FF); background: linear-gradient(180deg, #F4F1FF, #fff);
}
.iss-presell-hero.is-locked { border-style: dashed; opacity: 0.92; }
.iss-presell-hero__band { font-size: 0.72rem; font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase; color: var(--purple, #7B61FF); margin: 0 0 0.3rem; }
.iss-presell-hero__title { font-size: 1.06rem; font-weight: 800; margin: 0 0 0.35rem; color: var(--ink, #111827); }
.iss-presell-hero__intro { font-size: 0.88rem; color: var(--muted, #5B6577); line-height: 1.55; margin: 0 0 0.8rem; }
.iss-presell-hero__locked-note { font-size: 0.85rem; color: var(--purple, #7B61FF); font-weight: 700; margin: 0.4rem 0 0; display: flex; align-items: center; gap: 0.4rem; }
.iss-presell-hero__fields { display: flex; flex-direction: column; gap: 0.7rem; }
.iss-presell-hero__fields label { font-size: 0.85rem; font-weight: 700; color: var(--ink, #111827); display: block; margin: 0 0 0.3rem; }
.iss-presell-hero__fields input { width: 100%; box-sizing: border-box; }
.iss-presell-hero__recorded { margin: 0.7rem 0 0; padding: 0.8rem 1rem; border-radius: 12px; background: #F2FCFA; border-left: 4px solid var(--teal, #3DB7A3); font-size: 0.9rem; color: var(--ink, #111827); font-weight: 600; }

.iss-convlog { margin: 0 0 1.2rem; }
.iss-convlog__count { font-size: 0.82rem; color: var(--muted, #5B6577); font-weight: 600; }
.iss-convlog__entries { list-style: none; padding: 0; margin: 0.6rem 0 0; display: flex; flex-direction: column; gap: 0.5rem; }
.iss-convlog__entry { padding: 0.6rem 0.8rem; border: 1px solid var(--border-strong, #D4D9E3); border-radius: 10px; background: #fff; font-size: 0.85rem; }
.iss-convlog__entry b { color: var(--ink, #111827); }
.iss-convlog__entry .iss-convlog__did { color: var(--teal, #3DB7A3); font-weight: 600; }
.iss-convlog__del { float: right; border: none; background: none; color: var(--coral, #FF6B57); cursor: pointer; font-size: 0.8rem; font-weight: 700; min-height: 32px; min-width: 32px; font-family: inherit; }
.iss-convlog__del:focus-visible { outline: 3px solid var(--purple, #7B61FF); outline-offset: 2px; }
.iss-convlog__form { display: flex; flex-direction: column; gap: 0.55rem; margin-top: 0.6rem; }
.iss-convlog__form label { font-size: 0.83rem; font-weight: 700; color: var(--ink, #111827); display: block; margin: 0 0 0.25rem; }
.iss-convlog__form input { width: 100%; box-sizing: border-box; }

/* =========================================================================
   7 — LOOP / PIVOT (Decide — three honest doors)
   ========================================================================= */
.iss-loop { margin: 1.2rem 0 0; }
.iss-loop__lead { font-size: 0.9rem; color: var(--muted, #5B6577); line-height: 1.55; margin: 0 0 0.9rem; }
.iss-doors-loop { display: flex; flex-direction: column; gap: 0.7rem; }
.iss-door-loop {
  width: 100%; text-align: left; cursor: pointer; font-family: inherit;
  padding: 0.9rem 1rem; border-radius: 12px; border: 1.5px solid var(--border-strong, #D4D9E3);
  background: #fff; color: var(--ink, #111827); display: flex; flex-direction: column; gap: 0.25rem; min-height: 44px;
}
.iss-door-loop:hover { border-color: var(--purple, #7B61FF); }
.iss-door-loop:focus-visible { outline: 3px solid var(--purple, #7B61FF); outline-offset: 2px; }
.iss-door-loop__title { font-weight: 800; font-size: 0.98rem; display: flex; align-items: center; gap: 0.5rem; }
.iss-door-loop__desc { font-size: 0.84rem; color: var(--muted, #5B6577); line-height: 1.5; }
.iss-door-loop.is-highlight { border-width: 2px; }
.iss-door-loop--double.is-highlight { border-color: var(--teal, #3DB7A3); background: #F2FCFA; }
.iss-door-loop--pivot.is-highlight { border-color: var(--mustard, #F4B942); background: #FFFDF6; }
.iss-door-loop--kill.is-highlight { border-color: var(--coral, #FF6B57); background: #FFF6F4; }
.iss-door-loop.is-dim { opacity: 0.6; }
.iss-door-loop__title svg { flex: 0 0 auto; }
.iss-door-loop--double .iss-door-loop__title svg { color: var(--teal, #3DB7A3); }
.iss-door-loop--pivot .iss-door-loop__title svg { color: var(--mustard, #F4B942); }
.iss-door-loop--kill .iss-door-loop__title svg { color: var(--coral, #FF6B57); }

.iss-loop__panel { margin: 0.9rem 0 0; padding: 1rem 1.05rem; border-radius: 12px; border: 1.5px solid var(--border-strong, #D4D9E3); background: #fff; }
.iss-loop__panel h4 { font-size: 0.92rem; font-weight: 800; margin: 0 0 0.5rem; color: var(--ink, #111827); }
.iss-loop__panel p { font-size: 0.88rem; color: var(--ink, #111827); line-height: 1.55; margin: 0.4rem 0; }
.iss-reshape-chips { display: flex; flex-wrap: wrap; gap: 0.45rem; margin: 0.6rem 0; }
.iss-loop__crit { padding: 0.8rem 0.95rem; border-radius: 10px; background: #FFF6F4; border-left: 3px solid var(--coral, #FF6B57); font-size: 0.88rem; color: var(--ink, #111827); line-height: 1.55; }
.iss-loop__crit b { color: var(--coral-deep, #E8543F); }
.iss-loop__confirm-row { display: flex; gap: 0.6rem; flex-wrap: wrap; margin: 0.8rem 0 0; }
.iss-loop__gate-defer { margin: 0.7rem 0 0; font-size: 0.86rem; line-height: 1.55; color: var(--muted, #6B7280); display: flex; gap: 0.55rem; align-items: center; flex-wrap: wrap; }

/* =========================================================================
   8 — SETUP CHECKLIST (side rail) + THE NUMBER (per stage)
   ========================================================================= */
.iss-number {
  margin: 0 0 1rem; padding: 0.55rem 0.85rem; border-radius: 10px;
  background: #FBFAFF; border: 1px solid var(--purple-soft, #EDE9FF);
  display: flex; align-items: center; gap: 0.55rem; flex-wrap: wrap; font-size: 0.86rem;
}
.iss-number__tag { font-size: 0.72rem; font-weight: 800; letter-spacing: 0.05em; text-transform: uppercase; color: var(--purple, #7B61FF); }
.iss-number__val { font-weight: 700; color: var(--ink, #111827); }
.iss-number__input { width: 90px; min-height: 36px; }
.iss-number__why { margin-left: auto; }
.iss-number__why summary {
  list-style: none; cursor: pointer; font-size: 0.8rem; color: var(--purple, #7B61FF);
  font-weight: 700; text-decoration: underline; min-height: 36px; display: inline-flex; align-items: center;
}
.iss-number__why summary::-webkit-details-marker { display: none; }
.iss-number__why summary:focus-visible { outline: 3px solid var(--purple, #7B61FF); outline-offset: 2px; }
.iss-number__why-body { font-size: 0.83rem; color: var(--muted, #5B6577); line-height: 1.5; margin: 0.5rem 0 0; max-width: 100%; flex-basis: 100%; }
.iss-number__vanity { margin: 0.4rem 0 0; padding: 0.5rem 0.7rem; background: #FFF6F4; border-radius: 8px; border-left: 3px solid var(--coral, #FF6B57); color: var(--coral-deep, #E8543F); font-weight: 600; }

.iss-railwrap { position: sticky; top: 78px; align-self: start; }
@media (max-width: 880px) { .iss-railwrap { position: static; } }
.iss-railwrap .iss-rail { position: static; top: auto; }
.iss-setup-rail { margin: 0.8rem 0 0; }
.iss-setup { border: 1.5px solid var(--border-strong, #D4D9E3); border-radius: 12px; background: #fff; }
.iss-setup > summary {
  list-style: none; cursor: pointer; padding: 0.8rem 0.95rem; min-height: 44px;
  display: flex; align-items: center; gap: 0.5rem; font-weight: 800; font-size: 0.92rem; color: var(--ink, #111827); border-radius: 12px;
}
.iss-setup > summary::-webkit-details-marker { display: none; }
.iss-setup > summary svg { color: var(--purple, #7B61FF); flex: 0 0 auto; }
.iss-setup > summary:focus-visible { outline: 3px solid var(--purple, #7B61FF); outline-offset: 2px; }
.iss-setup__badge { margin-left: auto; font-size: 0.78rem; font-weight: 700; color: var(--muted, #5B6577); }
.iss-setup__intro { font-size: 0.85rem; color: var(--muted, #5B6577); line-height: 1.55; padding: 0 0.95rem 0.5rem; margin: 0; }
.iss-setup__list { list-style: none; padding: 0 0.6rem 0.6rem; margin: 0; }
.iss-setup-item { border-top: 1px solid var(--purple-soft, #EDE9FF); }
.iss-setup-item > summary { list-style: none; cursor: pointer; padding: 0.65rem 0.4rem; min-height: 44px; display: flex; align-items: center; gap: 0.55rem; font-size: 0.87rem; }
.iss-setup-item > summary::-webkit-details-marker { display: none; }
.iss-setup-item > summary:focus-visible { outline: 3px solid var(--purple, #7B61FF); outline-offset: 2px; }
.iss-setup-item__check {
  flex: 0 0 auto; width: 22px; height: 22px; border-radius: 6px; border: 2px solid var(--border-strong, #D4D9E3);
  display: inline-flex; align-items: center; justify-content: center; cursor: pointer; background: #fff;
}
.iss-setup-item__check svg { opacity: 0; color: #fff; }
.iss-setup-item.is-done .iss-setup-item__check { background: var(--teal, #3DB7A3); border-color: var(--teal, #3DB7A3); }
.iss-setup-item.is-done .iss-setup-item__check svg { opacity: 1; }
.iss-setup-item__title { font-weight: 700; color: var(--ink, #111827); }
.iss-setup-item__why { font-weight: 500; color: var(--muted, #5B6577); display: block; font-size: 0.8rem; margin-top: 1px; }
.iss-setup-item__detail { padding: 0.2rem 0.4rem 0.7rem 2.9rem; font-size: 0.84rem; color: var(--ink, #111827); line-height: 1.55; }
.iss-setup-item__detail .iss-setup-item__pro { color: var(--purple, #7B61FF); font-weight: 600; }
.iss-setup-item__detail .iss-add-src { color: var(--muted, #5B6577); font-style: italic; font-size: 0.8rem; }
.iss-setup__shield { display: flex; align-items: center; gap: 0.5rem; padding: 0.7rem 0.95rem; margin: 0; font-size: 0.85rem; color: var(--teal, #3DB7A3); font-weight: 700; }
.iss-setup__shield svg { flex: 0 0 auto; }

/* one-liner forward pointer surfaced once on Scope */
.iss-setup-hint { margin: 0 0 1rem; padding: 0.6rem 0.85rem; border-radius: 10px; background: #FBFAFF; border: 1px dashed var(--border-strong, #D4D9E3); font-size: 0.83rem; color: var(--muted, #5B6577); display: flex; align-items: center; gap: 0.5rem; }
.iss-setup-hint__x { margin-left: auto; border: none; background: none; cursor: pointer; color: var(--muted, #5B6577); font-size: 1rem; min-height: 32px; min-width: 32px; font-family: inherit; }
.iss-setup-hint__x:focus-visible { outline: 3px solid var(--purple, #7B61FF); outline-offset: 2px; }

/* =========================================================================
   1 — MATCH TO ME (Explorer toggle + per-card fit) + post-score result card
   ========================================================================= */
.iss-match-bar {
  margin: 0 0 1.2rem; padding: 0.9rem 1.05rem; border-radius: 14px;
  border: 1.5px solid var(--purple-soft, #EDE9FF); background: linear-gradient(180deg,#FBFAFF,#fff);
  display: flex; align-items: center; gap: 0.9rem; flex-wrap: wrap;
}
.iss-match-bar__copy { flex: 1 1 220px; }
.iss-match-bar__copy h3 { font-size: 0.96rem; font-weight: 800; margin: 0 0 0.2rem; color: var(--ink, #111827); }
.iss-match-bar__copy p { font-size: 0.84rem; color: var(--muted, #5B6577); margin: 0; line-height: 1.5; }
.iss-match-seg { display: inline-flex; border: 1.5px solid var(--border-strong, #D4D9E3); border-radius: 999px; overflow: hidden; background: #fff; }
.iss-match-seg__btn {
  min-height: 44px; cursor: pointer; font-family: inherit; border: none; background: #fff;
  color: var(--ink, #111827); font-weight: 700; font-size: 0.85rem; padding: 0.4rem 1rem;
}
.iss-match-seg__btn[aria-checked="true"] { background: var(--purple, #7B61FF); color: #fff; }
.iss-match-seg__btn:focus-visible { outline: 3px solid var(--purple, #7B61FF); outline-offset: -3px; }
.iss-match-seg__btn[aria-disabled="true"] { opacity: 0.55; cursor: pointer; }
.iss-match-bar.is-ready { box-shadow: 0 0 0 3px var(--purple-soft, #EDE9FF); }
.iss-match-bar__pulse { animation: iss-matchpulse 1100ms ease; }
@keyframes iss-matchpulse { 0%,100% { box-shadow: 0 0 0 0 rgba(124, 92, 255,0); } 50% { box-shadow: 0 0 0 6px rgba(124, 92, 255,0.28); } }
.iss-match-bar__hint { flex-basis: 100%; font-size: 0.82rem; color: var(--purple, #7B61FF); font-weight: 700; margin: 0; }

.iss-closest3 { margin: 0 0 1.2rem; padding: 0.9rem 1.05rem; border-radius: 14px; background: var(--purple-soft, #EDE9FF); }
.iss-closest3__tag { font-size: 0.72rem; font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; color: var(--purple, #7B61FF); margin: 0 0 0.5rem; }
.iss-closest3__list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 0.4rem; }
.iss-closest3__item { font-size: 0.88rem; color: var(--ink, #111827); display: flex; align-items: baseline; gap: 0.5rem; }
.iss-closest3__rank { font-weight: 800; color: var(--purple, #7B61FF); }

/* per-card fit additions */
.iss-pcard__fit {
  margin: 0.7rem 0 0; padding: 0.6rem 0.8rem; border-radius: 10px; background: #FBFAFF;
  border-left: 3px solid var(--purple, #7B61FF); font-size: 0.85rem; color: var(--ink, #111827); line-height: 1.5;
}
.iss-pcard__fit-band { display: inline-block; font-size: 0.7rem; font-weight: 800; letter-spacing: 0.04em; text-transform: uppercase; padding: 0.15rem 0.5rem; border-radius: 999px; margin: 0 0 0.35rem; }
.iss-pcard__fit-band--close { background: var(--teal-soft, #9EEBD8); color: #11806E; }
.iss-pcard__fit-band--look { background: #FFF3D6; color: #946200; }
.iss-pcard__fit-band--stretch { background: #FFE3DC; color: var(--coral-deep, #E8543F); }
.iss-pcard__cross { margin: 0.5rem 0 0; }
.iss-pcard__cross summary { list-style: none; cursor: pointer; font-size: 0.8rem; color: var(--purple, #7B61FF); font-weight: 700; text-decoration: underline; min-height: 36px; display: inline-flex; align-items: center; }
.iss-pcard__cross summary::-webkit-details-marker { display: none; }
.iss-pcard__cross summary:focus-visible { outline: 3px solid var(--purple, #7B61FF); outline-offset: 2px; }
.iss-pcard__cross-grid { display: flex; gap: 0.7rem; margin: 0.5rem 0 0; flex-wrap: wrap; }
.iss-pcard__cross-col { flex: 1 1 130px; padding: 0.5rem 0.65rem; border-radius: 8px; background: #fff; border: 1px solid var(--border-strong, #D4D9E3); }
.iss-pcard__cross-col h5 { font-size: 0.74rem; font-weight: 800; letter-spacing: 0.05em; text-transform: uppercase; margin: 0 0 0.3rem; }
.iss-pcard__cross-col--you h5 { color: var(--coral, #FF6B57); }
.iss-pcard__cross-col--world h5 { color: var(--teal, #3DB7A3); }
.iss-pcard__cross-col ul { list-style: none; padding: 0; margin: 0; font-size: 0.8rem; color: var(--ink, #111827); line-height: 1.5; }

/* post-score match result card (inside the scorer) */
.iss-match-result {
  margin: 1rem 0 0; padding: 1rem 1.1rem; border-radius: 14px;
  border: 1.5px solid var(--purple, #7B61FF); background: linear-gradient(180deg,#F4F1FF,#fff);
}
.iss-match-result h4 { font-size: 1rem; font-weight: 800; margin: 0 0 0.3rem; color: var(--ink, #111827); }
.iss-match-result p { font-size: 0.87rem; color: var(--muted, #5B6577); line-height: 1.55; margin: 0 0 0.8rem; }

/* =========================================================================
   reduced motion — kill all addition animations
   ========================================================================= */
@media (prefers-reduced-motion: reduce) {
  .iss-whyyou__chev, .iss-whyyou__check, .iss-add-disc > summary::after,
  .iss-track__opt, .iss-match-bar__pulse { transition: none; animation: none; }
  .iss-match-bar__pulse { animation: none; }
}

/* =========================================================================
   exec-coach stance — the one stage-relevant powerful question (ask-before-tell)
   surfaced above the "Coach me through this" button. Quiet + founder-facing;
   one question per moment, no new screens.
   ========================================================================= */
.iss-coach__agenda {
  margin: 0 0 0.3rem; font-size: 0.78rem; font-weight: 700;
  letter-spacing: 0.02em; text-transform: uppercase; color: var(--muted, #5B6577);
}
.iss-coach__ask {
  margin: 0 0 1rem; padding: 0 0 0 0.85rem;
  border-left: 3px solid var(--purple, #7B61FF);
  font-size: 1.02rem; font-style: italic; line-height: 1.45;
  color: var(--ink, #111827); font-weight: 600;
}
/* in-app scorer coach: the ask-first lead + "one read, your call" verdict frame */
.ss-airesult__ask {
  margin: 0.4rem 0 1rem; padding: 0.7rem 0.9rem;
  border-left: 3px solid var(--purple, #7B61FF); background: #FBFAFF;
  border-radius: 0 8px 8px 0; font-style: italic; line-height: 1.45;
  color: var(--ink, #111827);
}
.ss-airesult__ask-lead,
.ss-airesult__verdict-lead {
  display: block; font-style: normal; font-weight: 800; font-size: 0.74rem;
  letter-spacing: 0.06em; text-transform: uppercase; color: var(--purple, #7B61FF);
  margin-bottom: 0.2rem;
}

/* =========================================================================
   mobile — keep everything single-column under 540px
   ========================================================================= */
@media (max-width: 540px) {
  .iss-coach__ask { font-size: 0.98rem; }
  .iss-track__opts { flex-direction: column; }
  .iss-napkin__inputs { flex-direction: column; align-items: stretch; }
  .iss-match-bar { flex-direction: column; align-items: stretch; }
  .iss-pcard__cross-grid { flex-direction: column; }
  .iss-number__why { margin-left: 0; flex-basis: 100%; }
}
