.docs-page { display: block; height: auto; min-height: 100vh; overflow: auto; background: var(--surface); color: var(--ink); font: 16px/1.6 var(--sans); }
.docs-header { height: 64px; padding: 0 24px; display: flex; justify-content: space-between; align-items: center; gap: 20px; border-bottom: 1px solid var(--border); background: var(--surface); position: sticky; top: 0; z-index: 3; }
.docs-brand { font: 600 17px var(--mono); white-space: nowrap; color: var(--ink); }
.docs-brand span { font: 14px var(--sans); padding-left: 18px; color: var(--muted); }
.docs-tools { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; font-size: 14px; }
.docs-language { position: relative; }
.docs-language summary { display: flex; align-items: center; gap: 6px; padding: 7px 8px; border-radius: 4px; list-style: none; cursor: pointer; user-select: none; }
.docs-language summary::-webkit-details-marker { display: none; }
.docs-language summary:hover, .docs-language[open] summary { background: var(--sel); }
.docs-language summary:focus-visible, .docs-language a:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
.docs-language[open] summary svg { transform: rotate(180deg); }
.docs-language nav { position: absolute; top: calc(100% + 6px); right: 0; min-width: 150px; padding: 6px; background: var(--surface); border: 1px solid var(--border); border-radius: 4px; box-shadow: 0 6px 18px #0002; }
.docs-language nav a { display: block; padding: 7px 12px; border-radius: 3px; color: var(--ink); }
.docs-language nav a:hover { background: var(--sel); text-decoration: none; }
.docs-language [aria-current=page] { font-weight: 600; background: var(--sel); }
#docsNav [hidden] { display: none; }
.docs-overloads a { display: block; padding: 4px 0; overflow-wrap: anywhere; }
.docs-page .overload-entry { border-top: 1px solid var(--border); margin-top: 32px; padding-top: 24px; scroll-margin-top: 90px; }
.overload-entry h2, .docs-toc a { overflow-wrap: anywhere; }
.docs-page a { color: var(--accent); text-decoration: none; }
.docs-page a:hover { text-decoration: underline; }
.docs-page button, .docs-page select, .docs-page input { font: inherit; color: var(--ink); background: var(--surface); border: 1px solid var(--border); border-radius: 4px; padding: 6px 8px; }
.docs-page button, .docs-page select { cursor: pointer; }
.docs-return { border: 1px solid var(--border); border-radius: 4px; padding: 6px 12px; white-space: nowrap; }
.docs-layout { display: grid; grid-template-columns: 292px minmax(0, 1fr) 180px; }
.docs-sidebar { position: sticky; top: 64px; height: calc(100vh - 64px); overflow: hidden; display: flex; flex-direction: column; gap: 8px; padding: 18px 16px; box-sizing: border-box; background: var(--surface2); border-right: 1px solid var(--border); font-size: 14px; }
.docs-sidebar label { font-size: 14px; color: var(--muted); }
.docs-sidebar select, .docs-sidebar input { width: 100%; min-width: 0; }
#docsNav { margin-top: 10px; overflow: auto; flex: 1; }
#docsNav a { display: block; padding: 7px 10px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--ink); border-radius: 3px; }
#docsNav a[aria-current=page] { background: var(--sel); font-weight: 600; }
#docsNav a.docs-member { padding-left: 26px; }
#docsNav a:hover { background: var(--sel); text-decoration: none; }
#docsNav .docs-tree-summary { display: flex; align-items: center; min-width: 0; list-style: none; cursor: pointer; border-radius: 3px; }
#docsNav .docs-tree-summary::-webkit-details-marker { display: none; }
#docsNav .docs-tree-summary > svg { flex-shrink: 0; margin: 0 4px; color: var(--muted); }
#docsNav details[open] > .docs-tree-summary > svg { transform: rotate(90deg); }
#docsNav .docs-tree-summary > span { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; padding: 7px 4px; }
#docsNav .docs-tree-summary:hover { background: var(--sel); }
#docsNav .docs-tree-summary:focus-visible, #docsNav a:focus-visible { outline: 2px solid var(--accent); outline-offset: -2px; }
#docsNav .docs-type-children, #docsNav .docs-category-children { padding-left: 12px; }
#docsNav .docs-type-children > a.docs-type { padding-left: 26px; }
#docsNav div.docs-tree-type > a { padding-left: 26px; }
#docsNav .docs-tree-fallback { white-space: normal; }
.docs-main { min-width: 0; width: 100%; max-width: 1140px; margin: 0 auto; padding: 30px 42px 72px; box-sizing: border-box; }
.docs-breadcrumb { display: flex; gap: 8px; flex-wrap: wrap; color: var(--muted); font-size: 15px; margin-bottom: 24px; overflow-wrap: anywhere; }
.docs-page .symbol-doc { padding: 0; font: inherit; }
.docs-page .symbol-doc-kind { font-size: 15px; }
.docs-nav-guides { display: flex; flex-direction: column; padding: 0 0 10px; margin-bottom: 10px; border-bottom: 1px solid var(--border); }
.docs-nav-guides strong { color: var(--muted); font-size: 12px; text-transform: uppercase; letter-spacing: .04em; padding: 4px 0; }
.docs-nav-guides a { padding: 4px 0; }
/* A fact is a label and a value: the label carries the weight so the pair reads as a pair. */
.docs-page .symbol-doc .symbol-doc-facts dt { font-weight: 600; }
.docs-page .symbol-doc pre, .docs-page .symbol-doc code { font-size: 14px; }
.docs-page .symbol-translations { font-size: 16px; }
.docs-page .symbol-doc h1 { font-size: 34px; font-weight: 600; margin: 5px 0 20px; line-height: 1.2; overflow-wrap: anywhere; }
.docs-page .symbol-doc h2, .docs-page .symbol-doc h3 { font-size: 21px; color: var(--ink); margin: 30px 0 12px; }
.docs-page #definition > h2 { font-size: 26px; margin-top: 24px; }
.docs-page .symbol-doc-origin { margin: 0 0 24px; }
.docs-page .symbol-doc [id] { scroll-margin-top: 90px; }
.docs-toc { position: sticky; top: 64px; height: fit-content; padding: 32px 18px; font-size: 14px; }
.docs-toc a { display: block; padding: 5px 0; color: var(--muted); }
.docs-overview { overflow-wrap: anywhere; }
.docs-overview h1 { margin: 0 0 14px; font-size: 32px; }
.docs-overview section { margin-top: 26px; }
.docs-overview ul { padding-left: 20px; }
#docsStatus { color: var(--muted); }
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
@media (max-width: 1100px) { .docs-layout { grid-template-columns: 250px minmax(0, 1fr); } .docs-toc { display: none; } .docs-main { padding: 26px; } }
@media (max-width: 700px) { .docs-header { height: auto; min-height: 64px; padding: 10px 14px; flex-wrap: wrap; } .docs-brand span { display: none; } .docs-language nav { left: 0; right: auto; } .docs-layout { display: block; } .docs-sidebar { position: static; height: auto; max-height: 320px; border-right: none; border-bottom: 1px solid var(--border); } #docsNav { min-height: 80px; } .docs-main { padding: 24px 18px; } .symbol-doc .symbol-doc-facts { grid-template-columns: 1fr; gap: 4px; } }
