/* Reading and discovery layouts for the shared dark public theme. */
.docs-site .eyebrow { color: var(--accent); }
.docs-site .breadcrumbs {
  flex-wrap: wrap;
  align-items: baseline;
  gap: 6px 10px;
  margin: 28px 0 0;
  font-size: .76rem;
  overflow-wrap: anywhere;
}
.docs-site .breadcrumbs > span:last-child { flex: 1 1 220px; }
.docs-site .doc-page { padding: 0; border: 0; background: none; }
.doc-header { padding: 44px 0 32px; border-bottom: 1px solid var(--border); }
.docs-site .doc-header h1 {
  max-width: 1000px;
  margin: 16px 0 24px;
  font-size: clamp(2.2rem, 4vw, 3.3rem);
  letter-spacing: -.045em;
  line-height: 1.13;
  text-wrap: balance;
}
.doc-header .hero-subtitle { max-width: 76ch; font-size: 1.04rem; }
.docs-site .doc-meta { color: var(--muted); font-size: .73rem; }
.doc-header .doc-meta { margin: 20px 0 14px; }
.doc-header .doc-intent-label { font-size: .76rem; }
.doc-intro { max-width: 78ch; color: #d4dfdd; font-size: 1rem; line-height: 1.85; }
.doc-intro > :last-child { margin-bottom: 0; }
.doc-reading-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 270px;
  align-items: start;
  gap: 44px;
  padding-top: 36px;
}
.doc-sections { grid-column: 1; grid-row: 1; min-width: 0; }
.doc-sidebar {
  position: sticky;
  top: 110px;
  grid-column: 2;
  grid-row: 1;
  max-height: calc(100dvh - 134px);
  overflow-y: auto;
  scrollbar-width: thin;
  scrollbar-color: #425356 transparent;
}
.docs-site .doc-summary-grid { grid-template-columns: minmax(0, 1fr); gap: 16px; margin: 0; }
.docs-site .doc-summary-card { padding: 20px; border-radius: 9px; background: var(--card); }
.docs-site .doc-summary-card h2 { margin: 0 0 16px; font-size: .85rem; letter-spacing: 0; }
.docs-site .doc-summary-card li { color: var(--muted); font-size: .8rem; line-height: 1.75; }
.docs-site .doc-summary-card li + li { margin-top: 10px; }
.docs-site .doc-toc { gap: 12px; }
.docs-site .doc-toc a { font-size: .79rem; line-height: 1.6; text-decoration: none; }
.docs-site .doc-toc a:hover { text-decoration: underline; }
.docs-site .doc-section { margin: 0 0 30px; padding: 0 0 30px; border-bottom: 1px solid var(--border); scroll-margin-top: 110px; }
.docs-site .doc-section + .doc-section { margin-top: 0; }
.docs-site .doc-section:last-child { margin-bottom: 0; border: 0; }
.docs-site .doc-section > h2 { margin: 0 0 20px; font-size: 1.65rem; letter-spacing: -.03em; }
.docs-site .doc-section-body { color: #c4d2d0; font-size: .97rem; line-height: 1.85; }
.docs-site .doc-section-body h3 { margin: 30px 0 14px; font-size: 1.18rem; }
.docs-site .doc-section-body h4 { margin: 24px 0 12px; font-size: 1rem; }
.docs-site .doc-section-body p { margin-bottom: 18px; }
.docs-site .doc-section-body li + li { margin-top: 8px; }
.docs-site .doc-section-body ul, .docs-site .doc-section-body ol { margin: 16px 0 22px 24px; }
.docs-site .doc-section-body strong { color: var(--text); font-weight: 650; }
.docs-site .doc-section-body code, .docs-site .doc-intro code {
  padding: 2px 5px;
  border: 1px solid #80e1cb25;
  border-radius: 4px;
  background: #80e1cb08;
  color: #a6eedc;
  font-family: Consolas, "Courier New", monospace;
  font-size: .87em;
  overflow-wrap: anywhere;
}
.docs-site .doc-section-body pre {
  max-width: 100%;
  overflow-x: auto;
  margin: 20px 0;
  padding: 20px;
  border: 1px solid #3d5153;
  border-left: 3px solid var(--accent);
  border-radius: 8px;
  background: #0d1517;
  color: #c4eadf;
  line-height: 1.7;
}
.docs-site .doc-section-body pre code { padding: 0; border: 0; border-radius: 0; background: none; color: inherit; font-size: .83rem; white-space: pre; }
.docs-site .doc-section-body table { display: block; max-width: 100%; margin: 22px 0; overflow-x: auto; border: 1px solid var(--border); border-radius: 8px; }
.docs-site .doc-section-body th { background: #223135; color: #e2ebe8; font-size: .78rem; font-weight: 600; }
.docs-site .doc-section-body th, .docs-site .doc-section-body td { min-width: 145px; padding: 14px 16px; line-height: 1.7; vertical-align: top; }
.docs-site .doc-section-body td { background: #192124; color: #c4d2d0; font-size: .82rem; }
.docs-site .doc-review-note { max-width: 80ch; margin-top: 24px; padding: 16px 20px; background: #80e1cb08; color: #c4d2d0; font-size: .85rem; }
.docs-site .doc-product-cta { border-color: #80e1cb50; background: linear-gradient(110deg, #80e1cb0c, #192124); }
.doc-product-cta h2 { margin-top: 10px; }
.doc-product-cta > p { max-width: 86ch; }
.doc-product-cta .hero-actions { margin-top: 22px; }
.docs-site .doc-cta-setup { margin: 20px 0 0; color: var(--muted); font-size: .78rem; line-height: 1.8; }
.docs-site .doc-cta-requirements { margin: 8px 0 0; color: var(--muted); font-size: .74rem; line-height: 1.8; }
.docs-site .docs-index-cta { flex-wrap: wrap; }
.docs-index-cta .doc-cta-setup { flex: 1 1 100%; margin: 0; padding-top: 18px; border-top: 1px solid var(--border); }
.docs-site .doc-card { display: flex; flex-direction: column; margin-bottom: 0; }
.docs-site .doc-card .doc-meta { margin-top: auto; padding-top: 12px; }
.docs-site .docs-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 24px; gap: 18px; }
.docs-site .docs-index-cta { margin-block: 36px; }
.docs-site .docs-index-cta .hero-actions { flex-wrap: wrap; justify-content: flex-end; }
.docs-site .topic-chip { border-radius: 6px; background: #1c282b; color: #d3e0dd; font-size: .8rem; font-weight: 500; }
.docs-site .topic-chip:hover { border-color: var(--accent); color: var(--accent); }
.docs-jump-links { display: flex; flex-wrap: wrap; gap: 12px 24px; margin-top: 28px; }
.docs-jump-links a { font-size: .82rem; font-weight: 600; text-decoration: none; }
.docs-jump-links a:hover { text-decoration: underline; }
.docs-site .docs-topic-list { gap: 0; }
.docs-site .doc-topic-item { padding: 22px 0; }
.docs-site .doc-topic-item:first-child { padding-top: 8px; }
.docs-site .doc-topic-item:last-child { padding-bottom: 0; }
.docs-site .doc-topic-item h3 { margin-bottom: 10px; font-size: 1.05rem; }
.docs-site .doc-topic-item h3 a { color: var(--text); text-decoration: none; }
.docs-site .doc-topic-item h3 a:hover { color: var(--accent); text-decoration: underline; }
.docs-site .doc-topic-item > p { max-width: 90ch; color: var(--muted); font-size: .9rem; }
.docs-site [id] { scroll-margin-top: 110px; }

@media (max-width: 1000px) {
  .doc-reading-layout { grid-template-columns: minmax(0, 1fr) 230px; gap: 28px; }
  .docs-site .docs-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .docs-site .docs-index-cta { align-items: flex-start; flex-direction: column; }
  .docs-site .docs-index-cta .hero-actions { justify-content: flex-start; }
}

@media (max-width: 800px) {
  .doc-reading-layout { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .doc-sidebar { position: static; grid-column: 1; grid-row: auto; max-height: none; overflow: visible; }
  .doc-sections { grid-column: 1; grid-row: auto; }
  .docs-site .doc-summary-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 600px) {
  .docs-site .breadcrumbs { margin-top: 20px; font-size: .7rem; }
  .docs-site .card.doc-page { padding: 0; }
  .doc-header { padding: 28px 0; }
  .docs-site .doc-header h1 { font-size: 2.1rem; text-wrap: initial; }
  .doc-header .hero-subtitle { font-size: .95rem; }
  .docs-site .doc-meta { font-size: .68rem; }
  .doc-intro { font-size: .94rem; }
  .docs-site .doc-summary-grid, .docs-site .docs-grid { grid-template-columns: minmax(0, 1fr); }
  .docs-site .doc-section > h2 { font-size: 1.45rem; }
  .docs-site .doc-section-body { font-size: .93rem; }
  .docs-site .doc-section-body pre { padding: 16px; }
  .docs-site .docs-index-cta .hero-actions { width: 100%; }
  .docs-site .public-hero h1 { font-size: 2.2rem; }
}
