
/* assets/style.css */
:root {
  --paper:#f7f9f8;
  --white:#fff;
  --ink:#203c43;
  --muted:#65797c;
  --line:#dbe4e3;
  --soft:#edf3f2;
  --teal:#347c79;
  --blue:#688eb3;
  --red:#ce7564;
  --gold:#ae8351;
  --serif:'Newsreader',Georgia,serif;
  --sans:'DM Sans',Arial,sans-serif;
  --radius:18px
}
* {
  box-sizing:border-box
}
html {
  scroll-behavior:smooth;
  scroll-padding-top:94px
}
body {
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:var(--sans);
  font-size:15px;
  line-height:1.65;
  -webkit-font-smoothing:antialiased
}
a {
  color:inherit;
  text-decoration:none
}
button,input {
  font:inherit
}
button,a,input,summary {
  -webkit-tap-highlight-color:transparent
}
button {
  cursor:pointer
}
button:disabled {
  cursor:default
}
button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,[tabindex]:focus-visible {
  outline:3px solid #5388ad;
  outline-offset:5px
}
button {
  color:inherit
}
img,video {
  max-width:100%;
  display:block
}
img {
  height:auto
}
h1,h2,h3,h4,p,figure {
  margin:0
}
h1,h2 {
  font-family:var(--serif);
  font-weight:400;
  letter-spacing:-.042em;
  line-height:1.05
}
h1 em,h2 em {
  font-weight:400;
  color:var(--teal)
}
h2 {
  font-size:clamp(38px,4vw,53px)
}
h3,h4 {
  font-weight:600;
  letter-spacing:-.025em;
  line-height:1.3
}
p {
  color:var(--muted)
}
svg {
  display:block;
  width:100%;
  height:auto
}
button {
  border:0;
  background:none
}
details>summary {
  cursor:pointer;
  list-style:none
}
details>summary::-webkit-details-marker {
  display:none
}
summary {
  user-select:none
}
details[open]>summary .reveal-plus {
  transform:rotate(45deg)
}
[hidden] {
  display:none!important
}
.container {
  max-width:1200px;
  width:calc(100% - 96px);
  margin-inline:auto
}
.section {
  padding-block:105px
}
.eyebrow {
  font-size:11px;
  letter-spacing:.135em;
  text-transform:uppercase;
  font-weight:600;
  display:flex;
  align-items:center;
  gap:10px;
  color:var(--teal);
  line-height:1.5
}
.section-number {
  color:#84999b;
  font-variant-numeric:tabular-nums;
  margin-right:6px
}
.status-dot,.blue-dot {
  display:inline-block;
  width:6px;
  height:6px;
  background:var(--teal);
  border-radius:50%;
  flex:none
}
.blue-dot {
  background:var(--blue)
}
.sr-only {
  position:absolute;
  width:1px;
  height:1px;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap
}
.skip-link {
  position:fixed;
  left:20px;
  top:-60px;
  background:var(--ink);
  color:white;
  padding:12px;
  z-index:100
}
.skip-link:focus {
  top:10px
}
.site-header {
  position:sticky;
  top:0;
  z-index:20;
  background:#f7f9f8ef;
  border-bottom:1px solid #dbe4e380;
  backdrop-filter:blur(16px)
}
.nav-wrap {
  max-width:1344px;
  width:calc(100% - 80px);
  height:76px;
  margin:auto;
  display:flex;
  justify-content:space-between;
  align-items:center
}
.wordmark {
  display:inline-flex;
  align-items:center;
  gap:9px;
  font-size:23px;
  font-weight:600;
  letter-spacing:-1px;
  line-height:1
}
.wordmark-dot {
  color:var(--teal);
  margin-left:-8px
}
.site-header nav {
  display:flex;
  gap:30px;
  font-size:12px;
  color:var(--muted)
}
.site-header nav a {
  transition:color .2s
}
.site-header nav a:hover,.site-header nav a.active {
  color:var(--teal)
}
.nav-paper {
  font-size:12px;
  display:flex;
  gap:25px;
  align-items:center;
  border:1px solid var(--line);
  background:#fff8;
  border-radius:7px;
  padding:10px 16px
}
.nav-paper:hover {
  border-color:var(--teal)
}
.nav-paper span {
  font-size:17px
}
.hero {
  display:grid;
  grid-template-columns:1.07fr 1fr;
  gap:10px;
  min-height:650px;
  align-items:center;
  padding-top:56px;
  padding-bottom:42px
}
.hero-copy {
  position:relative;
  z-index:1
}
.hero .eyebrow {
  margin-bottom:27px;
  font-size:10px
}
.hero h1 {
  font-size:clamp(52px,5.35vw,74px);
  line-height:1.025;
  letter-spacing:-.035em
}
.hero-description {
  font-size:19px;
  line-height:1.5;
  color:var(--ink);
  margin-top:22px;
  letter-spacing:-.02em
}
.hero-explanation {
  font-size:13px;
  line-height:1.85;
  max-width:420px;
  margin-top:13px
}
.hero-authors {
  display:flex;
  gap:9px;
  align-items:center;
  font-size:10px;
  color:var(--muted);
  margin-top:22px
}
.anonymous-icon {
  font-size:19px;
  line-height:1;
  color:var(--teal)
}
.small-divider {
  height:10px;
  width:1px;
  background:var(--line);
  margin-inline:3px
}
.hero-actions {
  display:flex;
  gap:10px;
  margin-top:25px;
  flex-wrap:wrap
}
.button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  border-radius:6px;
  font-size:11px;
  font-weight:500;
  padding:13px 16px;
  transition:transform .2s,background .2s;
  white-space:nowrap
}
.button:hover {
  transform:translateY(-2px)
}
.button.primary {
  background:var(--ink);
  color:white
}
.button.primary:hover {
  background:var(--teal)
}
.button.secondary {
  border:1px solid var(--line);
  background:#fff8
}
.play-icon {
  font-size:9px
}
.hero-art {
  position:relative;
  isolation:isolate;
  align-self:stretch;
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:0;
  padding-block:32px
}
.hero-art>img {
  width:106%;
  max-width:none;
  position:relative;
  filter:drop-shadow(0 25px 24px #2a46540a);
  z-index:1
}
.orbit {
  position:absolute;
  z-index:-1;
  border:1px solid #b8cecb66;
  border-radius:50%;
  height:75%;
  width:100%;
  top:15%;
  left:2%;
  transform:rotate(-18deg)
}
.orbit-two {
  height:84%;
  width:85%;
  left:9%;
  top:10%;
  transform:rotate(30deg);
  border-style:dashed;
  border-color:#b8cecb45
}
.art-index {
  position:absolute;
  top:15px;
  right:2px;
  font-size:9px;
  letter-spacing:.17em;
  color:#7a9899
}
.hero-art figcaption {
  position:absolute;
  bottom:25px;
  left:-18px;
  z-index:2;
  font-size:12px;
  line-height:1.6;
  letter-spacing:.01em
}
.tiny-cross {
  font-size:21px;
  margin-right:8px;
  color:var(--teal);
  line-height:.5
}
.caption-indent {
  margin-left:22px;
  color:var(--muted)
}
.art-note {
  position:absolute;
  bottom:4px;
  right:0;
  display:flex;
  gap:9px;
  align-items:center;
  font-size:9px;
  color:var(--muted);
  z-index:2
}
.art-note>span:not(.blue-dot) {
  color:#a6b8b5
}
.stats-strip {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  border-block:1px solid var(--line);
  padding:25px 0;
  gap:20px
}
.stats-strip>div {
  display:flex;
  align-items:center;
  gap:14px;
  border-right:1px solid var(--line)
}
.stats-strip>div:last-child {
  border-right:0
}
.stat-value {
  font-family:var(--serif);
  font-size:43px;
  letter-spacing:-.035em;
  font-variant-numeric:tabular-nums;
  line-height:1
}
.stat-value>span {
  font-size:23px;
  margin-left:2px
}
.stat-label {
  font-size:11px;
  line-height:1.6
}
.stat-label small {
  display:block;
  font-size:9px;
  color:var(--muted)
}
.stat-highlight .stat-value {
  color:var(--teal)
}
.section-heading {
  display:grid;
  grid-template-columns:1.2fr 1fr;
  align-items:end;
  gap:100px;
  margin-bottom:42px
}
.section-heading .eyebrow {
  margin-bottom:19px
}
.section-heading>p {
  font-size:13px;
  line-height:1.9;
  max-width:365px;
  margin-bottom:4px
}
.experiment-shell {
  border:1px solid var(--line);
  border-radius:var(--radius);
  overflow:hidden;
  background:#fff;
  box-shadow:0 12px 35px #28484905
}
.experiment-top {
  height:57px;
  padding:0 24px;
  display:flex;
  align-items:center;
  gap:12px;
  font-size:12px;
  border-bottom:1px solid var(--line)
}
.scene-pill {
  font-size:9px;
  font-weight:600;
  letter-spacing:.08em;
  background:var(--soft);
  border:1px solid #d7e3e1;
  border-radius:4px;
  padding:4px 8px;
  white-space:nowrap;
  color:var(--teal);
  display:inline-block
}
.record-tag {
  margin-left:auto;
  display:flex;
  align-items:center;
  gap:7px;
  font-size:9px;
  color:var(--muted)
}
.record-tag .status-dot {
  width:5px;
  height:5px
}
.story-tabs {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  border-bottom:1px solid var(--line);
  background:#f7faf9
}
.story-tabs button {
  font-size:11px;
  display:flex;
  gap:11px;
  align-items:center;
  justify-content:center;
  padding:18px 10px;
  border-right:1px solid var(--line);
  position:relative;
  color:var(--muted)
}
.story-tabs button:last-child {
  border-right:0
}
.story-tabs button span {
  font-size:10px;
  opacity:.65;
  font-variant-numeric:tabular-nums
}
.story-tabs button[aria-selected=true] {
  color:var(--teal);
  background:#edf4f2
}
.story-tabs button[aria-selected=true]:after {
  content:'';
  height:2px;
  background:var(--teal);
  position:absolute;
  bottom:-1px;
  left:0;
  right:0
}
.experiment-grid {
  display:grid;
  grid-template-columns:1fr 1fr
}
.experiment-panel:first-child {
  border-right:1px solid var(--line)
}
.model-heading {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  padding:20px 22px;
  font-size:12px;
  font-weight:600
}
.model-heading>span:first-child {
  display:flex;
  align-items:center;
  gap:7px
}
.model-dot {
  display:inline-block;
  width:6px;
  height:6px;
  border-radius:2px;
  background:var(--teal)
}
.model-dot.gemini {
  background:var(--blue)
}
.outcome {
  font-size:8px;
  font-weight:500;
  border-radius:20px;
  padding:4px 7px
}
.outcome.positive {
  color:var(--teal);
  background:#edf5ef
}
.outcome.neutral {
  color:#718288;
  background:#f0f3f5
}
.video-frame {
  position:relative;
  background:#e6edee;
  overflow:hidden
}
.video-frame video {
  width:100%;
  aspect-ratio:12/7;
  object-fit:cover
}
.video-coordinate,.video-turn {
  position:absolute;
  bottom:12px;
  font-size:9px;
  padding:4px 7px;
  background:#fffffff0;
  border:1px solid #dbe4e3c0;
  border-radius:4px;
  line-height:1.4
}
.video-coordinate {
  left:12px;
  font-variant-numeric:tabular-nums
}
.video-turn {
  right:12px;
  color:var(--muted)
}
.experiment-caption {
  padding:23px 25px 18px
}
.experiment-caption h3 {
  font-size:16px;
  margin-bottom:9px
}
.experiment-caption>p {
  font-size:12px;
  line-height:1.8;
  min-height:66px
}
.note-details {
  margin-top:16px;
  border-top:1px solid var(--line);
  padding-top:12px
}
.note-details summary {
  font-size:10px;
  display:flex;
  justify-content:space-between;
  color:var(--teal)
}
blockquote {
  margin:15px 0 8px;
  border-left:2px solid var(--teal);
  padding-left:15px;
  font-family:var(--serif);
  font-size:17px;
  line-height:1.55;
  color:#375962;
  letter-spacing:-.015em
}
.note-source {
  font-size:9px;
  color:var(--muted)
}
.playback-controls {
  display:flex;
  align-items:center;
  gap:16px;
  padding:15px 24px;
  border-top:1px solid var(--line);
  background:#fbfcfc
}
.play-button {
  width:30px;
  height:30px;
  border-radius:50%;
  background:var(--ink);
  color:white;
  font-size:10px;
  flex:none
}
.play-button:hover {
  background:var(--teal)
}
input[type=range] {
  width:100%;
  height:4px;
  accent-color:var(--teal);
  cursor:pointer
}
.playback-controls input {
  flex:1;
  min-width:30px
}
.playback-controls>span {
  font-size:10px;
  color:var(--muted);
  font-variant-numeric:tabular-nums;
  min-width:30px
}
.text-button {
  font-size:12px;
  display:flex;
  gap:7px;
  align-items:center
}
.text-button>span {
  font-size:10px
}
.replay-footnote {
  display:flex;
  justify-content:space-between;
  gap:20px;
  font-size:9px;
  border-top:1px solid var(--line);
  padding:12px 24px;
  color:var(--muted)
}
.replay-footnote a {
  color:var(--teal);
  white-space:nowrap
}
.law-reveal {
  margin-top:14px;
  border:1px solid var(--line);
  border-radius:9px;
  background:#f0f5f3;
  font-size:12px
}
.law-reveal summary {
  display:flex;
  align-items:center;
  gap:12px;
  padding:15px 20px
}
.reveal-plus {
  font-size:20px;
  transition:transform .2s;
  line-height:1;
  color:var(--teal)
}
.reveal-hint {
  margin-left:auto;
  color:var(--muted);
  font-size:10px
}
.law-reveal>div {
  padding:0 23px 20px 43px;
  max-width:930px;
  line-height:1.9;
  color:var(--muted)
}
.law-reveal strong {
  color:var(--ink)
}
.framework-section {
  background:#ecf2f0;
  border-block:1px solid #e2eae7
}
.cycle {
  display:flex;
  align-items:stretch;
  gap:12px;
  margin-top:48px
}
.cycle-step {
  flex:1;
  min-width:0
}
.cycle-number {
  font-size:9px;
  color:var(--muted);
  letter-spacing:.12em
}
.cycle-icon {
  width:64px;
  height:72px;
  display:flex;
  align-items:center;
  margin-block:16px 20px
}
.cycle-icon svg {
  fill:none;
  stroke:#698c92;
  stroke-width:1.5
}
.fill-red {
  fill:#cf7866;
  stroke:#cf7866
}
.fill-blue {
  fill:#668dad;
  stroke:#668dad
}
.cycle-step h3 {
  font-family:var(--serif);
  font-size:25px;
  font-weight:400;
  margin-bottom:13px
}
.cycle-step p {
  font-size:12px;
  line-height:1.9;
  max-width:205px
}
.cycle-arrow {
  font-size:23px;
  color:#92aaa8;
  margin-top:73px;
  flex:none;
  width:28px;
  text-align:center
}
.cycle-return {
  margin-top:34px;
  border-block:1px dashed #bfceca;
  padding:13px;
  text-align:center;
  font-size:10px;
  color:var(--muted);
  letter-spacing:.02em
}
.cycle-return>span {
  margin-right:8px;
  font-size:16px
}
.abstract-details {
  margin-top:30px;
  padding-top:5px
}
.abstract-details summary {
  display:flex;
  justify-content:space-between;
  font-size:12px
}
.abstract-details summary span {
  font-size:20px;
  color:var(--teal);
  line-height:1
}
.abstract-details>p {
  font-family:var(--serif);
  font-size:19px;
  line-height:1.85;
  max-width:950px;
  margin:22px auto 0
}
.world-browser {
  border:1px solid var(--line);
  background:white;
  border-radius:var(--radius);
  overflow:hidden
}
.scene-picker {
  display:grid;
  grid-template-columns:repeat(5,1fr);
  padding:17px;
  gap:7px;
  background:#fafcfb;
  border-bottom:1px solid var(--line)
}
.scene-picker button {
  border:1px solid transparent;
  text-align:left;
  border-radius:5px;
  font-size:10px;
  line-height:1.3;
  padding:10px 8px;
  display:flex;
  align-items:center;
  gap:8px;
  color:var(--muted)
}
.scene-picker button>span {
  font-size:9px;
  font-variant-numeric:tabular-nums;
  color:#8ea3a3
}
.scene-picker button:hover {
  background:var(--soft)
}
.scene-picker button[aria-selected=true] {
  background:#e8f1ee;
  color:var(--teal);
  border-color:#d0e0db
}
.scene-picker button[aria-selected=true]>span {
  color:var(--teal)
}
.world-detail {
  display:grid;
  grid-template-columns:1.1fr 1fr
}
.world-image {
  background:#e7edef;
  position:relative;
  display:flex;
  align-items:center;
  min-width:0
}
.world-image img {
  width:100%;
  height:100%;
  object-fit:cover;
  min-height:330px
}
.image-label {
  position:absolute;
  bottom:17px;
  left:20px;
  font-size:8px;
  letter-spacing:.1em;
  color:#4e6d76;
  background:#ffffffd0;
  border-radius:3px;
  padding:4px 7px
}
.world-copy {
  padding:34px;
  display:flex;
  flex-direction:column
}
.world-meta {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  font-size:9px;
  letter-spacing:.08em;
  color:var(--muted)
}
.category-tag {
  font-size:8px;
  color:var(--teal);
  background:#eef4f1;
  padding:3px 7px;
  border-radius:4px;
  text-transform:uppercase
}
.world-copy h3 {
  font-family:var(--serif);
  font-weight:400;
  font-size:32px;
  letter-spacing:-.025em;
  margin-block:22px 12px
}
.world-copy>p {
  font-size:13px;
  line-height:1.8
}
.world-law {
  margin-top:25px;
  padding-block:12px;
  border-block:1px solid var(--line)
}
.world-law summary {
  display:flex;
  justify-content:space-between;
  font-size:11px;
  color:var(--teal)
}
.world-law p {
  padding-block:12px 3px;
  font-size:11px;
  line-height:1.9
}
.world-footer {
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-top:auto;
  padding-top:25px;
  color:var(--muted);
  font-size:8px
}
.world-footer a {
  font-size:17px;
  color:var(--teal);
  padding-inline:8px
}
.results-section {
  background:#edf2f3;
  border-block:1px solid #e1e9ea
}
.results-highlights {
  display:grid;
  grid-template-columns:1.15fr 1fr;
  gap:20px;
  margin-bottom:26px
}
.discovery-highlight {
  display:flex;
  align-items:center;
  gap:28px;
  padding:32px;
  background:#213f47;
  color:white;
  border-radius:var(--radius);
  position:relative;
  overflow:hidden
}
.discovery-highlight:after {
  content:'';
  width:200px;
  height:200px;
  position:absolute;
  right:-80px;
  top:-110px;
  border:1px solid #ffffff0d;
  border-radius:50%
}
.discovery-highlight .eyebrow {
  color:#9ec5bb;
  font-size:9px
}
.discovery-highlight h3 {
  font-family:var(--serif);
  font-size:25px;
  font-weight:400;
  margin-top:9px;
  letter-spacing:-.02em
}
.discovery-highlight p {
  font-size:10px;
  color:#b4c8ca;
  margin-top:9px
}
.ring {
  width:144px;
  height:144px;
  background:conic-gradient(#a3d2be 0deg 60.12deg,#527078 60.12deg 360deg);
  border-radius:50%;
  padding:5px;
  flex:none;
  transform:rotate(-90deg)
}
.ring>div {
  width:100%;
  height:100%;
  background:#213f47;
  border-radius:50%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  transform:rotate(90deg)
}
.ring strong {
  font-family:var(--serif);
  font-size:43px;
  font-weight:400;
  line-height:1.1
}
.ring strong span {
  font-size:22px;
  margin-left:1px
}
.ring small {
  font-size:9px;
  color:#b1cccd;
  margin-top:5px
}
.evidence-highlight {
  background:#fff;
  border:1px solid var(--line);
  border-radius:var(--radius);
  padding:28px 30px
}
.evidence-highlight>.eyebrow {
  font-size:9px;
  margin-bottom:17px
}
.gap-row {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  font-size:11px
}
.gap-row strong {
  font-family:var(--serif);
  font-size:26px;
  line-height:1;
  font-weight:400;
  color:var(--teal)
}
.gap-row strong span {
  font-family:var(--sans);
  font-size:11px;
  margin-left:2px
}
.gap-track {
  height:5px;
  background:#eff4f1;
  margin:8px 0 17px;
  border-radius:5px;
  overflow:hidden
}
.gap-track>i {
  height:100%;
  background:#8cbba8;
  display:block;
  border-radius:5px
}
.gap-track.correctness>i {
  background:var(--blue)
}
.evidence-highlight>p {
  font-size:10px;
  margin-top:4px
}
.chart-card {
  background:white;
  border:1px solid var(--line);
  border-radius:var(--radius);
  padding:30px;
  margin-bottom:22px;
  overflow:hidden
}
.chart-heading {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  margin-bottom:22px
}
.chart-heading h3 {
  font-size:17px
}
.chart-heading p {
  font-size:10px;
  margin-top:5px
}
.segmented {
  display:inline-flex;
  align-items:center;
  background:#f2f5f4;
  border:1px solid #e4ebe7;
  border-radius:6px;
  padding:3px;
  flex-shrink:0;
  gap:2px
}
.segmented button {
  font-size:9px;
  padding:6px 9px;
  border-radius:4px;
  color:var(--muted);
  white-space:nowrap
}
.segmented button[aria-pressed=true] {
  background:white;
  color:var(--teal);
  box-shadow:0 1px 4px #274f4020
}
.chart-legend {
  display:flex;
  gap:25px;
  font-size:9px;
  color:var(--muted);
  margin-bottom:24px
}
.chart-legend>span {
  display:flex;
  align-items:center;
  gap:6px
}
.legend-dot {
  width:7px;
  height:7px;
  border-radius:2px;
  display:inline-block;
  flex:none
}
.legend-dot.d {
  background:var(--teal)
}
.legend-dot.c {
  background:var(--blue)
}
.legend-dot.s {
  background:#aac8b9
}
.model-chart {
  --label-width:148px
}
.chart-axis {
  margin-left:var(--label-width);
  display:flex;
  justify-content:space-between;
  padding-bottom:10px;
  font-size:8px;
  color:#8b9c9f
}
.chart-model-row {
  display:grid;
  grid-template-columns:var(--label-width) 1fr;
  min-height:37px;
  border-bottom:1px solid #edf1f0;
  align-items:center
}
.chart-model-row:first-of-type {
  border-top:1px solid #edf1f0
}
.chart-model-label {
  font-size:10px;
  letter-spacing:-.015em;
  line-height:1.4;
  padding-right:8px
}
.chart-model-row.featured {
  background:#f3f8f5
}
.chart-model-row.featured .chart-model-label {
  font-weight:600;
  color:var(--teal);
  padding-left:6px
}
.chart-lanes {
  position:relative;
  padding-block:5px;
  background-image:linear-gradient(to right,#e8eeeb 1px,transparent 1px);
  background-size:25% 100%;
  border-right:1px solid #e8eeeb
}
.chart-lane {
  height:8px;
  display:flex;
  align-items:center;
  position:relative
}
.chart-lane+.chart-lane {
  margin-top:2px
}
.chart-bar {
  height:5px;
  min-width:2px;
  display:block;
  position:relative;
  background:var(--teal);
  border-radius:0 2px 2px 0;
  transition:width .45s cubic-bezier(.22,.6,.3,1)
}
.chart-bar.metric-C {
  background:var(--blue)
}
.chart-bar.metric-S {
  background:#aac8b9
}
.chart-bar[data-value="0"] {
  background:#cbd5d3!important;
  height:3px;
  min-width:3px;
  border-radius:50%
}
.chart-bar-number {
  position:absolute;
  left:calc(var(--value)*1% + 6px);
  font-size:7px;
  color:#698080;
  line-height:1;
  top:50%;
  transform:translateY(-50%);
  font-variant-numeric:tabular-nums
}
.chart-bar-number.inside {
  left:auto;
  right:6px;
  color:var(--ink)
}
.chart-model-row.single {
  min-height:32px
}
.single .chart-lane {
  height:20px
}
.single .chart-bar {
  height:9px
}
.single .chart-bar-number {
  font-size:9px
}
.single .chart-bar[data-value="0"] {
  height:4px
}
.chart-footer {
  display:flex;
  justify-content:space-between;
  gap:15px;
  padding-top:19px;
  font-size:9px;
  color:var(--muted)
}
.chart-footer a {
  color:var(--teal);
  white-space:nowrap
}
.full-results {
  margin-top:18px;
  padding:18px 0;
  border-block:1px solid #d6e2e1
}
.full-results summary {
  display:flex;
  justify-content:space-between;
  align-items:center;
  font-size:11px
}
.full-results summary span {
  font-size:18px;
  color:var(--teal)
}
.table-intro {
  font-size:10px;
  line-height:1.9;
  max-width:850px;
  margin:18px 0
}
.table-scroll {
  overflow:auto
}
table {
  width:100%;
  border-collapse:collapse;
  font-variant-numeric:tabular-nums
}
table caption {
  font-size:11px;
  text-align:left;
  margin:15px 0
}
table th,table td {
  font-size:10px;
  padding:9px 10px;
  text-align:right;
  border-bottom:1px solid #dae4e3;
  white-space:nowrap
}
table th {
  font-weight:500;
  color:var(--muted)
}
table th:first-child,table td:first-child {
  text-align:left
}
table tr.featured {
  background:#dfece5
}
table thead {
  background:#e1eae7
}
.subsection-heading {
  margin-top:60px;
  margin-bottom:25px
}
.subsection-heading h3 {
  font-family:var(--serif);
  font-weight:400;
  font-size:34px;
  margin-top:13px
}
.subsection-heading .eyebrow {
  font-size:9px
}
.subsection-heading>p {
  margin-top:10px;
  font-size:10px;
  color:var(--muted)
}
.intervention-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px
}
.intervention-card {
  background:white;
  border:1px solid var(--line);
  border-radius:12px;
  padding:22px 21px;
  display:flex;
  flex-direction:column;
  align-items:flex-start
}
.intervention-index {
  font-size:9px;
  letter-spacing:.07em;
  color:var(--muted)
}
.intervention-card h4 {
  font-family:var(--serif);
  font-weight:400;
  font-size:25px;
  margin:12px 0 9px
}
.intervention-card>p {
  font-size:11px;
  line-height:1.65
}
.mini-compare {
  width:100%;
  margin-top:auto;
  padding-top:16px
}
.compare-row {
  display:grid;
  grid-template-columns:74px 1fr 39px;
  gap:9px;
  align-items:center;
  margin-block:10px;
  font-size:9px;
  color:var(--muted)
}
.compare-row strong {
  font-size:12px;
  font-weight:500;
  text-align:right;
  color:var(--ink)
}
.compare-track {
  height:8px;
  background:#f0f4f2;
  border-radius:3px;
  overflow:hidden
}
.compare-fill {
  height:100%;
  background:#aec7c0;
  display:block;
  border-radius:3px
}
.compare-row:last-child .compare-fill {
  background:var(--teal)
}
.case-tabs {
  display:flex;
  gap:6px;
  border-bottom:1px solid var(--line)
}
.case-tabs button {
  font-size:12px;
  padding:17px 24px;
  position:relative;
  color:var(--muted);
  display:flex;
  gap:14px;
  align-items:center
}
.case-tabs button>span {
  font-size:10px;
  color:#99abaa
}
.case-tabs button[aria-selected=true] {
  color:var(--teal)
}
.case-tabs button[aria-selected=true]:after {
  content:'';
  height:2px;
  position:absolute;
  bottom:-1px;
  left:0;
  right:0;
  background:var(--teal)
}
.case-panel {
  padding-top:29px
}
.case-intro {
  max-width:750px
}
.case-intro h3 {
  font-family:var(--serif);
  font-size:31px;
  font-weight:400;
  margin-block:14px 10px
}
.case-intro>p {
  font-size:12px;
  line-height:1.9
}
.prediction-strip {
  display:grid;
  grid-template-columns:1fr 1fr 1.1fr;
  margin-top:28px;
  border:1px solid var(--line);
  background:white;
  border-radius:10px;
  padding:23px
}
.prediction-strip>div {
  border-right:1px solid var(--line);
  padding-inline:20px
}
.prediction-strip>div:first-child {
  padding-left:0
}
.prediction-strip>div:last-child {
  border:0
}
.prediction-strip>div>span {
  font-size:10px;
  color:var(--muted)
}
.ball-equation {
  display:flex;
  align-items:center;
  gap:8px;
  margin-top:16px
}
.ball {
  display:inline-block;
  width:21px;
  height:21px;
  border-radius:50%;
  background:radial-gradient(circle at 32% 25%,#ffffffaa,transparent 35%),radial-gradient(circle at 35% 35%,#e7907c,#bc5145);
  box-shadow:0 3px 5px #294f4618;
  flex:none
}
.ball.blue {
  background:radial-gradient(circle at 32% 25%,#ffffffaa,transparent 35%),radial-gradient(circle at 35% 35%,#83aee0,#456b9a)
}
.ball.green {
  background:radial-gradient(circle at 32% 25%,#ffffffaa,transparent 35%),radial-gradient(circle at 35% 35%,#95c5ab,#4c9273)
}
.ball-equation b {
  font-weight:400;
  font-size:20px;
  margin-inline:11px;
  color:#9aafad
}
.observed-prediction {
  display:flex;
  flex-direction:column;
  justify-content:center
}
.observed-prediction>span {
  color:var(--teal)!important
}
.observed-prediction strong {
  font-size:12px;
  font-weight:500;
  margin-top:12px;
  color:var(--teal)
}
.observed-prediction strong>span {
  margin-left:10px
}
.case-image-pair {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
  margin-top:20px
}
.case-image-pair figure {
  border:1px solid var(--line);
  border-radius:9px;
  overflow:hidden;
  background:white
}
.case-image-pair img {
  width:100%;
  aspect-ratio:1200/540;
  object-fit:cover
}
.case-image-pair figcaption {
  font-size:11px;
  padding:15px 18px;
  color:var(--muted);
  line-height:1.6
}
.case-image-pair figcaption>span {
  display:block;
  font-size:8px;
  letter-spacing:.08em;
  color:var(--teal);
  margin-bottom:5px
}
.case-note {
  margin-top:25px;
  border-top:1px solid var(--line);
  padding-top:15px
}
.case-note summary {
  font-size:11px;
  display:flex;
  justify-content:space-between;
  color:var(--teal)
}
.case-note blockquote {
  max-width:880px
}
.case-source {
  font-size:9px;
  line-height:1.8;
  margin-top:22px;
  max-width:880px
}
.tool-story {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
  margin-top:30px
}
.tool-story figure {
  border:1px solid var(--line);
  border-radius:10px;
  overflow:hidden;
  background:white
}
.tool-stage {
  display:block;
  font-size:8px;
  letter-spacing:.1em;
  padding:16px 18px 8px;
  color:var(--teal)
}
.tool-story img {
  width:100%;
  aspect-ratio:1000/720;
  object-fit:cover
}
.tool-story figcaption {
  padding:18px
}
.tool-story h4 {
  font-size:15px;
  margin-bottom:8px
}
.tool-story p {
  font-size:11px;
  line-height:1.8
}
.scale-readings {
  display:grid;
  grid-template-columns:1fr 1.4fr;
  align-items:center;
  gap:30px;
  padding:26px 30px;
  border:1px solid var(--line);
  background:#edf3f0;
  margin-top:20px;
  border-radius:9px
}
.scale-readings h4 {
  font-size:14px;
  margin-bottom:6px
}
.scale-readings p {
  font-size:10px
}
#scale-chart {
  display:flex;
  justify-content:space-between;
  gap:15px
}
.scale-value {
  text-align:center;
  font-size:10px;
  color:var(--muted)
}
.scale-value strong {
  display:block;
  font-family:var(--serif);
  font-weight:400;
  font-size:26px;
  color:var(--ink);
  line-height:1.5
}
.scale-value small {
  font-size:8px
}
.evolution-section {
  background:#eaf0ef;
  border-block:1px solid #dde6e1
}
.evolution-source {
  padding:27px 30px;
  border:1px solid #ceddd6;
  border-radius:12px;
  background:#f7faf8
}
.source-label {
  display:flex;
  gap:15px;
  align-items:center
}
.source-label>span:last-child {
  font-size:9px;
  letter-spacing:.1em;
  color:var(--muted)
}
.correction {
  display:grid;
  grid-template-columns:1fr 60px 1fr;
  gap:25px;
  align-items:center;
  margin-top:20px
}
.correction p {
  font-family:var(--serif);
  font-size:23px;
  line-height:1.3;
  color:var(--ink)
}
.correction p>span {
  display:block;
  font:9px var(--sans);
  color:var(--muted);
  margin-bottom:10px
}
.correction p:first-child {
  color:#8d9d98
}
.correction-arrow {
  font-size:28px;
  color:#8bac9e;
  text-align:center
}
.evolution-source>small {
  display:block;
  font-size:8px;
  color:var(--muted);
  margin-top:17px
}
.branch-line {
  position:relative;
  width:68%;
  margin:0 auto;
  height:35px;
  border-top:1px solid #bbcec3;
  top:17px;
  display:flex;
  justify-content:space-between
}
.branch-line:before {
  content:'';
  position:absolute;
  height:17px;
  left:50%;
  top:-18px;
  border-left:1px solid #bbcec3
}
.branch-line i {
  height:17px;
  border-left:1px solid #bbcec3
}
.evolution-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px
}
.evolution-grid article {
  background:white;
  border:1px solid #d7e2dc;
  border-radius:12px;
  padding:25px;
  display:flex;
  flex-direction:column
}
.evolution-card-top {
  display:flex;
  align-items:center;
  gap:10px;
  font-size:9px;
  letter-spacing:.08em;
  color:var(--teal)
}
.evolution-letter {
  display:flex;
  align-items:center;
  justify-content:center;
  background:#eaf3ee;
  border:1px solid #dce9e1;
  font-family:var(--serif);
  font-size:18px;
  width:33px;
  height:33px;
  border-radius:6px
}
.evolution-grid h3 {
  font-family:var(--serif);
  font-size:24px;
  font-weight:400;
  margin-top:22px
}
.evolution-diagram {
  height:130px;
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
  gap:18px;
  padding-bottom:22px
}
.evolution-diagram>.ball {
  width:26px;
  height:26px
}
.evolution-diagram>span:not(.tile) {
  color:#84a49b;
  font-size:25px;
  line-height:1
}
.evolution-diagram>small {
  position:absolute;
  bottom:13px;
  font-size:8px;
  color:var(--muted);
  letter-spacing:.04em
}
.evolution-diagram .tile {
  width:45px;
  height:39px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#e3e7e5;
  border:1px solid #c6d1cb;
  transform:skewY(-7deg);
  border-radius:3px
}
.evolution-diagram .delay-arrow {
  font-size:10px!important;
  line-height:1.4!important;
  text-align:center
}
.evolution-grid article>p {
  font-size:11px;
  line-height:1.85;
  margin-bottom:25px
}
.evolution-score {
  margin-top:auto;
  padding-top:17px;
  border-top:1px solid var(--line);
  display:flex;
  justify-content:space-between;
  font-size:9px;
  color:var(--muted)
}
.evolution-score strong {
  font-size:11px;
  margin-left:5px;
  font-weight:500;
  color:var(--teal)
}
.evolution-chart-wrap {
  display:grid;
  grid-template-columns:1fr 1.2fr;
  gap:70px;
  align-items:center;
  margin-top:38px;
  padding:32px;
  border:1px solid #d1e0d6;
  border-radius:12px;
  background:#f2f7f3
}
.evolution-chart-wrap .eyebrow {
  font-size:8px
}
.evolution-chart-wrap h3 {
  font-family:var(--serif);
  font-size:28px;
  font-weight:400;
  margin-block:13px 10px
}
.evolution-chart-wrap p {
  font-size:11px;
  line-height:1.85
}
.evolution-bar-row {
  display:grid;
  grid-template-columns:90px 1fr 45px;
  gap:12px;
  align-items:center;
  margin:11px 0;
  font-size:10px
}
.evolution-bar-row>span {
  color:var(--muted)
}
.evolution-bar-row strong {
  text-align:right;
  font-weight:500;
  font-variant-numeric:tabular-nums
}
.evolution-bar-track {
  height:7px;
  border-radius:2px;
  background:#e0eae3
}
.evolution-bar-track>i {
  display:block;
  height:100%;
  min-width:3px;
  background:#82aa98;
  border-radius:2px
}
.evolution-bar-row.evolved .evolution-bar-track>i {
  background:var(--teal)
}
.materials-section {
  text-align:center
}
.materials-section>div:first-child>.eyebrow {
  justify-content:center
}
.materials-section h2 {
  font-size:51px;
  margin-block:18px
}
.materials-section>div>p {
  font-size:12px
}
.resource-grid {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:15px;
  margin-top:40px;
  text-align:left
}
.resource-grid>a {
  position:relative;
  border:1px solid var(--line);
  border-radius:10px;
  background:white;
  padding:27px 21px 23px;
  transition:transform .2s,border-color .2s;
  display:flex;
  flex-direction:column
}
.resource-grid>a:hover {
  border-color:#83aa9b;
  transform:translateY(-4px)
}
.resource-icon {
  font-size:25px;
  line-height:1;
  color:var(--teal);
  margin-bottom:25px
}
.resource-grid h3 {
  font-family:var(--serif);
  font-weight:400;
  font-size:23px;
  line-height:1.15;
  margin-bottom:10px
}
.resource-grid p {
  font-size:10px;
  line-height:1.8
}
.resource-grid a>span:last-child {
  font-size:8px;
  line-height:1.7;
  color:#849792;
  margin-top:auto;
  padding-top:18px
}
.extra-resources {
  display:flex;
  justify-content:center;
  gap:28px;
  flex-wrap:wrap;
  margin-top:27px;
  font-size:10px;
  color:var(--teal)
}
footer {
  display:flex;
  justify-content:center;
  align-items:center;
  border-top:1px solid var(--line);
  padding-block:30px;
  background:#eef3f0
}
.noscript-notice {
  padding:20px;
  text-align:center;
  background:#e7efe9;
  font-size:14px
}
@media(min-width:1500px) {
  .hero {
    min-height:710px
  }
  .hero h1 {
    font-size:78px
  }
  .hero-art>img {
    width:110%
  }
}
@media(max-width:1100px) {
  .container {
    width:calc(100% - 64px)
  }
  .hero h1 {
    font-size:62px
  }
  .hero {
    grid-template-columns:1.1fr 1fr;
    min-height:620px
  }
  .hero-art>img {
    width:115%
  }
  .hero-art figcaption {
    bottom:55px
  }
  .hero-actions .button {
    font-size:10px;
    padding:12px
  }
  .stats-strip>div {
    gap:9px
  }
  .stat-value {
    font-size:35px
  }
  .stat-label {
    font-size:10px
  }
  .stat-label small {
    font-size:8px
  }
  .stats-strip {
    gap:12px
  }
  .section-heading {
    gap:55px
  }
  .discovery-highlight {
    gap:19px;
    padding:25px
  }
  .ring {
    width:125px;
    height:125px
  }
  .discovery-highlight h3 {
    font-size:22px
  }
  .scene-picker button {
    font-size:9px;
    gap:5px
  }
  .world-copy {
    padding:28px
  }
  .chart-heading {
    align-items:flex-start
  }
  .chart-heading h3 {
    font-size:15px
  }
  .segmented button {
    font-size:8px;
    padding:6px
  }
  .evolution-grid article {
    padding:20px
  }
  .evolution-grid h3 {
    font-size:23px
  }
  .resource-grid>a {
    padding:24px 17px
  }
  .resource-grid h3 {
    font-size:21px
  }
  .model-heading {
    padding-inline:17px;
    font-size:11px
  }
  .outcome {
    font-size:7px
  }
  .prediction-strip>div {
    padding-inline:15px
  }
  .ball-equation {
    gap:6px
  }
  .ball-equation b {
    margin-inline:7px
  }
}
@media(max-width:800px) {
  .nav-wrap {
    width:calc(100% - 44px);
    height:67px
  }
  .site-header nav {
    gap:18px;
    font-size:11px
  }
  .nav-paper {
    padding:8px 10px;
    gap:8px;
    font-size:10px
  }
  .wordmark {
    font-size:21px
  }
  .wordmark img {
    width:27px;
    height:27px
  }
  .container {
    width:calc(100% - 44px)
  }
  .hero {
    padding-top:44px;
    grid-template-columns:1fr .85fr;
    min-height:590px
  }
  .hero h1 {
    font-size:53px
  }
  .hero-description {
    font-size:17px
  }
  .hero-explanation {
    font-size:12px;
    max-width:330px
  }
  .hero .eyebrow {
    font-size:8px;
    letter-spacing:.08em;
    margin-bottom:24px
  }
  .hero-authors {
    font-size:8px
  }
  .hero-art {
    padding-bottom:90px
  }
  .hero-art>img {
    width:130%;
    max-width:none;
    margin-left:-8%
  }
  .hero-art figcaption {
    left:0;
    bottom:87px;
    font-size:10px
  }
  .art-note {
    bottom:54px;
    font-size:7px;
    gap:5px;
    right:-2px
  }
  .hero-actions {
    flex-direction:column;
    align-items:flex-start;
    gap:8px;
    margin-top:18px
  }
  .hero-actions .button {
    font-size:10px;
    min-width:190px
  }
  .art-index {
    font-size:7px;
    top:16px
  }
  .stats-strip {
    grid-template-columns:repeat(2,1fr);
    row-gap:22px
  }
  .stats-strip>div:nth-child(2) {
    border-right:0
  }
  .stat-value {
    font-size:42px;
    min-width:80px
  }
  .stat-label {
    font-size:11px
  }
  .stat-label small {
    font-size:9px
  }
  .section {
    padding-block:77px
  }
  .section-heading {
    grid-template-columns:1fr 1fr;
    gap:25px
  }
  .section-heading>p {
    font-size:11px
  }
  .section-heading .eyebrow {
    font-size:8px;
    gap:6px
  }
  .section-number {
    margin-right:0
  }
  h2 {
    font-size:40px
  }
  .experiment-top {
    font-size:11px;
    padding-inline:16px
  }
  .story-tabs button {
    font-size:9px;
    gap:6px
  }
  .model-heading {
    padding:16px 12px;
    flex-direction:column;
    align-items:flex-start;
    gap:7px
  }
  .outcome {
    font-size:8px
  }
  .experiment-caption {
    padding:18px
  }
  .experiment-caption h3 {
    font-size:14px
  }
  .experiment-caption>p {
    font-size:11px;
    min-height:80px
  }
  .replay-footnote {
    font-size:8px;
    padding-inline:16px
  }
  .cycle {
    gap:8px
  }
  .cycle-step h3 {
    font-size:21px
  }
  .cycle-step p {
    font-size:10px
  }
  .cycle-arrow {
    width:13px;
    font-size:18px
  }
  .cycle-number {
    font-size:7px
  }
  .cycle-icon {
    width:52px
  }
  .scene-picker {
    grid-template-columns:repeat(3,1fr)
  }
  .scene-picker button {
    font-size:10px
  }
  .world-detail {
    grid-template-columns:1fr 1fr
  }
  .world-copy {
    padding:24px
  }
  .world-copy h3 {
    font-size:26px
  }
  .world-copy>p {
    font-size:11px
  }
  .world-image img {
    min-height:320px
  }
  .world-meta {
    font-size:8px
  }
  .world-footer {
    font-size:7px;
    line-height:1.7
  }
  .results-highlights {
    gap:15px
  }
  .discovery-highlight {
    flex-direction:column;
    align-items:flex-start;
    gap:20px;
    padding:24px
  }
  .ring {
    width:116px;
    height:116px;
    align-self:center
  }
  .discovery-highlight h3 {
    font-size:24px
  }
  .evidence-highlight {
    padding:25px;
    display:flex;
    flex-direction:column;
    justify-content:center
  }
  .evidence-highlight>.eyebrow {
    margin-bottom:25px
  }
  .gap-track {
    margin-bottom:25px;
    flex:none
  }
  .evidence-highlight>p {
    font-size:11px
  }
  .chart-card {
    padding:23px
  }
  .chart-heading {
    flex-direction:column;
    gap:15px
  }
  .chart-heading h3 {
    font-size:17px
  }
  .chart-legend {
    font-size:8px;
    gap:17px
  }
  .model-chart {
    --label-width:130px
  }
  .chart-model-label {
    font-size:9px
  }
  .intervention-grid {
    gap:12px
  }
  .intervention-card {
    padding:21px 16px
  }
  .intervention-card h4 {
    font-size:23px
  }
  .intervention-card>p {
    font-size:10px
  }
  .compare-row {
    grid-template-columns:1fr 35px;
    gap:5px;
    row-gap:3px
  }
  .compare-row>span:first-child {
    grid-column:1/-1
  }
  .compare-row strong {
    font-size:11px
  }
  .prediction-strip {
    padding:20px 15px
  }
  .prediction-strip>div {
    padding-inline:12px
  }
  .ball {
    width:16px;
    height:16px
  }
  .ball-equation {
    gap:4px
  }
  .ball-equation b {
    margin-inline:4px
  }
  .prediction-strip>div>span {
    font-size:8px
  }
  .observed-prediction strong {
    font-size:10px
  }
  .case-tabs button {
    font-size:10px;
    padding:16px 17px;
    gap:9px
  }
  .tool-story {
    gap:12px
  }
  .tool-story figcaption {
    padding:16px
  }
  .tool-story h4 {
    font-size:13px
  }
  .tool-story p {
    font-size:10px
  }
  .scale-readings {
    grid-template-columns:1fr;
    gap:18px
  }
  .correction {
    gap:18px;
    grid-template-columns:1fr 35px 1fr
  }
  .correction p {
    font-size:21px
  }
  .evolution-grid {
    gap:12px
  }
  .evolution-grid article {
    padding:20px 15px
  }
  .evolution-grid h3 {
    font-size:21px;
    min-height:52px
  }
  .evolution-grid article>p {
    font-size:10px
  }
  .evolution-card-top {
    font-size:8px;
    gap:7px
  }
  .evolution-diagram {
    gap:11px
  }
  .evolution-score {
    flex-direction:column;
    gap:6px
  }
  .evolution-chart-wrap {
    gap:35px;
    padding:26px
  }
  .evolution-chart-wrap h3 {
    font-size:25px
  }
  .resource-grid {
    grid-template-columns:repeat(2,1fr);
    gap:13px
  }
  .resource-grid>a {
    padding:24px
  }
  .resource-grid h3 {
    font-size:26px
  }
  .resource-grid p {
    font-size:11px
  }
}
@media(max-width:560px) {
  html {
    scroll-padding-top:82px
  }
  .container {
    width:calc(100% - 36px)
  }
  .nav-wrap {
    width:calc(100% - 36px);
    height:63px
  }
  .site-header nav {
    display:none
  }
  .nav-paper {
    font-size:10px
  }
  .hero {
    display:flex;
    flex-direction:column;
    gap:0;
    padding-top:37px;
    padding-bottom:22px;
    min-height:0;
    align-items:stretch
  }
  .hero .eyebrow {
    font-size:8px;
    letter-spacing:.11em;
    margin-bottom:21px
  }
  .hero h1 {
    font-size:clamp(50px,12vw,65px);
    letter-spacing:-.045em;
    line-height:1.015
  }
  .hero-description {
    font-size:17px;
    margin-top:21px
  }
  .hero-explanation {
    max-width:95%;
    font-size:12px;
    line-height:1.85
  }
  .hero-authors {
    font-size:8px;
    margin-top:17px;
    gap:7px
  }
  .hero-actions {
    flex-direction:row;
    gap:7px
  }
  .hero-actions .button {
    min-width:0;
    font-size:9px;
    padding:12px 10px;
    gap:7px
  }
  .hero-art {
    height:365px;
    align-self:center;
    width:100%;
    padding:25px 20px 43px;
    margin-top:10px
  }
  .hero-art>img {
    height:310px;
    width:auto;
    max-width:100%;
    margin:0;
    object-fit:contain
  }
  .orbit {
    top:10%;
    height:76%;
    width:83%;
    left:10%
  }
  .orbit-two {
    height:85%;
    width:75%;
    top:6%;
    left:14%
  }
  .art-index {
    top:11px;
    right:6px
  }
  .hero-art figcaption {
    bottom:29px;
    left:1px;
    font-size:9px
  }
  .art-note {
    bottom:3px;
    right:0;
    font-size:8px;
    gap:7px
  }
  .stats-strip {
    padding-block:22px;
    gap:22px 15px
  }
  .stats-strip>div {
    gap:8px;
    align-items:flex-start
  }
  .stat-value {
    font-size:36px;
    min-width:0;
    letter-spacing:-.04em
  }
  .stat-label {
    font-size:9px;
    line-height:1.6;
    padding-top:3px
  }
  .stat-label small {
    font-size:7px;
    max-width:100px
  }
  .stat-value>span {
    font-size:18px
  }
  .section {
    padding-block:60px
  }
  .section-heading {
    grid-template-columns:1fr;
    gap:18px;
    margin-bottom:28px
  }
  .section-heading .eyebrow {
    font-size:8px;
    letter-spacing:.1em;
    margin-bottom:17px;
    gap:8px
  }
  h2 {
    font-size:39px;
    letter-spacing:-.035em
  }
  .section-heading>p {
    font-size:12px;
    max-width:100%;
    line-height:1.8;
    margin:0
  }
  .experiment-top {
    padding:13px;
    gap:7px;
    font-size:9px;
    height:auto;
    flex-wrap:wrap
  }
  .scene-pill {
    font-size:8px;
    padding:3px 6px
  }
  .record-tag {
    font-size:7px;
    gap:4px
  }
  .record-tag .status-dot {
    height:4px;
    width:4px
  }
  .story-tabs button {
    font-size:8px;
    line-height:1.6;
    flex-direction:column;
    gap:0;
    padding:12px 4px
  }
  .story-tabs button span {
    font-size:8px
  }
  .experiment-grid {
    grid-template-columns:1fr
  }
  .experiment-panel:first-child {
    border-right:0;
    border-bottom:1px solid var(--line)
  }
  .model-heading {
    flex-direction:row;
    align-items:center;
    gap:10px;
    padding:16px;
    font-size:11px
  }
  .outcome {
    font-size:7px
  }
  .video-frame video {
    aspect-ratio:12/7
  }
  .experiment-caption {
    padding:19px
  }
  .experiment-caption h3 {
    font-size:16px
  }
  .experiment-caption>p {
    font-size:12px;
    min-height:0
  }
  .note-details {
    margin-top:15px;
    padding-top:11px
  }
  .note-details summary {
    font-size:10px
  }
  .playback-controls {
    padding:14px 15px;
    gap:12px
  }
  .replay-footnote {
    font-size:8px;
    flex-direction:column;
    gap:6px;
    padding:12px 16px
  }
  .reveal-hint {
    display:none
  }
  .law-reveal summary {
    padding:14px 17px;
    font-size:11px
  }
  .law-reveal>div {
    padding:0 19px 18px;
    font-size:11px
  }
  .cycle {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:35px 23px;
    margin-top:35px
  }
  .cycle-arrow {
    display:none
  }
  .cycle-number {
    font-size:8px
  }
  .cycle-step h3 {
    font-size:23px
  }
  .cycle-step p {
    font-size:11px;
    max-width:100%
  }
  .cycle-icon {
    margin-block:11px 12px;
    height:59px
  }
  .cycle-return {
    font-size:8px;
    padding:12px 4px
  }
  .abstract-details>p {
    font-size:17px
  }
  .scene-picker {
    grid-template-columns:repeat(3,1fr);
    gap:4px;
    padding:11px
  }
  .scene-picker button {
    font-size:8px;
    padding:9px 5px;
    line-height:1.5;
    align-items:flex-start;
    gap:4px
  }
  .scene-picker button>span {
    font-size:8px;
    margin-top:0
  }
  .world-detail {
    grid-template-columns:1fr
  }
  .world-image img {
    height:auto;
    min-height:0;
    aspect-ratio:5/3;
    object-fit:contain
  }
  .image-label {
    font-size:7px;
    bottom:11px;
    left:13px
  }
  .world-copy {
    padding:25px
  }
  .world-copy h3 {
    font-size:32px;
    margin-top:18px
  }
  .world-copy>p {
    font-size:12px
  }
  .world-meta {
    font-size:9px
  }
  .category-tag {
    font-size:8px
  }
  .world-law {
    margin-top:23px
  }
  .world-law p {
    font-size:11px
  }
  .world-footer {
    font-size:8px
  }
  .results-highlights {
    grid-template-columns:1fr;
    gap:13px
  }
  .discovery-highlight {
    flex-direction:row;
    align-items:center;
    padding:25px 22px;
    gap:21px
  }
  .ring {
    width:112px;
    height:112px
  }
  .ring strong {
    font-size:33px
  }
  .ring strong span {
    font-size:19px
  }
  .ring small {
    font-size:8px
  }
  .discovery-highlight h3 {
    font-size:23px
  }
  .discovery-highlight .eyebrow {
    font-size:8px
  }
  .discovery-highlight p {
    font-size:9px
  }
  .evidence-highlight {
    padding:25px
  }
  .evidence-highlight>.eyebrow {
    margin-bottom:20px
  }
  .gap-track {
    margin-bottom:21px
  }
  .gap-row strong {
    font-size:28px
  }
  .evidence-highlight>p {
    font-size:10px
  }
  .chart-card {
    padding:23px 15px;
    border-radius:12px
  }
  .chart-heading {
    gap:18px;
    margin-bottom:18px
  }
  .chart-heading h3 {
    font-size:16px;
    line-height:1.4
  }
  .chart-heading p {
    font-size:9px;
    line-height:1.7
  }
  .segmented {
    width:100%;
    justify-content:space-between
  }
  .segmented button {
    font-size:8px;
    padding:7px 8px;
    flex:1
  }
  .chart-legend {
    font-size:8px;
    gap:8px;
    flex-wrap:wrap;
    margin-bottom:20px
  }
  .chart-legend>span {
    gap:4px
  }
  .legend-dot {
    width:6px;
    height:6px
  }
  .model-chart {
    --label-width:106px
  }
  .chart-model-label {
    font-size:8px
  }
  .chart-model-row {
    min-height:40px
  }
  .chart-bar-number {
    font-size:6px
  }
  .chart-axis {
    font-size:7px
  }
  .chart-model-row.single {
    min-height:34px
  }
  .chart-footer {
    flex-direction:column;
    font-size:8px;
    gap:8px
  }
  .control-callout h4 {
    font-size:13px;
    line-height:1.5
  }
  .control-callout p {
    font-size:10px;
    line-height:1.8
  }
  .full-results summary {
    font-size:10px
  }
  .subsection-heading {
    margin-top:43px
  }
  .subsection-heading .eyebrow {
    font-size:8px
  }
  .subsection-heading h3 {
    font-size:30px;
    line-height:1.15
  }
  .intervention-grid {
    grid-template-columns:1fr;
    gap:13px
  }
  .intervention-card {
    padding:25px
  }
  .intervention-card h4 {
    font-size:27px
  }
  .intervention-card>p {
    font-size:12px
  }
  .compare-row {
    grid-template-columns:80px 1fr 40px;
    font-size:10px;
    margin:13px 0;
    gap:10px
  }
  .compare-row>span:first-child {
    grid-column:auto
  }
  .compare-row strong {
    font-size:13px
  }
  .compare-track {
    height:9px
  }
  .case-tabs {
    gap:0
  }
  .case-tabs button {
    width:50%;
    font-size:9px;
    padding:12px 6px;
    gap:6px;
    text-align:left;
    line-height:1.65
  }
  .case-tabs button>span {
    font-size:8px
  }
  .case-intro h3 {
    font-size:29px
  }
  .case-intro p {
    font-size:12px
  }
  .prediction-strip {
    grid-template-columns:1fr 1fr;
    padding:19px 16px;
    gap:18px 0
  }
  .prediction-strip>div {
    padding-inline:12px
  }
  .prediction-strip>div:nth-child(2) {
    border-right:0
  }
  .prediction-strip>div>span {
    font-size:8px
  }
  .ball-equation {
    gap:5px
  }
  .ball-equation b {
    margin-inline:7px
  }
  .ball {
    width:18px;
    height:18px
  }
  .observed-prediction {
    grid-column:1/-1;
    border-top:1px solid var(--line)!important;
    padding:16px 0 0!important
  }
  .observed-prediction strong {
    font-size:12px;
    margin-top:7px
  }
  .case-image-pair {
    gap:10px
  }
  .case-image-pair figcaption {
    padding:12px;
    font-size:9px;
    line-height:1.7
  }
  .case-image-pair figcaption>span {
    font-size:7px
  }
  .case-image-pair img {
    aspect-ratio:1.4;
    object-fit:cover
  }
  .case-note summary {
    font-size:10px
  }
  .case-source {
    font-size:8px
  }
  .tool-story {
    grid-template-columns:1fr;
    gap:14px
  }
  .tool-story figure {
    display:grid;
    grid-template-columns:1fr 1fr;
    align-items:center
  }
  .tool-stage {
    grid-column:1/-1;
    padding:15px 18px 5px
  }
  .tool-story figcaption {
    padding:15px
  }
  .tool-story h4 {
    font-size:15px
  }
  .tool-story p {
    font-size:11px
  }
  .tool-story img {
    aspect-ratio:1.1;
    object-fit:cover
  }
  .scale-readings {
    padding:21px;
    gap:22px
  }
  .scale-value {
    font-size:9px
  }
  .scale-value strong {
    font-size:24px
  }
  .scale-value small {
    font-size:7px
  }
  .evolution-source {
    padding:24px
  }
  .source-label {
    gap:10px
  }
  .source-label>span:last-child {
    font-size:8px
  }
  .correction {
    grid-template-columns:1fr;
    gap:12px
  }
  .correction p {
    font-size:24px
  }
  .correction-arrow {
    text-align:left;
    font-size:25px;
    line-height:1;
    transform:rotate(90deg);
    width:25px
  }
  .correction p>span {
    font-size:9px
  }
  .evolution-source>small {
    font-size:8px
  }
  .branch-line {
    width:0;
    height:28px;
    top:0;
    border:0;
    border-left:1px solid #bbcec3;
    margin-left:50%
  }
  .branch-line:before,.branch-line i {
    display:none
  }
  .evolution-grid {
    grid-template-columns:1fr;
    gap:13px
  }
  .evolution-grid article {
    padding:25px;
    display:grid;
    grid-template-columns:1fr 1fr;
    column-gap:10px
  }
  .evolution-card-top {
    grid-column:1/-1;
    font-size:9px
  }
  .evolution-grid h3 {
    grid-column:1/-1;
    min-height:0;
    font-size:27px;
    margin-top:20px
  }
  .evolution-diagram {
    height:130px;
    grid-column:2;
    grid-row:3;
    gap:11px
  }
  .evolution-grid article>p {
    font-size:11px;
    grid-column:1;
    grid-row:3;
    align-self:center;
    margin:15px 0;
    line-height:1.85
  }
  .evolution-score {
    grid-column:1/-1;
    flex-direction:row;
    gap:10px;
    font-size:10px;
    padding-top:16px;
    margin-top:10px
  }
  .evolution-diagram>small {
    font-size:7px
  }
  .evolution-chart-wrap {
    grid-template-columns:1fr;
    gap:18px;
    padding:25px;
    margin-top:22px
  }
  .evolution-chart-wrap h3 {
    font-size:29px
  }
  .evolution-chart-wrap p {
    font-size:12px
  }
  .evolution-bar-row {
    font-size:10px;
    grid-template-columns:95px 1fr 40px
  }
  .materials-section h2 {
    font-size:43px
  }
  .materials-section>div>p {
    font-size:11px
  }
  .resource-grid {
    gap:10px;
    margin-top:28px
  }
  .resource-grid>a {
    padding:22px 16px 20px
  }
  .resource-grid h3 {
    font-size:23px;
    line-height:1.15
  }
  .resource-grid p {
    font-size:10px;
    line-height:1.7
  }
  .resource-grid a>span:last-child {
    font-size:7px
  }
  .resource-icon {
    font-size:24px;
    margin-bottom:20px
  }
  .extra-resources {
    gap:12px 18px;
    font-size:9px;
    margin-top:24px
  }
  footer {
    padding-block:25px
  }
}
@media(prefers-reduced-motion:reduce) {
  html {
    scroll-behavior:auto
  }
  *,*:before,*:after {
    animation:none!important;
    transition:none!important
  }
}
@media print {
  .site-header,.hero-actions,.playback-controls,.story-tabs,.segmented,.extra-resources {
    display:none
  }
  .container {
    width:100%;
    max-width:none
  }
  .section {
    padding-block:30px
  }
  .hero {
    min-height:0
  }
  .section-heading {
    break-after:avoid
  }
  .chart-card,.experiment-panel,.evolution-grid article {
    break-inside:avoid
  }
  body {
    background:white
  }
  .site-header {
    position:static
  }
  details:not([open])>summary:after {
    content:' (see website for details)';
    font-size:9px
  }
}

.chart-model-row {
  min-height:49px
}
.chart-model-label {
  font-size:12px
}
.chart-lane {
  height:11px
}
.chart-lane+.chart-lane {
  margin-top:3px
}
.chart-bar {
  height:7px
}
.chart-bar-number {
  font-size:9px
}
.chart-axis {
  font-size:9px
}
.chart-legend {
  font-size:10px
}
.chart-model-row.single {
  min-height:39px
}
.single .chart-bar-number {
  font-size:11px
}
.chart-downloads {
  display:flex;
  gap:17px
}
.figure-download {
  display:flex;
  gap:16px;
  justify-content:flex-end;
  margin-top:15px;
  font-size:10px;
  color:var(--teal)
}
.evolution-eval-note {
  display:flex;
  align-items:flex-start;
  gap:30px;
  justify-content:space-between;
  margin:17px 3px 0;
  font-size:9px
}
.evolution-eval-note p {
  max-width:700px
}
.evolution-eval-note a {
  white-space:nowrap;
  color:var(--teal)
}
@media(max-width:800px) {
  .chart-model-label {
    font-size:10px
  }
  .chart-bar-number {
    font-size:8px
  }
  .chart-legend {
    font-size:9px
  }
  .chart-model-row {
    min-height:46px
  }
  .evolution-eval-note {
    flex-direction:column;
    gap:9px
  }
}
@media(max-width:560px) {
  .chart-model-label {
    font-size:9px
  }
  .chart-bar-number {
    font-size:8px
  }
  .chart-axis {
    font-size:8px
  }
  .chart-legend {
    font-size:8px
  }
  .model-chart {
    --label-width:111px
  }
  .chart-model-row {
    min-height:46px
  }
  .chart-downloads {
    gap:19px
  }
  .figure-download {
    font-size:9px
  }
  .evolution-eval-note {
    font-size:8px
  }
}
@media(max-width:560px) {
  .hero-art {
    overflow:clip
  }
}

@media (max-width: 1100px) {
  .hero-art { overflow: clip; }
  .hero-art > img { width: 100%; max-width: 100%; }
}
@media (max-width: 560px) {
  .hero-art > img { width: auto; }
}
@media (max-width: 360px) {
  .discovery-highlight { gap: 16px; padding: 22px 18px; }
  .ring { width: 96px; height: 96px; }
  .discovery-highlight h3 { font-size: 22px; }
}


/* assets/motion.css */

:root { --paper:#f8f9f6; --ink:#233d3b; --muted:#647870; --line:#dce4dc; --teal:#32796d; }
body { background:var(--paper); }
::selection { background:#cfe4d7; color:#243e37; }
.container { max-width:1240px; }
.site-header { background:#f8f9f6eb; }
.nav-wrap { max-width:1380px; height:78px; }
.site-header nav { gap:32px; }
.site-header nav a { position:relative; }
.site-header nav a::after { content:''; position:absolute; height:2px; background:var(--teal); left:0; right:100%; bottom:-27px; transition:right .2s; }
.site-header nav a.active::after { right:0; }
.hero { grid-template-columns:1fr 1.07fr; gap:54px; padding-block:72px 62px; min-height:690px; }
.hero .eyebrow { font-size:9px; letter-spacing:.13em; margin-bottom:34px; }
.eyebrow-divider { opacity:.4; margin-inline:2px; }
.hero h1 { font-size:clamp(45px,4.65vw,69px); letter-spacing:-.045em; line-height:1.055; }
.hero h1 em { display:inline-block; padding-top:5px; }
.paper-title { margin-top:28px; font-size:17px; color:var(--ink); font-weight:500; line-height:1.65; letter-spacing:-.025em; }
.hero-explanation { font-size:14px; line-height:1.9; margin-top:17px; max-width:none; }
.hero-actions { margin-top:30px; gap:12px; }
.button { padding:14px 19px; font-size:12px; border-radius:7px; }
.button.primary { background:#2c584c; box-shadow:0 3px 6px #2347330d; }
.button-duration { border-left:1px solid #ffffff38; margin-left:2px; padding-left:10px; opacity:.7; font-size:10px; }
.hero-authors { margin-top:22px; font-size:10px; gap:10px; }
.paper-hero-art { position:relative; min-width:0; margin:-34px -10px -18px; align-self:stretch; display:flex; align-items:center; }
.paper-hero-art img { width:100%; filter:drop-shadow(0 20px 25px #25495008); }
.paper-figure-index { position:absolute; top:17px; right:17px; font-size:8px; color:#8ca5aa; letter-spacing:.14em; }
.paper-hero-art figcaption { position:absolute; left:10px; bottom:0; padding:10px 16px; border-left:1px solid #b9cfca; background:#f8f9f6b5; }
.paper-hero-art figcaption>span { font-size:13px; color:var(--ink); }
.paper-hero-art figcaption>p { margin-top:4px; font-size:10px; line-height:1.8; }
.motion-hero { position:relative; min-width:0; border:1px solid #d3dfd2; border-radius:15px; background:linear-gradient(140deg,#fff 0%,#eff4ed 78%); box-shadow:0 22px 60px -30px #355c4024,0 1px 3px #294a3204; overflow:hidden; }
.motion-overline { display:flex; justify-content:space-between; align-items:center; padding:21px 25px 0; font-size:8px; letter-spacing:.13em; color:#6b8372; gap:12px; }
.motion-overline>span:first-child { display:flex; align-items:center; gap:7px; }
.motion-overline i { width:5px; height:5px; background:#6f9c74; border-radius:50%; }
.motion-artboard { margin:-5px -4px -27px; }
.motion-artboard svg { width:100%; aspect-ratio:640/440; }
.motion-caption { padding:0 25px 21px; display:flex; gap:15px; align-items:center; min-height:133px; }
.motion-caption>div { flex:1; min-width:0; }
.motion-caption>div>span { font-size:8px; letter-spacing:.11em; color:#6c8779; }
.motion-caption h2 { font-size:28px; letter-spacing:-.025em; line-height:1.1; margin-top:8px; }
.motion-caption p { font-size:10px; line-height:1.7; margin-top:9px; min-height:34px; max-width:430px; }
.round-control { border:1px solid #d7e1d8; background:#ffffff80; border-radius:50%; width:36px; height:36px; display:inline-flex; align-items:center; justify-content:center; flex:none; font-size:15px; line-height:1; transition:background .2s; }
.round-control:hover { background:#e7eee5; }
.round-control svg,.text-button svg { width:15px; height:15px; }
.motion-selector { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:0; border-top:1px solid #dce5d9; background:#ffffff55; }
.motion-selector button,.presentation-chapters button { position:relative; overflow:hidden; display:flex; gap:8px; align-items:center; padding:14px 17px; font-size:11px; color:#87938a; text-align:left; border-right:1px solid #e0e7dc; }
.motion-selector button>span,.presentation-chapters button>span { font-size:8px; color:#94a396; }
.motion-selector button[aria-pressed=true],.presentation-chapters button[aria-pressed=true] { color:#316d59; background:#edf3e9; }
.motion-selector button>i,.presentation-chapters button>i { position:absolute; bottom:0; left:0; width:var(--progress,0%); height:2px; background:#769b73; }
.motion-selector button:last-child { border-right:0; }
.motion-selector button { min-height:60px; line-height:1.5; }
.presentation-chapters button { min-height:65px; line-height:1.5; }
.motion-footnote { display:flex; justify-content:space-between; align-items:center; gap:10px; padding:12px 20px; background:#f6f8f2; border-top:1px solid #e0e7dc; font-size:8px; color:#789080; }
.motion-footnote button { font-size:9px; color:#426b55; padding:2px 0; }
.motion-footnote button span { margin-left:9px; }
.stats-strip { padding-block:27px; }
.stat-label { font-size:12px; }
.stat-label small { font-size:9px; margin-top:2px; }
.section { padding-block:104px; }
.section-heading>p { font-size:14px; max-width:400px; }
.section-heading { gap:68px; margin-bottom:34px; }
.section-heading h2 { font-size:clamp(39px,4.1vw,58px); }
.reading-cue { display:flex; justify-content:space-between; gap:20px; align-items:center; padding-bottom:23px; margin-bottom:60px; border-bottom:1px solid var(--line); color:#8b9a8e; font-size:10px; }
.reading-cue>span:first-child { font-size:8px; letter-spacing:.16em; }
.reading-cue>span:last-child { margin-left:auto; font-size:20px; }
.reading-cue>span:nth-child(2) { margin-left:auto; }
.success-picker button { background:#fff9; padding:19px 20px; border-radius:8px; }
.success-picker button>strong { font-size:14px; }
.success-picker button>span { font-size:9px; }
.discovery-workbench { box-shadow:0 12px 38px -28px #28453044; border-color:#d6e1d7; border-radius:13px; }
.discovery-title h3 { font-size:35px; }
.discovery-title p { font-size:14px; }
.lab-readout { font-size:12px; }
.success-evidence>p { font-size:12px; }
.success-chapters button { font-size:10px; min-height:57px; }
.discovery-conclusion p { font-size:14px; }
.success-selection-note { font-size:11px; }
.framework-section { background:#eef3ed; }
.cycle-step p { font-size:13px; }
.cycle-explainer p { font-size:12px; }
.results-section { background:#edf2ed; }
.evolution-section { background:#eef3ed; }
.chart-card { box-shadow:0 10px 30px -25px #2543303b; }
.motion-download-banner { display:flex; align-items:center; justify-content:space-between; gap:25px; margin-top:32px; border:1px solid #d2dfd0; padding:30px 34px; background:#edf3e8; border-radius:10px; }
.motion-download-banner h3 { font:34px var(--serif); margin-top:9px; }
.motion-download-banner p { margin-top:7px; font-size:12px; }
.motion-download-banner>div:last-child { display:flex; gap:10px; flex-wrap:wrap; }
.question-comparison { display:grid; grid-template-columns:1fr 1fr; gap:22px; margin-top:28px; }
.question-comparison article { border:1px solid var(--line); border-radius:9px; overflow:hidden; background:#fff; }
.question-model { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:18px 22px; }
.question-model>span { font-size:14px; font-weight:500; }
.question-model small { font-size:8px; letter-spacing:.08em; color:var(--teal); }
.question-comparison article:nth-child(2) .question-model small { color:#a18569; }
.question-video { position:relative; background:#e3e8e5; }
.question-video video { width:100%; aspect-ratio:1000/620; object-fit:contain; }
.question-video>span { position:absolute; left:15px; top:14px; font-size:7px; letter-spacing:.07em; border-radius:4px; padding:5px 8px; color:#557465; background:#f5faf1dd; pointer-events:none; }
.question-narrative { padding:18px 23px 22px; }
.question-narrative ol { padding-left:19px; margin:0; color:var(--muted); font-size:12px; line-height:1.9; }
.question-narrative li { padding-left:3px; margin-block:6px; }
.question-narrative li::marker { color:#9db18e; font-size:10px; }
.question-narrative strong { font-weight:500; color:var(--ink); }
.question-narrative .case-note { margin-top:18px; }
.case-tabs button { flex:1; }
body.presentation-open { overflow:hidden; }
#motion-dialog { max-width:1320px; width:calc(100% - 56px); max-height:calc(100dvh - 56px); padding:0; border:1px solid #dce5da; border-radius:14px; background:#f9faf6; color:var(--ink); box-shadow:0 40px 120px #102c344d; }
#motion-dialog::backdrop { background:#142d37b8; backdrop-filter:blur(10px); }
.presentation-shell { width:100%; }
.presentation-header { padding:19px 25px; border-bottom:1px solid #dce4d6; display:flex; justify-content:space-between; align-items:center; gap:20px; }
.presentation-header .wordmark { font-size:21px; }
.presentation-header>span { font-size:9px; color:#789080; letter-spacing:.13em; }
.presentation-header>span i { margin-inline:13px; font-style:normal; opacity:.5; }
.presentation-header .round-control { width:31px; height:31px; font-size:24px; }
.presentation-body { display:grid; grid-template-columns:1.5fr 1fr; min-height:0; }
.presentation-visual { position:relative; background:radial-gradient(ellipse at 42% 35%,#fff,#eff4e9); border-right:1px solid #dce4d6; display:flex; align-items:center; flex-direction:column; justify-content:center; min-width:0; }
.presentation-visual svg { max-height:calc(100dvh - 260px); width:100%; min-height:250px; }
.presentation-figure-label { width:100%; display:flex; justify-content:space-between; padding:22px 27px 0; font-size:8px; letter-spacing:.11em; color:#78917d; gap:20px; }
.presentation-visual-note { font-size:9px; color:#7e9280; padding:0 22px 20px; text-align:center; }
.presentation-copy { padding:39px 37px 24px; display:flex; flex-direction:column; }
.presentation-copy .eyebrow { font-size:9px; }
.presentation-copy h2 { font-size:clamp(30px,3.3vw,49px); margin-top:20px; line-height:1.06; letter-spacing:-.035em; }
.presentation-copy>p { font-size:13px; margin-top:19px; line-height:1.9; }
.presentation-insight { margin-top:25px; border-top:1px solid #e0e6da; padding-top:22px; min-height:125px; }
.presentation-insight>span { font-size:8px; letter-spacing:.12em; color:#7e997a; }
.presentation-insight>p { color:#3d5f4a; font-size:15px; line-height:1.65; margin-top:9px; }
.presentation-equation { font-size:12px; padding:13px 16px; background:#edf3e7; color:#527247; border:1px solid #e0e8d7; border-radius:6px; margin-top:auto; }
#presentation-evidence { display:flex; align-items:center; justify-content:space-between; padding:19px 0 0; font-size:11px; color:#55734e; text-align:left; }
.presentation-bottom { border-top:1px solid #dce4d6; }
.presentation-chapters { display:grid; grid-template-columns:repeat(4,1fr); border-bottom:1px solid #dce4d6; }
.presentation-chapters button { padding:16px 25px; font-size:12px; }
.presentation-chapters button>span { font-size:9px; }
.presentation-controls { display:flex; align-items:center; padding:14px 23px; gap:12px; }
.presentation-controls input { flex:1; min-width:30px; accent-color:#6f9570; cursor:pointer; }
.presentation-controls>span { font-size:10px; color:#82917c; font-variant-numeric:tabular-nums; min-width:80px; }
.presentation-controls .round-control { width:31px; height:31px; font-size:13px; }
.presentation-credit { display:flex; justify-content:space-between; gap:20px; font-size:8px; color:#85947f; padding:0 25px 15px; }
#motion-dialog:fullscreen { width:100%; height:100%; max-width:none; max-height:none; border:0; border-radius:0; display:flex; align-items:center; }
.motion-export> :not(#motion-dialog) { display:none!important; }
.motion-export #motion-dialog { inset:0; margin:0; width:100vw; height:100vh; max-width:none; max-height:none; border:0; border-radius:0; }
.motion-export .presentation-shell { height:100vh; display:flex; flex-direction:column; }
.motion-export .presentation-body { flex:1; grid-template-columns:1.58fr 1fr; overflow:hidden; }
.motion-export .presentation-header { height:68px; padding-inline:30px; }
.motion-export .presentation-header>.round-control,.motion-export .presentation-controls,.motion-export #presentation-evidence { display:none; }
.motion-export .presentation-copy { padding:34px 35px; }
.motion-export .presentation-copy h2 { font-size:46px; }
.motion-export .presentation-visual svg { max-height:460px; }
.motion-export .presentation-credit { padding-top:13px; }
.motion-export .presentation-insight { margin-top:25px; min-height:140px; }
.motion-export .presentation-chapters button { padding-block:17px; }
@media(min-width:1600px) { .hero { padding-block:88px; } }
@media(max-width:1100px) {
  .hero { gap:30px; padding-block:60px; min-height:0; }
  .hero h1 { font-size:clamp(40px,5.1vw,60px); }
  .hero .eyebrow { font-size:8px; margin-bottom:26px; }
  .paper-title { font-size:14px; }
  .hero-explanation { font-size:12px; }
  .hero-actions .button { font-size:10px; padding:12px 15px; }
  .button-duration { display:none; }
  .hero-authors { font-size:8px; }
  .motion-caption { min-height:133px; padding-inline:20px; }
  .motion-caption h2 { font-size:24px; }
  .motion-selector button { padding:13px 11px; font-size:10px; gap:6px; }
  .presentation-copy { padding:27px; }
  .presentation-copy h2 { font-size:37px; }
  .presentation-insight>p { font-size:13px; }
  .stat-label { font-size:10px; }
  .stat-label small { font-size:8px; }
}
@media(max-width:800px) {
  .paper-hero-art { margin:-20px auto 0; max-width:620px; width:100%; min-height:420px; }
  .container { width:calc(100% - 48px); }
  .hero { grid-template-columns:1fr; gap:37px; padding-top:48px; padding-bottom:36px; }
  .hero-copy { max-width:620px; }
  .hero h1 { font-size:clamp(46px,8vw,66px); }
  .hero .eyebrow { font-size:9px; margin-bottom:27px; }
  .paper-title { font-size:17px; margin-top:23px; }
  .hero-explanation { font-size:14px; }
  .hero-actions .button { font-size:12px; padding:13px 18px; }
  .hero-authors { font-size:10px; }
  .motion-hero { max-width:640px; width:100%; margin:auto; }
  .motion-caption { min-height:120px; }
  .motion-caption h2 { font-size:28px; }
  .section { padding-block:65px; }
  .section-heading { gap:25px; }
  .section-heading>p { font-size:13px; }
  .section-heading h2 { font-size:43px; }
  .reading-cue { margin-bottom:39px; }
  .success-picker button { padding:13px; }
  .success-picker button>span { font-size:8px; }
  .success-picker button>strong { font-size:12px; }
  .motion-download-banner { padding:25px; align-items:flex-start; flex-direction:column; }
  #motion-dialog { width:calc(100% - 24px); max-height:calc(100dvh - 24px); }
  .presentation-body { grid-template-columns:1fr; }
  .presentation-visual { border-right:0; border-bottom:1px solid #dce4d6; }
  .presentation-visual svg { max-height:340px; min-height:180px; }
  .presentation-copy { padding:23px; }
  .presentation-copy h2 { font-size:34px; margin-top:12px; }
  .presentation-copy>p { margin-top:12px; }
  .presentation-insight { margin-top:17px; min-height:95px; padding-top:16px; }
  .presentation-equation { margin-top:14px; }
  .presentation-header>span { font-size:7px; letter-spacing:.06em; }
  .presentation-header { padding:15px 20px; gap:10px; }
  .presentation-header>span i { margin:0 4px; }
  .presentation-chapters button { padding:13px 12px; font-size:11px; }
  .presentation-credit>span:last-child { display:none; }
  .presentation-controls { padding:14px; gap:9px; }
}
@media(max-width:560px) {
  .paper-hero-art { min-height:320px; margin-top:-8px; padding-bottom:25px; }
  .paper-figure-index { top:3px; right:8px; font-size:6px; }
  .paper-hero-art figcaption { bottom:0; left:0; padding:7px 10px; }
  .paper-hero-art figcaption>span { font-size:10px; }
  .paper-hero-art figcaption>p { font-size:8px; }
  .case-tabs button { width:33.333%; font-size:9px; line-height:1.6; padding:11px 7px; }
  .case-tabs button>span { display:none; }
  .question-comparison { grid-template-columns:1fr; gap:16px; }
  .question-model { padding:15px 18px; }
  .question-model>span { font-size:13px; }
  .question-model small { font-size:7px; }
  .question-narrative { padding:16px 19px 20px; }
  .nav-wrap { width:calc(100% - 36px); height:64px; }
  .site-header nav { display:none; }
  .nav-paper { font-size:10px; padding:7px 10px; gap:12px; }
  .container { width:calc(100% - 36px); }
  .hero { padding-top:39px; gap:29px; }
  .hero h1 { font-size:clamp(39px,10.6vw,59px); }
  .hero .eyebrow { font-size:7px; gap:6px; letter-spacing:.1em; margin-bottom:23px; }
  .paper-title { font-size:14px; margin-top:19px; }
  .desktop-break { display:none; }
  .hero-explanation { font-size:12px; margin-top:15px; }
  .hero-actions { gap:8px; margin-top:24px; }
  .hero-actions .button { font-size:10px; padding:13px 15px; }
  .hero-authors { font-size:8px; margin-top:17px; gap:7px; }
  .motion-overline { padding:19px 18px 0; font-size:7px; }
  .motion-artboard { margin-bottom:-11px; }
  .motion-caption { padding:0 18px 17px; min-height:132px; }
  .motion-caption h2 { font-size:24px; }
  .motion-caption p { font-size:10px; min-height:51px; }
  .motion-caption>div>span { font-size:7px; }
  .round-control { width:31px; height:31px; }
  .motion-footnote { padding:10px 14px; font-size:7px; gap:7px; }
  .motion-footnote button { font-size:8px; }
  .motion-footnote button span { margin-left:1px; }
  .motion-selector button { font-size:9px; padding:12px 10px; gap:5px; }
  .motion-selector button>span { font-size:7px; }
  .stats-strip { gap:22px 15px; padding-block:23px; }
  .stat-label { font-size:10px; }
  .stat-label small { font-size:8px; }
  .section { padding-block:54px; }
  .section-heading h2 { font-size:37px; }
  .section-heading>p { font-size:12px; }
  .reading-cue { gap:10px; font-size:9px; }
  .reading-cue>span:first-child { font-size:7px; }
  .reading-cue>span:nth-child(2) { max-width:145px; text-align:right; }
  .success-picker button>strong { font-size:11px; }
  .success-picker button>span { font-size:7px; }
  .discovery-title h3 { font-size:29px; }
  .discovery-title p { font-size:12px; }
  .lab-readout,.success-evidence>p { font-size:11px; }
  .discovery-conclusion p { font-size:12px; }
  .motion-download-banner h3 { font-size:29px; }
  .motion-download-banner .button { font-size:11px; padding:12px 16px; }
  .presentation-header>span { max-width:120px; text-align:center; line-height:1.6; }
  .presentation-header .wordmark { font-size:17px; }
  .presentation-header img { width:23px; height:23px; }
  .presentation-figure-label { font-size:6px; padding:18px 18px 0; }
  .presentation-visual-note { font-size:8px; padding:0 18px 15px; }
  .presentation-copy h2 { font-size:32px; }
  .presentation-copy>p { font-size:12px; }
  .presentation-copy .eyebrow { font-size:8px; }
  .presentation-controls .round-control { width:28px; height:28px; }
  .presentation-controls>span { font-size:8px; min-width:61px; }
  .presentation-chapters button { font-size:9px; gap:5px; padding-inline:10px; }
  .presentation-chapters button>span { font-size:7px; }
  .presentation-credit { font-size:7px; padding-inline:18px; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
@media print { .motion-hero button,.motion-download-banner,.reading-cue,dialog { display:none!important; } }


/* assets/atlas.css */
.atlas-section { padding-top:83px; }
.atlas-toolbar { display:flex; align-items:center; justify-content:space-between; gap:20px; margin:8px 0 17px; }
.atlas-toolbar>span { display:flex; align-items:center; gap:7px; font-size:8px; letter-spacing:.14em; color:#879581; }
.atlas-toolbar i { width:5px; height:5px; border-radius:50%; background:#9dab85; }
.atlas-toolbar button { display:flex; align-items:center; background:#eaf0e3; border:1px solid #d4dfcb; border-radius:5px; padding:8px 13px; font-size:10px; color:#59764b; }
.atlas-toolbar button[aria-pressed=true] { background:#dbe8ce; }
.atlas-section .scene-picker { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:8px; background:none; border:0; padding:0; margin-bottom:23px; max-height:none; overflow:visible; }
.atlas-section .scene-picker button { display:flex; align-items:center; gap:10px; border:1px solid #dde5d9; border-radius:7px; padding:8px; text-align:left; min-width:0; background:#fff8; transition:border-color .18s,background .18s; box-shadow:none; min-height:74px; }
.atlas-section .scene-picker button:hover { background:#edf2e8; border-color:#b3c7a5; }
.atlas-section .scene-picker button[aria-selected=true] { background:#eaf2e1; border-color:#98b185; box-shadow:inset 0 0 0 1px #c9dbba; }
.atlas-section .scene-picker img { width:64px; height:54px; object-fit:cover; border-radius:4px; mix-blend-mode:multiply; }
.atlas-section .scene-picker button>span { color:inherit; font-size:inherit; margin:0; }
.atlas-tile-copy { flex:1; min-width:0; }
.atlas-tile-copy>span { display:flex; align-items:center; gap:7px; font-size:9px; color:#84947c; }
.atlas-tile-copy i { font-size:7px; font-style:normal; color:#8e9a88; }
.atlas-tile-copy strong { font-weight:500; display:block; font-size:11px; line-height:1.5; margin-top:4px; color:#53694b; }
.atlas-detail { display:block; border:1px solid #d5e1cd; border-radius:11px; background:#fff; overflow:hidden; box-shadow:0 18px 45px -30px #2c4e2e30; }
.atlas-topline { display:flex; justify-content:space-between; align-items:center; border-bottom:1px solid #dce6d5; padding:15px 22px; gap:18px; background:#fcfdfb; }
.atlas-topline .world-meta { margin:0; gap:16px; display:flex; align-items:center; }
.atlas-topline .world-meta>span:first-child { font-size:9px; letter-spacing:.09em; color:#647e57; }
.atlas-topline .category-tag { font-size:8px; border-color:#dce6d5; background:#f1f5ed; color:#8a9b7c; }
.atlas-view-switch { display:flex; gap:2px; padding:3px; background:#eef2e9; border:1px solid #e5ebdd; border-radius:6px; }
.atlas-view-switch button { padding:5px 11px; border-radius:4px; font-size:9px; color:#8b9a7f; }
.atlas-view-switch button[aria-pressed=true] { background:#fff; color:#547446; box-shadow:0 1px 4px #33442510; }
.atlas-body { display:grid; grid-template-columns:1.55fr 1fr; }
.atlas-visual { min-width:0; background:radial-gradient(ellipse at 45% 25%,#fff,#edf3e7); border-right:1px solid #dce6d5; display:flex; flex-direction:column; }
#atlas-motion-view { position:relative; flex:1; display:flex; flex-direction:column; justify-content:center; }
#atlas-canvas { width:100%; aspect-ratio:640/440; max-height:445px; }
.atlas-scene-readout { position:absolute; left:27px; bottom:22px; display:flex; flex-direction:column; gap:5px; pointer-events:none; }
.atlas-scene-readout>span { font-size:8px; letter-spacing:.09em; color:#68835a; }
.atlas-scene-readout>strong { font-weight:400; font-family:var(--serif); font-size:24px; color:#547947; letter-spacing:-.02em; line-height:1.2; }
.atlas-illustration-label { position:absolute; top:17px; left:24px; font-size:7px; letter-spacing:.1em; color:#a1ae96; }
.atlas-playback { display:flex; align-items:center; padding:15px 20px; gap:10px; border-top:1px solid #dce6d5; background:#f8faf4; }
.atlas-playback .round-control { width:31px; height:31px; font-size:13px; }
.atlas-playback input { min-width:30px; flex:1; accent-color:#809c68; cursor:pointer; }
.atlas-playback>span { font-size:9px; color:#8c9b7f; font-variant-numeric:tabular-nums; min-width:65px; text-align:right; }
.atlas-copy { padding:30px 30px 20px; }
.atlas-copy h3 { font-family:var(--serif); font-size:35px; font-weight:400; letter-spacing:-.03em; line-height:1.1; margin:0; }
.atlas-copy>p { font-size:13px; line-height:1.8; margin-top:12px; min-height:0; }
.atlas-trigger { margin-top:23px; }
.atlas-trigger>span,.atlas-observation>span { font-size:8px; letter-spacing:.13em; color:#8b9c7c; }
.atlas-trigger>p { font-size:12px; color:#566e4d; line-height:1.8; margin-top:6px; }
.atlas-controls { margin-top:17px; padding:14px 16px; background:#f3f6ed; border:1px solid #e1e8d8; border-radius:6px; }
.atlas-controls>label { display:block; font-size:9px; color:#768c65; margin-bottom:8px; }
.atlas-controls select { font:12px var(--sans); color:#526d44; background:white; border:1px solid #d5e0c9; border-radius:4px; padding:7px 9px; width:100%; max-width:100%; }
.atlas-range { display:flex; align-items:center; gap:14px; }
.atlas-range input { min-width:30px; flex:1; width:50%; accent-color:#7f9d65; cursor:pointer; }
.atlas-range output { font-size:10px; color:#6d855b; white-space:nowrap; min-width:65px; text-align:right; }
.atlas-observation { margin-top:19px; min-height:105px; }
.atlas-observation p { font-size:12px; margin-top:6px; line-height:1.8; color:#566e4d; }
.atlas-copy .world-law { margin-top:17px; border-top:1px solid #e3e9db; padding-top:13px; }
.atlas-copy .world-law summary { font-size:10px; }
.atlas-copy .world-law>p { font-size:11px; }
#atlas-evidence { display:block; font-size:10px; color:#6b8954; margin-top:16px; }
.atlas-bottomline { display:flex; align-items:center; justify-content:space-between; gap:30px; padding:16px 23px; border-top:1px solid #dce6d5; background:#f8faf5; }
.atlas-bottomline>p { font-size:9px; color:#8a9a7c; line-height:1.8; max-width:780px; }
.atlas-bottomline>div { display:flex; align-items:center; gap:15px; white-space:nowrap; }
.atlas-bottomline button { font-size:17px; padding:0 6px; color:#648751; }
.atlas-bottomline span { font-size:9px; color:#9aaa8b; font-variant-numeric:tabular-nums; }
.atlas-downloads { display:flex; flex-wrap:wrap; justify-content:flex-end; align-items:center; gap:12px 22px; font-size:10px; margin-top:17px; color:#6b845b; }
.atlas-downloads>span { margin-right:auto; color:#8f9e84; font-size:9px; max-width:665px; }
#atlas-initial-view { flex:1; background:#edf2e7; position:relative; min-height:400px; display:flex; align-items:center; }
#atlas-initial-view img { width:100%; height:auto; min-height:0; max-height:480px; object-fit:contain; }
#atlas-initial-view .image-label { top:19px; bottom:auto; left:24px; font-size:8px; }
.atlas-detail[data-view=physics] .atlas-controls { display:none; }
.atlas-detail[data-view=physics] .atlas-copy { display:flex; flex-direction:column; }
.atlas-detail[data-view=physics] .atlas-observation { margin-top:28px; }
.atlas-detail[data-view=physics] .world-law { margin-top:auto; }
.oracle-panel { margin-top:22px; border:1px solid #bfd3b3; border-radius:8px; background:#eff5e8; padding:18px 20px; }
.oracle-panel-label { display:flex; flex-wrap:wrap; gap:5px 12px; justify-content:space-between; font-size:7px; letter-spacing:.08em; color:#63814d; }
#oracle-status { font-size:7px; color:#8b9e79; letter-spacing:0; }
#oracle-formula { font-family:var(--serif); font-size:24px; color:#335a2d; line-height:1.3; margin:14px 0 17px; overflow-wrap:anywhere; }
#oracle-formula { font-family:'Oracle Math',var(--sans); font-size:19px; line-height:1.5; }
.oracle-rule { display:grid; grid-template-columns:40px 1fr; gap:6px; margin-top:10px; }
.oracle-rule>span { font-size:8px; color:#84a36b; letter-spacing:.08em; padding-top:3px; }
.oracle-rule>p { font-size:12px; color:#46633b; line-height:1.7; }
#oracle-scope { border-top:1px solid #d9e5d0; font-size:10px; color:#849575; margin-top:14px; padding-top:12px; line-height:1.8; }
.oracle-chapters { display:grid; grid-template-columns:repeat(3,1fr); border-bottom:1px solid #dbe5d1; background:#fbfcf8; }
.oracle-chapters button { text-align:left; color:#829a6b; padding:12px 16px; border-right:1px solid #e4ebdd; font-size:10px; line-height:1.5; }
.oracle-chapters button[aria-pressed=true] { color:#3c6c32; background:#e9f2df; box-shadow:inset 0 -2px #8cac6d; }
.oracle-chapters button small { display:block; font-size:7px; color:#99aa89; margin-bottom:4px; }
.oracle-chart { padding:17px 22px 0; border-bottom:1px solid #dce6d5; background:#f8fbf4; }
.oracle-chart>div { display:flex; justify-content:space-between; gap:15px; align-items:center; font-size:10px; color:#63814d; }
#oracle-chart-legend { font-size:8px; color:#94a485; }
#oracle-chart { width:100%; max-height:175px; font-family:var(--sans); }
.atlas-detail[data-view=physics] .atlas-observation { min-height:0; margin-bottom:23px; }
.atlas-detail[data-view=physics] .atlas-trigger { margin-top:21px; }
#atlas-physics-view { display:flex; flex-direction:column; flex:1; min-height:0; background:#f4f7ef; }
.physics-video-frame { position:relative; background:#e3e9e4; }
.physics-video-frame video { width:100%; aspect-ratio:960/600; object-fit:contain; }
.physics-video-frame.is-oracle { aspect-ratio:900/630; overflow:hidden; }
.physics-video-frame.is-oracle video { position:absolute; width:166.6667%; height:142.8571%; left:-2.2222%; top:-14.2857%; max-width:none; aspect-ratio:auto; object-fit:fill; }
.physics-video-frame.is-oracle:fullscreen { aspect-ratio:auto; }
.physics-video-frame.is-oracle:fullscreen video { position:static; width:100%; height:100%; left:auto; top:auto; object-fit:contain; }
.oracle-overlay { position:static; padding:13px 22px; border-top:1px solid #cfdfd6; background:#f5faf3; }
.oracle-overlay>span { font-size:7px; color:#91a085; letter-spacing:.1em; display:block; }
.oracle-overlay>strong { display:block; font-size:13px; font-weight:500; color:#5a764c; line-height:1.5; margin-top:4px; }
.oracle-overlay[data-active=true] { border-color:#a7c695; background:#f0f8e9ed; }
.physics-video-frame:fullscreen .oracle-overlay { display:none; }
.physics-video-frame:fullscreen { display:grid; place-items:center; background:#142319; }
.physics-video-frame:fullscreen video { height:100%; max-height:100vh; }
.physics-playback { display:flex; gap:10px; padding:14px 19px; align-items:center; border-bottom:1px solid #dce6d5; background:#f8faf4; }
.physics-playback .round-control { width:31px; height:31px; font-size:13px; }
.physics-playback input { flex:1; min-width:20px; accent-color:#789569; cursor:pointer; }
.physics-playback>span { font-size:9px; white-space:nowrap; color:#7d9270; font-variant-numeric:tabular-nums; }
.physics-readout { padding:16px 23px 13px; }
.physics-readout>span { display:block; color:#98a68c; font-size:7px; letter-spacing:.12em; margin-bottom:10px; }
#physics-values { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
#physics-values>div { display:flex; flex-direction:column; gap:4px; }
#physics-values span { font-size:9px; color:#8c9b7e; }
#physics-values strong { font-family:var(--serif); font-size:23px; color:#5f7d4d; line-height:1.3; font-weight:400; }
#physics-values strong { font-family:'Newsreader','Oracle Math',Georgia,serif; }
.physics-downloads { flex-wrap:wrap; }
.physics-downloads { display:flex; gap:20px; padding:0 23px 17px; color:#779365; font-size:9px; }
#physics-error { position:absolute; inset:0; display:grid; place-items:center; padding:35px; font-size:14px; text-align:center; background:#f2f6ec; }
.atlas-export .site-header,.atlas-export .hero,.atlas-export .stats-strip,.atlas-export #worlds~*,.atlas-export .atlas-section>.section-heading,.atlas-export .atlas-toolbar,.atlas-export .scene-picker,.atlas-export .atlas-downloads,.atlas-export .atlas-copy .world-law,.atlas-export #atlas-evidence,.atlas-export footer,.atlas-export .atlas-playback,.atlas-export .atlas-view-switch,.atlas-export .atlas-bottomline>div { display:none!important; }
.atlas-export .atlas-section { padding:0; margin:0; width:100vw; height:100vh; max-width:none; }
.atlas-export .atlas-detail { border-radius:0; border:0; height:100vh; display:flex; flex-direction:column; }
.atlas-export .atlas-topline { padding:24px 32px; }
.atlas-export .atlas-topline::after { content:'LongChang / Fifteen worlds of discovery'; color:#789469; font-size:12px; }
.atlas-export .atlas-body { flex:1; grid-template-columns:1.6fr 1fr; min-height:0; }
.atlas-export .atlas-visual { justify-content:center; }
.atlas-export #atlas-canvas { max-height:510px; }
.atlas-export .atlas-copy { padding:42px 35px; }
.atlas-export .atlas-copy h3 { font-size:44px; }
.atlas-export .oracle-panel { display:none; }
.atlas-export .atlas-copy>p { font-size:16px; }
.atlas-export .atlas-trigger { margin-top:31px; }
.atlas-export .atlas-trigger>p,.atlas-export .atlas-observation>p { font-size:14px; }
.atlas-export .atlas-controls { margin-top:25px; }
.atlas-export .atlas-observation { margin-top:25px; }
.atlas-export .atlas-bottomline { padding:17px 32px; }
.atlas-export .atlas-bottomline>p { max-width:none; font-size:10px; }
.atlas-export .atlas-scene-readout { left:32px; bottom:26px; }
.atlas-export .atlas-scene-readout>strong { font-size:30px; }
@media(max-width:1100px) {
  .atlas-section .scene-picker { grid-template-columns:repeat(5,minmax(0,1fr)); }
  .atlas-section .scene-picker button { gap:7px; padding:7px; min-height:69px; }
  .atlas-section .scene-picker img { width:43px; height:48px; }
  .atlas-tile-copy strong { font-size:10px; }
  .atlas-tile-copy i { display:none; }
  .atlas-body { grid-template-columns:1.3fr 1fr; }
  .atlas-copy { padding:24px; }
  .atlas-copy h3 { font-size:31px; }
  .atlas-copy>p { font-size:12px; }
  .atlas-scene-readout>strong { font-size:22px; }
  .atlas-scene-readout>span { font-size:7px; }
}
@media(max-width:800px) {
  .atlas-section { padding-top:59px; }
  .atlas-section .scene-picker { grid-template-columns:repeat(3,minmax(0,1fr)); gap:7px; }
  .atlas-section .scene-picker img { width:54px; }
  .atlas-tile-copy strong { font-size:11px; }
  .atlas-body { grid-template-columns:1fr; }
  .atlas-visual { border-right:0; border-bottom:1px solid #dce6d5; }
  #atlas-canvas { max-height:430px; }
  .atlas-copy { padding:27px; }
  .atlas-copy>p { font-size:14px; }
  .atlas-controls { max-width:450px; }
  .atlas-trigger>p,.atlas-observation p { font-size:13px; }
  .atlas-observation { min-height:0; }
  .atlas-bottomline { gap:20px; align-items:flex-start; }
  .atlas-downloads>span { width:100%; max-width:none; }
  .atlas-downloads { justify-content:flex-start; }
}
@media(max-width:560px) {
  .atlas-toolbar { gap:8px; }
  .atlas-toolbar>span { font-size:6px; gap:4px; letter-spacing:.08em; }
  .atlas-toolbar button { font-size:8px; padding:7px 9px; }
  .atlas-section .scene-picker { gap:6px; }
  .atlas-section .scene-picker button { display:block; padding:6px 7px 8px; }
  .atlas-section .scene-picker img { width:100%; height:43px; object-fit:cover; }
  .atlas-tile-copy>span { font-size:7px; margin-top:4px; }
  .atlas-tile-copy strong { font-size:9px; margin-top:2px; min-height:27px; line-height:1.5; }
  .atlas-tile-copy i { display:inline; font-size:6px; }
  .atlas-topline { padding:12px 14px; gap:8px; }
  .atlas-topline .world-meta { gap:7px; }
  .atlas-topline .world-meta>span:first-child { font-size:7px; }
  .atlas-topline .category-tag { display:none; }
  .atlas-view-switch { padding:2px; }
  .atlas-view-switch button { font-size:8px; padding:5px 8px; }
  .atlas-view-switch button { font-size:7px; padding:5px 6px; }
  .physics-playback { padding:12px; gap:8px; }
  .physics-playback .round-control { width:27px; height:27px; }
  .physics-playback>span { font-size:8px; }
  .physics-readout { padding:16px 18px 12px; }
  #physics-values { gap:12px; }
  #physics-values span { font-size:8px; }
  #physics-values strong { font-size:20px; }
  .physics-downloads { font-size:8px; padding:0 18px 17px; gap:12px; }
  .oracle-panel { padding:16px; margin-top:18px; }
  #oracle-formula { font-size:23px; }
  .oracle-rule { grid-template-columns:35px 1fr; }
  .oracle-rule>p { font-size:11px; }
  .oracle-chapters button { padding:11px 10px; font-size:9px; }
  .oracle-chart { padding:14px 15px 0; }
  .oracle-chart>div { font-size:9px; }
  #oracle-chart-legend { font-size:7px; }
  .atlas-detail[data-view=physics] .world-law { margin-top:20px; }
  #atlas-motion-view { padding-bottom:55px; }
  .atlas-scene-readout { left:18px; bottom:20px; right:18px; }
  .atlas-scene-readout>strong { font-size:22px; }
  .atlas-illustration-label { font-size:6px; left:17px; top:15px; }
  .atlas-playback { padding:12px 14px; gap:9px; }
  .atlas-playback>span { font-size:8px; min-width:56px; }
  .atlas-copy { padding:25px 21px; }
  .atlas-copy h3 { font-size:32px; }
  .atlas-copy>p { font-size:12px; }
  .atlas-trigger>p,.atlas-observation p { font-size:12px; }
  .atlas-controls select { font-size:11px; }
  .atlas-bottomline { padding:14px 17px; flex-direction:column; gap:10px; }
  .atlas-bottomline>div { align-self:flex-end; }
  .atlas-bottomline>p { font-size:8px; }
  .atlas-downloads { font-size:9px; }
  .atlas-downloads>span { font-size:8px; }
  #atlas-initial-view { min-height:280px; }
}
@media print { .atlas-toolbar,.atlas-playback,.atlas-controls,.atlas-view-switch { display:none; } }


/* assets/clarity.css */

.atlas-section .scene-picker { grid-template-columns:repeat(5,minmax(0,1fr)); gap:0 18px; margin-bottom:25px; }
.atlas-section .scene-picker button { display:flex; align-items:baseline; gap:10px; border:0; border-bottom:1px solid #dfe6df; border-radius:0; padding:14px 3px; min-height:59px; background:transparent; box-shadow:none; }
.atlas-section .scene-picker button:hover { background:transparent; border-color:#8bab99; }
.atlas-section .scene-picker button[aria-selected=true] { background:transparent; border-color:#477c67; box-shadow:0 1px #477c67; }
.atlas-section .scene-picker .scene-choice-number { font-size:10px; color:#9bae9f; }
.scene-choice-name { font-weight:400; font-size:13px; line-height:1.6; color:#566e61; }
[aria-selected=true]>.scene-choice-name { color:#2e6550; font-weight:500; }
.atlas-topline .category-tag { display:none!important; }
.atlas-detail #scene-description { display:none; }
.atlas-detail .oracle-panel { padding:0; border:0; background:none; border-radius:0; margin:22px 0; }
#oracle-kind { display:block; font-size:9px; color:#8d9c90; letter-spacing:.1em; text-transform:uppercase; }
#oracle-plain { margin-top:12px; color:#345d4d; font-size:21px; line-height:1.7; }
.atlas-detail[data-view=physics] .atlas-copy { justify-content:center; padding:36px 38px; }
.atlas-detail[data-view=physics] .world-law { margin-top:28px; }
.atlas-detail[data-view=physics] .atlas-trigger,.atlas-detail[data-view=physics] .atlas-observation { display:none; }
.oracle-overlay { display:none!important; }
.oracle-measurements { border-bottom:1px solid #dce6d5; background:#f7faf5; }
.oracle-measurements>summary { padding:14px 21px; color:#84998c; font-size:10px; display:flex; justify-content:space-between; }
.oracle-measurements[open]>summary { border-bottom:1px solid #dce6d5; }
.oracle-measurements[open]>summary>span { transform:rotate(45deg); }
.oracle-measurements #oracle-chart-wrap { border:0; }
.oracle-measurements .physics-readout { border-top:1px solid #e5ece2; }
.physics-downloads { padding-top:14px; }
.physics-video-frame.is-simple { aspect-ratio:900/650; overflow:hidden; }
.physics-video-frame video { pointer-events:none; }
.physics-video-frame:fullscreen video { pointer-events:auto; }
.physics-video-frame.is-simple video { width:111.1111%; height:138.4615%; left:-5.5556%; top:-26.1538%; }
.physics-video-frame.is-simple:fullscreen video { position:static; width:100%; height:100%; left:auto; top:auto; object-fit:contain; }
.simple-phase { position:absolute; top:14px; right:18px; z-index:2; padding:6px 10px; background:#f8fbf6eb; border:1px solid #d4e1db; border-radius:5px; color:#5c7b70; font-size:11px; }
.physics-video-frame:fullscreen .simple-phase { display:none; }
.studio-poster { position:absolute; inset:0; width:100%; height:100%; object-fit:contain; z-index:1; background:#f5f8f7; }
.atlas-detail[data-view=physics] #atlas-evidence { display:none; }
.room-stage { position:relative; width:100%; aspect-ratio:1250/1222; isolation:isolate; }
.room-stage>img { width:100%; height:100%; object-fit:fill; user-select:none; pointer-events:none; -webkit-user-drag:none; }
.room-stage>video { position:absolute; inset:0; width:100%; height:100%; object-fit:fill; pointer-events:none; }
.room-targets { position:absolute; inset:0; z-index:3; pointer-events:none; }
.room-hit { pointer-events:auto; position:absolute; width:48px; height:48px; padding:0; border:1px solid transparent; border-radius:50%; transform:translate(-50%,-50%); background:transparent; cursor:grab; touch-action:none; transition:box-shadow .18s,border-color .18s; }
.room-stage:hover .room-hit { border-color:#6b9faa45; }
.room-hit:hover,.room-hit:focus-visible { border-color:#6b9faa80; box-shadow:0 0 0 7px #87b7bd12,0 0 24px #639faa20; outline-offset:3px; }
.room-stage.is-dragging .room-hit { cursor:grabbing; }
.room-stage.is-loading .room-hit:hover { cursor:progress; }
.paper-hero-art .room-caption { display:flex; align-items:center; gap:24px; border:0; background:none; left:10px; bottom:0; padding:0 12px; }
.room-caption>span { font-size:10px!important; color:#789591!important; }
.room-caption button { font-size:19px; color:#759994; padding:5px 8px; }
@media(hover:none) {
  .room-hit { border-color:#6b9faa45; }
}
@media(max-width:560px) {
  .room-hit { width:42px; height:42px; }
  .paper-hero-art .room-caption { bottom:0; left:0; padding-left:7px; }
}
@media(max-width:1000px) {
  .atlas-section .scene-picker { gap:0 12px; }
  .scene-choice-name { font-size:11px; }
  .atlas-section .scene-picker button { gap:7px; }
}
@media(max-width:800px) {
  .atlas-section .scene-picker { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .atlas-body { display:flex; flex-direction:column; }
  .atlas-copy { order:-1; }
  .atlas-detail[data-view=physics] .atlas-copy { padding:26px; }
  #oracle-plain { font-size:19px; }
  .atlas-detail .oracle-panel { margin:15px 0 3px; }
  .atlas-detail[data-view=physics] .world-law { margin-top:18px; }
}
.scene-proof { position:relative; flex-shrink:0; display:flex; align-items:center; justify-content:space-between; gap:14px; height:38px; min-height:38px; padding:7px 14px; background:#eef5f0; border-top:1px solid #dbe7de; color:#486957; }
.proof-state { font:600 11px/1.25 var(--sans); min-width:0; }
.proof-measurements { display:flex; align-items:center; gap:13px; font:11px/1.25 var(--sans); font-variant-numeric:tabular-nums; }
.proof-measure { color:#7c9182; font-size:10px; }
.proof-pair { display:flex; align-items:center; gap:5px; white-space:nowrap; }
.proof-pair output { font-weight:600; }
.proof-marker { width:6px; height:6px; border-radius:50%; background:currentColor; }
.proof-marker.dashed { width:15px; height:0; border-top:2px dashed currentColor; border-radius:0; background:none; }
.proof-marker.none { display:none; }
.proof-timer { position:absolute; left:0; bottom:0; height:2px; width:var(--timer-progress,0%); background:#78a78a; }
@media(max-width:560px) {
  .scene-proof { height:42px; min-height:42px; padding:5px 8px; gap:8px; }
  .proof-state,.proof-measurements { font-size:10px; }
  .proof-measurements { gap:7px; }
  .proof-measure { display:none; }
  .proof-pair { gap:3px; }
}
@media(max-width:560px) {
  .atlas-section .scene-picker { gap:0 10px; }
  .atlas-section .scene-picker button { display:block; padding:10px 1px; min-height:62px; }
  .atlas-section .scene-picker .scene-choice-number { display:block; font-size:8px; margin-bottom:2px; }
  .scene-choice-name { display:block; font-size:10px; }
  .atlas-detail[data-view=physics] .atlas-copy { padding:23px; }
  #oracle-plain { font-size:17px; line-height:1.7; }
  .simple-phase { font-size:9px; right:12px; top:10px; }
}

@media(min-width:1100px) {
  .hero.container { max-width:1440px; width:calc(100% - 80px); grid-template-columns:minmax(440px,.85fr) minmax(0,1.2fr); gap:28px; padding-block:55px 45px; }
  .hero h1 { font-size:clamp(48px,4.3vw,68px); }
  .paper-hero-art { margin:-16px 0 0; }
}
.atlas-body { display:flex; flex-direction:column; }
.atlas-detail .atlas-copy { order:-1; width:100%; text-align:center; align-items:center; padding:30px 32px 24px; background:#fbfcfa; }
.atlas-detail[data-view=physics] .atlas-copy { padding:30px 32px 24px; justify-content:flex-start; }
.atlas-copy h3 { font-size:29px; }
.atlas-detail .oracle-panel { margin:9px 0 0; max-width:850px; }
#oracle-kind { display:none; }
#oracle-plain { margin:0; font-size:20px; line-height:1.6; color:#44695a; }
.atlas-visual { border:0; width:100%; }
:is(#atlas-physics-view,.scene-physics-view) { background:#f5f8f7; }
.atlas-detail .physics-video-frame { width:100%; max-width:1040px; margin:0 auto; background:#f5f8f7; }
.physics-video-frame.is-clear { aspect-ratio:3/2; overflow:hidden; }
.physics-video-frame.is-clear video { position:absolute; inset:0; width:100%; height:100%; object-fit:contain; aspect-ratio:auto; }
.physics-video-frame.is-clear:fullscreen { aspect-ratio:auto; }
.physics-video-frame.is-simple video { position:absolute; }
#oracle-chapters,.atlas-bottomline { display:none!important; }
.atlas-topline { gap:18px; }
.atlas-navigation { display:flex; gap:16px; margin-left:auto; }
.atlas-navigation button { font-size:20px; color:#5e7e6e; padding:4px 8px; }
#atlas-position { display:none; }
.physics-playback { border:0; background:#f5f8f7; padding:16px 27px 22px; }
#physics-speed { border:1px solid #ccd9d1; background:#fbfdfa; border-radius:5px; padding:6px 4px; color:#456753; font:12px var(--sans); cursor:pointer; }
#replay-speed { border:1px solid #ccd9d1; background:#fbfdfa; border-radius:5px; padding:5px 3px; color:#456753; font:11px var(--sans); }
.atlas-detail .physics-video-frame:fullscreen { max-width:none; }
.scene-play-overlay { position:absolute; z-index:3; left:28px; bottom:22px; padding:11px 20px; border:1px solid #b9cec0; border-radius:24px; background:#fafff7ed; color:#305e49; box-shadow:0 3px 12px #3158440b; font-size:12px; }
.scene-play-overlay:hover { background:#e7f0e5; }
.scene-foot { display:grid; grid-template-columns:1fr auto; align-items:start; gap:30px; padding:17px 27px; border-top:1px solid #dce5db; background:#fbfcfa; }
.scene-foot .world-law { margin:0!important; border:0; padding:0; min-width:0; }
.scene-foot .world-law summary { color:#567b64; font-size:11px; }
.scene-foot .world-law>p { max-width:880px; }
.scene-foot .physics-downloads { margin:0; padding:0; font-size:11px; gap:22px; }
.oracle-measurements { margin-top:18px; border:1px solid #e0e8de; border-radius:6px; }
#physics-error { z-index:2; inset:auto 25px 70px; background:#f5f8f7e8; padding:10px; font-size:12px; }
.room-stage { cursor:grab; touch-action:none; }
.room-stage[aria-busy=true],.scene-live-stage[aria-busy=true] { cursor:progress; }
.room-stage[aria-busy=true]::after,.scene-live-stage[aria-busy=true]::after { content:attr(data-load-label); position:absolute; z-index:4; left:50%; top:16px; transform:translateX(-50%); max-width:90%; padding:7px 12px; border:1px solid #d2dfd5; border-radius:7px; background:#fbfdf9f2; color:#365c4a; font:13px/1.5 var(--sans); text-align:center; pointer-events:none; }
.room-grab-marker { position:absolute; left:0; top:0; width:28px; height:28px; z-index:3; border:1.5px solid #237453; border-radius:50%; box-shadow:0 0 0 3px #f8fcf7a6; pointer-events:none; }
.room-grab-marker.is-held { border-color:#176c4d; background:#4f9b7114; }
.paper-hero-art { flex-direction:column; justify-content:center; }
.room-stage { flex-shrink:0; }
.room-canvas { display:block; position:absolute; inset:0; width:100%; height:100%; touch-action:none; }
.room-canvas[data-pointer-focus]:focus { outline:none; }
.paper-hero-art .room-caption { position:static; display:flex; flex-wrap:wrap; justify-content:center; gap:10px 20px; margin-top:8px; padding:0; }
.room-tools { display:flex; gap:3px; padding:3px; border:1px solid #d4dfda; border-radius:8px; background:#fbfcf9; }
.room-caption .room-tools button { font:11px var(--sans); padding:7px 12px; border-radius:5px; color:#5a796d; }
.room-tools button[aria-pressed=true] { background:#e5eee7; color:#315c48; }
.room-caption>span { min-width:170px; }
@media(max-width:800px) {
  .atlas-detail .atlas-copy,.atlas-detail[data-view=physics] .atlas-copy { padding:25px 22px 20px; }
  .atlas-copy h3 { font-size:27px; }
  #oracle-plain { font-size:18px; }
}
@media(max-width:560px) {
  .atlas-topline { gap:4px; padding:13px 14px; flex-wrap:wrap; }
  .atlas-navigation { gap:0; }
  .atlas-view-switch { margin-left:auto; }
  .atlas-detail .atlas-copy,.atlas-detail[data-view=physics] .atlas-copy { padding:24px 18px 18px; }
  .atlas-copy h3 { font-size:25px; }
  #oracle-plain { font-size:16px; }
  .physics-playback { padding:10px 12px 16px; gap:7px; }
  .physics-playback .round-control { width:27px; height:27px; flex-shrink:0; }
  #physics-clock { font-size:8px; }
  #physics-speed { font-size:10px; padding:5px 1px; }
  .scene-play-overlay { left:16px; bottom:14px; padding:7px 13px; font-size:10px; }
  .scene-foot { padding:17px; gap:14px; grid-template-columns:1fr; }
  .scene-foot .physics-downloads { justify-content:flex-end; }
  .room-caption>span { min-width:0; text-align:center; }
}

.scene-workspace { display:grid; grid-template-columns:350px minmax(0,1fr); gap:18px; align-items:stretch; }
.scene-index { display:flex; flex-direction:column; min-width:0; border:1px solid #d3dfd9; border-radius:9px; background:#f9fbf8; overflow:hidden; }
.scene-workspace .scene-picker { flex:1; display:grid; grid-template-columns:1fr; grid-template-rows:repeat(15,minmax(39px,1fr)); gap:3px; margin:0; padding:6px; border:0; }
.scene-workspace .scene-picker button { display:grid; grid-template-columns:20px minmax(0,1fr) 106px; gap:6px; align-items:center; width:100%; padding:5px 8px; min-height:0; border:1px solid transparent; border-radius:5px; background:transparent; box-shadow:none; }
.scene-workspace .scene-picker button:hover { background:#edf4f0; border-color:#d4e2d8; }
.scene-workspace .scene-picker button[aria-selected=true] { background:#e3efe8; border-color:#a6c5b6; box-shadow:inset 2px 0 #477c67; }
.scene-workspace .scene-choice-number { font-size:9px!important; color:#7d9589; margin:0!important; }
.scene-workspace .scene-choice-name { font:12px/1.4 var(--sans); color:#426052; }
.scene-workspace [aria-selected=true] .scene-choice-name { color:#264f3d; font-weight:500; }
.scene-workspace .scene-picker .scene-choice-symbol { display:block; width:106px; height:36px; max-height:none; border:0; border-radius:0; object-fit:contain; background:none; padding:0; opacity:.84; }
.scene-workspace [aria-selected=true] .scene-choice-symbol { opacity:1; }
.scene-workspace .atlas-detail { display:flex; flex-direction:column; min-width:0; }
.scene-workspace .atlas-topline { min-height:54px; padding:10px 16px; gap:8px; }
.scene-workspace .atlas-navigation { gap:4px; }
.scene-workspace .atlas-body { flex:1; }
.scene-workspace .atlas-copy,.scene-workspace .atlas-detail[data-view=physics] .atlas-copy { padding:21px 22px 15px; }
.scene-workspace .atlas-copy h3 { font-size:28px; }
.scene-workspace #oracle-plain { font-size:18px; line-height:1.55; min-height:56px; display:flex; align-items:center; justify-content:center; }
.scene-workspace .oracle-panel { width:100%; margin-top:8px; }
.scene-workspace .physics-playback { padding:12px 17px 17px; gap:9px; }
.scene-workspace .scene-foot { padding:16px 18px; margin-top:auto; }
#scene-mobile-select { display:none; }
.atlas-toolbar>span { visibility:hidden; }
@media(min-width:801px) and (max-width:1150px) {
  .scene-workspace { grid-template-columns:300px minmax(0,1fr); gap:14px; }
  .scene-workspace .scene-picker button { grid-template-columns:17px minmax(0,1fr) 86px; padding-inline:5px; gap:5px; }
  .scene-workspace .scene-picker .scene-choice-symbol { width:86px; height:31px; }
  .scene-workspace .scene-choice-name { font-size:11px; }
  .scene-workspace #oracle-plain { font-size:16px; min-height:60px; }
  .scene-workspace .atlas-copy h3 { font-size:25px; }
  .scene-workspace .atlas-view-switch button { padding:6px 7px; }
}
@media(max-width:800px) {
  .scene-workspace { grid-template-columns:1fr; gap:14px; }
  .scene-workspace .scene-picker { display:none; }
  #scene-mobile-select { display:block; width:100%; border:0; background:#fbfdfa; font:14px var(--sans); color:#365c4a; padding:14px; cursor:pointer; }
  .scene-workspace #oracle-plain { min-height:0; font-size:17px; }
  .scene-workspace .atlas-copy h3 { font-size:27px; }
  .scene-workspace .atlas-body { flex:none; }
  .scene-workspace .scene-foot { margin-top:0; }
}
@media(max-width:560px) {
  .scene-workspace .atlas-copy,.scene-workspace .atlas-detail[data-view=physics] .atlas-copy { padding:20px 18px 16px; }
  .scene-workspace #oracle-plain { font-size:16px; }
  .scene-workspace .atlas-copy h3 { font-size:25px; }
  .scene-workspace .physics-playback { padding:10px 12px 16px; gap:7px; }
}

@media(min-width:801px) {
  .hero.container { width:calc(100% - 72px); max-width:1240px; grid-template-columns:1fr 1fr; gap:38px; min-height:0; padding-block:28px 24px; }
  .hero h1 { font-size:clamp(42px,4vw,60px); }
  .paper-hero-art { margin:0; }
  .room-stage { max-width:min(100%,calc((100svh - 285px)*1.023)); }
  .hero .eyebrow { margin-bottom:22px; }
  .hero-actions { margin-top:22px; }
  .hero-authors { margin-top:18px; }
  .atlas-section { padding-block:22px; scroll-margin-top:-14px; }
  .atlas-section .section-heading { margin-bottom:12px; align-items:center; }
  .atlas-section .section-heading h2 { font-size:36px; line-height:1.15; }
  .atlas-section .section-heading .eyebrow { margin-bottom:10px; }
  .atlas-section .section-heading>p { font-size:12px; line-height:1.7; }
  .atlas-toolbar { margin:0 0 10px; }
  .scene-workspace { height:clamp(340px,calc(100svh - 240px),690px); grid-template-columns:minmax(0,1fr) minmax(0,1.3fr); gap:14px; }
  .scene-workspace .scene-picker { flex:1; min-height:0; grid-template-columns:repeat(5,minmax(0,1fr)); grid-template-rows:repeat(3,minmax(0,1fr)); gap:5px; padding:6px; }
  .scene-workspace .scene-picker button { display:flex; flex-direction:column; justify-content:center; position:relative; padding:22px 4px 8px; gap:8px; min-height:0; border-color:#e1e9e3; }
  .scene-workspace .scene-choice-number { position:absolute; top:8px; left:8px; font-size:8px!important; }
  .scene-workspace .scene-choice-name { font-size:10.5px; line-height:1.35; text-align:center; min-height:29px; display:flex; align-items:center; justify-content:center; }
  .scene-workspace .scene-picker .scene-choice-symbol { width:100%; max-width:96px; height:30px; flex-shrink:0; }
  .scene-workspace .atlas-detail { height:100%; min-height:0; }
  .scene-workspace .atlas-topline { min-height:36px; padding:6px 10px; gap:4px; flex-shrink:0; }
  .scene-workspace .atlas-view-switch button { padding:5px 7px; font-size:8px; }
  .scene-workspace .atlas-navigation { gap:0; }
  .scene-workspace .atlas-navigation button { font-size:16px; padding:3px 6px; }
  .scene-workspace .atlas-body { flex:1; min-height:0; }
  .scene-workspace .atlas-copy,.scene-workspace .atlas-detail[data-view=physics] .atlas-copy { flex-shrink:0; padding:10px 16px 8px; }
  .scene-workspace .atlas-copy h3 { font-size:23px; line-height:1.15; }
  .scene-workspace #oracle-plain { font-size:14px; line-height:1.45; min-height:41px; }
  .scene-workspace .oracle-panel { margin-top:5px; }
  .scene-workspace .atlas-visual { flex:1; min-height:0; }
  .scene-workspace :is(#atlas-physics-view,.scene-physics-view) { height:100%; min-height:0; }
  .scene-workspace .physics-video-frame { flex:1; aspect-ratio:auto; min-height:0; max-width:none; }
  .scene-workspace .physics-playback { flex-shrink:0; min-height:40px; padding:7px 10px; gap:7px; }
  .scene-workspace .physics-playback .round-control { width:25px; height:25px; font-size:11px; }
  .scene-workspace .scene-foot { flex-shrink:0; padding:10px 12px; gap:12px; min-height:34px; position:relative; }
  .scene-workspace .scene-foot .physics-downloads { font-size:10px; gap:16px; }
  .scene-workspace .scene-foot .world-law>summary { font-size:10px; }
  .scene-workspace .world-law[open] { position:absolute; left:0; right:0; bottom:0; padding:18px!important; background:#fbfdfa; border:1px solid #cfded4; border-radius:8px; box-shadow:0 -10px 35px #264e3822; max-height:min(480px,calc(100svh - 180px)); overflow:auto; z-index:8; }
  .scene-workspace :is(#atlas-motion-view,.scene-motion-view) { height:100%; }
  .scene-workspace #atlas-canvas { max-height:100%; }
  .scene-workspace #atlas-initial-view { min-height:0; }
  .scene-workspace #atlas-initial-view img { max-height:100%; }
  .atlas-downloads { margin-top:10px; }
}
@media(min-width:801px) and (max-height:760px) {
  .hero .eyebrow { margin-bottom:15px; }
  .hero h1 { font-size:42px; }
  .hero .paper-title { font-size:14px; margin-top:21px; }
  .hero-explanation { font-size:12px; margin-top:13px; }
  .hero-actions { margin-top:17px; }
  .hero-actions .button { padding:11px 14px; font-size:11px; }
  .hero-authors { font-size:9px; margin-top:13px; }
  .scene-workspace .scene-picker button { gap:4px; padding-top:18px; }
  .scene-workspace .scene-choice-name { font-size:10px; }
  .scene-workspace .scene-picker .scene-choice-symbol { height:26px; }
  .scene-workspace #oracle-plain { font-size:13px; min-height:38px; }
}
@media(min-width:801px) and (max-width:1100px) {
  .scene-workspace { grid-template-columns:minmax(0,1fr) minmax(0,1.12fr); }
  .scene-workspace .scene-choice-name { font-size:9.5px; }
}

.full-rule { width:100%; margin-top:8px; padding:10px 12px; border:1px solid #c5d9ce; border-left:3px solid #558b71; border-radius:6px; background:#edf4ee; text-align:left; }
.full-rule h4 { margin:0 0 4px; font:600 10px/1.3 var(--sans); color:#325c49; }
.full-rule #scene-law-text { margin:0; color:#486556; font:11px/1.55 var(--sans); }
.scene-foot .oracle-measurements>summary { display:none; }
.scene-foot .oracle-measurements { margin-top:12px; }
.simple-phase { left:12px; right:auto; pointer-events:none; }
.physics-view { position:absolute; top:10px; right:12px; z-index:3; width:92px; padding:0; border:1px solid #b6cbbd; border-radius:6px; overflow:hidden; background:#f8fcf9ed; color:#416651; box-shadow:0 2px 8px #2946320b; cursor:pointer; }
.physics-view:hover { border-color:#54826a; }
.room-context { position:relative; display:block; aspect-ratio:3/2; }
.room-context img { width:100%; height:100%; display:block; }
.focus-rectangle { position:absolute; border:1px solid #4d8268; background:#58896915; }
.view-label { display:block; padding:4px 7px; font:10px/1.2 var(--sans); }
[data-framing=room] .room-context { display:none; }
[data-framing=room] .physics-view { width:auto; }
.physics-video-frame[data-framing=detail] { aspect-ratio:3/2; }
.physics-video-frame:fullscreen .physics-view { top:20px; right:20px; }
@media(min-width:801px) {
  .scene-workspace .atlas-copy,.scene-workspace .atlas-detail[data-view=physics] .atlas-copy { padding:10px 14px; }
  .scene-workspace .full-rule { min-height:70px; display:flex; flex-direction:column; justify-content:center; }
  .scene-workspace #oracle-plain { min-height:30px; }
  .scene-workspace .physics-video-frame[data-framing] { aspect-ratio:auto; }
  .scene-workspace .scene-foot { padding-block:8px; }
}
@media(max-width:800px) {
  .full-rule { margin-top:12px; }
  .full-rule #scene-law-text { font-size:12px; }
  .physics-view { width:76px; top:8px; right:8px; }
  .view-label { font-size:9px; }
}

.scene-workspace .atlas-copy { display:flex; flex-direction:column; }
.scene-workspace .atlas-trigger,.scene-workspace .atlas-observation,.scene-workspace #atlas-evidence { display:none; }
.scene-workspace .atlas-controls { margin:0; padding:0; border:0; background:none; max-width:none; display:flex; align-items:center; gap:15px; }
.scene-workspace .atlas-controls>label { margin:0; font-size:10px; color:#567461; }
.scene-workspace .atlas-controls>select,.scene-workspace .atlas-range { flex:1; min-width:0; }
.scene-workspace .atlas-controls>select { width:auto; padding:4px 8px; font-size:11px; }
.scene-workspace .atlas-detail[data-view=motion] .scene-foot { display:block; }
.scene-workspace .atlas-detail[data-view=initial] .scene-foot { display:flex; justify-content:flex-end; align-items:center; }
.original-download { font-size:11px; color:#567b64; }
.original-caption { flex-shrink:0; margin:0; padding:12px 16px; font:10px/1.4 var(--sans); color:#748b7b; background:#f5f8f7; }
.scene-workspace :is(#atlas-motion-view,.scene-motion-view),.scene-workspace #atlas-initial-view { background:#f5f8f7; overflow:hidden; }
.scene-workspace #atlas-initial-view .image-label { display:none; }
.scene-workspace .atlas-scene-readout { bottom:10px; left:16px; gap:3px; }
.scene-workspace .atlas-scene-readout>strong { font-size:18px; }
.scene-workspace .atlas-illustration-label { top:10px; left:16px; }
@media(min-width:801px) {
  .scene-workspace { position:relative; }
  .scene-workspace .scene-foot { position:static; }
  .scene-workspace .world-law[open] { left:0; right:auto; bottom:0; width:calc((100% - 14px)/2.3); max-height:100%; }
  .scene-workspace .scene-foot { height:42px; min-height:42px; padding:8px 12px; }
  .scene-workspace .atlas-playback,.scene-workspace .original-caption { height:40px; padding:7px 10px; border:0; }
  .scene-workspace .atlas-playback .round-control { width:25px; height:25px; font-size:11px; }
  .scene-workspace :is(#atlas-motion-view,.scene-motion-view),.scene-workspace #atlas-initial-view { flex:1; height:auto; min-height:0; }
  .scene-workspace #atlas-canvas,.scene-workspace #atlas-initial-view>img { position:absolute; inset:0; width:100%; height:100%; max-height:none; object-fit:contain; }
}
@media(min-width:801px) and (max-width:1100px) {
  .scene-workspace .world-law[open] { width:calc((100% - 14px)/2.12); }
}
@media(max-width:800px) {
  .atlas-section { padding-block:20px; }
  .atlas-section .section-heading { margin-bottom:12px; }
  .atlas-section .section-heading h2 { font-size:28px; line-height:1.2; }
  .atlas-section .section-heading .eyebrow { margin-bottom:12px; }
  .atlas-section .section-heading>p { display:none; }
  .atlas-toolbar { margin-bottom:12px; }
  .scene-workspace .atlas-copy,.scene-workspace .atlas-detail[data-view=physics] .atlas-copy { padding:14px 16px; }
  .scene-workspace .atlas-copy h3 { font-size:24px; }
  .scene-workspace #oracle-plain { font-size:15px; line-height:1.5; }
  .full-rule #scene-law-text { font-size:11px; }
  .scene-workspace .scene-foot { padding:12px; grid-template-columns:1fr auto; }
}

.physics-video-frame { overflow:hidden; }
.physics-media { position:absolute; left:0; top:0; transform-origin:0 0; pointer-events:none; }
.physics-room-background { position:absolute; inset:0; width:100%; height:100%; object-fit:fill; }
.physics-media>video { z-index:1; }
.physics-media>.studio-poster { z-index:2; }
.physics-video-frame .physics-media>video,.physics-video-frame .physics-media>.studio-poster { position:absolute; inset:0; width:100%; height:100%; max-height:none; object-fit:fill; aspect-ratio:auto; }
.physics-video-frame[data-framing=detail] { cursor:grab; touch-action:none; }
.physics-video-frame[data-framing=detail] .physics-media { will-change:transform; }
.physics-video-frame.is-panning { cursor:grabbing; user-select:none; }
.physics-video-frame:focus-visible { outline:2px solid #6f9a83; outline-offset:-3px; }
.scene-zoom-tools { position:absolute; left:12px; top:10px; z-index:4; cursor:default; }
.scene-zoom-buttons { display:inline-flex; border:1px solid #b6cbbd; border-radius:6px; background:#f8fcf9ed; overflow:hidden; }
.scene-zoom-buttons button { min-width:30px; height:30px; padding:0 8px; color:#416651; font:16px var(--sans); }
.scene-zoom-buttons #scene-zoom-reset { font-size:11px; min-width:48px; border-inline:1px solid #d4e1d8; }
.scene-zoom-buttons button:hover { background:#e5efe8; }
.scene-zoom-buttons button:disabled { opacity:.35; cursor:default; }
#scene-zoom-hint { display:block; margin-top:4px; font:10px/1.3 var(--sans); color:#476955; padding:3px 5px; background:#f8fcf9d9; border-radius:3px; }
[data-framing=detail] .simple-phase { top:77px; font-size:10px; }
:is(#atlas-physics-view,.scene-physics-view):fullscreen { width:100vw; height:100dvh; max-width:none; display:flex; flex-direction:column; background:#f5f8f7; }
:is(#atlas-physics-view,.scene-physics-view):fullscreen .physics-video-frame { flex:1; min-height:0; width:100%; max-width:none; aspect-ratio:auto; }
:is(#atlas-physics-view,.scene-physics-view):fullscreen .physics-playback { flex-shrink:0; height:52px; padding:10px 20px; }
@media(hover:none) {
  .scene-zoom-buttons button { min-width:38px; height:36px; }
}

.scene-workspace .atlas-navigation { margin-left:0; }


.scene-workspace #atlas-canvas,.scene-workspace .atlas-scene-readout,.scene-workspace .atlas-illustration-label,.scene-workspace .atlas-playback,.scene-workspace #atlas-controls { display:none!important; }
.scene-live-stage { position:absolute; inset:0; overflow:hidden; background:#f5f8f7; touch-action:none; }
.scene-live-poster { width:100%; height:100%; object-fit:contain; pointer-events:none; user-select:none; -webkit-user-drag:none; }
.scene-live-stage .room-canvas { width:100%; height:100%; }
.room-view-tools { position:absolute; z-index:3; top:10px; right:10px; display:flex; overflow:hidden; border:1px solid #bfd2c7; border-radius:7px; background:#fbfdfaee; }
.room-view-tools button { min-width:36px; height:36px; padding:0 10px; color:#456753; font:16px var(--sans); }
.room-view-tools button + button { border-left:1px solid #dce5db; }
.room-view-tools [data-room-zoom=fit] { font-size:12px; }
.room-view-tools .room-wheel-toggle { display:inline-flex; align-items:center; gap:7px; font-size:11px; }
.room-wheel-state { min-width:23px; padding:2px 4px; border-radius:4px; background:#e8eeeb; color:#62796b; font:600 10px var(--sans); }
.room-wheel-toggle[aria-checked=true] .room-wheel-state { background:#2d6c57; color:white; }
.room-view-tools button:hover { background:#e5efe8; }
.room-view-tools button:focus-visible { outline:2px solid #387f68; outline-offset:-3px; }
.room-view-tools button:disabled { opacity:.4; cursor:default; }
@media(pointer:coarse) { .room-view-tools button { min-width:44px; height:44px; } }
.scene-live-playback { height:40px; min-height:40px; flex-shrink:0; display:flex; align-items:center; padding:7px 10px; gap:9px; background:#f5f8f7; }
.scene-live-playback .round-control { width:25px; height:25px; flex-shrink:0; }
.scene-live-hint { flex:1; min-width:0; font:11px/1.25 var(--sans); color:#577664; }
.scene-live-clock { font:10px var(--sans); font-variant-numeric:tabular-nums; color:#748b7b; white-space:nowrap; }
.scene-live-controls { display:flex; justify-content:center; width:100%; }
.scene-live-controls .room-tools { padding:0; border:0; background:none; }
.scene-live-controls button { font:11px var(--sans); padding:5px 14px; border-radius:5px; color:#4d7060; }
.scene-workspace .atlas-detail[data-view=motion] .scene-foot { display:flex; align-items:center; }
.atlas-visual:fullscreen { width:100vw; height:100dvh; display:flex; flex-direction:column; background:#f5f8f7; }
.atlas-visual:fullscreen :is(#atlas-motion-view,.scene-motion-view) { flex:1; min-height:0; height:auto; }
.atlas-visual:fullscreen .scene-live-playback { height:48px; }
@media(max-width:800px) {
  .scene-workspace :is(#atlas-motion-view,.scene-motion-view) { height:auto; min-height:0; aspect-ratio:3/2; flex:none; }
  .scene-workspace .atlas-visual:fullscreen :is(#atlas-motion-view,.scene-motion-view) { flex:1; aspect-ratio:auto; }
  .scene-live-hint { font-size:9px; }
}
.scene-live-controls.fullscreen-controls { flex-shrink:0; height:42px; align-items:center; border-top:1px solid #dce5db; background:#fbfcfa; }
.scene-workspace .physics-playback,.scene-workspace .scene-live-playback { height:42px; min-height:42px; padding:7px 10px; }
#physics-speed,.scene-live-speed { height:28px; font:11px var(--sans); padding:3px 4px; border:1px solid #ccd9d1; border-radius:5px; background:#fbfdfa; color:#456753; cursor:pointer; }
.atlas-visual:fullscreen .scene-live-playback,:is(#atlas-physics-view,.scene-physics-view):fullscreen .physics-playback { height:52px; min-height:52px; padding:10px 20px; }
.atlas-visual:fullscreen .scene-live-controls.fullscreen-controls { width:auto; height:auto; border:0; background:none; margin-right:auto; }
@media(max-width:560px) {
  .scene-live-controls.fullscreen-controls button { padding-inline:8px; }
}
.atlas-toolbar { justify-content:flex-end; gap:20px; }
.atlas-toolbar>a { padding:6px 0; font:10px/1.5 var(--sans); color:#577562; }
.atlas-toolbar>a:hover { color:#285442; }
.scene-workspace .scene-foot.has-speed-readout { grid-template-columns:auto minmax(0,1fr) auto; gap:10px; align-items:center; }
.scene-speed-readout { display:flex; align-items:center; justify-content:center; gap:12px; white-space:nowrap; font:11px var(--sans); font-variant-numeric:tabular-nums; }
.speed-caption { color:#728b7b; font-size:10px; }
.scene-speed-readout>span:not(.speed-caption) { display:flex; align-items:center; gap:5px; }
.scene-speed-readout i { width:5px; height:5px; border-radius:50%; background:currentColor; }
.speed-red { color:#b3594b; }
.speed-blue { color:#416f9e; }
:is(#atlas-physics-view,.scene-physics-view):fullscreen .scene-speed-readout { margin-inline:5px; }
@media(max-width:560px) {
  .scene-workspace .scene-foot.has-speed-readout { padding:10px; gap:8px; }
  .scene-speed-readout { gap:7px; font-size:10px; }
  .speed-caption { max-width:38px; white-space:normal; text-align:center; font-size:9px; line-height:1.1; }
  .scene-workspace .scene-foot.has-speed-readout .physics-downloads { gap:9px; font-size:9px; }
  :is(#atlas-physics-view,.scene-physics-view).has-speed-readout:fullscreen #physics-clock { display:none; }
}

@media(min-width:801px) {
  .scene-workspace { grid-template-columns:clamp(250px,24vw,300px) minmax(0,1fr); gap:8px; }
  .scene-workspace .scene-index { align-self:stretch; height:100%; min-height:0; }
  .scene-workspace .scene-picker { flex:1; min-height:0; grid-template-columns:repeat(3,minmax(0,1fr)); grid-template-rows:repeat(5,minmax(0,1fr)); gap:4px; padding:4px; }
  .scene-workspace .scene-picker button { padding:16px 4px 6px; gap:2px; }
  .scene-workspace .scene-choice-number { top:6px; left:6px; }
  .scene-workspace .scene-choice-name { font-size:10px; line-height:1.3; min-height:28px; overflow-wrap:anywhere; }
  .scene-workspace .scene-picker .scene-choice-symbol { height:22px; }
  .scene-workspace .world-law[open] { width:clamp(250px,24vw,300px); }
}
@media(min-width:1100px) {
  .scene-workspace .atlas-topline { position:absolute; left:calc(clamp(250px,24vw,300px) + 18px); right:10px; top:13px; min-height:0; padding:0; border:0; background:none; z-index:2; pointer-events:none; }
  .scene-workspace .atlas-topline button { pointer-events:auto; }
  .scene-workspace .atlas-copy,.scene-workspace .atlas-detail[data-view=physics] .atlas-copy { padding:16px 16px 12px; }
  .scene-workspace .atlas-copy h3 { max-width:calc(100% - 200px); }
}
@media(min-width:801px) and (max-width:1100px) {
  .scene-workspace .scene-choice-name { font-size:9px; }
}
@media(min-width:801px) and (max-height:700px) {
  .scene-workspace .scene-picker button { padding:13px 4px 4px; }
  .scene-workspace .scene-choice-name { min-height:23px; font-size:9px; }
  .scene-workspace .scene-picker .scene-choice-symbol { height:18px; }
}

.scene-workspace .atlas-view-switch { padding:0; gap:18px; border:0; background:none; margin-left:auto; }
.scene-workspace .atlas-view-switch button { font:600 12px/1.3 var(--sans); padding:7px 0; color:#6b8173; border-radius:0; border-bottom:2px solid transparent; }
.scene-workspace .atlas-view-switch button[aria-pressed=true] { background:none; color:#315d47; border-bottom-color:#315d47; box-shadow:none; }
.analysis-formula { flex-shrink:0; min-height:52px; padding:9px 14px; color:#365d49; background:#f1f6ef; text-align:center; }
.typeset-rule { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:10px 28px; }
.typeset-rule .formula-part { display:inline-flex; align-items:center; gap:10px; max-width:100%; }
.typeset-rule math { font-family:'STIX Two Math',math; font-size:22px; font-weight:400; line-height:1.3; letter-spacing:normal; math-style:normal; }
.formula-label { font:500 10px/1.3 var(--sans); letter-spacing:.01em; color:#6d8075; }
.formula-red { color:#a74f40; }
.formula-blue { color:#456d96; }
#oracle-formula.typeset-rule { padding:12px 0 4px; overflow-wrap:normal; }
.full-rule #scene-law-text { font:12px/1.95 var(--sans); }
.inline-rule-math { font-family:'STIX Two Math',math; font-size:1.24em; font-weight:400; letter-spacing:normal; math-style:normal; }

.scene-foot .physics-readout { padding:14px 0 2px; }
.physics-readout #physics-sample-label { font:11px/1.5 var(--sans); color:#647d6c; letter-spacing:0; margin-bottom:10px; }
.measurement-heading { margin:0 0 7px; font:500 12px/1.5 var(--sans); color:#365d49; }
.measurement-note { margin:8px 0 0; font:11px/1.5 var(--sans); color:#6b8172; }
#physics-values { display:flex; flex-direction:column; gap:0; }
#physics-values>div { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:12px; align-items:baseline; padding:8px 0; border-bottom:1px solid #e0e9df; }
#physics-values span,#physics-values strong { font:400 12px/1.5 var(--sans); letter-spacing:0; color:#486556; }
#physics-values strong { font-weight:600; text-align:right; font-variant-numeric:tabular-nums; max-width:145px; }
@media(max-width:500px) {
  .typeset-rule { gap:7px 16px; }
  .typeset-rule math { font-size:20px; }
  .typeset-rule .formula-part { gap:8px; }
}
.scene-workspace .atlas-detail[data-view=analysis] .scene-live-stage { display:none; }
.scene-workspace .atlas-detail[data-view=analysis] #atlas-canvas { display:block!important; }
.scene-workspace .atlas-detail[data-view=analysis] .atlas-scene-readout { display:flex!important; }
.scene-workspace .atlas-detail[data-view=analysis] .atlas-illustration-label { display:block!important; }
.scene-workspace .atlas-detail[data-view=analysis] .atlas-playback { display:flex!important; flex-shrink:0; height:48px; gap:8px; padding:10px 14px; }
.scene-workspace .atlas-detail[data-view=analysis] #atlas-controls { display:flex!important; flex:1; }
.scene-workspace .atlas-playback #atlas-controls { min-width:0; margin-right:14px; }
.scene-workspace .atlas-playback #atlas-progress,.scene-workspace .atlas-playback #atlas-time { display:none; }
.scene-workspace .atlas-navigation { display:none; }
.scene-foot .world-law .physics-downloads { padding-top:14px; }
#analysis-formula #analysis-model-note { flex-basis:100%; margin:0; padding:0; border:0; font:11px/1.4 var(--sans); color:#6b8173; text-align:left; }
.scene-workspace .atlas-detail[data-view=analysis] .scene-foot { display:none; }
.atlas-visual:fullscreen .atlas-playback #atlas-controls { max-width:none; }
@media(max-width:800px) {
  .scene-workspace .atlas-view-switch button { font-size:11px; }
  .atlas-visual:fullscreen .atlas-playback #atlas-progress,.atlas-visual:fullscreen .atlas-playback #atlas-time { display:none; }
}

.scene-workspace .atlas-detail[data-view=analysis] .atlas-scene-readout { position:static; flex-shrink:0; flex-direction:row; align-items:center; justify-content:space-between; gap:14px; min-height:40px; padding:9px 14px; background:#eef5f0; border-top:1px solid #dbe7de; }
.scene-workspace .atlas-detail[data-view=analysis] .atlas-scene-readout>span,
.scene-workspace .atlas-detail[data-view=analysis] .atlas-scene-readout>strong { font:400 12px/1.4 var(--sans); letter-spacing:0; color:#486957; }
.scene-workspace .atlas-detail[data-view=analysis] .atlas-scene-readout>strong { font-weight:600; text-align:right; font-variant-numeric:tabular-nums; }
.scene-workspace .atlas-detail[data-view=analysis] #atlas-controls { gap:12px; }
.scene-workspace .atlas-detail[data-view=analysis] #atlas-controls>label { font:500 11px/1.4 var(--sans); }
.scene-workspace .atlas-detail[data-view=analysis] #atlas-controls select { font-size:12px; }
.scene-workspace .atlas-detail[data-view=analysis] #atlas-parameter-value { font:500 11px/1.4 var(--sans); font-variant-numeric:tabular-nums; }
@media(min-width:1100px) { .scene-workspace .atlas-copy h3 { max-width:calc(100% - 260px); } }
@media(max-width:800px) {
  .scene-workspace .atlas-detail[data-view=analysis] .atlas-playback { display:grid!important; grid-template-columns:minmax(0,1fr) repeat(3,28px); height:auto; min-height:72px; padding:10px; gap:6px; }
  .scene-workspace .atlas-playback #atlas-controls { margin-right:3px; }
  .scene-workspace .atlas-detail[data-view=analysis] .atlas-scene-readout { padding:8px 10px; gap:10px; }
  .scene-workspace .atlas-detail[data-view=analysis] .atlas-scene-readout>span,
  .scene-workspace .atlas-detail[data-view=analysis] .atlas-scene-readout>strong { font-size:11px; }
  .scene-workspace .atlas-detail[data-view=analysis] #atlas-controls { display:contents!important; }
  .scene-workspace .atlas-detail[data-view=analysis] #atlas-controls>label { grid-column:1; grid-row:1; }
  .scene-workspace .atlas-detail[data-view=analysis] #atlas-controls>select,
  .scene-workspace .atlas-detail[data-view=analysis] #atlas-controls>.atlas-range { grid-column:1/-1; grid-row:2; }
  .scene-workspace .atlas-detail[data-view=analysis] #atlas-play { grid-column:2; grid-row:1; }
  .scene-workspace .atlas-detail[data-view=analysis] #atlas-reset { grid-column:3; grid-row:1; }
  .scene-workspace .atlas-detail[data-view=analysis] #analysis-fullscreen { grid-column:4; grid-row:1; }
}

.scene-workspace .atlas-detail[data-view=analysis] .atlas-visual { display:grid; grid-template-columns:minmax(0,1fr) 250px; grid-template-rows:auto minmax(0,1fr) auto auto; }
.scene-workspace .atlas-detail[data-view=analysis] #analysis-formula { grid-column:1; grid-row:1; min-width:0; }
.scene-workspace .atlas-detail[data-view=analysis] :is(#atlas-motion-view,.scene-motion-view) { grid-column:1; grid-row:2; height:auto; width:100%; min-height:0; }
.scene-workspace .atlas-detail[data-view=analysis] .atlas-scene-readout { grid-column:1; grid-row:3; }
.scene-workspace .atlas-detail[data-view=analysis] .atlas-playback { grid-column:1; grid-row:4; }
.scene-workspace .atlas-detail[data-view=analysis] #scene-law { grid-column:2; grid-row:1/-1; min-width:0; min-height:0; margin:0; padding:16px; overflow-y:auto; scrollbar-width:thin; border:0; border-left:1px solid #e0e8e1; background:#fbfdf9; }
#scene-law .full-rule { margin:0; padding:0; min-height:0; border:0; background:none; }
#scene-law #oracle-formula,#scene-law .physics-readout { display:none; }
#scene-law .oracle-measurements { margin:0; padding:0; border:0; border-radius:0; background:none; }
#scene-law .oracle-chart { margin-top:18px; padding:14px 0 0; border:0; border-top:1px solid #e0e8e1; background:none; }
#scene-law .oracle-chart>div { align-items:flex-start; flex-direction:column; gap:6px; }
#scene-law #oracle-signal { font:500 11px/1.5 var(--sans); color:#486556; }
#scene-law #oracle-chart-legend { display:flex; flex-wrap:wrap; gap:4px 12px; font:10px/1.5 var(--sans); }
#scene-law #oracle-chart { display:block; margin-top:8px; }
#scene-law .physics-downloads { margin-top:16px; padding:0; gap:10px; font-size:10px; }
#atlas-canvas { cursor:pointer; }
#atlas-canvas:focus { outline:none; }
#atlas-canvas[data-gesture=height],#atlas-canvas[data-gesture=strength],#atlas-canvas[data-gesture=direction] { touch-action:none; }
#atlas-canvas path,#atlas-canvas polygon,#atlas-canvas polyline,#atlas-canvas ellipse,#atlas-canvas text { pointer-events:none; }
.model-hit { fill:transparent; stroke:transparent; pointer-events:all; }
#atlas-canvas[data-gesture=height] .model-hit,#atlas-canvas[data-gesture=strength] .model-hit,#atlas-canvas[data-gesture=direction] .model-hit { cursor:grab; touch-action:none; }
#atlas-canvas .model-object:hover .model-hit { stroke:#79a68a; stroke-width:1.2; stroke-dasharray:3 3; }
#atlas-canvas.is-adjusting,#atlas-canvas.is-adjusting .model-hit { cursor:grabbing; }
.physics-video-frame[data-framing=room] ~ .scene-motion-key { display:none; }
.scene-live-playback .scene-live-controls { width:auto; flex-shrink:0; }
.scene-live-playback .scene-live-controls button { padding:5px 9px; }
@media(max-width:1100px) {
  .scene-workspace .atlas-detail[data-view=analysis] .atlas-visual { display:flex; overflow-y:auto; }
  .scene-workspace .atlas-detail[data-view=analysis] :is(#atlas-motion-view,.scene-motion-view) { flex:0 0 260px; height:260px; }
  .scene-workspace .atlas-detail[data-view=analysis] #scene-law { overflow:visible; flex-shrink:0; border-left:0; border-top:1px solid #e0e8e1; }
}
@media(max-width:800px) {
  .scene-live-playback .scene-live-clock { display:none; }
  .scene-live-playback .scene-live-hint { display:block; flex:0 0 100%; order:1; font-size:11px; line-height:1.4; }
  .scene-live-playback .scene-live-controls { flex:1; justify-content:flex-start; }
  .scene-live-playback .scene-live-controls button { padding:5px 7px; }
  .scene-workspace .scene-live-playback,.atlas-visual:fullscreen .scene-live-playback { flex-wrap:wrap; gap:5px; height:auto; min-height:62px; }
}


/* assets/hero.css */
/* Centered paper masthead with a replaceable author block. */
html { scroll-padding-top:24px; }
.hero.publication-hero { display:flex; flex-direction:column; align-items:center; gap:0; width:100%; max-width:none; min-height:0; padding:0 0 40px; }
.publication-hero .hero-copy { width:100%; max-width:none; padding:56px 24px 40px; text-align:center; font-family:'Inter',var(--sans); background:var(--paper); border-bottom:1px solid #e5e7eb; }
.publication-hero #hero-title { margin:0 0 26px; font:800 57.6px/1.2 'Inter',var(--sans); letter-spacing:-.02em; color:#176c4d; }
.publication-hero .title-accent { color:inherit; }
@supports ((background-clip:text) or (-webkit-background-clip:text)) {
 .publication-hero .title-accent { background:linear-gradient(105deg,#155c40 0%,#176c4d 48%,#2b8058 100%); -webkit-background-clip:text; background-clip:text; color:transparent; }
}
@media print, (forced-colors:active) {
 .publication-hero .title-accent { background:none; color:inherit; }
}
.hero-name-origin { max-width:38rem; margin:0 auto 8px; color:#66776c; font:italic 400 15px/1.5 'Newsreader',var(--serif); text-wrap:balance; }
.hero-name-origin [lang=zh-Hans] { color:#56715f; font-size:.85em; font-style:normal; white-space:nowrap; }
.publication-hero #hero-title .hero-logo { display:inline-block; width:48px; height:48px; margin-right:8.8px; border-radius:8.8px; vertical-align:-8.8px; filter:drop-shadow(0 2px 3px #0f3c2626); overflow:visible; }
.footer-logo { width:40px; height:40px; overflow:visible; filter:drop-shadow(0 2px 3px #0f3c2626); }
.longchang-logo .logo-eye { transform-box:fill-box; transform-origin:center; animation:logo-blink 4.8s ease-in-out infinite; }
.longchang-logo .logo-gaze { transform:translate(var(--gaze-x,0px),var(--gaze-y,0px)); transition:transform 140ms ease-out; }
@keyframes logo-blink { 0%,81%,89%,100% { transform:scaleY(1); } 84%,86% { transform:scaleY(.13); } }
.publication-hero .paper-title { max-width:1100px; margin:0 auto 9.6px; font:italic 400 24.8px/1.6 'Noto Serif',var(--serif); letter-spacing:normal; color:#414c46; text-wrap:balance; }
.publication-hero .hero-authors { display:grid; justify-items:center; gap:8px; margin:0 0 6.4px; font:400 16.8px/1.6 'Inter',var(--sans); color:#1f2937; }
.hero-author-list { display:flex; flex-wrap:wrap; justify-content:center; gap:4px 18px; margin:0; color:inherit; }
.hero-author-list > span,.hero-affiliations > span { white-space:nowrap; }
.hero-author-list a:hover { color:#176c4d; text-decoration:underline; text-underline-offset:3px; }
.hero-authors sup { margin-left:3px; color:#176c4d; font-size:.65em; line-height:0; }
.hero-author-details { display:grid; justify-items:center; gap:6px; }
.hero-affiliations { display:flex; flex-wrap:wrap; justify-content:center; align-items:baseline; gap:6px 22px; margin:0; color:#5d7165; font:400 13.5px/1.6 'Inter',var(--sans); }
.hero-affiliations sup { margin:0 4px 0 0; font-size:.72em; }
.hero-correspondence { margin:0; color:#6b7a71; font:400 11.5px/1.5 'Inter',var(--sans); }
.hero-correspondence sup { margin:0 4px 0 0; font-size:.85em; }
.publication-hero .hero-actions { flex-direction:row; align-items:center; justify-content:center; gap:9.6px; margin:16px 0 0; }
.publication-hero .hero-actions .button { display:inline-flex; align-items:center; justify-content:center; min-width:0; height:40px; padding:8.8px 17.6px; gap:7.2px; border:0; border-radius:999px; background:#243d32; color:#fff; font:600 16px/1.5 'Inter',var(--sans); box-shadow:none; transition:background .15s; }
.publication-hero .hero-actions .button:hover { background:#176c4d; transform:none; }
.publication-hero .hero-actions svg { width:17px; height:17px; fill:none; stroke:currentColor; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; }
.publication-hero .paper-hero-art { width:calc(100% - 48px); max-width:720px; align-self:center; min-height:0; margin:24px auto 0; padding:0; }
.publication-hero .room-stage { width:100%; max-width:clamp(320px,44svh,420px); }
.publication-hero .paper-hero-art .room-caption { display:flex; flex-direction:column; align-items:center; gap:8px; margin-top:6px; text-align:center; }
.publication-hero .room-caption #room-hint { font:400 13px/1.5 'Inter',var(--sans)!important; color:#426351!important; text-align:center; }
.publication-hero .hero-overview { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:stretch; gap:48px; margin-top:28px; }
.publication-hero .hero-summary { min-width:0; }
.publication-hero .hero-summary h2 { margin:0 0 14px; color:var(--ink); font:600 23px/1.3 var(--sans); letter-spacing:-.02em; }
.publication-hero .hero-summary p { margin:0 0 13px; color:#4d6759; font:400 16px/1.75 var(--sans); }
.publication-hero .hero-summary p:last-child { margin-bottom:0; }
.publication-hero .hero-summary strong { color:#285e45; font-weight:600; }
.publication-hero .hero-overview .paper-hero-art { display:flex; align-self:center; align-items:stretch; width:100%; max-width:none; margin:0; }
.publication-hero .hero-room-view { display:grid; place-items:center; width:100%; min-width:0; min-height:0; }
.publication-hero .hero-room-view .room-stage { width:100%; max-width:none; aspect-ratio:1250/1222; }
@media(min-width:769px) and (max-height:800px) { .publication-hero .hero-copy { padding-block:52px 32px; } }
@media(max-width:768px) {
 .hero-name-origin { max-width:28rem; font-size:14px; }
 .publication-hero #hero-title { font-size:41.6px; }
 .publication-hero .paper-title { font-size:19.2px; }
 .publication-hero #hero-title .hero-logo { width:35.2px; height:35.2px; vertical-align:-6.4px; margin-right:6.4px; border-radius:6.4px; }
 .publication-hero .hero-overview { grid-template-columns:1fr; gap:24px; margin-top:24px; }
 .publication-hero .hero-summary h2 { font-size:21px; }
 .publication-hero .hero-summary p { font-size:15px; line-height:1.7; }
}
@media(max-width:600px) {
 .hero-author-list { display:grid; grid-template-columns:repeat(2,max-content); gap:3px 16px; font-size:15px; }
 .hero-affiliations { display:grid; grid-template-columns:repeat(2,max-content); gap:4px 20px; font-size:12.5px; }
 .publication-hero .hero-actions { gap:8px; }
 .publication-hero .hero-actions .button { padding-inline:12px; font-size:14px; }
}
.citation { padding-block:28px 40px; }
.citation h2 { margin:0 0 18px; color:#355e47; font:500 28px/1.4 var(--sans); text-align:center; }
.citation p { margin:0; color:#748278; font:400 12px/1.6 var(--sans); }
.bibtex-wrap { position:relative; max-width:1000px; margin:auto; overflow:hidden; border:1px solid #dce5df; border-radius:10px; background:#f1f5f2; }
.citation pre { overflow:auto; margin:0; padding:24px; color:#385346; font:13px/1.75 ui-monospace,SFMono-Regular,Consolas,monospace; }
.bibtex-copy { position:absolute; top:10px; right:12px; padding:4px 10px; border:1px solid #d2ddd5; border-radius:5px; background:#fbfdfb; color:#547160; font:11px/1.5 var(--sans); cursor:pointer; }
.bibtex-copy:hover { background:#e4eee6; }
@media(prefers-reduced-motion:reduce) { .longchang-logo .logo-eye { animation:none; } .longchang-logo .logo-gaze { transition:none; } }


/* assets/demo-model.css */
/* Video and model share a row; their controls and playback stay independent. */
.demo-explanation { display:flex; flex-direction:column; min-width:0; min-height:0; margin:0; border:1px solid #d5e1d8; border-radius:11px; overflow-y:auto; scrollbar-width:thin; scrollbar-color:#c5d5ca transparent; background:#fbfdfb; }
.demo-model { min-width:0; display:flex; flex-direction:column; background:#f5f8f6; }
.model-heading { display:block; padding:18px 20px 12px; }
:is(#model-heading,#evo-model-heading) { margin:0; font:600 16px/1.4 var(--sans); color:#315d47; letter-spacing:0; }
.model-heading #analysis-model-note { margin:5px 0 0; font:400 12px/1.5 var(--sans); color:#5d7467; }
:is(#model-controls,#evo-model-controls) { padding:0 20px 8px; }
:is(#demo-explanation,#evo-explanation) .atlas-playback { display:grid!important; grid-template-columns:minmax(0,1fr) repeat(3,28px); align-items:center; gap:7px; height:auto; min-height:0; padding:0; margin:0; border:0; background:none; }
:is(#demo-explanation,#evo-explanation) .atlas-playback :is(#atlas-controls,#evo-model-settings) { display:contents!important; margin:0; padding:0; border:0; background:none; }
:is(#demo-explanation,#evo-explanation) :is(#atlas-controls,#evo-model-settings)>label { grid-column:1; grid-row:1; margin:0; font:500 12px/1.4 var(--sans); color:#365d49; }
:is(#demo-explanation,#evo-explanation) :is(#atlas-controls,#evo-model-settings)>select,:is(#demo-explanation,#evo-explanation) .atlas-range { grid-column:1/-1; grid-row:2; min-width:0; width:100%; }
:is(#demo-explanation,#evo-explanation) :is(#atlas-controls,#evo-model-settings) select { padding:8px 10px; font:400 13px/1.4 var(--sans); color:#365d49; border-color:#cbdad0; border-radius:6px; background:#fff; }
:is(#demo-explanation,#evo-explanation) .atlas-range { gap:10px; min-height:35px; }
:is(#demo-explanation,#evo-explanation) .atlas-range input { width:100%; min-width:30px; }
:is(#demo-explanation,#evo-explanation) :is(#atlas-parameter-value,#evo-model-parameter-value) { font:500 12px/1.4 var(--sans); font-variant-numeric:tabular-nums; }
:is(#demo-explanation,#evo-explanation) .round-control { width:28px; height:28px; font-size:12px; }
:is(#demo-explanation,#evo-explanation) :is(#atlas-play,#evo-model-play) { grid-column:2; grid-row:1; }
:is(#demo-explanation,#evo-explanation) :is(#atlas-reset,#evo-model-reset) { grid-column:3; grid-row:1; }
:is(#demo-explanation,#evo-explanation) :is(#analysis-fullscreen,#evo-model-fullscreen) { grid-column:4; grid-row:1; }
:is(#demo-explanation,#evo-explanation) #atlas-progress,:is(#demo-explanation,#evo-explanation) #atlas-time { display:none; }
:is(#model-diagram,#evo-model-diagram) { position:relative; min-width:0; flex:1; display:grid; place-items:center; }
:is(#model-diagram,#evo-model-diagram) :is(#atlas-canvas,#evo-model-canvas) { display:block!important; position:static; width:100%; height:auto; max-height:240px; aspect-ratio:640/410; }
:is(#model-diagram,#evo-model-diagram) text { font-size:14px; }
:is(#model-diagram,#evo-model-diagram) .model-hit { r:var(--model-hit-radius,23px); }
:is(#demo-explanation,#evo-explanation) .atlas-scene-readout { position:static; display:flex!important; flex-direction:column; gap:5px; margin:0; padding:12px 20px; border-top:1px solid #dce7df; background:#eef5f0; }
:is(#demo-explanation,#evo-explanation) .atlas-scene-readout>span,:is(#demo-explanation,#evo-explanation) .atlas-scene-readout>strong { font:400 13px/1.45 var(--sans); letter-spacing:0; color:#486957; }
:is(#demo-explanation,#evo-explanation) .atlas-scene-readout>strong { font-weight:600; font-variant-numeric:tabular-nums; }
#demo-rule { min-width:0; padding:18px; border-top:1px solid #dce7df; }
#demo-rule #scene-law { margin:0; padding:0; border:0; }
#demo-rule .full-rule h4 { font:600 14px/1.4 var(--sans); margin:0 0 8px; }
#demo-rule #scene-law-text { font:400 13px/1.75 var(--sans); color:#486556; }
:is(#demo-explanation,#evo-explanation) :is(#analysis-formula,#evo-model-formula) { margin:4px 18px 0; padding:10px 0; min-height:0; border-block:1px solid #e0e8e1; background:none; }
:is(#demo-explanation,#evo-explanation) .typeset-rule { gap:8px 18px; }
:is(#demo-explanation,#evo-explanation) .typeset-rule math { font-size:20px; }
:is(#demo-explanation,#evo-explanation) .formula-label { font-size:11px; }
:is(#demo-explanation,#evo-explanation) .typeset-rule .formula-part { flex-wrap:wrap; justify-content:center; gap:6px; }
:is(#demo-explanation,#evo-explanation) .full-rule { min-height:0; }
#demo-rule #oracle-chart-wrap { margin-top:16px; padding-top:0; border-top:0; }
#demo-rule #oracle-signal { font:500 12px/1.5 var(--sans); }
#demo-rule #oracle-chart { max-height:190px; }
#demo-rule #oracle-chart-legend { font-size:11px; }
@media(min-width:801px) {
  #worlds #scene-detail { position:relative; }
  #worlds .atlas-topline { position:absolute; top:12px; right:12px; left:auto; min-height:0; padding:0; border:0; background:none; z-index:2; }
  #worlds .atlas-copy h3 { max-width:calc(100% - 160px); margin:0; text-align:left; font-size:22px; }
  #worlds #oracle-plain { justify-content:flex-start; text-align:left; }
  #worlds .scene-choice-name { font-size:11px; }
  :is(#demo-explanation,#evo-explanation) { height:100%; }
  :is(#demo-explanation,#evo-explanation) .demo-model,#demo-rule { flex-shrink:0; }
  :is(#demo-explanation,#evo-explanation) .demo-model { height:100%; min-height:0; }
  :is(#demo-explanation,#evo-explanation) .model-heading,:is(#model-controls,#evo-model-controls),:is(#analysis-formula,#evo-model-formula),:is(#demo-explanation,#evo-explanation) .atlas-scene-readout { flex-shrink:0; }
  #worlds :is(#model-diagram,#evo-model-diagram) { min-height:100px; }
  #worlds :is(#model-diagram,#evo-model-diagram) :is(#atlas-canvas,#evo-model-canvas) { position:absolute; inset:0; width:100%; height:100%; max-height:none; aspect-ratio:auto; }
  :is(#demo-explanation,#evo-explanation) .model-heading { padding:15px 16px 10px; }
  :is(#model-controls,#evo-model-controls) { padding-inline:16px; }
  :is(#demo-explanation,#evo-explanation) .atlas-scene-readout { padding:10px 16px; }
}
@media(min-width:801px) and (max-width:1099px) {
  #worlds .scene-index { grid-column:1/-1; height:auto; min-height:0; border:0; background:none; }
  #worlds .scene-picker { display:none; }
  #worlds #scene-mobile-select { display:block; width:100%; min-height:38px; margin:0; padding:8px 12px; border:1px solid #d4dfd8; border-radius:7px; background:#fbfdf9; color:#426351; font:400 13px/1.5 var(--sans); }
  #worlds .scene-workspace[data-view=motion] #scene-detail { grid-column:1/-1; }
  #worlds .atlas-copy h3 { max-width:calc(100% - 140px); font-size:20px; }
}
@media(max-width:800px) { .model-heading { padding:16px 16px 12px; } :is(#model-controls,#evo-model-controls) { padding-inline:16px; } :is(#demo-explanation,#evo-explanation) .atlas-scene-readout { padding:12px 16px; } #demo-rule { padding:16px; } }
@media(max-width:420px) { :is(#demo-explanation,#evo-explanation) .typeset-rule math { font-size:18px; } }
:is(#demo-explanation,#evo-explanation):fullscreen { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(250px,1fr); width:100%; height:100dvh; margin:0; border:0; border-radius:0; overflow-y:auto; }
:is(#demo-explanation,#evo-explanation):fullscreen #demo-rule { border-top:0; border-left:1px solid #dce7df; }
:is(#demo-explanation,#evo-explanation):fullscreen :is(#model-diagram,#evo-model-diagram) :is(#atlas-canvas,#evo-model-canvas) { max-height:min(60vh,600px); }
@media(max-width:800px) { :is(#demo-explanation,#evo-explanation):fullscreen { display:flex; } }
.atlas-export #worlds .scene-workspace { display:block!important; }
.atlas-export #worlds .scene-index,.atlas-export #scene-detail { display:none!important; }
.atlas-export :is(#demo-explanation,#evo-explanation) { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(250px,1fr); position:fixed; inset:0; width:100vw; height:100vh; margin:0; border:0; border-radius:0; }
.atlas-export :is(#model-diagram,#evo-model-diagram) :is(#atlas-canvas,#evo-model-canvas) { max-height:none; }
.atlas-export #demo-rule #oracle-measurements { display:none; }


/* assets/framework.css */

#framework { background:#edf3f1; }
#framework .section { padding-block:54px; }
#framework .section-heading { margin-bottom:24px; }
#framework .section-heading h2 { font-size:clamp(34px,3.6vw,46px); line-height:1.08; }
#framework .section-heading > p { max-width:390px; }
.framework-figure { --fw-blue:#356f9f; --fw-green:#267665; --fw-purple:#80599b; --fw-gold:#8c692b; --fw-stage-color:var(--fw-blue); margin:0; border:1px solid #d3e1dc; border-radius:18px; background:#fbfdfc; overflow:hidden; box-shadow:0 14px 44px #284b3f08; }
.framework-figure[data-phase="1"],.framework-figure[data-phase="2"] { --fw-stage-color:var(--fw-green); }
.framework-figure[data-phase="3"] { --fw-stage-color:var(--fw-purple); }
.fw-caption { margin:0; }
.fw-toolbar { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:10px 26px; padding:14px 20px 10px; border-bottom:1px solid #e0e8e4; background:#f7faf8; }
.fw-map-key { grid-column:1/-1; display:flex; align-items:center; justify-content:space-between; gap:16px; }
.fw-figure-label { font-size:10px; color:var(--muted); }
.fw-legend { display:flex; align-items:center; gap:20px; margin-left:auto; font-size:10px; color:var(--muted); }
.fw-legend > span { display:flex; align-items:center; gap:6px; white-space:nowrap; }
.fw-legend i { width:20px; border-top:1.5px solid var(--fw-green); }
.fw-legend .fw-feedback-key { border-top-style:dashed; border-color:var(--fw-blue); }
.fw-legend .fw-law-key { border-top-style:dotted; border-color:var(--fw-gold); }
.fw-map { position:relative; padding:14px 24px 10px; isolation:isolate; }
.fw-lanes { display:grid; grid-template-columns:1fr 1.65fr 1fr; gap:22px; }
.fw-lane { --fw-color:var(--fw-blue); --fw-light:#e4eef9; --fw-lane-bg:#e8f0f9; position:relative; min-width:0; height:376px; border-radius:9px; background:linear-gradient(180deg,var(--fw-lane-bg),color-mix(in srgb,var(--fw-lane-bg) 45%,#fff)); box-shadow:inset 0 3px 0 color-mix(in srgb,var(--fw-color) 65%,#fff); }
.fw-exploration { --fw-color:var(--fw-green); --fw-light:#e0f1e8; --fw-lane-bg:#e3f2ea; }
.fw-evaluation { --fw-color:var(--fw-purple); --fw-light:#eee3f6; --fw-lane-bg:#eee6f5; }
.fw-lane-title { display:flex; align-items:center; gap:9px; margin:0; padding:10px 12px; font-family:var(--sans); font-size:13px; font-weight:600; line-height:1.3; color:var(--fw-color); }
.fw-node { position:absolute; z-index:2; display:flex; flex-direction:column; justify-content:center; gap:3px; min-width:0; height:54px; margin:0; padding:7px 12px; text-align:left; color:var(--ink); background:color-mix(in srgb,var(--fw-color) 3%,#fff); border:1px solid color-mix(in srgb,var(--fw-color) 30%,#fff); border-radius:10px; box-shadow:0 3px 8px #253c3603; transition:border-color .25s,box-shadow .25s,background .25s; }
.fw-node:hover { background:var(--fw-light); border-color:var(--fw-color); }
.fw-node:focus-visible { outline:2px solid var(--fw-color); outline-offset:4px; }
.fw-node.is-active { border-color:var(--fw-color); background:var(--fw-light); box-shadow:0 0 0 2px color-mix(in srgb,var(--fw-color) 9%,transparent),0 5px 14px #294c3c08; }
.fw-node[aria-pressed="true"] { box-shadow:0 0 0 3px color-mix(in srgb,var(--fw-color) 17%,transparent); }
.framework-figure[data-mode="focus"] .fw-node:not(.is-active) { opacity:.6; }
.framework-figure[data-mode="focus"] .fw-edge:not(.is-active) { opacity:.3; }
.fw-artifact { border-radius:6px; background:#fff; }
.fw-artifact::after { content:''; position:absolute; right:6px; top:6px; width:9px; height:9px; border-top:1px solid color-mix(in srgb,var(--fw-color) 40%,#fff); border-right:1px solid color-mix(in srgb,var(--fw-color) 40%,#fff); }
.fw-node-title { font-family:var(--sans); font-size:clamp(13px,1.08vw,15px); line-height:1.35; font-weight:500; letter-spacing:-.025em; }
.fw-node-note { color:var(--muted); font-size:10px; line-height:1.4; }
.fw-construction .fw-node,.fw-evaluation .fw-node { left:21px; right:21px; }
.fw-node[data-node="designer"] { top:64px; }
.fw-node[data-node="scenes"] { top:150px; height:62px; }
.fw-node[data-node="scenes"] .fw-node-title { max-width:135px; }
.fw-room-mark { position:absolute; width:36px; height:34px; right:12px; top:10px; fill:none; stroke:#7895a8; stroke-width:1.1; }
.fw-room-back { stroke:#b0c3ce; }
.fw-law-note { display:flex; align-items:center; gap:4px; margin-top:3px; color:var(--fw-gold); font-size:9px; white-space:nowrap; }
.fw-law-note svg { width:11px; height:11px; flex:none; fill:none; stroke:currentColor; stroke-width:1.2; }
.fw-node[data-node="evolution"],.fw-node[data-node="traces"],.fw-node[data-node="assessment"] { top:316px; }
.fw-node[data-node="world"],.fw-node[data-node="explorer"],.fw-node[data-node="report"] { top:108px; }
.fw-node[data-node="world"],.fw-node[data-node="explorer"] { width:calc(50% - 27px); padding-inline:12px; }
.fw-node[data-node="world"] { left:10px; }
.fw-node[data-node="explorer"] { right:10px; }
.fw-node[data-node="tools"],.fw-node[data-node="traces"] { width:calc(58% - 12px); left:calc(21% + 6px); }
.fw-node[data-node="tools"],.fw-node[data-node="judge"] { top:224px; }
.fw-assessment .fw-node-title { font-size:15px; white-space:nowrap; }
.fw-assessment .fw-node-title > span { font-size:13px; font-weight:600; color:var(--fw-color); }
.fw-assessment b { padding-inline:4px; font-weight:400; color:#b4a3c3; }
.fw-connections { position:absolute; z-index:1; inset:0; width:100%; height:100%; overflow:visible; pointer-events:none; }
.fw-edge,.fw-connections marker { --edge-color:var(--fw-green); }
.fw-edge[data-kind="construction"],.fw-edge[data-kind="feedback"],#fw-arrow-construction,#fw-arrow-feedback { --edge-color:var(--fw-blue); }
.fw-edge[data-kind="evaluation"],#fw-arrow-evaluation { --edge-color:var(--fw-purple); }
.fw-edge[data-kind="law"],#fw-arrow-law { --edge-color:var(--fw-gold); }
.fw-connections marker path { stroke:var(--edge-color); }
.fw-track { fill:none; stroke:var(--edge-color); stroke-opacity:.6; stroke-width:1.25; stroke-linecap:round; stroke-linejoin:round; transition:stroke-opacity .35s; }
.fw-edge[data-kind="feedback"] .fw-track { stroke-dasharray:5 5; }
.fw-edge[data-kind="law"] .fw-track { stroke-dasharray:3 5; stroke-width:1.1; }
.fw-edge.is-active .fw-track { stroke-opacity:1; stroke-width:1.65; }
.fw-edge-label text { font:10px var(--sans); fill:var(--edge-color); text-anchor:start; }
.fw-packet { fill:var(--edge-color); }
.fw-packet-halo { fill:var(--edge-color); opacity:.12; }
.fw-packet,.fw-packet-halo { visibility:hidden; }
.fw-edge.is-active .fw-packet,.fw-edge.is-active .fw-packet-halo { visibility:visible; }
.fw-playback-buttons { display:flex; align-items:center; gap:8px; flex:none; }
.fw-play,.fw-reset { display:flex; align-items:center; justify-content:center; height:34px; padding:0 12px; border:1px solid #d2e0d8; border-radius:6px; color:var(--teal); background:#fff; font-size:11px; }
.fw-play { gap:6px; min-width:86px; background:#2f665d; border-color:#2f665d; color:white; }
.fw-play svg { width:15px; height:15px; fill:none; stroke:currentColor; stroke-width:1.7; }
.fw-reset { padding:0; width:32px; font-size:19px; }
.fw-stages { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:6px; min-width:0; max-width:900px; }
.fw-stages > button { --fw-color:var(--fw-blue); display:flex; align-items:center; justify-content:center; gap:9px; min-width:0; border:1px solid transparent; border-radius:8px; padding:9px 10px; background:transparent; color:var(--fw-color); font-size:12px; font-weight:500; white-space:nowrap; }
.fw-stages > button[data-fw-stage="1"],.fw-stages > button[data-fw-stage="2"] { --fw-color:var(--fw-green); }
.fw-stages > button[data-fw-stage="3"] { --fw-color:var(--fw-purple); }
.fw-stages > button > span { display:grid; place-items:center; flex:none; width:24px; height:24px; border:1px solid color-mix(in srgb,var(--fw-color) 28%,#fff); border-radius:50%; background:#fff; font-size:10px; font-variant-numeric:tabular-nums; }
.fw-stages > button:hover { background:color-mix(in srgb,var(--fw-color) 8%,transparent); }
.fw-stages > button[aria-pressed="true"] { background:color-mix(in srgb,var(--fw-color) 9%,#fff); border-color:color-mix(in srgb,var(--fw-color) 25%,#fff); }
.fw-stages > button[aria-pressed="true"] > span { color:#fff; background:var(--fw-color); border-color:var(--fw-color); }
.fw-stages > button:focus-visible { outline:2px solid var(--fw-color); outline-offset:2px; }
.fw-detail { display:grid; grid-template-columns:.65fr 1.6fr; align-items:center; gap:20px; min-height:82px; padding:12px 20px; border-bottom:1px solid #e0e8e4; background:linear-gradient(90deg,color-mix(in srgb,var(--fw-stage-color) 5%,#fff),#fff); }
.fw-detail-heading > h3 { font-family:var(--serif); font-size:20px; font-weight:400; line-height:1.15; margin:0; }
.fw-detail-body > p { margin:0; color:var(--muted); font-size:12px; line-height:1.65; }
.fw-payload { display:flex; flex-wrap:wrap; gap:6px 22px; margin:6px 0 0; }
.fw-payload > div { display:flex; align-items:baseline; gap:7px; }
.fw-payload dt { color:#7c9287; font-size:8px; letter-spacing:.06em; }
.fw-payload dd { margin:0; font-size:10px; color:#3c6558; }
@media (max-width:1150px) and (min-width:901px) {
  .fw-map { padding-inline:15px; }
  .fw-lanes { gap:12px; }
  .fw-construction .fw-node,.fw-evaluation .fw-node { left:14px; right:14px; }
  .fw-node { padding-inline:10px; }
  .fw-node-note { font-size:9px; }
  .fw-node[data-node="scenes"] .fw-node-title { max-width:110px; }
  .fw-room-mark { width:36px; right:8px; }
  .fw-law-note { font-size:8px; }
  .fw-lane-title { gap:5px; padding-inline:8px; font-size:11px; }
  .fw-assessment .fw-node-title { font-size:13px; }
}
@media (max-width:900px) {
  #framework .section { padding-block:44px; }
  .fw-toolbar { gap:10px 18px; padding:12px 18px 10px; }
  .fw-stages > button { gap:6px; padding:8px 6px; font-size:11px; }
  .fw-map { padding:14px 26px 10px; }
  .fw-lanes { display:block; }
  .fw-lane { height:300px; margin-bottom:14px; }
  .fw-exploration { height:360px; }
  .fw-lane:last-child { margin-bottom:0; height:300px; }
  .fw-lane-title { justify-content:center; font-size:14px; padding-top:12px; }
  .fw-construction .fw-node,.fw-evaluation .fw-node { width:64%; left:18%; right:auto; }
  .fw-node[data-node="designer"] { top:56px; }
  .fw-node[data-node="scenes"] { top:144px; }
  .fw-node[data-node="evolution"] { top:238px; }
  .fw-node[data-node="world"],.fw-node[data-node="explorer"] { top:100px; width:calc(50% - 24px); }
  .fw-node[data-node="world"] { left:12px; }
  .fw-node[data-node="explorer"] { right:12px; }
  .fw-node[data-node="tools"] { top:212px; }
  .fw-node[data-node="traces"] { top:298px; }
  .fw-node[data-node="report"] { top:56px; }
  .fw-node[data-node="judge"] { top:154px; }
  .fw-node[data-node="assessment"] { top:240px; }
  .fw-node-title { font-size:15px; }
  .fw-node-note { font-size:10px; }
  .fw-node[data-node="scenes"] .fw-node-title { max-width:none; padding-right:44px; }
  .fw-law-note { font-size:9px; }
  .fw-assessment .fw-node-title { font-size:13px; }
  .fw-detail { grid-template-columns:1fr; align-content:center; gap:8px; min-height:106px; padding:14px 18px; }
}
@media (max-width:700px) {
  .fw-detail { min-height:130px; }
  .fw-toolbar { grid-template-columns:auto minmax(0,1fr); gap:10px 14px; }
  .fw-stages { grid-column:1/-1; gap:4px; max-width:none; }
  .fw-stages > button { flex-direction:column; gap:6px; padding:8px 4px; }
  .fw-map-key { grid-column:2; justify-content:flex-end; }
  .fw-map-key .fw-figure-label { display:none; }
  .fw-playback-buttons { gap:6px; }
  .fw-play { min-width:34px; padding:0; }
  .fw-play > span { display:none; }
  .fw-reset { width:30px; }
  .fw-legend { gap:12px; font-size:9px; }
  .fw-legend > span { gap:4px; }
  .fw-legend i { width:14px; }
}
@media (max-width:500px) {
  #framework .section-heading h2 { font-size:34px; }
  #framework .section-heading > p { font-size:12px; }
  .framework-figure { border-radius:10px; }
  .fw-toolbar { padding:12px 12px 10px; gap:10px 10px; }
  .fw-legend { gap:8px; font-size:8px; }
  .fw-map { padding:14px 24px 10px; }
  .fw-lane-title { font-size:12px; gap:8px; }
  .fw-construction .fw-node,.fw-evaluation .fw-node { width:84%; left:8%; }
  .fw-node-title { font-size:13px; }
  .fw-node-note { font-size:9px; }
  .fw-node[data-node="world"],.fw-node[data-node="explorer"] { width:calc(50% - 12px); padding-inline:9px; }
  .fw-node[data-node="world"] { left:0; }
  .fw-node[data-node="explorer"] { right:0; }
  .fw-node[data-node="tools"],.fw-node[data-node="traces"] { width:76%; left:12%; }
  .fw-node[data-node="scenes"] .fw-node-title { max-width:160px; padding-right:32px; }
  .fw-law-note { font-size:8px; }
  .fw-assessment .fw-node-title { font-size:13px; }
  .fw-edge-label text { font-size:9px; }
  .fw-stages > button { padding:8px 2px; font-size:10px; }
  .fw-detail { min-height:148px; padding:15px 17px; }
  .fw-detail-heading > h3 { font-size:20px; }
  .fw-detail-body > p { font-size:11px; }
  .fw-payload { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.7fr); gap:12px; }
  .fw-payload > div { display:grid; align-content:start; gap:3px; }
}
@media (max-width:360px) {
  .fw-stages > button { font-size:9px; }
  .fw-detail { min-height:164px; }
}
@media (prefers-reduced-motion:reduce) {
  .fw-node,.fw-track { transition:none; }
}
@media print {
  .fw-stages,.fw-playback-buttons { display:none; }
  .fw-track { stroke-opacity:1; }
  .framework-figure { break-inside:avoid; }
}


/* assets/scene-trajectories.css */
.physics-media > .scene-trajectories {
  position:absolute;
  z-index:3;
  inset:0;
  width:100%;
  height:100%;
  pointer-events:none;
  overflow:hidden;
}
.scene-motion-path {
  stroke-width:.55;
  stroke-opacity:.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.scene-motion-origin { opacity:.65; }
.scene-motion-vector {
  stroke-width:calc(2px * var(--guide-unit,1));
  stroke-linecap:round;
  stroke-linejoin:round;
}
.scene-motion-vector[data-vector="action"] { stroke-width:calc(2.8px * var(--guide-unit,1)); }
.scene-vector-halo { stroke:#fffdf7; stroke-opacity:.94; stroke-width:calc(5px * var(--guide-unit,1)); stroke-linecap:round; }
.scene-vector-tip { stroke:#fffdf7; stroke-width:calc(1px * var(--guide-unit,1)); stroke-linejoin:round; paint-order:stroke; }
.scene-action-badge { fill:#fffcf4; stroke:#c0a17a; stroke-width:calc(1px * var(--guide-unit,1)); }
.scene-motion-action-label {
  fill:#75400f;
  font:600 calc(12px * var(--guide-unit,1))/1 var(--sans);
  text-anchor:middle;
  dominant-baseline:central;
}
.scene-motion-force-label {
  fill:#286952;
  font:600 calc(11px * var(--guide-unit,1))/1 var(--sans);
  font-style:italic;
  paint-order:stroke;
  stroke:#fffdf7;
  stroke-width:calc(3px * var(--guide-unit,1));
  stroke-linejoin:round;
}
.scene-motion-key {
  display:flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
  gap:22px;
  min-height:25px;
  padding:4px 12px;
  color:#60766d;
  background:#f5f8f7;
  font:11px/1.5 var(--sans);
}
.scene-motion-key > span { display:flex; align-items:center; gap:6px; white-space:nowrap; }
.scene-motion-key i { position:relative; width:18px; border-top:1.5px solid currentColor; }
.scene-motion-key .is-reference { border-top-style:dashed; }
.scene-motion-key .is-force::after {
  content:'';
  position:absolute;
  top:-3px;
  right:0;
  width:4px;
  height:4px;
  border-top:1.5px solid currentColor;
  border-right:1.5px solid currentColor;
  transform:rotate(45deg);
}


/* assets/results.css */

#results > .section { padding-block:76px; }
#results .section-heading { margin-bottom:30px; }
.main-results-figure { padding:24px 28px 18px; border:1px solid var(--line); border-radius:16px; background:var(--white); }
.result-D { --result-color:#347c79; }
.result-C { --result-color:#6f88b0; }
.result-S { --result-color:#b39a60; }
.result-dot { display:inline-block; width:7px; height:7px; border-radius:50%; flex:none; background:var(--result-color); }
.results-layout { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:28px; }
.results-plot { --result-label:148px; --result-value:42px; --result-gap:12px; min-width:0; }
.results-axis { display:flex; justify-content:space-between; padding-bottom:5px; margin-left:calc(var(--result-label) + var(--result-gap) + 10px); margin-right:calc(var(--result-value) + var(--result-gap) + 10px); color:var(--muted); font-size:10px; line-height:1.3; font-variant-numeric:tabular-nums; }
.results-axis span { width:0; overflow:visible; text-align:center; }
.results-axis span:last-child { direction:rtl; }
.results-chart { display:flex; flex-direction:column; }
@media(min-width:801px) {
  #main > #results.chapter > .section { padding-block:12px; }
  #main #results .chapter-heading { margin-bottom:10px; }
  .main-results-figure { display:grid; grid-template-columns:minmax(0,1fr); gap:10px; padding:12px 20px; }
  .results-layout,.results-source,#results-announcement { grid-column:1/-1; }
  .results-layout { grid-template-columns:minmax(0,1fr) 470px; min-height:500px; gap:22px; }
  .results-plot { display:flex; flex-direction:column; }
  .results-chart { flex:1; }
  .result-row { flex:1; }
}
.result-row { display:grid; grid-template-columns:var(--result-label) minmax(0,1fr) var(--result-value); align-items:center; gap:var(--result-gap); min-height:35px; width:100%; padding:7px 10px; border:0; border-radius:5px; background:transparent; text-align:left; color:var(--ink); }
.result-row:hover { background:#f3f6f4; }
.result-row[aria-pressed=true] { background:#e8f1ed; }
.result-row[aria-pressed=true] .result-model-name { color:var(--teal); font-weight:600; }
.result-model-name { font-size:11px; line-height:1.4; overflow-wrap:anywhere; }
.result-lanes { display:grid; gap:3px; padding-block:1px; background:repeating-linear-gradient(90deg,#dfe7e580 0 1px,transparent 1px 25%); }
.result-lane { display:block; height:9px; position:relative; }
.result-lane i { display:block; height:100%; border-radius:0 2px 2px 0; background:var(--result-color); transform-origin:left; }
.result-lane[data-value="0"]::before { content:''; position:absolute; left:0; top:0; width:2px; height:100%; background:var(--result-color); opacity:.4; }
.result-row-value { text-align:right; font-size:11px; line-height:1; font-variant-numeric:tabular-nums; color:var(--muted); }
.results-inspector { padding:20px; border:1px solid #dfe9e3; border-radius:10px; background:#f6f9f6; min-width:0; align-self:start; }
.result-inspector-close { display:none; }
.result-inspector-heading { display:flex; align-items:center; justify-content:space-between; gap:10px; min-height:22px; }
.results-inspector h3 { min-width:0; margin:0; font:400 24px/1.25 var(--serif); overflow-wrap:anywhere; }
.result-exploration,.result-outcomes { flex:none; margin-top:8px; padding:0; }
.result-outcomes { padding-top:8px; border-top:1px dashed #b9ccc1; }
.result-behavior-heading { display:flex; align-items:center; justify-content:space-between; gap:8px; font-size:12px; line-height:1.3; font-weight:600; }
.result-behavior-heading small { font-size:10px; font-weight:400; color:var(--muted); }
.result-scores,.result-behavior { display:grid; gap:6px; margin:4px 0 0; }
.result-scores { grid-template-columns:repeat(3,minmax(0,1fr)); }
.result-behavior { grid-template-columns:repeat(5,minmax(0,1fr)); }
.result-metric { min-width:0; padding:4px 8px; border:1px solid #dde7e1; border-radius:6px; background:#f6f9f7; }
.result-metric dt { display:flex; align-items:center; gap:5px; color:var(--ink); font:500 11px/1.25 var(--sans); }
.result-metric dd { margin:2px 0 0; }
.result-metric-value { display:block; white-space:nowrap; line-height:1.1; font-variant-numeric:tabular-nums; }
.result-metric-value strong { font-size:21px; font-weight:600; color:var(--ink); }
.result-metric-value > span { font-size:11px; color:var(--muted); }
.result-metric-hint { display:block; margin-top:2px; color:var(--muted); font:10px/1.25 var(--sans); }
.result-metric-code { display:grid; place-items:center; flex:none; width:15px; height:15px; border-radius:3px; color:#fff; background:var(--result-color); font-size:9px; }
.result-score.result-D { background:#eaf4ee; border-color:#b8d3c6; }
.result-scene-heading { display:flex; justify-content:space-between; gap:8px; margin-block:16px 10px; padding-top:8px; border-top:1px dashed #b9ccc1; font-size:10px; }
.result-scene-heading small { color:var(--muted); font-size:9px; }
.result-scene-heads,.result-scenes { position:relative; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:12px; }
.result-scene-heads::after,.result-scenes::after { content:''; position:absolute; top:0; bottom:0; left:50%; border-left:1px dashed #c7d7cd; pointer-events:none; }
.result-scenes { row-gap:3px; }
.result-scene-table-head,.result-scene { display:grid; grid-template-columns:minmax(0,1fr) repeat(3,20px); align-items:center; gap:3px; padding:4px; }
.result-scene-table-head { padding-block:0 8px; font-size:10px; text-align:center; }
.result-scene-table-head > span:first-child { text-align:left; }
.result-scene-table-head > span:not(:first-child) { color:var(--result-color); font-weight:600; }
.result-scene { width:100%; border:1px solid transparent; border-radius:5px; background:transparent; color:var(--ink); font-size:11px; line-height:1.35; text-align:left; }
.result-scene:hover { border-color:#b5cdc1; background:#e8f1eb; }
.result-scene:focus-visible { outline:2px solid var(--teal); outline-offset:-2px; }
.result-scene-name { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.result-scene-name small { margin-right:6px; color:var(--muted); font-size:9px; }
.result-scene strong { padding:1px 0; border-radius:3px; background:color-mix(in srgb,var(--result-color) 14%,white); color:var(--result-color); text-align:center; font-size:10px; font-weight:500; }
.result-scene strong[data-level="0"] { background:#edf1ee; color:#839189; }
.result-control { display:flex; align-items:center; justify-content:space-between; width:100%; gap:12px; border:0; border-top:1px dashed #b9ccc1; margin-top:8px; padding:10px 0 0; background:transparent; color:var(--ink); text-align:left; font-size:10px; }
.result-control:hover { color:var(--teal); }
.result-control>span:last-child { font-size:9px; color:var(--muted); }
.result-control strong { font-size:13px; font-weight:500; font-variant-numeric:tabular-nums; }
.results-source { display:flex; align-items:baseline; justify-content:space-between; flex-wrap:wrap; gap:8px 20px; margin:18px 0 0; color:var(--muted); font-size:11px; line-height:1.6; }
.results-source a { color:var(--teal); font-size:12px; }
.results-source a:hover { text-decoration:underline; text-underline-offset:3px; }
.results-downloads { display:flex; gap:16px; flex-wrap:wrap; }
.result-details { margin-top:18px; border-bottom:1px solid var(--line); }
.result-details > summary { display:flex; justify-content:space-between; align-items:center; gap:20px; padding:16px 0; list-style:none; cursor:pointer; font-size:12px; }
.result-details > summary::-webkit-details-marker { display:none; }
.result-details > summary > span { color:var(--teal); font-size:20px; line-height:1; }
.result-details[open] > summary > span { transform:rotate(45deg); }
.results-detail-content { padding-block:12px 24px; min-width:0; }
.results-detail-content .subsection-heading { margin-top:0; }
#controlled-details { margin-top:32px; border-top:1px solid var(--line); }
.results-inspector[popover] { display:block; position:fixed; inset:auto 12px 16px; margin:0 auto; width:min(700px,calc(100% - 24px)); max-height:calc(100svh - 100px); overflow:auto; box-shadow:0 12px 48px #203c4330; }
.results-inspector[popover]:not(:popover-open) { display:none; }
.results-inspector[popover]::backdrop { background:#203c4338; }
.results-inspector[popover] .result-inspector-heading { padding-right:28px; }
.results-inspector[popover] .result-inspector-close { display:flex; align-items:center; justify-content:center; position:absolute; right:10px; top:10px; width:32px; height:32px; border:0; border-radius:50%; background:#e6eee8; color:var(--ink); font-size:22px; line-height:1; }
@media(max-width:1100px) {
  .results-layout { grid-template-columns:minmax(0,1fr) 280px; gap:18px; }
  .results-plot { --result-label:127px; --result-gap:8px; }
  .results-inspector { padding:16px; }
}
@media(min-width:801px) {
  .results-source { margin-top:0; }
  .result-row { min-height:24px; padding-block:2px; }
  .results-inspector { display:flex; flex-direction:column; align-self:stretch; min-height:0; padding:12px; }
  .results-inspector > :not(.result-scenes) { flex-shrink:0; }
  .result-scene-heading { margin-block:8px 4px; }
  .result-scene-table-head { padding-bottom:3px; }
  .result-scenes { flex:1; }
  .result-control { margin-top:4px; padding-top:5px; }
}
@media(min-width:801px) and (max-width:1100px) {
  .results-layout { grid-template-columns:minmax(0,1fr) 390px; min-height:500px; gap:18px; }
  .results-plot { --result-label:115px; }
  #main > #results.chapter > .section { padding-block:8px; }
  .result-metric { padding:4px 6px; }
  .result-metric-value strong { font-size:19px; }
  .result-behavior .result-metric dt { min-height:2.5em; font-size:10px; }
  .result-behavior-heading { flex-wrap:wrap; gap:2px 8px; }
}
@media(max-width:1000px) {
  .main-results-figure { padding:20px; }
  .results-layout { grid-template-columns:1fr; min-height:0; gap:22px; }
  .results-inspector { display:block; }
  .results-inspector .result-exploration,.results-inspector .result-outcomes { margin-top:14px; }
  .results-inspector .result-behavior { grid-template-columns:repeat(5,minmax(0,1fr)); }
}
@media(max-width:560px) {
  #results > .section { padding-block:54px; }
  #results .section-heading { gap:20px; margin-bottom:24px; }
  .main-results-figure { padding:18px 12px 16px; border-radius:12px; }
  .results-plot { --result-label:105px; --result-gap:7px; --result-value:37px; }
  .result-row { padding-inline:4px; min-height:37px; }
  .result-model-name,.result-row-value { font-size:10px; }
  .results-axis { margin-left:calc(var(--result-label) + var(--result-gap) + 4px); margin-right:calc(var(--result-value) + var(--result-gap) + 4px); font-size:8px; }
  .results-axis span:nth-child(even) { visibility:hidden; }
  .results-inspector { display:block; padding:16px; }
  .results-inspector h3 { font-size:23px; }
  .results-inspector .result-metric dt { min-height:2.5em; align-items:flex-start; }
  .results-inspector .result-behavior { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .result-scenes { gap:6px; }
  .result-scenes,.result-scene-heads { grid-template-columns:1fr; }
  .result-scenes::after,.result-scene-heads::after { display:none; }
  .result-scene-table-head:nth-child(2) { display:none; }
  .result-scene { padding:6px 0; }
  .results-source { line-height:1.7; }
  .result-details > summary { font-size:11px; }
}


/* assets/result-evidence.css */
.result-evidence-dialog,.evidence-turn-dialog { width:min(1160px,calc(100% - 32px)); max-height:calc(100svh - 32px); padding:0; border:1px solid var(--line); border-radius:14px; background:#fff; color:var(--ink); box-shadow:0 24px 90px #162f3440; }
.result-evidence-dialog::backdrop,.evidence-turn-dialog::backdrop { background:#142b35a8; }
.evidence-header { position:sticky; top:0; z-index:3; display:flex; align-items:flex-start; justify-content:space-between; gap:20px; padding:22px 24px 18px; background:#fff; }
.evidence-header p { margin:0 0 7px; color:var(--muted); font:12px/1.5 var(--sans); }
.evidence-header h3 { margin:0; font:600 25px/1.25 var(--sans); }
.evidence-header button { display:grid; place-items:center; flex:none; width:34px; height:34px; border:0; border-radius:50%; background:#edf3f0; color:var(--ink); font-size:24px; }
.evidence-runs { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; padding:0 24px 20px; }
.evidence-run { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:9px; min-width:0; padding:13px 10px; border:1px solid #dce6df; border-radius:8px; background:#f7faf8; color:var(--ink); font-size:12px; }
.evidence-run > strong { margin-right:7px; font-weight:500; }
.evidence-run[aria-selected=true] { border-color:#6d9e8a; background:#e8f3ec; box-shadow:0 0 0 1px #6d9e8a; }
.evidence-check { display:inline-block; white-space:nowrap; padding:4px 7px; border-radius:4px; color:var(--result-color); background:color-mix(in srgb,var(--result-color) 12%,white); font-size:11px; }
.evidence-check[data-pass=false],.evidence-check[data-pass=na] { color:#7c8983; background:#edf1ee; }
.evidence-checks { display:flex; align-items:center; flex-wrap:wrap; gap:9px; padding:16px 24px; border-block:1px solid var(--line); background:#f7faf8; }
.evidence-checks > strong { font:500 14px/1.6 var(--sans); }
.evidence-check-note { margin-left:auto; color:var(--muted); font:11px/1.5 var(--sans); }
.evidence-columns { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(0,1fr); gap:30px; padding:24px; }
.evidence-columns > * { min-width:0; }
.result-evidence-dialog h4,.evidence-turn-dialog h4 { margin:0 0 12px; font:600 15px/1.5 var(--sans); }
.evidence-claim { margin-bottom:14px; border-bottom:1px solid var(--line); }
.evidence-claim-number { color:var(--teal); font-size:11px; padding-top:3px; }
.result-evidence-dialog .evidence-claim > summary { display:grid; grid-template-columns:20px minmax(0,1fr) 12px; gap:10px; padding:0 0 14px; color:var(--ink); font:14px/1.65 var(--sans); }
.result-evidence-dialog .evidence-claim > summary::after { content:'+'; color:var(--teal); text-align:center; }
.result-evidence-dialog .evidence-claim[open] > summary::after { content:'−'; }
.result-evidence-dialog .evidence-claim[open] > summary { margin-bottom:0; }
.evidence-claim-body { padding:0 0 16px 30px; }
.evidence-more-claims { margin-bottom:20px; }
.evidence-more-claims > .evidence-claim { margin-top:14px; }
.evidence-claim-text { margin:0; font:14px/1.8 var(--sans); }
.evidence-citations { display:flex; align-items:center; flex-wrap:wrap; gap:5px; margin-top:12px; }
.evidence-citations > span { margin-right:3px; color:var(--muted); font-size:11px; }
.evidence-citations button { min-width:27px; min-height:27px; padding:3px 6px; border:1px solid #cbded2; border-radius:4px; background:#f2f8f4; color:var(--teal); font-size:11px; }
.evidence-citations button:hover { background:#dfede4; }
.evidence-reasoning { margin-top:12px; }
.result-evidence-dialog summary,.evidence-turn-dialog summary { color:var(--teal); font:12px/1.5 var(--sans); cursor:pointer; }
.result-evidence-dialog details[open] > summary,.evidence-turn-dialog details[open] > summary { margin-bottom:12px; }
.evidence-reasoning p,.evidence-reference p,#evidence-reason,#evidence-turn-note { margin:0 0 12px; font:13px/1.85 var(--sans); white-space:pre-wrap; overflow-wrap:anywhere; }
.evidence-columns aside section { margin-bottom:22px; padding:18px; border:1px solid var(--line); border-radius:8px; }
.evidence-judgement { background:#f5f8f5; }
.evidence-summary-label { margin:0 0 5px; color:var(--muted); font:10px/1.4 var(--sans); }
#evidence-summary { margin:0 0 12px; color:var(--ink); font:13px/1.65 var(--sans); }
.evidence-attribution { margin:0 0 14px; color:var(--muted); font:10px/1.5 var(--sans); }
.result-evidence-dialog pre,.evidence-turn-dialog pre { max-height:380px; overflow:auto; margin:8px 0 18px; padding:14px; border:1px solid var(--line); border-radius:6px; background:#f7f9f7; color:var(--ink); white-space:pre-wrap; overflow-wrap:anywhere; font:12px/1.65 monospace; }
.evidence-actions { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; margin:0; padding:18px 24px; border-top:1px solid var(--line); background:#f7faf8; font-size:12px; }
.evidence-actions button { padding:9px 13px; border:1px solid var(--teal); border-radius:6px; background:var(--teal); color:white; font:inherit; }
.evidence-actions a { color:var(--teal); }
.evidence-status { padding:24px; font-size:14px; }
.evidence-status button { margin-left:12px; padding:7px 13px; border:1px solid var(--line); border-radius:5px; background:#edf5ef; color:var(--teal); }
.evidence-turn-dialog { width:min(820px,calc(100% - 32px)); }
.evidence-turn-body { padding:0 24px 24px; }
.evidence-turn-body > label { margin-right:10px; font-size:12px; }
.evidence-turn-body > select { margin-bottom:20px; padding:7px; border:1px solid var(--line); border-radius:5px; background:#fff; color:var(--ink); }
.evidence-turn-body details { margin-top:16px; }
@media(min-width:801px) and (max-height:850px) {
  .evidence-header { padding:14px 20px 12px; }
  .evidence-header p { margin-bottom:4px; }
  .evidence-runs { gap:8px; padding:0 20px 12px; }
  .evidence-run { padding:8px 10px; }
  .evidence-checks { padding:10px 20px; }
  .evidence-columns { gap:22px; padding:18px 20px; }
  .result-evidence-dialog h4 { margin-bottom:9px; }
  .evidence-claim { margin-bottom:10px; }
  .result-evidence-dialog .evidence-claim > summary { padding-bottom:10px; }
  .evidence-more-claims { margin-bottom:14px; }
  .evidence-columns aside section { margin-bottom:14px; padding:14px; }
  .evidence-columns aside section:last-child { margin-bottom:0; }
  .evidence-actions { padding:10px 20px; }
}
@media(max-width:800px) {
  .evidence-columns { grid-template-columns:1fr; gap:20px; }
  .evidence-columns aside section { padding:14px; }
  .evidence-run { display:grid; grid-template-columns:repeat(3,auto); gap:5px; }
  .evidence-run > strong { grid-column:1/-1; margin:0 0 3px; }
  .evidence-run > span:only-of-type { grid-column:1/-1; }
}
@media(max-width:560px) {
  .evidence-header { padding:18px 16px 16px; }
  .evidence-header h3 { font-size:21px; }
  .evidence-runs { gap:6px; padding:0 16px 16px; }
  .evidence-run { padding:10px 5px; gap:3px; }
  .evidence-run .evidence-check { padding:3px; font-size:10px; }
  .evidence-checks,.evidence-columns,.evidence-actions { padding:16px; }
  .evidence-check-note { width:100%; margin:0; }
  .evidence-claim-body { padding-left:25px; }
  .evidence-turn-body { padding:0 16px 16px; }
}

/* Two reading modes; all original content remains available without nested menus. */
#result-evidence-dialog { width:min(880px,calc(100% - 32px)); }
#result-evidence-dialog .evidence-header { display:grid; grid-template-columns:minmax(0,1fr) 34px; gap:14px 20px; border-bottom:1px solid var(--line); }
.evidence-toolbar { grid-column:1/-1; display:flex; align-items:center; justify-content:space-between; gap:12px; }
.evidence-views { display:flex; gap:3px; padding:3px; border-radius:8px; background:#edf3ee; }
#evidence-views button { display:block; width:auto; height:32px; padding:5px 14px; border-radius:6px; background:transparent; color:#65786b; font:500 13px/1.4 var(--sans); }
#evidence-views button[aria-selected=true] { background:#fff; color:#2e6545; box-shadow:0 1px 4px #244b3218; }
#result-evidence-dialog .evidence-runs { display:flex; gap:4px; padding:0; }
#result-evidence-dialog .evidence-run { display:block; width:auto; height:32px; min-width:55px; padding:6px 10px; border:0; border-radius:6px; background:transparent; color:#63776a; box-shadow:none; font:12px/1.4 var(--sans); }
#result-evidence-dialog .evidence-run>strong { margin:0; font:inherit; }
#result-evidence-dialog .evidence-run[aria-selected=true] { background:#eaf3e7; color:#2e6545; font-weight:600; }
.evidence-view { padding:24px; }
#evidence-summary { margin:0; max-width:760px; font:15px/1.75 var(--sans); }
#evidence-full-view>section+section { padding-top:22px; margin-top:22px; border-top:1px solid var(--line); }
#result-evidence-dialog .evidence-claim,#result-evidence-dialog .evidence-experiment { margin:0; padding:16px 0; border:0; border-bottom:1px solid #e2eae3; }
#result-evidence-dialog .evidence-claim:last-child,#result-evidence-dialog .evidence-experiment:last-child { border-bottom:0; padding-bottom:0; }
#result-evidence-dialog h5 { display:flex; justify-content:space-between; align-items:center; gap:10px; margin:0 0 8px; font:600 12px/1.5 var(--sans); color:#54715e; }
#result-evidence-dialog .evidence-claim-body { padding:0; }
.evidence-report-fields { margin:0; }
.evidence-report-fields dt { margin:10px 0 3px; color:#688171; font:500 12px/1.4 var(--sans); }
.evidence-report-fields dd { margin:0; color:var(--ink); font:13px/1.75 var(--sans); white-space:pre-wrap; overflow-wrap:anywhere; }
#result-evidence-dialog .evidence-citations button,.evidence-original-turn { min-width:0; min-height:0; padding:2px 3px; border:0; background:transparent; color:var(--teal); text-decoration:underline; text-underline-offset:3px; font:12px/1.5 var(--sans); }
#result-evidence-dialog .evidence-citations button:hover,.evidence-original-turn:hover { color:#214f37; background:#edf5ee; }
@media(max-width:560px) {
  #result-evidence-dialog .evidence-header { gap:12px; }
  .evidence-toolbar { flex-wrap:wrap; gap:10px; }
  .evidence-views { flex:1; }
  #evidence-views button { flex:1; padding-inline:10px; }
  #result-evidence-dialog .evidence-runs { width:100%; }
  #result-evidence-dialog .evidence-run { flex:1; }
  .evidence-view { padding:18px 16px; }
}


/* assets/comparisons.css */

.discovery-practice-grid { display:grid; grid-template-columns:320px minmax(0,1fr); align-items:stretch; gap:20px; width:100%; margin-inline:auto; }
.discovery-findings,.discovery-cases { min-width:0; }
.discovery-findings,.discovery-cases { border:1px solid var(--line); border-radius:14px; background:#fbfcfa; overflow:hidden; }
.discovery-findings { display:flex; flex-direction:column; padding:10px 20px 6px; }
.discovery-findings-heading { display:flex; align-items:baseline; justify-content:space-between; gap:10px; }
.discovery-case-heading { display:flex; align-items:center; justify-content:center; padding:4px 16px; }
.discovery-case-heading .discovery-subheading { margin:0; }
.discovery-case-heading .case-tabs { flex:1; min-width:0; padding:0; border:0; background:none; }
.discovery-case-heading button:focus-visible { outline:2px solid #5388ad; outline-offset:2px; }
.discovery-cases { display:flex; flex-direction:column; align-self:start; }
.discovery-findings .controlled-comparisons { flex:1; display:grid; grid-template-rows:repeat(3,minmax(0,1fr)); }
.discovery-subheading { margin:0 0 14px; font-size:14px; font-weight:600; letter-spacing:0; }
.discovery-findings .discovery-subheading { margin-bottom:2px; }
.discovery-context { font-size:11px; }
.controlled-finding { display:flex; flex-direction:column; justify-content:center; padding:12px 0; border-bottom:1px solid var(--line); }
.controlled-finding:last-child { border-bottom:0; }
.controlled-finding h4 { font-size:17px; font-weight:500; letter-spacing:-.025em; }
.controlled-pair { display:grid; grid-template-columns:1fr 28px 1fr; align-items:end; gap:6px; margin-top:8px; }
.controlled-condition { display:block; margin-bottom:2px; color:var(--muted); font-size:12px; }
.controlled-pair strong { display:block; color:var(--teal); font-size:30px; font-weight:500; line-height:1.2; letter-spacing:-.04em; font-variant-numeric:tabular-nums; }
.controlled-pair strong small { margin-left:1px; font-size:18px; }
.controlled-arrow { padding-bottom:5px; color:#82968c; font-size:20px; }
.controlled-finding > p { margin-top:9px; font-size:12px; line-height:1.5; }
.discovery-findings .controlled-baseline { margin-top:6px; padding-top:9px; border-top:1px solid var(--line); font-size:11px; line-height:1.6; color:var(--muted); }
.discovery-cases .case-player { width:100%; flex:0 0 auto; border:0; border-top:1px solid var(--line); border-radius:0; }
.controlled-details { width:100%; margin:10px auto 0; border-top:1px solid var(--line); }
.controlled-details > summary { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:8px 0 0; color:var(--teal); font-size:12px; cursor:pointer; list-style:none; }
.controlled-details > summary::-webkit-details-marker { display:none; }
.controlled-details > summary > span { font-size:20px; line-height:1; }
.controlled-details[open] > summary > span { transform:rotate(45deg); }
.controlled-tables { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; margin-top:16px; }
.controlled-table { table-layout:fixed; }
.controlled-table caption { padding-bottom:10px; text-align:left; color:var(--ink); font-size:12px; font-weight:500; }
.controlled-table th,.controlled-table td { padding:7px 4px; border-color:var(--line); white-space:normal; font-size:12px; }
.controlled-table th:first-child { width:42%; padding-left:0; }
.controlled-table thead { background:transparent; }
.controlled-table thead th { font-size:11px; font-weight:400; }
.controlled-table tbody th { font-size:11px; }
.controlled-table tbody tr:last-child > * { border-bottom:0; }
@media(max-width:1050px) {
  .discovery-practice-grid { grid-template-columns:280px minmax(0,1fr); gap:18px; }
  .discovery-findings { padding-inline:20px; }
}
@media(max-width:800px) {
  .discovery-practice-grid { grid-template-columns:1fr; gap:14px; }
  .discovery-findings .controlled-comparisons { grid-template-columns:repeat(3,minmax(0,1fr)); grid-template-rows:auto; gap:22px; }
  .controlled-finding,.controlled-finding:last-child { padding:12px 0 0; border:0; }
  .controlled-finding h4 { font-size:16px; }
  .controlled-pair { grid-template-columns:1fr 16px 1fr; gap:3px; }
  .controlled-pair strong { font-size:25px; }
  .controlled-pair strong small { font-size:15px; }
  .controlled-arrow { font-size:17px; }
  .controlled-tables { grid-template-columns:1fr; gap:22px; }
}
@media(max-width:560px) {
  .discovery-findings .controlled-comparisons { grid-template-columns:1fr; gap:0; }
  .controlled-finding,.controlled-finding:last-child { display:grid; grid-template-columns:minmax(0,1fr) 146px; align-items:center; column-gap:14px; padding:8px 0; border-bottom:1px solid var(--line); }
  .controlled-finding h4 { max-width:160px; font-size:15px; line-height:1.45; }
  .controlled-pair { margin:0; }
  .controlled-condition { font-size:10px; }
  .controlled-finding > p { grid-column:1 / -1; margin-top:7px; font-size:11px; }
  .controlled-details { margin-top:10px; }
}


/* assets/discovery.css */

.case-studies .section-heading { margin-bottom:32px; }
.case-studies .case-tabs button { padding:18px 20px; font-size:14px; gap:12px; justify-content:center; min-width:0; }
.case-studies .case-tabs button[aria-selected=true] { background:#eaf1e8; }
.case-studies .case-panel { padding-top:30px; }
.case-studies .case-intro { max-width:900px; }
.case-studies .case-intro h3 { font-size:32px; margin-block:12px 10px; }
.case-studies .case-intro>p { font-size:15px; line-height:1.7; }
.case-studies .question-comparison { gap:20px; margin-top:24px; }
.case-studies .question-model { padding:17px 20px; flex-wrap:wrap; gap:8px 16px; }
.case-studies .question-model>span { font-size:15px; }
.case-studies .question-model small { font-size:9px; letter-spacing:.04em; }
.case-studies .question-narrative { padding:18px 20px; }
.case-studies .question-narrative p { font-size:14px; line-height:1.75; }
.case-takeaway { display:flex; align-items:baseline; gap:22px; padding:20px 24px; margin-top:22px; background:#eaf1e8; border-left:3px solid var(--teal); }
.case-takeaway>span { flex:none; font-size:10px; letter-spacing:.08em; color:var(--teal); }
.case-takeaway p { color:var(--ink); font-size:15px; line-height:1.7; }
.case-studies .case-record { margin-top:12px; padding-block:16px; }
.case-studies .case-record>summary { font-size:12px; gap:16px; }
.case-record>summary>span,.evolution-details>summary>span { flex:none; font-size:18px; transition:transform .15s; }
.case-record[open]>summary>span,.evolution-details[open]>summary>span { transform:rotate(45deg); }
.case-record-notes { display:grid; grid-template-columns:1fr 1fr; gap:30px; margin-top:26px; }
.case-record-notes h4 { font-size:13px; font-weight:500; }
.case-record blockquote { font-size:18px; overflow-wrap:anywhere; }
.case-studies .case-source { font-size:11px; margin-top:18px; max-width:940px; }
.case-record>a { display:inline-block; margin-top:14px; font-size:12px; color:var(--teal); }
.case-studies .prediction-strip { grid-template-columns:1fr 1fr; max-width:760px; padding:22px 26px; margin-top:24px; }
.case-studies .prediction-strip>div>span { font-size:13px; color:var(--ink); }
.case-studies .prediction-strip>div>p { font-size:12px; margin-top:12px; }
.case-studies .case-image-pair { margin-top:22px; }
.case-studies .case-image-pair figcaption { font-size:13px; }
.case-studies .case-image-pair figcaption>span { font-size:9px; }
.case-studies .tool-story { margin-top:24px; }
.case-studies .tool-story h4 { font-size:17px; }
.case-studies .tool-story p { font-size:13px; line-height:1.7; }
.case-studies .tool-stage { font-size:10px; }

.exploration-archive { margin-top:30px; border-block:1px solid var(--line); scroll-margin-top:100px; }
.exploration-archive>summary { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:23px 0; }
.exploration-archive>summary strong { display:block; font-size:17px; font-weight:500; }
.exploration-archive>summary small { display:block; margin-top:6px; color:var(--muted); font-size:12px; }
.archive-toggle { color:var(--teal); font-size:26px; transition:transform .15s; }
.exploration-archive[open] .archive-toggle { transform:rotate(45deg); }
.archive-body { padding-block:8px 25px; }
.success-picker { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin-bottom:16px; }
.success-picker button { text-align:left; border:1px solid var(--line); border-radius:7px; background:#fff; padding:15px 18px; min-width:0; }
.success-picker button>span { display:block; font-size:9px; letter-spacing:.08em; color:var(--muted); margin-bottom:7px; }
.success-picker button>strong { display:block; font-size:13px; font-weight:500; line-height:1.5; }
.success-picker button[aria-selected=true] { background:#e8f1ed; border-color:#8eafa1; color:var(--teal); }
.success-picker button:hover { border-color:#8eafa1; }
.discovery-workbench { background:#fff; border:1px solid var(--line); border-radius:10px; overflow:hidden; box-shadow:none; }
.discovery-title { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:25px; border-bottom:1px solid var(--line); }
.discovery-title h3 { font:400 28px/1.3 var(--serif); margin-top:8px; }
.discovery-title p { font-size:13px; margin-top:8px; max-width:650px; line-height:1.7; }
.discovery-title .eyebrow { font-size:10px; }
.verified-run { flex:none; text-align:right; }
.verified-run>span { font-size:9px; letter-spacing:.06em; color:var(--teal); }
.verified-run strong { display:block; font-weight:500; font-size:13px; line-height:1.7; margin-top:5px; color:var(--teal); }
.verified-run small { display:block; font-size:10px; color:var(--muted); margin-top:4px; }
.recorded-exploration { display:grid; grid-template-columns:1.3fr 1fr; }
.successful-run { min-width:0; border-right:1px solid var(--line); }
.success-video-frame { position:relative; background:#e8eff0; aspect-ratio:1000/620; }
.success-video-frame video { width:100%; height:100%; object-fit:contain; }
.success-chapters { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-block:1px solid var(--line); background:#f7faf8; }
.success-chapters button { padding:12px 10px; text-align:left; display:flex; gap:7px; font-size:11px; line-height:1.5; border-right:1px solid var(--line); position:relative; color:var(--muted); min-height:60px; }
.success-chapters button:last-child { border-right:0; }
.success-chapters button>span { font-size:10px; color:var(--teal); }
.success-chapters button[aria-selected=true] { background:#eaf2ed; color:var(--teal); }
.success-chapters button[aria-selected=true]:after { content:''; position:absolute; inset:auto 0 -1px; height:2px; background:var(--teal); }
.successful-run .playback-controls { padding:12px 16px; border-top:0; }
.success-evidence { padding:27px; min-width:0; }
.success-evidence h4 { font:400 25px/1.35 var(--serif); margin-bottom:14px; }
.success-evidence>p { font-size:14px; line-height:1.85; }
.success-evidence .note-details { margin-top:24px; }
.success-evidence .note-details summary { font-size:12px; }
.discovery-conclusion { border-top:1px solid var(--line); background:#edf4ef; padding:22px 25px; display:grid; grid-template-columns:90px 1fr; gap:20px; }
.discovery-conclusion>span { font-size:10px; letter-spacing:.08em; color:var(--teal); padding-top:5px; }
.discovery-conclusion p { font-size:13px; color:var(--ink); line-height:1.8; }
.final-note { padding:18px 25px; border-top:1px solid var(--line); }
.final-note summary { font-size:12px; color:var(--teal); display:flex; justify-content:space-between; gap:15px; }
.final-note blockquote { font-size:17px; line-height:1.75; overflow-wrap:anywhere; }
.success-source { display:flex; justify-content:space-between; flex-wrap:wrap; gap:12px; padding:16px 25px; font-size:12px; border-top:1px solid var(--line); }
.success-source a { color:var(--teal); }
.success-selection-note { font-size:12px; line-height:1.8; margin:16px 0 0; color:var(--muted); }
.success-selection-note a { color:var(--teal); text-decoration:underline; text-underline-offset:3px; }

.evolution-branches { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; }
.evolution-branches article { min-width:0; padding-left:24px; border-left:1px solid #c5d4c1; }
.evolution-branches article>span { font-size:10px; letter-spacing:.08em; color:var(--teal); }
.evolution-branches h3 { font:400 27px/1.3 var(--serif); margin-block:12px 10px; }
.evolution-branches p { font-size:14px; line-height:1.8; }
.evolution-result { margin-top:30px; font-size:14px; line-height:1.8; }
.evolution-result strong { color:var(--ink); font-weight:500; }
.evolution-details { margin-top:18px; border-top:1px solid #c5d4c1; }
.evolution-details>summary { display:flex; align-items:center; justify-content:space-between; gap:20px; padding-block:18px; color:var(--teal); font-size:12px; }
.evolution-compact .evolution-chart-wrap { margin-top:8px; }
.evolution-compact .evolution-chart-wrap h3 { margin-top:0; }

@media(max-width:900px) {
  .case-studies .case-tabs button { padding:15px 10px; gap:8px; font-size:12px; }
  .recorded-exploration { grid-template-columns:1fr; }
  .successful-run { border-right:0; }
  .success-evidence { border-top:1px solid var(--line); }
  .evolution-branches { gap:20px; }
  .evolution-branches article { padding-left:16px; }
  .evolution-branches h3 { font-size:24px; }
}
@media(max-width:600px) {
  .case-studies .section-heading { margin-bottom:25px; }
  .case-studies .case-tabs { gap:3px; }
  .case-studies .case-tabs button { width:auto; font-size:12px; line-height:1.5; padding:13px 7px; }
  .case-studies .case-tabs button>span { display:none; }
  .case-studies .case-intro h3 { font-size:28px; }
  .case-studies .case-intro>p { font-size:14px; }
  .case-studies .question-comparison { grid-template-columns:1fr; }
  .case-studies .question-model { padding:15px 18px; }
  .case-studies .question-narrative { padding:16px 18px; }
  .case-studies .question-model small { font-size:8px; }
  .case-takeaway { flex-direction:column; gap:8px; padding:18px; }
  .case-takeaway p { font-size:14px; }
  .case-record-notes { grid-template-columns:1fr; gap:20px; }
  .case-studies .prediction-strip { padding:18px 14px; }
  .case-studies .prediction-strip>div { padding-inline:12px; }
  .case-studies .prediction-strip>div:first-child { padding-left:0; }
  .case-studies .prediction-strip>div:last-child { padding-right:0; }
  .case-studies .prediction-strip>div>span { font-size:12px; }
  .case-studies .ball-equation { gap:7px; }
  .case-studies .ball-equation .ball { width:16px; height:16px; }
  .exploration-archive>summary strong { font-size:15px; line-height:1.5; }
  .exploration-archive>summary small { font-size:11px; }
  .success-picker { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
  .success-picker button { padding:13px; }
  .success-picker button>strong { font-size:12px; }
  .discovery-title { padding:20px; flex-direction:column; align-items:flex-start; gap:15px; }
  .verified-run { text-align:left; }
  .verified-run>span { display:none; }
  .success-chapters button { font-size:10px; padding:12px 8px; gap:5px; }
  .success-evidence { padding:20px; }
  .success-evidence h4 { font-size:23px; }
  .success-evidence>p { font-size:13px; }
  .discovery-conclusion { padding:20px; grid-template-columns:1fr; gap:8px; }
  .final-note,.success-source { padding:16px 20px; }
  .evolution-branches { grid-template-columns:1fr; gap:24px; }
  .evolution-branches article { padding-left:20px; }
  .evolution-branches h3 { margin-block:8px; }
  .evolution-result { font-size:13px; }
  .evolution-result strong { display:block; }
}
@media(prefers-reduced-motion:reduce) {
  .archive-toggle,.case-record>summary>span,.evolution-details>summary>span { transition:none; }
}


.exploration-dialog { width:min(1100px,calc(100% - 32px)); max-height:90svh; padding:24px; border:1px solid var(--line); border-radius:14px; color:var(--ink); background:var(--paper); }
.exploration-dialog::backdrop { background:#142b35a8; }
#exploration-close { display:block; margin:0 0 12px auto; width:36px; height:36px; border:0; border-radius:50%; background:var(--soft); color:var(--ink); font-size:24px; }
.exploration-dialog .exploration-archive { margin:0; border:0; }
.exploration-dialog .exploration-archive > summary { display:none; }
.exploration-dialog .archive-body { padding:0; }
.exploration-dialog { width:min(1120px,calc(100% - 32px)); max-height:calc(100svh - 32px); padding:0; background:#fff; box-shadow:0 24px 90px #162f3440; }
.exploration-dialog #exploration-close { position:absolute; z-index:3; right:14px; top:14px; margin:0; }
.replay-heading { padding:23px 62px 20px 24px; }
#discovery-source { font:12px/1.4 var(--sans); color:var(--muted); }
.replay-heading #discovery-title { margin:7px 0; font:600 26px/1.25 var(--sans); color:var(--ink); }
#discovery-finding { font:14px/1.6 var(--sans); max-width:750px; }
.discovery-comparison { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; padding:0 24px 20px; }
.discovery-trial { min-width:0; margin:0; overflow:hidden; border:1px solid var(--line); border-radius:9px; background:#f5f8f6; }
.discovery-trial h4 { margin:0; padding:12px 15px; font:600 15px/1.5 var(--sans); color:var(--ink); background:#edf4ef; }
.exploration-player .success-video-frame { width:100%; aspect-ratio:50/31; background:#f5f8f6; position:relative; }
.exploration-player .success-video-frame video { display:block; width:100%; height:100%; object-fit:contain; }
.discovery-guide { position:absolute; inset:0; width:100%; height:100%; pointer-events:none; }
.discovery-guide path,.discovery-guide circle { fill:none; vector-effect:non-scaling-stroke; stroke-linecap:round; stroke-linejoin:round; }
.discovery-trail-base { stroke:#fff; stroke-width:5; opacity:.8; }
.discovery-trail { stroke:var(--track-color); stroke-width:2; }
.discovery-target { stroke:var(--track-color); stroke-width:2; }
.discovery-target-label { fill:#fffffff0; }
.discovery-guide text { fill:var(--track-color); font:600 38px/1 var(--sans); }
.discovery-trial figcaption { min-height:64px; padding:13px 15px; font:14px/1.5 var(--sans); color:var(--ink); background:#fff; }
#success-status { margin:0; padding:8px 24px 16px; text-align:center; font-size:13px; color:var(--ink); }
.exploration-player .playback-controls { display:flex; align-items:center; gap:12px; padding:10px 18px; border-block:1px solid var(--line); background:#fff; }
.exploration-player .play-button { width:30px; height:30px; flex-shrink:0; border:1px solid var(--line); border-radius:50%; background:#f6faf7; color:var(--teal); }
.exploration-player #replay-progress { flex:1; min-width:0; accent-color:var(--teal); }
#replay-time { font:12px/1.3 var(--sans); font-variant-numeric:tabular-nums; white-space:nowrap; }
.exploration-player #replay-fullscreen { display:grid; place-items:center; width:30px; height:30px; flex-shrink:0; }
.replay-caption { min-height:61px; margin:0; padding:16px 24px; color:var(--ink); font:14px/1.6 var(--sans); background:#f3f8f4; }
.exploration-player:fullscreen { display:flex; flex-direction:column; width:100vw; height:100dvh; background:#f5f8f6; }
.exploration-player:fullscreen { overflow:auto; justify-content:center; }
.exploration-player:fullscreen .discovery-comparison { padding-top:20px; }
.exploration-player:fullscreen .playback-controls,.exploration-player:fullscreen .replay-caption { flex-shrink:0; }
@media(max-width:600px) {
  .replay-heading { padding:20px 56px 16px 18px; }
  .replay-heading #discovery-title { font-size:23px; }
  #discovery-finding,.replay-caption { font-size:13px; }
  .replay-caption { padding:14px 18px; }
  .exploration-player .playback-controls { padding:9px 12px; gap:8px; }
  .discovery-comparison { grid-template-columns:1fr; gap:12px; padding:0 18px 16px; }
  .discovery-trial h4 { padding:9px 12px; font-size:14px; }
  .discovery-trial figcaption { min-height:0; padding:9px 12px; font-size:13px; }
  .exploration-player .playback-controls { position:sticky; bottom:0; z-index:1; }
  #replay-time { font-size:10px; }
}


/* assets/case-films.css */
.case-player { display:block; width:min(100%,880px,calc(100svh - 48px)); margin-inline:auto; overflow:hidden; border:1px solid var(--line); border-radius:14px; background:#f5f8f7; }
.case-studies .case-player > .case-panel { min-width:0; }
/* Size the player to the selected case, without space from hidden panels. */
.case-studies .case-player > .case-panel[hidden] { display:none!important; }
.case-studies .case-tabs { display:flex; justify-content:center; gap:6px; padding:4px 12px; border:0; border-bottom:1px solid var(--line); background:#fbfcfa; }
.case-studies .case-tabs button { flex:1; min-width:0; justify-content:center; padding:7px 10px; border:1px solid transparent; border-radius:6px; background:transparent; font-size:12px; line-height:1.45; text-align:center; text-wrap:balance; transition:background .2s,color .2s; }
.case-studies .case-tabs button::after { display:none; }
.case-studies .case-tabs button:hover { color:var(--teal); background:#eef4f0; }
.case-studies .case-tabs button[aria-selected=true] { color:var(--teal); background:#e6efea; border-color:#c5d7ce; }
.case-studies .case-panel { padding:0; }
.case-film { display:flex; flex-direction:column; margin:0; background:#f5f8f7; }
.case-film > * { flex-shrink:0; }
.case-film .case-playback { margin-top:0; }
.case-film-screen { position:relative; width:100%; aspect-ratio:16/9; max-height:clamp(210px,calc(100svh - 440px),280px); min-height:0; background:#f5f8f7; }
.case-film-screen video { width:100%; height:100%; object-fit:contain; }
.case-playback { display:flex; align-items:center; gap:10px; padding:4px 16px; border-top:1px solid var(--line); background:#f5f8f7; }
.case-playback .round-control { width:32px; height:32px; color:#456b59; font-size:13px; }
.case-playback .case-play { color:#fff; border-color:var(--teal); background:var(--teal); }
.case-playback .case-play:hover { background:#286a67; }
.case-pause-icon,.case-playback.is-playing .case-play-icon { display:none; }
.case-playback.is-playing .case-pause-icon { display:block; }
.case-playback .case-progress { flex:1; min-width:30px; height:28px; margin:0; appearance:none; -webkit-appearance:none; background:transparent; cursor:pointer; touch-action:pan-y; }
.case-progress::-webkit-slider-runnable-track { height:4px; border-radius:3px; background:linear-gradient(to right,var(--teal) var(--case-progress,0%),#d5e1db var(--case-progress,0%)); }
.case-progress::-moz-range-track { height:4px; border-radius:3px; background:#d5e1db; }
.case-progress::-moz-range-progress { height:4px; border-radius:3px; background:var(--teal); }
.case-progress::-webkit-slider-thumb { width:12px; height:12px; margin-top:-4px; border:2px solid #fff; border-radius:50%; background:var(--teal); box-shadow:0 0 0 1px #afc7be; appearance:none; -webkit-appearance:none; }
.case-progress::-moz-range-thumb { width:8px; height:8px; border:2px solid #fff; border-radius:50%; background:var(--teal); box-shadow:0 0 0 1px #afc7be; }
.case-clock { min-width:74px; color:#637b6e; font-size:11px; font-variant-numeric:tabular-nums; white-space:nowrap; text-align:center; }
.case-speed { border:1px solid #ccd9d1; border-radius:5px; padding:5px 3px; color:#456753; background:#fbfdfa; font:12px var(--sans); cursor:pointer; }
.case-player :is(button,input,select):focus-visible { outline:2px solid #5388ad; outline-offset:2px; }
.case-film-status { position:absolute; left:50%; top:16px; transform:translateX(-50%); display:flex; align-items:center; gap:12px; width:max-content; max-width:calc(100% - 24px); padding:9px 14px; border:1px solid #d4e1d9; border-radius:8px; background:#fbfdf9f5; color:var(--ink); font-size:12px; box-shadow:0 3px 12px #264e380b; }
.case-film-status button { flex-shrink:0; padding:5px 9px; border:1px solid #bdd3c7; border-radius:5px; color:var(--teal); background:#fff; }
.case-question-intro { padding:7px 20px; background:#fbfcfa; text-align:center; }
.case-question-intro h3 { margin:0; font:400 21px/1.35 var(--serif); letter-spacing:-.025em; }
.case-question-intro p { max-width:720px; margin:5px auto 0; color:var(--muted); font-size:13px; line-height:1.5; text-wrap:balance; }
.case-question-models { display:grid; grid-template-columns:1fr 1fr; padding:0; border-top:1px solid var(--line); background:#fbfcfa; }
.case-question-models > div { display:flex; align-items:center; justify-content:center; padding:5px 12px; border-bottom:2px solid #65917c; }
.case-question-models > div + div { border-left:1px solid var(--line); border-bottom-color:#98a9b6; }
.case-question-models strong { font-size:13px; font-weight:600; }
.case-question-models span { font-size:11px; color:var(--muted); }
.case-question-models > div:first-child span { color:var(--teal); }
.case-film[data-film=question] .case-film-screen { aspect-ratio:5/2; }
.case-question-story { display:grid; flex:0 0 auto; align-content:start; min-height:0; padding:0; border-top:1px solid var(--line); background:#fbfcfa; }
.case-question-step { grid-area:1 / 1; }
.case-question-step[hidden] { display:block!important; visibility:hidden; }
.case-question-stage { margin:0 0 4px; color:var(--muted); font-size:11px; }
.case-question-comparison { display:grid; grid-template-columns:1fr 1fr; gap:0; }
.case-question-comparison p,.case-single-story p { display:flex; flex-direction:column; gap:5px; margin:0; padding:10px 16px; font-size:13px; line-height:1.5; }
.case-question-comparison p + p { border-left:1px solid var(--line); }
.case-question-comparison strong,.case-single-story strong { color:var(--ink); font-weight:600; }
.case-question-comparison span,.case-single-story span { color:var(--muted); }
.case-question-finding { margin:0; padding:8px 16px; border-top:1px solid #d5e3da; background:#edf4ee; color:#3c6751; font-size:13px; line-height:1.5; }
.case-question-finding strong { margin-right:7px; font-weight:600; }
.case-film[data-film=question] .case-question-finding strong { margin-right:4px; }
.case-question-intro,.case-question-models,.case-question-story,.case-question-finding { flex-shrink:0; }
.case-film:fullscreen { display:flex; flex-direction:column; width:100%; height:100%; }
.case-film:fullscreen .case-film-screen { flex:1; aspect-ratio:auto; max-height:none; }
.case-film:fullscreen .case-question-story { flex:0 0 auto; }
.case-film:fullscreen .case-question-finding { flex:0 0 auto; }
.case-film:fullscreen .case-playback { flex-shrink:0; padding:12px 20px; padding-bottom:max(12px,env(safe-area-inset-bottom)); }
.case-studies .discovery-case-heading .case-tabs { padding:0; border:0; }
@media(max-width:800px) {
  .case-player { width:100%; }
}
@media(max-width:600px) {
  .case-player { border-radius:10px; }
  .case-studies .case-tabs { gap:4px; padding:6px; }
  .case-studies .case-tabs button { padding:7px 4px; font-size:11px; }
  .case-playback { display:grid; grid-template-columns:32px 32px minmax(0,1fr) auto 32px; gap:4px 8px; padding:6px 12px 10px; }
  .case-playback .case-progress { grid-area:1 / 1 / 2 / -1; height:24px; }
  .case-playback .round-control { width:32px; height:32px; }
  .case-clock { min-width:67px; font-size:11px; text-align:left; }
  .case-speed { font-size:11px; }
  .case-question-intro { padding:7px 12px; }
  .case-question-intro h3 { font-size:19px; }
  .case-question-intro p { font-size:12px; }
  .case-question-models { padding:0; }
  .case-question-models > div { flex-direction:column; }
  .case-question-models strong { font-size:11px; }
  .case-question-models span { font-size:10px; }
  .case-question-story { padding:0; }
  .case-question-comparison { grid-template-columns:1fr; gap:0; }
  .case-question-comparison p,.case-single-story p { padding:9px 12px; font-size:12px; }
  .case-question-comparison p + p { border-left:0; border-top:1px solid var(--line); }
  .case-question-finding { padding:7px 12px; font-size:12px; }
}
@media(prefers-reduced-motion:reduce) {
  .case-studies .case-tabs button { transition:none; }
}


/* assets/evolution.css */
/* The 15 Worlds' atlas and model components, arranged for three evolved scenes. */
#main > #evolution.chapter > .section { padding-block:28px; }
#main > #evolution .chapter-heading { margin-bottom:16px; }
#evo-detail { position:relative; }
#evo-detail .atlas-topline { position:absolute; top:12px; right:12px; left:auto; padding:0; min-height:0; border:0; background:none; z-index:3; }
#evo-detail .atlas-copy { align-items:flex-start; text-align:left; padding:10px 16px 8px; }
#evo-detail .atlas-copy h3 { max-width:calc(100% - 160px); font-size:21px; }
#evo-law { margin:5px 0 0; font-size:13px; line-height:1.45; }
#evo-demo-view { display:flex; flex:1; flex-direction:column; height:100%; min-height:0; }
#evo-demo-video { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:50% 40%; }
#evo-demo-error { position:absolute; left:16px; bottom:66px; color:var(--teal); font-size:12px; }
#evo-experiment-view { position:relative; flex:1; min-height:0; }
#evo-explanation .demo-model { height:100%; min-height:0; flex-shrink:0; }
#evo-explanation .model-heading,#evo-model-controls,#evo-model-formula,#evo-explanation .atlas-scene-readout,.model-timebar,#evo-model-note { flex-shrink:0; }
#evo-explanation .model-heading { display:flex; align-items:baseline; justify-content:space-between; gap:8px; padding:10px 14px 7px; }
#evo-model-controls { padding:0 14px 4px; }
#evo-explanation .atlas-playback { gap:5px; }
#evo-explanation #evo-model-settings select { padding-block:5px; }
#evo-explanation #evo-model-formula { margin:2px 14px 0; padding:4px 0; }
#evo-explanation .typeset-rule { gap:5px 14px; }
#evo-explanation .typeset-rule math { font-size:18px; }
#evo-model-diagram { min-height:145px; }
#evo-model-diagram #evo-model-canvas { position:absolute; inset:0; width:100%; height:100%; max-height:none; aspect-ratio:auto; }
#evo-model-canvas text { font-size:20px; }
#evo-model-canvas [data-evo-model-blue] { cursor:pointer; }
#evo-model-canvas .model-hit { fill:transparent; stroke:transparent; pointer-events:all; }
#evo-model-canvas [data-evo-model-blue]:hover .model-hit { stroke:#6c9a83; stroke-dasharray:3 4; }
#evo-explanation .atlas-scene-readout { padding:6px 14px; gap:2px; min-height:48px; }
#evo-explanation .atlas-scene-readout>span,#evo-explanation .atlas-scene-readout>strong { font-size:12px; line-height:1.45; }
.model-timebar { display:flex; align-items:center; gap:10px; padding:2px 14px 0; background:#eef5f0; }
.model-timebar input { min-width:0; flex:1; accent-color:#5c8b70; }
.model-timebar output { min-width:42px; font-size:11px; font-variant-numeric:tabular-nums; color:#486957; }
#evo-model-note { margin:0; padding:3px 14px 7px; font-size:10px; line-height:1.5; color:#6b8074; background:#eef5f0; }
.evo-model-rule { padding:12px 14px; border-top:1px solid #dce7df; }
.evo-model-rule h4 { margin:0 0 8px; font:600 14px/1.4 var(--sans); }
.evo-model-rule p { margin:0; color:#486556; font:13px/1.6 var(--sans); }
.evo-demo-data { margin-top:12px; }
.evo-demo-data h4 { display:flex; justify-content:space-between; gap:8px; align-items:baseline; }
.evo-demo-data h4 span { color:var(--muted); font-size:10px; font-weight:400; }
#evo-demo-chart { display:block; width:100%; }
#evo-demo-chart text { fill:#637b6e; font:12px var(--sans); }
.evo-time-marker { color:#a95b32; pointer-events:none; }
.evo-time-line { fill:none; stroke:currentColor; stroke-width:2; vector-effect:non-scaling-stroke; }
.evo-time-head { fill:currentColor; }
.evo-time-point { fill:currentColor; stroke:#fff; stroke-width:1.5; vector-effect:non-scaling-stroke; }
#evo-chart-retry { margin-top:8px; color:var(--teal); text-decoration:underline; }
#evolution :is(button,select,summary,a):focus-visible { outline:2px solid var(--teal); outline-offset:3px; }
#evo-explanation:fullscreen { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr); width:100%; height:100dvh; }
#evo-explanation:fullscreen .demo-model { min-height:0; height:100%; }
#evo-explanation:fullscreen .evo-model-rule { border-top:0; border-left:1px solid #dce7df; }
@media(max-width:800px) {
  #evo-detail .atlas-copy h3 { font-size:20px; max-width:calc(100% - 140px); }
  #evo-detail .atlas-visual,#evo-demo-view { flex:none; height:auto; }
  #evo-demo-view .physics-video-frame,#evo-experiment-view { flex:none; height:auto; aspect-ratio:3/2; }
  #evo-explanation .demo-model { height:auto; }
  #evo-model-diagram { flex:none; height:clamp(180px,38vw,240px); }
  #evo-explanation:fullscreen { display:flex; }
}
@media(max-width:380px) {
  #evo-detail .atlas-copy h3 { font-size:17px; }
}
@media(orientation:portrait) {
  #evo-demo-view:fullscreen #evo-demo-video { object-fit:contain; object-position:50% 50%; }
}


/* assets/chapters.css */

#main > .chapter { position:relative; border-top:0; scroll-margin-top:24px; }
#main > .chapter::before { content:''; position:absolute; top:0; left:50%; width:calc(100% - 64px); max-width:1040px; height:1px; transform:translateX(-50%); background:linear-gradient(90deg,transparent,#becfc2) left center / calc(50% - 14px) 1px no-repeat,linear-gradient(90deg,#becfc2,transparent) right center / calc(50% - 14px) 1px no-repeat; pointer-events:none; }
#main > .chapter::after { content:''; position:absolute; top:-3px; left:50%; width:6px; height:6px; border:1px solid #9db6a4; transform:translateX(-50%) rotate(45deg); pointer-events:none; }
#main > :is(#worlds,#framework,#results,#controlled,#evolution).chapter { border-block:0; background:var(--paper); }
#main > .chapter.section,#main > .chapter > .section { padding-block:64px; }
#main .chapter-heading {
  display:block;
  margin:0 auto 30px;
  text-align:center;
}
#main .chapter-heading h2 {
  margin:0;
  font:600 36px/1.2 var(--sans);
  letter-spacing:-.035em;
  color:var(--ink);
  text-wrap:balance;
}
#main .chapter-heading .section-number {
  display:inline-block;
  margin-right:15px;
  font:500 16px/1 var(--sans);
  letter-spacing:.04em;
  vertical-align:middle;
  color:var(--teal);
}
#main .chapter-heading > button { margin-top:18px; font-size:14px; }
#main > #worlds.chapter { padding-block:40px 64px; }
#main > #framework.chapter > .section { padding-top:56px; }
#worlds .chapter-heading { margin-bottom:24px; }
#main > #controlled.chapter { padding-block:24px; }
#main #controlled .chapter-heading { margin-bottom:12px; }
.site-header nav { gap:24px; font-size:13px; font-weight:500; }


.results-axis { font-size:12px; }
.result-model-name { font-size:13px; }
.result-row-value { font-size:12px; }
.result-score dt,.result-behavior-heading,.result-behavior > div,.result-scene-heading,.result-control { font-size:12px; }
.result-control > span:last-child { font-size:11px; }
.evolution-origin { font-size:15px; }
.evolution-demo p,.evo-rule-details p { font-size:14px; line-height:1.7; }
.evolution-demo figcaption > span { font-size:12px; }
.fw-detail-body > p { font-size:14px; line-height:1.65; }

@media(min-width:801px) {
  #worlds .scene-workspace { height:clamp(340px,calc(100svh - 260px),690px); }
  #scene-picker .scene-choice-name { font-size:12px; }
  #scene-picker button { gap:5px; }
}
@media(max-width:1080px) {
  .site-header nav { gap:15px; font-size:12px; }
  #scene-picker .scene-choice-name { font-size:10.5px; }
}
@media(max-width:900px) {
  .site-header nav { display:none; }
}
@media(max-width:800px) {
  #main > .chapter.section,#main > .chapter > .section { padding-block:44px; }
  #main > #worlds.chapter { padding-bottom:44px; }
  #main > #framework.chapter > .section { padding-top:40px; }
  #main .chapter-heading { margin-bottom:26px; }
  #main .chapter-heading h2 { font-size:30px; line-height:1.25; }
  #main .chapter-heading .section-number { font-size:14px; margin-right:10px; }
}
@media(max-width:560px) {
  #main > #controlled.chapter { padding-block:24px; }
  #main .chapter-heading h2 { font-size:28px; }
  #main .chapter-heading .section-number { font-size:13px; margin-right:8px; }
}

/* Equal breathing room around each chapter's ornament and heading. */
#main > :is(#worlds,#controlled).chapter.section,
#main > :is(#framework,#results,#evolution).chapter > .section { padding-block:40px; }
@media(max-width:800px) {
  #main > :is(#worlds,#controlled).chapter.section,
  #main > :is(#framework,#results,#evolution).chapter > .section { padding-block:32px; }
  #main > .chapter::before { width:calc(100% - 40px); }
}


/* assets/compact-model.css */
/* A quiet model panel: rule, visible conditions, equation, and live outcome. */
:is(#demo-explanation,#evo-explanation) { overflow:visible; border-color:#d5e2d9; border-radius:14px; background:#fbfdfa; box-shadow:0 5px 20px #234b3510; }
:is(#demo-explanation,#evo-explanation) .demo-model {
  display:grid;
  grid-template-columns:minmax(0,1fr) repeat(3,26px);
  grid-template-rows:repeat(5,max-content) minmax(130px,1fr) max-content;
  grid-auto-rows:max-content;
  gap:7px 6px;
  flex:1;
  height:auto;
  min-height:min-content;
  padding:13px 14px 0;
  border-radius:14px;
  background:linear-gradient(155deg,#fff 0%,#f6faf6 80%);
}
:is(#demo-explanation,#evo-explanation) .model-heading,
:is(#demo-explanation,#evo-explanation) :is(#model-controls,#evo-model-controls),
:is(#demo-explanation,#evo-explanation) .atlas-playback { display:contents!important; }
:is(#model-heading,#evo-model-heading) { grid-column:1; grid-row:1; font-size:16px; letter-spacing:-.02em; align-self:center; }
:is(#demo-explanation,#evo-explanation) .model-heading #analysis-model-note,
#evo-explanation #evo-model-note { grid-column:1/-1; grid-row:2; margin:0; padding:0; background:none; font:400 11.5px/1.4 var(--sans); color:#61786b; }
:is(#demo-explanation,#evo-explanation) :is(#atlas-play,#evo-model-play) { grid-column:2; grid-row:1; }
:is(#demo-explanation,#evo-explanation) :is(#atlas-reset,#evo-model-reset) { grid-column:3; grid-row:1; }
:is(#demo-explanation,#evo-explanation) :is(#analysis-fullscreen,#evo-model-fullscreen) { grid-column:4; grid-row:1; }
:is(#demo-explanation,#evo-explanation) .round-control { width:26px; height:26px; }
:is(#demo-explanation,#evo-explanation) .atlas-playback :is(#atlas-controls,#evo-model-settings) {
  display:flex!important; grid-column:1/-1; grid-row:4; gap:8px; align-items:center; min-width:0; margin:0; padding:0;
}
:is(#demo-explanation,#evo-explanation) :is(#atlas-controls,#evo-model-settings)>.model-setting-label { flex:0 1 auto; font-size:11.5px; line-height:1.35; }
:is(#demo-explanation,#evo-explanation) :is(#atlas-controls,#evo-model-settings)>select,
:is(#demo-explanation,#evo-explanation) .atlas-range { flex:1; width:0; min-width:0; }
:is(#demo-explanation,#evo-explanation) :is(#atlas-controls,#evo-model-settings) select { padding:5px 7px; font-size:12px; }
:is(#demo-explanation,#evo-explanation) .atlas-range { gap:7px; min-height:28px; }
:is(#demo-explanation,#evo-explanation) :is(#atlas-parameter-value,#evo-model-parameter-value) { font-size:11px; min-width:0; }
:is(#demo-explanation,#evo-explanation) :is(#analysis-formula,#evo-model-formula) { grid-column:1/-1; grid-row:5; margin:0; padding:9px 0 3px; gap:5px 12px; border:0; color:#325e47; }
:is(#demo-explanation,#evo-explanation) .typeset-rule .formula-part { flex-direction:column; gap:1px; }
:is(#demo-explanation,#evo-explanation) .typeset-rule math { font-size:21px; }
:is(#demo-explanation,#evo-explanation) .formula-label { font-size:10.5px; }
:is(#worlds,#evolution) :is(#model-diagram,#evo-model-diagram) { grid-column:1/-1; grid-row:6; min-height:130px; background:radial-gradient(ellipse at center,#fff9,transparent 70%); }
:is(#worlds,#evolution) :is(#model-diagram,#evo-model-diagram) :is(#atlas-canvas,#evo-model-canvas) { position:absolute; inset:0; width:100%; height:100%; max-height:none; aspect-ratio:auto; }
:is(#demo-explanation,#evo-explanation) .atlas-scene-readout { grid-column:1/-1; grid-row:7; flex-direction:row; flex-wrap:wrap; justify-content:space-between; gap:3px 8px; min-height:0; margin:0 -14px; padding:10px 14px; border-color:#dfe9df; border-radius:0 0 14px 14px; background:#edf5ed; }
:is(#demo-explanation,#evo-explanation) .atlas-scene-readout>span,
:is(#demo-explanation,#evo-explanation) .atlas-scene-readout>strong { font-size:12px; line-height:1.4; }
:is(#demo-explanation,#evo-explanation) .atlas-scene-readout>strong { color:#2f6549; font-weight:600; }
:is(#atlas-model-caption,#evo-model-caption) { flex:1; min-width:0; margin:0; color:#365e48; font:500 13px/1.5 var(--sans); font-variant-numeric:tabular-nums; text-align:left; text-wrap:wrap; }
#evo-explanation .demo-model { gap:5px 6px; }
#evo-explanation .model-timebar { grid-column:1/-1; grid-row:8; margin:-5px -14px 0; padding:4px 14px 9px; min-height:20px; background:#edf5ed; border-radius:0 0 14px 14px; }
#evo-explanation .atlas-scene-readout { border-radius:0; }
#demo-rule,#evo-explanation .evo-model-rule { grid-column:1/-1; grid-row:3; min-height:0; padding:10px 0; border:0; border-block:1px solid #d0ddd3; }
#demo-rule .full-rule { display:block; }
#demo-explanation[data-scene="13"] #analysis-formula { display:none; }
#contact-steps { grid-column:1/-1; grid-row:5; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:6px; margin:3px 0; }
#contact-steps[hidden] { display:none; }
#contact-steps button { display:flex; align-items:center; justify-content:center; gap:7px; padding:8px 5px; border:1px solid #cbdcd1; border-radius:6px; color:#3d6450; background:#fff; font:12px/1.3 var(--sans); }
#contact-steps strong { display:grid; place-items:center; width:23px; height:23px; flex:none; border-radius:50%; background:#edf4ef; font-size:12px; }
#contact-steps button[aria-pressed="true"] { border-color:#47856a; background:#e2f0e6; }
#contact-steps button[aria-pressed="true"] strong { background:#367b60; color:#fff; }
#contact-steps button:last-child { color:#276947; }
#demo-rule .full-rule,#evo-explanation .evo-rule-copy { font:400 12px/1.45 var(--sans); }
#demo-rule .full-rule h4,#evo-explanation .evo-model-rule>h4 { display:block; margin:0 0 3px; font:600 12px/1.45 var(--sans); }
#demo-rule .full-rule h4::after,#evo-explanation .evo-model-rule>h4::after { content:none; }
#demo-rule #scene-law-text,#evo-explanation #evo-model-rule { display:block; margin:0; font:400 12px/1.45 var(--sans); }
.model-options { flex:1; min-width:0; min-inline-size:0; width:100%; margin:0; padding:0; border:0; }
.model-options .model-setting-label { margin:0 0 7px; padding:0; color:#5a7464; font:500 11.5px/1.35 var(--sans); }
.model-choice-grid { display:grid; grid-template-columns:repeat(var(--choice-columns,3),minmax(0,1fr)); gap:6px; }
:is(#demo-explanation,#evo-explanation) .model-choice {
  position:relative; display:flex; flex-direction:column; align-items:center; justify-content:flex-start;
  gap:4px; min-width:0; min-height:70px; margin:0; padding:7px 5px 8px;
  border:1px solid #dce6dd; border-radius:9px; background:#fff9; color:#526f5e;
  cursor:pointer; text-align:center; transition:background .15s,border-color .15s,box-shadow .15s;
}
.model-choice input[type=radio] { position:absolute; inset:0; width:100%; height:100%; margin:0; opacity:0; cursor:pointer; }
.model-choice-art { display:block; width:64px; max-width:100%; height:28px; flex:none; }
.model-choice-art svg { display:block; width:100%; height:100%; }
.model-choice-label { display:block; max-width:100%; font:400 11.5px/1.3 var(--sans); text-wrap:balance; overflow-wrap:break-word; }
:is(#demo-explanation,#evo-explanation) .model-choice:hover { border-color:#a9c2ad; background:#f1f7ee; }
:is(#demo-explanation,#evo-explanation) .model-choice:has(input:checked) { border-color:#719c7b; background:#eaf4e7; box-shadow:inset 0 0 0 .5px #719c7b; color:#315d40; }
.model-choice:has(input:checked) .model-choice-label { font-weight:600; }
.model-choice:has(input:checked)::after { content:''; position:absolute; top:6px; right:6px; width:4px; height:4px; border-radius:50%; background:#5d8b67; pointer-events:none; }
.model-choice:has(input:focus-visible) { outline:2px solid #357650; outline-offset:3px; }
@media(prefers-reduced-motion:reduce) { .model-choice { transition:none!important; } }
#demo-rule #oracle-chart-wrap,#evo-explanation .evo-demo-data { margin-top:7px; padding-top:6px; border-top:1px solid #e0e8e1; }
#demo-rule .oracle-chart>div { flex-direction:row; flex-wrap:wrap; gap:2px 10px; align-items:baseline; }
#demo-rule #oracle-signal { font-size:11px; line-height:1.35; }
#demo-rule #oracle-chart-legend { gap:3px 9px; font-size:10.5px; line-height:1.35; }
#demo-rule #oracle-chart { height:98px; max-height:none; margin-top:3px; }
#demo-rule #oracle-measurements { min-height:130px; }
#evo-explanation .evo-demo-data h4 { margin:0 0 3px; font-size:11px; line-height:1.35; }
#evo-explanation #evo-demo-chart { height:98px; }
#evo-explanation .evo-model-rule { display:block; }
#evo-explanation .evo-rule-copy h4 { display:block; margin:0 0 3px; font:600 12px/1.45 var(--sans); }
#evo-explanation .evo-rule-copy h4::after { content:none; }
#evo-explanation .evo-demo-data { margin:0; padding:0; border:0; }
#evo-explanation .evo-demo-data h4 { flex-wrap:wrap; gap:0 6px; }
#evo-explanation #evo-chart-status { margin-top:3px; font:400 10.5px/1.4 var(--sans); }
:is(#atlas-canvas,#evo-model-canvas) circle[r="14"] { r:var(--model-ball-radius,14px); }
:is(#atlas-canvas,#evo-model-canvas) text { font-size:var(--model-text-size,14px); }
:is(#atlas-canvas,#evo-model-canvas) text[fill="#fff"] { font-size:var(--model-ball-label,14px); dominant-baseline:central; transform:translateY(-4px); }
@media(max-width:800px) {
  :is(#demo-explanation,#evo-explanation) .demo-model { flex:none; grid-template-rows:repeat(5,max-content) clamp(160px,45vw,240px) max-content; }
  :is(#demo-explanation,#evo-explanation) .typeset-rule math { font-size:18px; }
  #evo-explanation .evo-model-rule { display:block; }
  #evo-explanation .evo-demo-data { margin-top:8px; }
  #evo-explanation .demo-model { grid-template-rows:repeat(5,max-content) clamp(140px,38vw,190px) max-content; }
  #evolution #evo-model-diagram { height:auto; min-height:140px; }
}
@media(min-width:380px) and (max-width:800px) {
  #evo-explanation .evo-model-rule { display:block; }
  #evo-explanation .evo-demo-data { margin:0; }
}
:is(#demo-explanation,#evo-explanation):fullscreen { display:flex; flex-direction:column; align-items:center; }
:is(#demo-explanation,#evo-explanation):fullscreen .demo-model { width:100%; max-width:960px; height:100%; }
:is(#demo-explanation,#evo-explanation):fullscreen :is(#demo-rule,.evo-model-rule) { border-left:0; }
:is(#demo-explanation,#evo-explanation):fullscreen :is(#oracle-chart,#evo-demo-chart) { height:160px; }
#evo-explanation:fullscreen .evo-model-rule { display:block; }
#evo-explanation:fullscreen .evo-demo-data { margin-top:12px; }
.atlas-export :is(#demo-explanation,#evo-explanation) { grid-template-columns:minmax(0,1fr); }

/* Keep the mode switch anchored when the model pane opens or closes. */
#scene-detail,#evo-detail { container:scene-panel / inline-size; }
#worlds .atlas-topline,#evo-detail .atlas-topline {
  position:static; justify-content:flex-start; flex-shrink:0;
  min-height:68px; padding:9px 12px; border:0; border-bottom:1px solid #d5e2d7; background:#f3f8f3;
}
#worlds .atlas-view-switch,#evo-detail .atlas-view-switch { display:flex; align-items:stretch; width:min(100%,310px); margin:0; padding:4px; gap:4px; border:1px solid #b9cec0; border-radius:12px; background:#e5eee7; }
#worlds .atlas-view-switch button,#evo-detail .atlas-view-switch button { flex:1; display:flex; align-items:center; justify-content:center; gap:7px; min-width:0; min-height:44px; padding:6px 9px; border:1px solid transparent; border-radius:8px; background:#fbfdfb; color:#3c6550; font:600 14px/1.2 var(--sans); box-shadow:none; cursor:pointer; }
#worlds .atlas-view-switch button:hover,#evo-detail .atlas-view-switch button:hover { background:#f1f8f0; border-color:#90b69c; }
#worlds .atlas-view-switch button[aria-pressed=true],#evo-detail .atlas-view-switch button[aria-pressed=true] { background:#2d6c55; color:#fff; border-color:#2d6c55; box-shadow:0 2px 5px #244b3520; }
#worlds .atlas-view-switch button:focus-visible,#evo-detail .atlas-view-switch button:focus-visible { outline:2px solid #285d48; outline-offset:3px; }
.atlas-view-switch svg { flex:none; width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.atlas-view-switch .scene-mode-copy { display:flex; flex-direction:column; align-items:flex-start; gap:2px; }
.atlas-view-switch .scene-mode-copy small { color:inherit; font:400 11px/1.2 var(--sans); }
#scene-detail .atlas-copy,#evo-detail .atlas-copy { align-items:center; text-align:center; }
#worlds #scene-detail .atlas-copy,#evo-detail .atlas-copy { padding:8px 16px 12px; }
#worlds #scene-detail .atlas-copy h3,#evo-detail .atlas-copy h3 { max-width:100%; margin-inline:auto; text-align:center; text-wrap:balance; }
#worlds #oracle-plain,#evo-detail #evo-law { width:100%; justify-content:center; text-align:center; text-wrap:balance; }


/* assets/video-data.css */
/* Recorded measurements live with the video whose clock drives them. */
:is(#atlas-physics-view,#evo-demo-view) .video-data {
  flex:0 0 auto; height:148px; min-height:148px; margin:0; padding:6px 10px 5px;
  border:0; border-top:1px solid #dce7df; border-radius:0; background:#fbfdfb;
}
#atlas-physics-view .video-data .physics-readout { display:none; }
#atlas-physics-view #oracle-chart-wrap { margin:0; padding:0; border:0; background:none; }
.video-data .video-data-heading {
  display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:baseline; gap:1px 10px;
  margin:0; padding:0; color:#486556; font:500 11px/14px var(--sans);
}
#atlas-physics-view #oracle-chart-legend { grid-column:1/-1; grid-row:2; display:flex; flex-wrap:wrap; gap:3px 12px; font:400 10.5px/14px var(--sans); }
#atlas-physics-view #oracle-signal { font:500 11px/14px var(--sans); }
.video-data .video-data-clock { margin:0; padding:0; white-space:nowrap; font:500 11px/14px var(--sans); font-variant-numeric:tabular-nums; color:#254f46; }
#atlas-physics-view #oracle-chart,#evo-demo-view #evo-demo-chart { display:block; width:100%; height:90px; max-height:none; margin:2px 0 0; }
#atlas-physics-view #oracle-chart { height:106px; }
#worlds .physics-video-frame[data-camera=fixed] { cursor:default; touch-action:auto; }
#evo-demo-view .video-data { height:118px; min-height:118px; }
#evo-demo-view .video-data:has(button:not([hidden])) { height:142px; }
#evo-demo-view #evo-chart-status { font:500 11px/14px var(--sans); }
#evo-demo-view #evo-demo-chart text { font:12px var(--sans); fill:#71867c; }
.video-time-marker { color:#254f46; pointer-events:none; }
.video-time-halo { stroke:#fbfdfb; stroke-width:4; fill:none; vector-effect:non-scaling-stroke; }
.video-time-line { stroke:currentColor; stroke-width:1.7; fill:none; vector-effect:non-scaling-stroke; }
.video-time-head { fill:currentColor; }


/* assets/scene-layout.css */
/* One layout for the original and evolved scene browsers. */
:is(#worlds,#evolution) .scene-workspace[data-view] {
  --scene-index-width:clamp(210px,17vw,250px);
  --scene-model-width:clamp(320px,27vw,360px);
  --scene-height:clamp(550px,calc(100svh - 200px),730px);
  grid-template-columns:var(--scene-index-width) minmax(0,1fr);
  grid-template-rows:minmax(0,1fr);
  height:var(--scene-height);
  gap:8px;
}
:is(#worlds,#evolution) .scene-workspace[data-view=physics] {
  grid-template-columns:var(--scene-index-width) minmax(0,1fr) var(--scene-model-width);
}
:is(#worlds,#evolution) .scene-index,
:is(#scene-detail,#evo-detail,#demo-explanation,#evo-explanation) { min-height:0; height:100%; }
#evolution .scene-picker { grid-template-columns:1fr; grid-template-rows:repeat(3,minmax(0,1fr)); gap:4px; padding:4px; }
#evolution .scene-picker button { position:relative; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; gap:4px; padding:10px 12px; text-align:left; }
#evolution .scene-choice-name { min-height:0; color:#547460; font:600 10px/1.4 var(--sans); text-transform:uppercase; letter-spacing:.05em; }
#evolution .evo-choice-route { display:flex; align-items:center; gap:8px; }
#evolution .evo-choice-origin,#evolution .evo-source-number { display:inline-block; min-width:23px; padding:1px 5px; border:1px solid #d1e0d5; border-radius:4px; background:#f1f6f2; color:#526f5d; font:500 11px/1.35 var(--sans); text-align:center; white-space:nowrap; }
#evolution .evo-choice-result { color:#315a42; font:500 14px/1.4 var(--sans); }
#evo-detail .evo-lineage { margin:0 0 6px; color:#5d7868; font:500 11px/1.4 var(--sans); text-wrap:balance; }
#evo-mobile-select { display:none; }
#worlds #scene-detail .atlas-copy h3,#evo-detail .atlas-copy h3 { font-size:22px; }
#evo-detail #evo-law { margin:8px 0 0; font-size:14px; line-height:1.55; }
#evo-demo-view .video-data { height:148px; min-height:148px; }
#evo-demo-view #evo-demo-chart { height:106px; }
#evo-explanation .demo-model { gap:7px 6px; }

/* Source scenes lead directly to the three evolution choices. */
#evolution .evo-picker-label { flex-shrink:0; margin:0; padding:12px 14px 6px; color:#617b69; font:500 11px/1.5 var(--sans); }
.evo-evaluation-label { display:block; margin-top:3px; color:#788a7d; font:400 9px/1.4 var(--sans); }
.evo-choice-discovery { display:flex; justify-content:space-between; gap:10px; width:100%; margin-top:6px; padding-top:6px; border-top:1px solid #d7e4da; color:#617b69; font:400 11px/1.4 var(--sans); }
.evo-choice-discovery strong { color:#315f47; font-weight:500; white-space:nowrap; }
#evo-mobile-discovery { display:none; }
#evolution .evo-sources { flex-shrink:0; margin:0 12px; padding:12px 0; border-bottom:1px solid #d7e4da; }
.evo-sources h4 { margin:0; color:#496b57; font:500 11px/1.5 var(--sans); }
.evo-sources ul { display:grid; gap:8px; margin:9px 0 0; padding:0; list-style:none; }
.evo-sources a { display:flex; align-items:center; gap:8px; color:#315f47; font:400 12px/1.5 var(--sans); }
.evo-sources a > span:nth-child(2) { text-decoration:underline; text-decoration-color:#a9c1b1; text-underline-offset:2px; }
.evo-source-status { flex-shrink:0; margin-left:auto; padding:1px 5px; border-radius:4px; background:#e8f2e9; color:#416f4b; font:500 9px/1.5 var(--sans); white-space:nowrap; }
.evo-sources .evo-source-note { margin:6px 0 0; color:#5d7566; font:400 11.5px/1.55 var(--sans); }
.evo-sources .evo-source-record { display:inline-block; margin-top:4px; font-size:10.5px; text-decoration:underline; text-decoration-color:#a9c1b1; text-underline-offset:2px; }

@media(min-width:801px) and (max-width:1099px) {
  :is(#worlds,#evolution) .scene-workspace[data-view],
  :is(#worlds,#evolution) .scene-workspace[data-view=physics] {
    height:auto;
    grid-template-columns:minmax(0,1.4fr) minmax(300px,1fr);
    grid-template-rows:auto clamp(550px,calc(100svh - 240px),700px);
  }
  :is(#worlds,#evolution) .scene-index { grid-column:1/-1; height:auto; border:0; background:none; }
  :is(#worlds,#evolution) .scene-picker { display:none; }
  :is(#worlds,#evolution) .scene-workspace[data-view=motion] :is(#scene-detail,#evo-detail) { grid-column:1/-1; }
}
@media(max-width:1099px) {
  #scene-mobile-select,#evo-mobile-select { display:block; width:100%; min-height:38px; margin:0; padding:8px 12px; border:1px solid #d4dfd8; border-radius:7px; background:#fbfdf9; color:#426351; font:400 13px/1.5 var(--sans); }
}
@media(max-width:800px) {
  :is(#worlds,#evolution) .scene-workspace[data-view],
  :is(#worlds,#evolution) .scene-workspace[data-view=physics] { height:auto; grid-template-columns:1fr; grid-template-rows:auto; gap:12px; }
  :is(#worlds,#evolution) .scene-index,
  :is(#scene-detail,#evo-detail,#demo-explanation,#evo-explanation) { height:auto; }
  #evolution .scene-index { border:0; background:none; }
  #evolution .scene-picker { display:none; }
  #evo-explanation .demo-model { grid-template-rows:repeat(5,max-content) clamp(160px,45vw,240px) max-content; }
}
@media(max-width:1099px) {
  #evolution .evo-picker-label { display:none; }
  #evo-mobile-discovery { display:block; margin:6px 0 0; color:#617b69; font:400 11px/1.5 var(--sans); }
  #evolution .evo-sources { margin:0 0 10px; padding:0 0 10px; }
  .evo-sources .evo-source-note { font-size:12px; }
}
@media(min-width:1100px) and (max-height:800px) {
  #evolution .evo-sources { padding-block:8px; }
  .evo-sources ul { gap:6px; }
  .evo-sources .evo-source-note { font-size:11px; line-height:1.45; }
  .evo-sources .evo-source-record { margin-top:2px; }
  #evolution .evo-picker-label { padding:6px 12px 4px; }
  #evolution .scene-picker button { gap:3px; padding:6px 10px; }
  .evo-choice-discovery { margin-top:3px; padding-top:3px; font-size:10.5px; }
}

