/* extracted from remix/index.html by ops/inline_style_extract.py — linked in the same document position to preserve cascade order */
:root {
    --bg: #06070a;
    --panel: #101218;
    --panel2: #151821;
    --line: #303642;
    --ink: #f1ece2;
    --muted: #a7b2bd;
    --faint: #6f7b87;
    --gold: #e7c384;
    --green: #45a862;
    --blue: #3e84d6;
    --violet: #8c5ad2;
    --red: #d15b5b;
    --mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
    --sans: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
    --serif: Georgia, "Times New Roman", serif;
  }
  * { box-sizing: border-box; }
  html { background: var(--bg); color: var(--ink); font-family: var(--sans); }
  body { margin: 0; min-height: 100vh; background: linear-gradient(180deg, var(--bg) 0, var(--bg) 480px); color: var(--ink); }
  a { color: inherit; text-decoration: none; }
  a:hover { color: var(--gold); }
  .shell { width: min(1180px, calc(100% - 32px)); margin: 0 auto; padding: 0 0 var(--space-64); }
  .topbar { min-height: 64px; display: flex; align-items: center; gap: var(--space-12); border-bottom: 1px solid var(--line); font-family: var(--mono); color: var(--muted); font-size: var(--text-13); }
  .brand { display: inline-flex; align-items: center; gap: var(--space-8); color: var(--gold); font-weight: 700; }
  .brand::before { content: ""; width: 9px; height: 9px; border-radius: var(--radius-2); background: var(--gold); transform: rotate(45deg); }
  .nav { margin-left: auto; display: flex; align-items: center; gap: var(--space-12); flex-wrap: wrap; }
  .nav a, .chip { border: 1px solid var(--line); border-radius: var(--radius-pill); padding: var(--space-4) var(--space-8); color: var(--muted); background: rgba(255,255,255,0.02); font-family: var(--mono); font-size: var(--text-12); }
  .chip.good { color: var(--green); border-color: color-mix(in srgb, var(--act) 38%, transparent); }
  .intro { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(320px, 0.95fr); gap: var(--space-24); padding: var(--space-40) 0 var(--space-24); align-items: stretch; }
  h1 { margin: 0 0 var(--space-12); font-family: var(--serif); font-weight: 700; color: var(--gold); font-size: var(--text-40); line-height: 1.05; }
  h2 { margin: 0 0 var(--space-12); font-size: var(--text-16); color: var(--ink); }
  p { margin: 0; color: var(--muted); line-height: 1.62; }
  .lead { font-size: var(--text-16); max-width: 74ch; }
  .rule { margin-top: var(--space-12); border-left: 3px solid var(--gold); padding-left: var(--space-12); color: var(--ink); font-weight: 700; }
  .map { border: 1px solid var(--line); border-radius: var(--radius-8); background: var(--panel); padding: var(--space-16); display: grid; gap: var(--space-12); min-width: 0; }
  .map h2 { color: var(--gold); }
  .maprail { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: var(--space-8); }
  .node { border: 1px solid var(--line); border-radius: var(--radius-8); min-height: 74px; padding: var(--space-8); background: rgba(255,255,255,0.018); display: grid; align-content: center; gap: var(--space-4); }
  .node strong { font-size: var(--text-13); color: var(--ink); overflow-wrap: anywhere; }
  .node span { color: var(--faint); font-family: var(--mono); font-size: var(--text-11); overflow-wrap: anywhere; }
  .node:nth-child(1) { border-top: 3px solid var(--blue); }
  .node:nth-child(2) { border-top: 3px solid var(--gold); }
  .node:nth-child(3) { border-top: 3px solid var(--violet); }
  .node:nth-child(4) { border-top: 3px solid var(--green); }
  .node:nth-child(5) { border-top: 3px solid var(--red); }
  .statgrid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--space-8); margin: var(--space-8) 0 var(--space-24); }
  .stat { border: 1px solid var(--line); border-radius: var(--radius-8); background: var(--panel); padding: var(--space-12); min-width: 0; }
  .stat span { display: block; color: var(--faint); font-family: var(--mono); font-size: var(--text-12); margin-bottom: var(--space-4); }
  .stat strong { display: block; color: var(--ink); font-size: var(--text-16); overflow-wrap: anywhere; }
  .stat.gold { border-top: 3px solid var(--gold); }
  .stat.green { border-top: 3px solid var(--green); }
  .stat.blue { border-top: 3px solid var(--blue); }
  .stat.violet { border-top: 3px solid var(--violet); }
  .section { margin-top: var(--space-24); border-top: 1px solid var(--line); padding-top: var(--space-24); }
  .sectionhead { display: flex; align-items: flex-end; justify-content: space-between; gap: var(--space-16); margin-bottom: var(--space-12); }
  .sectionhead .eyebrow { color: var(--gold); font-family: var(--mono); font-size: var(--text-12); }
  .sectionhead p { max-width: 68ch; }
  .modes, .records { display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: var(--space-12); }
  .mode, .record, .gate { border: 1px solid var(--line); border-radius: var(--radius-8); background: var(--panel); padding: var(--space-16); display: grid; gap: var(--space-8); min-width: 0; }
  .mode h3, .record h3, .gate h3 { margin: 0; font-size: var(--text-16); color: var(--ink); overflow-wrap: anywhere; }
  .mode .out { color: var(--gold); font-family: var(--mono); font-size: var(--text-12); }
  .pipeline { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: var(--space-8); counter-reset: remix; }
  .gate { position: relative; padding-top: var(--space-40); }
  .gate::before { counter-increment: remix; content: counter(remix); position: absolute; top: 12px; left: 14px; width: 22px; height: 22px; border-radius: 50%; background: var(--gold); color: var(--bg); font-family: var(--mono); font-weight: 800; font-size: var(--text-12); display: grid; place-items: center; }
  .gate .receipt { color: var(--blue); font-family: var(--mono); font-size: var(--text-12); overflow-wrap: anywhere; }
  .toolbar { display: flex; gap: var(--space-8); flex-wrap: wrap; margin: var(--space-8) 0 var(--space-16); }
  .toolbar input, .toolbar select { min-height: 42px; border: 1px solid var(--line); border-radius: var(--radius-8); background: var(--bg); color: var(--ink); padding: 0 var(--space-12); font-family: var(--mono); font-size: var(--text-14); }
  .toolbar input { flex: 1 1 320px; min-width: 0; }
  .toolbar select { flex: 0 1 220px; }
  .tagrow { display: flex; flex-wrap: wrap; gap: var(--space-8); }
  .tag { display: inline-flex; align-items: center; border: 1px solid var(--line); border-radius: var(--radius-8); padding: var(--space-4) var(--space-8); color: var(--muted); font-family: var(--mono); font-size: var(--text-11); max-width: 100%; overflow-wrap: anywhere; word-break: break-word; }
  .tag.green { color: var(--green); border-color: color-mix(in srgb, var(--act) 45%, transparent); }
  .tag.blue { color: var(--blue); border-color: color-mix(in srgb, var(--move) 45%, transparent); }
  .tag.gold { color: var(--gold); border-color: color-mix(in srgb, var(--sand) 46%, transparent); }
  .record .diff { border-left: 2px solid var(--green); padding-left: var(--space-8); color: var(--muted); font-size: var(--text-13); line-height: 1.5; }
  .record-actions { display: flex; flex-wrap: wrap; gap: var(--space-8); }
  .record-link { color: var(--gold); font-family: var(--mono); font-size: var(--text-12); border: 1px solid color-mix(in srgb, var(--sand) 44%, transparent); border-radius: var(--radius-8); padding: var(--space-8) var(--space-8); justify-self: start; }
  .statusline { min-height: 20px; color: var(--faint); font-family: var(--mono); font-size: var(--text-12); }
  .sources { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-12); }
  .source { border: 1px solid var(--line); border-radius: var(--radius-8); background: var(--panel); padding: var(--space-16); }
  .source a { color: var(--gold); font-family: var(--mono); font-size: var(--text-13); }
  .footer { margin-top: var(--space-24); color: var(--faint); font-family: var(--mono); font-size: var(--text-12); line-height: 1.55; }
  @media (max-width: 820px) {
    .intro, .sources { grid-template-columns: 1fr; }
    .statgrid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .maprail { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .topbar { align-items: flex-start; flex-direction: column; padding: var(--space-12) 0; }
    .nav { margin-left: 0; }
    h1 { font-size: var(--text-28); }
  }
  @media (max-width: 480px) {
    .shell { width: min(100% - 20px, 1180px); }
    .statgrid, .maprail { grid-template-columns: 1fr; }
    .toolbar input, .toolbar select { flex-basis: 100%; }
  }
