.block-playground {
  --pg-cyan: #36cbd0;
  --pg-red: #d83b30;
  --pg-yellow: #e9b400;
  --pg-paper: #f7f3e8;
  --pg-black: #080907;
  background: var(--pg-paper);
  color: #11110f;
  min-height: calc(100vh - var(--shell-h) - var(--status-h));
  overflow: clip;
}

.block-playground button:focus-visible,
.block-playground input:focus-visible,
.block-playground textarea:focus-visible {
  outline: 3px solid var(--pg-cyan);
  outline-offset: 3px;
}

.pg-page-header {
  background: var(--pg-black);
  border-bottom: 1px solid #3b3c38;
  color: #f4f1e7;
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(410px, .8fr);
  min-height: 590px;
  padding: clamp(48px, 7vw, 108px);
  position: relative;
}

.pg-page-header::before {
  background: radial-gradient(circle, var(--pg-cyan) 0 2px, transparent 3px) 0 0 / 18px 18px;
  content: "";
  height: 180px;
  opacity: .55;
  position: absolute;
  right: clamp(30px, 5vw, 80px);
  top: clamp(30px, 5vw, 80px);
  width: 180px;
  -webkit-mask-image: radial-gradient(circle, #000, transparent 72%);
  mask-image: radial-gradient(circle, #000, transparent 72%);
}

.pg-page-header > div:first-child { align-self: center; max-width: 880px; position: relative; z-index: 1; }
.pg-page-header > div:first-child > small { color: var(--pg-cyan); font: 500 11px var(--font-code); letter-spacing: .08em; }
.pg-page-header h1 { font: 400 clamp(56px, 7.8vw, 126px)/.9 var(--font-reading); letter-spacing: -.06em; margin: 34px 0 36px; }
.pg-page-header > div:first-child > p { color: #aaa9a3; font: 18px/1.65 var(--font-interface); margin: 0; max-width: 660px; }

.pg-toolbar { align-self: end; border: 1px solid #41423e; display: grid; position: relative; z-index: 2; }
.pg-toolbar button { background: transparent; border: 0; color: inherit; min-height: 48px; }
.pg-mode, .pg-filter { display: grid; }
.pg-mode { grid-template-columns: repeat(3, 1fr); }
.pg-filter { border-top: 1px solid #41423e; grid-template-columns: repeat(5, 1fr); }
.pg-mode button, .pg-filter button { border-right: 1px solid #41423e; font: 500 12px var(--font-code); letter-spacing: .04em; padding: 0 10px; text-transform: uppercase; }
.pg-mode button:last-child, .pg-filter button:last-child { border-right: 0; }
.pg-mode button[aria-pressed="true"] { background: var(--pg-cyan); color: var(--pg-black); }
.pg-filter button { color: #898a85; min-width: 0; padding: 8px 4px; }
.pg-filter button span { color: #f4f1e7; display: block; font-size: 15px; margin-top: 4px; }
.pg-filter button[aria-pressed="true"] { background: #272824; color: var(--pg-cyan); }
.pg-save-selection { border-top: 1px solid #41423e !important; color: var(--pg-cyan) !important; font: 500 12px var(--font-code) !important; letter-spacing: .07em; text-transform: uppercase; }
.pg-save-selection:hover { background: var(--pg-cyan) !important; color: var(--pg-black) !important; }

.pg-score {
  bottom: 28px;
  display: flex;
  font: 12px var(--font-code);
  gap: 22px;
  left: clamp(48px, 7vw, 108px);
  position: absolute;
  text-transform: uppercase;
}
.pg-score b { color: var(--pg-cyan); font-size: 15px; font-weight: 500; }

.pg-flow { counter-reset: experiment; }
.pg-experiment {
  border-bottom: 1px solid #11110f;
  min-height: 720px;
  overflow: clip;
  padding-left: 46px;
  position: relative;
  scroll-margin-top: calc(var(--shell-h) + var(--status-h) + 12px);
}
.pg-experiment[hidden] { display: none !important; }
.pg-sequence {
  align-items: center;
  background: inherit;
  border-right: 1px solid currentColor;
  bottom: 0;
  display: flex;
  flex-direction: column;
  font: 12px var(--font-code);
  gap: 16px;
  justify-content: flex-start;
  left: 0;
  padding-top: 24px;
  position: absolute;
  top: 0;
  width: 46px;
  z-index: 6;
}
.pg-sequence b, .pg-sequence i { font-weight: 400; writing-mode: vertical-rl; }
.pg-sequence b { letter-spacing: .08em; text-transform: uppercase; }
.pg-sequence i { color: currentColor; margin-top: auto; opacity: .6; padding-bottom: 150px; }

.pg-block-copy { min-width: 0; }
.pg-eyebrow { display: block; font: 500 11px var(--font-code); letter-spacing: .09em; margin: 0 0 28px; text-transform: uppercase; }
.pg-display-title { font: 400 clamp(46px, 6vw, 94px)/.96 var(--font-reading); letter-spacing: -.055em; margin: 0; overflow-wrap: anywhere; }
.pg-body { font: 18px/1.65 var(--font-interface); margin: 30px 0; max-width: 620px; }
.pg-inline-cta {
  background: transparent;
  border: 1px solid currentColor;
  color: inherit;
  display: inline-flex;
  font: 500 11px var(--font-code);
  justify-content: center;
  min-height: 48px;
  padding: 15px 18px;
  text-transform: uppercase;
}

.pg-copy-input {
  background: color-mix(in srgb, var(--pg-cyan) 10%, transparent);
  border: 1px dashed var(--pg-cyan);
  border-radius: 0;
  color: inherit;
  display: block;
  height: auto;
  padding: 10px;
  resize: vertical;
  width: 100%;
}
input.pg-display-title { font: 400 clamp(38px, 5vw, 76px)/1 var(--font-reading); }
textarea.pg-body { min-height: 130px; }
input.pg-inline-cta { max-width: 340px; }

.pg-review-bar {
  align-items: stretch;
  background: #f3f0e7;
  border-top: 1px solid #11110f;
  bottom: 0;
  color: #11110f;
  display: grid;
  grid-template-columns: minmax(260px, 1.25fr) minmax(190px, .8fr) minmax(200px, .85fr) auto 58px 92px;
  min-height: 126px;
  position: absolute;
  right: 0;
  width: calc(100% - 46px);
  z-index: 7;
}
.pg-review-bar > * { border-right: 1px solid rgba(17,17,15,.22); min-width: 0; }
.pg-review-bar > *:last-child { border-right: 0; }
.pg-review-question, .pg-review-schema { display: flex; flex-direction: column; gap: 7px; justify-content: center; padding: 16px; }
.pg-review-question small, .pg-review-schema small { color: var(--pg-red); font: 500 12px var(--font-code); letter-spacing: .06em; }
.pg-review-question b { font: 500 16px/1.35 var(--font-interface); }
.pg-review-question span, .pg-review-schema span { color: #696861; font: 16px/1.45 var(--font-interface); }
.pg-review-schema span { font-family: var(--font-code); font-size: 12px; overflow-wrap: anywhere; }
.pg-note { display: flex; flex-direction: column; gap: 6px; justify-content: center; padding: 12px; }
.pg-note span { color: #696861; font: 12px var(--font-code); text-transform: uppercase; }
.pg-note input { background: white; border: 1px solid #b9b7af; border-radius: 0; color: #11110f; min-height: 44px; padding: 8px; width: 100%; }
.pg-decisions { display: grid; grid-template-columns: repeat(3, 72px); }
.pg-decisions button { background: transparent; border: 0; border-right: 1px solid rgba(17,17,15,.22); display: grid; font: 500 12px var(--font-code); place-content: center; text-transform: uppercase; }
.pg-decisions button:last-child { border: 0; }
.pg-decisions button span { font: 20px var(--font-interface); margin-bottom: 4px; }
.pg-decisions button[aria-pressed="true"] { background: #11110f; color: var(--pg-cyan); }
.pg-decisions button:disabled { cursor: progress; opacity: .55; }
.pg-reset { background: transparent; border: 0; font: 12px var(--font-code); text-transform: uppercase; }
.pg-sync { align-items: center; color: #6e6d67; display: flex; font: 12px/1.4 var(--font-code); justify-content: center; padding: 8px; text-align: center; }
.pg-experiment[data-decision="keep"] .pg-sequence > span { color: #0b7c58; }
.pg-experiment[data-decision="revise"] .pg-sequence > span { color: #9d5b00; }
.pg-experiment[data-decision="park"] .pg-sequence > span { color: #777; }

.block-playground[data-mode="preview"] .pg-review-bar,
.block-playground[data-mode="preview"] .pg-sequence { display: none; }
.block-playground[data-mode="preview"] .pg-experiment { padding-left: 0; }
.block-playground[data-mode="preview"] .pg-filter,
.block-playground[data-mode="preview"] .pg-save-selection { display: none; }
.block-playground[data-mode="preview"] .pg-toolbar { align-self: start; grid-column: 2; justify-self: end; width: 310px; }
.block-playground[data-mode="preview"] .pg-mode {
  background: var(--pg-black);
  border: 1px solid #4b4c47;
  position: fixed;
  right: 12px;
  top: calc(var(--shell-h) + var(--status-h) + 12px);
  width: 290px;
  z-index: 230;
}

/* 01 · signal field */
.pg-signal-field { background: #0c1412; color: #f1eee5; display: grid; grid-template-columns: minmax(390px, .86fr) minmax(520px, 1.14fr); min-height: 890px; }
.pg-signal-copy { align-self: center; padding: clamp(46px, 6vw, 100px); padding-bottom: 210px; }
.pg-signal-copy .pg-eyebrow { color: var(--pg-cyan); }
.pg-signal-copy .pg-body { color: #a8ada7; }
.pg-signal-stage { min-height: 760px; overflow: hidden; position: relative; }
.pg-signal-stage::before { border: 1px solid rgba(54,203,208,.25); border-radius: 50%; content: ""; height: 600px; left: 50%; position: absolute; top: 42%; transform: translate(-50%,-50%); width: 600px; }
.pg-signal-stage::after { border: 1px solid rgba(54,203,208,.14); border-radius: 50%; content: ""; height: 390px; left: 50%; position: absolute; top: 42%; transform: translate(-50%,-50%); width: 390px; }
.pg-signal-points { inset: 60px 30px 250px; position: absolute; }
.pg-signal-points i { animation: pg-breathe 3s ease-in-out infinite alternate; background: var(--pg-cyan); border-radius: 50%; box-shadow: 0 0 15px rgba(54,203,208,.75); height: var(--s); left: var(--x); position: absolute; top: var(--y); width: var(--s); animation-delay: var(--d); }
.pg-signal-points span { background: var(--pg-cyan); box-shadow: 0 0 18px rgba(54,203,208,.55); height: 7px; left: 24%; position: absolute; top: 35%; transform: rotate(-18deg); width: 150px; }
.pg-signal-points span:nth-last-child(2) { left: 55%; top: 22%; transform: rotate(21deg); width: 120px; }
.pg-signal-points span:last-child { left: 45%; top: 59%; transform: rotate(-49deg); width: 190px; }
@keyframes pg-breathe { to { opacity: .35; transform: scale(.7); } }
.pg-signal-choices { bottom: 148px; display: grid; gap: 6px; grid-template-columns: 1fr 1fr; left: 32px; position: absolute; right: 32px; z-index: 3; }
.pg-signal-choices button { background: rgba(12,20,18,.78); border: 1px solid #54605b; color: #c9cbc6; min-height: 48px; padding: 10px 12px; text-align: left; }
.pg-signal-choices button[aria-pressed="true"] { background: var(--pg-cyan); border-color: var(--pg-cyan); color: #08110f; }
.pg-signal-output { background: #f1eee5; color: #10110f; display: grid; gap: 5px; left: 50%; max-width: 330px; padding: 18px; position: absolute; top: 42%; transform: translate(-50%,-50%); width: 52%; z-index: 4; }
.pg-signal-output small { color: #5b625f; font: 12px var(--font-code); }
.pg-signal-output span { font: 500 16px/1.45 var(--font-interface); }

/* 02 · task compiler */
.pg-runtime-pipeline { background: #050505; color: #f4f2ea; display: grid; grid-template-columns: minmax(380px, .86fr) minmax(520px, 1.14fr); min-height: 850px; }
.pg-compiler-copy { align-self: center; padding: clamp(42px, 6vw, 92px); padding-bottom: 200px; }
.pg-compiler-copy .pg-eyebrow { color: var(--pg-red); }
.pg-compiler-copy .pg-body { color: #91918d; }
.pg-task-entry { display: grid; gap: 8px; margin-top: 34px; }
.pg-task-entry span { color: #777772; font: 12px var(--font-code); text-transform: uppercase; }
.pg-task-entry input { background: #0d0d0d; border: 1px solid #474743; color: white; min-height: 52px; padding: 0 14px; width: 100%; }
.pg-run { background: var(--pg-red); border: 0; color: white; font: 500 12px var(--font-code); margin-top: 10px; min-height: 50px; padding: 0 18px; text-transform: uppercase; }
.pg-run:disabled { cursor: progress; opacity: .55; }
.pg-compiler-stage { align-self: center; border: 1px solid #383834; margin: 40px clamp(34px, 5vw, 84px) 170px 0; }
.pg-compiler-stage > header { border-bottom: 1px solid #383834; display: flex; font: 12px var(--font-code); justify-content: space-between; padding: 14px; }
.pg-compiler-stage > header i { color: var(--pg-red); font-style: normal; }
.pg-compiler-stage ol { list-style: none; margin: 0; padding: 0; }
.pg-compiler-stage li { align-items: center; border-bottom: 1px solid #383834; display: grid; gap: 15px; grid-template-columns: 36px 1fr 22px; min-height: 83px; padding: 13px 16px; }
.pg-compiler-stage li > span { color: #676762; font: 12px var(--font-code); }
.pg-compiler-stage li div { display: grid; gap: 7px; }
.pg-compiler-stage li b { font: 500 16px var(--font-code); }
.pg-compiler-stage li small { color: #777772; font: 16px var(--font-interface); }
.pg-compiler-stage li > i { border: 1px solid #54544f; border-radius: 50%; height: 10px; width: 10px; }
.pg-compiler-stage li.is-active { background: #15100f; }
.pg-compiler-stage li.is-active > i { background: var(--pg-red); box-shadow: 0 0 12px var(--pg-red); }
.pg-compiler-stage li.is-done > i { background: var(--pg-cyan); border-color: var(--pg-cyan); }
.pg-compiler-stage output { display: grid; gap: 9px; min-height: 100px; padding: 18px; }
.pg-compiler-stage output small { color: var(--pg-red); font: 12px var(--font-code); }
.pg-compiler-stage output span { font: 16px/1.5 var(--font-code); }

/* 03 · three week weather */
.pg-season-field { background: #fffaf1; color: #181714; min-height: 920px; }
.pg-weather-head { display: grid; gap: 20px; grid-template-columns: .55fr 1.2fr .85fr; padding: clamp(48px, 6vw, 90px); }
.pg-weather-head .pg-eyebrow { color: #9b7500; margin: 8px 0 0; }
.pg-weather-head .pg-body { color: #66645e; margin: 8px 0 0; }
.pg-weather-grid { border-top: 1px solid #181714; display: grid; grid-template-columns: 1.25fr .75fr; min-height: 520px; }
.pg-weather-field { background: #eee8da; min-height: 520px; overflow: hidden; position: relative; }
.pg-weather-field::before { background: repeating-linear-gradient(90deg, transparent 0 54px, rgba(24,23,20,.08) 55px 56px), repeating-linear-gradient(0deg, transparent 0 54px, rgba(24,23,20,.08) 55px 56px); content: ""; inset: 0; opacity: .6; position: absolute; }
.pg-weather-sun { background: var(--pg-yellow); border-radius: 50%; height: 150px; left: 14%; position: absolute; top: 12%; transition: all 500ms ease; width: 150px; }
.pg-weather-field i { background: #181714; bottom: 0; height: 54%; left: 27%; position: absolute; transform: skew(-6deg); transform-origin: bottom; transition: all 500ms ease; width: 4px; }
.pg-weather-field i::after { background: #181714; content: ""; height: 3px; left: 0; position: absolute; top: 32%; transform: rotate(-28deg); transform-origin: left; width: 85px; }
.pg-weather-field i:nth-of-type(2) { height: 37%; left: 53%; }
.pg-weather-field i:nth-of-type(3) { height: 68%; left: 73%; }
.pg-weather-path { border: 3px dashed #181714; border-left: 0; border-top: 0; bottom: 10%; height: 38%; position: absolute; right: 10%; transform: skewX(-22deg); width: 66%; }
.pg-weather-field[data-weather="1"] { filter: grayscale(.4); }
.pg-weather-field[data-weather="1"]::after { background: linear-gradient(90deg, rgba(255,250,241,.92), rgba(255,250,241,.2)); content: ""; inset: 0; position: absolute; }
.pg-weather-field[data-weather="2"] .pg-weather-sun { left: 44%; top: 7%; transform: scale(.78); }
.pg-weather-field[data-weather="3"] .pg-weather-sun { left: 72%; top: 5%; transform: scale(.55); }
.pg-weather-field[data-weather="3"] i { box-shadow: 28px 20px 0 -1px #181714; }
.pg-weather-ledger { border-left: 1px solid #181714; display: flex; flex-direction: column; padding-bottom: 150px; }
.pg-week-tabs { display: grid; }
.pg-week-tabs button { background: transparent; border: 0; border-bottom: 1px solid rgba(24,23,20,.25); display: grid; gap: 5px; grid-template-columns: 54px 1fr; min-height: 70px; padding: 14px; text-align: left; }
.pg-week-tabs button span { color: #8c8980; font: 12px var(--font-code); }
.pg-week-tabs button[aria-pressed="true"] { background: var(--pg-yellow); }
.pg-weather-ledger output { display: grid; gap: 12px; padding: 32px; }
.pg-weather-ledger output small { color: #8d6b00; font: 12px var(--font-code); text-transform: uppercase; }
.pg-weather-ledger output b { font: 500 26px var(--font-reading); }
.pg-weather-ledger output span { color: #65635d; font: 16px/1.55 var(--font-interface); }
.pg-weather-ledger > .pg-inline-cta { align-self: flex-start; margin: auto 32px 0; }

/* 04 · proof lens */
.pg-before-after { background: #f5f0e5; display: grid; grid-template-columns: minmax(340px, .7fr) minmax(620px, 1.3fr); min-height: 860px; }
.pg-proof-head { align-self: center; padding: clamp(46px, 6vw, 92px); padding-bottom: 200px; }
.pg-proof-head .pg-eyebrow { color: #9f1f16; }
.pg-proof-head .pg-body { color: #6a655e; }
.pg-proof-lens { align-self: center; border: 1px solid #17130f; height: 540px; margin: 40px clamp(30px, 5vw, 80px) 180px 0; overflow: hidden; position: relative; }
.pg-proof-before, .pg-proof-after { display: flex; flex-direction: column; inset: 0; padding: 34px; position: absolute; }
.pg-proof-before { background: #d8d4c9; }
.pg-proof-after { background: #9f1f16; clip-path: inset(0 calc(100% - var(--reveal)) 0 0); color: #fff9ec; transition: clip-path 80ms linear; }
.pg-proof-before small, .pg-proof-after small { font: 12px var(--font-code); letter-spacing: .08em; }
.pg-proof-before strong, .pg-proof-after strong { font: 400 clamp(62px, 7vw, 112px)/.85 var(--font-reading); margin: auto 0 18px; }
.pg-proof-before > span, .pg-proof-after > span { font: 16px/1.55 var(--font-code); max-width: 410px; }
.pg-proof-lines { background: repeating-linear-gradient(0deg, #77736c 0 1px, transparent 1px 25px); height: 150px; opacity: .5; position: absolute; right: 35px; top: 70px; transform: rotate(-7deg); width: 46%; }
.pg-proof-network { background: radial-gradient(circle, #fff9ec 0 3px, transparent 4px) 0 0 / 32px 32px; height: 160px; opacity: .7; position: absolute; right: 25px; top: 70px; width: 48%; }
.pg-proof-lens > label { align-items: center; background: #f5f0e5; border: 1px solid #17130f; bottom: 24px; display: flex; gap: 12px; left: 50%; padding: 8px 12px; position: absolute; transform: translateX(-50%); width: min(390px, calc(100% - 48px)); z-index: 4; }
.pg-proof-lens > label span { color: #5f5b55; font: 12px var(--font-code); white-space: nowrap; }
.pg-proof-lens input { accent-color: #9f1f16; width: 100%; }
.pg-proof-evidence { align-items: center; background: #f5f0e5; border: 1px solid #17130f; display: flex; font: 12px var(--font-code); gap: 8px; padding: 8px 10px; position: absolute; right: 24px; top: 24px; z-index: 5; }
.pg-proof-evidence i { background: var(--pg-yellow); border-radius: 50%; height: 8px; width: 8px; }
.pg-proof-evidence b { color: #9f1f16; font-weight: 500; }

/* 05 · artifact shelf */
.pg-artifact-index { background: #e8e5dc; min-height: 970px; }
.pg-artifact-head { display: grid; gap: 24px; grid-template-columns: .55fr 1.15fr .9fr; padding: clamp(50px, 6vw, 92px); }
.pg-artifact-head .pg-eyebrow { color: var(--pg-red); margin-top: 7px; }
.pg-artifact-head .pg-body { color: #65645e; margin-top: 7px; }
.pg-artifact-layout { border-top: 1px solid #11110f; display: grid; grid-template-columns: .42fr 1.58fr; }
.pg-artifact-index[role="tablist"] { background: transparent; min-height: 0; }
.pg-artifact-index button { background: transparent; border: 0; border-bottom: 1px solid rgba(17,17,15,.22); display: grid; gap: 8px; grid-template-columns: 38px 1fr; min-height: 96px; padding: 16px; text-align: left; width: 100%; }
.pg-artifact-index button span { color: #85837d; font: 12px var(--font-code); grid-row: 1 / 3; }
.pg-artifact-index button b { font: 500 16px var(--font-code); }
.pg-artifact-index button small { color: #66645e; font: 16px/1.35 var(--font-interface); }
.pg-artifact-index button[aria-selected="true"] { background: var(--pg-cyan); }
.pg-artifact-card { display: grid; grid-template-columns: 1.1fr .9fr; min-height: 430px; }
.pg-artifact-card figure { border-left: 1px solid #11110f; border-right: 1px solid #11110f; margin: 0; min-height: 430px; position: relative; }
.pg-artifact-card img { filter: grayscale(1) contrast(1.05); height: 100%; object-fit: cover; position: absolute; width: 100%; }
.pg-artifact-card figcaption { background: #11110f; bottom: 12px; color: white; font: 12px var(--font-code); left: 12px; padding: 7px; position: absolute; }
.pg-artifact-card > div { display: flex; flex-direction: column; padding: 34px; }
.pg-artifact-card small { color: var(--pg-red); font: 12px var(--font-code); text-transform: uppercase; }
.pg-artifact-card h3 { font: 400 clamp(34px, 4vw, 62px)/1 var(--font-reading); margin: 24px 0; }
.pg-artifact-card p { color: #66645e; font: 16px/1.6 var(--font-interface); }
.pg-artifact-card > div > b { border-top: 1px solid #11110f; font: 500 18px/1.35 var(--font-code); margin-top: auto; padding-top: 20px; }
.pg-artifact-cta { display: flex; justify-content: flex-end; padding: 24px 24px 170px; }

/* 06 · voice chorus */
.pg-human-chorus { background: #9f1f16; color: #fff9ec; min-height: 940px; }
.pg-chorus-head { display: grid; gap: 22px; grid-template-columns: .55fr 1.1fr .9fr; padding: clamp(52px, 7vw, 100px); }
.pg-chorus-head .pg-eyebrow { color: #ffc7bd; margin-top: 8px; }
.pg-chorus-head .pg-body { color: #f1bdb5; margin-top: 8px; }
.pg-concern-tabs { border-bottom: 1px solid #fff9ec; border-top: 1px solid #fff9ec; display: grid; grid-template-columns: repeat(3, 1fr); }
.pg-concern-tabs button { background: transparent; border: 0; border-right: 1px solid #fff9ec; color: inherit; min-height: 58px; }
.pg-concern-tabs button:last-child { border: 0; }
.pg-concern-tabs button[aria-pressed="true"] { background: #fff9ec; color: #9f1f16; }
.pg-voices { display: grid; grid-template-columns: repeat(3, 1fr); }
.pg-voices article { border-right: 1px solid rgba(255,249,236,.5); display: flex; flex-direction: column; min-height: 350px; opacity: .38; padding: 26px; transition: opacity 220ms ease, background 220ms ease; }
.pg-voices article:last-child { border: 0; }
.pg-voices article.is-focus { background: rgba(255,249,236,.09); opacity: 1; }
.pg-voices article > span { font: 12px var(--font-code); }
.pg-voices blockquote { font: 400 clamp(19px, 2vw, 30px)/1.4 var(--font-reading); margin: 34px 0; }
.pg-voices footer { display: grid; gap: 5px; margin-top: auto; }
.pg-voices footer b { font: 500 16px var(--font-code); }
.pg-voices footer small { color: #f1bdb5; font: 16px/1.4 var(--font-interface); }
.pg-chorus-cta { align-items: center; display: flex; gap: 18px; justify-content: flex-end; padding: 24px 26px 165px; }
.pg-chorus-cta small { font: 12px var(--font-code); text-transform: uppercase; }

/* 07 · people constellation */
.pg-people-map { background: #0b100e; color: #f2efe6; display: grid; grid-template-columns: minmax(390px, .78fr) minmax(570px, 1.22fr); min-height: 920px; }
.pg-constellation-copy { align-self: center; padding: clamp(44px, 6vw, 94px); padding-bottom: 190px; }
.pg-constellation-copy .pg-eyebrow { color: var(--pg-cyan); }
.pg-constellation-copy .pg-body { color: #929993; }
.pg-need-tabs { display: grid; gap: 6px; grid-template-columns: 1fr 1fr; margin: 34px 0 22px; }
.pg-need-tabs button { background: transparent; border: 1px solid #58605b; color: #c2c7c2; min-height: 48px; padding: 8px; }
.pg-need-tabs button[aria-pressed="true"] { background: var(--pg-cyan); border-color: var(--pg-cyan); color: #07100e; }
.pg-constellation { min-height: 750px; position: relative; }
.pg-constellation svg { height: 620px; left: 50%; position: absolute; top: 46%; transform: translate(-50%,-50%); width: 600px; }
.pg-constellation path, .pg-constellation circle { fill: none; stroke: rgba(54,203,208,.35); stroke-dasharray: 3 7; }
.pg-core { align-items: center; background: var(--pg-cyan); border-radius: 50%; color: #07100e; display: flex; font: 500 12px/1.3 var(--font-code); height: 116px; justify-content: center; left: 50%; position: absolute; text-align: center; top: 46%; transform: translate(-50%,-50%); width: 116px; }
.pg-person { align-items: center; display: flex; gap: 12px; opacity: .25; position: absolute; transition: opacity 220ms ease, transform 220ms ease; }
.pg-person.is-active { opacity: 1; transform: scale(1.05); }
.pg-person img { border: 2px solid var(--pg-cyan); border-radius: 50%; filter: grayscale(1); height: 88px; object-fit: cover; width: 88px; }
.pg-person div { display: grid; gap: 4px; max-width: 150px; }
.pg-person b { font: 500 16px var(--font-code); }
.pg-person small { color: #8f9791; font: 16px/1.35 var(--font-interface); }
.pg-person-1 { left: 7%; top: 14%; }
.pg-person-2 { right: 8%; top: 17%; }
.pg-person-3 { bottom: 16%; right: 14%; }
.pg-constellation output { bottom: 9%; color: var(--pg-cyan); font: 12px var(--font-code); left: 50%; position: absolute; text-align: center; transform: translateX(-50%); width: 80%; }

/* 08 · route gate */
.pg-route-switchboard { background: var(--pg-paper); min-height: 970px; }
.pg-route-copy { display: grid; gap: 22px; grid-template-columns: .55fr 1.1fr .9fr; padding: clamp(52px, 7vw, 104px); }
.pg-route-copy .pg-eyebrow { color: var(--pg-red); margin-top: 7px; }
.pg-route-copy .pg-body { color: #65635d; margin-top: 7px; }
.pg-route-board { border-bottom: 1px solid #11110f; border-top: 1px solid #11110f; display: grid; grid-template-columns: .6fr 1.1fr .3fr; min-height: 370px; }
.pg-route-question { border-right: 1px solid #11110f; display: grid; grid-template-rows: 56px 1fr; }
.pg-route-question > span { align-items: center; border-bottom: 1px solid #11110f; display: flex; font: 12px var(--font-code); padding: 12px; }
.pg-route-question > div { display: grid; grid-template-columns: 1fr 1fr; }
.pg-route-question button { background: transparent; border: 0; border-bottom: 1px solid rgba(17,17,15,.22); border-right: 1px solid rgba(17,17,15,.22); display: grid; font: 500 16px var(--font-code); place-content: center; }
.pg-route-question button i { color: #85837d; font: normal 12px var(--font-code); margin-bottom: 7px; }
.pg-route-question button[aria-pressed="true"] { background: var(--pg-cyan); }
.pg-route-result { display: flex; flex-direction: column; padding: clamp(30px, 5vw, 60px); }
.pg-route-result small { color: var(--pg-red); font: 12px var(--font-code); }
.pg-route-result h3 { font: 400 clamp(42px, 5vw, 76px)/1 var(--font-reading); margin: 28px 0; }
.pg-route-result p { color: #65635d; font: 16px/1.6 var(--font-interface); max-width: 580px; }
.pg-route-result > span { border-top: 1px solid rgba(17,17,15,.22); font: 12px var(--font-code); margin-top: auto; padding-top: 18px; text-transform: uppercase; }
.pg-route-action { align-items: center; background: #11110f; color: white; display: flex; flex-direction: column; justify-content: space-between; padding: 18px 10px; writing-mode: vertical-rl; }
.pg-route-action .pg-inline-cta { border: 0; min-height: 0; padding: 0; }
.pg-route-action i { color: var(--pg-cyan); font: normal 38px var(--font-interface); }
.pg-route-footer { align-items: end; background: #11110f; color: white; display: grid; grid-template-columns: 1fr 1fr 1fr; min-height: 330px; padding: 50px; padding-bottom: 170px; }
.pg-route-footer strong { font: 600 clamp(36px, 6vw, 86px)/1 var(--font-interface); letter-spacing: -.06em; }
.pg-route-footer span, .pg-route-footer small { color: #777772; font: 12px var(--font-code); text-transform: uppercase; }
.pg-route-footer small { text-align: right; }

/* 09 · report block graph */
.pg-report-block-graph { background: #f8f4e9; min-height: 1060px; }
.pg-graph-head { display: grid; gap: 24px; grid-template-columns: .55fr 1.15fr .9fr; padding: clamp(52px, 7vw, 104px); }
.pg-graph-head .pg-eyebrow { color: #9f1f16; margin-top: 8px; }
.pg-graph-head .pg-body { color: #65615b; margin-top: 8px; }
.pg-graph-head .pg-inline-cta { align-self: start; justify-self: start; }
.pg-report-map-stage { border-top: 1px solid #17130f; display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(320px, .55fr); min-height: 520px; padding-bottom: 160px; }
.pg-report-nodes { background-image: linear-gradient(rgba(23,19,15,.08) 1px, transparent 1px), linear-gradient(90deg, rgba(23,19,15,.08) 1px, transparent 1px); background-size: 25% 33.333%; display: grid; gap: 18px; grid-template-columns: repeat(4, 1fr); padding: 44px; }
.pg-report-nodes button { align-content: start; background: #f8f4e9; border: 1px solid #17130f; display: grid; gap: 10px; min-height: 142px; padding: 16px; text-align: left; }
.pg-report-nodes button > span { color: #9f1f16; font-family: var(--font-code); }
.pg-report-nodes button b { font: 500 18px/1.2 var(--font-interface); }
.pg-report-nodes button small { color: #5f5a54; font: 12px/1.35 var(--font-code); overflow-wrap: anywhere; }
.pg-report-nodes button i { color: #79736b; font: normal 12px var(--font-code); margin-top: auto; text-transform: uppercase; }
.pg-report-nodes button[aria-pressed="true"] { background: var(--pg-cyan); box-shadow: 8px 8px 0 #17130f; transform: translate(-4px,-4px); }
.pg-report-node-card { align-self: stretch; background: #17130f; color: #f8f4e9; display: flex; flex-direction: column; padding: 40px; }
.pg-report-node-card > small { color: var(--pg-cyan); font: 12px var(--font-code); letter-spacing: .08em; }
.pg-report-node-card > strong { font: 400 clamp(40px, 4vw, 68px)/1 var(--font-reading); margin: 32px 0 48px; }
.pg-report-node-card dl { display: grid; gap: 0; margin: auto 0 0; }
.pg-report-node-card dl div { border-top: 1px solid #4d4a45; display: grid; gap: 8px; padding: 18px 0; }
.pg-report-node-card dt { color: #8f8a82; font: 12px var(--font-code); text-transform: uppercase; }
.pg-report-node-card dd { font: 16px/1.45 var(--font-interface); margin: 0; overflow-wrap: anywhere; }

/* 10 · people relation atlas */
.pg-people-relation-atlas { background: #0b100e; color: #f2efe6; min-height: 1080px; }
.pg-atlas-head { display: grid; gap: 24px; grid-template-columns: .55fr 1.15fr .9fr; padding: clamp(52px, 7vw, 104px); }
.pg-atlas-head .pg-eyebrow { color: var(--pg-cyan); margin-top: 8px; }
.pg-atlas-head .pg-body { color: #aeb5af; margin-top: 8px; }
.pg-atlas-layout { border-top: 1px solid #66706a; display: grid; grid-template-columns: minmax(290px, .7fr) minmax(520px, 1.3fr); }
.pg-atlas-tasks { border-right: 1px solid #66706a; display: grid; }
.pg-atlas-tasks button { background: transparent; border: 0; border-bottom: 1px solid #454d48; color: inherit; display: grid; gap: 7px; grid-template-columns: 44px 1fr; min-height: 112px; padding: 18px; text-align: left; }
.pg-atlas-tasks button span { color: var(--pg-cyan); font-family: var(--font-code); grid-row: 1 / 3; }
.pg-atlas-tasks button b { font: 500 18px/1.25 var(--font-interface); }
.pg-atlas-tasks button small { color: #939b95; font: 16px/1.4 var(--font-interface); }
.pg-atlas-tasks button[aria-pressed="true"] { background: var(--pg-cyan); color: #07100e; }
.pg-atlas-tasks button[aria-pressed="true"] span, .pg-atlas-tasks button[aria-pressed="true"] small { color: #173c3b; }
.pg-atlas-people { display: grid; grid-template-columns: repeat(2, 1fr); }
.pg-atlas-people button { align-items: center; background: transparent; border: 0; border-bottom: 1px solid #454d48; border-right: 1px solid #454d48; color: inherit; display: grid; gap: 14px; grid-template-columns: 76px 1fr; min-height: 132px; opacity: .48; padding: 18px; text-align: left; }
.pg-atlas-people button.is-related { opacity: 1; }
.pg-atlas-people button.is-selected { background: #17231f; box-shadow: inset 0 0 0 3px var(--pg-cyan); opacity: 1; }
.pg-atlas-people img { border: 1px solid #808882; filter: grayscale(1); height: 76px; object-fit: cover; width: 76px; }
.pg-atlas-people button > span { display: grid; gap: 6px; }
.pg-atlas-people b { font: 500 17px/1.25 var(--font-interface); }
.pg-atlas-people small { color: #a9b0aa; font: 16px/1.4 var(--font-interface); }
.pg-atlas-people i { color: var(--pg-cyan); font: normal 12px var(--font-code); grid-column: 2; text-transform: uppercase; }
.pg-atlas-output { background: #f2efe6; color: #0b100e; display: grid; gap: 12px; grid-column: 1 / -1; grid-template-columns: .5fr 1fr 1fr; min-height: 132px; padding: 26px; }
.pg-atlas-output small { color: #276c6d; font: 12px/1.4 var(--font-code); text-transform: uppercase; }
.pg-atlas-output strong { font: 500 20px/1.35 var(--font-interface); }
.pg-atlas-output span { color: #5d615c; font: 16px/1.55 var(--font-interface); }
.pg-atlas-cta { display: flex; justify-content: flex-end; padding: 24px 24px 170px; }

/* 11 · evidence ledger */
.pg-evidence-ledger { background: #f8f4e9; min-height: 1080px; }
.pg-ledger-head { display: grid; gap: 24px; grid-template-columns: .55fr 1.15fr .9fr; padding: clamp(52px, 7vw, 104px); }
.pg-ledger-head .pg-eyebrow { color: #9f1f16; margin-top: 8px; }
.pg-ledger-head .pg-body { color: #65615b; margin-top: 8px; }
.pg-ledger-layout { border-bottom: 1px solid #17130f; border-top: 1px solid #17130f; display: grid; grid-template-columns: minmax(320px, .62fr) minmax(520px, 1.38fr); min-height: 590px; }
.pg-ledger-index { border-right: 1px solid #17130f; max-height: 590px; overflow-y: auto; }
.pg-ledger-index button { background: transparent; border: 0; border-bottom: 1px solid rgba(23,19,15,.24); display: grid; gap: 7px; min-height: 112px; padding: 16px 18px; text-align: left; width: 100%; }
.pg-ledger-index button span { color: #9f1f16; font: 12px var(--font-code); }
.pg-ledger-index button b { font: 500 18px/1.25 var(--font-interface); }
.pg-ledger-index button small { color: #6c675f; font: 16px/1.4 var(--font-interface); }
.pg-ledger-index button[aria-selected="true"] { background: #17130f; color: #f8f4e9; }
.pg-ledger-index button[aria-selected="true"] small { color: #c3beb5; }
.pg-ledger-records { min-width: 0; }
.pg-ledger-records article { min-height: 590px; padding: clamp(34px, 5vw, 72px); }
.pg-ledger-records article[hidden] { display: none; }
.pg-ledger-records header { border-bottom: 1px solid #17130f; display: flex; justify-content: space-between; padding-bottom: 16px; }
.pg-ledger-records header span { color: #9f1f16; font: 12px var(--font-code); }
.pg-ledger-records header small { color: #716c65; font: 16px var(--font-interface); }
.pg-ledger-records h3 { font: 400 clamp(42px, 5vw, 78px)/1 var(--font-reading); margin: 36px 0; }
.pg-ledger-records blockquote { border-left: 5px solid #9f1f16; font: 400 clamp(20px, 2.2vw, 32px)/1.45 var(--font-reading); margin: 0 0 44px; padding-left: 24px; }
.pg-ledger-records dl { display: grid; gap: 0; margin: 0; }
.pg-ledger-records dl div { border-top: 1px solid rgba(23,19,15,.24); display: grid; gap: 10px; grid-template-columns: 180px 1fr; padding: 16px 0; }
.pg-ledger-records dt { color: #716c65; font: 12px var(--font-code); text-transform: uppercase; }
.pg-ledger-records dd { font: 16px/1.55 var(--font-interface); margin: 0; }
.pg-ledger-cta { align-items: center; display: flex; gap: 24px; justify-content: flex-end; padding: 24px 24px 170px; }
.pg-ledger-cta > span { color: #6c675f; font: 12px var(--font-code); text-transform: uppercase; }

/* 12 · path decision tree */
.pg-path-decision-tree { background: #10110f; color: #f5f1e7; min-height: 1080px; }
.pg-tree-head { display: grid; gap: 24px; grid-template-columns: .55fr 1.15fr .9fr; padding: clamp(52px, 7vw, 104px); }
.pg-tree-head .pg-eyebrow { color: var(--pg-cyan); margin-top: 8px; }
.pg-tree-head .pg-body { color: #aaa9a3; margin-top: 8px; }
.pg-tree-layout { border-top: 1px solid #53544f; display: grid; grid-template-columns: minmax(560px, 1.2fr) minmax(380px, .8fr); padding-bottom: 160px; }
.pg-tree-steps { display: grid; }
.pg-tree-steps fieldset { border: 0; border-bottom: 1px solid #53544f; margin: 0; padding: 0; }
.pg-tree-steps legend { display: flex; font: 500 18px/1.3 var(--font-interface); gap: 16px; padding: 22px; width: 100%; }
.pg-tree-steps legend span { color: var(--pg-cyan); font: 12px var(--font-code); padding-top: 5px; }
.pg-tree-steps fieldset > div { display: grid; grid-template-columns: repeat(3, 1fr); }
.pg-tree-steps button { background: transparent; border: 0; border-right: 1px solid #53544f; border-top: 1px solid #53544f; color: inherit; min-height: 82px; padding: 14px; }
.pg-tree-steps button:last-child { border-right: 0; }
.pg-tree-steps button[aria-pressed="true"] { background: var(--pg-cyan); color: #07100e; }
.pg-tree-result { background: #f5f1e7; color: #10110f; display: flex; flex-direction: column; padding: clamp(34px, 5vw, 64px); }
.pg-tree-result > small { color: #9f1f16; font: 12px var(--font-code); }
.pg-tree-result > strong { font: 400 clamp(48px, 5vw, 82px)/1 var(--font-reading); margin: 34px 0; }
.pg-tree-result > p { color: #625e57; font: 18px/1.6 var(--font-interface); max-width: 560px; }
.pg-tree-result > div { border-bottom: 1px solid #b8b3aa; border-top: 1px solid #b8b3aa; display: grid; gap: 10px; margin: auto 0 28px; padding: 20px 0; }
.pg-tree-result > div span { font: 16px/1.45 var(--font-interface); }
.pg-tree-result > div b { color: #767169; font: 12px var(--font-code); text-transform: uppercase; }
.pg-tree-result .pg-inline-cta { align-self: flex-start; }

/* Readability floor: visitor controls and copy stay readable; technical labels remain compact. */
.block-playground button,
.block-playground input,
.block-playground textarea { font-size: 16px; }
.pg-page-header > div:first-child > p,
.pg-body { font-size: 18px; }
.pg-page-header > div:first-child > small,
.pg-mode button,
.pg-filter button,
.pg-save-selection,
.pg-score,
.pg-sequence,
.pg-eyebrow,
.pg-inline-cta,
.pg-review-question small,
.pg-review-schema small,
.pg-note span,
.pg-decisions button,
.pg-reset,
.pg-sync,
.pg-signal-output small,
.pg-task-entry span,
.pg-run,
.pg-compiler-stage > header,
.pg-compiler-stage li > span,
.pg-compiler-stage output small,
.pg-week-tabs button span,
.pg-weather-ledger output small,
.pg-proof-before small,
.pg-proof-after small,
.pg-proof-lens > label span,
.pg-proof-evidence,
.pg-artifact-index button span,
.pg-artifact-card figcaption,
.pg-artifact-card small,
.pg-voices article > span,
.pg-chorus-cta small,
.pg-core,
.pg-constellation output,
.pg-route-question > span,
.pg-route-question button i,
.pg-route-result small,
.pg-route-result > span,
.pg-route-footer span,
.pg-route-footer small,
.pg-page-footer { font-size: 12px; }
.pg-review-bar { min-height: 150px; }
.pg-review-question b,
.pg-review-question span,
.pg-review-schema span,
.pg-note input,
.pg-signal-output span,
.pg-compiler-stage li small,
.pg-compiler-stage output span,
.pg-weather-ledger output span,
.pg-proof-before > span,
.pg-proof-after > span,
.pg-artifact-index button small,
.pg-artifact-card p,
.pg-voices footer b,
.pg-voices footer small,
.pg-person b,
.pg-person small,
.pg-route-result p { font-size: 16px; }

.pg-page-footer { align-items: center; background: var(--pg-cyan); color: #07100e; display: flex; font: 12px var(--font-code); justify-content: space-between; min-height: 62px; padding: 0 22px; text-transform: uppercase; }

@media (max-width: 1180px) {
  .pg-review-bar { grid-template-columns: 1.2fr .8fr 1fr auto 54px; }
  .pg-review-schema { display: none; }
  .pg-signal-field, .pg-runtime-pipeline, .pg-people-map { grid-template-columns: .85fr 1.15fr; }
  .pg-before-after { grid-template-columns: .75fr 1.25fr; }
  .pg-artifact-card { grid-template-columns: 1fr 1fr; }
  .pg-report-nodes { grid-template-columns: repeat(3, 1fr); }
  .pg-atlas-layout { grid-template-columns: minmax(260px, .65fr) minmax(440px, 1.35fr); }
  .pg-tree-layout { grid-template-columns: 1fr 420px; }
}

@media (max-width: 900px) {
  .pg-page-header { grid-template-columns: 1fr; padding-bottom: 90px; }
  .pg-toolbar { margin-top: 50px; width: 100%; }
  .pg-score { bottom: 24px; }
  .block-playground[data-mode="preview"] .pg-toolbar { grid-column: 1; justify-self: stretch; width: 100%; }
  .pg-experiment { padding-left: 34px; }
  .pg-sequence { width: 34px; }
  .pg-review-bar { grid-template-columns: 1fr auto 52px 88px; position: relative; width: 100%; }
  .pg-review-question, .pg-review-schema { display: none; }
  .pg-note { min-width: 200px; }
  .pg-experiment { display: block; }
  .pg-signal-field, .pg-runtime-pipeline, .pg-people-map, .pg-before-after { display: block; }
  .pg-signal-copy, .pg-compiler-copy, .pg-constellation-copy, .pg-proof-head { padding: 64px 38px; }
  .pg-signal-stage, .pg-constellation { min-height: 690px; }
  .pg-compiler-stage, .pg-proof-lens { margin: 0 30px 50px; }
  .pg-weather-head, .pg-artifact-head, .pg-chorus-head, .pg-route-copy, .pg-graph-head, .pg-atlas-head, .pg-ledger-head, .pg-tree-head { grid-template-columns: 1fr; padding: 58px 38px; }
  .pg-weather-head .pg-eyebrow, .pg-weather-head .pg-body, .pg-artifact-head .pg-eyebrow, .pg-artifact-head .pg-body, .pg-chorus-head .pg-eyebrow, .pg-chorus-head .pg-body, .pg-route-copy .pg-eyebrow, .pg-route-copy .pg-body, .pg-graph-head .pg-eyebrow, .pg-graph-head .pg-body, .pg-atlas-head .pg-eyebrow, .pg-atlas-head .pg-body, .pg-ledger-head .pg-eyebrow, .pg-ledger-head .pg-body, .pg-tree-head .pg-eyebrow, .pg-tree-head .pg-body { margin-top: 0; }
  .pg-weather-grid { grid-template-columns: 1fr; }
  .pg-weather-ledger { border-left: 0; border-top: 1px solid #181714; padding-bottom: 34px; }
  .pg-artifact-layout { grid-template-columns: 1fr; }
  .pg-artifact-index[role="tablist"] { display: grid; grid-template-columns: 1fr 1fr; }
  .pg-artifact-card figure { border-left: 0; }
  .pg-voices { grid-template-columns: 1fr; }
  .pg-voices article { border-bottom: 1px solid rgba(255,249,236,.5); border-right: 0; min-height: 280px; }
  .pg-route-board { grid-template-columns: 1fr; }
  .pg-route-question { border-bottom: 1px solid #11110f; border-right: 0; }
  .pg-route-action { min-height: 70px; writing-mode: initial; flex-direction: row; }
  .pg-route-footer { padding-bottom: 60px; }
  .pg-report-map-stage, .pg-atlas-layout, .pg-ledger-layout, .pg-tree-layout { grid-template-columns: 1fr; }
  .pg-report-node-card { min-height: 460px; }
  .pg-atlas-tasks, .pg-ledger-index { border-right: 0; }
  .pg-atlas-tasks { grid-template-columns: repeat(2, 1fr); }
  .pg-atlas-tasks button:nth-child(odd) { border-right: 1px solid #454d48; }
  .pg-ledger-index { display: grid; grid-template-columns: repeat(2, 1fr); max-height: none; }
  .pg-ledger-index button:nth-child(odd) { border-right: 1px solid rgba(23,19,15,.24); }
  .pg-tree-layout { padding-bottom: 0; }
  .pg-tree-result { min-height: 520px; }
}

@media (max-width: 600px) {
  .pg-page-header { min-height: 680px; padding: 42px 20px 100px; }
  .pg-page-header::before { height: 120px; width: 120px; }
  .pg-page-header h1 { font-size: clamp(49px, 16vw, 75px); }
  .pg-page-header > div:first-child > p { font-size: 16px; }
  .block-playground[data-mode="preview"] .pg-mode { left: 12px; right: 12px; top: calc(var(--shell-h) + var(--status-h) + 8px); width: auto; }
  .pg-filter { grid-template-columns: repeat(3, 1fr); }
  .pg-filter button:nth-child(n+4) { border-top: 1px solid #41423e; }
  .pg-score { gap: 10px; left: 20px; right: 20px; }
  .pg-score span { display: grid; }
  .pg-experiment { padding-left: 0; }
  .pg-sequence { border-bottom: 1px solid currentColor; border-right: 0; bottom: auto; flex-direction: row; height: 34px; padding: 0 10px; right: 0; width: auto; }
  .pg-sequence b, .pg-sequence i { writing-mode: initial; }
  .pg-sequence i { margin: 0 0 0 auto; padding: 0; }
  .pg-display-title { font-size: clamp(42px, 13vw, 64px); }
  .pg-body { font-size: 16px; }
  .pg-review-bar { grid-template-columns: 1fr; min-height: 0; }
  .pg-review-bar > * { border-bottom: 1px solid rgba(17,17,15,.22); border-right: 0; }
  .pg-note { min-width: 0; }
  .pg-decisions { grid-template-columns: repeat(3, 1fr); min-height: 74px; }
  .pg-reset, .pg-sync { min-height: 48px; }
  .pg-signal-copy, .pg-compiler-copy, .pg-constellation-copy, .pg-proof-head { padding: 70px 20px 48px; }
  .pg-signal-stage { min-height: 640px; }
  .pg-signal-stage::before { height: 440px; width: 440px; }
  .pg-signal-stage::after { height: 270px; width: 270px; }
  .pg-signal-points { inset: 30px 5px 220px; }
  .pg-signal-choices { bottom: 24px; grid-template-columns: 1fr; left: 14px; right: 14px; }
  .pg-signal-output { top: 35%; width: 76%; }
  .pg-compiler-stage, .pg-proof-lens { margin: 0 14px 32px; }
  .pg-compiler-stage { margin-bottom: 32px; }
  .pg-weather-head, .pg-artifact-head, .pg-chorus-head, .pg-route-copy, .pg-graph-head, .pg-atlas-head, .pg-ledger-head, .pg-tree-head { padding: 58px 20px 38px; }
  .pg-weather-field { min-height: 410px; }
  .pg-artifact-index[role="tablist"] { grid-template-columns: 1fr; }
  .pg-artifact-card { display: block; }
  .pg-artifact-card figure { border-right: 0; min-height: 330px; }
  .pg-artifact-card img { position: absolute; }
  .pg-artifact-card > div { min-height: 340px; }
  .pg-artifact-cta, .pg-chorus-cta { align-items: flex-start; flex-direction: column; padding: 22px; }
  .pg-concern-tabs { grid-template-columns: 1fr; }
  .pg-concern-tabs button { border-bottom: 1px solid #fff9ec; border-right: 0; min-height: 48px; }
  .pg-constellation { min-height: 650px; overflow: hidden; }
  .pg-constellation svg { height: 500px; width: 500px; }
  .pg-person img { height: 62px; width: 62px; }
  .pg-person-1 { left: 2%; }
  .pg-person-2 { right: 2%; }
  .pg-person-3 { right: 3%; }
  .pg-route-question > div { grid-template-columns: 1fr; }
  .pg-route-question button { min-height: 62px; }
  .pg-route-result { padding: 38px 20px; }
  .pg-route-footer { align-items: start; gap: 24px; grid-template-columns: 1fr; min-height: 280px; padding: 40px 20px; }
  .pg-route-footer small { text-align: left; }
  .pg-report-nodes { gap: 10px; grid-template-columns: repeat(2, 1fr); padding: 20px; }
  .pg-report-nodes button { min-height: 136px; padding: 12px; }
  .pg-report-node-card { padding: 30px 20px; }
  .pg-atlas-tasks, .pg-atlas-people, .pg-ledger-index { grid-template-columns: 1fr; }
  .pg-atlas-tasks button:nth-child(odd), .pg-ledger-index button:nth-child(odd) { border-right: 0; }
  .pg-atlas-people button { border-right: 0; }
  .pg-atlas-output { grid-template-columns: 1fr; }
  .pg-atlas-cta, .pg-ledger-cta { align-items: flex-start; flex-direction: column; padding: 22px; }
  .pg-ledger-records article { min-height: 0; padding: 40px 20px; }
  .pg-ledger-records header { align-items: flex-start; flex-direction: column; gap: 8px; }
  .pg-ledger-records dl div { grid-template-columns: 1fr; }
  .pg-tree-steps fieldset > div { grid-template-columns: 1fr; }
  .pg-tree-steps button { border-bottom: 1px solid #53544f; border-right: 0; }
  .pg-tree-result { min-height: 560px; padding: 40px 20px; }
  .pg-page-footer { align-items: flex-start; flex-direction: column; gap: 8px; justify-content: center; padding: 18px 20px; }
}

@media (prefers-reduced-motion: reduce) {
  .pg-signal-points i { animation: none; }
}
