.report-page { background: var(--ink); }
.report-site-header { position: absolute; }

.report-hero {
  display: grid;
  min-height: 860px;
  padding: 165px 48px 48px;
  grid-template-columns: .88fr 1.12fr;
  grid-template-rows: 1fr auto;
  gap: 55px 70px;
  border-inline: 1px solid var(--line);
}
.report-hero-copy { align-self: center; }
.report-overline { display: flex; margin-bottom: 35px; gap: 13px; color: var(--paper-dim); font-family: var(--mono); font-size: 8px; letter-spacing: .09em; text-transform: uppercase; }
.report-overline span { padding-right: 13px; border-right: 1px solid var(--line-strong); }
.report-overline span:last-child { color: var(--acid); border-right: 0; }
.report-hero h1 { max-width: 640px; margin: 0; font-family: var(--serif); font-size: clamp(72px, 8vw, 122px); font-weight: 300; letter-spacing: -.06em; line-height: .82; }
.report-hero h1 em { color: var(--acid); font-weight: 300; }
.report-hero-copy > p { max-width: 600px; margin: 38px 0 0; color: #bbb9b0; font-family: var(--serif); font-size: 23px; line-height: 1.45; }
.report-actions { display: flex; margin-top: 42px; align-items: center; gap: 25px; }

.output-hero { position: relative; align-self: center; margin: 0; padding: 15px; background: #070806; border: 1px solid #353930; box-shadow: 0 30px 80px rgba(0,0,0,.38); }
.output-hero-bar { display: flex; height: 34px; align-items: center; justify-content: space-between; color: #6e7167; font-family: var(--mono); font-size: 7px; letter-spacing: .08em; text-transform: uppercase; }
.capture-live { display: flex; align-items: center; gap: 7px; color: var(--acid); }
.capture-live i { width: 5px; height: 5px; border-radius: 50%; background: currentColor; box-shadow: 0 0 9px currentColor; }
.output-hero-screen { position: relative; overflow: hidden; background: #202060; border: 1px solid #2e304c; }
.output-hero-screen::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: repeating-linear-gradient(0deg,rgba(255,255,255,.025) 0,rgba(255,255,255,.025) 1px,transparent 1px,transparent 4px); }
.output-hero-screen img { display: block; width: 100%; height: auto; image-rendering: pixelated; }
.row-marker { position: absolute; z-index: 2; top: 59%; right: 10px; padding: 4px 6px; color: var(--ink); background: var(--acid); font-family: var(--mono); font-size: 6px; letter-spacing: .06em; text-transform: uppercase; }
.output-hero figcaption { display: grid; height: 34px; align-items: end; grid-template-columns: repeat(4,auto); justify-content: space-between; color: #60645a; font-family: var(--mono); font-size: 6px; letter-spacing: .07em; text-transform: uppercase; }
.output-hero figcaption strong { color: var(--acid); font-weight: 400; }

.report-stats { display: grid; grid-column: 1 / -1; grid-template-columns: repeat(4,1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.report-stats div { display: flex; min-height: 105px; padding: 20px; align-items: flex-end; gap: 13px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.report-stats strong { font-family: var(--serif); font-size: 39px; font-weight: 300; line-height: .8; }
.report-stats span { max-width: 95px; color: #777a70; font-family: var(--mono); font-size: 7px; line-height: 1.45; letter-spacing: .06em; text-transform: uppercase; }

.landed-section { padding-block: 135px; color: var(--ink); background: var(--paper); }
.report-heading { display: grid; align-items: end; grid-template-columns: 170px 1fr .6fr; gap: 40px; }
.report-heading > span { align-self: start; color: #6b6c64; font-family: var(--mono); font-size: 8px; letter-spacing: .08em; text-transform: uppercase; }
.report-heading h2 { margin: 0; font-family: var(--serif); font-size: clamp(55px,6vw,86px); font-weight: 300; letter-spacing: -.05em; line-height: .92; }
.report-heading > p { margin: 0 0 7px; color: #5b5c55; font-size: 12px; line-height: 1.7; }
.commit-pair { display: grid; margin-top: 78px; grid-template-columns: 1fr 1fr; border-top: 1px solid rgba(11,12,10,.25); border-left: 1px solid rgba(11,12,10,.25); }
.commit-pair article { display: flex; min-height: 360px; padding: 30px; flex-direction: column; border-right: 1px solid rgba(11,12,10,.25); border-bottom: 1px solid rgba(11,12,10,.25); }
.commit-top { display: flex; justify-content: space-between; color: #62635c; font-family: var(--mono); font-size: 8px; letter-spacing: .06em; text-transform: uppercase; }
.commit-top code { color: #62635c; }
.commit-pair h3 { max-width: 490px; margin: 65px 0 20px; font-family: var(--serif); font-size: 37px; font-weight: 400; letter-spacing: -.03em; line-height: 1.02; }
.commit-pair p { max-width: 500px; margin: 0; color: #5b5c55; font-size: 11px; line-height: 1.7; }
.diff-line { display: flex; margin-top: auto; padding-top: 18px; gap: 18px; border-top: 1px solid rgba(11,12,10,.17); font-family: var(--mono); font-size: 9px; }
.diff-line span:first-child { color: #4d7200; }
.diff-line span:nth-child(2) { color: #a83b1b; }
.diff-line small { margin-left: auto; color: #77786f; font-size: 7px; text-transform: uppercase; }
.plan-backlink { display: grid; margin-top: 18px; padding: 22px; align-items: center; grid-template-columns: .65fr 1fr auto; color: var(--paper); background: var(--ink); }
.plan-backlink span { color: #85877e; font-family: var(--mono); font-size: 7px; letter-spacing: .07em; text-transform: uppercase; }
.plan-backlink strong { font-family: var(--serif); font-size: 21px; font-weight: 300; }
.plan-backlink i { color: var(--acid); font-style: normal; }

.report-layout { display: grid; padding: 145px 48px 0; grid-template-columns: 175px minmax(0,850px); gap: 55px; justify-content: center; border-inline: 1px solid var(--line); }
.report-toc > div { position: sticky; top: 30px; display: flex; padding-top: 18px; flex-direction: column; border-top: 1px solid var(--line); }
.report-toc span { margin-bottom: 20px; color: #777a70; font-family: var(--mono); font-size: 8px; letter-spacing: .08em; text-transform: uppercase; }
.report-toc a { display: grid; padding: 10px 0; grid-template-columns: 32px 1fr; color: #777a70; border-bottom: 1px solid rgba(238,234,222,.07); font-family: var(--mono); font-size: 8px; line-height: 1.35; }
.report-toc a:hover { color: var(--acid); }
.report-toc b { color: var(--acid); font-weight: 400; }
.report-body { min-width: 0; }
.report-part { padding-bottom: 145px; }
.part-title > span { display: block; margin-bottom: 20px; color: var(--acid); font-family: var(--mono); font-size: 8px; letter-spacing: .09em; text-transform: uppercase; }
.part-title h2 { max-width: 770px; margin: 0; font-family: var(--serif); font-size: clamp(52px,6vw,78px); font-weight: 300; letter-spacing: -.05em; line-height: .93; }
.part-intro { max-width: 720px; margin: 42px 0 60px; color: #c1bfb6; font-family: var(--serif); font-size: 27px; line-height: 1.4; }
.report-body > section > p:not(.part-intro) { color: #9c9e94; font-size: 13px; line-height: 1.8; }
.report-body p code, .report-body li code { padding: 2px 5px; color: var(--acid); background: rgba(200,255,61,.07); font-family: var(--mono); font-size: .85em; }
.report-body h3 { margin: 65px 0 20px; font-family: var(--serif); font-size: 39px; font-weight: 300; letter-spacing: -.03em; }

.trampoline-diagram { display: flex; padding: 26px 18px; align-items: center; justify-content: space-between; gap: 8px; background: #10120f; border: 1px solid var(--line); }
.trampoline-diagram div { display: flex; min-height: 70px; padding: 11px; align-items: center; justify-content: center; flex: 1; flex-direction: column; border: 1px solid var(--line); text-align: center; }
.trampoline-diagram span { margin-bottom: 9px; color: #70736a; font-family: var(--mono); font-size: 6px; text-transform: uppercase; }
.trampoline-diagram strong { font-family: var(--mono); font-size: 9px; font-weight: 400; }
.trampoline-diagram i { color: var(--acid); font-style: normal; }
.trampoline-diagram .diagram-gc { color: var(--ink); background: var(--acid); border-color: var(--acid); }
.trampoline-diagram .diagram-gc span { color: #3e442f; }
.runtime-split { display: grid; margin-top: 38px; grid-template-columns: 1fr 1fr; border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.runtime-split article { padding: 27px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.runtime-split span { color: var(--acid); font-family: var(--mono); font-size: 7px; letter-spacing: .07em; text-transform: uppercase; }
.runtime-split h4 { min-height: 55px; margin: 24px 0 15px; font-family: var(--serif); font-size: 28px; font-weight: 300; line-height: 1.05; }
.runtime-split p { color: #92948a; font-size: 11px; line-height: 1.7; }
.marker { margin-top: 35px; padding: 25px; color: var(--ink); }
.marker-acid { background: var(--acid); }
.marker-orange { background: var(--orange); }
.marker > span { display: block; margin-bottom: 17px; font-family: var(--mono); font-size: 7px; letter-spacing: .08em; text-transform: uppercase; }
.marker > code { display: block; font-family: var(--mono); font-size: 12px; font-weight: 500; }
.marker p { margin: 18px 0 0; color: #3e4235; font-size: 10px; line-height: 1.65; }

.surface-table { border-top: 1px solid var(--line); }
.surface-table > div { display: grid; min-height: 82px; padding: 15px 10px; align-items: center; grid-template-columns: 1fr 1.2fr .8fr; gap: 16px; border-bottom: 1px solid var(--line); }
.surface-table code { color: var(--orange); font-family: var(--mono); font-size: 10px; }
.surface-table span { font-family: var(--serif); font-size: 19px; }
.surface-table small { color: #74776d; font-family: var(--mono); font-size: 6px; line-height: 1.5; letter-spacing: .06em; text-transform: uppercase; }
.ownership-flow { display: flex; margin: 35px 0; padding: 22px 14px; align-items: center; gap: 7px; background: #10120f; border: 1px solid var(--line); }
.ownership-flow div { display: flex; min-height: 75px; padding: 10px; flex: 1; align-items: center; justify-content: center; flex-direction: column; border: 1px solid var(--line); text-align: center; }
.ownership-flow span { margin-bottom: 8px; color: #71746a; font-family: var(--mono); font-size: 6px; text-transform: uppercase; }
.ownership-flow strong { font-family: var(--mono); font-size: 7px; font-weight: 400; }
.ownership-flow i { color: var(--orange); font-style: normal; }
.ownership-flow .flow-lux { border-color: rgba(255,107,61,.5); }

.pixels-part { padding-top: 15px; }
.frame-proof { margin: 0; }
.frame-window { padding: 15px; background: #070806; border: 1px solid #353930; box-shadow: 0 30px 70px rgba(0,0,0,.35); }
.frame-window-bar { display: flex; height: 34px; align-items: center; justify-content: space-between; color: #666a60; font-family: var(--mono); font-size: 7px; letter-spacing: .07em; text-transform: uppercase; }
.frame-window img { display: block; width: 100%; height: auto; image-rendering: pixelated; border: 1px solid #292c37; }
.frame-ruler { display: flex; height: 25px; padding-top: 9px; justify-content: space-between; color: #5f625a; font-family: var(--mono); font-size: 6px; }
.frame-proof figcaption { display: grid; padding: 26px 0 0; grid-template-columns: .8fr 1.2fr; gap: 35px; }
.frame-proof figcaption strong { font-family: var(--serif); font-size: 27px; font-weight: 300; line-height: 1.2; }
.frame-proof figcaption p { margin: 0; color: #92948a; font-size: 11px; line-height: 1.7; }
.pixel-facts { display: grid; margin-top: 50px; grid-template-columns: repeat(4,1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.pixel-facts > div { display: flex; min-height: 135px; padding: 17px; flex-direction: column; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.pixel-facts span, .pixel-facts small { color: #74776d; font-family: var(--mono); font-size: 6px; letter-spacing: .07em; text-transform: uppercase; }
.pixel-facts strong { margin: auto 0 8px; font-family: var(--serif); font-size: 27px; font-weight: 300; white-space: nowrap; }
.pixel-facts code { color: var(--acid); font-size: 6px; }
.command-sequence { display: flex; padding: 25px 15px; align-items: center; justify-content: space-between; gap: 7px; overflow-x: auto; background: #10120f; border: 1px solid var(--line); }
.command-sequence span { padding: 8px; color: #9c9e94; border: 1px solid var(--line); font-family: var(--mono); font-size: 6px; white-space: nowrap; }
.command-sequence i { color: var(--blue); font-style: normal; }
.lux-loop { margin: 35px 0 0; padding: 27px; overflow-x: auto; color: #b8baaf; background: #070806; border: 1px solid #34382e; font-family: var(--mono); font-size: 11px; line-height: 1.8; }
.lux-loop span { color: var(--acid); }
.watch-command { display: grid; margin-top: 20px; padding: 20px; align-items: center; grid-template-columns: .6fr 1fr 1.2fr; gap: 20px; color: var(--ink); background: var(--acid); }
.watch-command span { font-family: var(--mono); font-size: 7px; letter-spacing: .07em; text-transform: uppercase; }
.watch-command code { font-family: var(--mono); font-size: 12px; }
.watch-command p { margin: 0; font-size: 10px; line-height: 1.5; }

.lazy-part { padding-top: 10px; }
.boolean-compare { display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.boolean-compare > div { padding: 27px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.boolean-compare span { color: var(--orange); font-family: var(--mono); font-size: 7px; letter-spacing: .08em; text-transform: uppercase; }
.boolean-good span { color: var(--acid); }
.boolean-compare code { display: block; margin: 35px 0 20px; color: var(--paper); font-family: var(--mono); font-size: 11px; }
.boolean-compare p { color: #8f9188; font-size: 10px; line-height: 1.7; }
.lazy-part blockquote { margin: 45px 0 30px; padding: 30px 0; color: var(--paper); border-block: 1px solid var(--line); font-family: var(--serif); font-size: 35px; font-weight: 300; line-height: 1.25; }

.proof-grid { display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.proof-grid article { display: flex; min-height: 240px; padding: 22px; flex-direction: column; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.proof-grid span, .proof-grid small { color: #74776d; font-family: var(--mono); font-size: 7px; letter-spacing: .07em; text-transform: uppercase; }
.proof-grid strong { margin: 36px 0 12px; color: var(--acid); font-family: var(--serif); font-size: 42px; font-weight: 300; }
.proof-grid p { margin: 0; color: #92948a; font-size: 10px; line-height: 1.65; }
.proof-grid small { margin-top: auto; padding-top: 15px; border-top: 1px solid var(--line); }
.test-terminal { margin-top: 35px; overflow: hidden; background: #070806; border: 1px solid #34382e; }
.test-terminal-bar { display: flex; height: 40px; padding: 0 14px; align-items: center; gap: 7px; color: #60645a; background: #11130f; border-bottom: 1px solid #262a22; }
.test-terminal-bar i { width: 6px; height: 6px; border-radius: 50%; background: #34382e; }
.test-terminal-bar i:first-child { background: var(--orange); }
.test-terminal-bar span { margin-left: 7px; font-family: var(--mono); font-size: 7px; }
.test-terminal pre { overflow-x: auto; margin: 0; padding: 26px; color: #aeb0a5; font-family: var(--mono); font-size: 10px; line-height: 1.85; }
.test-terminal .ok { color: var(--acid); }

.edge-list { border-top: 1px solid var(--line); }
.edge-list article { display: grid; min-height: 125px; padding: 25px 8px; grid-template-columns: 65px 1fr; gap: 22px; border-bottom: 1px solid var(--line); }
.edge-list article > span { color: var(--orange); font-family: var(--mono); font-size: 8px; }
.edge-list h3 { margin: 0 0 9px; font-size: 28px; }
.edge-list p { margin: 0; color: #92948a; font-size: 11px; line-height: 1.7; }
.virgl-unlock { margin-top: 40px; padding: 33px; background: linear-gradient(135deg,rgba(104,136,255,.2),rgba(104,136,255,.04)); border: 1px solid rgba(104,136,255,.4); }
.virgl-unlock > span { color: #9aaaf4; font-family: var(--mono); font-size: 7px; letter-spacing: .08em; text-transform: uppercase; }
.virgl-unlock h3 { margin: 28px 0 15px; }
.virgl-unlock p { color: #aaaebd; font-size: 12px; line-height: 1.7; }

.report-end { padding: 120px 0 140px; border-top: 1px solid var(--line); }
.report-end > span { color: var(--acid); font-family: var(--mono); font-size: 8px; letter-spacing: .08em; text-transform: uppercase; }
.report-end blockquote { max-width: 760px; margin: 30px 0 50px; font-family: var(--serif); font-size: 58px; font-weight: 300; letter-spacing: -.04em; line-height: 1; }
.report-end > div { display: flex; align-items: center; gap: 25px; }
.report-footer { margin-top: 0; background: #070806; }

@media (max-width: 1080px) {
  .report-hero { padding-inline: 36px; grid-template-columns: 1fr; }
  .report-hero-copy { padding-top: 40px; }
  .output-hero { width: min(100%,760px); justify-self: center; }
  .report-heading { grid-template-columns: 130px 1fr; }
  .report-heading > p { grid-column: 2; }
  .report-layout { padding-inline: 30px; grid-template-columns: 145px minmax(0,1fr); gap: 35px; }
}

@media (max-width: 720px) {
  .report-hero { min-height: auto; padding: 125px 14px 40px; border-inline: 0; }
  .report-overline { flex-wrap: wrap; }
  .report-hero h1 { font-size: 68px; }
  .report-hero-copy > p { font-size: 20px; }
  .report-actions { align-items: flex-start; flex-direction: column; }
  .output-hero { margin-top: 15px; padding: 9px; }
  .output-hero figcaption { grid-template-columns: repeat(2,auto); height: 45px; gap: 5px; }
  .report-stats { grid-template-columns: 1fr 1fr; }
  .report-stats div:nth-child(2n) { border-right: 0; }
  .landed-section { padding-block: 90px; }
  .report-heading { display: block; }
  .report-heading > span { display: block; margin-bottom: 20px; }
  .report-heading h2 { font-size: 52px; }
  .report-heading > p { margin-top: 25px; }
  .commit-pair { grid-template-columns: 1fr; }
  .commit-pair article { min-height: 330px; }
  .plan-backlink { grid-template-columns: 1fr auto; gap: 10px; }
  .plan-backlink span { grid-column: 1 / -1; }
  .report-layout { display: block; padding: 95px 14px 0; border-inline: 0; }
  .report-toc { display: none; }
  .report-part { padding-bottom: 110px; }
  .part-title h2 { font-size: 51px; }
  .part-intro { font-size: 23px; }
  .trampoline-diagram, .ownership-flow { align-items: stretch; flex-direction: column; }
  .trampoline-diagram i, .ownership-flow i { text-align: center; transform: rotate(90deg); }
  .runtime-split, .boolean-compare { grid-template-columns: 1fr; }
  .runtime-split h4 { min-height: 0; }
  .surface-table > div { grid-template-columns: 1fr; padding-block: 20px; gap: 9px; }
  .frame-proof figcaption { grid-template-columns: 1fr; }
  .pixel-facts { grid-template-columns: 1fr 1fr; }
  .pixel-facts > div:nth-child(2n) { border-right: 0; }
  .command-sequence { justify-content: flex-start; }
  .watch-command { grid-template-columns: 1fr; }
  .proof-grid { grid-template-columns: 1fr 1fr; }
  .proof-grid article:nth-child(2n) { border-right: 0; }
  .proof-grid article { min-height: 225px; }
  .test-terminal pre { font-size: 8px; }
  .edge-list article { grid-template-columns: 38px 1fr; }
  .report-end blockquote { font-size: 48px; }
  .report-end > div { align-items: flex-start; flex-direction: column; }
}
