/* pages/help.css — FAQ, guides, legal pages, error pages (P6).
   Tokens only, mobile-first; components come from components.css. */

/* FAQ */
.faq-layout__aside .toc {
  margin: 0;
}
@media (min-width: 900px) {
  .faq-layout__aside {
    position: sticky;
    top: calc(var(--header-h) + var(--sp-24));
  }
}
.faq-group {
  scroll-margin-top: calc(var(--header-h) + var(--sp-16));
}
.faq-group__title {
  margin-bottom: var(--sp-16);
  scroll-margin-top: calc(var(--header-h) + var(--sp-16));
}
.faq-group .accordion__item {
  scroll-margin-top: calc(var(--header-h) + var(--sp-16));
}

/* Guides */
.guides-hero__text {
  max-width: 48rem;
}
.guide-grid {
  display: grid;
  gap: var(--sp-16);
  margin: 0;
  padding: 0;
  list-style: none;
}
@media (min-width: 640px) {
  .guide-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (min-width: 1000px) {
  .guide-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
.guide-grid > li {
  display: flex;
}
.guide-card {
  position: relative;
  width: 100%;
}
.guide-card .card__body {
  display: flex;
  flex-direction: column;
  gap: var(--sp-12);
  height: 100%;
}
.guide-card__title {
  margin: 0;
}
.guide-card__go {
  margin-top: auto;
}
.guide-hero__title {
  max-width: 22ch;
}
.guide-summary {
  max-width: 44rem;
}
.guide-prose h2,
.guide-prose h3 {
  scroll-margin-top: calc(var(--header-h) + var(--sp-16));
}
.guide-disclaimer {
  max-width: 44rem;
  padding-top: var(--sp-16);
  border-top: 1px solid var(--divider);
  font-size: var(--fs-small);
}
.related-links {
  margin: 0;
  padding: 0;
  list-style: none;
}

/* Legal */
.legal-prose h2 {
  scroll-margin-top: calc(var(--header-h) + var(--sp-16));
}
.legal-entities {
  display: grid;
  gap: var(--sp-16);
  margin: 0;
  padding: 0;
  list-style: none;
}
@media (min-width: 820px) {
  .legal-entities {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
.legal-entity address {
  margin-top: var(--sp-8);
  font-style: normal;
  line-height: 1.6;
}
.legal-entity .meta {
  margin-top: var(--sp-4);
}

/* Error pages */
.status-page__links--tight {
  margin-top: var(--sp-16);
}
.code-search {
  max-width: 28rem;
}
.code-search__row {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sp-8);
  margin-top: var(--sp-8);
}
.code-search__row .input {
  flex: 1 1 12rem;
  min-width: 0;
}
.error-stack {
  max-width: 100%;
  overflow-x: auto;
  font-size: var(--fs-xs);
  white-space: pre-wrap;
}
