/* === inherited active rules from main-build12.2.css (flattened into Build 12.6) === */
:root {
  --ink: #15212b;
  --ink-soft: #43515c;
  --paper: #f6f3ed;
  --surface: #ffffff;
  --surface-2: #eef2f1;
  --line: #d5ddd9;
  --brand: #0f4f54;
  --brand-2: #163d4a;
  --accent: #a7632b;
  --active: #1d6b53;
  --future: #7a5a2d;
  --historical: #68747c;
  --danger: #8f3f35;
  --shadow: 0 18px 55px rgba(21, 33, 43, 0.09);
  --radius: 18px;
  --radius-sm: 10px;
  --max: 1220px;
  --serif: Georgia, 'Times New Roman', serif;
  --sans: ui-sans-serif, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--paper);
  color: var(--ink);
  font-family: var(--sans);
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}
img, svg { max-width: 100%; }
a { color: inherit; }
button, input { font: inherit; }

.skip-link {
  position: absolute;
  left: 12px;
  top: -60px;
  background: var(--ink);
  color: white;
  padding: 10px 14px;
  border-radius: 8px;
  z-index: 1000;
}
.skip-link:focus { top: 12px; }

.site-shell { min-height: 100vh; display: flex; flex-direction: column; }
.container { width: min(var(--max), calc(100% - 40px)); margin: 0 auto; }
.main { flex: 1; }

.preview-strip {
  background: #0f242d;
  color: #eaf1ef;
  font-size: 0.82rem;
  letter-spacing: .01em;
}
.preview-strip .container { display: flex; justify-content: space-between; gap: 20px; padding: 8px 0; }
.preview-strip strong { color: white; }

.site-header {
  position: sticky;
  top: 0;
  z-index: 50;
  background: rgba(246, 243, 237, .94);
  backdrop-filter: blur(14px);
  border-bottom: 1px solid rgba(213, 221, 217, .9);
}
.header-row {
  min-height: 76px;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 28px;
}
.brand { display: inline-flex; gap: 11px; align-items: center; text-decoration: none; font-weight: 700; }
.brand-mark {
  width: 34px; height: 34px; border-radius: 50%;
  border: 1px solid var(--brand);
  display: grid; place-items: center; position: relative;
}
.brand-mark::before, .brand-mark::after {
  content: ''; position: absolute; background: var(--brand); border-radius: 50%;
}
.brand-mark::before { width: 7px; height: 7px; top: 5px; right: 6px; }
.brand-mark::after { width: 5px; height: 5px; bottom: 6px; left: 7px; }
.brand-mark span { width: 12px; height: 12px; border: 2px solid var(--brand); border-radius: 50%; }
.brand-text { display: flex; flex-direction: column; line-height: 1.05; }
.brand-text b { font-family: var(--serif); font-size: 1.08rem; }
.brand-text small { font-size: .68rem; text-transform: uppercase; letter-spacing: .14em; color: var(--ink-soft); margin-top: 4px; }

.primary-nav { justify-self: center; }
.primary-nav ul { display: flex; gap: 22px; list-style: none; padding: 0; margin: 0; align-items: center; }
.primary-nav a { text-decoration: none; color: var(--ink-soft); font-size: .92rem; font-weight: 600; }
.primary-nav a:hover, .primary-nav a[aria-current='page'] { color: var(--brand); }
.header-actions { display: flex; align-items: center; gap: 10px; }
.menu-toggle { display: none; border: 1px solid var(--line); background: var(--surface); border-radius: 9px; padding: 8px 10px; }

.btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  min-height: 44px; padding: 10px 17px; border-radius: 999px;
  text-decoration: none; border: 1px solid var(--brand); font-weight: 700; font-size: .92rem;
  transition: transform .16s ease, background .16s ease, color .16s ease;
}
.btn:hover { transform: translateY(-1px); }
.btn-primary { background: var(--brand); color: white; }
.btn-primary:hover { background: #0b4145; }
.btn-secondary { background: transparent; color: var(--brand); }
.btn-quiet { border-color: var(--line); background: var(--surface); color: var(--ink); }

.hero {
  position: relative; overflow: hidden;
  background:
    radial-gradient(circle at 80% 22%, rgba(74, 132, 124, .17), transparent 25%),
    linear-gradient(135deg, #f8f5ef 0%, #edf2ef 100%);
  border-bottom: 1px solid var(--line);
}
.hero::after {
  content: '';
  position: absolute; inset: 0;
  background-image: radial-gradient(rgba(15,79,84,.14) 1px, transparent 1px);
  background-size: 28px 28px;
  mask-image: linear-gradient(to right, transparent 25%, black 82%);
  pointer-events: none;
}
.hero-grid {
  position: relative; z-index: 1;
  display: grid; grid-template-columns: 1.1fr .9fr; gap: 60px;
  align-items: center; padding: 92px 0 84px;
}
.eyebrow { text-transform: uppercase; letter-spacing: .14em; font-size: .74rem; font-weight: 800; color: var(--brand); }
.hero h1, .page-hero h1 { font-family: var(--serif); font-weight: 500; line-height: 1.04; letter-spacing: -.025em; margin: 12px 0 20px; }
.hero h1 { font-size: clamp(3rem, 6vw, 5.5rem); max-width: 800px; }
.hero .lead { font-size: clamp(1.06rem, 2vw, 1.35rem); max-width: 760px; color: var(--ink-soft); }
.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
.hero-meta { margin-top: 28px; display: flex; gap: 16px; flex-wrap: wrap; color: var(--ink-soft); font-size: .84rem; }

.hero-diagram {
  border: 1px solid rgba(15,79,84,.18);
  border-radius: 26px;
  padding: 26px;
  background: rgba(255,255,255,.72);
  box-shadow: var(--shadow);
}
.diagram-label { font-size: .72rem; text-transform: uppercase; letter-spacing: .12em; color: var(--ink-soft); margin-bottom: 18px; }
.flow-line { display: grid; gap: 10px; }
.flow-node {
  display: grid; grid-template-columns: 34px 1fr auto; gap: 12px; align-items: center;
  border: 1px solid var(--line); background: var(--surface); padding: 11px 12px; border-radius: 12px;
}
.flow-node .num { width: 28px; height: 28px; border-radius: 50%; background: var(--surface-2); display: grid; place-items: center; font-size: .75rem; font-weight: 800; }
.flow-node b { font-size: .92rem; }
.flow-node small { color: var(--ink-soft); }
.flow-node.current { border-color: rgba(29,107,83,.45); box-shadow: inset 3px 0 0 var(--active); }
.flow-node.future { border-style: dashed; }
.flow-connector { height: 12px; width: 1px; background: var(--line); margin-left: 14px; }

.thesis-band { background: var(--ink); color: #f6f3ed; }
.thesis-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; background: rgba(255,255,255,.13); }
.thesis-item { padding: 38px 0; background: var(--ink); }
.thesis-item:first-child { padding-right: 40px; }
.thesis-item:last-child { padding-left: 40px; }
.thesis-item strong { display: block; font-family: var(--serif); font-size: clamp(1.8rem,3.2vw,3rem); font-weight: 500; }
.thesis-item p { max-width: 520px; margin: 8px 0 0; color: #cdd7d7; }

.section { padding: 84px 0; }
.section-sm { padding: 58px 0; }
.section-alt { background: #ecefea; }
.section-dark { background: var(--brand-2); color: #eef4f2; }
.section-heading { display: grid; grid-template-columns: .8fr 1.2fr; gap: 50px; align-items: start; margin-bottom: 38px; }
.section-heading h2 { font-family: var(--serif); font-weight: 500; font-size: clamp(2.1rem, 4vw, 3.7rem); line-height: 1.07; margin: 8px 0 0; }
.section-heading p { color: var(--ink-soft); font-size: 1.05rem; margin: 8px 0 0; }
.section-dark .section-heading p { color: #c8d5d3; }

.card-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.card { border: 1px solid var(--line); border-radius: var(--radius); background: var(--surface); padding: 24px; }
.card h3 { margin: 8px 0 8px; font-family: var(--serif); font-weight: 600; font-size: 1.45rem; }
.card p { margin: 0; color: var(--ink-soft); }
.card .kicker { font-size: .72rem; text-transform: uppercase; letter-spacing: .12em; color: var(--brand); font-weight: 800; }
.card .card-link { display: inline-flex; margin-top: 18px; color: var(--brand); font-weight: 700; text-decoration: none; }

.status { display: inline-flex; align-items: center; gap: 7px; padding: 4px 8px; border: 1px solid var(--line); border-radius: 999px; font-size: .72rem; font-weight: 800; line-height: 1.2; background: white; }
.status::before { content: ''; width: 7px; height: 7px; border-radius: 50%; background: currentColor; }
.status-current { color: var(--active); }
.status-progress { color: var(--accent); }
.status-future { color: var(--future); border-style: dashed; }
.status-historical { color: var(--historical); }

.experience-rail { display: grid; grid-template-columns: repeat(6, 1fr); gap: 9px; align-items: stretch; }
.experience-step { position: relative; padding: 18px 14px; min-height: 120px; border: 1px solid var(--line); background: var(--surface); border-radius: 12px; }
.experience-step b { display: block; margin-top: 8px; }
.experience-step small { color: var(--ink-soft); }
.experience-step:not(:last-child)::after { content: '→'; position: absolute; right: -10px; top: 50%; transform: translateY(-50%); z-index: 2; color: var(--brand); font-weight: 900; }

.explorer-preview, .explorer-shell {
  display: grid; grid-template-columns: minmax(300px, .9fr) minmax(360px, 1.1fr); gap: 0;
  border: 1px solid var(--line); border-radius: 22px; overflow: hidden; background: var(--surface); box-shadow: var(--shadow);
}
.explorer-pane { padding: 24px; min-height: 480px; }
.explorer-pane + .explorer-pane { border-left: 1px solid var(--line); background: #fbfcfa; }
.explorer-toolbar { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-bottom: 18px; }
.view-tabs { display: flex; flex-wrap: wrap; gap: 6px; }
.view-tab { border: 1px solid var(--line); background: white; color: var(--ink-soft); border-radius: 999px; padding: 7px 10px; font-size: .78rem; font-weight: 700; cursor: pointer; }
.view-tab[aria-selected='true'] { color: white; background: var(--brand); border-color: var(--brand); }
.search-box { width: 100%; border: 1px solid var(--line); border-radius: 10px; padding: 10px 12px; background: white; color: var(--ink); }
.tree { list-style: none; padding: 0; margin: 10px 0 0; }
.tree ul { list-style: none; margin: 2px 0 2px 18px; padding-left: 12px; border-left: 1px solid var(--line); }
.tree-row { display: flex; align-items: center; gap: 6px; min-height: 36px; }
.tree-toggle, .tree-select { border: 0; background: transparent; color: var(--ink); cursor: pointer; border-radius: 7px; }
.tree-toggle { width: 28px; height: 28px; color: var(--ink-soft); }
.tree-select { padding: 5px 7px; text-align: left; flex: 1; }
.tree-select:hover, .tree-select[aria-current='true'] { background: var(--surface-2); color: var(--brand); }
.tree-marker { font-size: .64rem; text-transform: uppercase; border: 1px solid var(--line); border-radius: 999px; padding: 2px 5px; color: var(--ink-soft); }

.context-card h2, .context-card h3 { font-family: var(--serif); font-weight: 500; margin: 0; }
.context-card h2 { font-size: 2rem; }
.context-definition { color: var(--ink-soft); font-size: 1.03rem; margin: 12px 0 20px; }
.meta-grid { display: grid; grid-template-columns: 135px 1fr; gap: 10px 16px; padding-top: 18px; border-top: 1px solid var(--line); }
.meta-grid dt { color: var(--ink-soft); font-size: .78rem; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }
.meta-grid dd { margin: 0; }
.context-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 20px; }
.context-actions button { border: 1px solid var(--line); background: white; border-radius: 999px; padding: 8px 10px; cursor: pointer; font-weight: 700; color: var(--brand); }

.governance-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 14px; }
.governance-card { border-top: 4px solid var(--line); padding: 20px; background: var(--surface); border-radius: 0 0 14px 14px; }
.governance-card:nth-child(4) { border-top-color: var(--brand); }
.governance-card h3 { font-family: var(--serif); font-size: 1.35rem; margin: 0 0 7px; }
.governance-card p { margin: 0; color: var(--ink-soft); }

.boundary-figure {
  margin-top: 34px; display: grid; grid-template-columns: 1fr auto 1fr; gap: 16px; align-items: center;
  border: 1px solid var(--line); background: var(--surface); border-radius: var(--radius); padding: 24px;
}
.boundary-side { padding: 18px; }
.boundary-line { width: 2px; height: 180px; background: var(--danger); position: relative; }
.boundary-line::before { content: 'CONSEQUENCE BOUNDARY'; position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%) rotate(-90deg); white-space: nowrap; background: var(--surface); padding: 5px 8px; color: var(--danger); font-size: .7rem; font-weight: 900; letter-spacing: .1em; }

.arc { display: grid; grid-template-columns: repeat(4,1fr); gap: 14px; }
.arc-stage { padding: 20px; border: 1px solid var(--line); border-radius: 16px; background: white; }
.arc-stage.current { border-color: rgba(29,107,83,.5); }
.arc-stage.progress { border-color: rgba(167,99,43,.55); }
.arc-stage.future { border-style: dashed; }
.arc-stage h3 { margin: 8px 0 8px; font-family: var(--serif); }
.arc-stage ul { margin: 0; padding-left: 18px; color: var(--ink-soft); }

.library-list { display: grid; gap: 12px; }
.library-item { display: grid; grid-template-columns: 1fr auto; gap: 20px; align-items: center; border: 1px solid var(--line); background: white; border-radius: 14px; padding: 18px 20px; }
.library-item h3 { margin: 0 0 4px; font-family: var(--serif); font-size: 1.15rem; }
.library-item p { margin: 0; color: var(--ink-soft); font-size: .9rem; }
.library-tags { display: flex; gap: 6px; flex-wrap: wrap; margin-top: 8px; }
.tag { font-size: .68rem; padding: 3px 7px; border-radius: 999px; background: var(--surface-2); color: var(--ink-soft); font-weight: 800; }

.page-hero { border-bottom: 1px solid var(--line); background: linear-gradient(135deg,#f8f5ef,#eef1ee); }
.page-hero .container { padding: 68px 0 56px; }
.page-hero h1 { font-size: clamp(2.7rem, 5vw, 4.8rem); max-width: 900px; }
.page-hero p { max-width: 800px; color: var(--ink-soft); font-size: 1.1rem; }
.breadcrumb { display: flex; flex-wrap: wrap; gap: 7px; color: var(--ink-soft); font-size: .8rem; margin-bottom: 18px; }
.breadcrumb a { text-decoration: none; }

.callout { border-left: 4px solid var(--brand); padding: 18px 20px; background: #e8efec; border-radius: 0 12px 12px 0; }
.callout strong { font-family: var(--serif); font-size: 1.2rem; }
.callout p { margin: 4px 0 0; color: var(--ink-soft); }

.timeline { display: grid; gap: 12px; }
.timeline-item { display: grid; grid-template-columns: 120px 1fr; gap: 18px; padding: 16px 0; border-bottom: 1px solid var(--line); }
.timeline-item .when { color: var(--ink-soft); font-weight: 800; font-size: .82rem; text-transform: uppercase; letter-spacing: .08em; }
.timeline-item h3 { margin: 0 0 4px; font-family: var(--serif); }
.timeline-item p { margin: 0; color: var(--ink-soft); }

.proof-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 16px; }
.proof-card { border: 1px solid var(--line); border-radius: 16px; background: white; padding: 22px; }
.proof-card h3 { font-family: var(--serif); margin: 8px 0; }
.proof-card p { color: var(--ink-soft); }
.proof-card a { color: var(--brand); font-weight: 800; }

.research-card { border: 1px solid var(--line); border-radius: 18px; padding: 24px; background: white; }
.research-card h2 { font-family: var(--serif); font-weight: 500; margin: 8px 0; }
.research-card p { color: var(--ink-soft); }

.site-footer { background: #102129; color: #d7e1df; padding: 52px 0 28px; margin-top: auto; }
.footer-grid { display: grid; grid-template-columns: 1.2fr repeat(3, 1fr); gap: 34px; }
.site-footer h3 { font-family: var(--serif); color: white; margin-top: 0; }
.site-footer a { color: #d7e1df; text-decoration: none; }
.site-footer ul { list-style: none; padding: 0; margin: 0; display: grid; gap: 7px; }
.footer-bottom { display: flex; justify-content: space-between; gap: 20px; border-top: 1px solid rgba(255,255,255,.14); margin-top: 36px; padding-top: 20px; font-size: .78rem; color: #9fb2af; }

@media (max-width: 1000px) {
  .primary-nav { display: none; }
  .menu-toggle { display: inline-flex; }
  .primary-nav.open { display: block; position: absolute; left: 20px; right: 20px; top: 76px; background: var(--surface); border: 1px solid var(--line); border-radius: 14px; padding: 14px; box-shadow: var(--shadow); }
  .primary-nav.open ul { flex-direction: column; align-items: stretch; gap: 4px; }
  .primary-nav.open a { display: block; padding: 9px 10px; }
  .header-row { grid-template-columns: auto 1fr auto; }
  .hero-grid { grid-template-columns: 1fr; }
  .hero-diagram { max-width: 700px; }
  .section-heading { grid-template-columns: 1fr; gap: 12px; }
  .card-grid, .governance-grid, .arc { grid-template-columns: repeat(2,1fr); }
  .experience-rail { grid-template-columns: repeat(3,1fr); }
  .experience-step:nth-child(3)::after { display: none; }
  .footer-grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 720px) {
  .container { width: min(100% - 26px, var(--max)); }
  .preview-strip .container { flex-direction: column; gap: 2px; }
  .header-actions .btn { display: none; }
  .hero-grid { padding: 62px 0 58px; gap: 32px; }
  .hero h1 { font-size: 3rem; }
  .thesis-grid { grid-template-columns: 1fr; background: transparent; }
  .thesis-item:first-child, .thesis-item:last-child { padding: 28px 0; }
  .section { padding: 62px 0; }
  .card-grid, .governance-grid, .arc, .proof-grid { grid-template-columns: 1fr; }
  .experience-rail { grid-template-columns: 1fr; }
  .experience-step::after { display: none !important; }
  .explorer-preview, .explorer-shell { grid-template-columns: 1fr; }
  .explorer-pane + .explorer-pane { border-left: 0; border-top: 1px solid var(--line); }
  .boundary-figure { grid-template-columns: 1fr; }
  .boundary-line { width: 100%; height: 2px; }
  .boundary-line::before { transform: translate(-50%,-50%); }
  .meta-grid { grid-template-columns: 1fr; gap: 3px; }
  .library-item { grid-template-columns: 1fr; }
  .footer-grid { grid-template-columns: 1fr; }
  .footer-bottom { flex-direction: column; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition: none !important; animation: none !important; }
}

/* Build 02 additions */
.comparison-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:18px; }
.comparison-panel { border:1px solid var(--line); border-radius:var(--radius); background:var(--surface); padding:26px; }
.comparison-panel.emphasis { border-color:rgba(15,79,84,.45); box-shadow:inset 4px 0 0 var(--brand); }
.comparison-panel h3 { margin:8px 0 12px; font-family:var(--serif); font-size:1.65rem; }
.comparison-panel ul { margin:0; padding-left:20px; color:var(--ink-soft); }
.repo-tree { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-top:10px; }
.repo-tree code { display:block; padding:11px 12px; border:1px solid var(--line); background:var(--surface); border-radius:10px; color:var(--brand-2); }
.explorer-statusline { display:flex; justify-content:space-between; gap:12px; align-items:center; margin:12px 0 4px; color:var(--ink-soft); font-size:.78rem; }
.explorer-path { display:flex; flex-wrap:wrap; gap:6px; align-items:center; margin-bottom:16px; color:var(--ink-soft); font-size:.8rem; }
.explorer-path button { border:0; background:transparent; color:var(--brand); padding:0; cursor:pointer; font-weight:700; }
.related-links { display:flex; flex-wrap:wrap; gap:7px; }
.related-links button { border:1px solid var(--line); background:var(--surface); border-radius:999px; color:var(--brand); padding:6px 9px; cursor:pointer; font-weight:700; }
.empty-state { border:1px dashed var(--line); border-radius:14px; padding:22px; color:var(--ink-soft); background:var(--surface); }
.utility-links { display:flex; gap:8px; flex-wrap:wrap; margin-top:14px; }
.utility-links a { font-size:.78rem; text-decoration:none; color:var(--brand); font-weight:800; }
@media (max-width:720px){ .comparison-grid,.repo-tree{grid-template-columns:1fr;} }

/* Build 04 review-driven refinements */
.primary-nav a[aria-current='page'] { font-weight: 800; text-decoration-thickness: 2px; text-underline-offset: 5px; }
.breadcrumb-current { color: var(--ink); font-weight: 900; }
.breadcrumb-current::after { content: ''; display:block; height:2px; background:var(--brand); border-radius:999px; margin-top:2px; }

.context-change-summary {
  display:flex; flex-wrap:wrap; gap:8px 16px; align-items:baseline;
  margin:0 0 14px; padding:10px 12px;
  border:1px solid rgba(167,99,43,.32); border-radius:10px;
  background:#fff7e7; color:var(--ink-soft); font-size:.78rem;
}
.context-change-summary strong { color:var(--ink); }
.context-delta {
  font-weight: 850 !important;
  font-style: italic;
  color: var(--ink) !important;
  background: #fff0c9;
  border-radius: 6px;
  box-shadow: 0 0 0 3px #fff0c9;
}
.status.context-delta { box-shadow:0 0 0 3px #fff0c9; }
.context-card h2.context-delta { display:inline-block; }
.meta-grid dd.context-delta { padding:1px 3px; }

.page-audio {
  margin-top:18px; display:flex; align-items:center; flex-wrap:wrap; gap:9px 12px;
  max-width:820px;
}
.audio-toggle {
  border:1px solid var(--brand); background:rgba(255,255,255,.72); color:var(--brand);
  border-radius:999px; padding:8px 12px; cursor:pointer; font-weight:800;
}
.audio-toggle:hover { background:var(--surface); }
.audio-toggle[aria-pressed='true'] { background:var(--brand); color:white; }
.audio-toggle:disabled { cursor:not-allowed; opacity:.62; }
.audio-note { color:var(--ink-soft); font-size:.76rem; }
.page-audio details { width:100%; color:var(--ink-soft); font-size:.82rem; }
.page-audio summary { width:max-content; cursor:pointer; color:var(--brand); font-weight:750; }
.page-audio details p { margin:7px 0 0; max-width:780px; }

.media-intro-grid { display:grid; grid-template-columns:1.05fr .95fr; gap:18px; }
.media-panel { border:1px solid var(--line); border-radius:var(--radius); background:var(--surface); padding:24px; }
.media-panel h2,.media-panel h3 { font-family:var(--serif); font-weight:500; margin:8px 0 10px; }
.media-panel p { color:var(--ink-soft); }
.media-catalog { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.media-card { border:1px solid var(--line); border-radius:16px; background:var(--surface); overflow:hidden; }
.media-card-visual { aspect-ratio:16/9; background:linear-gradient(135deg,#dde9e5,#f6f3ed); display:grid; place-items:center; color:var(--brand); font-weight:900; letter-spacing:.08em; text-transform:uppercase; font-size:.72rem; }
.media-card-body { padding:16px; }
.media-card h3 { font-family:var(--serif); margin:4px 0 6px; }
.media-card p { color:var(--ink-soft); font-size:.9rem; }
.media-meta { display:flex; gap:6px; flex-wrap:wrap; margin-top:10px; }

.figure-gallery { display:grid; grid-template-columns:repeat(2,1fr); gap:18px; }
.figure-card { border:1px solid var(--line); background:var(--surface); border-radius:16px; overflow:hidden; }
.figure-card a { display:block; background:#f8f8f5; }
.figure-card img { width:100%; height:auto; display:block; }
.figure-card-body { padding:16px 18px 18px; }
.figure-card h3 { margin:4px 0 6px; font-family:var(--serif); font-weight:500; }
.figure-card p { margin:0; color:var(--ink-soft); font-size:.88rem; }
.asset-note { margin-top:14px; padding:12px 14px; border:1px dashed var(--future); border-radius:10px; background:#fffaf1; color:var(--ink-soft); font-size:.82rem; }

@media (max-width:1000px) {
  .media-catalog { grid-template-columns:repeat(2,1fr); }
}
@media (max-width:720px) {
  .media-intro-grid,.media-catalog,.figure-gallery { grid-template-columns:1fr; }
  .page-audio { align-items:flex-start; flex-direction:column; }
}
@media (min-width:1001px) { .primary-nav ul { gap:16px; } }

/* ==========================================================================\n   BUILD 04 — VISUAL CONVERGENCE\n   Dark institutional dashboard language, hierarchical navigation, live R1\n   prototype framing, knowledge nuggets, richer explorer.\n   ========================================================================== */
:root {
  --ink:#edf4f3;
  --ink-soft:#9eafaf;
  --paper:#071014;
  --surface:#0d181d;
  --surface-2:#132228;
  --line:#263940;
  --brand:#64d2c2;
  --brand-2:#0b2026;
  --accent:#d8a55f;
  --active:#72d5aa;
  --future:#d0ad72;
  --historical:#91a0a5;
  --danger:#e38077;
  --shadow:0 24px 70px rgba(0,0,0,.28);
  --max:1380px;
}
body { background:var(--paper); color:var(--ink); }
body::before { content:''; position:fixed; inset:0; pointer-events:none; z-index:-1; background:radial-gradient(circle at 15% 4%,rgba(56,151,143,.10),transparent 28%),radial-gradient(circle at 86% 24%,rgba(55,104,124,.08),transparent 26%); }
.preview-strip { background:#050b0e; border-bottom:1px solid #17262c; color:#9eb0b1; }
.site-header { background:rgba(7,16,20,.94); border-bottom-color:var(--line); }
.brand-mark { border-color:var(--brand); box-shadow:0 0 30px rgba(100,210,194,.12); }
.brand-mark::before,.brand-mark::after { background:var(--brand); }
.brand-mark span { border-color:var(--brand); }
.brand-text small { color:var(--ink-soft); }
.header-row { grid-template-columns:auto minmax(0,1fr) auto; min-height:72px; }
.primary-nav { display:flex; justify-content:center; align-items:center; gap:6px; }
.nav-home,.nav-group summary { color:#a7b8b8; text-decoration:none; font-size:.86rem; font-weight:750; border:1px solid transparent; border-radius:9px; padding:8px 10px; cursor:pointer; list-style:none; }
.nav-group summary::-webkit-details-marker { display:none; }
.nav-group { position:relative; }
.nav-group summary::after { content:'⌄'; margin-left:6px; font-size:.7rem; opacity:.7; }
.nav-home:hover,.nav-home.is-active,.nav-group summary:hover,.nav-group.is-active summary,.nav-group[open] summary { color:var(--ink); border-color:var(--line); background:var(--surface); }
.nav-home.is-active,.nav-group.is-active summary { box-shadow:inset 0 -2px 0 var(--brand); }
.nav-menu { display:none; position:absolute; top:calc(100% + 9px); left:0; min-width:220px; padding:8px; border:1px solid var(--line); border-radius:13px; background:#0a151a; box-shadow:var(--shadow); }
.nav-group[open] .nav-menu { display:grid; gap:2px; }
.nav-menu a { color:var(--ink-soft); text-decoration:none; padding:9px 10px; border-radius:8px; font-size:.85rem; font-weight:650; }
.nav-menu a:hover,.nav-menu a[aria-current='page'] { color:var(--ink); background:var(--surface-2); }
.btn { border-color:#31525a; }
.btn-primary { background:var(--brand); color:#041012; border-color:var(--brand); }
.btn-primary:hover { background:#7ae0d1; }
.btn-secondary { color:var(--brand); background:rgba(100,210,194,.04); }
.btn-quiet { background:var(--surface); color:var(--ink); border-color:var(--line); }
.hero { background:linear-gradient(135deg,#071014 0%,#0b181d 56%,#071014 100%); border-bottom-color:var(--line); }
.hero::after { background-image:radial-gradient(rgba(100,210,194,.15) 1px,transparent 1px); opacity:.45; }
.hero .lead,.hero-meta,.section-heading p,.card p,.thesis-item p,.context-definition,.timeline-item p,.proof-card p,.research-card p,.library-item p,.media-panel p,.media-card p,.figure-card p,.comparison-panel ul { color:var(--ink-soft); }
.hero-diagram,.card,.governance-card,.arc-stage,.library-item,.proof-card,.research-card,.comparison-panel,.media-panel,.media-card,.figure-card,.explorer-preview,.explorer-shell,.experience-step { background:linear-gradient(180deg,rgba(17,31,37,.96),rgba(11,23,28,.96)); border-color:var(--line); box-shadow:none; }
.flow-node { background:#0a161b; border-color:var(--line); }
.flow-node .num { background:var(--surface-2); }
.flow-node small { color:var(--ink-soft); }
.thesis-band { background:#050c0f; }
.thesis-grid { background:#142126; }
.thesis-item { background:#071014; }
.section-alt { background:#091419; }
.section-dark { background:#061116; }
.status { background:#0b181d; border-color:var(--line); }
.view-tab,.search-box,.context-actions button,.related-links button { background:#0a161b; border-color:var(--line); color:var(--ink-soft); }
.view-tab[aria-selected='true'] { background:rgba(100,210,194,.14); border-color:rgba(100,210,194,.45); color:var(--brand); }
.search-box { color:var(--ink); }
.search-box::placeholder { color:#65787c; }
.tree-select:hover,.tree-select[aria-current='true'] { background:rgba(100,210,194,.09); color:var(--brand); }
.tree-toggle,.tree-select { color:var(--ink); }
.explorer-pane + .explorer-pane { background:#091419; }
.page-hero { background:linear-gradient(135deg,#081217,#0d1a20); border-bottom-color:var(--line); }
.page-hero p { color:var(--ink-soft); }
.breadcrumb { color:#829699; }
.breadcrumb-current { color:var(--ink); }
.callout { background:rgba(100,210,194,.075); border-left-color:var(--brand); }
.callout p { color:var(--ink-soft); }
.context-change-summary { background:rgba(216,165,95,.08); color:var(--ink-soft); border-color:rgba(216,165,95,.35); }
.context-change-summary strong { color:var(--ink); }
.context-delta { font-weight:inherit !important; font-style:italic; color:var(--ink) !important; background:rgba(216,165,95,.14); box-shadow:0 0 0 3px rgba(216,165,95,.14); }
.meta-grid dd.context-delta { padding:1px 4px; }
.asset-note { background:rgba(208,173,114,.06); }
.figure-card a { background:#0a1519; }
.repo-tree code { color:var(--brand); }
.site-footer { background:#040a0d; }

/* Dashboard hero and knowledge rail */
.hero-dashboard { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(420px,.9fr); gap:34px; align-items:stretch; }
.hero-console { border:1px solid var(--line); border-radius:22px; padding:18px; background:linear-gradient(180deg,#0c191e,#081318); box-shadow:var(--shadow); }
.console-top { display:flex; justify-content:space-between; align-items:center; gap:12px; padding-bottom:13px; border-bottom:1px solid var(--line); }
.console-dots { display:flex; gap:6px; }.console-dots span { width:7px;height:7px;border-radius:50%;background:#37535a; }.console-dots span:first-child{background:var(--brand)}
.console-grid { display:grid; grid-template-columns:.8fr 1.2fr; min-height:330px; }
.console-tree { padding:16px; border-right:1px solid var(--line); }
.console-tree div { padding:7px 9px; border-radius:8px; color:var(--ink-soft); font-size:.82rem; }
.console-tree div.active { background:rgba(100,210,194,.09); color:var(--brand); }
.console-center { position:relative; display:grid; place-items:center; padding:18px; overflow:hidden; }
.console-center::before { content:''; position:absolute; inset:10%; background:radial-gradient(circle,rgba(100,210,194,.09),transparent 58%); }
.constellation { position:relative; width:100%; height:100%; min-height:290px; }
.constellation .node { position:absolute; padding:8px 11px; border:1px solid var(--line); border-radius:999px; background:#0b171c; font-size:.74rem; color:var(--ink-soft); }
.constellation .node.main { left:42%; top:42%; color:var(--brand); border-color:rgba(100,210,194,.55); font-weight:800; }
.constellation .n1{left:8%;top:18%}.constellation .n2{right:5%;top:20%}.constellation .n3{left:12%;bottom:14%}.constellation .n4{right:8%;bottom:16%}
.constellation .line { position:absolute; height:1px; background:linear-gradient(90deg,transparent,#36545c,transparent); transform-origin:left center; opacity:.8; }
.constellation .l1{left:23%;top:31%;width:30%;transform:rotate(22deg)}.constellation .l2{left:51%;top:37%;width:32%;transform:rotate(-19deg)}.constellation .l3{left:28%;top:62%;width:28%;transform:rotate(-17deg)}.constellation .l4{left:52%;top:59%;width:30%;transform:rotate(17deg)}

/* Knowledge nugget */
.knowledge-nugget { border:1px solid rgba(100,210,194,.28); border-radius:16px; background:linear-gradient(180deg,rgba(100,210,194,.07),rgba(13,24,29,.96)); padding:18px; }
.knowledge-nugget .nugget-label { color:var(--brand); text-transform:uppercase; letter-spacing:.14em; font-size:.68rem; font-weight:900; }
.knowledge-nugget h3 { font-family:var(--serif); margin:7px 0 6px; font-size:1.25rem; }
.knowledge-nugget p { margin:0; color:var(--ink-soft); font-size:.9rem; }
.knowledge-nugget .nugget-meta { display:flex; gap:6px; flex-wrap:wrap; margin-top:12px; }

/* Build 04 Explorer — persistent tree + workspace + inspector */
.explorer-shell.explorer-v4 { grid-template-columns:minmax(265px,.72fr) minmax(410px,1.25fr) minmax(300px,.82fr); min-height:680px; }
.explorer-v4 .explorer-pane { min-height:680px; padding:18px; }
.explorer-v4 .explorer-pane + .explorer-pane { border-top:0; border-left:1px solid var(--line); }
.explorer-workspace { position:relative; display:flex; flex-direction:column; gap:14px; }
.workspace-header { display:flex; justify-content:space-between; gap:14px; align-items:flex-start; padding-bottom:13px; border-bottom:1px solid var(--line); }
.workspace-header h2 { font-family:var(--serif); margin:3px 0 0; font-size:1.7rem; }
.workspace-canvas { position:relative; flex:1; min-height:430px; border:1px solid var(--line); border-radius:16px; overflow:hidden; background:radial-gradient(circle at 50% 46%,rgba(100,210,194,.08),rgba(8,19,24,.88) 50%,#071014 74%); }
.workspace-canvas::after { content:''; position:absolute; inset:0; background-image:radial-gradient(rgba(100,210,194,.1) 1px,transparent 1px); background-size:26px 26px; opacity:.3; pointer-events:none; }
.graph-node { position:absolute; z-index:2; max-width:155px; border:1px solid var(--line); border-radius:12px; background:#0c191e; padding:9px 11px; font-size:.75rem; color:var(--ink-soft); text-align:center; box-shadow:0 8px 22px rgba(0,0,0,.18); }
.graph-node.center { left:50%;top:47%;transform:translate(-50%,-50%); color:var(--brand); border-color:rgba(100,210,194,.56); font-weight:850; font-size:.84rem; }
.graph-node.r1{left:7%;top:16%}.graph-node.r2{right:7%;top:18%}.graph-node.r3{left:9%;bottom:16%}.graph-node.r4{right:9%;bottom:14%}
.workspace-note { color:var(--ink-soft); font-size:.78rem; }
.inspector-heading { display:flex; justify-content:space-between; gap:10px; align-items:center; margin-bottom:12px; }
.inspector-heading strong { font-family:var(--serif); font-size:1.1rem; }
.context-card { display:grid; gap:4px; }
.context-card .knowledge-nugget { margin-top:16px; }

/* Prototype */
.prototype-status { display:flex; flex-wrap:wrap; gap:8px 12px; align-items:center; margin:16px 0 0; }
.prototype-frame-wrap { border:1px solid var(--line); border-radius:20px; overflow:hidden; background:#03080a; box-shadow:var(--shadow); }
.prototype-toolbar { display:flex; flex-wrap:wrap; justify-content:space-between; gap:10px; align-items:center; padding:12px 14px; background:#091419; border-bottom:1px solid var(--line); }
.prototype-toolbar .demo-states { display:flex; flex-wrap:wrap; gap:7px; }
.demo-state { border:1px solid var(--line); background:#0d1a1f; color:var(--ink-soft); border-radius:999px; padding:7px 10px; cursor:pointer; font-size:.76rem; font-weight:750; }
.demo-state:hover,.demo-state[aria-pressed='true'] { color:var(--brand); border-color:rgba(100,210,194,.45); background:rgba(100,210,194,.07); }
.prototype-frame { display:block; width:100%; height:min(78vh,860px); min-height:620px; border:0; background:#05090b; }
.prototype-disclaimer { padding:12px 14px; border-top:1px solid var(--line); color:#83989b; font-size:.76rem; }
.surface-gallery { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.surface-shot { border:1px solid var(--line); border-radius:14px; overflow:hidden; background:var(--surface); }
.surface-shot a { display:block; aspect-ratio:16/9; overflow:hidden; background:#03080a; }
.surface-shot img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .2s ease; }
.surface-shot:hover img { transform:scale(1.02); }
.surface-shot-body { padding:13px 14px 15px; }
.surface-shot h3 { font-family:var(--serif); font-size:1rem; margin:4px 0 4px; }
.surface-shot p { color:var(--ink-soft); font-size:.78rem; margin:0; }

/* Media: browser TTS is gone in B04. */
.page-audio { display:none !important; }
.audio-pipeline { border:1px dashed rgba(100,210,194,.32); border-radius:14px; padding:16px; background:rgba(100,210,194,.04); }

/* Library view strip */
.view-strip { display:flex; gap:7px; flex-wrap:wrap; margin-bottom:20px; }
.view-strip button { border:1px solid var(--line); border-radius:999px; background:var(--surface); color:var(--ink-soft); padding:7px 11px; font-weight:750; }
.view-strip button.active { color:var(--brand); border-color:rgba(100,210,194,.44); }
.footer-badge { margin-top:14px; display:inline-flex; border:1px solid var(--line); border-radius:999px; padding:6px 9px; color:#8aa1a3; font-size:.7rem; }

@media (max-width:1120px) {
  .primary-nav { display:none; }
  .menu-toggle { display:inline-flex; }
  .primary-nav.open { display:flex; flex-direction:column; align-items:stretch; position:absolute; left:20px; right:20px; top:72px; background:#081217; border:1px solid var(--line); border-radius:14px; padding:12px; box-shadow:var(--shadow); }
  .primary-nav.open .nav-group { width:100%; }
  .primary-nav.open .nav-menu { position:static; box-shadow:none; margin-top:4px; min-width:0; background:#0a151a; }
  .nav-home,.nav-group summary { display:block; width:100%; }
  .hero-dashboard { grid-template-columns:1fr; }
  .explorer-shell.explorer-v4 { grid-template-columns:minmax(250px,.75fr) minmax(400px,1.25fr); }
  .explorer-v4 .explorer-inspector { grid-column:1 / -1; border-left:0 !important; border-top:1px solid var(--line) !important; min-height:auto; }
  .surface-gallery { grid-template-columns:repeat(2,1fr); }
}
@media (max-width:720px) {
  .explorer-shell.explorer-v4 { grid-template-columns:1fr; }
  .explorer-v4 .explorer-pane + .explorer-pane { border-left:0; border-top:1px solid var(--line); }
  .explorer-v4 .explorer-pane { min-height:auto; }
  .workspace-canvas { min-height:390px; }
  .surface-gallery { grid-template-columns:1fr; }
  .prototype-frame { min-height:520px; height:72vh; }
  .hero-console { padding:10px; }.console-grid{grid-template-columns:1fr}.console-tree{display:none}.console-center{min-height:300px}
}


/* ==========================================================================\n   BUILD 05 — REVIEW DISPOSITIONS\n   Three-level contrast, working prototype host, ontology-aware search,\n   Interop Lab explanation, framed proof surfaces, image zoom/lightbox,\n   narration slots, and global back-to-top.\n   ========================================================================== */
.hero h1 { font-size:clamp(2.55rem,4.65vw,4.65rem); max-width:900px; line-height:1.075; }
@media(max-width:720px){.hero h1{font-size:clamp(2.25rem,10vw,3rem);}}

/* Theme tokens */
html[data-theme="dark"] { color-scheme:dark; --paper:#071014;--surface:#0d181d;--surface-2:#132228;--ink:#edf4f3;--ink-soft:#9eafaf;--line:#263940;--brand:#64d2c2;--brand-2:#0b2026;--theme-head:rgba(7,16,20,.94);--theme-hero1:#071014;--theme-hero2:#0b181d;--theme-alt:#091419;--theme-deep:#040a0d;--theme-nav:#0a151a;--theme-card1:rgba(17,31,37,.96);--theme-card2:rgba(11,23,28,.96);--theme-canvas:#071014; }
html[data-theme="medium"] { color-scheme:dark; --paper:#182328;--surface:#223138;--surface-2:#2a3d44;--ink:#f2f6f4;--ink-soft:#bdc9c8;--line:#41575d;--brand:#79d9cc;--brand-2:#18353b;--theme-head:rgba(24,35,40,.96);--theme-hero1:#172329;--theme-hero2:#23343a;--theme-alt:#1d2b31;--theme-deep:#121c20;--theme-nav:#223138;--theme-card1:#24353c;--theme-card2:#1d2c32;--theme-canvas:#172329; }
html[data-theme="light"] { color-scheme:light; --paper:#f4f1ea;--surface:#ffffff;--surface-2:#e9efed;--ink:#17242a;--ink-soft:#536267;--line:#cbd6d2;--brand:#176b67;--brand-2:#dcebe8;--theme-head:rgba(244,241,234,.96);--theme-hero1:#f5f2eb;--theme-hero2:#e8efed;--theme-alt:#edf1ef;--theme-deep:#203238;--theme-nav:#ffffff;--theme-card1:#ffffff;--theme-card2:#f5f7f5;--theme-canvas:#f5f7f5;--shadow:0 18px 55px rgba(21,33,43,.10); }
body{background:var(--paper);color:var(--ink)}
.site-header{background:var(--theme-head);border-bottom-color:var(--line)}
.hero{background:linear-gradient(135deg,var(--theme-hero1),var(--theme-hero2) 58%,var(--theme-hero1));}
.page-hero{background:linear-gradient(135deg,var(--theme-hero1),var(--theme-hero2));}
.section-alt{background:var(--theme-alt)}
.site-footer{background:var(--theme-deep)}
.nav-menu{background:var(--theme-nav)}
.hero-diagram,.card,.governance-card,.arc-stage,.library-item,.proof-card,.research-card,.comparison-panel,.media-panel,.media-card,.figure-card,.explorer-preview,.explorer-shell,.experience-step{background:linear-gradient(180deg,var(--theme-card1),var(--theme-card2));border-color:var(--line)}
.workspace-canvas{background:radial-gradient(circle at 50% 46%,color-mix(in srgb,var(--brand) 11%, transparent),var(--theme-canvas) 54%,var(--paper) 78%)}
.graph-node,.view-tab,.search-box,.context-actions button,.related-links button,.view-strip button{background:var(--surface);color:var(--ink-soft);border-color:var(--line)}
html[data-theme="light"] body::before{opacity:.25}
html[data-theme="light"] .preview-strip{background:#203238;color:#d8e3e0}
html[data-theme="light"] .thesis-band{background:#e8edeb}.thesis-grid{background:var(--surface-2)}html[data-theme="light"] .thesis-item{background:#f6f4ef}
html[data-theme="light"] .prototype-toolbar{background:#203238;color:#f3f8f6}.prototype-frame-wrap{background:#03080a}
html[data-theme="light"] .asset-note{background:#fff8e8}.asset-note{color:var(--ink-soft)}
html[data-theme="light"] .context-change-summary{background:#fff4dd}.context-change-summary{color:var(--ink-soft)}

/* Visible three-step contrast barcode */
.theme-bar{display:inline-grid;grid-template-columns:repeat(3,22px);gap:3px;align-items:center;padding:4px;border:1px solid var(--line);border-radius:999px;background:color-mix(in srgb,var(--surface) 84%,transparent)}
.theme-bar button{width:22px;height:16px;padding:0;border:0;border-radius:5px;cursor:pointer;background:transparent;display:grid;place-items:center}
.theme-bar button i{display:block;width:18px;height:12px;border-radius:4px;border:1px solid rgba(255,255,255,.18)}
.theme-bar button:nth-child(1) i{background:#071014}.theme-bar button:nth-child(2) i{background:#52646a}.theme-bar button:nth-child(3) i{background:#f4f1ea;border-color:#bac4c0}
.theme-bar button[aria-pressed="true"]{outline:2px solid var(--brand);outline-offset:1px}
.theme-orientation{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:16px;color:var(--ink-soft);font-size:.78rem}.header-theme{margin-right:4px}
@media(max-width:720px){.header-theme{display:none}.theme-orientation{margin-top:13px}}

/* Explorer search */
.explorer-search-tools{display:grid;gap:10px}.search-label{display:block;color:var(--ink-soft);font-size:.7rem;font-weight:800;margin-bottom:4px}.ontology-select{width:100%;appearance:auto}.search-scope-note{margin:0;color:var(--ink-soft);font-size:.7rem;line-height:1.45}.cross-model-results{border-top:1px solid var(--line);margin-top:14px;padding-top:8px}.search-result-card{display:grid;gap:5px;text-decoration:none;border:1px solid var(--line);border-radius:11px;padding:10px 11px;margin-top:8px;background:color-mix(in srgb,var(--surface) 92%,transparent)}.search-result-card:hover{border-color:color-mix(in srgb,var(--brand) 55%,var(--line));background:var(--surface-2)}.search-result-card strong{font-size:.82rem}.search-result-card small{color:var(--ink-soft);font-size:.7rem;line-height:1.4}.search-result-terms{display:flex;flex-wrap:wrap;gap:4px}.search-result-terms i{font-style:normal;font-size:.62rem;color:var(--brand);border:1px solid var(--line);padding:2px 5px;border-radius:999px}

/* Interop Lab */
.interop-callout{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:center;border:1px solid rgba(100,210,194,.28);border-radius:18px;padding:24px;background:linear-gradient(135deg,color-mix(in srgb,var(--brand) 7%,var(--surface)),var(--surface))}.interop-callout h2{font-family:var(--serif);font-weight:500;margin:5px 0 7px}.interop-callout p{color:var(--ink-soft);margin:0}.assurance-chain{display:grid;grid-template-columns:minmax(125px,1fr) auto minmax(125px,1fr) auto minmax(125px,1fr) auto minmax(125px,1fr) auto minmax(125px,1fr) auto minmax(125px,1fr);gap:8px;align-items:center}.assurance-chain>div{min-height:112px;display:grid;align-content:center;gap:4px;text-align:center;border:1px solid var(--line);border-radius:13px;padding:12px;background:var(--surface)}.assurance-chain>span{text-align:center;color:var(--brand);font-weight:900}.assurance-chain small{color:var(--ink-soft);font-size:.68rem}.assurance-chain .chain-focus{border-color:color-mix(in srgb,var(--brand) 65%,var(--line));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--brand) 35%,transparent);background:color-mix(in srgb,var(--brand) 8%,var(--surface))}.narration-slot{display:flex;justify-content:space-between;gap:18px;align-items:center;border:1px dashed color-mix(in srgb,var(--brand) 45%,var(--line));border-radius:14px;padding:15px 17px;background:color-mix(in srgb,var(--brand) 5%,var(--surface))}.narration-slot strong{display:block;margin:3px 0}.narration-slot p{margin:0;color:var(--ink-soft);font-size:.82rem}.narration-pending,.figure-audio em{font-style:normal;white-space:nowrap;color:var(--ink-soft);border:1px solid var(--line);border-radius:999px;padding:5px 8px;font-size:.68rem}.figure-audio{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;border-top:1px solid var(--line);margin-top:13px;padding-top:11px;font-size:.7rem}.figure-audio b{color:var(--brand)}.figure-audio span{color:var(--ink-soft)}
@media(max-width:1200px){.assurance-chain{grid-template-columns:repeat(3,1fr)}.assurance-chain>span{display:none}.assurance-chain>div{min-height:100px}}
@media(max-width:720px){.interop-callout{grid-template-columns:1fr}.assurance-chain{grid-template-columns:1fr}.figure-audio{grid-template-columns:1fr}.narration-slot{align-items:flex-start;flex-direction:column}}

/* Hover zoom + lightbox */
[data-hover-zoom]{overflow:hidden;cursor:zoom-in;position:relative}[data-hover-zoom] img{transition:transform .16s ease;will-change:transform}[data-hover-zoom].is-hovering img{transform:scale(1.75)}
body.lightbox-open{overflow:hidden}.site-lightbox{position:fixed;inset:0;z-index:10000;background:rgba(0,0,0,.88);padding:22px;display:grid;place-items:center}.site-lightbox[hidden]{display:none}.lightbox-dialog{width:min(1500px,96vw);height:min(920px,94vh);display:grid;grid-template-rows:auto 1fr auto;background:#071014;border:1px solid #35515a;border-radius:16px;overflow:hidden;box-shadow:0 30px 100px rgba(0,0,0,.5)}.lightbox-close{justify-self:end;margin:10px 12px 6px;border:1px solid #526a72;background:#102129;color:#edf4f3;border-radius:999px;padding:7px 11px;cursor:pointer;font-weight:800}.lightbox-close span{margin-left:4px}.lightbox-stage{min-height:0;display:grid;place-items:center;overflow:auto;padding:12px}.lightbox-stage img{max-width:none;width:auto;height:auto;max-height:100%;max-width:100%;object-fit:contain}.lightbox-hint{color:#9eafaf;text-align:center;padding:8px 12px 12px;font-size:.72rem}

/* Back to top */
.back-to-top{position:fixed;right:22px;bottom:22px;z-index:120;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--brand);box-shadow:var(--shadow);padding:8px 11px;cursor:pointer;font-weight:850;opacity:0;transform:translateY(10px);pointer-events:none;transition:opacity .18s ease,transform .18s ease}.back-to-top.is-visible{opacity:.96;transform:none;pointer-events:auto}.back-to-top span{font-size:.72rem;margin-left:3px}@media(max-width:720px){.back-to-top{right:12px;bottom:12px}.back-to-top span{display:none}}

/* Framed external proof surfaces */
.surface-viewer-head{padding:30px 0 22px;background:var(--theme-hero1);border-bottom:1px solid var(--line)}.surface-viewer-title{display:flex;justify-content:space-between;gap:24px;align-items:flex-end}.surface-viewer-title h1{font-family:var(--serif);font-weight:500;font-size:clamp(2rem,4vw,3.4rem);margin:8px 0}.surface-viewer-title p{color:var(--ink-soft);max-width:850px;margin:0}.surface-viewer-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.surface-viewer{position:relative;height:calc(100vh - 210px);min-height:650px;background:#05090b}.surface-viewer iframe{width:100%;height:100%;border:0;background:#05090b}.surface-loading{position:absolute;z-index:1;left:50%;top:45%;transform:translate(-50%,-50%);display:grid;gap:5px;text-align:center;color:#edf4f3;pointer-events:none;transition:opacity .2s ease}.surface-loading span{color:#94a8aa;font-size:.76rem;max-width:520px}.surface-loading.is-loaded{opacity:0}.surface-loading.is-slow{opacity:1}.surface-viewer iframe{position:relative;z-index:2}@media(max-width:800px){.surface-viewer-title{align-items:flex-start;flex-direction:column}.surface-viewer-actions{justify-content:flex-start}.surface-viewer{height:72vh;min-height:520px}}
\n\n/* Build 07 — native media viewer */\n.media-feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.video-card{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:linear-gradient(180deg,var(--theme-card1),var(--theme-card2));}.video-poster{position:relative;display:block;width:100%;aspect-ratio:16/9;overflow:hidden;border:0;padding:0;background:#03080a;cursor:pointer}.video-poster img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .25s ease,opacity .25s ease}.video-poster:hover img{transform:scale(1.025);opacity:.83}.video-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:rgba(3,14,17,.86);border:1px solid rgba(255,255,255,.35);color:#fff;font-size:1.35rem;box-shadow:0 10px 30px rgba(0,0,0,.34)}.video-card-body{padding:18px}.video-card-body h3{font-family:var(--serif);font-size:1.35rem;margin:7px 0 7px}.video-card-body p{color:var(--ink-soft);margin:0}.video-meta{display:flex;gap:7px;flex-wrap:wrap;margin-top:13px}.media-modal-open{overflow:hidden}.media-modal{position:fixed;inset:0;z-index:10020;display:grid;place-items:center;padding:20px;background:rgba(0,0,0,.9)}.media-modal[hidden]{display:none}.media-modal-dialog{width:min(1220px,96vw);max-height:94vh;overflow:auto;border:1px solid #35515a;border-radius:18px;background:#071014;color:#edf4f3;box-shadow:0 30px 110px rgba(0,0,0,.6)}.media-modal-head{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:16px 18px;border-bottom:1px solid #263940}.media-modal-head h2{font-family:var(--serif);font-weight:500;margin:4px 0 0;font-size:1.6rem}.media-modal-close{border:1px solid #526a72;background:#102129;color:#edf4f3;border-radius:999px;padding:8px 12px;cursor:pointer;font-weight:800}.media-modal-stage{background:#000;display:grid;place-items:center}.media-modal-stage video{display:block;width:100%;max-height:72vh;background:#000}.media-modal-copy{padding:14px 18px 18px}.media-modal-copy p{color:#b7c5c5;margin:0 0 10px}.media-modal-meta{display:flex;flex-wrap:wrap;gap:7px}.media-modal-meta span{border:1px solid #30464d;border-radius:999px;padding:4px 7px;font-size:.68rem;color:#a8b9b9}\n\n/* Build 07 — developer center */\n.dev-grid{display:grid;grid-template-columns:minmax(290px,.8fr) minmax(0,1.2fr);gap:24px}.dev-nav{display:grid;gap:8px;align-content:start}.dev-nav a,.dev-nav button{display:flex;justify-content:space-between;gap:12px;width:100%;text-align:left;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:12px;padding:12px 13px;text-decoration:none;cursor:pointer;font:inherit}.dev-nav small{color:var(--ink-soft)}.repo-browser{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--surface)}.repo-browser-head{display:flex;justify-content:space-between;gap:14px;padding:14px 16px;border-bottom:1px solid var(--line);background:var(--surface-2)}.repo-row{display:grid;grid-template-columns:minmax(200px,.8fr) minmax(0,1.2fr);gap:18px;padding:11px 16px;border-bottom:1px solid var(--line)}.repo-row:last-child{border-bottom:0}.repo-row code{color:var(--brand);font-size:.82rem}.repo-row span{color:var(--ink-soft);font-size:.82rem}.quickstart{display:grid;gap:12px}.quickstep{display:grid;grid-template-columns:34px 1fr;gap:12px;align-items:start;border:1px solid var(--line);border-radius:13px;padding:13px;background:var(--surface)}.quickstep b:first-child{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:color-mix(in srgb,var(--brand) 14%,var(--surface));color:var(--brand)}.quickstep h3{margin:2px 0 4px;font-size:.95rem}.quickstep p{margin:0;color:var(--ink-soft);font-size:.82rem}.example-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.example-card{border:1px solid var(--line);border-radius:14px;padding:15px;background:var(--surface)}.example-card code{display:block;white-space:normal;color:var(--brand);font-size:.78rem;line-height:1.6;margin-top:9px}.license-trigger{display:inline-flex;align-items:center;gap:7px;border:1px solid color-mix(in srgb,var(--brand) 55%,var(--line));background:color-mix(in srgb,var(--brand) 7%,var(--surface));color:var(--brand);border-radius:999px;padding:7px 10px;cursor:pointer;font-weight:800}.info-modal-open{overflow:hidden}.info-modal{position:fixed;inset:0;z-index:10030;display:grid;place-items:center;padding:20px;background:rgba(0,0,0,.82)}.info-modal[hidden]{display:none}.info-modal-dialog{width:min(760px,94vw);max-height:90vh;overflow:auto;border:1px solid #3d555d;border-radius:18px;background:#0b171c;color:#edf4f3;box-shadow:0 30px 90px rgba(0,0,0,.5)}.info-modal-head{display:flex;justify-content:space-between;gap:16px;align-items:start;padding:17px 18px;border-bottom:1px solid #2c4249}.info-modal-head h2{font-family:var(--serif);font-weight:500;margin:4px 0}.info-modal-close{border:1px solid #526a72;background:#102129;color:#edf4f3;border-radius:999px;padding:7px 11px;cursor:pointer}.info-modal-body{padding:18px}.info-modal-body p,.info-modal-body li{color:#b9c7c7}.info-modal-body li{margin:8px 0}.license-status{display:inline-block;border:1px solid #856d44;color:#e0bf7a;border-radius:999px;padding:4px 7px;font-size:.68rem;font-weight:800}\n\n/* Build 07 — GPM/GDE WEDGE */\n.wedge-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.82fr);gap:26px;align-items:center}.wedge-flow{border:1px solid var(--line);border-radius:18px;padding:20px;background:linear-gradient(180deg,var(--theme-card1),var(--theme-card2))}.wedge-flow-row{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:8px;align-items:center}.wedge-flow-row>div{min-height:105px;display:grid;place-items:center;text-align:center;border:1px solid var(--line);border-radius:13px;padding:12px;background:var(--surface)}.wedge-flow-row>span{color:var(--brand);font-weight:900}.embedded-surface{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#05090b}.embedded-surface-head{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:13px 15px;background:var(--surface);border-bottom:1px solid var(--line)}.embedded-surface-head p{margin:3px 0 0;color:var(--ink-soft);font-size:.76rem}.embedded-surface iframe{width:100%;height:680px;border:0;background:#05090b}.surface-fallback{padding:10px 14px;border-top:1px solid var(--line);color:var(--ink-soft);font-size:.75rem}\n@media(max-width:900px){.media-feature-grid,.dev-grid,.wedge-hero-grid{grid-template-columns:1fr}.example-grid{grid-template-columns:1fr}.repo-row{grid-template-columns:1fr}.wedge-flow-row{grid-template-columns:1fr}.wedge-flow-row>span{transform:rotate(90deg)}.embedded-surface iframe{height:560px}}\n

/* Build 08 — 3D Navigator, access tiers, denser media, and focused framed surfaces */
.wide-container{max-width:1500px}.navigator-hero{padding:22px 0 18px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,var(--surface),transparent)}
.navigator-hero .breadcrumb{margin-bottom:12px}.navigator-hero-row{display:flex;align-items:flex-end;justify-content:space-between;gap:28px}.navigator-hero h1{font-family:var(--serif);font-size:clamp(2rem,4vw,3.65rem);margin:6px 0 8px}.navigator-hero p{max-width:850px;color:var(--ink-soft);font-size:1rem;margin:0}.navigator-badges{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;min-width:260px}.navigator-stage-section{padding:16px 0 24px}.navigator-stage-head{display:flex;justify-content:space-between;gap:22px;align-items:center;padding:12px 14px;border:1px solid var(--line);border-bottom:0;border-radius:18px 18px 0 0;background:var(--surface)}.navigator-stage-head p{margin:3px 0 0;color:var(--ink-soft);font-size:.82rem}.surface-actions{display:flex;flex-wrap:wrap;gap:8px}.navigator-live-frame{height:min(76vh,880px);min-height:620px;border:1px solid var(--line);background:#071014;overflow:hidden}.navigator-live-frame iframe{display:block;width:100%;height:100%;border:0;background:#071014}.surface-fallback{font-size:.78rem;color:var(--ink-soft);padding:8px 12px;border:1px solid var(--line);border-top:0;border-radius:0 0 14px 14px;background:var(--surface)}
.explorer-3d-live{grid-template-columns:minmax(240px,.55fr) minmax(380px,1.45fr);padding:0!important;overflow:hidden}.explorer-3d-copy{position:relative;z-index:2;padding:28px;align-self:center}.explorer-3d-copy p{color:var(--ink-soft)}.explorer-3d-live iframe{position:relative;z-index:2;width:100%;height:100%;min-height:500px;border:0;border-left:1px solid var(--line);background:#071014}
.access-tier-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0 24px}.access-tier{display:flex;gap:13px;padding:16px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.access-tier strong{font-size:1rem}.access-tier p{font-size:.84rem;color:var(--ink-soft);margin:3px 0 0}.access-tier small{display:block;margin-top:7px;color:var(--accent)}.access-icon{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;border:1px solid var(--line);flex:0 0 auto}.access-tier.registered{border-color:color-mix(in srgb,var(--accent) 35%,var(--line))}.access-tier.controlled{border-style:dashed}.library-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.library-title-row h3{margin:0}.access-pill{font-size:.66rem;letter-spacing:.06em;text-transform:uppercase;font-weight:750;padding:4px 8px;border-radius:999px;border:1px solid var(--line)}.access-pill.open{color:var(--active)}.access-pill.registered{color:var(--accent)}.access-pill.controlled{color:var(--future)}.controlled-item{background:linear-gradient(90deg,color-mix(in srgb,var(--future) 5%,transparent),transparent)}
.registration-dialog{max-width:620px}.registration-form{display:grid;gap:13px;margin-top:18px}.registration-form label>span{display:block;font-size:.78rem;font-weight:700;margin-bottom:5px}.registration-form input[type="text"],.registration-form input[type="email"],.registration-form input:not([type]){width:100%;border:1px solid var(--line);background:var(--paper);color:var(--ink);padding:11px 12px;border-radius:10px}.registration-form label input[name]{width:100%;border:1px solid var(--line);background:var(--paper);color:var(--ink);padding:11px 12px;border-radius:10px}.registration-consent{display:flex!important;gap:8px;align-items:flex-start;font-size:.8rem;color:var(--ink-soft)}.registration-consent span{display:inline!important;font-weight:400!important;margin:0!important}.registration-consent input{margin-top:3px}
.media-feature-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.media-card.media-feature{grid-column:span 1}.media-poster{aspect-ratio:16/9}.media-card-copy h2,.media-card-copy h3{margin-top:8px}.media-card-copy .text-link{margin-top:8px}
.wedge-compact-hero{padding-top:28px!important;padding-bottom:20px!important}.wedge-compact-hero h1{font-size:clamp(2rem,4vw,3.2rem)!important}.wedge-compact-hero p{max-width:850px}.wedge-focus-frame{height:min(78vh,900px)!important;min-height:640px!important}.embedded-surface:has(.wedge-focus-frame){margin-top:2px}
@media(max-width:980px){.navigator-hero-row{align-items:flex-start;flex-direction:column}.navigator-badges{justify-content:flex-start}.access-tier-grid{grid-template-columns:1fr}.media-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.explorer-3d-live{grid-template-columns:1fr}.explorer-3d-live iframe{border-left:0;border-top:1px solid var(--line);min-height:460px}.navigator-live-frame{min-height:560px}}
@media(max-width:680px){.navigator-live-frame{height:72vh;min-height:500px}.navigator-stage-head{align-items:flex-start;flex-direction:column}.media-feature-grid{grid-template-columns:1fr}.wedge-focus-frame{min-height:560px!important}.surface-actions{width:100%}.surface-actions .btn{flex:1}}


/* Build 09 — document reader, explicit media/audio transport, profile depth, model boundary */
.profile-chip{display:inline-flex;align-items:center;min-height:34px;padding:6px 9px;border:1px solid var(--line);border-radius:999px;color:var(--ink-soft);text-decoration:none;font-size:.72rem;font-weight:750;white-space:nowrap}.profile-chip:hover{color:var(--ink);background:var(--surface)}
.transport{display:grid;grid-template-columns:auto auto auto minmax(120px,1fr) auto auto auto auto auto;gap:8px;align-items:center;padding:10px 12px;background:#071014;border-top:1px solid #263940}.transport button,.transport select{border:1px solid #3b5158;background:#102129;color:#edf4f3;border-radius:8px;min-height:34px;padding:5px 8px;cursor:pointer}.transport input[type=range]{width:100%;accent-color:#64d2c2}.transport-time{font-variant-numeric:tabular-nums;color:#b8c7c7;font-size:.75rem}.media-modal-stage:fullscreen{background:#000;display:grid;align-content:center}.media-modal-stage:fullscreen video{max-height:calc(100vh - 64px)}
.card-action{position:relative}.card-action .card-link{margin-top:12px;display:inline-flex}.card-action:hover{border-color:color-mix(in srgb,var(--brand) 50%,var(--line))}
.document-reader-head{position:sticky;top:0;z-index:20;background:rgba(7,16,20,.96);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);padding:10px 0}.document-reader-row{display:flex;justify-content:space-between;gap:18px;align-items:center}.document-reader-meta{display:flex;flex-wrap:wrap;gap:7px;align-items:center}.document-reader-frame{height:calc(100vh - 154px);min-height:640px;border:0;width:100%;display:block;background:#fff}.reader-shell{background:#0a1115}.reader-notice{padding:12px 16px;border-bottom:1px solid var(--line);background:var(--surface);color:var(--ink-soft);font-size:.78rem}
.depth-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.depth-card{border:1px solid var(--line);border-radius:16px;background:var(--surface);padding:18px}.depth-card button{margin-top:10px}.depth-card [aria-pressed=true]{background:var(--brand);color:#041012}.metric-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.metric-card{border:1px solid var(--line);border-radius:13px;background:var(--surface);padding:14px}.metric-card b{font-family:var(--serif);font-size:1.8rem;font-weight:500;display:block}.metric-card span{color:var(--ink-soft);font-size:.72rem}.privacy-callout{border:1px solid color-mix(in srgb,var(--active) 40%,var(--line));border-radius:16px;padding:18px;background:color-mix(in srgb,var(--active) 4%,var(--surface))}.depth-offer{position:fixed;right:18px;bottom:18px;z-index:10100;max-width:520px;border:1px solid #3e5a60;border-radius:16px;background:#0a171c;color:#edf4f3;box-shadow:0 24px 80px rgba(0,0,0,.4);padding:16px;display:flex;gap:18px;align-items:center}.depth-offer strong,.depth-offer span{display:block}.depth-offer span{color:#afc0c0;font-size:.78rem;margin-top:4px}.depth-offer>div:last-child{display:flex;gap:8px;flex:0 0 auto}
.identity-flow,.model-flow{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;align-items:stretch}.identity-flow>div,.model-flow>div{display:grid;place-items:center;text-align:center;min-height:104px;border:1px solid var(--line);border-radius:13px;background:var(--surface);padding:12px}.identity-flow span,.model-flow span{color:var(--brand);font-weight:900;display:grid;place-items:center}.boundary-note{border-left:3px solid var(--accent);padding:12px 14px;background:color-mix(in srgb,var(--accent) 5%,var(--surface));color:var(--ink-soft)}
.audio-pilot{margin-top:14px;border:1px solid var(--line);border-radius:13px;background:var(--surface-2);padding:12px}.audio-pilot-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.audio-pilot-head strong{font-size:.82rem}.audio-pilot-head small{color:var(--ink-soft);display:block;margin-top:2px}.audio-pilot-controls{display:grid;grid-template-columns:auto auto auto minmax(100px,1fr) auto auto;gap:7px;align-items:center;margin-top:10px}.audio-pilot-controls button,.audio-pilot-controls select{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:8px;padding:6px 8px;min-height:32px}.audio-pilot-controls input{width:100%;accent-color:var(--brand)}.audio-pilot-time{font-size:.7rem;color:var(--ink-soft);font-variant-numeric:tabular-nums}.audio-pilot-note{margin:9px 0 0!important;font-size:.72rem!important;color:var(--ink-soft)!important}
.original-surface-link{font-size:.72rem;color:var(--ink-soft);text-decoration:none}.original-surface-link:hover{color:var(--brand)}
@media(max-width:980px){.transport{grid-template-columns:auto auto auto 1fr auto}.transport [data-speed],.transport [data-mute],.transport [data-fullscreen],.transport [data-total]{grid-row:2}.depth-grid{grid-template-columns:1fr}.metric-grid{grid-template-columns:repeat(2,1fr)}.identity-flow,.model-flow{grid-template-columns:1fr}.identity-flow span,.model-flow span{transform:rotate(90deg)}.depth-offer{left:14px;right:14px;bottom:14px;max-width:none;flex-direction:column;align-items:stretch}.document-reader-row{align-items:flex-start;flex-direction:column}.document-reader-frame{height:calc(100vh - 220px);min-height:520px}}
@media(max-width:680px){.transport{grid-template-columns:auto auto 1fr auto}.transport [data-current],.transport [data-total]{display:none}.audio-pilot-controls{grid-template-columns:auto auto 1fr auto}.audio-pilot-controls select,.audio-pilot-controls .audio-pilot-time:last-of-type{grid-row:2}.metric-grid{grid-template-columns:1fr 1fr}.profile-chip{display:none}}


/* Build 09.1 correction pass — seeking, prototype state visibility, portal viewport focus */
.transport-help{width:100%;padding:7px 12px 9px;background:#071014;border-top:1px solid #1d3036;color:#8fa3a6;font-size:.7rem;text-align:center}.transport [data-preview]{color:#64d2c2;font-weight:800}.media-modal-stage video::-webkit-media-controls-timeline{cursor:pointer}
.prototype-state-readout{display:grid;grid-template-columns:auto;gap:1px;min-width:190px;border:1px solid #31535a;border-radius:10px;padding:7px 10px;background:#0e2026}.prototype-state-readout span{font-size:.6rem;text-transform:uppercase;letter-spacing:.08em;color:#8fa5a8}.prototype-state-readout strong{font-size:.82rem;color:#8ce3d5}.prototype-state-readout small{font-size:.66rem;color:#9fb2b4}.demo-state[aria-pressed="true"]{outline:2px solid color-mix(in srgb,var(--brand) 72%,transparent);outline-offset:1px}
#wedge-portal{scroll-margin-top:66px}.wedge-portal-section{padding-top:8px!important}.wedge-focus-surface{margin-top:0!important}.wedge-focus-head{padding:8px 11px!important;min-height:44px}.wedge-focus-head p{font-size:.68rem!important;margin:1px 0 0!important}.wedge-focus-head .surface-actions{display:flex;gap:7px;align-items:center}.portal-refocus{font:inherit;cursor:pointer}.wedge-focus-frame{height:calc(100vh - 118px)!important;min-height:700px!important}
.surface-viewer-head-compact{padding:10px 0 8px!important}.surface-viewer-head-compact .breadcrumb{margin-bottom:4px}.surface-viewer-head-compact .surface-viewer-title{align-items:center}.surface-viewer-head-compact .surface-viewer-title h1{font-size:1.35rem;margin:3px 0}.surface-viewer-head-compact .surface-viewer-title p{font-size:.74rem}.surface-viewer-head-compact .status{font-size:.62rem}.surface-viewer-head-compact .btn{padding:7px 10px;font-size:.72rem}.surface-viewer{height:calc(100vh - 112px)!important;min-height:700px!important;scroll-margin-top:58px}
@media(max-width:900px){.prototype-state-readout{order:3;width:100%}.wedge-focus-frame{height:78vh!important;min-height:560px!important}.surface-viewer{height:76vh!important;min-height:560px!important}.surface-viewer-head-compact .surface-viewer-title{align-items:flex-start}}


/* ==========================================================================
   BUILD 10 — THEME HARDENING + EXTERNAL SURFACE PERFORMANCE
   Theme is an explicit page property. Dark / Medium / Light are independently
   defined states; in-page panels use semantic tokens rather than dark literals.
   ========================================================================== */
html[data-theme="dark"]{
  --page-panel:var(--surface);--page-panel-2:var(--surface-2);--page-control:var(--surface);
  --page-canvas:#071014;--page-inverse:#050c0f;--page-inverse-text:#edf4f3;--page-inverse-soft:#a9bbbb;
  --page-soft-accent:color-mix(in srgb,var(--brand) 7%,var(--surface));
}
html[data-theme="medium"]{
  --page-panel:var(--surface);--page-panel-2:var(--surface-2);--page-control:var(--surface);
  --page-canvas:#172329;--page-inverse:#121c20;--page-inverse-text:#f2f6f4;--page-inverse-soft:#bdc9c8;
  --page-soft-accent:color-mix(in srgb,var(--brand) 8%,var(--surface));
}
html[data-theme="light"]{
  --page-panel:#ffffff;--page-panel-2:#edf2f0;--page-control:#ffffff;
  --page-canvas:#f4f7f5;--page-inverse:#203238;--page-inverse-text:#f5f8f7;--page-inverse-soft:#d5dfdc;
  --page-soft-accent:#edf6f3;
}
body[data-color-mode]{background:var(--paper);color:var(--ink)}
/* Page-level hook requested in review: pages may specialize tokens without hard-coding component colors. */
body[data-page="siw-home"]{--siw-r2-panel:var(--page-panel);--siw-r2-muted:var(--page-panel-2);--siw-r2-text:var(--ink);--siw-r2-soft:var(--ink-soft)}
body[data-page="siw-home"][data-color-mode="light"]{--siw-r2-panel:#ffffff;--siw-r2-muted:#eef3f1;--siw-r2-text:#17242a;--siw-r2-soft:#4e5f63}

/* Global component rebinds: these used to carry Build 04 dark literals. */
.nav-home,.nav-group summary{color:var(--ink-soft)}
.nav-menu{background:var(--theme-nav)}
.btn{border-color:var(--line)}
.status{background:var(--page-panel);border-color:var(--line)}
.hero-console{background:linear-gradient(180deg,var(--theme-card1),var(--theme-card2));color:var(--ink);border-color:var(--line)}
.console-tree div{color:var(--ink-soft)}
.console-tree div.active{background:color-mix(in srgb,var(--brand) 10%,var(--page-panel));color:var(--brand)}
.constellation .node{background:var(--page-panel);color:var(--ink-soft);border-color:var(--line)}
.constellation .node.main{color:var(--brand);background:var(--page-panel)}
.constellation .line{background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--brand) 34%,var(--line)),transparent)}
.flow-node{background:var(--siw-r2-panel,var(--page-panel));color:var(--siw-r2-text,var(--ink));border-color:var(--line)}
.flow-node .num{background:var(--siw-r2-muted,var(--page-panel-2));color:var(--siw-r2-text,var(--ink))}
.flow-node small{color:var(--siw-r2-soft,var(--ink-soft))}
.knowledge-nugget{background:linear-gradient(180deg,var(--page-soft-accent),var(--page-panel));color:var(--ink)}
.workspace-canvas{background:radial-gradient(circle at 50% 46%,color-mix(in srgb,var(--brand) 10%,transparent),var(--page-canvas) 54%,var(--paper) 78%)}
.graph-node{background:var(--page-panel);color:var(--ink-soft);border-color:var(--line)}
.section-dark{background:var(--page-inverse);color:var(--page-inverse-text)}
.section-dark .section-heading p{color:var(--page-inverse-soft)}
.section-dark .eyebrow{color:color-mix(in srgb,var(--brand) 80%,var(--page-inverse-text))!important}
.document-reader-head{background:color-mix(in srgb,var(--page-panel) 96%,transparent);color:var(--ink)}
.prototype-state-readout{border-color:color-mix(in srgb,var(--brand) 40%,var(--line));background:color-mix(in srgb,var(--brand) 8%,var(--page-panel));color:var(--ink)}
.prototype-state-readout span,.prototype-state-readout small{color:var(--ink-soft)}
.prototype-state-readout strong{color:var(--brand)}

html[data-theme="light"] .thesis-band{background:#e8edeb;color:var(--ink)}
html[data-theme="light"] .thesis-item{background:#f7f8f5;color:var(--ink)}
html[data-theme="light"] .thesis-item p{color:var(--ink-soft)}
html[data-theme="light"] .prototype-toolbar{background:#203238;color:#f3f8f6}
html[data-theme="light"] .demo-state{color:#d9e4e1;border-color:#53686e;background:#16272d}
html[data-theme="light"] .demo-state:hover,html[data-theme="light"] .demo-state[aria-pressed='true']{color:#9ff0e3;background:#21373d}
html[data-theme="light"] .prototype-disclaimer{color:#c0cfcc;background:#13242a}
html[data-theme="light"] .explorer-pane + .explorer-pane{background:#f8faf8}
html[data-theme="light"] .figure-card a{background:#f8faf8}
html[data-theme="light"] .surface-shot a{background:#eef2f0}
html[data-theme="light"] .asset-note{background:#fff8e8;color:#536267}
html[data-theme="light"] .context-change-summary{background:#fff4dd;color:#536267}
html[data-theme="light"] .document-reader-head .breadcrumb{color:#536267}
html[data-theme="light"] .reader-shell{background:#e6ece9}
html[data-theme="light"] .wedge-flow{background:linear-gradient(180deg,#fff,#f3f7f5)}
html[data-theme="light"] .embedded-surface-head,html[data-theme="light"] .navigator-stage-head{background:#fff;color:#17242a}

/* External surface loading feedback. The iframe remains the authoritative external surface. */
.external-frame-shell{position:relative;overflow:hidden;background:#071014}
.external-frame-shell>iframe{position:relative;z-index:1;opacity:0;transition:opacity .22s ease}
.external-frame-shell.is-loaded>iframe{opacity:1}
.external-load-banner{position:absolute;z-index:3;left:12px;right:12px;top:12px;display:flex;align-items:center;gap:10px;min-height:44px;padding:9px 12px;border:1px solid #38545c;border-radius:11px;background:rgba(7,16,20,.94);color:#edf4f3;box-shadow:0 10px 35px rgba(0,0,0,.30);opacity:0;transform:translateY(-5px);transition:opacity .18s ease,transform .18s ease;pointer-events:none}
.external-frame-shell.is-waiting .external-load-banner{opacity:1;transform:none}
.external-frame-shell.is-loaded .external-load-banner{opacity:0;transform:translateY(-5px)}
.external-load-banner .load-spinner{width:16px;height:16px;border:2px solid #526a72;border-top-color:#64d2c2;border-radius:50%;animation:genesisSpin .8s linear infinite;flex:0 0 auto}
.external-load-banner strong{font-size:.79rem}.external-load-banner span{display:block;margin-top:2px;color:#a9bbbb;font-size:.68rem}
.external-load-banner [data-load-time]{margin-left:auto;color:#8fe1d5;font-size:.68rem;white-space:nowrap}
@keyframes genesisSpin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.external-load-banner .load-spinner{animation:none}.external-frame-shell>iframe,.external-load-banner{transition:none}}

/* Build 10 model gateway console — local experimental candidate lane only. */
.model-console{border:1px solid var(--line);border-radius:18px;background:linear-gradient(180deg,var(--theme-card1),var(--theme-card2));overflow:hidden}
.model-console-head{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:14px 16px;border-bottom:1px solid var(--line);background:var(--page-panel)}
.model-console-head p{margin:3px 0 0;color:var(--ink-soft);font-size:.76rem}.model-connection{display:flex;align-items:center;gap:7px;font-size:.72rem;font-weight:800;color:var(--ink-soft)}.model-connection::before{content:'';width:8px;height:8px;border-radius:50%;background:var(--historical)}.model-connection.ready::before{background:var(--active)}.model-connection.missing::before{background:var(--future)}.model-connection.error::before{background:var(--danger)}
.model-console-body{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:0}.model-input-pane,.model-output-pane{padding:18px}.model-output-pane{border-left:1px solid var(--line);background:color-mix(in srgb,var(--brand) 3%,var(--page-panel))}.model-input-pane label{display:block;font-size:.75rem;font-weight:800;margin-bottom:7px}.model-input-pane textarea{width:100%;min-height:170px;resize:vertical;border:1px solid var(--line);border-radius:12px;padding:12px 13px;background:var(--paper);color:var(--ink);font:inherit;line-height:1.5}.model-console-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:10px}.model-output-pane .candidate-label{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:10px}.candidate-output{min-height:170px;white-space:pre-wrap;line-height:1.58;border:1px solid var(--line);border-radius:12px;padding:14px;background:var(--page-panel);color:var(--ink)}.candidate-output.is-empty{color:var(--ink-soft)}.candidate-meta{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px;color:var(--ink-soft);font-size:.7rem}.model-gateway-note{font-size:.72rem;color:var(--ink-soft);margin-top:10px}
@media(max-width:900px){.model-console-body{grid-template-columns:1fr}.model-output-pane{border-left:0;border-top:1px solid var(--line)}}
/* Light-mode semantic status colors use darker values for readable text on light panels. */
html[data-theme="light"]{--active:#176b53;--accent:#925321;--future:#6f4d1d;--historical:#536267;--danger:#963c35}


/* ==========================================================================
   BUILD 11.1 — PRIVATE REVIEW CANDIDATE
   Review visibility is explicit. noindex is discoverability hygiene only;
   real private review requires host-level access control.
   ========================================================================== */
.preview-strip.review-candidate{background:linear-gradient(90deg,#33250d,#1d1610);color:#f6e5bb;border-bottom:1px solid #6f5630}
.preview-strip.review-candidate .container{align-items:center}.review-badge{display:inline-flex;align-items:center;gap:6px;margin-right:8px;padding:3px 7px;border:1px solid #9b7840;border-radius:999px;background:#21170a;color:#f3d99b;font-size:.64rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.review-actions{display:flex;gap:7px;align-items:center}.review-actions .review-action{border:1px solid #8b713e;background:#2d2111;color:#f6e5bb;border-radius:999px;padding:5px 9px;font:inherit;font-size:.68rem;font-weight:800;text-decoration:none;cursor:pointer}.review-actions .review-action:hover,.review-actions .review-action:focus-visible{background:#3a2b16;color:#fff3d5}
.review-watermark{position:fixed;z-index:8000;right:12px;bottom:12px;pointer-events:none;border:1px solid color-mix(in srgb,var(--future) 45%,var(--line));border-radius:999px;background:color-mix(in srgb,var(--page-panel) 92%,transparent);backdrop-filter:blur(10px);padding:5px 9px;color:var(--ink-soft);font-size:.62rem;font-weight:800;box-shadow:0 5px 18px rgba(0,0,0,.12)}
.review-modal-open{overflow:hidden}.review-modal{position:fixed;inset:0;z-index:11000;display:grid;place-items:center;padding:20px;background:rgba(0,0,0,.72)}.review-modal[hidden]{display:none}.review-modal-dialog{width:min(720px,95vw);max-height:92vh;overflow:auto;border:1px solid var(--line);border-radius:18px;background:var(--page-panel);color:var(--ink);box-shadow:0 28px 100px rgba(0,0,0,.45)}.review-modal-head{display:flex;align-items:start;justify-content:space-between;gap:16px;padding:16px 18px;border-bottom:1px solid var(--line)}.review-modal-head h2{margin:3px 0 0;font-family:var(--serif);font-weight:500}.review-modal-close{border:1px solid var(--line);border-radius:999px;background:var(--page-panel-2);color:var(--ink);padding:7px 10px;cursor:pointer}.review-modal-body{padding:18px}.review-context{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:14px}.review-context div{border:1px solid var(--line);border-radius:10px;padding:9px;background:var(--page-panel-2)}.review-context small{display:block;color:var(--ink-soft);font-size:.65rem}.review-context strong{display:block;margin-top:2px;font-size:.76rem}.review-modal label{display:block;font-weight:800;font-size:.76rem;margin-bottom:7px}.review-modal textarea{width:100%;min-height:180px;resize:vertical;border:1px solid var(--line);border-radius:12px;padding:12px;background:var(--paper);color:var(--ink);font:inherit;line-height:1.5}.review-modal-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:12px}.review-copy-status{color:var(--ink-soft);font-size:.72rem}
.review-page-hero{padding:42px 0 24px}.review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.review-card{border:1px solid var(--line);border-radius:15px;padding:17px;background:var(--page-panel)}.review-card h3{margin:4px 0 8px;font-family:var(--serif);font-weight:500}.review-card p,.review-card li{color:var(--ink-soft)}.review-card ul{padding-left:18px}.review-card li{margin:6px 0}.review-warning{border:1px solid color-mix(in srgb,var(--future) 45%,var(--line));background:color-mix(in srgb,var(--future) 6%,var(--page-panel));border-radius:14px;padding:14px 16px;color:var(--ink)}
.wedge-review-focus{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:10px 14px;border-bottom:1px solid var(--line);background:var(--page-panel-2)}.wedge-review-focus span{color:var(--ink-soft);font-size:.72rem}.wedge-review-focus strong{color:var(--ink);font-size:.76rem}.wedge-source-pending{display:inline-flex;align-items:center;gap:6px;border:1px solid color-mix(in srgb,var(--future) 45%,var(--line));border-radius:999px;padding:5px 8px;color:var(--future);font-size:.67rem;font-weight:800}
@media(max-width:900px){.review-grid,.review-context{grid-template-columns:1fr}.preview-strip.review-candidate .container{gap:6px}.review-actions{display:none}.review-watermark{display:none}}

.header-actions .review-action{border:1px solid color-mix(in srgb,var(--future) 35%,var(--line));background:color-mix(in srgb,var(--future) 5%,var(--page-panel));color:var(--ink-soft);border-radius:999px;padding:6px 9px;font:inherit;font-size:.68rem;font-weight:800;text-decoration:none;cursor:pointer;white-space:nowrap}.header-actions .review-action:hover,.header-actions .review-action:focus-visible{color:var(--ink);background:color-mix(in srgb,var(--future) 10%,var(--page-panel))}


/* ==========================================================================\n   BUILD 11.1 — HEADER COLLISION CORRECTION\n   Keep review controls and brand descriptor in their own lanes so neither\n   can overwrite the build marker or primary Genesis navigation.\n   ========================================================================== */
.preview-strip.review-candidate .container{
  flex-wrap:wrap;
  row-gap:5px;
  min-height:38px;
}
.review-build-line{display:flex;align-items:center;gap:0;min-width:0;white-space:nowrap}
.review-build-copy{color:#dec899}
.review-strip-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;white-space:nowrap;margin-left:auto}
.review-strip-actions a{color:#fff0c9;text-decoration:none;font-weight:850;border-bottom:1px solid rgba(255,240,201,.45)}
.review-strip-actions a:hover,.review-strip-actions a:focus-visible{color:#fff;border-bottom-color:#fff}
.brand{min-width:0}
.brand-text small{display:grid;gap:1px;line-height:1.12;margin-top:4px;white-space:nowrap}
.brand-text small span{display:block}
.header-row{grid-template-columns:minmax(152px,auto) minmax(0,1fr) auto;column-gap:22px}
.primary-nav{min-width:0}
.header-actions{min-width:max-content}
@media (max-width:1320px){
  .header-row{column-gap:16px}
  .nav-home,.nav-group summary{padding-left:8px;padding-right:8px}
  .header-actions{gap:7px}
  .header-actions .review-action,.profile-chip{padding-left:7px;padding-right:7px}
}
@media (max-width:1120px){
  .review-strip-actions{margin-left:0}
}
@media (max-width:720px){
  .preview-strip.review-candidate .container{align-items:flex-start}
  .review-build-line,.review-strip-actions{white-space:normal}
  .review-strip-actions{justify-content:flex-start}
  .review-build-copy{display:none}
}


/* ==========================================================================\n   BUILD 11.2 — BRAND BREAK + CONTACT CORRECTION\n   Force the descriptor onto two physical lines at markup level and keep\n   enough brand width that primary navigation can never cover line two.\n   ========================================================================== */
.brand-text small{
  display:block;
  line-height:1.18;
  white-space:normal;
  min-width:128px;
}
.brand-text small br{display:block}
.brand-text .brand-architecture{display:inline-block;margin-top:1px}
@media (min-width:901px){
  .header-row{grid-template-columns:minmax(188px,auto) minmax(0,1fr) auto}
}


/* ==========================================================================\n   BUILD 11.3b — ACCESSIBILITY / READABILITY HARDENING CANDIDATE\n   Bounded review-driven pass. Brand environment != reading environment.\n   ========================================================================== */

/* A visible utility belongs in the header, not after the visitor has started reading. */
.theme-utility{display:flex;align-items:center;gap:7px;white-space:nowrap}
.theme-utility-label{font-size:.68rem;font-weight:850;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft)}
.theme-bar{grid-template-columns:repeat(3,26px);gap:4px}
.theme-bar button{width:26px;height:22px;border-radius:6px}
.theme-bar button i{width:20px;height:14px}
.theme-bar button[data-theme-choice="light"] i{background:#f4f1ea;border-color:#9eaaa5}
.theme-bar button[data-theme-choice="medium"] i{background:#52646a;border-color:#839398}
.theme-bar button[data-theme-choice="dark"] i{background:#071014;border-color:#60747b}
.theme-bar button:focus-visible,.menu-toggle:focus-visible,.review-action:focus-visible,.profile-chip:focus-visible{outline:3px solid var(--brand);outline-offset:3px}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* First-view hierarchy: explanation first; technical console remains, but below it. */
.hero-grid{grid-template-columns:minmax(0,1fr);gap:34px;align-items:start;padding-top:74px;padding-bottom:64px}
.hero-copy{max-width:980px}
.hero .lead{max-width:920px;font-size:clamp(1.08rem,1.55vw,1.32rem);color:var(--ink);margin-bottom:10px}
.hero-why{max-width:880px;color:var(--ink-soft);font-size:1rem;margin:0 0 22px}
.hero-console{width:min(980px,100%);margin:0 auto}
html[data-theme="light"] .hero-console{background:linear-gradient(180deg,#102129,#081318);color:#edf4f3;border-color:#39515a}
html[data-theme="light"] .hero-console .eyebrow,html[data-theme="light"] .hero-console .console-tree{color:#b8c7c7}

/* Direct paths for a long landing page. */
.section-jump{border-bottom:1px solid var(--line);background:var(--surface)}
.section-jump .container{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:12px 0}
.section-jump strong{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-soft);margin-right:4px}
.section-jump a{display:inline-flex;align-items:center;min-height:36px;padding:6px 10px;border:1px solid var(--line);border-radius:999px;text-decoration:none;color:var(--ink);font-size:.78rem;font-weight:760;background:var(--surface)}
.section-jump a:hover,.section-jump a:focus-visible{border-color:var(--brand);color:var(--brand);outline:none}

/* Progressive first-use vocabulary. */
.lexicon-preview{margin:18px 0 0;border:1px solid var(--line);border-radius:14px;background:var(--surface);overflow:hidden}
.lexicon-preview summary{cursor:pointer;padding:12px 14px;font-weight:800;color:var(--brand)}
.lexicon-preview summary:focus-visible{outline:3px solid var(--brand);outline-offset:-3px}
.lexicon-mini-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border-top:1px solid var(--line)}
.lexicon-mini-grid div{padding:12px 14px;border-bottom:1px solid var(--line)}
.lexicon-mini-grid div:nth-child(odd){border-right:1px solid var(--line)}
.lexicon-mini-grid b{display:block;font-family:var(--serif);font-size:1rem}
.lexicon-mini-grid span{display:block;color:var(--ink-soft);font-size:.78rem;margin-top:2px}
.lexicon-link{display:block;padding:10px 14px;text-decoration:none;color:var(--brand);font-weight:800;font-size:.78rem}
.term-definition{border-bottom:1px dotted currentColor;cursor:help;text-decoration:none}

/* Light reading mode uses high-contrast reading cards while technical/brand surfaces retain identity. */
html[data-theme="light"] .section:not(.technical-surface) .card,
html[data-theme="light"] .section:not(.technical-surface) .research-card,
html[data-theme="light"] .section:not(.technical-surface) .comparison-panel,
html[data-theme="light"] .section:not(.technical-surface) .library-item,
html[data-theme="light"] .reading-surface{background:#fff;color:#17242a}
html[data-theme="light"] .section p,html[data-theme="light"] .context-definition,html[data-theme="light"] .research-card p{color:#46565b}

/* Media accessibility status and transcript/caption readiness. */
.media-accessibility{display:flex;flex-wrap:wrap;gap:7px;margin-top:11px}
.a11y-status{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--line);border-radius:999px;padding:4px 7px;font-size:.68rem;font-weight:800;color:var(--ink-soft);background:var(--surface)}
.a11y-status.pending::before{content:'Pending';font-size:.58rem;text-transform:uppercase;letter-spacing:.06em;color:#7b4d19}
.media-a11y-note{margin-top:10px!important;font-size:.78rem!important;color:var(--ink-soft)!important}
.media-accessibility-modal{margin-top:10px;padding-top:10px;border-top:1px solid #30464d;color:#c8d5d3;font-size:.78rem}
.media-accessibility-modal a{color:#8fe6d8;font-weight:800}

/* Attribution/provenance register. */
.register-doctrine{border:1px solid var(--line);border-radius:18px;padding:22px;background:var(--surface)}
.register-doctrine strong{font-family:var(--serif);font-size:1.35rem}
.register-grid{display:grid;gap:16px}
.register-entry{border:1px solid var(--line);border-radius:16px;background:var(--surface);padding:22px}
.register-entry h2{font-family:var(--serif);font-weight:500;margin:4px 0 5px}
.register-entry .contribution-role{color:var(--brand);font-weight:800;margin:0 0 12px}
.register-meta{display:grid;grid-template-columns:150px 1fr;gap:7px 14px;border-top:1px solid var(--line);padding-top:14px;margin-top:14px;font-size:.82rem}
.register-meta dt{font-weight:850;color:var(--ink-soft)}
.register-meta dd{margin:0}
.register-statuses{display:grid;grid-template-columns:repeat(5,1fr);gap:9px}
.register-statuses div{border:1px solid var(--line);border-radius:12px;padding:12px;background:var(--surface)}
.register-statuses b{display:block;color:var(--brand)}
.register-statuses span{color:var(--ink-soft);font-size:.75rem}
.governing-notice{border-left:4px solid var(--brand);padding:18px 20px;background:var(--surface-2);border-radius:0 12px 12px 0}

/* Public-site maturity placeholders are explicitly not policies. */
.policy-placeholder{border:1px dashed var(--line);border-radius:16px;padding:20px;background:var(--surface)}
.policy-placeholder strong{display:block;color:var(--accent);margin-bottom:7px}
.site-footer .legal-note{color:#b9c8c5;font-size:.76rem}

/* Static navigation must remain usable with JS blocked. */
.no-js-note{font-size:.68rem;color:var(--ink-soft)}

@media(max-width:1080px){
  .header-actions .btn{display:none}
  .theme-utility-label{display:none}
  .header-row{gap:14px}
}
@media(max-width:720px){
  .header-theme{display:inline-grid}
  .theme-utility{display:flex}
  .header-actions{gap:7px}
  .review-action,.profile-chip{display:none}
  .lexicon-mini-grid{grid-template-columns:1fr}
  .lexicon-mini-grid div:nth-child(odd){border-right:0}
  .register-statuses{grid-template-columns:1fr}
  .register-meta{grid-template-columns:1fr;gap:2px}
  .hero-grid{padding-top:50px}
}

.hero-question{font-size:.74rem;text-transform:uppercase;letter-spacing:.09em;font-weight:900;color:var(--brand);margin-top:20px;margin-bottom:5px}

/* Build 12.1 — governance lineage reconciliation (lineage-only) */
.lineage-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:stretch;margin-top:24px}
.lineage-stage{position:relative;border:1px solid var(--line);border-radius:16px;padding:18px;background:linear-gradient(180deg,var(--theme-card1),var(--theme-card2));min-height:190px}
.lineage-stage:not(:last-child)::after{content:'→';position:absolute;right:-18px;top:50%;transform:translateY(-50%);z-index:2;width:24px;height:24px;display:grid;place-items:center;border-radius:50%;background:var(--page-panel);color:var(--brand);border:1px solid var(--line);font-weight:900}
.lineage-era{display:inline-flex;border:1px solid var(--line);border-radius:999px;padding:4px 8px;font-size:.66rem;font-weight:800;color:var(--ink-soft);margin-bottom:10px}
.lineage-stage h3{font-family:var(--serif);font-size:1.35rem;margin:0 0 8px}
.lineage-stage p{color:var(--ink-soft);margin:0 0 10px;font-size:.84rem;line-height:1.55}
.lineage-stage ul{margin:0;padding-left:18px;color:var(--ink-soft);font-size:.78rem;line-height:1.55}
.lineage-stage li{margin:4px 0}
.lineage-stage.siw-stage{border-color:color-mix(in srgb,var(--brand) 55%,var(--line));box-shadow:0 0 0 1px color-mix(in srgb,var(--brand) 15%,transparent)}
.lineage-note{margin-top:18px;border-left:3px solid var(--brand);padding:12px 14px;background:color-mix(in srgb,var(--brand) 5%,var(--surface));border-radius:0 12px 12px 0}
.lineage-note strong{display:block;margin-bottom:4px}
.lineage-note p{margin:0;color:var(--ink-soft)}
.inheritance-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.inheritance-card{border:1px solid var(--line);border-radius:15px;padding:16px;background:var(--surface)}
.inheritance-card h3{font-family:var(--serif);font-size:1.2rem;margin:7px 0}
.inheritance-card p{color:var(--ink-soft);font-size:.82rem}
.lineage-boundary{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:20px}
.lineage-boundary>div{border:1px solid var(--line);border-radius:14px;padding:16px;background:var(--surface)}
.lineage-boundary h3{margin:0 0 7px}
.lineage-boundary p{margin:0;color:var(--ink-soft);font-size:.82rem}
@media(max-width:980px){.lineage-strip{grid-template-columns:1fr 1fr}.lineage-stage:not(:last-child)::after{display:none}.inheritance-grid{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.lineage-strip,.inheritance-grid,.lineage-boundary{grid-template-columns:1fr}}


/* Build 12.2 — SIW overview interaction clarity */
.explorer-preview-links a.view-tab { text-decoration:none; }
.explorer-preview-links .view-tab.preview-current { color:white; background:var(--brand); border-color:var(--brand); }
.explorer-preview-note { margin-top:10px; color:var(--ink-soft); font-size:.82rem; }
[data-theme='medium'] .explorer-preview-links .view-tab.preview-current,
[data-theme='dark'] .explorer-preview-links .view-tab.preview-current { background:rgba(100,210,194,.14); border-color:rgba(100,210,194,.45); color:var(--brand); }


/* === inherited active rules from main-build12.4.css (flattened into Build 12.6) === */

/* ==========================================================================
   BUILD 12.4 — PUBLIC REVIEW UX REFRESH CANDIDATE
   Loading/launch feedback only. Existing architecture and proof surfaces
   remain authoritative; this layer does not substitute or simulate them.
   ========================================================================== */

/* Hourglass feedback for embedded external/heavy surfaces. */
.external-load-banner .load-spinner{
  width:22px;
  height:22px;
  display:grid;
  place-items:center;
  border:0;
  border-radius:0;
  animation:genesisHourglassFlip 1.25s ease-in-out infinite;
  flex:0 0 auto;
}
.external-load-banner .load-spinner::before{
  content:"⌛";
  font-size:18px;
  line-height:1;
  filter:saturate(.75);
}
@keyframes genesisHourglassFlip{
  0%,40%{transform:rotate(0deg)}
  55%,95%{transform:rotate(180deg)}
  100%{transform:rotate(360deg)}
}

/* Full-page transition cue for heavy local tools. */
.genesis-launch-overlay{
  position:fixed;
  inset:0;
  z-index:12050;
  display:grid;
  place-items:center;
  padding:22px;
  background:rgba(3,10,13,.78);
  backdrop-filter:blur(8px);
  opacity:0;
  pointer-events:none;
  transition:opacity .14s ease;
}
.genesis-launch-overlay.is-visible{opacity:1;pointer-events:auto}
.genesis-launch-card{
  width:min(520px,92vw);
  border:1px solid #3d5961;
  border-radius:18px;
  background:#09161b;
  color:#edf4f3;
  padding:22px 24px;
  box-shadow:0 30px 100px rgba(0,0,0,.48);
  display:grid;
  grid-template-columns:42px 1fr;
  gap:15px;
  align-items:center;
}
.genesis-launch-hourglass{
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  font-size:25px;
  animation:genesisHourglassFlip 1.25s ease-in-out infinite;
}
.genesis-launch-card strong{display:block;font-size:1rem}
.genesis-launch-card span{display:block;margin-top:4px;color:#aec0c2;font-size:.78rem;line-height:1.45}

/* Small current-page confirmation when an external surface opens in a new tab. */
.genesis-launch-toast{
  position:fixed;
  z-index:12040;
  right:18px;
  bottom:18px;
  max-width:min(420px,calc(100vw - 36px));
  display:flex;
  gap:10px;
  align-items:center;
  border:1px solid #3d5961;
  border-radius:13px;
  background:rgba(9,22,27,.96);
  color:#edf4f3;
  padding:11px 13px;
  box-shadow:0 16px 45px rgba(0,0,0,.34);
  opacity:0;
  transform:translateY(7px);
  transition:opacity .16s ease,transform .16s ease;
  pointer-events:none;
}
.genesis-launch-toast.is-visible{opacity:1;transform:none}
.genesis-launch-toast b{font-size:1rem}
.genesis-launch-toast span{font-size:.74rem;color:#c3d0d0}

/* Slight cue on known interactive/external launch links. */
a.genesis-heavy-launch::before{
  content:"⌛";
  font-size:.78em;
  margin-right:.34em;
  opacity:.72;
}

@media(prefers-reduced-motion:reduce){
  .external-load-banner .load-spinner,
  .genesis-launch-hourglass{animation:none}
  .genesis-launch-overlay,
  .genesis-launch-toast{transition:none}
}


/* === inherited active rules from main-build12.5.css (flattened into Build 12.6) === */

/* ==========================================================================
   BUILD 12.5 — PUBLIC SURFACE RELIABILITY / PROVENANCE CANDIDATE
   ========================================================================== */

/* The loading state belongs on the destination screen and remains until the
   embedded surface reports load. No simulated pre-navigation flash. */
.surface-viewer { position:relative; }
.surface-viewer iframe {
  opacity:0;
  transition:opacity .2s ease;
}
.surface-viewer.is-loaded iframe { opacity:1; }
.surface-loading {
  z-index:5 !important;
  inset:0 !important;
  left:0 !important;
  top:0 !important;
  transform:none !important;
  display:grid !important;
  place-content:center;
  justify-items:center;
  gap:9px !important;
  padding:24px;
  background:#071014;
  opacity:1 !important;
  text-align:center;
}
.surface-viewer.is-loaded .surface-loading {
  opacity:0 !important;
  pointer-events:none;
  visibility:hidden;
}
.surface-loading::before {
  content:"⌛";
  display:block;
  font-size:34px;
  line-height:1;
  animation:gaix125Hourglass 1.25s ease-in-out infinite;
}
.surface-loading strong { font-size:.98rem; color:#edf4f3; }
.surface-loading span { max-width:620px; font-size:.76rem; color:#a9bbbb; line-height:1.5; }

/* External frame shells use the same actual-wait model. */
.external-frame-shell .external-load-banner {
  inset:0 !important;
  left:0 !important;
  right:0 !important;
  top:0 !important;
  min-height:100%;
  border:0;
  border-radius:0;
  box-shadow:none;
  transform:none !important;
  display:grid;
  place-content:center;
  justify-items:center;
  text-align:center;
  gap:10px;
  padding:24px;
  background:#071014;
  opacity:1;
}
.external-frame-shell .external-load-banner .load-spinner {
  width:auto;
  height:auto;
  border:0;
  border-radius:0;
  animation:gaix125Hourglass 1.25s ease-in-out infinite;
}
.external-frame-shell .external-load-banner .load-spinner::before {
  content:"⌛";
  font-size:34px;
  line-height:1;
}
.external-frame-shell.is-loaded .external-load-banner {
  opacity:0;
  visibility:hidden;
  pointer-events:none;
}
.external-frame-shell.is-loaded > iframe { opacity:1; }
.external-load-banner [data-load-time] { margin:0; }
@keyframes gaix125Hourglass {
  0%,40%{transform:rotate(0deg)}
  55%,95%{transform:rotate(180deg)}
  100%{transform:rotate(360deg)}
}

/* Prototype starts with a real orientation state; wrapper-only controls that
   led to blank canned deep-links are no longer exposed. */
.prototype-toolbar .demo-states { display:none !important; }
.prototype-toolbar::before {
  content:"Generation 0 preserved interactive prototype";
  color:#c0cfcc;
  font-size:.76rem;
  font-weight:750;
}
.prototype-frame-wrap { position:relative; }
.prototype-init-mask {
  position:absolute;
  z-index:8;
  left:0; right:0;
  top:49px; bottom:42px;
  display:grid;
  place-content:center;
  justify-items:center;
  gap:10px;
  padding:24px;
  background:#05090b;
  color:#edf4f3;
  text-align:center;
}
.prototype-init-mask::before {
  content:"⌛";
  font-size:34px;
  animation:gaix125Hourglass 1.25s ease-in-out infinite;
}
.prototype-init-mask span { color:#a9bbbb; font-size:.76rem; }
.prototype-frame-wrap.prototype-ready .prototype-init-mask { display:none; }

/* Knowledge Explorer 3D no longer embeds the trapping historical Navigator.
   It intentionally launches the controlled full wrapper instead. */
.explorer-3d-launch-card {
  border:1px solid var(--line);
  border-radius:16px;
  padding:22px;
  background:var(--surface);
  display:grid;
  gap:12px;
}
.explorer-3d-launch-card h3 { margin:0; font-family:var(--serif); font-size:1.35rem; }
.explorer-3d-launch-card p { margin:0; color:var(--ink-soft); max-width:680px; }
.explorer-3d-launch-card .status { width:max-content; }

/* Build 12.6b: wrapper-level shield over the unfinished historical assistant area.
   The underlying Manus-hosted Navigator remains unmodified; direct external launch is suppressed. */
.navigator-live-frame { position:relative; }
.navigator-chat-shield {
  position:absolute;
  z-index:7;
  top:0;
  right:0;
  bottom:0;
  width:34%;
  height:auto;
  border-left:1px solid #30464d;
  background:#071014;
  display:grid;
  place-content:center;
  padding:24px;
  text-align:center;
  color:#b9c8c8;
  pointer-events:auto;
}
.navigator-chat-shield strong { color:#edf4f3; font-size:.8rem; }
.navigator-chat-shield span { display:block; margin-top:6px; font-size:.69rem; line-height:1.45; }

/* Build 12.6b: hosted Model Lab controls are intentionally unavailable.
   Disabled controls must not visually advertise an action that cannot execute. */
.hosted-model-disabled button[disabled],
.hosted-model-disabled textarea[disabled] {
  cursor:not-allowed;
}
.hosted-model-disabled button[disabled] {
  opacity:.48;
  filter:saturate(.35);
  box-shadow:none;
  pointer-events:none;
}
.hosted-model-disabled textarea[disabled] {
  opacity:.72;
}

/* Planned Library views are visibly non-interactive. */
.view-strip button[disabled] {
  cursor:not-allowed;
  opacity:.58;
  border-style:dashed;
}
.planned-badge {
  display:inline-block;
  margin-left:5px;
  border:1px solid var(--line);
  border-radius:999px;
  padding:1px 5px;
  font-size:.58rem;
  vertical-align:middle;
  color:var(--ink-soft);
}

/* Patent filing status. */
.patent-status-card {
  border:1px solid var(--line);
  border-radius:18px;
  padding:20px 22px;
  background:linear-gradient(180deg,var(--theme-card1),var(--theme-card2));
}
.patent-status-card h3 { margin:6px 0 8px; font-family:var(--serif); font-size:1.35rem; }
.patent-status-card p { margin:0; color:var(--ink-soft); line-height:1.58; }
.patent-status-card .patent-title { margin-top:8px; color:var(--ink); font-style:italic; }

@media(prefers-reduced-motion:reduce){
  .surface-loading::before,
  .external-frame-shell .external-load-banner .load-spinner,
  .prototype-init-mask::before { animation:none; }
  .surface-viewer iframe { transition:none; }
}
@media(max-width:760px){
  .navigator-chat-shield { width:42%; top:0; bottom:0; height:auto; padding:14px; }
}


/* === inherited active rules from main-build12.5a.css (flattened into Build 12.6) === */

/* BUILD 12.5a — public-review hotfix */
.navigator-chat-note{
  margin:0 0 12px;
}
.navigator-chat-note p{
  margin:.35rem 0 0;
  color:var(--ink-soft);
  line-height:1.5;
}

/* === Build 12.6 specification alignment / review reconciliation === */
.maturity-banner{margin-top:18px;padding:14px 16px;border:1px solid var(--border,rgba(23,107,103,.28));border-radius:14px;background:var(--panel,rgba(255,255,255,.72));max-width:820px;font-size:.94rem;line-height:1.55}
.maturity-banner strong{display:block;margin-bottom:3px}
.status-table-wrap{overflow-x:auto;border:1px solid var(--border,rgba(23,107,103,.22));border-radius:16px;background:var(--panel,rgba(255,255,255,.72))}
.status-table{width:100%;border-collapse:collapse;min-width:980px;font-size:.91rem}
.status-table th,.status-table td{padding:13px 14px;vertical-align:top;border-bottom:1px solid var(--border,rgba(23,107,103,.18));text-align:left;line-height:1.45}
.status-table th{position:sticky;top:0;background:var(--paper,#f4f1ea);z-index:1;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em}
.status-table tr:last-child td{border-bottom:0}.status-table td:first-child{font-weight:700;min-width:180px}
.status-chip{display:inline-block;border:1px solid currentColor;border-radius:999px;padding:3px 8px;font-size:.72rem;font-weight:750;letter-spacing:.03em;white-space:nowrap}
.status-chip.done{color:#176b67}.status-chip.partial{color:#7d651f}.status-chip.review{color:#7b4f2b}.status-chip.planned{color:#5b638b}.status-chip.open{color:#7d3d3d}
.relation-grid,.ip-grid,.fabric-grid,.review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.relation-card,.ip-card,.fabric-card,.review-card{border:1px solid var(--border,rgba(23,107,103,.22));border-radius:16px;padding:20px;background:var(--panel,rgba(255,255,255,.72))}
.relation-card h3,.ip-card h3,.fabric-card h3,.review-card h3{margin-top:4px}
.chronology-track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:22px}
.chronology-step{position:relative;border:1px solid var(--border,rgba(23,107,103,.24));border-radius:14px;padding:16px;background:var(--panel,rgba(255,255,255,.72))}.chronology-step:not(:last-child)::after{content:'→';position:absolute;right:-11px;top:42%;font-weight:800;z-index:2}.chronology-step small{display:block;margin-bottom:7px;text-transform:uppercase;letter-spacing:.05em;opacity:.75}
.sdi-map{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:stretch}.sdi-node{border:1px solid var(--border,rgba(23,107,103,.24));border-radius:16px;padding:18px;background:var(--panel,rgba(255,255,255,.74))}.sdi-contact{grid-column:1/-1;border:2px solid var(--brand,#176b67);border-radius:16px;padding:18px;text-align:center}.sdi-flow{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.sdi-flow>div{border:1px solid var(--border,rgba(23,107,103,.24));border-radius:14px;padding:16px;text-align:center;background:var(--panel,rgba(255,255,255,.68))}.sdi-maxim{font-size:clamp(1.35rem,3vw,2.2rem);font-weight:800;line-height:1.2;text-align:center;padding:26px;border-block:1px solid var(--border,rgba(23,107,103,.24));margin:22px 0}
.ip-timeline{display:grid;gap:14px}.ip-event{display:grid;grid-template-columns:150px 1fr;gap:18px;border-left:3px solid var(--brand,#176b67);padding:8px 0 8px 18px}.ip-event time{font-weight:800}.legal-boundary{padding:16px 18px;border-radius:14px;border:1px solid var(--border,rgba(23,107,103,.24));background:var(--panel,rgba(255,255,255,.68))}.legal-boundary strong{display:block;margin-bottom:6px}
.provenance-labels{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.provenance-label{font-size:.74rem;border:1px solid var(--border,rgba(23,107,103,.28));border-radius:999px;padding:4px 9px}
.boundary-note{border-left:4px solid var(--brand,#176b67);padding:14px 18px;background:var(--panel,rgba(255,255,255,.64));border-radius:0 12px 12px 0;margin:18px 0}
@media(max-width:900px){.relation-grid,.ip-grid,.fabric-grid,.review-grid,.chronology-track,.sdi-map,.sdi-flow{grid-template-columns:1fr}.chronology-step:not(:last-child)::after{content:'↓';right:auto;left:50%;top:auto;bottom:-18px}.ip-event{grid-template-columns:1fr}.status-table{min-width:760px}}


/* ==========================================================================\n   BUILD 12.6a — STABILIZATION HOTFIX\n   Theme contrast, Explorer scroll, profile-selection feedback.\n   ========================================================================== */
/* New 12.6 surfaces used --panel/--border fallbacks that stayed light in dark themes. */
html[data-theme="light"] { --panel:#ffffff; --border:#cbd6d2; }
html[data-theme="medium"] { --panel:#1d2c32; --border:#41575d; }
html[data-theme="dark"] { --panel:#0b171c; --border:#263940; }

/* Keep the new review, Fabric, SDI, IP and status panels theme-native and readable. */
.review-card,.fabric-card,.relation-card,.ip-card,.chronology-step,.sdi-node,.sdi-flow>div,.legal-boundary,.boundary-note,.maturity-banner,.status-table-wrap {
  background:var(--panel);
  border-color:var(--border);
  color:var(--ink);
}
.review-card p,.review-card li,.fabric-card p,.fabric-card li,.relation-card p,.relation-card li,.ip-card p,.ip-card li,.chronology-step p,.sdi-node p,.sdi-flow>div p,.legal-boundary,.boundary-note {
  color:var(--ink-soft);
}
html[data-theme="medium"] .review-card,
html[data-theme="medium"] .fabric-card,
html[data-theme="medium"] .relation-card,
html[data-theme="medium"] .ip-card,
html[data-theme="medium"] .chronology-step,
html[data-theme="medium"] .sdi-node,
html[data-theme="medium"] .sdi-flow>div,
html[data-theme="medium"] .legal-boundary,
html[data-theme="medium"] .maturity-banner,
html[data-theme="medium"] .status-table-wrap { box-shadow:inset 0 1px 0 rgba(255,255,255,.025); }
html[data-theme="dark"] .review-card,
html[data-theme="dark"] .fabric-card,
html[data-theme="dark"] .relation-card,
html[data-theme="dark"] .ip-card,
html[data-theme="dark"] .chronology-step,
html[data-theme="dark"] .sdi-node,
html[data-theme="dark"] .sdi-flow>div,
html[data-theme="dark"] .legal-boundary,
html[data-theme="dark"] .maturity-banner,
html[data-theme="dark"] .status-table-wrap { box-shadow:inset 0 1px 0 rgba(255,255,255,.018); }

/* Search results must scroll inside the left Explorer panel rather than disappear below its viewport. */
.explorer-v4 .explorer-tree {
  max-height:min(78vh,860px);
  overflow-y:auto;
  overscroll-behavior:contain;
  scrollbar-gutter:stable;
}
.explorer-v4 .explorer-tree .explorer-toolbar {
  position:sticky;
  top:0;
  z-index:4;
  background:var(--panel);
  padding-bottom:10px;
}

/* Make Experience Depth selection visibly actionable. */
.depth-card { transition:border-color .16s ease, background .16s ease, box-shadow .16s ease; }
.depth-card:has([data-depth-choice][aria-pressed="true"]) {
  border-color:color-mix(in srgb,var(--brand) 72%,var(--line));
  background:color-mix(in srgb,var(--brand) 7%,var(--surface));
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--brand) 24%,transparent);
}
.depth-selection-feedback { margin:14px 0 0; color:var(--ink-soft); font-size:.82rem; }
.depth-selection-feedback strong { color:var(--ink); }

@media(max-width:980px){
  .explorer-v4 .explorer-tree{max-height:62vh;}
}


/* 12.6a systemic readability correction: all new feature panels and proof tables use opaque theme-native surfaces. */
html[data-theme="medium"] { --panel:#15242a; --border:#52656b; }
html[data-theme="dark"] { --panel:#081419; --border:#33474e; }

.review-card,.fabric-card,.relation-card,.ip-card,.chronology-step,.sdi-node,.sdi-flow>div,
.legal-boundary,.boundary-note,.maturity-banner,.status-table-wrap,.status-table th,.status-table td {
  color:var(--ink);
}
.status-table-wrap { background:var(--panel); }
.status-table th {
  background:color-mix(in srgb,var(--panel) 82%,var(--surface-2));
  color:var(--ink);
  border-color:var(--border);
}
.status-table td {
  background:var(--panel);
  color:var(--ink-soft);
  border-color:var(--border);
}
.status-table td:first-child { color:var(--ink); }
.status-table tbody tr:nth-child(even) td {
  background:color-mix(in srgb,var(--panel) 92%,var(--surface-2));
}

/* Shared square/feature-card readability across Medium and Dark. */
html[data-theme="medium"] .card,
html[data-theme="medium"] .governance-card,
html[data-theme="medium"] .arc-stage,
html[data-theme="medium"] .library-item,
html[data-theme="medium"] .proof-card,
html[data-theme="medium"] .research-card,
html[data-theme="medium"] .comparison-panel,
html[data-theme="medium"] .media-panel,
html[data-theme="medium"] .media-card,
html[data-theme="medium"] .figure-card,
html[data-theme="medium"] .experience-step,
html[data-theme="medium"] .depth-card,
html[data-theme="medium"] .metric-card,
html[data-theme="medium"] .inheritance-card,
html[data-theme="medium"] .lineage-boundary>div,
html[data-theme="dark"] .card,
html[data-theme="dark"] .governance-card,
html[data-theme="dark"] .arc-stage,
html[data-theme="dark"] .library-item,
html[data-theme="dark"] .proof-card,
html[data-theme="dark"] .research-card,
html[data-theme="dark"] .comparison-panel,
html[data-theme="dark"] .media-panel,
html[data-theme="dark"] .media-card,
html[data-theme="dark"] .figure-card,
html[data-theme="dark"] .experience-step,
html[data-theme="dark"] .depth-card,
html[data-theme="dark"] .metric-card,
html[data-theme="dark"] .inheritance-card,
html[data-theme="dark"] .lineage-boundary>div {
  background:linear-gradient(180deg,var(--theme-card1),var(--theme-card2));
  color:var(--ink);
  border-color:var(--line);
}

/* Remove the now-unused spacing rule that was added during an audio hypothesis. */

/* Build 12.6b — final suppression of obsolete Navigator assistant shield. */
.navigator-chat-shield {
  display:none !important;
}

/* ==========================================================================
   BUILD 13 — LIGHT-MODE GLARE REDUCTION
   Softer light surfaces; text, semantic colors, Medium and Dark unchanged.
   ========================================================================== */

html[data-theme="light"] {
  --paper:#eef1ef;
  --surface:#f7f8f6;
  --surface-2:#e5eae7;

  --theme-head:rgba(238,241,239,.96);
  --theme-hero1:#f0f2ef;
  --theme-hero2:#e3e9e6;
  --theme-alt:#e8ece9;
  --theme-nav:#f7f8f6;
  --theme-card1:#f7f8f6;
  --theme-card2:#f0f3f0;
  --theme-canvas:#f0f3f0;

  --page-panel:#f7f8f6;
  --page-panel-2:#e8edeb;
  --page-control:#f7f8f6;
  --page-canvas:#eff3f1;
  --page-soft-accent:#e9f2ef;

  --panel:#f7f8f6;
}

/* Remove the remaining pure-white glare points in Light mode. */
html[data-theme="light"] .reading-surface,
html[data-theme="light"] .embedded-surface-head,
html[data-theme="light"] .navigator-stage-head {
  background:#f7f8f6;
}

html[data-theme="light"] .wedge-flow {
  background:linear-gradient(180deg,#f7f8f6,#eef3f0);
}

/* SIW's internal light presentation has its own panel tokens. */
html[data-theme="light"] body[data-page="siw-home"][data-color-mode="light"] {
  --siw-r2-panel:#f7f8f6;
  --siw-r2-muted:#e7ece9;
}


/* ==========================================================================
   BUILD 13 — REVIEW GUIDE LAYOUT CORRECTION
   Keep the active team-review cards balanced as a 2 x 2 desktop grid.
   ========================================================================== */

body[data-page="review"] .review-grid {
  grid-template-columns:repeat(2,minmax(0,1fr));
}

@media(max-width:900px) {
  body[data-page="review"] .review-grid {
    grid-template-columns:1fr;
  }
}


/* ==========================================================================
   BUILD 13 — HOMEPAGE KNOWLEDGE SURFACE LIGHT CORRECTION
   Light mode only. Medium/Dark and Knowledge Explorer architecture unchanged.
   ========================================================================== */

html[data-theme="light"] .hero-console {
    width:min(920px,100%);
    background:linear-gradient(180deg,#e8edeb,#e2e9e6);
    color:#17242a;
    border-color:#bccbc6;
    box-shadow:0 14px 38px rgba(21,33,43,.10);
    padding:16px;
}

html[data-theme="light"] .hero-console .console-top {
    border-bottom-color:#bccbc6;
}

html[data-theme="light"] .hero-console .eyebrow {
    color:#176b67;
}

html[data-theme="light"] .hero-console .console-dots span {
    background:#9badaa;
}

html[data-theme="light"] .hero-console .console-dots span:first-child {
    background:#176b67;
}

/* Reduce the oversized dashboard footprint. */
html[data-theme="light"] .hero-console .console-grid {
    min-height:270px;
    grid-template-columns:.72fr 1.28fr;
}

/* Tree becomes a readable navigation rail rather than a dark console. */
html[data-theme="light"] .hero-console .console-tree {
    padding:14px;
    border-right-color:#b7c7c2;
    background:#edf1ef;
}

html[data-theme="light"] .hero-console .console-tree div {
    color:#536267;
    padding:7px 10px;
}

html[data-theme="light"] .hero-console .console-tree div.active {
    background:#d3e6e1;
    color:#0f615d;
    box-shadow:inset 3px 0 0 #176b67;
    font-weight:700;
}

/* Graph area remains architectural but becomes part of the Light surface. */
html[data-theme="light"] .hero-console .console-center {
    background:
      radial-gradient(circle at 52% 48%,rgba(23,107,103,.10),transparent 52%),
      #e6ece9;
}

html[data-theme="light"] .hero-console .console-center::before {
    background:radial-gradient(circle,rgba(23,107,103,.08),transparent 60%);
}

html[data-theme="light"] .hero-console .constellation {
    min-height:230px;
}

html[data-theme="light"] .hero-console .constellation .node {
    background:#f7f8f6;
    color:#536267;
    border-color:#b9c8c3;
    box-shadow:0 4px 12px rgba(21,33,43,.06);
}

html[data-theme="light"] .hero-console .constellation .node.main {
    background:#dcebe7;
    color:#0f615d;
    border-color:#6fa39b;
}

html[data-theme="light"] .hero-console .constellation .line {
    background:linear-gradient(
        90deg,
        transparent,
        rgba(23,107,103,.48),
        transparent
    );
}

/* Keep compact responsive behavior intact. */
@media(max-width:720px) {
    html[data-theme="light"] .hero-console {
        width:100%;
    }

    html[data-theme="light"] .hero-console .console-center {
        min-height:260px;
    }
}


/* ==========================================================================
   BUILD 13 — HISTORICAL NAVIGATOR ASSISTANT NOTICE
   Genesis-owned transient notice over the cross-origin historical Navigator.
   ========================================================================== */

.navigator-placeholder-note {
    position:absolute;
    right:18px;
    bottom:18px;
    z-index:9;
    width:min(360px,calc(100% - 36px));
    padding:12px 14px;
    border:1px solid rgba(100,210,194,.48);
    border-radius:12px;
    background:rgba(7,20,24,.94);
    color:#edf4f3;
    box-shadow:0 10px 28px rgba(0,0,0,.28);
    opacity:0;
    transform:translateY(8px);
    transition:opacity .45s ease,transform .45s ease;
    pointer-events:none;
}

.navigator-placeholder-note strong {
    display:block;
    color:#8fe0d3;
    font-size:.78rem;
    text-transform:uppercase;
    letter-spacing:.055em;
    margin-bottom:4px;
}

.navigator-placeholder-note span {
    display:block;
    font-size:.76rem;
    line-height:1.45;
}

.navigator-placeholder-note.is-visible {
    opacity:1;
    transform:translateY(0);
}

.navigator-placeholder-note.is-fading {
    opacity:0;
}

@media(max-width:760px) {
    .navigator-placeholder-note {
        right:10px;
        bottom:10px;
        width:calc(100% - 20px);
    }
}
/* ==========================================================================
   BUILD 14 — EXTERNAL SURFACE RESILIENCE
   Long-delay state is intentionally "unverified", not "offline".
   Cross-origin wrappers cannot establish remote HTTP/runtime status.
   ========================================================================== */

.surface-loading {
    z-index:3;
    width:min(620px,calc(100% - 36px));
    padding:14px 16px;
    border:1px solid #38545c;
    border-radius:12px;
    background:rgba(7,16,20,.94);
    box-shadow:0 12px 38px rgba(0,0,0,.34);
}

.surface-loading.is-loaded {
    opacity:0;
    visibility:hidden;
}

.surface-loading.is-slow,
.surface-loading.is-delayed {
    opacity:1;
    visibility:visible;
}

.surface-loading.is-delayed {
    border-color:#856d44;
}

.surface-loading.is-delayed strong {
    color:#e0bf7a;
}

.external-frame-shell.is-delayed .external-load-banner {
    border-color:#856d44;
}

.external-frame-shell.is-delayed .external-load-banner .load-spinner {
    animation:none;
    border-top-color:#e0bf7a;
}

.external-frame-shell.is-delayed .external-load-banner strong {
    color:#e0bf7a;
}

/* ==========================================================================
   BUILD 14.1 TRANCHE 3 — MOBILE NAVIGATION RESILIENCE
   Public-review hardening only. No information architecture change.
   ========================================================================== */

@media (max-width:1120px) {
  .primary-nav.open {
    z-index:1000;
    max-height:calc(100vh - 92px);
    overflow-y:auto;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
  }

  .primary-nav.open .nav-home,
  .primary-nav.open .nav-group > summary,
  .primary-nav.open .nav-menu a {
    min-height:44px;
    display:flex;
    align-items:center;
  }

  .primary-nav.open .nav-menu a {
    padding-top:10px;
    padding-bottom:10px;
  }
}
