/* /roadmap (network-precision-roadmap.js): paper and ink; Liquid Gold only for the block numbers and what is being built now. */
:root:root:root:root:root:root:root:root:root:root:root:root:root .px-roadmap { padding-bottom: 40px; }
:root:root:root:root:root:root:root:root:root:root:root:root:root .px-roadmap .px-head { padding-bottom: 10px; }
:root:root:root:root:root:root:root:root:root:root:root:root:root .px-rm-tagline { margin: 0 0 10px; font-family: var(--px-sans); font-size: 12px; font-weight: 640; line-height: 1.3; letter-spacing: .12em; text-transform: uppercase; color: var(--px-gold-ink); }
:root:root:root:root:root:root:root:root:root:root:root:root:root .px-roadmap .px-lead a { color: var(--bs-ink); text-decoration: underline; text-decoration-color: var(--px-gold-edge); text-underline-offset: 3px; }
:root:root:root:root:root:root:root:root:root:root:root:root:root .px-rm-nav { display: grid; grid-template-columns: minmax(0, 1fr); gap: 0; margin: 14px 0 0; border-top: 1px solid var(--bs-hair); font-family: var(--px-sans); font-size: 14px; font-weight: 560; }
:root:root:root:root:root:root:root:root:root:root:root:root:root .px-rm-nav a { display: flex; align-items: center; gap: 10px; min-height: 44px; border-bottom: 1px solid var(--bs-hair); color: var(--bs-ink); text-decoration: none; }
:root:root:root:root:root:root:root:root:root:root:root:root:root .px-rm-nav a span { color: var(--px-gold-ink); font-variant-numeric: tabular-nums lining-nums; }
:root:root:root:root:root:root:root:root:root:root:root:root:root .px-rm-nav a:hover { text-decoration: underline; text-underline-offset: 3px; }
:root:root:root:root:root:root:root:root:root:root:root:root:root .px-rm-key { display: flex; flex-wrap: wrap; gap: 6px 18px; margin: 14px 0 0; padding: 0; list-style: none; }
:root:root:root:root:root:root:root:root:root:root:root:root:root .px-rm-chip { display: inline-flex; align-items: center; gap: 7px; font-family: var(--px-sans); font-size: 11px; font-weight: 640; line-height: 1.2; letter-spacing: .1em; text-transform: uppercase; }
:root:root:root:root:root:root:root:root:root:root:root:root:root .px-rm-chip::before { content: ""; flex: none; width: 8px; height: 8px; border-radius: 50%; box-sizing: border-box; }
:root:root:root:root:root:root:root:root:root:root:root:root:root .px-rm-chip.is-live { color: var(--bs-green); }
:root:root:root:root:root:root:root:root:root:root:root:root:root .px-rm-chip.is-live::before { background: var(--bs-green); box-shadow: 0 0 0 3px rgb(45 106 67 / 14%); }
:root:root:root:root:root:root:root:root:root:root:root:root:root .px-rm-chip.is-building { color: var(--px-gold-ink); }
:root:root:root:root:root:root:root:root:root:root:root:root:root .px-rm-chip.is-building::before { background: var(--px-gold); box-shadow: 0 0 0 3px var(--px-gold-wash-2); }
:root:root:root:root:root:root:root:root:root:root:root:root:root .px-rm-chip.is-next { color: var(--bs-muted); }
:root:root:root:root:root:root:root:root:root:root:root:root:root .px-rm-chip.is-next::before { border: 1.5px solid var(--bs-meta); background: transparent; }
:root:root:root:root:root:root:root:root:root:root:root:root:root .px-rm-tag { padding: 2px 8px; border: 1px solid var(--bs-hair-2); border-radius: 999px; font-family: var(--px-sans); font-size: 11.5px; font-weight: 560; line-height: 1.3; color: var(--bs-ink-2); }
:root:root:root:root:root:root:root:root:root:root:root:root:root .px-rm-block { margin-top: 40px; scroll-margin-top: 72px; }
:root:root:root:root:root:root:root:root:root:root:root:root:root .px-rm-block-head { display: flex; align-items: baseline; gap: 12px; padding-bottom: 10px; border-bottom: 1px solid var(--bs-rule); }
:root:root:root:root:root:root:root:root:root:root:root:root:root .px-rm-bn { flex: none; font-family: var(--px-sans); font-size: 15px; font-weight: 600; letter-spacing: .02em; color: var(--px-gold-ink); font-variant-numeric: tabular-nums lining-nums; }
:root:root:root:root:root:root:root:root:root:root:root:root:root .px-rm-block-head h2 { margin: 0; font-family: var(--bs-serif); font-size: 26px; font-weight: 440; line-height: 1.15; letter-spacing: -.012em; color: var(--bs-ink); text-wrap: balance; }
/* One item per row: what it is and its status, the two lines (you, your agent), and when it is done. Stacked on a phone. */
:root:root:root:root:root:root:root:root:root:root:root:root:root .px-rm-items { margin: 0; padding: 0; list-style: none; }
:root:root:root:root:root:root:root:root:root:root:root:root:root .px-rm-item { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; padding: 20px 0 22px; border-top: 1px solid var(--bs-hair); }
:root:root:root:root:root:root:root:root:root:root:root:root:root .px-rm-item:first-child { border-top: 0; }
:root:root:root:root:root:root:root:root:root:root:root:root:root .px-rm-what { min-width: 0; }
:root:root:root:root:root:root:root:root:root:root:root:root:root .px-rm-top { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; min-height: 20px; }
:root:root:root:root:root:root:root:root:root:root:root:root:root .px-roadmap h3 { margin: 8px 0 0; font-family: var(--bs-serif); font-size: 21px; font-weight: 450; line-height: 1.22; letter-spacing: -.01em; color: var(--bs-ink); text-wrap: balance; }
:root:root:root:root:root:root:root:root:root:root:root:root:root .px-rm-item.is-next h3 { color: var(--bs-ink-2); }
:root:root:root:root:root:root:root:root:root:root:root:root:root .px-rm-go { margin: 8px 0 0; font-family: var(--px-sans); font-size: 14px; font-weight: 560; }
:root:root:root:root:root:root:root:root:root:root:root:root:root .px-rm-go a { display: inline-flex; align-items: center; min-height: 32px; color: var(--bs-ink); text-decoration: underline; text-decoration-color: var(--bs-hair-2); text-underline-offset: 3px; }
:root:root:root:root:root:root:root:root:root:root:root:root:root .px-rm-go a:hover { text-decoration-color: var(--bs-ink); }
:root:root:root:root:root:root:root:root:root:root:root:root:root .px-rm-lines { display: grid; gap: 10px; margin: 0; min-width: 0; }
:root:root:root:root:root:root:root:root:root:root:root:root:root .px-rm-lines div { min-width: 0; }
:root:root:root:root:root:root:root:root:root:root:root:root:root .px-rm-lines dt { font-family: var(--px-sans); font-size: 11px; font-weight: 640; line-height: 1.3; letter-spacing: .1em; text-transform: uppercase; color: var(--bs-muted); }
:root:root:root:root:root:root:root:root:root:root:root:root:root .px-rm-lines dd { margin: 3px 0 0; max-width: 60ch; font-family: var(--bs-serif); font-size: 16.5px; line-height: 1.45; color: var(--bs-ink); text-wrap: pretty; }
:root:root:root:root:root:root:root:root:root:root:root:root:root .px-rm-lines div + div dd { color: var(--bs-ink-2); }
:root:root:root:root:root:root:root:root:root:root:root:root:root .px-rm-done { margin: 0; padding: 10px 12px; border-radius: 4px; background: var(--bs-paper-2); font-family: var(--px-sans); font-size: 14px; line-height: 1.45; color: var(--bs-ink); text-wrap: pretty; }
:root:root:root:root:root:root:root:root:root:root:root:root:root .px-rm-item.is-building .px-rm-done { background: var(--px-gold-wash); box-shadow: inset 2px 0 0 var(--px-gold); }
:root:root:root:root:root:root:root:root:root:root:root:root:root .px-rm-done b { display: block; margin-bottom: 2px; font-size: 11px; font-weight: 640; letter-spacing: .1em; text-transform: uppercase; color: var(--bs-muted); }
:root:root:root:root:root:root:root:root:root:root:root:root:root .px-rm-item.is-building .px-rm-done b { color: var(--px-gold-ink); }
:root:root:root:root:root:root:root:root:root:root:root:root:root .px-rm-foot { margin-top: 36px; padding-top: 20px; border-top: 1px solid var(--bs-rule); }
@media (min-width: 640px) {
  :root:root:root:root:root:root:root:root:root:root:root:root:root .px-rm-nav { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 24px; }
  :root:root:root:root:root:root:root:root:root:root:root:root:root .px-rm-block-head h2 { font-size: 28px; }
  :root:root:root:root:root:root:root:root:root:root:root:root:root .px-rm-lines { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
}
@media (min-width: 960px) {
  :root:root:root:root:root:root:root:root:root:root:root:root:root .px-rm-item { grid-template-columns: minmax(0, 13rem) minmax(0, 1fr) minmax(0, 19rem); gap: 0 28px; align-items: start; }
  :root:root:root:root:root:root:root:root:root:root:root:root:root .px-rm-lines { grid-template-columns: minmax(0, 1fr); gap: 10px; }
}
@media (min-width: 1200px) {
  :root:root:root:root:root:root:root:root:root:root:root:root:root .px-rm-nav { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  :root:root:root:root:root:root:root:root:root:root:root:root:root .px-rm-item { grid-template-columns: minmax(0, 15rem) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 19rem); }
  :root:root:root:root:root:root:root:root:root:root:root:root:root .px-rm-lines { grid-column: 2 / span 2; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; }
}
@media (forced-colors: active) { :root:root:root:root:root:root:root:root:root:root:root:root:root .px-rm-chip::before { border: 1px solid CanvasText; } }
