/* Host-guide docs layout. Brand tokens only — no new colors, no motion. */
.docs-header {
  display: flex; align-items: center; gap: 14px;
  padding: 18px 24px; border-bottom: 1px solid var(--border-subtle);
}
.docs-header .wordmark { font-size: 20px; letter-spacing: -0.005em; }
.docs-header__label {
  font-family: var(--font-mono); font-size: var(--fs-eyebrow);
  letter-spacing: 2px; text-transform: uppercase; color: var(--text-muted);
}
.docs-layout {
  display: grid; grid-template-columns: 220px minmax(0, 70ch); gap: 48px;
  max-width: var(--container-max); margin: 0 auto; padding: 40px 24px 80px;
}
@media (max-width: 860px) { .docs-layout { grid-template-columns: minmax(0, 1fr); } }
.docs-nav { position: sticky; top: 24px; align-self: start; }
@media (max-width: 860px) { .docs-nav { position: static; } }
.docs-nav h2 {
  font-family: var(--font-mono); font-size: var(--fs-eyebrow);
  letter-spacing: 2px; text-transform: uppercase; color: var(--text-muted);
  margin: 0 0 12px;
}
.docs-nav ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.docs-nav a { color: var(--text-muted); text-decoration: none; font-size: var(--fs-small); }
.docs-nav a:hover { color: var(--text-primary); }
.docs-nav a[aria-current="page"] { color: var(--accent-primary); }
.docs-main h1 { font-family: var(--font-display); font-size: var(--fs-h2); margin: 0 0 8px; }
.docs-main h2 { font-family: var(--font-display); font-size: var(--fs-h3); margin: 40px 0 12px; }
.docs-main p, .docs-main li { line-height: 1.65; }
.docs-main .lead { color: var(--text-muted); font-size: var(--fs-body-lg); margin: 0 0 28px; }
.steps { counter-reset: step; list-style: none; margin: 16px 0; padding: 0; display: grid; gap: 14px; }
.steps > li { position: relative; padding-left: 44px; }
.steps > li::before {
  counter-increment: step; content: counter(step);
  position: absolute; left: 0; top: 0; width: 28px; height: 28px;
  display: grid; place-items: center; border-radius: 50%;
  border: 1px solid var(--border-subtle); color: var(--accent-primary);
  font-family: var(--font-mono); font-size: var(--fs-meta);
}
.steps b { color: var(--text-primary); }
.callout {
  border: 1px solid var(--border-subtle); border-left: 3px solid var(--accent-primary);
  border-radius: 6px; padding: 14px 16px; margin: 20px 0; font-size: var(--fs-small);
}
.callout--warn { border-left-color: var(--accent-secondary); }
.callout--warn strong { color: var(--accent-secondary); }
.state-table { width: 100%; border-collapse: collapse; margin: 16px 0; font-size: var(--fs-small); }
.state-table th, .state-table td {
  text-align: left; padding: 8px 10px; border-bottom: 1px solid var(--border-subtle);
}
.state-table th {
  font-family: var(--font-mono); font-size: var(--fs-eyebrow);
  letter-spacing: 2px; text-transform: uppercase; color: var(--text-muted);
}
.docs-prevnext {
  display: flex; justify-content: space-between; gap: 16px;
  margin-top: 56px; padding-top: 20px; border-top: 1px solid var(--border-subtle);
}
.docs-prevnext a { color: var(--accent-primary); text-decoration: none; }
