/* ══════════════════════════════════════════════════════════════
   Array HQ — Layout & structure overrides on top of Material
   Colors are owned by colors.css; this file is layout-only.
   ══════════════════════════════════════════════════════════════ */


/* ── Header: hide the "site_name" / page-title text band ─────────
   Keep the logo and search visible; drop only the text heading.
   In Material 9.x the search input shares the .md-header__title
   container on desktop, so we hide the topic children, not the
   whole container, to preserve the search field. */
.md-header__title .md-header__ellipsis,
.md-header__title .md-header__topic {
  display: none;
}


/* ── Sidebar header: render "DOCS" regardless of site_name ───────
   site_name is "Array HQ Docs" so the <title> tag reads naturally
   in the browser tab. Sidebar should still say "DOCS" — so we
   suppress the inherited text and inject our own label.
   Children (logo on mobile) keep their own font-size. */
.md-nav--primary > .md-nav__title {
  font-size: 0;
  line-height: 0;
}
.md-nav--primary > .md-nav__title::before {
  content: "DOCS";
  display: block;
  font-size: 0.75rem;
  line-height: 1.4;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-weight: 700;
}
.md-nav--primary > .md-nav__title > * {
  font-size: 1rem;
  line-height: normal;
}


/* ── Top-level nav items: render as uppercase section headers ────
   With navigation.indexes (replacing navigation.sections), the
   top-level entries are clickable links rather than category
   labels — but we still want them to read as section headers.
   Scope strictly to the direct children of the primary nav list
   so child pages keep normal casing. */
.md-nav--primary > .md-nav__list > .md-nav__item > .md-nav__link {
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-weight: 700;
  font-size: 0.75rem;
}


/* ── Search field: match the CardContainer surface ───────────────
   Bind to the same semantic tokens cards use so search and cards
   read as one family. */
[data-md-color-scheme="array-dark"] .md-search__form {
  background-color: var(--color-semantic-card-container-bg);
}
[data-md-color-scheme="array-dark"] .md-search__form:hover,
[data-md-color-scheme="array-dark"] [data-md-toggle="search"]:checked ~ .md-header .md-search__form {
  background-color: var(--color-semantic-card-container-bg-hover);
}
[data-md-color-scheme="array-dark"] .md-search__input {
  color: var(--color-semantic-fg-primary);
}
[data-md-color-scheme="array-dark"] .md-search__input::placeholder {
  color: var(--color-semantic-fg-muted);
}
[data-md-color-scheme="array-dark"] .md-search__icon {
  color: var(--color-semantic-fg-muted);
}
