.ladder{display:flex;flex-direction:column;min-height:100vh}.ladder-container{width:100%;max-width:62rem;margin:0 auto;padding:0 var(--space-4)}.ladder-bar{background:var(--color-ink);color:var(--color-cream);padding:var(--space-3) 0}.ladder-bar-inner{display:flex;flex-wrap:wrap;gap:var(--space-4);align-items:baseline;justify-content:space-between}.ladder-wordmark{color:var(--color-cream);font-weight:700;text-decoration:none;letter-spacing:.02em}.ladder-bar-note{font-size:var(--text-sm);opacity:.75}.ladder-lede{max-width:44rem}.ladder-lede,.ladder-phase{margin:var(--space-6) 0}.ladder-phase-head{border-bottom:1px solid var(--color-rule,currentColor);padding-bottom:var(--space-2);margin-bottom:var(--space-3)}.ladder-rungs{list-style:none;margin:0;padding:0;display:grid;grid-gap:var(--space-2);gap:var(--space-2)}.ladder-rung{display:grid;grid-template-columns:3rem 1fr;grid-gap:var(--space-3);gap:var(--space-3);align-items:baseline;padding:var(--space-2) 0;border-bottom:1px solid color-mix(in srgb,currentColor 12%,transparent)}.ladder-num{font-family:var(--font-mono,monospace);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;opacity:.55}.ladder-rung-line{display:block;font-size:var(--text-sm);opacity:.8}.ladder-rung[data-status=outlined] .ladder-rung-title{opacity:.62}.ladder-tag{font-size:var(--text-xs,.75rem);text-transform:uppercase;letter-spacing:.06em;opacity:.6;margin-left:var(--space-2)}.ladder-gate{border:2px solid var(--color-ink);padding:var(--space-4);margin:var(--space-5) 0}.ladder-gate h2{margin-top:0}.ladder-prereqs{font-size:var(--text-sm);opacity:.8}.ladder-foot{margin-top:auto;padding:var(--space-5) 0;font-size:var(--text-sm);opacity:.75}.ladder-foot-meta{opacity:.7}.ladder-nextprev{display:flex;justify-content:space-between;gap:var(--space-4);margin:var(--space-6) 0 0;padding-top:var(--space-4);border-top:1px solid color-mix(in srgb,currentColor 15%,transparent)}@media print{.ladder-bar,.ladder-foot,.ladder-nextprev,.ladder-print-hide{display:none!important}.ladder-container{max-width:none;padding:0}.ladder-gate{border:2px solid #000;page-break-inside:avoid;break-inside:avoid}.ladder-reading a:after{content:" (" attr(href) ")";font-size:.85em;word-break:break-all}a{text-decoration:none;color:#000}}