.agr-root {
  --agr-paper: #f6f3ec;
  --agr-paper-2: #ebe7de;
  --agr-ink: #111317;
  --agr-muted: #656a72;
  --agr-line: rgba(17, 19, 23, .14);
  --agr-signal: #4169e1;
  --agr-signal-soft: rgba(65, 105, 225, .12);
  --agr-boundary: #d68a28;
  --agr-boundary-soft: rgba(214, 138, 40, .12);
  --agr-reject: #d55252;
  --agr-resolved: #188e82;
  --agr-dark: #0b0d10;
  --agr-dark-2: #13161b;
  --agr-dark-line: rgba(255,255,255,.14);
  --agr-white: #f4f1ea;
  color: var(--agr-ink);
  background: var(--agr-paper);
  overflow: clip;
}

html[data-effective-theme="dark"] .agr-root {
  --agr-paper: #0b0d10;
  --agr-paper-2: #13161b;
  --agr-ink: #f4f1ea;
  --agr-muted: #a3a8b1;
  --agr-line: rgba(255,255,255,.14);
  --agr-signal-soft: rgba(96, 132, 255, .15);
  --agr-boundary-soft: rgba(224, 153, 60, .14);
  --agr-signal: #7593ff;
  --agr-boundary: #e3a149;
  --agr-reject: #ef7373;
  --agr-resolved: #45c2b3;
}

.agr-root * { box-sizing: border-box; }
.agr-root a { color: inherit; }
.agr-shell { width: min(1220px, calc(100% - 44px)); margin: 0 auto; }
.agr-narrow { width: min(760px, calc(100% - 44px)); margin: 0 auto; }
.agr-mono { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; letter-spacing: .01em; }
.agr-eyebrow { font: 700 .72rem/1.2 ui-monospace, SFMono-Regular, Menlo, monospace; letter-spacing: .14em; text-transform: uppercase; color: var(--agr-muted); }
.agr-signal-text { color: var(--agr-signal); }
.agr-boundary-text { color: var(--agr-boundary); }

.agr-hero { position: relative; min-height: 86vh; display: grid; align-items: center; border-bottom: 1px solid var(--agr-line); }
.agr-hero::before { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(90deg, transparent 0 58%, color-mix(in srgb, var(--agr-boundary) 8%, transparent) 58% 58.2%, transparent 58.2%); }
.agr-hero-grid { display: grid; grid-template-columns: 1.35fr .65fr; min-height: 72vh; }
.agr-hero-copy { align-self: center; padding: 92px 64px 80px 0; }
.agr-hero h1 { margin: 20px 0 28px; max-width: 900px; font-size: clamp(3.8rem, 8.8vw, 9rem); line-height: .86; letter-spacing: -.075em; font-weight: 780; }
.agr-hero h1 span { display: block; }
.agr-hero .agr-deck { max-width: 780px; margin: 0; font-size: clamp(1.15rem, 2vw, 1.65rem); line-height: 1.5; color: var(--agr-muted); }
.agr-hero .agr-deck strong { color: var(--agr-ink); }
.agr-hero-boundary { align-self: stretch; border-left: 1px solid color-mix(in srgb, var(--agr-boundary) 68%, transparent); padding: 92px 0 70px 34px; display: flex; flex-direction: column; justify-content: space-between; }
.agr-boundary-label { font: 750 .72rem/1.25 ui-monospace, monospace; text-transform: uppercase; letter-spacing: .13em; color: var(--agr-boundary); }
.agr-hero-boundary p { margin: 0; max-width: 260px; color: var(--agr-muted); line-height: 1.55; }
.agr-packet { position: relative; width: 170px; padding: 16px 18px; border: 1px solid var(--agr-signal); background: var(--agr-signal-soft); font: 700 .72rem/1.4 ui-monospace, monospace; text-transform: uppercase; letter-spacing: .08em; }
.agr-packet::after { content: ""; position: absolute; left: 100%; top: 50%; width: 74px; height: 1px; background: linear-gradient(90deg,var(--agr-signal),var(--agr-boundary)); }
.agr-packet::before { content: ""; position: absolute; left: calc(100% + 68px); top: calc(50% - 4px); border-left: 8px solid var(--agr-boundary); border-top: 4px solid transparent; border-bottom: 4px solid transparent; }

.agr-axiom { padding: 52px 0; border-bottom: 1px solid var(--agr-line); }
.agr-axiom-lines { display: grid; gap: 8px; font-size: clamp(2rem, 4vw, 4.4rem); line-height: .98; letter-spacing: -.045em; font-weight: 760; }
.agr-axiom-lines span:nth-child(2) { color: var(--agr-signal); }
.agr-axiom-lines span:nth-child(3) { color: var(--agr-boundary); }

.agr-section { padding: 112px 0; border-bottom: 1px solid var(--agr-line); }
.agr-section-head { display: grid; grid-template-columns: 180px 1fr; gap: 42px; align-items: start; margin-bottom: 54px; }
.agr-section-head h2 { margin: 0; max-width: 900px; font-size: clamp(2.35rem, 5vw, 5rem); line-height: .98; letter-spacing: -.055em; }
.agr-section-head p { max-width: 800px; margin: 22px 0 0; font-size: 1.12rem; line-height: 1.7; color: var(--agr-muted); }

.agr-truth-field { display: grid; grid-template-columns: 1fr 110px 1fr; min-height: 470px; border-top: 1px solid var(--agr-line); border-bottom: 1px solid var(--agr-line); }
.agr-local, .agr-external { padding: 46px 36px; }
.agr-local { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 0; }
.agr-truth-node { padding: 26px 22px; border-bottom: 1px solid var(--agr-line); }
.agr-truth-node:nth-child(odd) { border-right: 1px solid var(--agr-line); }
.agr-truth-node strong { display: block; font-size: 1.05rem; margin-bottom: 7px; }
.agr-truth-node span { color: var(--agr-muted); font-size: .92rem; line-height: 1.5; }
.agr-boundary-wall { position: relative; display: grid; place-items: center; border-inline: 1px solid color-mix(in srgb, var(--agr-boundary) 70%, transparent); background: var(--agr-boundary-soft); }
.agr-boundary-wall span { writing-mode: vertical-rl; transform: rotate(180deg); font: 800 .7rem/1 ui-monospace, monospace; letter-spacing: .14em; text-transform: uppercase; color: var(--agr-boundary); }
.agr-external { display: flex; flex-direction: column; justify-content: center; gap: 22px; }
.agr-external .agr-authority { font-size: clamp(2.2rem, 4vw, 4.5rem); line-height: .95; letter-spacing: -.045em; font-weight: 760; }
.agr-external p { max-width: 480px; color: var(--agr-muted); line-height: 1.65; }
.agr-external small { font: 700 .72rem/1.4 ui-monospace, monospace; letter-spacing: .1em; text-transform: uppercase; color: var(--agr-boundary); }

.agr-timeline { display: grid; gap: 28px; }
.agr-track { display: grid; grid-template-columns: 190px 1fr; align-items: center; gap: 24px; }
.agr-track-name strong { display:block; font-size: 1.05rem; }
.agr-track-name span { color: var(--agr-muted); font-size: .84rem; }
.agr-track-line { position: relative; display: grid; grid-template-columns: repeat(5,1fr); min-height: 130px; }
.agr-track-line::before { content:""; position:absolute; left:0; right:0; top:40px; height:2px; background: var(--agr-line); }
.agr-event { position: relative; padding-top: 64px; padding-right: 12px; font-size: .82rem; line-height: 1.4; color: var(--agr-muted); }
.agr-event::before { content:""; position:absolute; top:33px; left:0; width:16px; height:16px; border-radius:50%; background: var(--agr-paper); border: 2px solid var(--agr-signal); }
.agr-event.boundary::before { border-color: var(--agr-boundary); }
.agr-event.reject::before { border-color: var(--agr-reject); background: color-mix(in srgb,var(--agr-reject) 14%, var(--agr-paper)); }
.agr-event strong { display:block; color: var(--agr-ink); margin-bottom: 4px; font-size: .92rem; }
.agr-evidence-note { margin-top: 30px; padding: 18px 0 0; border-top: 1px solid var(--agr-line); color: var(--agr-muted); font-size: .9rem; line-height: 1.6; }

.agr-stop-map { display: grid; grid-template-columns: 1fr 120px 1fr; gap: 0; border-block: 1px solid var(--agr-line); }
.agr-bad-paths { padding: 34px 34px 34px 0; }
.agr-bad-path { display:grid; grid-template-columns: 38px 1fr; gap: 14px; align-items:start; padding: 18px 0; border-bottom: 1px solid var(--agr-line); color: var(--agr-muted); }
.agr-bad-path .x { font: 850 1rem/1 ui-monospace, monospace; color: var(--agr-reject); }
.agr-stop-core { display:grid; place-items:center; background: var(--agr-boundary-soft); border-inline: 1px solid color-mix(in srgb,var(--agr-boundary) 70%, transparent); }
.agr-stop-core strong { font: 850 1.7rem/1 ui-monospace, monospace; color: var(--agr-boundary); transform: rotate(-90deg); }
.agr-good-path { padding: 34px 0 34px 34px; display: grid; align-content:center; gap: 0; }
.agr-good-step { position:relative; padding: 16px 0 16px 30px; border-left: 2px solid var(--agr-signal); }
.agr-good-step::before { content:""; position:absolute; left:-7px; top:23px; width:12px; height:12px; border-radius:50%; background: var(--agr-signal); }
.agr-good-step strong { display:block; margin-bottom:4px; }
.agr-good-step span { color:var(--agr-muted); font-size:.88rem; }

.agr-relay { position:relative; display:grid; grid-template-columns: 1fr 150px 1fr; min-height: 520px; border:1px solid var(--agr-line); }
.agr-relay-side { padding: 54px; display:flex; flex-direction:column; justify-content:center; }
.agr-relay-side.left { background: linear-gradient(135deg, var(--agr-signal-soft), transparent 64%); }
.agr-relay-side.right { background: linear-gradient(225deg, var(--agr-boundary-soft), transparent 64%); }
.agr-relay-side h3 { margin:0 0 20px; font-size:clamp(2rem,4vw,4.5rem); letter-spacing:-.05em; line-height:.95; }
.agr-relay-side ul { list-style:none; padding:0; margin:0; display:grid; gap:10px; color:var(--agr-muted); }
.agr-relay-boundary { position:relative; display:grid; place-items:center; border-inline:1px solid color-mix(in srgb,var(--agr-boundary) 70%, transparent); background:var(--agr-boundary-soft); }
.agr-relay-boundary span { writing-mode:vertical-rl; transform:rotate(180deg); font:800 .72rem/1 ui-monospace, monospace; letter-spacing:.14em; text-transform:uppercase; color:var(--agr-boundary); }
.agr-relay-packet { position:absolute; z-index:2; left:50%; top:50%; transform:translate(-50%,-50%); width:210px; padding:18px 20px; border:1px solid var(--agr-signal); background:var(--agr-paper); box-shadow:0 18px 50px rgba(0,0,0,.12); text-align:center; }
.agr-relay-packet strong { display:block; font:800 .78rem/1.3 ui-monospace, monospace; letter-spacing:.09em; text-transform:uppercase; }
.agr-relay-packet span { display:block; margin-top:6px; color:var(--agr-muted); font-size:.78rem; }
.agr-human-boundary { margin-top:34px; padding:22px 0 0; border-top:1px solid var(--agr-line); font-size:1.05rem; line-height:1.65; color:var(--agr-muted); }
.agr-human-boundary strong { color:var(--agr-ink); }

.agr-network { display:grid; grid-template-columns: repeat(3,1fr); grid-template-rows:auto auto; gap:1px; background:var(--agr-line); border:1px solid var(--agr-line); }
.agr-network-node { min-height:210px; padding:28px; background:var(--agr-paper); display:flex; flex-direction:column; justify-content:space-between; }
.agr-network-node.center { background:var(--agr-signal-soft); }
.agr-network-node.external { background:var(--agr-boundary-soft); }
.agr-network-node span { font:750 .68rem/1.3 ui-monospace, monospace; text-transform:uppercase; letter-spacing:.1em; color:var(--agr-muted); }
.agr-network-node strong { font-size:1.35rem; line-height:1.15; }
.agr-network-node p { margin:0; color:var(--agr-muted); font-size:.86rem; line-height:1.5; }
.agr-network-caption { margin-top:22px; color:var(--agr-muted); line-height:1.65; }

.agr-invariant { display:grid; grid-template-columns: 1fr 80px 1fr; align-items:stretch; }
.agr-invariant-side { padding:46px 42px; border:1px solid var(--agr-line); }
.agr-invariant-side.old { opacity:.82; }
.agr-invariant-side.new { background:var(--agr-signal-soft); border-color:color-mix(in srgb,var(--agr-signal) 42%, var(--agr-line)); }
.agr-invariant-label { font:800 .7rem/1 ui-monospace, monospace; letter-spacing:.12em; text-transform:uppercase; color:var(--agr-muted); }
.agr-invariant-side h3 { margin:24px 0 26px; font-size:clamp(1.8rem,3.4vw,3.8rem); line-height:1.02; letter-spacing:-.04em; }
.agr-invariant-side p { margin:0; color:var(--agr-muted); line-height:1.65; }
.agr-invariant-arrow { display:grid; place-items:center; font-size:2rem; color:var(--agr-signal); }
.agr-control-split { margin-top:34px; display:grid; grid-template-columns:1fr 1fr; gap:1px; background:var(--agr-line); border:1px solid var(--agr-line); }
.agr-control-split > div { padding:26px; background:var(--agr-paper); }
.agr-control-split strong { display:block; margin-bottom:8px; }
.agr-control-split span { color:var(--agr-muted); font-size:.9rem; line-height:1.55; }

.agr-help { min-height:88vh; display:grid; align-items:center; position:relative; }
.agr-help::before { content:""; position:absolute; left:50%; top:12%; bottom:12%; width:1px; background:linear-gradient(var(--agr-signal),var(--agr-boundary)); }
.agr-help-inner { position:relative; z-index:1; text-align:center; padding:80px 0; }
.agr-help .agr-eyebrow { margin-bottom:30px; }
.agr-help h2 { margin:0 auto; max-width:1100px; font-size:clamp(3.2rem,8vw,8rem); line-height:.88; letter-spacing:-.07em; }
.agr-help p { max-width:700px; margin:34px auto 0; color:var(--agr-muted); font-size:1.15rem; line-height:1.75; background:var(--agr-paper); padding:0 24px; }
.agr-help-packet { width:180px; margin:54px auto 0; padding:16px; border:1px solid var(--agr-signal); background:var(--agr-paper); font:800 .7rem/1.3 ui-monospace, monospace; letter-spacing:.1em; text-transform:uppercase; }

.agr-article { padding:120px 0; background:var(--agr-paper-2); }
.agr-article-intro { margin-bottom:72px; }
.agr-article-intro h2 { margin:14px 0 16px; max-width:900px; font-size:clamp(2.5rem,5vw,5.5rem); line-height:.98; letter-spacing:-.055em; }
.agr-article-intro p { max-width:780px; margin:0; color:var(--agr-muted); font-size:1.15rem; line-height:1.65; }
.agr-prose { max-width:780px; margin:0 auto; font-size:1.08rem; line-height:1.82; }
.agr-prose p { margin:0 0 1.5em; }
.agr-prose h3 { margin:3.6em 0 .8em; font-size:clamp(1.8rem,3vw,2.8rem); line-height:1.08; letter-spacing:-.035em; }
.agr-prose blockquote { margin:2.6em 0; padding:0 0 0 24px; border-left:3px solid var(--agr-signal); font-size:clamp(1.4rem,2.5vw,2rem); line-height:1.35; letter-spacing:-.02em; font-weight:700; }
.agr-prose pre { overflow:auto; padding:22px; border:1px solid var(--agr-line); background:var(--agr-paper); font-size:.86rem; line-height:1.55; }
.agr-prose strong { color:var(--agr-ink); }

.agr-final { padding:112px 0 130px; }
.agr-final-line { font-size:clamp(2.4rem,5vw,5.5rem); line-height:.98; letter-spacing:-.055em; font-weight:770; max-width:1000px; }
.agr-final-line span { display:block; margin-top:16px; color:var(--agr-signal); }

.has-js .agr-reveal { opacity:0; transform:translateY(22px); transition:opacity .65s ease, transform .65s ease; }
.has-js .agr-reveal.is-visible { opacity:1; transform:none; }

@media (prefers-reduced-motion: reduce) {
  .has-js .agr-reveal { opacity:1; transform:none; transition:none; }
}

@media (max-width: 900px) {
  .agr-shell, .agr-narrow { width:min(100% - 30px, 760px); }
  .agr-hero { min-height:auto; }
  .agr-hero::before { background:none; }
  .agr-hero-grid { grid-template-columns:1fr; min-height:auto; }
  .agr-hero-copy { padding:72px 0 48px; }
  .agr-hero-boundary { border-left:0; border-top:1px solid color-mix(in srgb,var(--agr-boundary) 68%, transparent); padding:30px 0 54px; gap:34px; }
  .agr-packet::after, .agr-packet::before { display:none; }
  .agr-section { padding:82px 0; }
  .agr-section-head { grid-template-columns:1fr; gap:16px; margin-bottom:40px; }
  .agr-truth-field { grid-template-columns:1fr; }
  .agr-local { grid-template-columns:1fr; padding:12px 0; }
  .agr-truth-node, .agr-truth-node:nth-child(odd) { border-right:0; }
  .agr-boundary-wall { min-height:78px; border-inline:0; border-block:1px solid color-mix(in srgb,var(--agr-boundary) 70%, transparent); }
  .agr-boundary-wall span { writing-mode:horizontal-tb; transform:none; }
  .agr-external { padding:42px 0; }
  .agr-track { grid-template-columns:1fr; gap:6px; }
  .agr-track-line { grid-template-columns:1fr; gap:0; padding-left:28px; }
  .agr-track-line::before { left:6px; top:0; bottom:0; right:auto; width:2px; height:auto; }
  .agr-event { padding:13px 0 18px; }
  .agr-event::before { left:-29px; top:15px; }
  .agr-stop-map { grid-template-columns:1fr; }
  .agr-bad-paths { padding:0 0 26px; }
  .agr-stop-core { min-height:74px; border-inline:0; border-block:1px solid color-mix(in srgb,var(--agr-boundary) 70%, transparent); }
  .agr-stop-core strong { transform:none; }
  .agr-good-path { padding:28px 0 0; }
  .agr-relay { grid-template-columns:1fr; }
  .agr-relay-side { padding:40px 28px; min-height:300px; }
  .agr-relay-boundary { min-height:78px; border-inline:0; border-block:1px solid color-mix(in srgb,var(--agr-boundary) 70%, transparent); }
  .agr-relay-boundary span { writing-mode:horizontal-tb; transform:none; }
  .agr-relay-packet { position:relative; left:auto; top:auto; transform:none; margin:-38px auto; }
  .agr-network { grid-template-columns:1fr; }
  .agr-network-node { min-height:160px; }
  .agr-invariant { grid-template-columns:1fr; }
  .agr-invariant-arrow { min-height:70px; transform:rotate(90deg); }
  .agr-control-split { grid-template-columns:1fr; }
  .agr-help { min-height:72vh; }
  .agr-help::before { top:8%; bottom:8%; }
  .agr-article { padding:90px 0; }
}

@media (max-width: 520px) {
  .agr-shell, .agr-narrow { width:calc(100% - 24px); }
  .agr-hero h1 { font-size:clamp(3.1rem,18vw,5.4rem); }
  .agr-section { padding:68px 0; }
  .agr-section-head h2 { font-size:clamp(2.15rem,12vw,3.3rem); }
  .agr-local, .agr-external { padding-inline:0; }
  .agr-invariant-side { padding:32px 24px; }
  .agr-help h2 { font-size:clamp(3rem,17vw,5.2rem); }
  .agr-prose { font-size:1.02rem; line-height:1.75; }
}
