@import url("goga-theme.css?v=1785243184");

:root {
  color-scheme: dark;
  --mb-bg: var(--goga-bg-primary);
  --mb-panel: var(--goga-bg-card);
  --mb-panel-strong: color-mix(in srgb, var(--goga-bg-card) 86%, var(--goga-bg-secondary));
  --mb-panel-soft: var(--goga-bg-secondary);
  --mb-text: var(--goga-text-primary);
  --mb-muted: var(--goga-text-secondary);
  --mb-faint: var(--goga-text-muted);
  --mb-line: var(--goga-border);
  --mb-line-strong: color-mix(in srgb, var(--goga-border) 72%, var(--goga-text-muted));
  --mb-blue: var(--goga-accent);
  --mb-blue-soft: color-mix(in srgb, var(--goga-accent) 11%, transparent);
  --mb-violet: var(--goga-ai);
  --mb-violet-soft: color-mix(in srgb, var(--goga-ai) 11%, transparent);
  --mb-green: var(--goga-profit);
  --mb-green-soft: color-mix(in srgb, var(--goga-profit) 10%, transparent);
  --mb-amber: var(--goga-warning);
  --mb-amber-soft: color-mix(in srgb, var(--goga-warning) 10%, transparent);
  --mb-red: var(--goga-loss);
  --mb-on-accent: var(--goga-on-accent);
  --mb-shadow: var(--goga-shadow-lg);
}

html[data-theme="light"] {
  color-scheme: light;
  --mb-bg: var(--goga-bg-primary);
  --mb-panel: var(--goga-bg-card);
  --mb-panel-strong: color-mix(in srgb, var(--goga-bg-card) 86%, var(--goga-bg-secondary));
  --mb-panel-soft: var(--goga-bg-secondary);
  --mb-text: var(--goga-text-primary);
  --mb-muted: var(--goga-text-secondary);
  --mb-faint: var(--goga-text-muted);
  --mb-line: var(--goga-border);
  --mb-line-strong: color-mix(in srgb, var(--goga-border) 72%, var(--goga-text-muted));
  --mb-blue: var(--goga-accent);
  --mb-blue-soft: color-mix(in srgb, var(--goga-accent) 9%, transparent);
  --mb-violet: var(--goga-ai);
  --mb-violet-soft: color-mix(in srgb, var(--goga-ai) 9%, transparent);
  --mb-green: var(--goga-profit);
  --mb-green-soft: color-mix(in srgb, var(--goga-profit) 9%, transparent);
  --mb-amber: var(--goga-warning);
  --mb-amber-soft: color-mix(in srgb, var(--goga-warning) 9%, transparent);
  --mb-red: var(--goga-loss);
  --mb-on-accent: var(--goga-on-accent);
  --mb-shadow: var(--goga-shadow-lg);
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  background:
    radial-gradient(circle at 7% -2%, color-mix(in srgb, var(--mb-blue) 13%, transparent), transparent 31rem),
    radial-gradient(circle at 94% 3%, color-mix(in srgb, var(--mb-violet) 8%, transparent), transparent 29rem),
    linear-gradient(color-mix(in srgb, var(--mb-line) 22%, transparent) 1px, transparent 1px),
    linear-gradient(90deg, color-mix(in srgb, var(--mb-line) 22%, transparent) 1px, transparent 1px),
    var(--mb-bg);
  background-size: auto, auto, 36px 36px, 36px 36px, auto;
  color: var(--mb-text);
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 15px;
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
}

button,
a {
  font: inherit;
}

button {
  color: inherit;
}

a {
  color: inherit;
  text-decoration: none;
}

.brief-shell {
  width: min(1240px, calc(100% - 40px));
  margin: 0 auto;
}

.brief-topbar {
  min-height: 76px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  border-bottom: 1px solid var(--mb-line);
}

.brief-brand,
.brief-topbar__meta,
.brief-status,
.hero-actions,
.decision-card__math,
.lane-card__head,
.gate-strip,
.reply-section__head,
.brief-footer {
  display: flex;
  align-items: center;
}

.brief-brand {
  gap: 12px;
}

.brief-brand > span:last-child {
  display: grid;
}

.brief-brand b {
  font-size: 14px;
  letter-spacing: .02em;
}

.brief-brand small {
  color: var(--mb-faint);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.brief-mark {
  width: 34px;
  height: 34px;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: 3px;
  padding: 8px;
  border-radius: 10px;
  background: linear-gradient(145deg, var(--mb-blue), var(--mb-violet));
  box-shadow: 0 8px 22px color-mix(in srgb, var(--mb-blue) 22%, transparent);
}

.brief-mark i {
  width: 4px;
  border-radius: 3px;
  background: var(--mb-on-accent);
}

.brief-mark i:nth-child(1) {
  height: 8px;
  opacity: .7;
}

.brief-mark i:nth-child(2) {
  height: 14px;
}

.brief-mark i:nth-child(3) {
  height: 11px;
  opacity: .82;
}

.brief-topbar__meta {
  gap: 12px;
}

.brief-status {
  gap: 8px;
  color: var(--mb-muted);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.brief-status i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--mb-green);
  box-shadow: 0 0 0 5px var(--mb-green-soft);
}

.icon-button {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border: 1px solid var(--mb-line);
  border-radius: 10px;
  background: var(--mb-panel);
  cursor: pointer;
}

.icon-button:hover,
.button--quiet:hover {
  border-color: var(--mb-line-strong);
  background: var(--mb-panel-strong);
}

.brief-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(300px, .72fr);
  gap: 64px;
  align-items: center;
  padding: 76px 0 54px;
}

.eyebrow {
  display: flex;
  align-items: center;
  gap: 10px;
  color: var(--mb-muted);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.eyebrow span {
  color: var(--mb-blue);
}

.eyebrow time::before {
  content: "·";
  margin-right: 10px;
  color: var(--mb-line-strong);
}

.brief-hero h1 {
  max-width: 800px;
  margin: 18px 0 18px;
  font-size: clamp(38px, 5.4vw, 72px);
  line-height: 1.02;
  letter-spacing: -.052em;
}

.brief-hero h1 em {
  color: var(--mb-blue);
  font-style: normal;
}

.hero-lead {
  max-width: 720px;
  margin: 0;
  color: var(--mb-muted);
  font-size: clamp(16px, 1.7vw, 20px);
  line-height: 1.55;
}

.hero-lead strong {
  color: var(--mb-text);
}

.hero-actions {
  gap: 10px;
  margin-top: 30px;
  flex-wrap: wrap;
}

.button {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  padding: 0 18px;
  border: 1px solid transparent;
  border-radius: 11px;
  font-size: 13px;
  font-weight: 800;
  cursor: pointer;
  transition: transform .15s ease, border-color .15s ease, background .15s ease;
}

.button:hover {
  transform: translateY(-1px);
}

.button--primary {
  background: linear-gradient(135deg, var(--mb-blue), color-mix(in srgb, var(--mb-blue) 62%, var(--mb-violet)));
  color: var(--mb-on-accent);
  box-shadow: 0 9px 24px color-mix(in srgb, var(--mb-blue) 24%, transparent);
}

.button--quiet {
  border-color: var(--mb-line);
  background: var(--mb-panel);
  color: var(--mb-text);
}

.button--small {
  min-height: 38px;
  padding: 0 14px;
  font-size: 12px;
}

.decision-card {
  position: relative;
  overflow: hidden;
  padding: 30px;
  border: 1px solid color-mix(in srgb, var(--mb-blue) 35%, var(--mb-line));
  border-radius: 22px;
  background:
    linear-gradient(145deg, color-mix(in srgb, var(--mb-blue) 10%, var(--mb-panel)), var(--mb-panel));
  box-shadow: var(--mb-shadow);
}

.decision-card::after {
  content: "";
  position: absolute;
  width: 180px;
  height: 180px;
  right: -85px;
  top: -90px;
  border-radius: 50%;
  background: color-mix(in srgb, var(--mb-violet) 13%, transparent);
}

.decision-card__label,
.section-kicker,
.metric-card > span,
.scenario-card__label {
  color: var(--mb-muted);
  font-size: 10px;
  font-weight: 850;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.decision-card > strong {
  display: block;
  margin: 10px 0 2px;
  font-size: clamp(42px, 5vw, 58px);
  line-height: 1;
  letter-spacing: -.05em;
}

.decision-card > p {
  margin: 10px 0 20px;
  color: var(--mb-muted);
  font-size: 13px;
}

.decision-card__math {
  gap: 11px;
  padding: 13px;
  border: 1px solid var(--mb-line);
  border-radius: 12px;
  background: var(--mb-panel-soft);
}

.decision-card__math span {
  display: grid;
  color: var(--mb-muted);
  font-size: 10px;
}

.decision-card__math b {
  color: var(--mb-text);
  font-size: 15px;
}

.decision-card__math i {
  color: var(--mb-faint);
  font-style: normal;
}

.decision-card > small {
  display: block;
  margin-top: 14px;
  color: var(--mb-faint);
  font-size: 10px;
}

.metric-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
  margin-bottom: 28px;
}

.metric-card {
  position: relative;
  overflow: hidden;
  min-height: 148px;
  padding: 22px;
  border: 1px solid var(--mb-line);
  border-radius: 16px;
  background: var(--mb-panel);
}

.metric-card::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 3px;
  background: currentColor;
}

.metric-card--blue {
  color: var(--mb-blue);
}

.metric-card--violet {
  color: var(--mb-violet);
}

.metric-card--amber {
  color: var(--mb-amber);
}

.metric-card--green {
  color: var(--mb-green);
}

.metric-card > span {
  color: var(--mb-muted);
}

.metric-card strong {
  display: block;
  margin: 17px 0 5px;
  color: var(--mb-text);
  font-size: 27px;
  line-height: 1;
  letter-spacing: -.035em;
}

.metric-card small {
  color: var(--mb-muted);
  font-size: 11px;
  line-height: 1.45;
}

.brief-section {
  margin-top: 18px;
  padding: 34px;
  border: 1px solid var(--mb-line);
  border-radius: 20px;
  background: color-mix(in srgb, var(--mb-panel) 94%, transparent);
  box-shadow: 0 8px 35px rgba(0, 0, 0, .05);
}

.section-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 30px;
  padding-bottom: 26px;
  border-bottom: 1px solid var(--mb-line);
}

.section-kicker {
  color: var(--mb-blue);
}

.section-heading h2,
.reply-section h2 {
  margin: 8px 0 0;
  font-size: clamp(25px, 3vw, 36px);
  line-height: 1.12;
  letter-spacing: -.035em;
}

.section-heading > p {
  max-width: 520px;
  margin: 0;
  color: var(--mb-muted);
  font-size: 13px;
}

.allocation-layout {
  display: grid;
  grid-template-columns: 330px minmax(0, 1fr);
  gap: 44px;
  align-items: center;
  padding-top: 30px;
}

.allocation-visual {
  display: grid;
  grid-template-columns: 170px 1fr;
  gap: 24px;
  align-items: center;
}

.allocation-ring {
  width: 170px;
  height: 170px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background:
    conic-gradient(
      var(--mb-blue) 0 40.8%,
      var(--mb-violet) 40.8% 81.6%,
      var(--mb-amber) 81.6% 91.8%,
      var(--mb-green) 91.8% 100%
    );
  box-shadow: 0 16px 40px rgba(0, 0, 0, .16);
}

.allocation-ring::before {
  content: "";
  position: absolute;
  width: 112px;
  height: 112px;
  border-radius: 50%;
  background: var(--mb-panel);
}

.allocation-ring > div {
  position: relative;
  z-index: 1;
  display: grid;
  text-align: center;
}

.allocation-ring strong {
  font-size: 25px;
  line-height: 1;
}

.allocation-ring span {
  margin-top: 5px;
  color: var(--mb-muted);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.allocation-legend {
  display: grid;
  gap: 10px;
}

.allocation-legend span {
  display: grid;
  grid-template-columns: 8px 44px 1fr;
  gap: 7px;
  align-items: center;
  color: var(--mb-muted);
  font-size: 10px;
}

.allocation-legend i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
}

.allocation-legend b {
  color: var(--mb-text);
  font-size: 10px;
}

.legend-growth {
  background: var(--mb-blue);
}

.legend-trading {
  background: var(--mb-violet);
}

.legend-deposit {
  background: var(--mb-amber);
}

.legend-support {
  background: var(--mb-green);
}

.budget-ledger {
  border: 1px solid var(--mb-line);
  border-radius: 15px;
  overflow: hidden;
}

.ledger-row {
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr) auto;
  gap: 13px;
  align-items: center;
  min-height: 72px;
  padding: 13px 17px;
  border-bottom: 1px solid var(--mb-line);
  background: var(--mb-panel-strong);
}

.ledger-icon {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border-radius: 11px;
  font-size: 17px;
}

.ledger-row--growth .ledger-icon {
  color: var(--mb-blue);
  background: var(--mb-blue-soft);
}

.ledger-row--trading .ledger-icon {
  color: var(--mb-violet);
  background: var(--mb-violet-soft);
}

.ledger-row--deposit .ledger-icon {
  color: var(--mb-amber);
  background: var(--mb-amber-soft);
}

.ledger-row--support .ledger-icon {
  color: var(--mb-green);
  background: var(--mb-green-soft);
}

.ledger-row > div {
  display: grid;
}

.ledger-row > div strong {
  font-size: 13px;
}

.ledger-row > div small {
  color: var(--mb-muted);
  font-size: 10px;
}

.ledger-row > b {
  font-size: 14px;
  font-variant-numeric: tabular-nums;
}

.ledger-total {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 18px;
  background: linear-gradient(90deg, var(--mb-blue-soft), var(--mb-violet-soft));
}

.ledger-total span {
  color: var(--mb-muted);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.ledger-total strong {
  font-size: 21px;
}

.lane-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 11px;
  padding-top: 26px;
}

.lane-card {
  min-width: 0;
  padding: 17px;
  border: 1px solid var(--mb-line);
  border-radius: 14px;
  background: var(--mb-panel-strong);
}

.lane-card__head {
  gap: 9px;
}

.lane-card__head > span {
  width: 35px;
  height: 35px;
  display: grid;
  flex: 0 0 auto;
  place-items: center;
  border-radius: 10px;
  background: var(--mb-blue-soft);
  color: var(--mb-blue);
  font-size: 16px;
}

.lane-card--reserve .lane-card__head > span {
  color: var(--mb-green);
  background: var(--mb-green-soft);
}

.lane-card--outreach .lane-card__head > span {
  color: var(--mb-violet);
  background: var(--mb-violet-soft);
}

.lane-card__head > div {
  min-width: 0;
  display: grid;
}

.lane-card__head small {
  color: var(--mb-faint);
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .07em;
  text-transform: uppercase;
}

.lane-card__head strong {
  overflow: hidden;
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.lane-card__head > b {
  margin-left: auto;
  font-size: 12px;
}

.lane-card p {
  min-height: 60px;
  margin: 15px 0 16px;
  color: var(--mb-muted);
  font-size: 10px;
  line-height: 1.5;
}

.lane-bar {
  height: 4px;
  overflow: hidden;
  border-radius: 3px;
  background: var(--mb-panel-soft);
}

.lane-bar i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: var(--mb-blue);
}

.lane-card--reserve .lane-bar i {
  background: var(--mb-green);
}

.lane-card--outreach .lane-bar i {
  background: var(--mb-violet);
}

.lane-bar--30 {
  width: 100%;
}

.lane-bar--25 {
  width: 83.33%;
}

.lane-bar--20 {
  width: 66.67%;
}

.lane-bar--15 {
  width: 50%;
}

.lane-bar--10 {
  width: 33.33%;
}

.lane-bar--5 {
  width: 16.67%;
}

.lane-bar--0 {
  width: 0;
}

.gate-strip {
  justify-content: center;
  gap: 12px;
  margin-top: 22px;
  padding: 13px 16px;
  border: 1px solid var(--mb-line);
  border-radius: 11px;
  background: var(--mb-panel-soft);
  color: var(--mb-muted);
  font-size: 10px;
  font-weight: 750;
}

.gate-strip i {
  color: var(--mb-blue);
}

.outreach-guard {
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr);
  gap: 13px;
  align-items: start;
  margin-top: 12px;
  padding: 16px;
  border: 1px solid color-mix(in srgb, var(--mb-violet) 30%, var(--mb-line));
  border-radius: 12px;
  background: var(--mb-violet-soft);
}

.outreach-guard > i {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border-radius: 10px;
  color: var(--mb-violet);
  background: var(--mb-panel);
  font-size: 18px;
}

.outreach-guard strong {
  font-size: 12px;
}

.outreach-guard p {
  margin: 4px 0 0;
  color: var(--mb-muted);
  font-size: 10px;
}

.capital-path-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
  padding-top: 26px;
}

.capital-path-grid article {
  position: relative;
  min-height: 245px;
  padding: 21px;
  border: 1px solid var(--mb-line);
  border-radius: 14px;
  background: var(--mb-panel-strong);
}

.capital-path-grid article > i {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  margin-top: 32px;
  border-radius: 12px;
  color: var(--mb-blue);
  background: var(--mb-blue-soft);
  font-size: 20px;
}

.capital-path-grid h3 {
  margin: 15px 0 7px;
  font-size: 15px;
}

.capital-path-grid p,
.capital-path-grid small {
  color: var(--mb-muted);
  font-size: 10px;
}

.capital-path-grid small {
  display: block;
  margin-top: 13px;
  padding-top: 12px;
  border-top: 1px solid var(--mb-line);
}

.path-state {
  position: absolute;
  top: 18px;
  right: 18px;
  padding: 5px 8px;
  border-radius: 7px;
  font-size: 8px;
  font-weight: 850;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.path-state--design {
  color: var(--mb-green);
  background: var(--mb-green-soft);
}

.path-state--legal {
  color: var(--mb-amber);
  background: var(--mb-amber-soft);
}

.project-link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-top: 12px;
  padding: 17px 19px;
  border: 1px solid color-mix(in srgb, var(--mb-blue) 34%, var(--mb-line));
  border-radius: 12px;
  background: linear-gradient(90deg, var(--mb-blue-soft), var(--mb-violet-soft));
}

.project-link span {
  display: grid;
}

.project-link small {
  color: var(--mb-blue);
  font-size: 8px;
  font-weight: 850;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.project-link strong {
  margin-top: 3px;
  font-size: 12px;
}

.project-link > i {
  color: var(--mb-blue);
  font-size: 19px;
}

.mandate-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(310px, .7fr);
  gap: 18px;
  padding-top: 26px;
}

.mandate-table,
.scenario-card {
  border: 1px solid var(--mb-line);
  border-radius: 15px;
  background: var(--mb-panel-strong);
}

.mandate-table {
  overflow: hidden;
}

.mandate-table > header,
.mandate-table > div {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) 135px 90px;
  gap: 14px;
  align-items: center;
  padding: 13px 17px;
}

.mandate-table > header {
  color: var(--mb-faint);
  background: var(--mb-panel-soft);
  font-size: 9px;
  font-weight: 850;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.mandate-table > div {
  min-height: 69px;
  border-top: 1px solid var(--mb-line);
}

.mandate-table > div > span {
  display: grid;
  grid-template-columns: 9px minmax(0, 1fr);
  column-gap: 9px;
  align-items: center;
}

.mandate-table > div > span small {
  grid-column: 2;
  color: var(--mb-muted);
  font-size: 9px;
}

.mandate-table > div > span b,
.mandate-table > div > strong {
  font-size: 11px;
}

.asset-dot {
  width: 8px;
  height: 8px;
  grid-row: 1 / 3;
  border-radius: 50%;
}

.asset-dot--gold {
  background: #e3b34e;
}

.asset-dot--silver {
  background: #aab6ca;
}

.asset-dot--oil {
  background: #4f8093;
}

.asset-dot--equity {
  background: var(--mb-violet);
}

.asset-dot--cash {
  background: var(--mb-green);
}

.gate {
  justify-self: start;
  padding: 4px 7px;
  border-radius: 6px;
  font-size: 8px;
  font-style: normal;
  font-weight: 850;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.gate--lead {
  color: var(--mb-green);
  background: var(--mb-green-soft);
}

.gate--research {
  color: var(--mb-blue);
  background: var(--mb-blue-soft);
}

.gate--hold {
  color: var(--mb-amber);
  background: var(--mb-amber-soft);
}

.gate--cash {
  color: var(--mb-muted);
  background: var(--mb-panel-soft);
}

.scenario-card {
  padding: 22px;
  background:
    linear-gradient(155deg, color-mix(in srgb, var(--mb-violet) 9%, var(--mb-panel-strong)), var(--mb-panel-strong));
}

.scenario-card__label {
  color: var(--mb-violet);
}

.scenario-card__flow {
  display: flex;
  align-items: center;
  gap: 13px;
  margin: 19px 0;
}

.scenario-card__flow span {
  display: grid;
}

.scenario-card__flow small {
  color: var(--mb-muted);
  font-size: 9px;
}

.scenario-card__flow strong {
  font-size: 24px;
  line-height: 1.15;
}

.scenario-card__flow i {
  color: var(--mb-violet);
}

.scenario-card > p {
  margin: 0;
  color: var(--mb-muted);
  font-size: 11px;
}

.scenario-card > p b {
  color: var(--mb-text);
}

.risk-callout {
  display: flex;
  gap: 10px;
  margin: 18px 0;
  padding: 12px;
  border: 1px solid color-mix(in srgb, var(--mb-red) 25%, var(--mb-line));
  border-radius: 10px;
  background: color-mix(in srgb, var(--mb-red) 8%, transparent);
  color: var(--mb-red);
  font-size: 10px;
}

.risk-callout i {
  margin-top: 1px;
  font-size: 15px;
}

.risk-callout span {
  color: var(--mb-muted);
}

.risk-callout strong {
  display: block;
  color: var(--mb-red);
}

.scenario-card ul {
  display: grid;
  gap: 7px;
  margin: 0;
  padding-left: 18px;
  color: var(--mb-muted);
  font-size: 9px;
}

.control-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 11px;
  padding-top: 26px;
}

.control-grid article {
  position: relative;
  min-height: 178px;
  padding: 20px;
  border: 1px solid var(--mb-line);
  border-radius: 14px;
  background: var(--mb-panel-strong);
}

.control-grid article > span {
  position: absolute;
  top: 17px;
  right: 17px;
  color: var(--mb-faint);
  font-size: 9px;
  font-weight: 800;
}

.control-grid article > i {
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  border-radius: 10px;
  background: var(--mb-blue-soft);
  color: var(--mb-blue);
  font-size: 17px;
}

.control-grid h3 {
  margin: 22px 0 5px;
  font-size: 13px;
}

.control-grid p {
  margin: 0;
  color: var(--mb-muted);
  font-size: 10px;
}

.revenue-now-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 11px;
  padding-top: 26px;
}

.revenue-now-grid article {
  padding: 17px;
  border: 1px solid var(--mb-line);
  border-radius: 13px;
  background: var(--mb-panel-soft);
}

.revenue-now-grid small,
.revenue-now-grid span {
  display: block;
  color: var(--mb-muted);
  font-size: 9px;
}

.revenue-now-grid small {
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.revenue-now-grid strong {
  display: block;
  margin: 10px 0 6px;
  font-size: 20px;
  letter-spacing: -.025em;
}

.revenue-priority-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 11px;
  margin-top: 11px;
}

.revenue-priority {
  position: relative;
  padding: 20px;
  border: 1px solid color-mix(in srgb, var(--mb-green) 20%, var(--mb-line));
  border-radius: 14px;
  background: linear-gradient(145deg, var(--mb-green-soft), var(--mb-panel-strong) 58%);
}

.revenue-priority > i {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border-radius: 10px;
  background: var(--mb-green-soft);
  color: var(--mb-green);
  font-size: 18px;
}

.revenue-rank {
  position: absolute;
  top: 18px;
  right: 18px;
  color: var(--mb-green);
  font-size: 8px;
  font-weight: 850;
  letter-spacing: .07em;
  text-transform: uppercase;
}

.revenue-priority h3 {
  margin: 21px 0 7px;
  font-size: 13px;
}

.revenue-priority p {
  min-height: 77px;
  margin: 0;
  color: var(--mb-muted);
  font-size: 10px;
}

.revenue-priority small {
  display: block;
  margin-top: 13px;
  padding-top: 12px;
  border-top: 1px solid var(--mb-line);
  color: var(--mb-faint);
  font-size: 9px;
}

.forecast-panel {
  margin-top: 11px;
  padding: 22px;
  border: 1px solid var(--mb-line);
  border-radius: 15px;
  background: var(--mb-panel-strong);
}

.forecast-panel__head,
.board-actions {
  display: flex;
  align-items: center;
}

.forecast-panel__head {
  justify-content: space-between;
  gap: 20px;
}

.forecast-panel__head h3 {
  margin: 6px 0 0;
  font-size: 17px;
}

.forecast-state {
  padding: 7px 10px;
  border: 1px solid color-mix(in srgb, var(--mb-amber) 34%, var(--mb-line));
  border-radius: 999px;
  background: var(--mb-amber-soft);
  color: var(--mb-amber);
  font-size: 8px;
  font-weight: 850;
  letter-spacing: .06em;
  text-transform: uppercase;
  white-space: nowrap;
}

.forecast-scroll {
  overflow-x: auto;
  margin-top: 20px;
}

.forecast-table {
  width: 100%;
  min-width: 820px;
  border-collapse: collapse;
  font-size: 10px;
}

.forecast-table th,
.forecast-table td {
  padding: 13px 12px;
  border-bottom: 1px solid var(--mb-line);
  text-align: left;
  vertical-align: top;
}

.forecast-table th {
  color: var(--mb-faint);
  font-size: 8px;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.forecast-table td {
  color: var(--mb-muted);
}

.forecast-table td:first-child,
.forecast-table td:nth-child(3) {
  color: var(--mb-text);
}

.forecast-table td small {
  display: block;
  margin-top: 3px;
  color: var(--mb-faint);
  font-size: 8px;
}

.forecast-table td strong {
  font-size: 13px;
}

.forecast-note {
  margin: 14px 0 0;
  color: var(--mb-faint);
  font-size: 9px;
}

.revenue-boundary {
  display: flex;
  gap: 14px;
  margin-top: 11px;
  padding: 17px 19px;
  border: 1px solid color-mix(in srgb, var(--mb-amber) 26%, var(--mb-line));
  border-radius: 13px;
  background: var(--mb-amber-soft);
}

.revenue-boundary > i {
  color: var(--mb-amber);
  font-size: 18px;
}

.revenue-boundary strong {
  font-size: 11px;
}

.revenue-boundary p {
  margin: 4px 0 0;
  color: var(--mb-muted);
  font-size: 9px;
}

.board-actions {
  gap: 9px;
  padding-top: 24px;
  flex-wrap: wrap;
}

.board-map {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 9px;
  margin-top: 12px;
}

.board-map > a {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr) 18px;
  gap: 10px;
  align-items: center;
  min-width: 0;
  padding: 14px;
  border: 1px solid var(--mb-line);
  border-radius: 12px;
  background: var(--mb-panel-strong);
  transition: border-color .15s ease, transform .15s ease;
}

.board-map > a:hover {
  border-color: color-mix(in srgb, var(--mb-blue) 45%, var(--mb-line));
  transform: translateY(-1px);
}

.board-map > a > span {
  color: var(--mb-blue);
  font-size: 9px;
  font-weight: 850;
}

.board-map > a > div {
  min-width: 0;
  display: grid;
}

.board-map strong {
  overflow: hidden;
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.board-map small {
  color: var(--mb-muted);
  font-size: 8px;
}

.board-map > a > i {
  color: var(--mb-faint);
  font-size: 13px;
}

.timeline {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 0;
  margin: 0;
  padding: 30px 0 4px;
  list-style: none;
}

.timeline li {
  position: relative;
  min-width: 0;
  padding-right: 18px;
}

.timeline li::before {
  content: "";
  position: absolute;
  top: 23px;
  left: 5px;
  width: 100%;
  height: 1px;
  background: var(--mb-line-strong);
}

.timeline li:last-child::before {
  display: none;
}

.timeline li > span {
  position: relative;
  z-index: 1;
  display: inline-block;
  padding: 6px 9px;
  border: 1px solid color-mix(in srgb, var(--mb-blue) 35%, var(--mb-line));
  border-radius: 7px;
  background: var(--mb-panel);
  color: var(--mb-blue);
  font-size: 8px;
  font-weight: 850;
  letter-spacing: .07em;
  text-transform: uppercase;
}

.timeline li > div {
  padding-top: 17px;
}

.timeline strong {
  display: block;
  margin-bottom: 5px;
  font-size: 11px;
}

.timeline p {
  margin: 0;
  color: var(--mb-muted);
  font-size: 9px;
}

.reply-section {
  margin-top: 18px;
  padding: 34px;
  border: 1px solid color-mix(in srgb, var(--mb-blue) 30%, var(--mb-line));
  border-radius: 20px;
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--mb-blue) 8%, var(--mb-panel)), var(--mb-panel));
}

.reply-section__head {
  justify-content: space-between;
  gap: 20px;
}

.reply-section blockquote {
  margin: 28px 0 0;
  padding: 22px 24px;
  border-left: 3px solid var(--mb-blue);
  border-radius: 0 12px 12px 0;
  background: var(--mb-panel-soft);
  color: var(--mb-muted);
  font-size: 14px;
  line-height: 1.7;
}

.disclosure {
  display: flex;
  gap: 15px;
  margin-top: 18px;
  padding: 22px 24px;
  border: 1px solid color-mix(in srgb, var(--mb-amber) 28%, var(--mb-line));
  border-radius: 15px;
  background: var(--mb-amber-soft);
}

.disclosure > i {
  color: var(--mb-amber);
  font-size: 19px;
}

.disclosure strong {
  font-size: 12px;
}

.disclosure p {
  margin: 4px 0 0;
  color: var(--mb-muted);
  font-size: 10px;
}

.brief-footer {
  justify-content: space-between;
  gap: 20px;
  min-height: 92px;
  color: var(--mb-faint);
  font-size: 10px;
}

.copy-toast {
  position: fixed;
  right: 24px;
  bottom: 24px;
  z-index: 10;
  padding: 12px 16px;
  border: 1px solid color-mix(in srgb, var(--mb-green) 35%, var(--mb-line));
  border-radius: 10px;
  background: var(--mb-panel);
  color: var(--mb-green);
  box-shadow: var(--mb-shadow);
  font-size: 11px;
  font-weight: 800;
  opacity: 0;
  transform: translateY(12px);
  pointer-events: none;
  transition: opacity .16s ease, transform .16s ease;
}

.copy-toast.is-visible {
  opacity: 1;
  transform: translateY(0);
}

button:focus-visible,
a:focus-visible {
  outline: 3px solid color-mix(in srgb, var(--mb-blue) 55%, transparent);
  outline-offset: 3px;
}

@media (max-width: 1080px) {
  .brief-hero {
    grid-template-columns: 1fr 320px;
    gap: 34px;
  }

  .toc-sidebar {
    display: none;
  }

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

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

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

  .allocation-layout {
    grid-template-columns: 1fr;
  }

  .allocation-visual {
    grid-template-columns: 170px minmax(0, 280px);
    justify-content: center;
  }

  .lane-grid {
    grid-template-columns: repeat(3, 1fr);
  }

  .mandate-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .brief-shell {
    width: min(100% - 24px, 1240px);
  }

  .brief-status {
    display: none;
  }

  .brief-hero {
    grid-template-columns: 1fr;
    gap: 28px;
    padding: 54px 0 34px;
  }

  .brief-hero h1 {
    font-size: clamp(38px, 11vw, 58px);
  }

  .decision-card {
    padding: 24px;
  }

  .metric-grid,
  .lane-grid,
  .control-grid,
  .capital-path-grid,
  .revenue-now-grid,
  .revenue-priority-grid,
  .board-map {
    grid-template-columns: 1fr;
  }

  .metric-card {
    min-height: 126px;
  }

  .brief-section,
  .reply-section {
    padding: 23px 18px;
  }

  .section-heading {
    align-items: flex-start;
    flex-direction: column;
    gap: 12px;
  }

  .forecast-panel__head {
    align-items: flex-start;
    flex-direction: column;
  }

  .allocation-visual {
    grid-template-columns: 1fr;
    justify-items: center;
  }

  .allocation-legend {
    width: 100%;
  }

  .ledger-row {
    grid-template-columns: 38px minmax(0, 1fr);
  }

  .ledger-row > b {
    grid-column: 2;
  }

  .lane-card p {
    min-height: 0;
  }

  .gate-strip {
    align-items: flex-start;
    flex-direction: column;
  }

  .gate-strip i {
    transform: rotate(90deg);
  }

  .mandate-table {
    overflow: hidden;
  }

  .mandate-table > header {
    display: none;
  }

  .mandate-table > div {
    min-width: 0;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 5px 12px;
  }

  .mandate-table > div > span {
    grid-row: 1 / 3;
  }

  .mandate-table > div > strong {
    grid-column: 2;
    grid-row: 1;
    justify-self: end;
  }

  .mandate-table > div > .gate {
    grid-column: 2;
    grid-row: 2;
    justify-self: end;
  }

  .timeline {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .timeline li {
    display: grid;
    grid-template-columns: 80px 1fr;
    gap: 14px;
    padding: 0;
  }

  .timeline li::before {
    top: 23px;
    left: 39px;
    width: 1px;
    height: calc(100% + 18px);
  }

  .timeline li > span {
    justify-self: start;
  }

  .timeline li > div {
    padding: 3px 0 0;
  }

  .reply-section__head,
  .brief-footer {
    align-items: flex-start;
    flex-direction: column;
  }

  .reply-section blockquote {
    padding: 18px;
    font-size: 12px;
  }

  .brief-footer {
    justify-content: center;
    padding: 24px 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    transition: none !important;
  }
}

@media print {
  :root,
  html[data-theme] {
    color-scheme: light;
    --mb-bg: #fff;
    --mb-panel: #fff;
    --mb-panel-strong: #fff;
    --mb-panel-soft: #f7f8fa;
    --mb-text: #111827;
    --mb-muted: #4b5563;
    --mb-faint: #6b7280;
    --mb-line: #d9dee7;
    --mb-line-strong: #cbd2dd;
    --mb-blue: #0f766e;
    --mb-violet: #715ac7;
    --mb-green: #087a58;
    --mb-amber: #8a5900;
    --mb-red: #a9233b;
  }

  body {
    background: #fff;
    font-size: 11px;
  }

  .brief-shell {
    width: 100%;
  }

  .brief-topbar {
    min-height: 56px;
  }

  .brief-topbar__meta,
  .hero-actions,
  .copy-toast {
    display: none !important;
  }

  .brief-hero {
    grid-template-columns: 1.4fr .7fr;
    gap: 28px;
    padding: 32px 0 26px;
  }

  .brief-hero h1 {
    font-size: 36px;
  }

  .hero-lead {
    font-size: 13px;
  }

  .decision-card,
  .brief-section,
  .reply-section {
    box-shadow: none;
    break-inside: avoid;
  }

  .metric-grid {
    grid-template-columns: repeat(4, 1fr);
  }

  .metric-card {
    min-height: 110px;
    padding: 15px;
  }

  .brief-section,
  .reply-section {
    margin-top: 12px;
    padding: 22px;
  }

  .lane-grid {
    grid-template-columns: repeat(4, 1fr);
  }

  .control-grid {
    grid-template-columns: repeat(3, 1fr);
  }

  .revenue-now-grid {
    grid-template-columns: repeat(4, 1fr);
  }

  .revenue-priority-grid,
  .board-map {
    grid-template-columns: repeat(3, 1fr);
  }
}

/* ---- TOC sidebar ---- */

.toc-sidebar {
  position: fixed;
  top: 50%;
  left: max(10px, calc((100vw - 1240px) / 2 - 200px));
  transform: translateY(-50%);
  z-index: 8;
  width: 170px;
  max-height: 80vh;
  overflow-y: auto;
  padding: 16px;
  border: 1px solid var(--mb-line);
  border-radius: 14px;
  background: var(--mb-panel);
  box-shadow: 0 8px 30px rgba(0, 0, 0, .08);
  opacity: .55;
  transition: opacity .2s ease, transform .2s ease;
}

.toc-sidebar:hover,
.toc-sidebar.is-open {
  opacity: 1;
}

.toc-sidebar ol {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 2px;
}

.toc-sidebar a {
  display: block;
  padding: 6px 9px;
  border-radius: 7px;
  color: var(--mb-muted);
  font-size: 11px;
  font-weight: 700;
  transition: color .12s ease, background .12s ease;
}

.toc-sidebar a:hover,
.toc-sidebar a.is-active {
  color: var(--mb-blue);
  background: var(--mb-blue-soft);
}

.toc-toggle {
  display: none;
  width: 100%;
  padding: 6px 9px;
  border: 1px solid var(--mb-line);
  border-radius: 8px;
  background: var(--mb-panel-soft);
  color: var(--mb-muted);
  cursor: pointer;
  font-size: 14px;
  margin-bottom: 8px;
}

/* ---- Language toggle ---- */

.lang-toggle {
  display: inline-flex;
  align-items: center;
  gap: 0;
  padding: 0;
  border: 1px solid var(--mb-line);
  border-radius: 9px;
  background: var(--mb-panel);
  overflow: hidden;
  cursor: pointer;
}

.lang-toggle__opt {
  padding: 6px 9px;
  border: 0;
  background: transparent;
  font-size: 9px;
  font-weight: 850;
  letter-spacing: .06em;
  color: var(--mb-faint);
  cursor: pointer;
  transition: color .12s ease, background .12s ease;
}

.lang-toggle__opt.is-active {
  color: var(--mb-blue);
  background: var(--mb-blue-soft);
}

.lang-toggle__sep {
  width: 1px;
  height: 14px;
  background: var(--mb-line);
}

/* ---- Call button ---- */

.button--call {
  border-color: color-mix(in srgb, var(--mb-green) 40%, var(--mb-line));
  background: linear-gradient(135deg, var(--mb-green-soft), var(--mb-panel-strong));
  color: var(--mb-green);
}

.button--call:hover {
  border-color: var(--mb-green);
  background: var(--mb-green-soft);
}

/* ---- Milestone funding ladder ---- */

.funding-ladder {
  margin-top: 14px;
  padding: 22px;
  border: 1px solid color-mix(in srgb, var(--mb-green) 25%, var(--mb-line));
  border-radius: 15px;
  background: linear-gradient(145deg, var(--mb-green-soft), var(--mb-panel-strong) 62%);
}

.funding-ladder__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
}

.funding-ladder__head h3 {
  margin: 6px 0 0;
  font-size: 18px;
}

.funding-ladder__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
  margin-top: 19px;
}

.funding-ladder__grid article {
  padding: 17px;
  border: 1px solid var(--mb-line);
  border-radius: 12px;
  background: var(--mb-panel);
}

.funding-ladder__grid article > span {
  color: var(--mb-green);
  font-size: 8px;
  font-weight: 850;
  letter-spacing: .07em;
  text-transform: uppercase;
}

.funding-ladder__grid article > strong {
  display: block;
  margin: 11px 0 8px;
  font-size: 25px;
  letter-spacing: -.035em;
}

.funding-ladder__grid p,
.funding-ladder__grid small,
.funding-extension p {
  color: var(--mb-muted);
  font-size: 9px;
}

.funding-ladder__grid p {
  min-height: 57px;
  margin: 0;
}

.funding-ladder__grid small {
  display: block;
  margin-top: 12px;
  padding-top: 11px;
  border-top: 1px solid var(--mb-line);
  color: var(--mb-faint);
}

.funding-extension {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  margin-top: 10px;
  padding: 15px 17px;
  border: 1px solid color-mix(in srgb, var(--mb-blue) 25%, var(--mb-line));
  border-radius: 11px;
  background: var(--mb-blue-soft);
}

.funding-extension > i {
  color: var(--mb-blue);
  font-size: 18px;
}

.funding-extension strong {
  font-size: 11px;
}

.funding-extension p {
  margin: 4px 0 0;
}

/* ---- Calculator ---- */

.calculator-panel {
  margin-top: 11px;
  padding: 22px;
  border: 1px solid color-mix(in srgb, var(--mb-blue) 24%, var(--mb-line));
  border-radius: 15px;
  background: linear-gradient(135deg, var(--mb-blue-soft), var(--mb-panel-strong) 58%);
}

.calculator-panel__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}

.calculator-panel__head h3 {
  margin: 5px 0 0;
  font-size: 15px;
}

.calculator-panel__result {
  padding: 10px 16px;
  border: 1px solid var(--mb-blue);
  border-radius: 10px;
  background: var(--mb-panel);
  color: var(--mb-blue);
  font-size: 22px;
  font-weight: 850;
  letter-spacing: -.03em;
  white-space: nowrap;
}

.calculator-sliders {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 14px;
  margin-top: 20px;
}

.calc-slider {
  display: grid;
  gap: 6px;
  cursor: pointer;
}

.calc-slider > span {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 6px;
}

.calc-slider strong {
  font-size: 11px;
}

.calc-slider small {
  color: var(--mb-faint);
  font-size: 9px;
}

.calc-slider input[type="range"] {
  width: 100%;
  height: 5px;
  -webkit-appearance: none;
  appearance: none;
  border-radius: 3px;
  background: var(--mb-line-strong);
  outline: none;
  cursor: pointer;
}

.calc-slider input[type="range"]::-webkit-slider-thumb {
  -webkit-appearance: none;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: var(--mb-blue);
  box-shadow: 0 2px 8px color-mix(in srgb, var(--mb-blue) 35%, transparent);
  cursor: pointer;
}

.calc-slider output {
  color: var(--mb-blue);
  font-size: 10px;
  font-weight: 850;
}

.calculator-presets {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 18px;
  flex-wrap: wrap;
}

.calculator-presets > span {
  color: var(--mb-faint);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.calc-preset {
  padding: 5px 10px;
  border: 1px solid var(--mb-line);
  border-radius: 7px;
  background: var(--mb-panel);
  color: var(--mb-muted);
  font-size: 10px;
  font-weight: 750;
  cursor: pointer;
  transition: border-color .12s ease, color .12s ease;
}

.calc-preset:hover {
  border-color: var(--mb-blue);
  color: var(--mb-blue);
}

/* ---- Report mockup ---- */

.report-mockup {
  margin-top: 14px;
  padding: 20px;
  border: 1px dashed var(--mb-line-strong);
  border-radius: 14px;
  background: var(--mb-panel-soft);
}

.report-mockup__head {
  display: flex;
  gap: 12px;
  align-items: center;
  margin-bottom: 16px;
}

.report-mockup__head > i {
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  border-radius: 10px;
  background: var(--mb-blue-soft);
  color: var(--mb-blue);
  font-size: 18px;
}

.report-mockup__head strong {
  font-size: 12px;
}

.report-mockup__head small {
  display: block;
  margin-top: 2px;
  color: var(--mb-faint);
  font-size: 9px;
}

.report-mockup__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 8px;
}

.report-cell {
  padding: 13px;
  border: 1px solid var(--mb-line);
  border-radius: 10px;
  background: var(--mb-panel);
}

.report-cell > span {
  display: block;
  color: var(--mb-faint);
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.report-cell > strong {
  display: block;
  margin: 7px 0 3px;
  font-size: 18px;
  color: var(--mb-text);
}

.report-cell > small {
  color: var(--mb-muted);
  font-size: 8px;
}

.report-mockup__note {
  margin: 14px 0 0;
  color: var(--mb-faint);
  font-size: 9px;
  font-style: italic;
}

/* ---- FAQ accordion ---- */

.faq-list {
  display: grid;
  gap: 8px;
  padding-top: 24px;
}

.faq-item {
  border: 1px solid var(--mb-line);
  border-radius: 12px;
  background: var(--mb-panel-strong);
  overflow: hidden;
}

.faq-item > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 16px 18px;
  cursor: pointer;
  font-size: 13px;
  font-weight: 700;
  list-style: none;
  user-select: none;
}

.faq-item > summary::-webkit-details-marker {
  display: none;
}

.faq-item > summary:hover {
  background: var(--mb-panel-soft);
}

.faq-item > summary i {
  flex: 0 0 auto;
  font-size: 18px;
  color: var(--mb-faint);
  transition: transform .2s ease;
}

.faq-item[open] > summary i {
  transform: rotate(45deg);
}

.faq-item > p {
  margin: 0;
  padding: 0 18px 18px;
  color: var(--mb-muted);
  font-size: 12px;
  line-height: 1.6;
}

.faq-item > p code {
  padding: 2px 6px;
  border-radius: 4px;
  background: var(--mb-panel-soft);
  font-size: 11px;
}

.faq-item > p a {
  color: var(--mb-blue);
  text-decoration: underline;
}

/* ---- Downside ---- */

.downside-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 11px;
  padding-top: 24px;
}

.downside-card {
  position: relative;
  padding: 20px;
  border: 1px solid var(--mb-line);
  border-radius: 14px;
  background: var(--mb-panel-strong);
}

.downside-card > i {
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  border-radius: 10px;
  font-size: 19px;
}

.downside-card--loss > i {
  color: var(--mb-red);
  background: color-mix(in srgb, var(--mb-red) 12%, transparent);
}

.downside-card--pause > i {
  color: var(--mb-amber);
  background: var(--mb-amber-soft);
}

.downside-card--decide > i {
  color: var(--mb-blue);
  background: var(--mb-blue-soft);
}

.downside-card h3 {
  margin: 16px 0 7px;
  font-size: 13px;
}

.downside-card p {
  margin: 0;
  color: var(--mb-muted);
  font-size: 10px;
  line-height: 1.55;
}

/* ---- Responsive additions ---- */

@media (max-width: 760px) {
  .funding-ladder__head {
    flex-direction: column;
  }

  .funding-ladder__grid {
    grid-template-columns: 1fr;
  }

  .funding-ladder__grid p {
    min-height: 0;
  }

  .calculator-sliders {
    grid-template-columns: 1fr;
  }

  .calculator-panel__head {
    flex-direction: column;
    align-items: flex-start;
  }

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

  .downside-grid {
    grid-template-columns: 1fr;
  }

  .faq-item > summary {
    font-size: 11px;
  }
}

@media (min-width: 761px) and (max-width: 1080px) {
  .funding-ladder__grid {
    grid-template-columns: 1fr;
  }

  .funding-ladder__grid p {
    min-height: 0;
  }
}

@media (max-width: 1599px) {
  .toc-sidebar {
    display: none;
  }
}

@media print {
  .toc-sidebar,
  .lang-toggle,
  .button--call,
  .calculator-panel {
    display: none !important;
  }

  .funding-ladder {
    break-inside: avoid;
  }
}

/* APP-004 — screen-only Signal refinement. Kept after the historical brief
   slices so future content additions inherit the same surface behavior. */
@media screen {
  .brief-shell {
    width: min(1320px, calc(100% - 40px));
  }

  .brief-topbar {
    position: sticky;
    top: 0;
    z-index: 30;
    min-height: 68px;
    background:
      linear-gradient(90deg, color-mix(in srgb, var(--mb-blue) 7%, transparent), transparent 38%),
      color-mix(in srgb, var(--mb-bg) 88%, transparent);
    backdrop-filter: saturate(130%) blur(18px);
  }

  .brief-topbar::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: -1px;
    left: 0;
    height: 1px;
    background: linear-gradient(90deg, var(--mb-blue), color-mix(in srgb, var(--mb-violet) 45%, transparent), transparent 72%);
    opacity: .7;
  }

  .brief-section,
  .reply-section,
  .decision-card,
  .metric-card,
  .forecast-panel,
  .funding-ladder,
  .calculator-panel,
  .faq-item {
    border-color: color-mix(in srgb, var(--mb-line) 84%, var(--mb-blue));
  }

  .brief-section,
  .reply-section {
    border-radius: 18px;
    box-shadow: 0 1px 0 color-mix(in srgb, var(--mb-text) 4%, transparent), var(--goga-shadow-sm);
  }

  .decision-card {
    border-radius: 18px;
    background:
      linear-gradient(145deg, color-mix(in srgb, var(--mb-blue) 12%, var(--mb-panel)), var(--mb-panel) 58%),
      var(--mb-panel);
  }

  .metric-card {
    border-radius: 14px;
    box-shadow: var(--goga-shadow-sm);
    transition: border-color .16s ease, transform .16s ease, box-shadow .16s ease;
  }

  .metric-card:hover {
    border-color: color-mix(in srgb, currentColor 38%, var(--mb-line));
    box-shadow: var(--goga-shadow-md);
    transform: translateY(-2px);
  }

  .section-kicker,
  .decision-card__label,
  .metric-card > span,
  .scenario-card__label {
    letter-spacing: .12em;
  }

  .button,
  .icon-button,
  .lang-toggle__opt {
    min-height: 44px;
  }

  .icon-button {
    width: 44px;
    height: 44px;
  }
}

@media screen and (max-width: 760px) {
  .brief-shell {
    width: min(100% - 24px, 1320px);
  }

  .brief-topbar {
    min-height: 64px;
    gap: 10px;
  }

  .brief-brand {
    gap: 9px;
  }

  .brief-brand small {
    letter-spacing: .06em;
  }

  .brief-hero {
    padding-top: 42px;
  }

  .hero-actions {
    align-items: stretch;
  }

  .hero-actions .button {
    flex: 1 1 100%;
  }

  .metric-card:hover {
    transform: none;
  }
}
