:root {
  --cg-ink: #18212b;
  --cg-muted: #52606d;
  --cg-line: #d7dde3;
  --cg-paper: #ffffff;
  --cg-soft: #f4f7f7;
  --cg-teal: #0f766e;
  --cg-teal-dark: #115e59;
  --cg-red: #a33131;
  --cg-yellow: #f2c14e;
  --cg-blue: #2563a6;
  --cg-green: #3f7d55;
  --cg-violet: #6d5aa8;
}

.cg-page {
  color: var(--cg-ink);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont,
    "Segoe UI", sans-serif;
  letter-spacing: 0;
}

.cg-page h1,
.cg-page h2,
.cg-page h3,
.cg-page p,
.cg-page li,
.cg-page dt,
.cg-page dd,
.cg-page blockquote {
  letter-spacing: 0;
}

.cg-hero,
.cg-article-header {
  border-top: 5px solid var(--cg-teal);
  border-bottom: 1px solid var(--cg-line);
  background: var(--cg-paper);
  margin-top: 1.5rem;
}

.cg-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(340px, 0.85fr);
}

.cg-hero-copy {
  padding: clamp(1.5rem, 3vw, 3rem);
  border-right: 1px solid var(--cg-line);
}

.cg-kicker,
.cg-section-kicker {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  color: var(--cg-teal-dark);
  font-size: 0.78rem;
  font-weight: 850;
  text-transform: uppercase;
}

.cg-kicker svg,
.cg-section-kicker svg {
  width: 1.05rem;
  height: 1.05rem;
}

.cg-hero h2,
.cg-article-header h2 {
  margin: 0.75rem 0 0;
  max-width: 22ch;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(2.4rem, 5vw, 5rem);
  font-weight: 700;
  line-height: 0.98;
}

.cg-hero-copy > p:last-child {
  max-width: 70ch;
  margin-top: 1.2rem;
  color: var(--cg-muted);
  font-size: clamp(1.04rem, 1.8vw, 1.25rem);
  line-height: 1.75;
}

.cg-metrics {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-content: stretch;
}

.cg-metrics > div {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 116px;
  padding: 1.25rem;
  border-right: 1px solid var(--cg-line);
  border-bottom: 1px solid var(--cg-line);
}

.cg-metrics > div:nth-child(2n) {
  border-right: 0;
}

.cg-metrics > div:last-child {
  grid-column: 1 / -1;
  border-right: 0;
  border-bottom: 0;
}

.cg-metrics dt,
.cg-live-band dt {
  color: var(--cg-muted);
  font-size: 0.72rem;
  font-weight: 800;
  text-transform: uppercase;
}

.cg-metrics dd,
.cg-live-band dd {
  margin-top: 0.25rem;
  color: var(--cg-red);
  font-size: clamp(1.65rem, 3vw, 2.45rem);
  font-variant-numeric: tabular-nums;
  font-weight: 900;
}

.cg-method-band,
.cg-chapters,
.cg-principles {
  padding: clamp(1.5rem, 3vw, 2.5rem) 0;
}

.cg-method-band > h2,
.cg-chapters h2,
.cg-principles h2,
.cg-live-band h2 {
  margin-top: 0.4rem;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(1.75rem, 3vw, 2.55rem);
  font-weight: 700;
}

.cg-method-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-top: 1.25rem;
  border-top: 1px solid var(--cg-line);
  border-bottom: 1px solid var(--cg-line);
}

.cg-method-grid article {
  padding: 1.35rem;
  border-right: 1px solid var(--cg-line);
}

.cg-method-grid article:last-child {
  border-right: 0;
}

.cg-method-grid article > svg {
  width: 1.45rem;
  height: 1.45rem;
  color: var(--cg-red);
}

.cg-method-grid h3 {
  margin-top: 0.85rem;
  font-size: 1rem;
  font-weight: 850;
}

.cg-method-grid p,
.cg-principle-grid p {
  margin-top: 0.5rem;
  color: var(--cg-muted);
  font-size: 0.93rem;
  line-height: 1.65;
}

.cg-formal-intro {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 1rem;
  align-items: start;
  margin-top: 1.2rem;
  padding: 1.15rem 1.25rem;
  background: #eef6f4;
  border-left: 5px solid var(--cg-teal);
  border-bottom: 1px solid #bfd8d3;
}

.cg-formal-intro > svg {
  width: 1.6rem;
  height: 1.6rem;
  color: var(--cg-teal-dark);
}

.cg-formal-intro h3 {
  font-size: 1.04rem;
  font-weight: 850;
}

.cg-formal-intro p {
  max-width: 100ch;
  margin-top: 0.35rem;
  color: var(--cg-muted);
  font-size: 0.94rem;
  line-height: 1.7;
}

.cg-live-band {
  display: grid;
  grid-template-columns: minmax(0, 0.75fr) minmax(570px, 1.25fr);
  align-items: stretch;
  color: #f7fffd;
  background: var(--cg-teal-dark);
  border-left: 6px solid var(--cg-yellow);
}

.cg-live-band > div:first-child {
  padding: clamp(1.4rem, 3vw, 2rem);
}

.cg-live-band .cg-section-kicker,
.cg-live-band h2 {
  color: #ffffff;
}

.cg-live-band p:not(.cg-section-kicker) {
  margin-top: 0.6rem;
  color: #cce8e3;
  line-height: 1.6;
}

.cg-live-band dl {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-left: 1px solid rgb(255 255 255 / 22%);
}

.cg-live-band dl > div {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 1.1rem;
  border-right: 1px solid rgb(255 255 255 / 18%);
}

.cg-live-band dl > div:last-child {
  border-right: 0;
}

.cg-live-band dt {
  color: #cce8e3;
}

.cg-live-band dd {
  color: #ffffff;
  font-size: clamp(1.15rem, 1.6vw, 1.55rem);
  white-space: nowrap;
}

.cg-section-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 2rem;
}

.cg-section-heading > p {
  max-width: 58ch;
  color: var(--cg-muted);
  line-height: 1.65;
}

.cg-chapter-list {
  margin-top: 1.25rem;
  border-top: 1px solid var(--cg-line);
}

.cg-chapter-row {
  display: grid;
  grid-template-columns: 84px minmax(0, 1fr) auto;
  gap: 1.5rem;
  align-items: center;
  padding: 1.5rem 0;
  border-bottom: 1px solid var(--cg-line);
}

.cg-chapter-number {
  color: var(--cg-red);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 2.6rem;
  font-weight: 700;
  text-align: center;
}

.cg-chapter-meta {
  color: var(--cg-teal-dark);
  font-size: 0.75rem;
  font-weight: 800;
  text-transform: uppercase;
}

.cg-chapter-copy h3 {
  margin-top: 0.35rem;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.65rem;
  font-weight: 700;
}

.cg-chapter-copy > p:not(.cg-chapter-meta) {
  max-width: 88ch;
  margin-top: 0.45rem;
  color: var(--cg-muted);
  line-height: 1.7;
}

.cg-chapter-copy ul {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem 1.2rem;
  margin-top: 0.8rem;
}

.cg-chapter-copy li {
  display: flex;
  align-items: center;
  gap: 0.35rem;
  color: #475569;
  font-size: 0.82rem;
  font-weight: 700;
}

.cg-chapter-copy li svg {
  width: 0.95rem;
  height: 0.95rem;
}

.cg-primary-link {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  min-height: 44px;
  padding: 0.7rem 1rem;
  color: #ffffff;
  background: var(--cg-red);
  border-radius: 6px;
  font-weight: 800;
}

.cg-primary-link:hover {
  background: #842626;
}

.cg-primary-link svg {
  width: 1rem;
  height: 1rem;
}

.cg-principles {
  border-top: 1px solid var(--cg-line);
}

.cg-principle-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 1.25rem;
}

.cg-principle-grid > div {
  padding: 1.2rem;
  border-left: 4px solid var(--cg-yellow);
  border-top: 1px solid var(--cg-line);
  border-bottom: 1px solid var(--cg-line);
}

.cg-principle-grid > div + div {
  border-left-color: var(--cg-blue);
}

.cg-principle-grid > div + div + div {
  border-left-color: var(--cg-green);
}

.cg-article-header {
  padding: clamp(1.5rem, 4vw, 3rem);
}

.cg-article-header .cg-kicker a {
  text-decoration: underline;
  text-underline-offset: 3px;
}

.cg-article-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem 1rem;
  margin-top: 1.2rem;
}

.cg-article-meta span {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  color: #475569;
  font-size: 0.82rem;
  font-weight: 750;
}

.cg-article-meta svg {
  width: 0.95rem;
  height: 0.95rem;
  color: var(--cg-teal);
}

.cg-article-summary {
  max-width: 88ch;
  margin-top: 1.35rem;
  color: var(--cg-muted);
  font-size: 1.08rem;
  line-height: 1.8;
}

.cg-live-band-article {
  margin-top: 1rem;
}

.cg-article-layout {
  display: grid;
  grid-template-columns: 260px minmax(0, 1fr);
  gap: clamp(1.5rem, 3vw, 3rem);
  align-items: start;
  margin-top: 2rem;
}

.cg-toc {
  position: sticky;
  top: 1rem;
  max-height: calc(100vh - 2rem);
  overflow: auto;
  padding: 1.1rem 1rem;
  background: var(--cg-paper);
  border: 1px solid var(--cg-line);
  border-top: 4px solid var(--cg-red);
  border-radius: 4px;
}

.cg-toc h3 {
  font-size: 0.8rem;
  font-weight: 900;
  text-transform: uppercase;
}

.cg-toc ol {
  display: grid;
  gap: 0.42rem;
  margin-top: 0.8rem;
}

.cg-toc a {
  display: block;
  padding: 0.25rem 0;
  color: #435364;
  font-size: 0.83rem;
  line-height: 1.35;
}

.cg-toc a:hover {
  color: var(--cg-red);
  text-decoration: underline;
  text-underline-offset: 2px;
}

.cg-toc > p {
  margin-top: 1rem;
  padding-top: 0.8rem;
  color: var(--cg-muted);
  border-top: 1px solid var(--cg-line);
  font-size: 0.75rem;
  line-height: 1.5;
}

.cg-article-body {
  min-width: 0;
  max-width: 920px;
}

.cg-chapter-tabs {
  display: flex;
  gap: 0;
  min-width: 0;
  margin-bottom: 1.5rem;
  overflow-x: auto;
  border-top: 1px solid var(--cg-line);
  border-bottom: 1px solid var(--cg-line);
  background: var(--cg-paper);
  scrollbar-width: thin;
}

.cg-chapter-tabs button {
  flex: 1 0 max-content;
  min-height: 52px;
  padding: 0.8rem 1rem;
  color: #435364;
  border-bottom: 4px solid transparent;
  background: transparent;
  font-size: 0.92rem;
  font-weight: 800;
  text-align: center;
}

.cg-chapter-tabs button:hover {
  color: var(--cg-teal-dark);
  background: #f4f8f7;
}

.cg-chapter-tabs button[aria-selected="true"] {
  color: var(--cg-teal-dark);
  border-bottom-color: var(--cg-red);
  background: #eef6f4;
}

.cg-chapter-tabs button:focus-visible {
  position: relative;
  z-index: 1;
  outline: 3px solid #f2c14e;
  outline-offset: -3px;
}

.cg-chapter-panel {
  min-width: 0;
}

.cg-chapter-panel[hidden] {
  display: none;
}

.cg-lead {
  color: #263545;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(1.16rem, 2vw, 1.38rem);
  line-height: 1.8;
}

.cg-section,
.cg-diagram {
  margin-top: 2.4rem;
  scroll-margin-top: 1rem;
}

.cg-section > h2,
.cg-diagram h2 {
  padding-bottom: 0.55rem;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(1.65rem, 3vw, 2.25rem);
  font-weight: 700;
  border-bottom: 2px solid var(--cg-ink);
}

.cg-section > p:not(.cg-section-kicker):not(.cg-section-sources) {
  margin-top: 1rem;
  color: #303d49;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.08rem;
  line-height: 1.9;
}

.cg-section-sources {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.35rem;
  margin-top: 1rem;
  color: var(--cg-muted);
  font-size: 0.78rem;
}

.cg-section-sources svg {
  width: 1rem;
  height: 1rem;
}

.cg-section-sources span {
  font-weight: 800;
}

.cg-section-sources a {
  color: var(--cg-blue);
  font-weight: 850;
}

.cg-diagram {
  background: var(--cg-paper);
  border: 1px solid var(--cg-line);
  border-top: 5px solid var(--cg-yellow);
  border-radius: 6px;
}

.cg-diagram > header {
  padding: 1.25rem 1.35rem;
  border-bottom: 1px solid var(--cg-line);
}

.cg-diagram > header > span {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  color: var(--cg-red);
  font-size: 0.75rem;
  font-weight: 850;
  text-transform: uppercase;
}

.cg-diagram > header > span svg {
  width: 1rem;
  height: 1rem;
}

.cg-diagram h2 {
  margin-top: 0.45rem;
  padding-bottom: 0;
  border: 0;
}

.cg-diagram header p {
  margin-top: 0.65rem;
  color: var(--cg-muted);
  line-height: 1.7;
}

.cg-diagram-rows {
  display: grid;
}

.cg-diagram-row {
  display: grid;
  grid-template-columns: 190px minmax(0, 1fr);
  gap: 1rem;
  align-items: center;
  padding: 1.1rem 1.35rem;
  border-bottom: 1px solid var(--cg-line);
}

.cg-diagram-row > strong {
  overflow-wrap: anywhere;
  font-size: 1.05rem;
}

.cg-segments {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.4rem;
}

.cg-segments > svg {
  width: 0.9rem;
  height: 0.9rem;
  color: #94a3b8;
}

.cg-segment {
  display: inline-flex;
  flex-direction: column;
  min-width: 82px;
  padding: 0.55rem 0.65rem;
  color: #17352f;
  background: #e8f4f1;
  border: 1px solid #b8d8d1;
  border-radius: 5px;
}

.cg-segment-2 {
  color: #5c271e;
  background: #fff0e8;
  border-color: #ecc4af;
}

.cg-segment-3 {
  color: #3c356c;
  background: #f0edfa;
  border-color: #cbc2e7;
}

.cg-segment-4 {
  color: #1f4670;
  background: #eaf2fb;
  border-color: #b9d1eb;
}

.cg-segment-0 {
  color: #5b4815;
  background: #fff8dc;
  border-color: #e4d18c;
}

.cg-segment b {
  font-size: 0.98rem;
}

.cg-segment small {
  margin-top: 0.12rem;
  font-size: 0.65rem;
  font-weight: 700;
}

.cg-diagram figcaption,
.cg-chart figcaption {
  padding: 0.85rem 1.35rem;
  color: var(--cg-muted);
  background: #f8fafc;
  font-size: 0.74rem;
  line-height: 1.55;
}

.cg-formal-section > p {
  max-width: 92ch;
}

.cg-synthesis {
  margin-top: 1.3rem;
  padding: 1.4rem;
  background: #f3f8f7;
  border-top: 4px solid var(--cg-teal);
  border-bottom: 1px solid #bcd5d0;
}

.cg-synthesis-copy {
  max-width: 96ch;
}

.cg-model-eyebrow,
.cg-model-status {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  color: var(--cg-red);
  font-size: 0.72rem;
  font-weight: 850;
  text-transform: uppercase;
}

.cg-model-eyebrow svg,
.cg-model-status svg {
  width: 1rem;
  height: 1rem;
}

.cg-synthesis h3 {
  margin-top: 0.35rem;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(1.35rem, 2.5vw, 1.85rem);
  font-weight: 700;
}

.cg-synthesis-copy > p:not(.cg-model-eyebrow) {
  margin-top: 0.75rem;
  color: #334155;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.03rem;
  line-height: 1.8;
}

.cg-decision-rule {
  display: grid;
  gap: 0.45rem;
  margin-top: 1rem;
  padding: 0.9rem 1rem;
  color: #eaf8f5;
  background: #174e49;
  border-left: 4px solid var(--cg-yellow);
}

.cg-decision-rule span {
  color: #bfe2dc;
  font-size: 0.68rem;
  font-weight: 850;
  text-transform: uppercase;
}

.cg-decision-rule code {
  overflow-wrap: anywhere;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 0.84rem;
  line-height: 1.65;
}

.cg-synthesis-steps {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: 1.2rem;
  border-top: 1px solid #bfd8d3;
  border-left: 1px solid #bfd8d3;
}

.cg-synthesis-steps li {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 0.7rem;
  padding: 1rem;
  background: #ffffff;
  border-right: 1px solid #bfd8d3;
  border-bottom: 1px solid #bfd8d3;
}

.cg-synthesis-steps > li > strong {
  color: var(--cg-red);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.3rem;
}

.cg-synthesis-steps h4 {
  font-size: 0.93rem;
  font-weight: 850;
}

.cg-synthesis-steps p {
  margin-top: 0.35rem;
  color: var(--cg-muted);
  font-size: 0.82rem;
  line-height: 1.65;
}

.cg-synthesis-limit {
  display: flex;
  gap: 0.65rem;
  margin-top: 1rem;
  color: #633728;
  font-size: 0.84rem;
  line-height: 1.65;
}

.cg-synthesis-limit svg {
  width: 1.1rem;
  height: 1.1rem;
  flex: 0 0 auto;
  margin-top: 0.16rem;
  color: var(--cg-red);
}

.cg-model-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  margin-top: 1.2rem;
}

.cg-model-card {
  min-width: 0;
  overflow: hidden;
  background: var(--cg-paper);
  border: 1px solid var(--cg-line);
  border-top: 5px solid var(--cg-blue);
  border-radius: 6px;
}

.cg-model-card:nth-child(2) {
  border-top-color: var(--cg-violet);
}

.cg-model-card:nth-child(3) {
  border-top-color: var(--cg-green);
}

.cg-model-card:nth-child(4) {
  border-top-color: var(--cg-red);
}

.cg-model-card > header {
  padding: 1.15rem 1.2rem;
  border-bottom: 1px solid var(--cg-line);
}

.cg-model-card h3 {
  margin-top: 0.35rem;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.45rem;
  font-weight: 700;
}

.cg-model-card > header > p:last-child {
  margin-top: 0.65rem;
  color: var(--cg-muted);
  font-size: 0.88rem;
  line-height: 1.7;
}

.cg-model-formula {
  display: grid;
  gap: 0.35rem;
  min-height: 88px;
  padding: 0.85rem 1.2rem;
  color: #ecf8f6;
  background: #173d3a;
}

.cg-model-formula span {
  color: #bfe2dc;
  font-size: 0.66rem;
  font-weight: 850;
  text-transform: uppercase;
}

.cg-model-formula code {
  overflow-wrap: anywhere;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 0.78rem;
  line-height: 1.55;
}

.cg-model-visual {
  background: #fbfcfd;
  border-bottom: 1px solid var(--cg-line);
}

.cg-model-visual svg {
  display: block;
  width: 100%;
  height: auto;
  min-height: 230px;
}

.cg-model-visual marker path {
  fill: #6b7886;
}

.cg-visual-links line {
  stroke: #7b8794;
  stroke-width: 1.5;
}

.cg-visual-links text {
  fill: #596675;
  font-size: 9px;
  font-weight: 700;
}

.cg-visual-node rect,
.cg-visual-node circle {
  fill: #eaf2fb;
  stroke: #7fa7cc;
  stroke-width: 1.3;
}

.cg-visual-node-surface rect,
.cg-visual-node-surface circle {
  fill: #fff0e8;
  stroke: #d69a7a;
}

.cg-visual-node-morpheme rect,
.cg-visual-node-morpheme circle,
.cg-visual-node-analysis rect,
.cg-visual-node-analysis circle,
.cg-visual-node-lik circle {
  fill: #f0edfa;
  stroke: #9889c1;
}

.cg-visual-node-context rect,
.cg-visual-node-context circle,
.cg-visual-node-ci circle {
  fill: #fff8dc;
  stroke: #c9a83e;
}

.cg-visual-node-lemma rect,
.cg-visual-node-lemma circle,
.cg-visual-node-bridge circle {
  fill: #e8f4f1;
  stroke: #6eaa9d;
}

.cg-visual-node-warning rect {
  fill: #fcebec;
  stroke: #c9797d;
}

.cg-node-label {
  fill: #172331;
  font-size: 11px;
  font-weight: 850;
}

.cg-node-role {
  fill: #5b6875;
  font-size: 8px;
  font-weight: 700;
}

.cg-model-visual figcaption {
  padding: 0.7rem 1rem;
  color: var(--cg-muted);
  background: #f6f8fa;
  border-top: 1px solid #e1e6eb;
  font-size: 0.7rem;
  line-height: 1.55;
}

.cg-model-analysis {
  display: grid;
}

.cg-model-analysis > div {
  padding: 0.9rem 1.2rem;
  border-bottom: 1px solid var(--cg-line);
}

.cg-model-analysis dt {
  color: var(--cg-teal-dark);
  font-size: 0.72rem;
  font-weight: 850;
  text-transform: uppercase;
}

.cg-model-analysis dd {
  margin-top: 0.35rem;
  color: #3d4b59;
  font-size: 0.84rem;
  line-height: 1.7;
}

.cg-model-analysis .cg-model-insight {
  background: #f1f7f5;
  border-left: 4px solid var(--cg-green);
}

.cg-model-analysis .cg-model-corpus-findings {
  background: #f7f9fc;
  border-left: 4px solid var(--cg-blue);
}

.cg-model-corpus-findings ol {
  display: grid;
  gap: 0.9rem;
  margin-top: 0.35rem;
  padding-left: 1.3rem;
}

.cg-model-corpus-findings li {
  padding-left: 0.2rem;
}

.cg-model-corpus-findings strong {
  color: #1e3f5f;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.04em;
}

.cg-model-corpus-findings p {
  margin-top: 0.35rem;
}

.cg-model-analysis .cg-model-net-result {
  color: #173d3a;
  background: #eaf5f2;
  border-top: 2px solid #8abbb1;
  border-bottom: 2px solid #8abbb1;
}

.cg-model-analysis .cg-model-net-result dt {
  color: #174e49;
  font-size: 0.84rem;
}

.cg-model-analysis .cg-model-net-result dd {
  color: #203e3a;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 0.94rem;
  line-height: 1.82;
}

.cg-model-analysis .cg-model-limit {
  background: #fff8f3;
  border-left: 4px solid #c17555;
}

.cg-model-witnesses {
  padding: 1rem 1.2rem;
  border-bottom: 1px solid var(--cg-line);
}

.cg-model-witnesses h4 {
  font-size: 0.82rem;
  font-weight: 850;
}

.cg-model-witnesses ul {
  display: grid;
  margin-top: 0.55rem;
}

.cg-model-witnesses li {
  display: grid;
  grid-template-columns: minmax(90px, 0.42fr) minmax(0, 1fr);
  gap: 0.25rem 0.6rem;
  padding: 0.55rem 0;
  border-top: 1px solid #e4e9ed;
}

.cg-model-witnesses a {
  color: var(--cg-red);
  font-size: 0.84rem;
  font-weight: 850;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.cg-model-witnesses code {
  overflow-wrap: anywhere;
  color: var(--cg-teal-dark);
  font-size: 0.7rem;
  line-height: 1.5;
}

.cg-model-witnesses span {
  grid-column: 1 / -1;
  color: #64748b;
  font-size: 0.67rem;
  font-weight: 700;
}

.cg-model-card > .cg-section-sources {
  padding: 0 1.2rem 1rem;
}

.cg-computational-section > p {
  max-width: 96ch;
}

.cg-measurement-note {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  gap: 0.7rem;
  margin-top: 1rem;
  padding: 1rem 1.1rem;
  color: #354454;
  background: #f5f7f9;
  border-left: 4px solid var(--cg-blue);
}

.cg-measurement-note svg {
  width: 1.15rem;
  height: 1.15rem;
  margin-top: 0.18rem;
  color: var(--cg-blue);
}

.cg-measurement-note p {
  font-size: 0.88rem;
  line-height: 1.7;
}

.cg-computation-summary {
  margin-top: 1.5rem;
  border-top: 4px solid var(--cg-teal-dark);
  border-bottom: 1px solid var(--cg-line);
}

.cg-computation-summary > header {
  padding: 1.2rem 0 1rem;
}

.cg-computation-summary > header h3 {
  margin-top: 0.35rem;
  color: #203e47;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(1.35rem, 2vw, 1.7rem);
}

.cg-computation-summary > header > p:last-child {
  max-width: 100ch;
  margin-top: 0.55rem;
  color: #43525f;
  font-size: 1rem;
  line-height: 1.75;
}

.cg-computation-summary-list {
  border-top: 1px solid var(--cg-line);
}

.cg-computation-summary-list > article {
  display: grid;
  grid-template-columns: minmax(13rem, 0.7fr) minmax(0, 2.3fr);
  gap: 1rem;
  padding: 1.15rem 0;
  border-bottom: 1px solid var(--cg-line);
}

.cg-computation-summary-title {
  display: grid;
  grid-template-columns: 2rem minmax(0, 1fr);
  gap: 0.55rem;
  align-content: start;
}

.cg-computation-summary-title span {
  color: var(--cg-teal-dark);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.05rem;
  font-weight: 800;
}

.cg-computation-summary-title h4 {
  color: #253d50;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.12rem;
  line-height: 1.35;
}

.cg-computation-summary-list dl {
  display: grid;
  gap: 0.7rem;
}

.cg-computation-summary-list dl > div {
  display: grid;
  grid-template-columns: minmax(8rem, 0.28fr) minmax(0, 1fr);
  gap: 0.8rem;
}

.cg-computation-summary-list dt,
.cg-atlas-conclusion-band strong {
  color: var(--cg-teal-dark);
  font-size: 0.8rem;
  font-weight: 850;
  text-transform: uppercase;
}

.cg-computation-summary-list dd,
.cg-atlas-conclusion-band p {
  color: #374957;
  font-size: 1rem;
  line-height: 1.7;
}

.cg-computation-summary-conclusion {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.cg-computation-summary-conclusion > div {
  padding: 1.1rem;
  background: #edf7f3;
  border-left: 4px solid var(--cg-green);
}

.cg-computation-summary-conclusion > div + div {
  background: #fff8f3;
  border-left-color: #c17555;
}

.cg-computation-summary-conclusion strong {
  color: #203e47;
  font-size: 0.88rem;
  text-transform: uppercase;
}

.cg-computation-summary-conclusion p {
  margin-top: 0.45rem;
  color: #374957;
  font-size: 1rem;
  line-height: 1.75;
}

.cg-computational-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  margin-top: 1.2rem;
}

.cg-computational-module {
  min-width: 0;
  overflow: hidden;
  background: var(--cg-paper);
  border: 1px solid var(--cg-line);
  border-top: 5px solid #b38324;
  border-radius: 6px;
}

.cg-computational-module-measured {
  border-top-color: var(--cg-green);
}

.cg-computational-module-active {
  border-top-color: var(--cg-blue);
}

.cg-computational-module > header {
  position: relative;
  padding: 1.15rem 1.2rem;
  border-bottom: 1px solid var(--cg-line);
}

.cg-computational-status {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  color: #8b5f13;
  font-size: 0.68rem;
  font-weight: 850;
  text-transform: uppercase;
}

.cg-computational-module-measured .cg-computational-status {
  color: var(--cg-green);
}

.cg-computational-module-active .cg-computational-status {
  color: var(--cg-blue);
}

.cg-computational-status svg {
  width: 0.95rem;
  height: 0.95rem;
}

.cg-computational-index {
  position: absolute;
  top: 0.85rem;
  right: 1.1rem;
  color: #c7cfd7;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.4rem;
  font-weight: 700;
}

.cg-computational-module h3 {
  max-width: 28ch;
  margin-top: 0.45rem;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.38rem;
  font-weight: 700;
  line-height: 1.2;
}

.cg-computational-module > header > p {
  margin-top: 0.65rem;
  color: var(--cg-muted);
  font-size: 0.86rem;
  line-height: 1.7;
}

.cg-computational-formula {
  display: grid;
  gap: 0.4rem;
  min-height: 88px;
  padding: 0.9rem 1.2rem;
  color: #f3f8fa;
  background: #263947;
}

.cg-computational-formula span {
  color: #bed1de;
  font-size: 0.66rem;
  font-weight: 850;
  text-transform: uppercase;
}

.cg-computational-formula code {
  overflow-wrap: anywhere;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 0.76rem;
  line-height: 1.6;
}

.cg-computational-metrics {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border-bottom: 1px solid var(--cg-line);
}

.cg-computational-metrics > div {
  min-width: 0;
  padding: 0.85rem 1rem;
  border-right: 1px solid var(--cg-line);
  border-bottom: 1px solid var(--cg-line);
}

.cg-computational-metrics > div:nth-child(2n) {
  border-right: 0;
}

.cg-computational-metrics dt {
  color: var(--cg-muted);
  font-size: 0.66rem;
  font-weight: 800;
  text-transform: uppercase;
}

.cg-computational-metrics dd {
  margin-top: 0.25rem;
  color: var(--cg-red);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.28rem;
  font-weight: 700;
}

.cg-computational-metrics small {
  display: block;
  margin-top: 0.08rem;
  color: #708090;
  font-size: 0.65rem;
}

.cg-computational-module-live {
  grid-column: 1 / -1;
}

.cg-ambiguity-live {
  border-bottom: 1px solid var(--cg-line);
  background: #f8fbfc;
}

.cg-ambiguity-live > header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 0.65fr);
  gap: 1rem;
  align-items: end;
  padding: 1.15rem 1.2rem;
  border-bottom: 1px solid var(--cg-line);
}

.cg-ambiguity-live > header span {
  color: var(--cg-blue);
  font-size: 0.76rem;
  font-weight: 850;
  text-transform: uppercase;
}

.cg-ambiguity-live > header h4 {
  margin-top: 0.25rem;
  color: #172c39;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.25;
}

.cg-ambiguity-live > header p {
  color: var(--cg-muted);
  font-size: 0.9rem;
  line-height: 1.55;
}

.cg-ambiguity-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.cg-ambiguity-metrics > div {
  min-width: 0;
  padding: 1rem 1.1rem;
  border-right: 1px solid var(--cg-line);
  border-bottom: 1px solid var(--cg-line);
}

.cg-ambiguity-metrics > div:nth-child(4n) {
  border-right: 0;
}

.cg-ambiguity-metrics dt {
  color: var(--cg-teal-dark);
  font-size: 0.78rem;
  font-weight: 850;
}

.cg-ambiguity-metrics dd {
  min-height: 2.15rem;
  margin-top: 0.35rem;
  color: var(--cg-red);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.55rem;
  font-weight: 700;
  line-height: 1.2;
  overflow-wrap: anywhere;
}

.cg-ambiguity-metrics small {
  display: block;
  margin-top: 0.16rem;
  color: #708090;
  font-size: 0.76rem;
}

.cg-ambiguity-metrics p {
  margin-top: 0.55rem;
  color: #4c5d6b;
  font-size: 0.86rem;
  line-height: 1.58;
}

.cg-ambiguity-contract {
  margin: 1.1rem 1.2rem 0;
  padding: 0.95rem 1rem;
  background: #eef5f8;
  border-left: 4px solid var(--cg-blue);
}

.cg-ambiguity-contract strong,
.cg-ambiguity-examples strong {
  color: #173b50;
  font-size: 0.94rem;
}

.cg-ambiguity-contract p,
.cg-ambiguity-examples p {
  margin-top: 0.32rem;
  color: #405463;
  font-size: 0.9rem;
  line-height: 1.68;
}

.cg-ambiguity-examples {
  padding: 1.1rem 1.2rem 1.2rem;
}

.cg-ambiguity-examples ul {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: 0.8rem;
  border-top: 1px solid var(--cg-line);
}

.cg-ambiguity-examples li {
  display: grid;
  grid-template-columns: minmax(80px, 0.35fr) minmax(0, 1fr);
  gap: 0.7rem;
  align-items: baseline;
  padding: 0.7rem 0.2rem;
  border-bottom: 1px solid var(--cg-line);
}

.cg-ambiguity-examples li:nth-child(odd) {
  padding-right: 1rem;
  border-right: 1px solid var(--cg-line);
}

.cg-ambiguity-examples li:nth-child(even) {
  padding-left: 1rem;
}

.cg-ambiguity-examples b {
  color: var(--cg-red);
  font-size: 1rem;
}

.cg-ambiguity-examples li span {
  color: #455969;
  font-size: 0.86rem;
  line-height: 1.55;
  overflow-wrap: anywhere;
}

.cg-productivity-live {
  border-bottom: 1px solid var(--cg-line);
  background: #fbfcfa;
}

.cg-productivity-live > header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 0.7fr);
  gap: 1rem;
  align-items: end;
  padding: 1.15rem 1.2rem;
  border-bottom: 1px solid var(--cg-line);
}

.cg-productivity-live > header span {
  color: #526b2f;
  font-size: 0.76rem;
  font-weight: 850;
  text-transform: uppercase;
}

.cg-productivity-live > header h4 {
  margin-top: 0.25rem;
  color: #213325;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.25;
}

.cg-productivity-live > header p {
  color: var(--cg-muted);
  font-size: 0.9rem;
  line-height: 1.55;
}

.cg-productivity-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.cg-productivity-metrics > div {
  min-width: 0;
  padding: 1rem 1.1rem;
  border-right: 1px solid var(--cg-line);
  border-bottom: 1px solid var(--cg-line);
}

.cg-productivity-metrics > div:nth-child(4n) {
  border-right: 0;
}

.cg-productivity-metrics dt {
  color: #526b2f;
  font-size: 0.78rem;
  font-weight: 850;
}

.cg-productivity-metrics dd {
  min-height: 2.15rem;
  margin-top: 0.35rem;
  color: var(--cg-red);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.55rem;
  font-weight: 700;
  line-height: 1.2;
  overflow-wrap: anywhere;
}

.cg-productivity-metrics small {
  display: block;
  margin-top: 0.16rem;
  color: #708090;
  font-size: 0.76rem;
}

.cg-productivity-metrics p {
  margin-top: 0.55rem;
  color: #4c5d6b;
  font-size: 0.86rem;
  line-height: 1.58;
}

.cg-productivity-contract {
  margin: 1.1rem 1.2rem;
  padding: 0.95rem 1rem;
  background: #f0f4e9;
  border-left: 4px solid #708c3d;
}

.cg-productivity-contract strong {
  color: #30451f;
  font-size: 0.94rem;
}

.cg-productivity-contract p {
  margin-top: 0.32rem;
  color: #405044;
  font-size: 0.9rem;
  line-height: 1.68;
}

.cg-productivity-table-wrap {
  width: 100%;
  overflow-x: auto;
  border-top: 1px solid var(--cg-line);
  border-bottom: 1px solid var(--cg-line);
}

.cg-productivity-table {
  width: 100%;
  min-width: 1120px;
  border-collapse: collapse;
  table-layout: fixed;
}

.cg-productivity-table th,
.cg-productivity-table td {
  padding: 0.85rem 0.8rem;
  border-right: 1px solid var(--cg-line);
  border-bottom: 1px solid var(--cg-line);
  text-align: left;
  vertical-align: top;
}

.cg-productivity-table th:last-child,
.cg-productivity-table td:last-child {
  border-right: 0;
}

.cg-productivity-table thead th {
  background: #edf2e8;
  color: #33452b;
  font-size: 0.76rem;
  font-weight: 850;
}

.cg-productivity-table tbody th {
  width: 17%;
  background: #f8faf6;
}

.cg-productivity-table tbody th code,
.cg-productivity-table tbody th strong,
.cg-productivity-table tbody th small,
.cg-productivity-table td strong,
.cg-productivity-table td small {
  display: block;
}

.cg-productivity-table tbody th code {
  color: var(--cg-red);
  font-size: 0.9rem;
  font-weight: 800;
}

.cg-productivity-table tbody th strong {
  margin-top: 0.25rem;
  color: #223326;
  font-size: 0.92rem;
}

.cg-productivity-table tbody th small,
.cg-productivity-table td small {
  margin-top: 0.3rem;
  color: #67766c;
  font-size: 0.74rem;
  line-height: 1.45;
}

.cg-productivity-table td {
  color: #33443a;
  font-size: 0.86rem;
}

.cg-productivity-score > strong {
  color: var(--cg-red);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.3rem;
}

.cg-productivity-meter {
  display: block;
  width: 100%;
  height: 6px;
  margin-top: 0.45rem;
  overflow: hidden;
  background: #dfe6dc;
  border-radius: 3px;
}

.cg-productivity-meter i {
  display: block;
  height: 100%;
  background: #708c3d;
}

.cg-productivity-example {
  display: block;
  padding-bottom: 0.38rem;
}

.cg-productivity-example + .cg-productivity-example {
  padding-top: 0.38rem;
  border-top: 1px dotted #c8d1c4;
}

.cg-productivity-example b {
  color: #243a2a;
  font-size: 0.88rem;
}

.cg-productivity-empty {
  color: #77827a;
  font-size: 0.82rem;
}

.cg-productivity-footnote {
  padding: 0.9rem 1.2rem 1.1rem;
  color: #4c5d51;
  font-size: 0.84rem;
  line-height: 1.65;
}

.cg-suffix-atlas-live {
  border-bottom: 1px solid var(--cg-line);
  background: #f9fbfc;
}

.cg-suffix-atlas-heading {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 0.72fr);
  gap: 1rem;
  align-items: end;
  padding: 1.15rem 1.2rem;
  border-bottom: 1px solid var(--cg-line);
}

.cg-suffix-atlas-heading span {
  color: #17606a;
  font-size: 0.78rem;
  font-weight: 850;
  text-transform: uppercase;
}

.cg-suffix-atlas-heading h4 {
  margin-top: 0.25rem;
  color: #19343a;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.45rem;
  line-height: 1.25;
}

.cg-suffix-atlas-heading p {
  color: var(--cg-muted);
  font-size: 0.92rem;
  line-height: 1.58;
}

.cg-suffix-atlas-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.cg-suffix-atlas-metrics > div {
  min-width: 0;
  padding: 1rem 1.1rem;
  border-right: 1px solid var(--cg-line);
  border-bottom: 1px solid var(--cg-line);
}

.cg-suffix-atlas-metrics > div:nth-child(3n) {
  border-right: 0;
}

.cg-suffix-atlas-metrics dt {
  color: #17606a;
  font-size: 0.8rem;
  font-weight: 850;
}

.cg-suffix-atlas-metrics dd {
  min-height: 2.15rem;
  margin-top: 0.35rem;
  color: var(--cg-red);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.55rem;
  font-weight: 700;
  line-height: 1.2;
  overflow-wrap: anywhere;
}

.cg-suffix-atlas-metrics small {
  display: block;
  margin-top: 0.16rem;
  color: #708090;
  font-size: 0.78rem;
}

.cg-suffix-atlas-metrics p {
  margin-top: 0.5rem;
  color: #4c5d6b;
  font-size: 0.86rem;
  line-height: 1.58;
}

.cg-suffix-atlas-tabs {
  display: flex;
  width: 100%;
  overflow-x: auto;
  border-bottom: 1px solid var(--cg-line);
  background: #eef4f5;
  scrollbar-width: thin;
}

.cg-suffix-atlas-tabs button {
  flex: 0 0 auto;
  min-height: 48px;
  padding: 0.72rem 1rem;
  border: 0;
  border-right: 1px solid #ccd9dc;
  border-bottom: 3px solid transparent;
  background: transparent;
  color: #37505a;
  cursor: pointer;
  font: inherit;
  font-size: 0.88rem;
  font-weight: 800;
}

.cg-suffix-atlas-tabs button[aria-selected="true"] {
  border-bottom-color: var(--cg-red);
  background: #fff;
  color: #173f48;
}

.cg-suffix-atlas-tabs button:focus-visible,
.cg-atlas-segments button:focus-visible,
.cg-atlas-toolbar input:focus-visible {
  outline: 3px solid rgba(37, 99, 166, 0.3);
  outline-offset: -3px;
}

.cg-suffix-atlas-panel {
  min-width: 0;
}

.cg-atlas-toolbar {
  display: grid;
  grid-template-columns: minmax(220px, 0.42fr) minmax(0, 1fr);
  gap: 1rem;
  align-items: end;
  padding: 1rem 1.2rem;
  border-bottom: 1px solid var(--cg-line);
}

.cg-atlas-toolbar label span {
  display: block;
  margin-bottom: 0.35rem;
  color: #415762;
  font-size: 0.78rem;
  font-weight: 800;
}

.cg-atlas-toolbar input {
  width: 100%;
  height: 42px;
  padding: 0 0.75rem;
  border: 1px solid #afc0c5;
  border-radius: 4px;
  background: #fff;
  color: #1f343a;
  font: inherit;
  font-size: 0.9rem;
}

.cg-atlas-segments {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
}

.cg-atlas-segments button {
  min-height: 36px;
  padding: 0.45rem 0.65rem;
  border: 1px solid #afc0c5;
  border-radius: 4px;
  background: #fff;
  color: #38515a;
  cursor: pointer;
  font: inherit;
  font-size: 0.78rem;
  font-weight: 750;
}

.cg-atlas-segments button.is-active {
  border-color: #17606a;
  background: #17606a;
  color: #fff;
}

.cg-atlas-result-count {
  padding: 0.65rem 1.2rem;
  border-bottom: 1px solid var(--cg-line);
  color: #53656d;
  font-size: 0.84rem;
}

.cg-suffix-atlas-table-wrap {
  width: 100%;
  max-height: 780px;
  overflow: auto;
  border-bottom: 1px solid var(--cg-line);
}

.cg-suffix-atlas-table {
  width: 100%;
  min-width: 1180px;
  border-collapse: collapse;
  table-layout: fixed;
}

.cg-suffix-atlas-table th,
.cg-suffix-atlas-table td {
  padding: 0.82rem 0.78rem;
  border-right: 1px solid var(--cg-line);
  border-bottom: 1px solid var(--cg-line);
  text-align: left;
  vertical-align: top;
}

.cg-suffix-atlas-table th:last-child,
.cg-suffix-atlas-table td:last-child {
  border-right: 0;
}

.cg-suffix-atlas-table thead th {
  position: sticky;
  top: 0;
  z-index: 1;
  background: #eaf2f3;
  color: #2d4b53;
  font-size: 0.78rem;
  font-weight: 850;
}

.cg-suffix-atlas-table tbody th {
  width: 21%;
  background: #f7fafb;
}

.cg-suffix-atlas-table tbody th strong,
.cg-suffix-atlas-table tbody th small,
.cg-suffix-atlas-table td strong,
.cg-suffix-atlas-table td small,
.cg-atlas-example,
.cg-atlas-context-line {
  display: block;
}

.cg-suffix-atlas-table tbody th strong {
  color: #19343a;
  font-size: 0.96rem;
}

.cg-suffix-atlas-table tbody th small,
.cg-suffix-atlas-table td small {
  margin-top: 0.25rem;
  color: #60737b;
  font-size: 0.78rem;
  line-height: 1.48;
}

.cg-atlas-class-tag {
  display: inline-block;
  margin-bottom: 0.4rem;
  padding: 0.18rem 0.4rem;
  border-left: 3px solid #17606a;
  background: #e9f1f2;
  color: #31565e;
  font-size: 0.72rem;
  font-weight: 850;
}

.cg-atlas-allomorphs {
  display: flex;
  flex-wrap: wrap;
  gap: 0.28rem;
}

.cg-atlas-allomorphs code {
  padding: 0.15rem 0.32rem;
  border: 1px solid #d2dcde;
  border-radius: 3px;
  background: #f4f7f7;
  color: var(--cg-red);
  font-size: 0.8rem;
}

.cg-atlas-stat-main {
  color: var(--cg-red);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.08rem;
}

.cg-atlas-example + .cg-atlas-example,
.cg-atlas-context-line + .cg-atlas-context-line {
  margin-top: 0.32rem;
  padding-top: 0.32rem;
  border-top: 1px dotted #ced9dc;
}

.cg-atlas-example b {
  color: #23444b;
}

.cg-atlas-panel-intro {
  padding: 1rem 1.2rem;
  border-bottom: 1px solid var(--cg-line);
}

.cg-atlas-panel-intro h5 {
  color: #19343a;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.22rem;
}

.cg-atlas-panel-intro p {
  margin-top: 0.32rem;
  color: #50646d;
  font-size: 0.9rem;
  line-height: 1.65;
}

.cg-atlas-context-grid,
.cg-atlas-theory-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.cg-atlas-context-item,
.cg-atlas-theory-item {
  min-width: 0;
  padding: 1rem 1.2rem;
  border-right: 1px solid var(--cg-line);
  border-bottom: 1px solid var(--cg-line);
}

.cg-atlas-context-item:nth-child(2n),
.cg-atlas-theory-item:nth-child(2n) {
  border-right: 0;
}

.cg-atlas-context-item h6,
.cg-atlas-theory-item h6,
.cg-atlas-morph-grid h6,
.cg-atlas-lengths h6 {
  color: #24434a;
  font-size: 0.96rem;
}

.cg-atlas-context-item > p,
.cg-atlas-theory-item > p {
  margin-top: 0.35rem;
  color: #4d626b;
  font-size: 0.86rem;
  line-height: 1.62;
}

.cg-atlas-context-item ul {
  margin-top: 0.6rem;
  padding-left: 1.05rem;
  color: #53666e;
  font-size: 0.82rem;
  line-height: 1.58;
}

.cg-atlas-theory-item strong {
  display: block;
  margin-top: 0.4rem;
  color: var(--cg-red);
  font-size: 0.9rem;
}

.cg-atlas-morph-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-bottom: 1px solid var(--cg-line);
}

.cg-atlas-morph-metrics > div {
  padding: 0.85rem 1rem;
  border-right: 1px solid var(--cg-line);
}

.cg-atlas-morph-metrics > div:last-child {
  border-right: 0;
}

.cg-atlas-morph-metrics dt {
  color: #52666e;
  font-size: 0.76rem;
  font-weight: 800;
}

.cg-atlas-morph-metrics dd {
  margin-top: 0.3rem;
  color: var(--cg-red);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.2rem;
  font-weight: 700;
}

.cg-atlas-morph-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border-bottom: 1px solid var(--cg-line);
}

.cg-atlas-morph-grid > section {
  padding: 1rem 1.2rem;
}

.cg-atlas-morph-grid > section:first-child {
  border-right: 1px solid var(--cg-line);
}

.cg-atlas-morph-grid ol,
.cg-atlas-insights {
  margin-top: 0.7rem;
  padding-left: 1.3rem;
  color: #425961;
  font-size: 0.86rem;
  line-height: 1.62;
}

.cg-atlas-morph-grid li + li,
.cg-atlas-insights li + li {
  margin-top: 0.55rem;
}

.cg-atlas-morph-grid li strong {
  color: #24434a;
}

.cg-atlas-lengths {
  padding: 1rem 1.2rem;
  border-bottom: 1px solid var(--cg-line);
}

.cg-atlas-lengths > div {
  display: grid;
  gap: 0.45rem;
  margin-top: 0.65rem;
}

.cg-atlas-length-row {
  display: grid;
  grid-template-columns: 74px minmax(120px, 1fr) 125px;
  gap: 0.65rem;
  align-items: center;
  color: #4b6068;
  font-size: 0.8rem;
}

.cg-atlas-length-track {
  height: 7px;
  overflow: hidden;
  background: #dce6e8;
  border-radius: 3px;
}

.cg-atlas-length-track i {
  display: block;
  height: 100%;
  background: #17606a;
}

.cg-atlas-insights {
  margin: 0;
  padding: 1rem 1.2rem 1rem 2.6rem;
}

.cg-atlas-conclusions {
  border-top: 1px solid var(--cg-line);
}

.cg-atlas-conclusion {
  display: grid;
  grid-template-columns: minmax(12rem, 0.7fr) minmax(0, 2.3fr);
  gap: 0.9rem 1rem;
  padding: 1rem 1.2rem;
  border-bottom: 1px solid var(--cg-line);
}

.cg-atlas-conclusion-heading {
  display: grid;
  grid-template-columns: 2rem minmax(0, 1fr);
  gap: 0.45rem;
  align-content: start;
  grid-row: 1 / span 3;
}

.cg-atlas-conclusion-heading span {
  color: var(--cg-teal-dark);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1rem;
  font-weight: 800;
}

.cg-atlas-conclusion-heading h6 {
  color: #253d50;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.08rem;
  line-height: 1.4;
}

.cg-atlas-conclusion-band {
  display: grid;
  grid-column: 2;
  grid-template-columns: minmax(7.5rem, 0.25fr) minmax(0, 1fr);
  gap: 0.75rem;
}

.cg-atlas-method {
  padding: 1rem 1.2rem;
  border-top: 1px solid var(--cg-line);
  background: #f0f4e9;
}

.cg-atlas-method strong {
  color: #30451f;
  font-size: 0.96rem;
}

.cg-atlas-method p {
  margin-top: 0.35rem;
  color: #405044;
  font-size: 0.88rem;
  line-height: 1.68;
}

.cg-computational-analysis {
  display: grid;
}

.cg-computational-analysis > div {
  padding: 0.9rem 1.2rem;
  border-bottom: 1px solid var(--cg-line);
}

.cg-computational-analysis dt {
  color: var(--cg-teal-dark);
  font-size: 0.7rem;
  font-weight: 850;
  text-transform: uppercase;
}

.cg-computational-analysis dd {
  margin-top: 0.35rem;
  color: #3d4b59;
  font-size: 0.83rem;
  line-height: 1.72;
}

.cg-computational-analysis .cg-computational-insight {
  background: #f1f7f5;
  border-left: 4px solid var(--cg-green);
}

.cg-computational-analysis .cg-computational-limit {
  background: #fff8f3;
  border-left: 4px solid #c17555;
}

.cg-computational-evidence {
  display: grid;
  gap: 0.65rem;
  padding: 0.9rem 1.2rem 1rem;
  background: #f8fafb;
}

.cg-computational-evidence > div {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
  align-items: center;
}

.cg-computational-evidence span {
  margin-right: 0.2rem;
  color: var(--cg-muted);
  font-size: 0.67rem;
  font-weight: 850;
  text-transform: uppercase;
}

.cg-computational-evidence a {
  color: var(--cg-blue);
  font-size: 0.75rem;
  font-weight: 800;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.cg-insight-report {
  border-top: 5px solid var(--cg-red);
  background: #fcfcfb;
}

.cg-insight-report-heading {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(210px, 0.35fr);
  gap: 1rem;
  align-items: end;
}

.cg-insight-live {
  display: grid;
  gap: 0.2rem;
  padding: 0.8rem 1rem;
  color: #eaf6f3;
  background: #174e49;
  border-left: 4px solid var(--cg-yellow);
}

.cg-insight-live span {
  color: #bfe2dc;
  font-size: 0.65rem;
  font-weight: 850;
  text-transform: uppercase;
}

.cg-insight-live strong {
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 0.78rem;
  font-weight: 750;
}

.cg-insight-lead {
  max-width: 98ch;
}

.cg-insight-thesis {
  margin-top: 1.1rem;
  padding: 1.1rem 1.2rem;
  background: #f0f6f5;
  border-left: 5px solid var(--cg-teal);
}

.cg-insight-thesis span {
  color: var(--cg-teal-dark);
  font-size: 0.68rem;
  font-weight: 850;
  text-transform: uppercase;
}

.cg-insight-thesis p {
  margin-top: 0.45rem;
  color: #263746;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.04rem;
  line-height: 1.8;
}

.cg-insight-list {
  display: grid;
  margin-top: 1.2rem;
  border-top: 1px solid var(--cg-line);
}

.cg-insight-item {
  display: grid;
  grid-template-columns: 56px minmax(0, 1fr);
  gap: 1rem;
  padding: 1.15rem 0;
  border-bottom: 1px solid var(--cg-line);
}

.cg-insight-number {
  color: var(--cg-red);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.55rem;
  font-weight: 700;
}

.cg-insight-item h3 {
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.18rem;
  font-weight: 700;
}

.cg-insight-item dl {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  margin-top: 0.7rem;
}

.cg-insight-item dt {
  color: var(--cg-teal-dark);
  font-size: 0.68rem;
  font-weight: 850;
  text-transform: uppercase;
}

.cg-insight-item dd {
  margin-top: 0.3rem;
  color: #3d4b59;
  font-size: 0.84rem;
  line-height: 1.72;
}

.cg-insight-witnesses {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  align-items: center;
  margin-top: 0.7rem;
}

.cg-insight-witnesses span {
  color: var(--cg-muted);
  font-size: 0.67rem;
  font-weight: 850;
  text-transform: uppercase;
}

.cg-insight-witnesses a {
  color: var(--cg-blue);
  font-size: 0.76rem;
  font-weight: 800;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.cg-insight-currentness {
  display: flex;
  gap: 0.65rem;
  margin-top: 1rem;
  padding: 0.9rem 1rem;
  color: #4b3d1e;
  background: #fff8df;
  border-left: 4px solid #c39228;
  font-size: 0.82rem;
  line-height: 1.65;
}

.cg-insight-currentness svg {
  width: 1rem;
  height: 1rem;
  flex: 0 0 auto;
  margin-top: 0.2rem;
}

.cg-chart-list {
  display: grid;
  gap: 1.2rem;
  margin-top: 1.25rem;
}

.cg-chart {
  overflow: hidden;
  background: var(--cg-paper);
  border: 1px solid var(--cg-line);
  border-radius: 6px;
}

.cg-chart > header {
  padding: 1.15rem 1.25rem;
  border-bottom: 1px solid var(--cg-line);
}

.cg-chart h3 {
  font-size: 1.08rem;
  font-weight: 850;
}

.cg-chart header p {
  margin-top: 0.4rem;
  color: var(--cg-muted);
  font-size: 0.86rem;
  line-height: 1.6;
}

.cg-chart-canvas {
  min-height: 240px;
  padding: 1.2rem 1.25rem;
}

.cg-bars {
  display: grid;
  gap: 0.75rem;
}

.cg-bar-row {
  display: grid;
  grid-template-columns: minmax(130px, 0.34fr) minmax(180px, 1fr) 110px;
  gap: 0.75rem;
  align-items: center;
}

.cg-bar-label {
  color: #334155;
  font-size: 0.8rem;
  font-weight: 750;
}

.cg-bar-track {
  height: 16px;
  overflow: hidden;
  background: #e9eef2;
  border-radius: 2px;
}

.cg-bar-fill {
  width: 0;
  height: 100%;
  background: var(--cg-teal);
  transition: width 650ms ease;
}

.cg-bar-row:nth-child(4n + 2) .cg-bar-fill {
  background: var(--cg-red);
}

.cg-bar-row:nth-child(4n + 3) .cg-bar-fill {
  background: var(--cg-blue);
}

.cg-bar-row:nth-child(4n) .cg-bar-fill {
  background: var(--cg-green);
}

.cg-bar-value {
  color: #1e293b;
  font-size: 0.79rem;
  font-variant-numeric: tabular-nums;
  font-weight: 850;
  text-align: right;
}

.cg-group-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6rem 1rem;
  margin-bottom: 1rem;
}

.cg-group-legend span {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  color: var(--cg-muted);
  font-size: 0.74rem;
  font-weight: 750;
}

.cg-group-legend i {
  width: 11px;
  height: 11px;
  background: var(--series-color);
}

.cg-group-row {
  display: grid;
  grid-template-columns: 64px minmax(0, 1fr);
  gap: 0.75rem;
  align-items: center;
  margin-top: 0.65rem;
}

.cg-group-track {
  display: flex;
  height: 22px;
  overflow: hidden;
  background: #e9eef2;
  border-radius: 2px;
}

.cg-group-track span {
  width: 0;
  height: 100%;
  background: var(--series-color);
  transition: width 650ms ease;
}

.cg-comparison-row {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr);
  gap: 0.75rem;
  align-items: center;
  margin-top: 0.85rem;
}

.cg-comparison-bars {
  display: grid;
  gap: 0.25rem;
}

.cg-comparison-bar {
  position: relative;
  height: 18px;
  background: #e9eef2;
}

.cg-comparison-bar span {
  display: block;
  width: 0;
  height: 100%;
  background: var(--cg-red);
  transition: width 650ms ease;
}

.cg-comparison-bar.unchanged span {
  background: var(--cg-blue);
}

.cg-comparison-bar small {
  position: absolute;
  right: 0.35rem;
  top: 0;
  color: #15202b;
  font-size: 0.68rem;
  font-variant-numeric: tabular-nums;
  font-weight: 800;
  line-height: 18px;
}

.cg-witness-section .cg-section-heading {
  align-items: start;
}

.cg-witness-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.9rem;
  margin-top: 1.25rem;
}

.cg-witness {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 1rem;
  background: var(--cg-paper);
  border: 1px solid var(--cg-line);
  border-left: 4px solid var(--cg-green);
  border-radius: 5px;
}

.cg-witness-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.8rem;
}

.cg-witness-head strong {
  color: var(--cg-red);
  font-size: 1.1rem;
}

.cg-witness-head span {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  color: var(--cg-green);
  font-size: 0.68rem;
  font-weight: 800;
}

.cg-witness-head svg {
  width: 0.85rem;
  height: 0.85rem;
}

.cg-witness blockquote {
  margin-top: 0.75rem;
  color: #243342;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.02rem;
  line-height: 1.65;
}

.cg-witness > p {
  margin-top: 0.55rem;
  color: var(--cg-muted);
  font-size: 0.82rem;
  line-height: 1.55;
}

.cg-witness .cg-witness-analysis {
  color: var(--cg-teal-dark);
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 0.78rem;
  font-weight: 800;
}

.cg-witness footer {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem 0.7rem;
  margin-top: auto;
  padding-top: 0.8rem;
  color: #64748b;
  border-top: 1px solid #e7ebef;
  font-size: 0.66rem;
  font-weight: 700;
}

.cg-qa-list {
  margin-top: 1rem;
  border-top: 1px solid var(--cg-line);
}

.cg-qa-list details {
  border-bottom: 1px solid var(--cg-line);
}

.cg-qa-list summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: 58px;
  padding: 0.85rem 0.2rem;
  cursor: pointer;
  font-size: 1rem;
  font-weight: 850;
}

.cg-qa-list summary::-webkit-details-marker {
  display: none;
}

.cg-qa-list summary svg {
  width: 1rem;
  height: 1rem;
  flex: 0 0 auto;
  color: var(--cg-teal);
  transition: transform 180ms ease;
}

.cg-qa-list details[open] summary svg {
  transform: rotate(180deg);
}

.cg-qa-list details > p {
  max-width: 82ch;
  padding: 0 0.2rem 1.15rem;
  color: #334155;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.03rem;
  line-height: 1.85;
}

.cg-glossary dl {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: 1rem;
  border-top: 1px solid var(--cg-line);
  border-left: 1px solid var(--cg-line);
}

.cg-glossary dl > div {
  padding: 1rem;
  border-right: 1px solid var(--cg-line);
  border-bottom: 1px solid var(--cg-line);
}

.cg-glossary dt {
  color: var(--cg-teal-dark);
  font-weight: 850;
}

.cg-glossary dd {
  margin-top: 0.35rem;
  color: var(--cg-muted);
  font-size: 0.88rem;
  line-height: 1.6;
}

.cg-references ol,
.cg-revisions ol {
  display: grid;
  gap: 0.8rem;
  margin-top: 1rem;
}

.cg-references li {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 0.6rem;
  padding-bottom: 0.8rem;
  border-bottom: 1px solid var(--cg-line);
}

.cg-references li > span {
  color: var(--cg-red);
  font-weight: 850;
}

.cg-references li p {
  color: #334155;
  font-size: 0.88rem;
  line-height: 1.6;
}

.cg-references li a {
  display: inline-block;
  margin-top: 0.25rem;
  color: var(--cg-blue);
  font-size: 0.78rem;
  font-weight: 800;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.cg-revisions li {
  display: grid;
  grid-template-columns: 100px 120px minmax(0, 1fr);
  gap: 0.75rem;
  align-items: start;
  padding: 0.85rem 0;
  border-bottom: 1px solid var(--cg-line);
}

.cg-revisions time {
  color: var(--cg-muted);
  font-size: 0.78rem;
}

.cg-revisions li p {
  color: #334155;
  font-size: 0.86rem;
  line-height: 1.55;
}

.cg-model-card:nth-child(5) {
  grid-column: 1 / -1;
  border-top-color: #a06a14;
}

.cg-model-analysis .cg-model-word-class {
  background: #f4f1fa;
  border-left: 4px solid var(--cg-violet);
}

.cg-model-word-class dd {
  display: grid;
  gap: 0.7rem;
}

.cg-model-word-class p {
  margin: 0;
}

.cg-versioning-note,
.cg-graph-method-note {
  display: flex;
  gap: 0.85rem;
  align-items: flex-start;
  margin-top: 1.2rem;
  padding: 1rem 1.1rem;
  color: #31404e;
  background: #eef5f8;
  border-top: 1px solid #bfd1dc;
  border-bottom: 1px solid #bfd1dc;
}

.cg-versioning-note svg,
.cg-graph-method-note svg {
  width: 1.25rem;
  height: 1.25rem;
  flex: 0 0 auto;
  margin-top: 0.15rem;
  color: var(--cg-blue);
}

.cg-versioning-note h3 {
  color: #1d405c;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.18rem;
}

.cg-versioning-note p,
.cg-graph-method-note p {
  margin-top: 0.35rem;
  font-size: 1rem;
  line-height: 1.72;
}

.cg-word-class-status,
[data-cg-valency-status],
[data-cg-graph-status] {
  max-width: 310px;
  color: #415464;
  font-size: 0.92rem;
  line-height: 1.55;
  text-align: right;
}

.cg-word-class-method {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: 1.2rem;
  border-top: 1px solid var(--cg-line);
  border-bottom: 1px solid var(--cg-line);
}

.cg-word-class-method article {
  min-width: 0;
  padding: 1.1rem 1.2rem;
}

.cg-word-class-method article + article {
  border-left: 1px solid var(--cg-line);
}

.cg-word-class-method svg {
  width: 1.3rem;
  height: 1.3rem;
  color: var(--cg-red);
}

.cg-word-class-method h3 {
  margin-top: 0.55rem;
  color: #213c52;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.25rem;
}

.cg-word-class-method p {
  margin-top: 0.45rem;
  color: #42515f;
  font-size: 1rem;
  line-height: 1.75;
}

.cg-word-class-metrics,
.cg-information-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 1.2rem;
  border: 1px solid var(--cg-line);
}

.cg-word-class-metrics > div,
.cg-information-metrics > div {
  min-width: 0;
  padding: 1rem;
  border-right: 1px solid var(--cg-line);
  border-bottom: 1px solid var(--cg-line);
}

.cg-word-class-metrics > div:nth-child(3n),
.cg-information-metrics > div:nth-child(3n) {
  border-right: 0;
}

.cg-word-class-metrics > div:nth-last-child(-n + 3),
.cg-information-metrics > div:nth-last-child(-n + 3) {
  border-bottom: 0;
}

.cg-word-class-metrics dt,
.cg-information-metrics dt {
  color: #52606d;
  font-size: 0.84rem;
  font-weight: 800;
}

.cg-word-class-metrics dd,
.cg-information-metrics dd {
  margin-top: 0.3rem;
  color: var(--cg-red);
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 1.42rem;
  font-weight: 850;
}

.cg-word-class-metrics small,
.cg-information-metrics small {
  display: block;
  margin-top: 0.25rem;
  color: var(--cg-muted);
  font-size: 0.8rem;
  line-height: 1.45;
}

.cg-word-class-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  margin-top: 1.2rem;
}

.cg-word-class-card {
  min-width: 0;
  overflow: hidden;
  background: var(--cg-paper);
  border: 1px solid var(--cg-line);
  border-top: 5px solid var(--cg-teal);
  border-radius: 6px;
}

.cg-word-class-card:nth-child(4n + 2) {
  border-top-color: var(--cg-red);
}

.cg-word-class-card:nth-child(4n + 3) {
  border-top-color: var(--cg-blue);
}

.cg-word-class-card:nth-child(4n) {
  border-top-color: var(--cg-violet);
}

.cg-word-class-card > header {
  min-height: 168px;
  padding: 1.1rem 1.2rem;
  background: #f8fafb;
  border-bottom: 1px solid var(--cg-line);
}

.cg-word-class-card > header span {
  color: var(--cg-red);
  font-size: 0.8rem;
  font-weight: 850;
  text-transform: uppercase;
}

.cg-word-class-card > header h3 {
  margin-top: 0.35rem;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.5rem;
}

.cg-word-class-card > header p {
  margin-top: 0.5rem;
  color: var(--cg-muted);
  font-size: 0.95rem;
  line-height: 1.55;
}

.cg-word-class-card > dl > div {
  padding: 0.9rem 1.15rem;
  border-bottom: 1px solid var(--cg-line);
}

.cg-word-class-card dt {
  color: var(--cg-teal-dark);
  font-size: 0.82rem;
  font-weight: 850;
  text-transform: uppercase;
}

.cg-word-class-card dd {
  margin-top: 0.35rem;
  color: #344454;
  font-size: 1rem;
  line-height: 1.75;
}

.cg-word-class-examples {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
  padding: 0.85rem 1.15rem;
  background: #f7f5ef;
  border-bottom: 1px solid #ddd5c2;
}

.cg-word-class-examples code {
  padding: 0.25rem 0.42rem;
  color: #55451f;
  background: #fff;
  border: 1px solid #d8ceb4;
  border-radius: 3px;
  font-size: 0.9rem;
}

.cg-word-class-live,
.cg-valency-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  background: #173d3a;
}

.cg-word-class-live > span,
.cg-valency-metrics > div {
  min-width: 0;
  padding: 0.85rem 0.9rem;
  color: #eef8f6;
  border-right: 1px solid rgb(255 255 255 / 18%);
}

.cg-word-class-live > span:last-child,
.cg-valency-metrics > div:last-child {
  border-right: 0;
}

.cg-word-class-live small,
.cg-valency-metrics span {
  display: block;
  color: #bedbd6;
  font-size: 0.75rem;
}

.cg-word-class-live strong,
.cg-valency-metrics strong {
  display: block;
  margin-top: 0.28rem;
  font-size: 1.05rem;
}

.cg-word-class-relations {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.cg-word-class-relations > div {
  min-width: 0;
  padding: 1rem 1.1rem;
}

.cg-word-class-relations > div + div {
  border-left: 1px solid var(--cg-line);
}

.cg-word-class-relations h4 {
  color: #263f55;
  font-size: 0.95rem;
}

.cg-word-class-relations ol {
  display: grid;
  gap: 0.45rem;
  margin-top: 0.65rem;
}

.cg-word-class-relations li,
.cg-transition-list li {
  display: flex;
  justify-content: space-between;
  gap: 0.6rem;
  color: #465563;
  font-size: 0.88rem;
  line-height: 1.45;
}

.cg-word-class-relations li strong,
.cg-transition-list li strong {
  flex: 0 0 auto;
  color: #1c5b55;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}

.cg-context-process-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0;
  margin-top: 1rem;
  border-top: 1px solid var(--cg-line);
  border-left: 1px solid var(--cg-line);
}

.cg-context-process-grid article {
  position: relative;
  min-width: 0;
  padding: 1.1rem 1.2rem 1.2rem 3.5rem;
  border-right: 1px solid var(--cg-line);
  border-bottom: 1px solid var(--cg-line);
}

.cg-context-process-grid article > span {
  position: absolute;
  top: 1.1rem;
  left: 1rem;
  color: var(--cg-red);
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-weight: 850;
}

.cg-context-process-grid h3 {
  color: #263e52;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.12rem;
}

.cg-context-process-grid p {
  margin-top: 0.45rem;
  color: #42515e;
  font-size: 1rem;
  line-height: 1.72;
}

.cg-valency-metrics {
  grid-template-columns: repeat(5, minmax(0, 1fr));
  margin-top: 1rem;
}

.cg-principle-list {
  display: grid;
  gap: 0.65rem;
  margin-top: 1rem;
  padding-left: 1.35rem;
  color: #3a4957;
  font-size: 1rem;
  line-height: 1.7;
}

.cg-transitivity-section > .cg-model-limit {
  margin-top: 1rem;
  padding: 1rem;
  background: #fff8f3;
  border-left: 4px solid #c17555;
  font-size: 1rem;
  line-height: 1.7;
}

.cg-computational-conclusions {
  display: grid;
}

.cg-computational-conclusions article {
  padding: 1rem 1.2rem;
  border-top: 1px solid var(--cg-line);
}

.cg-computational-conclusions article:nth-child(1) {
  background: #edf7f3;
  border-left: 4px solid var(--cg-green);
}

.cg-computational-conclusions article:nth-child(2) {
  background: #eef4fa;
  border-left: 4px solid var(--cg-blue);
}

.cg-computational-conclusions article:nth-child(3) {
  background: #fff8f3;
  border-left: 4px solid #c17555;
}

.cg-computational-conclusions span {
  color: var(--cg-teal-dark);
  font-size: 0.82rem;
  font-weight: 850;
  text-transform: uppercase;
}

.cg-computational-conclusions h4 {
  margin-top: 0.3rem;
  color: #253d50;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.1rem;
}

.cg-computational-conclusions p {
  margin-top: 0.45rem;
  color: #374957;
  font-size: 1.02rem;
  line-height: 1.75;
}

.cg-theory-graph-grid,
.cg-live-graph-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  margin-top: 1.2rem;
}

.cg-theory-graph-card,
.cg-live-graph-card {
  min-width: 0;
  overflow: hidden;
  background: var(--cg-paper);
  border: 1px solid var(--cg-line);
  border-radius: 6px;
}

.cg-theory-graph-card:nth-child(5),
.cg-live-graph-card-wide {
  grid-column: 1 / -1;
}

.cg-theory-graph-card > header,
.cg-live-graph-card > header {
  min-height: 126px;
  padding: 1rem 1.1rem;
  border-bottom: 1px solid var(--cg-line);
}

.cg-theory-graph-card > header span {
  color: var(--cg-red);
  font-size: 0.78rem;
  font-weight: 850;
  text-transform: uppercase;
}

.cg-theory-graph-card h3,
.cg-live-graph-card h3 {
  margin-top: 0.3rem;
  color: #223d54;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.3rem;
}

.cg-theory-graph-card code {
  display: block;
  margin-top: 0.55rem;
  overflow-wrap: anywhere;
  color: #41515f;
  font-size: 0.83rem;
  line-height: 1.5;
}

.cg-live-graph-card header p {
  margin-top: 0.4rem;
  color: var(--cg-muted);
  font-size: 0.95rem;
  line-height: 1.55;
}

.cg-theory-graph-card svg {
  display: block;
  width: 100%;
  min-height: 230px;
  background: #fbfcfd;
}

.cg-theory-graph-card figcaption,
.cg-live-graph-card figcaption {
  padding: 0.75rem 1rem;
  color: var(--cg-muted);
  background: #f6f8fa;
  border-top: 1px solid var(--cg-line);
  font-size: 0.84rem;
  line-height: 1.55;
}

.cg-theory-graph-card > a {
  display: block;
  padding: 0.7rem 1rem;
  color: var(--cg-blue);
  font-size: 0.9rem;
  font-weight: 800;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.cg-information-metrics {
  margin: 1rem;
}

.cg-transition-list {
  display: grid;
  gap: 0.65rem;
  min-height: 280px;
  padding: 1.1rem 1.2rem;
}

.cg-transition-list li {
  padding-bottom: 0.5rem;
  border-bottom: 1px dotted #cfd7de;
  font-size: 0.94rem;
}

.cg-transition-matrix-wrap {
  max-width: 100%;
  overflow: auto;
  padding: 1rem;
}

.cg-transition-matrix {
  width: max-content;
  min-width: 100%;
  border-collapse: separate;
  border-spacing: 2px;
}

.cg-transition-matrix th,
.cg-transition-matrix td {
  min-width: 66px;
  height: 42px;
  padding: 0.35rem;
  text-align: center;
}

.cg-transition-matrix th {
  position: sticky;
  color: #304353;
  background: #eef2f5;
  font-size: 0.73rem;
  line-height: 1.25;
}

.cg-transition-matrix thead th {
  top: 0;
  z-index: 2;
}

.cg-transition-matrix tbody th {
  left: 0;
  z-index: 1;
}

.cg-transition-matrix td {
  color: #102f2c;
  background: rgb(31 132 121 / var(--matrix-intensity, 0.08));
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 0.76rem;
  font-weight: 800;
}

.cg-transition-matrix td.is-empty {
  color: #9ba6af;
  background: #f7f8f9;
}

@media (max-width: 980px) {
  .cg-hero {
    grid-template-columns: 1fr;
  }

  .cg-hero-copy {
    border-right: 0;
    border-bottom: 1px solid var(--cg-line);
  }

  .cg-method-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cg-model-grid {
    grid-template-columns: 1fr;
  }

  .cg-model-card:nth-child(5),
  .cg-theory-graph-card:nth-child(5),
  .cg-live-graph-card-wide {
    grid-column: auto;
  }

  .cg-word-class-grid,
  .cg-theory-graph-grid,
  .cg-live-graph-grid {
    grid-template-columns: 1fr;
  }

  .cg-computational-grid {
    grid-template-columns: 1fr;
  }

  .cg-computation-summary-list > article,
  .cg-atlas-conclusion {
    grid-template-columns: 1fr;
  }

  .cg-atlas-conclusion-heading {
    grid-row: auto;
  }

  .cg-atlas-conclusion-band {
    grid-column: 1;
  }

  .cg-method-grid article:nth-child(2) {
    border-right: 0;
  }

  .cg-method-grid article:nth-child(-n + 2) {
    border-bottom: 1px solid var(--cg-line);
  }

  .cg-live-band {
    grid-template-columns: 1fr;
  }

  .cg-live-band dl {
    border-top: 1px solid rgb(255 255 255 / 22%);
    border-left: 0;
  }

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

  .cg-toc {
    position: relative;
    top: auto;
    max-height: none;
  }
}

@media (max-width: 720px) {
  .cg-page {
    padding-left: 0.75rem;
    padding-right: 0.75rem;
  }

  .cg-hero,
  .cg-article-header {
    margin-top: 0.8rem;
  }

  .cg-hero h2,
  .cg-article-header h2 {
    font-size: clamp(2.15rem, 12vw, 3.2rem);
    overflow-wrap: anywhere;
  }

  .cg-metrics {
    grid-template-columns: 1fr 1fr;
  }

  .cg-metrics > div {
    min-height: 96px;
    padding: 1rem;
  }

  .cg-method-grid,
  .cg-principle-grid,
  .cg-witness-list,
  .cg-glossary dl {
    grid-template-columns: 1fr;
  }

  .cg-word-class-method,
  .cg-context-process-grid {
    grid-template-columns: 1fr;
  }

  .cg-word-class-method article + article {
    border-top: 1px solid var(--cg-line);
    border-left: 0;
  }

  .cg-word-class-metrics,
  .cg-information-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cg-word-class-metrics > div,
  .cg-information-metrics > div,
  .cg-word-class-metrics > div:nth-child(3n),
  .cg-information-metrics > div:nth-child(3n),
  .cg-word-class-metrics > div:nth-last-child(-n + 3),
  .cg-information-metrics > div:nth-last-child(-n + 3) {
    border-right: 1px solid var(--cg-line);
    border-bottom: 1px solid var(--cg-line);
  }

  .cg-word-class-metrics > div:nth-child(2n),
  .cg-information-metrics > div:nth-child(2n) {
    border-right: 0;
  }

  .cg-word-class-metrics > div:nth-last-child(-n + 2),
  .cg-information-metrics > div:nth-last-child(-n + 2) {
    border-bottom: 0;
  }

  .cg-word-class-relations,
  .cg-valency-metrics {
    grid-template-columns: 1fr;
  }

  .cg-word-class-relations > div + div {
    border-top: 1px solid var(--cg-line);
    border-left: 0;
  }

  .cg-valency-metrics > div {
    border-right: 0;
    border-bottom: 1px solid rgb(255 255 255 / 18%);
  }

  .cg-valency-metrics > div:last-child {
    border-bottom: 0;
  }

  .cg-word-class-status,
  [data-cg-valency-status],
  [data-cg-graph-status] {
    max-width: none;
    text-align: left;
  }

  .cg-formal-intro {
    grid-template-columns: 30px minmax(0, 1fr);
    padding: 1rem;
  }

  .cg-synthesis {
    padding: 1rem;
  }

  .cg-synthesis-steps {
    grid-template-columns: 1fr;
  }

  .cg-insight-report-heading,
  .cg-insight-item dl {
    grid-template-columns: 1fr;
  }

  .cg-insight-live {
    max-width: 100%;
  }

  .cg-model-visual svg {
    min-height: 190px;
  }

  .cg-method-grid article {
    border-right: 0;
    border-bottom: 1px solid var(--cg-line);
  }

  .cg-section-heading {
    display: block;
  }

  .cg-section-heading > p {
    margin-top: 0.65rem;
  }

  .cg-live-band dl {
    grid-template-columns: 1fr;
  }

  .cg-live-band dl > div {
    min-height: 82px;
    border-right: 0;
    border-bottom: 1px solid rgb(255 255 255 / 18%);
  }

  .cg-live-band dl > div:last-child {
    border-bottom: 0;
  }

  .cg-chapter-row {
    grid-template-columns: 54px minmax(0, 1fr);
    gap: 0.8rem;
  }

  .cg-chapter-number {
    font-size: 2rem;
  }

  .cg-primary-link {
    grid-column: 1 / -1;
    justify-content: center;
  }

  .cg-diagram-row {
    grid-template-columns: 1fr;
  }

  .cg-segments {
    align-items: stretch;
  }

  .cg-segment {
    flex: 1 1 92px;
    min-width: 0;
  }

  .cg-bar-row {
    grid-template-columns: minmax(100px, 0.45fr) minmax(110px, 1fr);
  }

  .cg-bar-value {
    grid-column: 1 / -1;
    text-align: left;
  }

  .cg-revisions li {
    grid-template-columns: 1fr;
  }

  .cg-computational-metrics {
    grid-template-columns: 1fr;
  }

  .cg-computation-summary-conclusion {
    grid-template-columns: 1fr;
  }

  .cg-computation-summary-list dl > div,
  .cg-atlas-conclusion-band {
    grid-template-columns: 1fr;
    gap: 0.25rem;
  }

  .cg-computational-metrics > div,
  .cg-computational-metrics > div:nth-child(2n) {
    border-right: 0;
  }

  .cg-ambiguity-live > header,
  .cg-ambiguity-metrics,
  .cg-ambiguity-examples ul,
  .cg-productivity-live > header,
  .cg-productivity-metrics,
  .cg-suffix-atlas-heading,
  .cg-suffix-atlas-metrics,
  .cg-atlas-toolbar,
  .cg-atlas-context-grid,
  .cg-atlas-theory-grid,
  .cg-atlas-morph-metrics,
  .cg-atlas-morph-grid {
    grid-template-columns: 1fr;
  }

  .cg-ambiguity-metrics > div,
  .cg-ambiguity-metrics > div:nth-child(4n),
  .cg-productivity-metrics > div,
  .cg-productivity-metrics > div:nth-child(4n),
  .cg-suffix-atlas-metrics > div,
  .cg-suffix-atlas-metrics > div:nth-child(3n),
  .cg-ambiguity-examples li:nth-child(odd),
  .cg-ambiguity-examples li:nth-child(even) {
    padding-left: 0.9rem;
    padding-right: 0.9rem;
    border-right: 0;
  }

  .cg-ambiguity-examples li {
    grid-template-columns: 1fr;
    gap: 0.25rem;
  }

  .cg-atlas-context-item,
  .cg-atlas-context-item:nth-child(2n),
  .cg-atlas-theory-item,
  .cg-atlas-theory-item:nth-child(2n),
  .cg-atlas-morph-metrics > div,
  .cg-atlas-morph-grid > section:first-child {
    border-right: 0;
  }

  .cg-atlas-morph-metrics > div {
    border-bottom: 1px solid var(--cg-line);
  }

  .cg-atlas-length-row {
    grid-template-columns: 64px minmax(90px, 1fr);
  }

  .cg-atlas-length-row strong {
    grid-column: 1 / -1;
  }

  .cg-insight-item {
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 0.7rem;
  }
}

/* Long-form grammar pages prioritize sustained reading over compact density. */
.cg-page {
  font-size: 18px;
}

.cg-kicker,
.cg-section-kicker {
  font-size: 0.86rem;
}

.cg-article-meta,
.cg-chapter-meta,
.cg-chapter-copy li,
.cg-toc ol,
.cg-toc > p {
  font-size: 0.86rem;
}

.cg-formal-intro p,
.cg-method-grid article p,
.cg-principle-grid p {
  font-size: 0.95rem;
}

.cg-model-eyebrow,
.cg-model-status,
.cg-computational-status {
  font-size: 0.86rem;
}

.cg-model-card > header > p:last-child,
.cg-computational-module > header > p,
.cg-model-analysis dd,
.cg-model-corpus-findings p,
.cg-computational-analysis dd,
.cg-insight-item dd {
  font-size: 1.05rem;
}

.cg-model-analysis dt,
.cg-computational-analysis dt,
.cg-insight-item dt {
  font-size: 0.9rem;
}

.cg-model-formula code,
.cg-computational-formula code,
.cg-decision-rule code {
  font-size: 0.96rem;
}

.cg-model-visual figcaption,
.cg-diagram figcaption,
.cg-chart figcaption {
  font-size: 0.8rem;
}

.cg-model-witnesses h4 {
  font-size: 0.93rem;
}

.cg-model-witnesses a,
.cg-model-witnesses code,
.cg-model-witnesses span,
.cg-computational-evidence a,
.cg-computational-evidence span,
.cg-insight-witnesses a,
.cg-insight-witnesses span {
  font-size: 0.9rem;
}

.cg-measurement-note p,
.cg-insight-currentness,
.cg-references li p,
.cg-revisions li p,
.cg-glossary dd {
  font-size: 1.02rem;
}

.cg-computational-metrics dt,
.cg-computational-metrics small,
.cg-insight-thesis span,
.cg-insight-live span {
  font-size: 0.86rem;
}

.cg-computational-metrics dd {
  font-size: 1.45rem;
}

.cg-insight-live strong {
  font-size: 0.9rem;
}

.cg-insight-thesis p {
  font-size: 1.12rem;
}

.cg-references li a,
.cg-revisions time {
  font-size: 0.94rem;
}

.cg-ambiguity-live > header span {
  font-size: 0.86rem;
}

.cg-ambiguity-live > header p {
  font-size: 1rem;
}

.cg-ambiguity-metrics dt {
  font-size: 0.92rem;
}

.cg-ambiguity-metrics small {
  font-size: 0.86rem;
}

.cg-ambiguity-metrics p {
  font-size: 1rem;
}

.cg-ambiguity-contract strong,
.cg-ambiguity-examples strong {
  font-size: 1.04rem;
}

.cg-ambiguity-contract p,
.cg-ambiguity-examples p,
.cg-ambiguity-examples li span {
  font-size: 1.02rem;
}

.cg-ambiguity-examples b {
  font-size: 1.08rem;
}

.cg-productivity-live > header span {
  font-size: 0.86rem;
}

.cg-productivity-live > header p,
.cg-productivity-metrics p,
.cg-productivity-contract p {
  font-size: 1rem;
}

.cg-productivity-metrics dt,
.cg-productivity-metrics small {
  font-size: 0.9rem;
}

.cg-productivity-contract strong {
  font-size: 1.04rem;
}

.cg-productivity-table thead th {
  font-size: 0.88rem;
}

.cg-productivity-table td,
.cg-productivity-table tbody th strong,
.cg-productivity-example b,
.cg-productivity-footnote {
  font-size: 0.96rem;
}

.cg-productivity-table tbody th small,
.cg-productivity-table td small {
  font-size: 0.84rem;
}

.cg-suffix-atlas-heading span {
  font-size: 0.88rem;
}

.cg-suffix-atlas-heading p,
.cg-suffix-atlas-metrics p,
.cg-atlas-panel-intro p,
.cg-atlas-method p {
  font-size: 1rem;
}

.cg-suffix-atlas-metrics dt,
.cg-suffix-atlas-metrics small,
.cg-atlas-toolbar label span {
  font-size: 0.9rem;
}

.cg-suffix-atlas-tabs button,
.cg-atlas-toolbar input,
.cg-atlas-segments button {
  font-size: 0.96rem;
}

.cg-suffix-atlas-table thead th,
.cg-suffix-atlas-table td,
.cg-suffix-atlas-table tbody th strong,
.cg-atlas-context-item > p,
.cg-atlas-theory-item > p,
.cg-atlas-morph-grid ol,
.cg-atlas-insights,
.cg-atlas-method p {
  font-size: 0.96rem;
}

.cg-suffix-atlas-table tbody th small,
.cg-suffix-atlas-table td small,
.cg-atlas-context-item ul,
.cg-atlas-length-row {
  font-size: 0.86rem;
}

@media (prefers-reduced-motion: reduce) {
  .cg-bar-fill,
  .cg-group-track span,
  .cg-comparison-bar span,
  .cg-qa-list summary svg {
    transition: none;
  }
}
