:root {
  color-scheme: dark;
  --earth: #17120f;
  --walnut: #241a16;
  --ledge: #30231d;
  --well: #181411;
  --ink: #f1e7d8;
  --quiet: #c4b4a2;
  --copper: #dfae82;
  --clay: #594339;
  --rim: #98765f;
  --oxblood: #863530;
  --burnished: #a74439;
  --focus: #ffce80;
  --serif: Georgia, "Times New Roman", serif;
  --sans: "Segoe UI", Arial, sans-serif;
  --mono: "IBM Plex Mono", Consolas, "Courier New", monospace;
}
* { box-sizing: border-box }
body { margin: 0; background: var(--earth); color: var(--ink); font: 17px/1.6 var(--sans) }
a { color: var(--copper); text-underline-offset: .2em; text-decoration-thickness: 1px }
a:hover { color: var(--ink); text-decoration-thickness: 2px }
button, select { font: inherit }
button, a, summary, select { touch-action: manipulation }
:focus-visible { outline: 3px solid var(--focus); outline-offset: 4px }
.wrap { max-width: 1232px; margin-inline: auto; padding-inline: clamp(20px,6vw,78px) }
.skip { position: fixed; z-index: 9; top: -100px; left: 8px; padding: 10px 14px; background: var(--ink); color: var(--earth) }
.skip:focus { top: 6px; color: var(--earth) }
header, footer, .dark { background: var(--earth); color: var(--ink) }
header { border-bottom: 1px solid var(--clay) }
.bar, .nav { display: flex; align-items: center }
.bar { justify-content: space-between; min-height: 72px; gap: 18px }
.brand { display: inline-flex; align-items: center; gap: 10px; color: var(--ink); text-decoration: none; font: 700 26px/1.2 var(--serif); letter-spacing: -.045em }
.brand img { width: 36px; height: 36px }
.nav { gap: clamp(12px,2.5vw,36px) }
.nav a { padding: 8px 0; color: var(--quiet); font-size: 15px; font-weight: 600; text-decoration: none }
.nav a[aria-current], .nav a:hover { color: var(--ink); text-decoration: underline; text-decoration-color: var(--copper); text-underline-offset: 8px }
h1, h2, h3, p, figure, pre { margin: 0 }
h1, h2 { font-family: var(--serif); font-weight: 500; line-height: 1.07; letter-spacing: -.045em }
h1 { font-size: clamp(54px,7vw,94px) }
h2 { font-size: clamp(34px,3.9vw,54px) }
h3 { font-size: 23px; font-weight: 650; line-height: 1.25; letter-spacing: -.035em }
.hero, .subhead { background: linear-gradient(110deg, var(--earth) 8%, var(--walnut) 68%, #33221a 100%) }
.herogrid { display: grid; grid-template-columns: minmax(0,1.04fr) minmax(0,.96fr); gap: clamp(20px,4vw,62px); align-items: center; padding-block: clamp(38px,4.8vw,72px) }
.version, .eyebrow, .label, figcaption, .status { font: 650 12px/1.5 var(--mono); letter-spacing: .055em }
.version { display: inline-flex; align-items: center; gap: 9px; padding: 5px 12px; background: var(--walnut); border: 1px solid var(--rim); border-radius: 4px; color: var(--copper) }
.version::before { content: ""; width: 6px; height: 6px; background: #e9b881; transform: rotate(45deg) }
.hero h1 { font-size: clamp(86px,9.5vw,142px); font-weight: 600; letter-spacing: -.074em; margin: 18px 0 8px; line-height: 1 }
.tag { text-wrap: balance; max-width: 19em; font: italic 500 clamp(23px,2.65vw,38px)/1.19 var(--serif); color: #ead5bf; letter-spacing: -.035em }
.lead { color: var(--quiet); max-width: 45ch; margin-top: 20px }
.actions, .docnav, .links { display: flex; flex-wrap: wrap; align-items: center; gap: 12px }
.actions { margin-top: 28px }
.btn { display: inline-flex; align-items: center; gap: 16px; padding: 10px 18px; background: var(--walnut); color: var(--ink); border: 1px solid var(--rim); border-radius: 5px; font-size: 15px; font-weight: 650; text-decoration: none }
.btn.primary { background: var(--oxblood); border-color: #c4776b; color: #fff3e5 }
.btn:hover { background: var(--ledge); border-color: var(--copper); color: var(--ink) }
.btn.primary:hover { background: var(--burnished); color: #fff3e5 }
.plate { position: relative; min-width: 0; padding: clamp(6px,1vw,12px); background: #1b1512; border: 1px solid var(--rim); border-radius: 9px; box-shadow: 0 13px 32px #0b07064d }
.plate img { display: block; width: 100%; height: auto; border-radius: 4px }
.strip { border-block: 1px solid var(--clay); background: var(--walnut); color: var(--quiet) }
.strip .wrap { display: flex; flex-wrap: wrap; gap: 12px 30px; padding-block: 14px; font: 13px/1.4 var(--mono) }
.strip span::before { content: "+"; margin-right: 9px; color: var(--copper) }
.section { padding-block: clamp(38px,5.5vw,72px); border-bottom: 1px solid var(--clay) }
.eyebrow { color: var(--copper); text-transform: uppercase; margin-bottom: 12px }
.split { display: grid; grid-template-columns: minmax(0,.82fr) minmax(0,1.18fr); gap: clamp(24px,6vw,82px) }
.section p, .subhead p { color: var(--quiet); margin-top: 14px; max-width: 66ch }
.section strong, .subhead strong { color: var(--ink) }
.inline, .docnav a { font-weight: 650 }
.tree, .terminal { min-width: 0; padding: 23px 26px; background: var(--well); color: var(--ink); border: 1px solid var(--clay); border-top: 2px solid var(--rim); border-radius: 6px }
.label { display: block; padding-bottom: 12px; margin-bottom: 14px; border-bottom: 1px solid var(--clay); color: var(--copper); text-transform: uppercase }
pre { font: 14px/1.7 var(--mono); white-space: pre-wrap; overflow-wrap: anywhere }
code { font: .91em var(--mono) }
pre code { font: inherit }
.cmd { color: #ecd2ae }
.featuregrid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; margin-top: 30px }
.featuregrid article { border-top: 1px solid var(--rim); padding-top: 20px }
.featuregrid p { font-size: 16px }
.quick { background: var(--walnut) }
.stack { display: grid; gap: 20px }
.stack h3 { margin-bottom: 10px }
.subhead { padding-block: clamp(40px,4.8vw,70px); border-bottom: 1px solid var(--clay) }
.subhead h1 { font-size: clamp(44px,6.3vw,82px); overflow-wrap: anywhere }
.docnav { gap: 12px 22px; margin-top: 22px }
.file { display: block; padding: 20px; border: 1px solid var(--rim); border-radius: 6px; background: var(--walnut); color: var(--ink); text-decoration: none; overflow-wrap: anywhere }
.file strong, .file small { display: block }
.file small { margin-top: 8px; color: var(--quiet); font: 12px/1.65 var(--mono) }
.file:hover { background: var(--ledge); border-color: var(--copper) }
.milestone { padding-block: 32px; border-bottom: 1px solid var(--clay) }
.milestone h2 { font-size: clamp(28px,3.6vw,40px) }
.milestone h2 span { margin-right: 15px; font: 600 18px var(--mono); color: var(--copper) }
.entry { padding-block: 13px; border-top: 1px solid var(--clay) }
.entry:first-of-type { margin-top: 22px }
.entry summary { cursor: pointer; font-weight: 600; padding: 3px 0; line-height: 1.65 }
.entry summary::marker { color: var(--copper) }
.entry[open] summary { color: var(--copper) }
.entry p { margin: 8px 0 3px; font-size: 15px; overflow-wrap: anywhere }
.status { display: inline-block; padding: 3px 9px; margin: 3px 8px 3px 0; border: 1px solid currentColor; border-radius: 4px; color: #dbd0c1; background: #312b26; font-size: 11px; letter-spacing: 0 }
.verified { color: #c5d2a5; background: #283024 }
.hardening { color: #f1be9c; background: #3c2520 }
.development { color: #ebcc93; background: #352b20 }
.research { color: #dfbcbd; background: #33252a }
.filters { display: flex; align-items: center; gap: 12px; flex-wrap: wrap }
.filters select { padding: 8px; border: 1px solid var(--rim); border-radius: 4px; color: var(--ink); background: var(--ledge) }
.legend { margin: 14px 0 }
.links { gap: 12px 22px; margin-top: 18px }
footer { background: #110e0c }
footer .bar { flex-wrap: wrap; padding-block: 26px }
footer a { font-size: 14px }
.muted { color: var(--quiet) }
[hidden] { display: none !important }
@media (max-width: 760px) {
  .herogrid, .split, .featuregrid { grid-template-columns: 1fr }
  .herogrid { gap: 28px }
  .plate { width: min(100%, 420px); margin-inline: auto }
  .bar { flex-wrap: wrap; gap: 5px 18px; padding-block: 10px }
  .nav { gap: 10px 18px; flex-wrap: wrap }
  .nav a { font-size: 14px }
  .tree, .terminal { padding: 17px }
  footer .bar { justify-content: flex-start; gap: 14px 22px }
}
@media (max-width: 470px) {
  header .bar { flex-direction: column; align-items: flex-start }
  .nav { width: 100%; justify-content: space-between; gap: 5px }
  .hero h1 { font-size: clamp(76px,20vw,90px) }
  .strip .wrap { gap: 8px 16px; font-size: 12px }
  .actions { gap: 10px }
  .btn { padding: 9px 13px }
}
@media (forced-colors: active) {
  .btn, .file, select, .status { border-color: ButtonText }
  :focus-visible { outline-color: Highlight }
}
