/*
 * Kashmir intelligence-audit post
 * Derived from the FRC-Cibola post stylesheet for the Tarqeq WordPress site.
 * Blue = source; orange = analytical work; green = inspected output;
 * purple = human control; neutral grey = limits or unresolved information.
 */

.frc-afa-page {
  --frc-ink: #eef3f7;
  --frc-muted: #aeb9c2;
  --frc-rule: #35404a;
  --frc-paper: #11161b;
  --frc-mist: #171e24;
  --frc-input: #62c1ff;
  --frc-machinery: #ffb675;
  --frc-output: #63dcb5;
  --frc-human: #e1a5f3;
  --frc-shadow: 0 16px 42px rgba(0, 0, 0, 0.42);
  width: 100%;
  max-width: 100%;
  min-width: 0;
  background: transparent;
  color: var(--frc-ink);
  color-scheme: dark;
  font-size: 1.8rem;
  line-height: 1.65;
}

.frc-afa-page,
.frc-afa-page * { box-sizing: border-box; }

.frc-afa-page > * {
  max-width: 72rem;
  min-width: 0;
  margin-right: auto;
  margin-left: auto;
}

.frc-afa-page .frc-wide {
  width: min(112rem, calc(100vw - 4rem));
  max-width: 112rem;
  margin-right: 0;
  margin-left: 50%;
  transform: translateX(-50%);
}

.frc-afa-page h2,
.frc-afa-page h3,
.frc-afa-page h4 {
  color: var(--frc-ink);
  line-height: 1.15;
  letter-spacing: -0.025em;
}

.frc-afa-page h2 {
  margin-top: 5.2rem;
  margin-bottom: 1.6rem;
  font-size: clamp(3.2rem, 4.5vw, 5.2rem);
}

.frc-afa-page h3 {
  margin-top: 2.8rem;
  margin-bottom: 1.1rem;
  font-size: clamp(2.4rem, 3vw, 3.4rem);
}

.frc-afa-page h4 {
  margin-top: 1.8rem;
  margin-bottom: 0.8rem;
  font-size: 2rem;
}

.frc-afa-page p,
.frc-afa-page li { color: var(--frc-ink); }

.frc-afa-page a {
  color: var(--frc-ink);
  text-decoration-thickness: 0.08em;
  text-underline-offset: 0.15em;
}

.frc-afa-page a:focus-visible {
  outline: 0.3rem solid var(--frc-ink);
  outline-offset: 0.3rem;
}

.frc-afa-page [id] { scroll-margin-top: 8rem; }

.frc-afa-page .frc-kicker {
  margin: 0 0 1.2rem;
  color: var(--frc-muted);
  font-size: 1.4rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.frc-afa-page .frc-deck {
  max-width: 78rem;
  margin: 0;
  color: var(--frc-muted);
  font-size: clamp(2rem, 2.4vw, 2.8rem);
  line-height: 1.45;
}

.frc-afa-page .frc-authorship-notice {
  position: relative;
  margin-top: 3rem;
  padding: clamp(1.6rem, 2.5vw, 2.4rem);
  border: 0.1rem solid #4b5863;
  border-left: 0.6rem solid var(--frc-human);
  background: var(--frc-paper);
  box-shadow: var(--frc-shadow);
  font-size: 1.45rem;
  line-height: 1.55;
}

.frc-afa-page .frc-authorship-notice h2 {
  margin: 0 0 1.5rem;
  font-size: clamp(2rem, 2.5vw, 2.8rem);
}

.frc-afa-page .frc-authorship-notice p { max-width: 92rem; margin: 0.8rem 0 0; }
.frc-afa-page .frc-authorship-notice .frc-kicker { font-size: 1.15rem; }

.frc-afa-page .frc-stage-nav {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 0.6rem;
  margin-top: 3rem;
}

.frc-afa-page .frc-stage-nav a {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 5rem;
  padding: 0.8rem;
  border: 0.1rem solid var(--frc-rule);
  background: rgba(17, 22, 27, 0.96);
  color: var(--frc-ink);
  font-size: 1.3rem;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
}

.frc-afa-page .frc-stage-nav a:nth-child(1) { border-top: 0.4rem solid var(--frc-input); }
.frc-afa-page .frc-stage-nav a:nth-child(2),
.frc-afa-page .frc-stage-nav a:nth-child(3) { border-top: 0.4rem solid var(--frc-machinery); }
.frc-afa-page .frc-stage-nav a:nth-child(4) { border-top: 0.4rem solid var(--frc-output); }
.frc-afa-page .frc-stage-nav a:nth-child(5) { border-top: 0.4rem solid var(--frc-rule); }

.kma-page .kma-color-key {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 0.6rem;
  margin-top: 0.8rem;
}

.kma-page .kma-color-key span {
  padding: 0.65rem 0.8rem;
  border-bottom: 0.3rem solid var(--frc-rule);
  color: var(--frc-muted);
  font-size: 1.1rem;
  font-weight: 750;
  letter-spacing: 0.06em;
  text-align: center;
  text-transform: uppercase;
}

.kma-page .kma-color-key .kma-key--source { border-color: var(--frc-input); }
.kma-page .kma-color-key .kma-key--method { border-color: var(--frc-machinery); }
.kma-page .kma-color-key .kma-key--output { border-color: var(--frc-output); }
.kma-page .kma-color-key .kma-key--human { border-color: var(--frc-human); }
.kma-page .kma-color-key .kma-key--limit { border-color: #7d8993; }

.frc-afa-page .frc-pipeline {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.2rem;
  margin: 2.5rem 0;
}

.frc-afa-page .frc-pipeline-step {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 15rem;
  padding: 2rem;
  border: 0.1rem solid var(--frc-rule);
  background: var(--frc-paper);
  color: var(--frc-ink);
  text-decoration: none;
}

.frc-afa-page .frc-pipeline-step::after {
  content: "→";
  position: absolute;
  top: 50%;
  right: -1.9rem;
  z-index: 2;
  color: var(--frc-muted);
  font-size: 2rem;
  transform: translateY(-50%);
}

.frc-afa-page .frc-pipeline-step:last-child::after { display: none; }
.frc-afa-page .frc-pipeline-step--input { border-top: 0.5rem solid var(--frc-input); }
.frc-afa-page .frc-pipeline-step--machinery { border-top: 0.5rem solid var(--frc-machinery); }
.frc-afa-page .frc-pipeline-step--output { border-top: 0.5rem solid var(--frc-output); }
.frc-afa-page .frc-pipeline-step small { color: var(--frc-muted); font-size: 1.2rem; font-weight: 750; letter-spacing: 0.1em; text-transform: uppercase; }
.frc-afa-page .frc-pipeline-step strong { margin: 1rem 0 0.6rem; font-size: 2rem; line-height: 1.2; }
.frc-afa-page .frc-pipeline-step span { color: var(--frc-muted); font-size: 1.4rem; }

.frc-afa-page .frc-phase-section > h2 {
  padding-top: 1.4rem;
  border-top: 0.5rem solid var(--frc-rule);
}

.frc-afa-page .frc-phase-section--input > h2 { border-top-color: var(--frc-input); }
.frc-afa-page .frc-phase-section--machinery > h2 { border-top-color: var(--frc-machinery); }
.frc-afa-page .frc-phase-section--output > h2 { border-top-color: var(--frc-output); }

.frc-afa-page .frc-section-intro {
  max-width: 76rem;
  color: var(--frc-muted);
  font-size: 2rem;
}

.frc-afa-page .frc-role-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
  margin: 2.4rem 0 0;
}

.frc-afa-page .frc-role {
  display: inline-flex;
  align-items: center;
  min-height: 2.8rem;
  padding: 0.4rem 0.9rem;
  border: 0.1rem solid currentColor;
  border-radius: 999px;
  font-size: 1.2rem;
  font-weight: 750;
  letter-spacing: 0.08em;
  line-height: 1.2;
  text-transform: uppercase;
}

.frc-afa-page .frc-role--human { color: var(--frc-human); background: #261a2b; }
.frc-afa-page .frc-role--llm { color: var(--frc-machinery); background: #2a2018; }
.frc-afa-page .frc-role--source { color: var(--frc-input); background: #14222d; }

.frc-afa-page .frc-grid-2,
.frc-afa-page .frc-grid-3,
.frc-afa-page .frc-finding-grid {
  display: grid;
  gap: 1.6rem;
}

.frc-afa-page .frc-grid-2,
.frc-afa-page .frc-finding-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.frc-afa-page .frc-grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }

.frc-afa-page .frc-card,
.frc-afa-page .frc-question,
.frc-afa-page .frc-finding {
  min-width: 0;
  margin: 0;
  padding: 2rem;
  border: 0.1rem solid var(--frc-rule);
  background: var(--frc-paper);
}

.frc-afa-page .frc-card > :first-child,
.frc-afa-page .frc-question > :first-child,
.frc-afa-page .frc-finding > :first-child { margin-top: 0; }

.frc-afa-page .frc-card > :last-child,
.frc-afa-page .frc-question > :last-child,
.frc-afa-page .frc-finding > :last-child { margin-bottom: 0; }

.frc-afa-page .frc-question { border-left: 0.4rem solid var(--frc-human); }
.frc-afa-page .frc-question strong { display: block; margin-bottom: 0.6rem; }

.frc-afa-page .frc-stage-gate {
  display: grid;
  grid-template-columns: minmax(14rem, 0.45fr) minmax(20rem, 0.8fr) minmax(24rem, 1.4fr);
  gap: 1.5rem;
  align-items: center;
  margin: 3rem 0;
  padding: 1.8rem 2rem;
  border: 0.1rem solid var(--frc-rule);
  background: var(--frc-paper);
}

.frc-afa-page .frc-stage-gate--input { border-left: 0.6rem solid var(--frc-input); }
.frc-afa-page .frc-stage-gate--machinery { border-left: 0.6rem solid var(--frc-machinery); }
.frc-afa-page .frc-stage-gate--output { border-left: 0.6rem solid var(--frc-output); }
.frc-afa-page .frc-stage-gate small { color: var(--frc-muted); font-size: 1.15rem; font-weight: 750; letter-spacing: 0.08em; text-transform: uppercase; }
.frc-afa-page .frc-stage-gate strong { font-size: 1.8rem; line-height: 1.25; }
.frc-afa-page .frc-stage-gate span { color: var(--frc-muted); font-size: 1.4rem; }

.frc-afa-page .frc-prompt {
  position: relative;
  margin: 2rem 0;
  padding: 2.2rem 2.4rem 2.2rem 4.8rem;
  border: 0.1rem solid var(--frc-rule);
  border-left: 0.5rem solid var(--frc-input);
  background: var(--frc-paper);
  color: var(--frc-ink);
  font-size: 1.8rem;
  font-style: normal;
}

.frc-afa-page .frc-prompt::before {
  content: "“";
  position: absolute;
  top: 0.3rem;
  left: 1.4rem;
  color: var(--frc-input);
  font-size: 5rem;
  line-height: 1;
}

.frc-afa-page .frc-prompt cite {
  display: block;
  margin-top: 1rem;
  color: var(--frc-muted);
  font-size: 1.3rem;
  font-style: normal;
}

.frc-afa-page .frc-decision,
.frc-afa-page .frc-limit {
  margin: 2rem 0;
  padding: 1.6rem 1.8rem;
  border: 0.1rem solid var(--frc-rule);
  background: var(--frc-mist);
}

.frc-afa-page .frc-decision { border-left: 0.5rem solid var(--frc-human); }
.frc-afa-page .frc-decision strong { color: var(--frc-human); }
.frc-afa-page .frc-limit { border-left: 0.5rem solid #7d8993; }

.frc-afa-page .frc-note {
  color: var(--frc-muted);
  font-size: 1.45rem;
  line-height: 1.55;
}

.frc-afa-page .frc-method-strip {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 0.8rem;
  margin: 2rem 0;
  padding: 0;
  list-style: none;
  counter-reset: method;
}

.frc-afa-page .frc-method-strip li {
  position: relative;
  min-width: 0;
  min-height: 18rem;
  padding: 4.8rem 1.5rem 1.5rem;
  border: 0.1rem solid var(--frc-rule);
  border-top: 0.4rem solid var(--frc-machinery);
  background: var(--frc-paper);
  counter-increment: method;
}

.frc-afa-page .frc-method-strip li::before {
  content: counter(method, decimal-leading-zero);
  position: absolute;
  top: 1.2rem;
  left: 1.5rem;
  color: var(--frc-machinery);
  font-size: 1.2rem;
  font-weight: 750;
  letter-spacing: 0.08em;
}

.frc-afa-page .frc-method-strip strong { display: block; margin-bottom: 0.7rem; line-height: 1.25; }
.frc-afa-page .frc-method-strip span { display: block; color: var(--frc-muted); font-size: 1.35rem; line-height: 1.45; }

.frc-afa-page .frc-finding { border-top: 0.4rem solid var(--frc-rule); }
.frc-afa-page .frc-finding h4 { margin: 0 0 1rem; }
.frc-afa-page .frc-triptych { display: grid; gap: 0.8rem; }
.frc-afa-page .frc-triptych div { padding: 1rem; background: var(--frc-mist); font-size: 1.4rem; }
.frc-afa-page .frc-triptych strong { display: block; margin-bottom: 0.35rem; color: var(--frc-muted); font-size: 1.1rem; letter-spacing: 0.07em; text-transform: uppercase; }

/* Kashmir-specific argumentative visuals */
.kma-page .kma-opening { padding-top: 0.4rem; }

.kma-page .kma-thesis {
  display: grid;
  grid-template-columns: minmax(13rem, 0.35fr) minmax(24rem, 1.65fr);
  gap: 2rem;
  align-items: center;
  margin: 2.6rem 0 0;
  padding: 2rem 2.2rem;
  border: 0.1rem solid var(--frc-rule);
  border-left: 0.6rem solid var(--frc-output);
  background: linear-gradient(90deg, rgba(99, 220, 181, 0.08), var(--frc-paper));
}

.kma-page .kma-thesis span,
.kma-page .kma-bottom-line small {
  color: var(--frc-muted);
  font-size: 1.15rem;
  font-weight: 750;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.kma-page .kma-thesis strong { font-size: 2rem; line-height: 1.4; }
.kma-page .kma-card--source { border-top: 0.5rem solid var(--frc-input); }
.kma-page .kma-card--human { border-top: 0.5rem solid var(--frc-human); }
.kma-page .kma-card--output { border-top: 0.5rem solid var(--frc-output); }
.kma-page .kma-question--source { border-left-color: var(--frc-input); }

.kma-page .kma-voice-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
  margin: 2rem 0;
}

.kma-page .kma-voice {
  min-width: 0;
  padding: 2rem;
  border: 0.1rem solid var(--frc-rule);
  background: var(--frc-paper);
}

.kma-page .kma-voice--source { border-top: 0.5rem solid var(--frc-input); }
.kma-page .kma-voice--actor { border-top: 0.5rem solid #8ba9bf; }
.kma-page .kma-voice--audit { border-top: 0.5rem solid var(--frc-machinery); }
.kma-page .kma-voice small { display: block; margin-bottom: 1rem; color: var(--frc-muted); font-size: 1.1rem; font-weight: 750; letter-spacing: 0.08em; text-transform: uppercase; }
.kma-page .kma-voice strong { display: block; font-size: 1.75rem; line-height: 1.4; }
.kma-page .kma-voice span { display: block; margin-top: 1rem; color: var(--frc-muted); font-size: 1.3rem; }

.kma-page .kma-before-after {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
  margin: 2rem 0 3rem;
}

.kma-page .kma-before-after article {
  min-width: 0;
  padding: 2rem;
  border: 0.1rem solid var(--frc-rule);
  background: var(--frc-paper);
}

.kma-page .kma-before { border-top: 0.5rem solid #7d8993 !important; }
.kma-page .kma-source-reading { border-top: 0.5rem solid var(--frc-input) !important; }
.kma-page .kma-after { border-top: 0.5rem solid var(--frc-output) !important; }
.kma-page .kma-before-after small,
.kma-page .kma-cluster small,
.kma-page .kma-visibility small,
.kma-page .kma-bottom-line small { display: block; margin-bottom: 0.8rem; }
.kma-page .kma-before-after small,
.kma-page .kma-cluster small,
.kma-page .kma-visibility small { color: var(--frc-muted); font-size: 1.1rem; font-weight: 750; letter-spacing: 0.08em; text-transform: uppercase; }
.kma-page .kma-before-after strong { display: block; min-height: 6.5rem; font-size: 1.75rem; line-height: 1.35; }
.kma-page .kma-before-after p { margin-bottom: 0; color: var(--frc-muted); font-size: 1.4rem; }

.kma-page .kma-cluster {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  margin: 2rem 0 1rem;
}

.kma-page .kma-cluster article {
  min-width: 0;
  padding: 1.8rem;
  border: 0.1rem solid var(--frc-rule);
  border-left: 0.5rem solid var(--frc-machinery);
  background: var(--frc-paper);
}

.kma-page .kma-cluster strong { display: block; font-size: 1.65rem; line-height: 1.4; }

.kma-page .kma-cluster-rule {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  gap: 1.5rem;
  align-items: center;
  margin: 0 0 3rem;
  padding: 1.6rem 2rem;
  border: 0.1rem solid var(--frc-rule);
  background: var(--frc-mist);
  text-align: center;
}

.kma-page .kma-cluster-rule strong { color: var(--frc-human); font-size: 3rem; line-height: 1; }
.kma-page .kma-cluster-rule span { font-size: 1.5rem; font-weight: 700; }
.kma-page .kma-finding--source { border-top-color: var(--frc-input); }
.kma-page .kma-finding--machinery { border-top-color: var(--frc-machinery); }
.kma-page .kma-finding--output { border-top-color: var(--frc-output); }

.kma-page .kma-restatement {
  margin: 2.4rem 0 3rem;
  padding: clamp(2rem, 3vw, 3rem);
  border: 0.1rem solid var(--frc-rule);
  border-top: 0.6rem solid var(--frc-output);
  background: linear-gradient(180deg, rgba(99, 220, 181, 0.07), var(--frc-paper) 12rem);
  box-shadow: var(--frc-shadow);
}

.kma-page .kma-restatement p:not(.frc-kicker) { font-size: 1.9rem; line-height: 1.65; }

.kma-page .kma-visibility {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
  margin: 2rem 0;
}

.kma-page .kma-visibility article {
  min-width: 0;
  padding: 2rem;
  border: 0.1rem solid var(--frc-rule);
  background: var(--frc-paper);
}

.kma-page .kma-visible { border-top: 0.5rem solid var(--frc-output) !important; }
.kma-page .kma-partial { border-top: 0.5rem solid var(--frc-machinery) !important; }
.kma-page .kma-unknown { border-top: 0.5rem solid #7d8993 !important; }
.kma-page .kma-visibility strong { display: block; font-size: 1.65rem; line-height: 1.4; }
.kma-page .kma-visibility p { margin-bottom: 0; color: var(--frc-muted); font-size: 1.4rem; }

.kma-page .kma-limits { margin-top: 5.2rem; padding-top: 2.2rem; border-top: 0.5rem solid var(--frc-rule); }
.kma-page .kma-limits h2 { margin-top: 0; }

.kma-page .kma-bottom-line {
  margin: 3rem 0;
  padding: 2.4rem;
  border: 0.1rem solid var(--frc-rule);
  border-left: 0.6rem solid var(--frc-human);
  background: linear-gradient(90deg, rgba(225, 165, 243, 0.08), var(--frc-paper));
}

.kma-page .kma-bottom-line strong { display: block; margin-top: 0.8rem; font-size: 2.2rem; line-height: 1.4; }

.kma-page .kma-source-links {
  margin-top: 3rem;
  padding-top: 2rem;
  border-top: 0.1rem solid var(--frc-rule);
}

@media (max-width: 1020px) {
  .frc-afa-page .frc-method-strip { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 760px) {
  .frc-afa-page { font-size: 1.65rem; }
  .frc-afa-page .frc-wide { width: calc(100vw - 2rem); }
  .frc-afa-page .frc-stage-nav { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .kma-page .kma-color-key { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .frc-afa-page .frc-pipeline,
  .frc-afa-page .frc-grid-2,
  .frc-afa-page .frc-grid-3,
  .frc-afa-page .frc-finding-grid,
  .kma-page .kma-voice-grid,
  .kma-page .kma-before-after,
  .kma-page .kma-cluster,
  .kma-page .kma-visibility { grid-template-columns: 1fr; }
  .frc-afa-page .frc-pipeline-step::after { display: none; }
  .frc-afa-page .frc-stage-gate,
  .kma-page .kma-thesis { grid-template-columns: 1fr; gap: 0.6rem; }
  .frc-afa-page .frc-method-strip { grid-template-columns: 1fr 1fr; }
  .frc-afa-page .frc-method-strip li { min-height: 13rem; }
  .kma-page .kma-before-after strong { min-height: 0; }
}

@media (max-width: 460px) {
  .frc-afa-page .frc-stage-nav,
  .frc-afa-page .frc-method-strip,
  .kma-page .kma-color-key { grid-template-columns: 1fr; }
  .frc-afa-page .frc-method-strip li { min-height: 0; }
  .kma-page .kma-cluster-rule { grid-template-columns: 1fr; gap: 0.6rem; }
}

@media print {
  .frc-afa-page {
    --frc-ink: #000;
    --frc-muted: #333;
    --frc-rule: #aaa;
    --frc-paper: #fff;
    --frc-mist: #fff;
    --frc-input: #000;
    --frc-machinery: #000;
    --frc-output: #000;
    --frc-human: #000;
    color-scheme: light;
    color: #000;
    font-size: 11pt;
  }
  .frc-afa-page .frc-wide { width: 100%; max-width: 100%; margin-left: 0; transform: none; }
  .frc-afa-page .frc-stage-nav { display: none; }
  .frc-afa-page .frc-authorship-notice,
  .frc-afa-page .kma-restatement { box-shadow: none; }
  .frc-afa-page .frc-card,
  .frc-afa-page .frc-question,
  .frc-afa-page .frc-finding,
  .frc-afa-page .kma-voice,
  .frc-afa-page .kma-before-after article,
  .frc-afa-page .kma-cluster article,
  .frc-afa-page .kma-visibility article { break-inside: avoid; }
  .frc-afa-page a { color: #000; }
}


.frc-afa-page {
  --frc-ink: #eef3f7;
  --frc-muted: #aeb9c2;
  --frc-rule: #35404a;
  --frc-paper: #11161b;
  --frc-mist: #171e24;
  --frc-input: #62c1ff;
  --frc-machinery: #ffb675;
  --frc-output: #63dcb5;
  --frc-human: #e1a5f3;
  --frc-shadow: 0 16px 42px rgba(0, 0, 0, 0.42);
  background: transparent;
  color-scheme: dark;
  color: var(--frc-ink);
  font-size: 1.8rem;
  line-height: 1.65;
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

.frc-afa-page,
.frc-afa-page * {
  box-sizing: border-box;
}

.frc-afa-page > * {
  max-width: 72rem;
  min-width: 0;
  margin-left: auto;
  margin-right: auto;
}

.frc-afa-page .frc-wide {
  width: min(112rem, calc(100vw - 4rem));
  max-width: 112rem;
  margin-left: 50%;
  transform: translateX(-50%);
}

.frc-afa-page h2,
.frc-afa-page h3,
.frc-afa-page h4 {
  color: var(--frc-ink);
  line-height: 1.15;
  letter-spacing: -0.025em;
}

.frc-afa-page h2 {
  margin-top: 5.2rem;
  margin-bottom: 1.6rem;
  font-size: clamp(3.2rem, 4.5vw, 5.2rem);
}

.frc-afa-page h3 {
  margin-top: 2.8rem;
  margin-bottom: 1.1rem;
  font-size: clamp(2.4rem, 3vw, 3.4rem);
}

.frc-afa-page h4 {
  margin-top: 1.8rem;
  margin-bottom: 0.8rem;
  font-size: 2rem;
}

.frc-afa-page p,
.frc-afa-page li,
.frc-afa-page td,
.frc-afa-page th {
  color: var(--frc-ink);
}

.frc-afa-page a {
  color: var(--frc-ink);
  text-decoration-thickness: 0.08em;
  text-underline-offset: 0.15em;
}

.frc-afa-page a:focus-visible,
.frc-afa-page summary:focus-visible {
  outline: 0.3rem solid var(--frc-ink);
  outline-offset: 0.3rem;
}

.frc-afa-page [id] {
  scroll-margin-top: 8rem;
}

.frc-afa-page .frc-kicker {
  margin: 0 0 1.2rem;
  color: var(--frc-muted);
  font-size: 1.4rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.frc-afa-page .frc-deck {
  max-width: 78rem;
  margin: 0;
  color: var(--frc-muted);
  font-size: clamp(2rem, 2.4vw, 2.8rem);
  line-height: 1.45;
}

.frc-afa-page .frc-authorship-notice {
  position: relative;
  margin-top: 3rem;
  padding: clamp(1.6rem, 2.5vw, 2.4rem);
  border: 0.1rem solid #4b5863;
  border-left: 0.6rem solid var(--frc-rule);
  background: var(--frc-paper);
  box-shadow: var(--frc-shadow);
  font-size: 1.45rem;
  line-height: 1.55;
}

.frc-afa-page .frc-authorship-notice h2 {
  margin: 0 0 1.5rem;
  font-size: clamp(2rem, 2.5vw, 2.8rem);
}

.frc-afa-page .frc-authorship-notice p {
  max-width: 92rem;
  margin: 0.8rem 0 0;
}

.frc-afa-page .frc-authorship-notice .frc-kicker { color: var(--frc-muted); font-size: 1.15rem; }

.frc-afa-page .frc-pipeline {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.2rem;
  margin: 2.5rem 0;
}

.frc-afa-page .frc-pipeline-step {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 15rem;
  padding: 2rem;
  border: 0.1rem solid var(--frc-rule);
  background: var(--frc-paper);
  color: var(--frc-ink);
  text-decoration: none;
}

.frc-afa-page .frc-pipeline-step::after {
  content: "→";
  position: absolute;
  top: 50%;
  right: -1.9rem;
  z-index: 2;
  color: var(--frc-muted);
  font-size: 2rem;
  transform: translateY(-50%);
}

.frc-afa-page .frc-pipeline-step:last-child::after { display: none; }
.frc-afa-page .frc-pipeline-step--input { border-top: 0.5rem solid var(--frc-input); }
.frc-afa-page .frc-pipeline-step--machinery { border-top: 0.5rem solid var(--frc-machinery); }
.frc-afa-page .frc-pipeline-step--output { border-top: 0.5rem solid var(--frc-output); }
.frc-afa-page .frc-pipeline-step small { color: var(--frc-muted); font-size: 1.2rem; font-weight: 750; letter-spacing: 0.1em; text-transform: uppercase; }
.frc-afa-page .frc-pipeline-step strong { margin: 1rem 0 0.6rem; font-size: 2rem; line-height: 1.2; }
.frc-afa-page .frc-pipeline-step span { color: var(--frc-muted); font-size: 1.4rem; }
.frc-afa-page .frc-pipeline-step:hover { border-right-color: var(--frc-muted); border-bottom-color: var(--frc-muted); border-left-color: var(--frc-muted); }

.frc-afa-page .frc-lens-pair {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
  margin: 2.4rem 0 3rem;
}

.frc-afa-page .frc-lens-pair > div {
  padding: 1.5rem 1.8rem;
  border: 0.1rem solid var(--frc-rule);
  background: var(--frc-mist);
}

.frc-afa-page .frc-lens-pair > div { border-left: 0.5rem solid var(--frc-rule); }
.frc-afa-page .frc-lens-pair small { display: block; margin-bottom: 0.5rem; color: var(--frc-muted); font-size: 1.15rem; font-weight: 750; letter-spacing: 0.08em; text-transform: uppercase; }
.frc-afa-page .frc-lens-pair strong { display: block; line-height: 1.35; }

.frc-afa-page .frc-phase-section > h2 {
  padding-top: 1.4rem;
  border-top: 0.5rem solid var(--frc-rule);
}

.frc-afa-page .frc-phase-section--input > h2 { border-top-color: var(--frc-input); }
.frc-afa-page .frc-phase-section--machinery > h2 { border-top-color: var(--frc-machinery); }
.frc-afa-page .frc-phase-section--output > h2 { border-top-color: var(--frc-output); }

.frc-afa-page .frc-stage-gate {
  display: grid;
  grid-template-columns: minmax(14rem, 0.45fr) minmax(20rem, 0.8fr) minmax(24rem, 1.4fr);
  gap: 1.5rem;
  align-items: center;
  margin: 3rem 0;
  padding: 1.8rem 2rem;
  border: 0.1rem solid var(--frc-rule);
  background: var(--frc-paper);
}

.frc-afa-page .frc-stage-gate--input { border-left: 0.6rem solid var(--frc-input); }
.frc-afa-page .frc-stage-gate--machinery { border-left: 0.6rem solid var(--frc-machinery); }
.frc-afa-page .frc-stage-gate--output { border-left: 0.6rem solid var(--frc-output); }
.frc-afa-page .frc-stage-gate small { color: var(--frc-muted); font-size: 1.15rem; font-weight: 750; letter-spacing: 0.08em; text-transform: uppercase; }
.frc-afa-page .frc-stage-gate strong { font-size: 1.8rem; line-height: 1.25; }
.frc-afa-page .frc-stage-gate span { color: var(--frc-muted); font-size: 1.4rem; }

.frc-afa-page .frc-provisional-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  margin: 2rem 0;
}

.frc-afa-page .frc-provisional-grid article {
  padding: 1.6rem 1.8rem;
  border: 0.1rem dashed #65727d;
  background: #13191e;
}

.frc-afa-page .frc-provisional-grid small { display: block; margin-bottom: 0.6rem; color: var(--frc-muted); font-size: 1.2rem; }
.frc-afa-page .frc-provisional-grid strong { display: block; line-height: 1.3; }
.frc-afa-page .frc-process-record { margin-top: 5.2rem; padding-top: 0.5rem; border-top: 0.1rem dashed #65727d; }

.frc-afa-page .frc-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem 2rem;
  margin: 2.4rem 0 0;
  padding-top: 2rem;
  border-top: 0.1rem solid var(--frc-rule);
  color: var(--frc-muted);
  font-size: 1.4rem;
}

.frc-afa-page .frc-role-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
  margin: 2.4rem 0 0;
}

.frc-afa-page .frc-role {
  display: inline-flex;
  align-items: center;
  min-height: 2.8rem;
  padding: 0.4rem 0.9rem;
  border: 0.1rem solid currentColor;
  border-radius: 999px;
  font-size: 1.2rem;
  font-weight: 750;
  letter-spacing: 0.08em;
  line-height: 1.2;
  text-transform: uppercase;
}

.frc-afa-page .frc-role--human { color: var(--frc-human); background: #261a2b; }
.frc-afa-page .frc-role--llm,
.frc-afa-page .frc-role--source,
.frc-afa-page .frc-role--formal { color: var(--frc-muted); background: var(--frc-paper); }

.frc-afa-page .frc-guide,
.frc-afa-page .frc-grid-2,
.frc-afa-page .frc-grid-3,
.frc-afa-page .frc-grid-4,
.frc-afa-page .frc-actor-grid,
.frc-afa-page .frc-finding-grid {
  display: grid;
  gap: 1.6rem;
}

.frc-afa-page .frc-guide > *,
.frc-afa-page .frc-grid-2 > *,
.frc-afa-page .frc-grid-3 > *,
.frc-afa-page .frc-grid-4 > *,
.frc-afa-page .frc-actor-grid > *,
.frc-afa-page .frc-finding-grid > *,
.frc-afa-page .frc-pipeline > *,
.frc-afa-page .frc-lens-pair > *,
.frc-afa-page .frc-provisional-grid > *,
.frc-afa-page .frc-stage-gate > * {
  min-width: 0;
}

.frc-afa-page .frc-guide,
.frc-afa-page .frc-grid-2,
.frc-afa-page .frc-finding-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.frc-afa-page .frc-grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.frc-afa-page .frc-grid-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.frc-afa-page .frc-actor-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); }

.frc-afa-page .frc-card,
.frc-afa-page .frc-track,
.frc-afa-page .frc-question,
.frc-afa-page .frc-option,
.frc-afa-page .frc-force,
.frc-afa-page .frc-pairing,
.frc-afa-page .frc-finding,
.frc-afa-page .frc-indicator {
  margin: 0;
  padding: 2rem;
  border: 0.1rem solid var(--frc-rule);
  background: var(--frc-paper);
}

.frc-afa-page .frc-card > :first-child,
.frc-afa-page .frc-track > :first-child,
.frc-afa-page .frc-question > :first-child,
.frc-afa-page .frc-option > :first-child,
.frc-afa-page .frc-force > :first-child,
.frc-afa-page .frc-pairing > :first-child,
.frc-afa-page .frc-finding > :first-child,
.frc-afa-page .frc-indicator > :first-child { margin-top: 0; }

.frc-afa-page .frc-card > :last-child,
.frc-afa-page .frc-track > :last-child,
.frc-afa-page .frc-question > :last-child,
.frc-afa-page .frc-option > :last-child,
.frc-afa-page .frc-force > :last-child,
.frc-afa-page .frc-pairing > :last-child,
.frc-afa-page .frc-finding > :last-child,
.frc-afa-page .frc-indicator > :last-child { margin-bottom: 0; }

.frc-afa-page .frc-track--case,
.frc-afa-page .frc-track--method { border-top: 0.5rem solid var(--frc-rule); }

.frc-afa-page .frc-section-intro {
  max-width: 76rem;
  color: var(--frc-muted);
  font-size: 2rem;
}

.frc-afa-page .frc-stage-nav {
  position: relative;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 0.6rem;
  margin-top: 3rem;
}

.frc-afa-page .frc-stage-nav a {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 5rem;
  padding: 0.8rem;
  border: 0.1rem solid var(--frc-rule);
  background: rgba(17, 22, 27, 0.96);
  color: var(--frc-ink);
  font-size: 1.3rem;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
}

.frc-afa-page .frc-stage-nav a:hover { border-color: var(--frc-muted); color: var(--frc-ink); }

.frc-afa-page .frc-prompt {
  margin: 2rem 0;
  padding: 2rem 2.2rem;
  border-left: 0.5rem solid var(--frc-human);
  background: #211824;
  font-size: 1.7rem;
}

.frc-afa-page .frc-prompt::before {
  content: "Analyst instruction";
  display: block;
  margin-bottom: 0.8rem;
  color: var(--frc-human);
  font-size: 1.2rem;
  font-weight: 750;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.frc-afa-page .frc-decision {
  margin: 1.6rem 0 0;
  padding: 1.3rem 1.5rem;
  border: 0.1rem solid #62456b;
  background: #17131a;
  font-size: 1.5rem;
}

.frc-afa-page .frc-decision strong { color: var(--frc-human); }

.frc-afa-page .frc-zoom {
  position: relative;
  margin: 3rem 0;
  padding-left: 4.2rem;
}

.frc-afa-page .frc-zoom::before {
  content: "";
  position: absolute;
  top: 1.5rem;
  bottom: 1.5rem;
  left: 1.3rem;
  width: 0.3rem;
  background: var(--frc-rule);
}

.frc-afa-page .frc-zoom-step {
  position: relative;
  margin: 0 0 1rem;
  padding: 1.5rem 1.8rem;
  border: 0.1rem solid var(--frc-rule);
  background: var(--frc-paper);
}

.frc-afa-page .frc-zoom-step::before {
  content: "";
  position: absolute;
  top: 2.1rem;
  left: -3.6rem;
  width: 1.4rem;
  height: 1.4rem;
  border: 0.3rem solid var(--frc-paper);
  border-radius: 50%;
  background: var(--frc-muted);
  box-shadow: 0 0 0 0.1rem var(--frc-rule);
}

.frc-afa-page .frc-zoom-step:last-child::before { background: var(--frc-muted); box-shadow: 0 0 0 0.1rem var(--frc-rule); }

.frc-afa-page .frc-zoom-step--focus::before {
  top: 1.8rem;
  left: -3.9rem;
  width: 2rem;
  height: 2rem;
  border: 0.4rem solid var(--frc-paper);
  background: var(--frc-ink);
  box-shadow: 0 0 0 0.2rem var(--frc-ink);
}

.frc-afa-page .frc-focus-label {
  display: inline-block;
  margin-left: 0.6rem;
  padding: 0.2rem 0.5rem;
  border: 0.1rem solid var(--frc-rule);
  color: var(--frc-muted);
  font-size: 1.05rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  vertical-align: 0.15em;
}

.frc-afa-page .frc-actor {
  position: relative;
  padding: 1.6rem;
  border: 0.1rem solid var(--frc-rule);
  background: var(--frc-paper);
}

.frc-afa-page .frc-actor h4 { margin-top: 0; }
.frc-afa-page .frc-actor p { margin-bottom: 0; font-size: 1.45rem; }
.frc-afa-page .frc-actor small { display: block; margin-bottom: 0.8rem; color: var(--frc-muted); }

.frc-afa-page .frc-authority-strip {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 0;
  margin: 2.5rem 0;
  border: 0.1rem solid var(--frc-rule);
}

.frc-afa-page .frc-authority-strip div { padding: 1.3rem; border-right: 0.1rem solid var(--frc-rule); background: var(--frc-mist); font-size: 1.35rem; }
.frc-afa-page .frc-authority-strip div:last-child { border-right: 0; }
.frc-afa-page .frc-authority-strip strong { display: block; margin-bottom: 0.4rem; }

.frc-afa-page .frc-infographic {
  display: block;
  width: 100%;
  height: auto;
  margin: 2rem auto;
  border: 0.1rem solid var(--frc-rule);
  background: var(--frc-paper);
  box-shadow: var(--frc-shadow);
}

.frc-afa-page .frc-stat {
  padding: 1.7rem;
  border-top: 0.1rem solid var(--frc-rule);
  background: var(--frc-mist);
}
.frc-afa-page .frc-stat strong { display: block; font-size: 2.5rem; line-height: 1.1; }
.frc-afa-page .frc-stat span { display: block; margin-top: 0.5rem; color: var(--frc-muted); font-size: 1.35rem; }

.frc-afa-page .frc-method-strip {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 0.5rem;
  margin: 2.5rem 0;
  counter-reset: method;
}

.frc-afa-page .frc-method-strip li {
  position: relative;
  min-height: 12rem;
  margin: 0;
  padding: 4.2rem 1rem 1rem;
  border: 0.1rem solid var(--frc-rule);
  background: var(--frc-paper);
  font-size: 1.25rem;
  line-height: 1.35;
  list-style: none;
  counter-increment: method;
}

.frc-afa-page .frc-method-strip li::before {
  content: counter(method, decimal-leading-zero);
  position: absolute;
  top: 0.9rem;
  left: 1rem;
  color: var(--frc-machinery);
  font-size: 1.6rem;
  font-weight: 800;
}

.frc-afa-page .frc-option { position: relative; }
.frc-afa-page .frc-option--selected { border: 0.2rem solid var(--frc-human); background: #211824; }
.frc-afa-page .frc-option--selected::after {
  content: "Selected by analyst";
  position: absolute;
  top: 1rem;
  right: 1rem;
  padding: 0.35rem 0.65rem;
  border-radius: 999px;
  background: var(--frc-human);
  color: #0b0d0f;
  font-size: 1.05rem;
  font-weight: 750;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.frc-afa-page .frc-option h4 { padding-right: 11rem; }
.frc-afa-page .frc-force,
.frc-afa-page .frc-force[data-role="secondary"] { border-top: 0.1rem solid var(--frc-rule); }
.frc-afa-page .frc-force p { font-size: 1.45rem; }

.frc-afa-page .frc-rating {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  margin-top: 1.3rem;
  padding-top: 1rem;
  border-top: 0.1rem solid var(--frc-rule);
  color: var(--frc-muted);
  font-size: 1.2rem;
  font-weight: 700;
}

.frc-afa-page .frc-pairing--chosen { border: 0.2rem solid var(--frc-human); box-shadow: var(--frc-shadow); }
.frc-afa-page .frc-pairing h4 { margin-top: 0; }
.frc-afa-page .frc-pairing ul { margin-bottom: 0; padding-left: 2rem; }

.frc-afa-page .frc-axis {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
  margin: 2rem 0;
}

.frc-afa-page .frc-axis > div {
  padding: 1.6rem;
  border: 0.1rem solid var(--frc-rule);
  background: var(--frc-mist);
}

.frc-afa-page .frc-axis strong { display: block; margin-bottom: 0.5rem; }

.frc-afa-page .frc-matrix-wrap {
  display: grid;
  grid-template-columns: 3.8rem minmax(0, 1fr);
  grid-template-rows: minmax(0, 1fr) auto;
  gap: 1rem;
  margin: 3rem 0;
}

.frc-afa-page .frc-matrix-y {
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--frc-muted);
  font-size: 1.3rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  writing-mode: vertical-rl;
  transform: rotate(180deg);
}

.frc-afa-page .frc-matrix-x {
  grid-column: 2;
  color: var(--frc-muted);
  font-size: 1.3rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-align: center;
  text-transform: uppercase;
}

.frc-afa-page .frc-matrix {
  display: grid;
  grid-template-columns: 1fr 1fr;
  border: 0.1rem solid var(--frc-rule);
}

.frc-afa-page .frc-world {
  min-height: 24rem;
  padding: clamp(1.7rem, 3vw, 3rem);
  border-right: 0.1rem solid var(--frc-rule);
  border-bottom: 0.1rem solid var(--frc-rule);
}

.frc-afa-page .frc-world:nth-child(2n) { border-right: 0; }
.frc-afa-page .frc-world:nth-last-child(-n+2) { border-bottom: 0; }
.frc-afa-page .frc-world { background: var(--frc-paper); }
.frc-afa-page .frc-world small { color: var(--frc-muted); font-weight: 700; }
.frc-afa-page .frc-world h3 { margin: 0.6rem 0 1rem; font-size: clamp(2.1rem, 2.7vw, 3rem); }
.frc-afa-page .frc-world p { margin-bottom: 0; font-size: 1.55rem; }

.frc-afa-page details {
  margin: 1.3rem 0;
  border: 0.1rem solid var(--frc-rule);
  background: var(--frc-paper);
}

.frc-afa-page summary {
  position: relative;
  padding: 1.6rem 5rem 1.6rem 1.8rem;
  color: var(--frc-ink);
  font-weight: 750;
  cursor: pointer;
}

.frc-afa-page summary::after {
  content: "+";
  position: absolute;
  top: 50%;
  right: 1.8rem;
  color: var(--frc-muted);
  font-size: 2.4rem;
  transform: translateY(-50%);
}

.frc-afa-page details[open] summary::after { content: "–"; }
.frc-afa-page details[open] summary { border-bottom: 0.1rem solid var(--frc-rule); }
.frc-afa-page .frc-details-body { padding: 0.8rem 2rem 2rem; }

.frc-afa-page .frc-path {
  display: grid;
  grid-template-columns: 11rem minmax(0, 1fr);
  gap: 1.4rem;
  margin: 1.3rem 0;
  padding-bottom: 1.3rem;
  border-bottom: 0.1rem solid var(--frc-rule);
}

.frc-afa-page .frc-path:last-child { border-bottom: 0; }
.frc-afa-page .frc-path time { color: var(--frc-muted); font-size: 1.35rem; font-weight: 750; }
.frc-afa-page .frc-path p { margin: 0; font-size: 1.5rem; }

.frc-afa-page .frc-ledger {
  width: 100%;
  border-collapse: collapse;
  font-size: 1.45rem;
}

.frc-afa-page .frc-ledger th,
.frc-afa-page .frc-ledger td {
  padding: 1.2rem;
  border: 0.1rem solid var(--frc-rule);
  vertical-align: top;
  text-align: left;
  overflow-wrap: anywhere;
}

.frc-afa-page .frc-ledger th { background: #26313a; color: var(--frc-ink); }
.frc-afa-page .frc-ledger tbody tr:nth-child(even) { background: var(--frc-mist); }

.frc-afa-page .frc-scroll {
  overflow-x: auto;
  margin: 2rem 0;
  -webkit-overflow-scrolling: touch;
}

.frc-afa-page .frc-question { border-left: 0.4rem solid var(--frc-human); }
.frc-afa-page .frc-question strong { display: block; margin-bottom: 0.6rem; }

.frc-afa-page .frc-causal {
  margin: 3rem 0;
  padding: 2rem;
  border: 0.1rem solid var(--frc-rule);
  background: var(--frc-mist);
}

.frc-afa-page .frc-causal svg { display: block; width: 100%; height: auto; }
.frc-afa-page .frc-causal .node rect { fill: #11161b; stroke: #6f8798; stroke-width: 1.5; }
.frc-afa-page .frc-causal .node text { fill: var(--frc-ink); font-size: 12px; font-weight: 650; }
.frc-afa-page .frc-causal .edge { fill: none; stroke: #8ca4b5; stroke-width: 1.5; marker-end: url(#frc-arrow); }
.frc-afa-page .frc-causal .stage { fill: var(--frc-muted); font-size: 10px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; }

.frc-afa-page .frc-limit {
  margin: 2rem 0;
  padding: 1.8rem;
  border: 0.1rem dashed var(--frc-rule);
  background: var(--frc-paper);
}

.frc-afa-page .frc-finding {
  display: grid;
  grid-template-rows: auto 1fr;
  gap: 1rem;
  border-top: 0.5rem solid var(--frc-machinery);
}

.frc-afa-page .frc-finding h4 { margin: 0; }
.frc-afa-page .frc-triptych { display: grid; gap: 0.8rem; }
.frc-afa-page .frc-triptych div { padding: 1rem; background: var(--frc-mist); font-size: 1.4rem; }
.frc-afa-page .frc-triptych strong { display: block; margin-bottom: 0.35rem; color: var(--frc-muted); font-size: 1.1rem; letter-spacing: 0.07em; text-transform: uppercase; }

.frc-afa-page .frc-counterpath {
  display: grid;
  grid-template-columns: 1fr 1fr;
  overflow: hidden;
  margin: 2rem 0;
  border: 0.1rem solid var(--frc-rule);
}

.frc-afa-page .frc-counterpath > div { padding: 2rem; }
.frc-afa-page .frc-counterpath > div:first-child { background: var(--frc-paper); }
.frc-afa-page .frc-counterpath > div:last-child { background: var(--frc-mist); }
.frc-afa-page .frc-counterpath h4 { margin-top: 0; }

.frc-afa-page .frc-big-number {
  display: block;
  color: var(--frc-machinery);
  font-size: clamp(4rem, 6vw, 7rem);
  font-weight: 800;
  line-height: 1;
}

.frc-afa-page .frc-bar-row {
  display: grid;
  grid-template-columns: minmax(14rem, 0.8fr) minmax(0, 2fr) 4rem;
  gap: 1rem;
  align-items: center;
  margin: 0.8rem 0;
  font-size: 1.35rem;
}

.frc-afa-page .frc-bar { height: 1.2rem; background: #35404a; }
.frc-afa-page .frc-bar span { display: block; height: 100%; background: var(--frc-machinery); }

.frc-afa-page .frc-indicator,
.frc-afa-page .frc-indicator--coalition { border-top: 0.4rem solid var(--frc-output); }
.frc-afa-page .frc-indicator code { color: var(--frc-muted); font-size: 1.2rem; }

.frc-afa-page .frc-can-cannot {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0;
  overflow: hidden;
  border: 0.1rem solid var(--frc-rule);
}

.frc-afa-page .frc-can-cannot > div { padding: 2rem; }
.frc-afa-page .frc-can-cannot > div:first-child { background: var(--frc-paper); }
.frc-afa-page .frc-can-cannot > div:last-child { background: var(--frc-mist); }
.frc-afa-page .frc-can-cannot h3 { margin-top: 0; }

.frc-afa-page .frc-materials {
  margin-top: 3.8rem;
  padding: 3rem;
  border-top: 0.6rem solid var(--frc-ink);
  background: var(--frc-mist);
}

.frc-afa-page .frc-materials ul { margin-bottom: 0; }

.frc-afa-page .frc-note {
  color: var(--frc-muted);
  font-size: 1.4rem;
}

/* Keep wide panels inside the post column on touch-first devices, including
   tablets whose landscape viewport is wider than the numeric tablet cutoff. */
@media (hover: none), (pointer: coarse) {
  .frc-afa-page .frc-wide {
    width: 100%;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    transform: none;
  }
}

@media (max-width: 1200px) {
  .frc-afa-page .frc-wide {
    width: 100%;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    transform: none;
  }
  .frc-afa-page .frc-grid-3,
  .frc-afa-page .frc-grid-4,
  .frc-afa-page .frc-actor-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .frc-afa-page .frc-stage-nav { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .frc-afa-page .frc-method-strip { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .frc-afa-page .frc-authority-strip { grid-template-columns: 1fr 1fr; }
  .frc-afa-page .frc-authority-strip div { border-bottom: 0.1rem solid var(--frc-rule); }
  .frc-afa-page .frc-stage-gate { grid-template-columns: 1fr 1fr; }
  .frc-afa-page .frc-stage-gate span { grid-column: 1 / -1; }
}

@media (max-width: 782px) {
  .frc-afa-page { font-size: 1.7rem; }
  .frc-afa-page h2 { margin-top: 3.8rem; margin-bottom: 1.2rem; }
  .frc-afa-page h3 { margin-top: 2.2rem; margin-bottom: 0.8rem; }
  .frc-afa-page h4 { margin-top: 1.5rem; }
  .frc-afa-page .frc-phase-section > h2 { padding-top: 1rem; }
  .frc-afa-page .frc-process-record { margin-top: 3.8rem; }
  .frc-afa-page .frc-guide,
  .frc-afa-page .frc-pipeline,
  .frc-afa-page .frc-lens-pair,
  .frc-afa-page .frc-provisional-grid,
  .frc-afa-page .frc-stage-gate,
  .frc-afa-page .frc-grid-2,
  .frc-afa-page .frc-grid-3,
  .frc-afa-page .frc-grid-4,
  .frc-afa-page .frc-actor-grid,
  .frc-afa-page .frc-finding-grid,
  .frc-afa-page .frc-axis,
  .frc-afa-page .frc-counterpath,
  .frc-afa-page .frc-can-cannot { grid-template-columns: 1fr; }
  .frc-afa-page .frc-stage-nav { grid-template-columns: 1fr 1fr; }
  .frc-afa-page .frc-pipeline-step { min-height: 0; }
  .frc-afa-page .frc-pipeline-step::after { top: auto; right: 1.5rem; bottom: -2rem; transform: rotate(90deg); }
  .frc-afa-page .frc-stage-gate span { grid-column: auto; }
  .frc-afa-page .frc-method-strip { grid-template-columns: 1fr 1fr; }
  .frc-afa-page .frc-method-strip li { min-height: 9rem; }
  .frc-afa-page .frc-authority-strip { grid-template-columns: 1fr; }
  .frc-afa-page .frc-authority-strip div { border-right: 0; }
  .frc-afa-page .frc-matrix-wrap { grid-template-columns: 1fr; grid-template-rows: auto; }
  .frc-afa-page .frc-matrix-y { writing-mode: horizontal-tb; transform: none; }
  .frc-afa-page .frc-matrix-x { grid-column: 1; }
  .frc-afa-page .frc-matrix { grid-template-columns: 1fr; }
  .frc-afa-page .frc-world { min-height: 0; border-right: 0; border-bottom: 0.1rem solid var(--frc-rule) !important; }
  .frc-afa-page .frc-world:last-child { border-bottom: 0 !important; }
  .frc-afa-page .frc-path { grid-template-columns: 1fr; gap: 0.3rem; }
  .frc-afa-page .frc-bar-row { grid-template-columns: 1fr 3rem; }
  .frc-afa-page .frc-bar-row .frc-bar { grid-column: 1 / -1; grid-row: 2; }
  .frc-afa-page .frc-option--selected::after { position: static; margin-bottom: 1rem; }
  .frc-afa-page .frc-option h4 { padding-right: 0; }
}

@media (max-width: 700px) {
  .frc-afa-page .frc-scroll {
    overflow-x: visible;
  }

  .frc-afa-page .frc-ledger,
  .frc-afa-page .frc-ledger tbody,
  .frc-afa-page .frc-ledger tr,
  .frc-afa-page .frc-ledger td {
    display: block;
    width: 100%;
  }

  .frc-afa-page .frc-ledger thead {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
  }

  .frc-afa-page .frc-ledger tr {
    margin: 0 0 1.2rem;
    border: 0.1rem solid var(--frc-rule);
    background: var(--frc-paper);
  }

  .frc-afa-page .frc-ledger tbody tr:nth-child(even) {
    background: var(--frc-mist);
  }

  .frc-afa-page .frc-ledger td {
    display: grid;
    grid-template-columns: minmax(9rem, 0.7fr) minmax(0, 1.3fr);
    gap: 1rem;
    padding: 1rem;
    border: 0;
    border-bottom: 0.1rem solid var(--frc-rule);
  }

  .frc-afa-page .frc-ledger td:last-child {
    border-bottom: 0;
  }

  .frc-afa-page .frc-ledger td::before {
    content: attr(data-label);
    color: var(--frc-muted);
    font-size: 1.15rem;
    font-weight: 750;
    letter-spacing: 0.05em;
    line-height: 1.35;
    text-transform: uppercase;
  }

  .frc-afa-page .frc-details-body.frc-scroll {
    padding-right: 1.2rem;
    padding-left: 1.2rem;
  }
}

@media (max-width: 430px) {
  .frc-afa-page .frc-ledger td {
    grid-template-columns: 1fr;
    gap: 0.35rem;
  }
}

@media print {
  .frc-afa-page {
    --frc-ink: #000;
    --frc-muted: #333;
    --frc-rule: #aaa;
    --frc-paper: #fff;
    --frc-mist: #fff;
    --frc-input: #000;
    --frc-machinery: #000;
    --frc-output: #000;
    --frc-human: #000;
    color-scheme: light;
    color: #000;
    font-size: 11pt;
  }
  .frc-afa-page .frc-wide { width: 100%; max-width: none; margin-left: 0; transform: none; }
  .frc-afa-page .frc-stage-nav { display: none; }
  .frc-afa-page .frc-authorship-notice,
  .frc-afa-page .frc-card,
  .frc-afa-page .frc-track,
  .frc-afa-page details,
  .frc-afa-page .frc-causal { box-shadow: none; break-inside: avoid; }
  .frc-afa-page details:not([open]) > *:not(summary) { display: block !important; }
  .frc-afa-page summary::after { display: none; }
  .frc-afa-page .frc-ledger thead { display: table-header-group; }
  .frc-afa-page .frc-ledger { display: table; }
  .frc-afa-page .frc-ledger tbody { display: table-row-group; }
  .frc-afa-page .frc-ledger tr { display: table-row; }
  .frc-afa-page .frc-ledger th,
  .frc-afa-page .frc-ledger td { display: table-cell; }
  .frc-afa-page .frc-ledger td::before { content: none; }
  .frc-afa-page h2,
  .frc-afa-page h3,
  .frc-afa-page h4 { break-after: avoid; }
  .frc-afa-page a { color: #000; text-decoration: underline; }
  .frc-afa-page .frc-authorship-notice,
  .frc-afa-page .frc-pipeline-step,
  .frc-afa-page .frc-lens-pair > div,
  .frc-afa-page .frc-stage-gate,
  .frc-afa-page .frc-provisional-grid article,
  .frc-afa-page .frc-role,
  .frc-afa-page .frc-stage-nav a,
  .frc-afa-page .frc-prompt,
  .frc-afa-page .frc-decision,
  .frc-afa-page .frc-world,
  .frc-afa-page .frc-can-cannot > div,
  .frc-afa-page .frc-ledger th { background: #fff !important; color: #000 !important; }
  .frc-afa-page .frc-option--selected::after { background: #000; color: #fff; }
  .frc-afa-page .frc-causal .node rect { fill: #fff; stroke: #000; }
  .frc-afa-page .frc-causal .node text,
  .frc-afa-page .frc-causal .stage { fill: #000; }
  .frc-afa-page .frc-causal .edge { stroke: #000; }
  .frc-afa-page .frc-causal marker path { fill: #000 !important; }
}

/* v0.10: box-centering only. Preserve declared widths and all component
   styling; provide full-width positioning containers so wide boxes can be
   centred without offsets or transforms. */
@media screen and (min-width: 783px) {
  .frc-afa-page > section:not(.frc-materials) {
    width: 100%;
    max-width: none;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 72rem) minmax(0, 1fr);
  }

  .frc-afa-page > section:not(.frc-materials) > :not(.frc-wide) {
    grid-column: 2;
  }

  .frc-afa-page > section:not(.frc-materials) > .frc-wide {
    grid-column: 1 / -1;
  }
}

.frc-afa-page > .frc-wide,
.frc-afa-page > section:not(.frc-materials) > .frc-wide {
  margin-left: auto;
  margin-right: auto;
  transform: none;
}