/* Reference pages share the site frame; expressions may wrap within the available width. */
.reference-page .main { max-width: 64rem; }
.reference-page .reference-breadcrumbs { font-size: 0.95rem; margin-bottom: 1.25rem; }
.reference-page .center code { overflow-wrap: anywhere; }
.reference-page .center pre { white-space: pre-wrap; overflow-wrap: anywhere; }
.reference-page summary { cursor: pointer; color: var(--link-color); }
.reference-page summary:focus-visible,
.reference-page input:focus-visible { outline: 2px solid var(--link-color); outline-offset: 3px; }
.reference-page .reference-aliases,
.reference-page .deprecated-match { color: #555; font-size: 0.85em; margin-top: 0.2rem; }
.reference-page .reference-aliases,
.reference-page .deprecated-match:not([hidden]) { display: block; }
.reference-page .center .reference-entries { list-style: none; padding: 0; }
.reference-page .center .reference-entries li { margin-bottom: 0.9rem; }
.reference-page .reference-filter { margin: 1.5rem 0; }
.reference-page .reference-filter label { display: block; margin-bottom: 0.3rem; }
.reference-page .reference-filter input {
  box-sizing: border-box; width: min(100%, 30rem); font: inherit; padding: 0.4rem 0.6rem;
  border: 1px solid #8998a5; border-radius: 0.2rem;
}
.reference-page .reference-filter p { font-size: 0.9em; margin-top: 0.3rem; }
/* The native title supplies the pointer tooltip; focus also exposes it to keyboard users. */
.reference-page .argument-reference { position: relative; }
.reference-page .argument-reference:focus-visible::after {
  content: attr(title); position: absolute; bottom: 100%; left: 0; z-index: 2;
  width: max-content; max-width: 14rem; padding: 0.3rem 0.5rem;
  background: #202833; color: white; font: 0.85rem/1.4 system-ui, sans-serif;
  border-radius: 0.2rem;
}
@media print {
  .reference-page .reference-filter { display: none; }
  .reference-page .sidebar { display: none; }
  .reference-page .site-layout { display: block; }
}

/* Compact entry layout; catalogue indexes retain their existing typography and spacing. */
.reference-page .reference-entry { font-size: 1.0625rem; line-height: 1.45; }
.reference-page .reference-entry h1 { font-size: 1.625rem; line-height: 1.2; margin: 0 0 0.25rem; }
.reference-page .reference-entry h1 code { font-size: 1em; background: none; padding: 0; }
.reference-page .reference-entry h2 {
  font-family: Georgia, "DejaVu Serif", serif;
  font-size: 1.375rem; font-weight: 400; margin: 1.5rem 0 0.4rem;
}
.reference-page .reference-entry p { margin-bottom: 0.65rem; }
.reference-page .reference-entry .reference-breadcrumbs {
  font-size: 0.875rem; margin-bottom: 0.65rem;
}
.reference-page .reference-name { white-space: nowrap; }
.reference-page .reference-subtitle,
.reference-page .reference-separator { font-size: 1.0625rem; font-weight: 400; }
/* Section labels share the left edge; the content has one consistent outer indent. */
.reference-page .reference-section { margin-left: 1.25rem; }
.reference-page .reference-section > :first-child { margin-top: 0; }
.reference-page .reference-section > :last-child { margin-bottom: 0; }
.reference-page .reference-signature { margin: 0.5rem 0 0.35rem; }
/* Atomic units wrap between arguments; only a unit wider than the whole line wraps internally. */
.reference-page .reference-signature > code {
  display: block; background: none; padding: 0 0 0 1.5em; text-indent: -1.5em;
}
.reference-page .signature-unit {
  display: inline-block; width: max-content; max-width: 100%; vertical-align: top;
  text-indent: 0; overflow-wrap: anywhere;
}
.reference-page .signature-type { font-weight: 500; color: #9b2638; }
.reference-page .reference-metadata code,
.reference-page .reference-footer code,
.reference-page .arguments code { background: none; padding: 0; }
.reference-page .reference-metadata,
.reference-page .argument-note,
.reference-page .reference-footer { font-size: 0.9375rem; color: #475362; }
.reference-page .reference-metadata { margin-bottom: 0; }
.reference-page .reference-metadata p { margin: 0.15rem 0; }
/* Each label sizes its own row; descriptions wrap beneath themselves and defaults follow below. */
.reference-page .arguments { margin: 0.75rem 0; }
.reference-page .argument {
  display: grid; grid-template-columns: max-content minmax(0, 1fr);
  column-gap: 0.35em; margin-bottom: 0.75rem; align-items: baseline;
}
.reference-page .arguments dt { grid-column: 1; grid-row: 1; font-weight: 650; }
.reference-page .argument-colon { font-weight: 400; }
.reference-page .arguments dt > code { font-size: 1em; }
.reference-page .arguments dd { grid-column: 2; min-width: 0; margin: 0; }
.reference-page .argument-description { grid-row: 1; }
.reference-page .argument-default { grid-row: 2; padding-top: 0.2rem; }
.reference-page .arguments dd p { margin: 0 0 0.2rem; }
.reference-page .arguments dd > :last-child { margin-bottom: 0; }
.reference-page .arguments .default-label { font-weight: 550; }
/* Long explanations use a readable measure; signatures and defaults keep the full entry width. */
.reference-page .reference-description { max-width: 75ch; }
.reference-page .reference-entry .prose-indent { margin: 0.5rem 0 0.65rem 1.25rem; }
.reference-page .original-defaults { margin: 0.75rem 0 1rem; font-size: 0.9em; }
.reference-page .original-defaults dl { margin-bottom: 0; }
.reference-page .original-defaults dd { margin-left: 1rem; }
.reference-page .original-defaults pre { margin: 0.25rem 0 0.75rem; padding: 0.5rem 0.75rem; }
.reference-page .reference-footer { margin-top: 1.5rem; }
.reference-page .reference-entry .reference-footer p { margin: 0.25rem 0; }
@media (max-width: 48rem) {
  .reference-page .original-defaults dd { margin-left: 0.75rem; }
}
