
:root { color-scheme: light dark; --bg:#f6f7f4; --surface:#ffffff; --surface-raised:#fbfcfa; --text:#1b231d; --muted:#617066; --line:#d8ded8; --accent:#08784b; --accent-ink:#ffffff; --code:#f0f4f0; --focus:#1d8dcb; font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
:root[data-theme="light"] { color-scheme:light; }
:root[data-theme="dark"] { color-scheme:dark; --bg:#101511; --surface:#18211a; --surface-raised:#1d2820; --text:#e7eee8; --muted:#a6b7a9; --line:#344338; --accent:#77d9a4; --accent-ink:#092016; --code:#0c130e; --focus:#75c7f5; }
@media(prefers-color-scheme:dark){:root:not([data-theme]){--bg:#101511;--surface:#18211a;--surface-raised:#1d2820;--text:#e7eee8;--muted:#a6b7a9;--line:#344338;--accent:#77d9a4;--accent-ink:#092016;--code:#0c130e;--focus:#75c7f5}}
*{box-sizing:border-box} body{margin:0;background:var(--bg);color:var(--text);line-height:1.55}button,input{font:inherit}button{color:var(--text);background:var(--surface);border:1px solid var(--line);padding:8px 12px;border-radius:8px;cursor:pointer}button:hover{border-color:var(--accent)}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid color-mix(in srgb,var(--focus) 55%,transparent);outline-offset:2px}.site-header{min-height:68px;padding:0 max(5vw,24px);display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg) 93%,transparent);backdrop-filter:blur(12px);position:sticky;top:0;z-index:2}.brand{margin-right:auto;font-weight:760;letter-spacing:-.02em;color:var(--text);text-decoration:none}.site-header button:first-of-type{border-color:color-mix(in srgb,var(--accent) 38%,var(--line));color:var(--accent);font-weight:650}main{max-width:1080px;margin:0 auto;padding:52px max(5vw,24px) 96px}.hero{max-width:760px}.hero img{float:right;border-radius:15px;box-shadow:0 12px 32px color-mix(in srgb,var(--accent) 20%,transparent)}.hero h1{font-size:clamp(2.35rem,6vw,4.8rem);letter-spacing:-.055em;line-height:1;margin:.16em 0}.hero p{font-size:1.12rem;color:var(--muted);max-width:62ch}.metrics{display:flex;flex-wrap:wrap;gap:9px;margin:32px 0}.metrics span,.kind{font-size:.8rem;color:var(--muted);border:1px solid var(--line);padding:5px 9px;border-radius:999px;background:var(--surface-raised)}.packages{padding:0;list-style:none;display:grid;gap:10px}.packages a{display:block;text-decoration:none;color:var(--text);padding:18px 20px;background:var(--surface);border:1px solid var(--line);border-radius:12px;transition:border-color .14s ease,transform .14s ease}.packages a:hover{border-color:var(--accent);transform:translateY(-1px)}.packages strong,.packages span{display:block}.packages .package-path{margin-top:2px;color:var(--accent);font-size:.8rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.packages span{color:var(--muted);font-size:.92rem}.reference{max-width:920px}.reference nav{font-size:.9rem;color:var(--muted)}.reference nav a{color:inherit}.reference h1{letter-spacing:-.035em}.file{padding:30px 0;border-top:1px solid var(--line)}.file:first-of-type{margin-top:30px}.imports{font-size:.9rem;color:var(--muted)}.symbol{padding:22px;margin:18px 0;background:var(--surface);border:1px solid var(--line);border-radius:12px;scroll-margin-top:88px}.symbol h3{margin:3px 0 12px;letter-spacing:-.02em}.symbol pre{overflow:auto;background:var(--code);padding:15px;border-radius:8px;border:1px solid color-mix(in srgb,var(--line) 75%,transparent)}.summary{font-weight:650}footer{max-width:1080px;margin:auto;padding:28px max(5vw,24px);border-top:1px solid var(--line);color:var(--muted);font-size:.85rem}.skip{position:absolute;left:-999px}.skip:focus{left:8px;top:8px;z-index:4;background:var(--surface);padding:8px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}dialog{width:min(720px,94vw);border:0;background:transparent;padding:0;color:var(--text)}dialog::backdrop{background:color-mix(in srgb,#071008 54%,transparent);backdrop-filter:blur(3px)}.search-dialog{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:22px;box-shadow:0 24px 70px color-mix(in srgb,#000 30%,transparent)}.search-dialog-header{display:flex;align-items:start;justify-content:space-between;gap:18px}.search-dialog-header h2{margin:0;letter-spacing:-.025em}.search-dialog-header button{font-size:1.3rem;line-height:1;padding:5px 10px}.eyebrow{margin:0 0 2px;color:var(--accent);font-size:.78rem;font-weight:750;text-transform:uppercase;letter-spacing:.09em}.search-dialog input{width:100%;margin:18px 0 8px;padding:14px 15px;font:inherit;background:var(--bg);color:var(--text);border:1px solid var(--line);border-radius:9px}.search-summary{min-height:1.6em;margin:0 0 10px;color:var(--muted);font-size:.9rem}.search-result{display:grid;grid-template-columns:auto 1fr;column-gap:9px;padding:11px 12px;color:var(--text);text-decoration:none;border-radius:8px;border:1px solid transparent}.search-result:hover,.search-result:focus,.search-result[data-selected="true"]{background:var(--code);border-color:color-mix(in srgb,var(--accent) 35%,var(--line));outline:none}.search-kind{align-self:start;color:var(--accent);font-size:.76rem;font-weight:700;padding-top:2px}.search-result strong{min-width:0}.search-result small{grid-column:2;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-hint{margin:16px 0 0;color:var(--muted);font-size:.82rem}.search-hint kbd{padding:1px 5px;border:1px solid var(--line);border-radius:4px;background:var(--surface-raised)}@media(max-width:620px){.site-header{padding:0 18px}.site-header kbd{display:none}main{padding-top:34px}.hero img{width:48px;height:48px}.symbol{padding:16px}.search-dialog{padding:18px}.search-result{grid-template-columns:1fr}.search-result small{grid-column:1}.search-kind{display:none}}
/* Dense reference pages deliberately follow the documentation-first rhythm of
   conventional language package sites: section rules, compact signatures, and
   a persistent local index rather than a stack of dashboard cards. */
main.reference-layout{max-width:1380px;display:grid;grid-template-columns:minmax(0,1fr) 218px;gap:48px;align-items:start;padding-top:32px}.reference-layout .reference{max-width:960px;min-width:0}.breadcrumb{font-size:.88rem;color:var(--muted)}.breadcrumb a{color:inherit}.package-heading{padding:10px 0 20px;border-bottom:1px solid var(--line)}.package-heading .package-path{margin:0;color:var(--muted);font-size:.84rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.package-heading h1{margin:3px 0 0;font-size:clamp(2rem,4vw,3.2rem);line-height:1.08;letter-spacing:-.045em}.reference>.package-heading+*{margin-top:22px}.file{padding:28px 0 0;margin:0;border:0;border-top:1px solid var(--line)}.file:first-of-type{margin-top:28px}.file-heading h2{margin:0;font-size:1.12rem;letter-spacing:-.01em}.imports{margin:6px 0 16px;font-size:.84rem}.imports a{color:inherit;text-decoration-style:dotted}.symbol{padding:22px 0;margin:0;background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0;scroll-margin-top:88px}.symbol-heading{display:flex;align-items:baseline;gap:12px}.symbol .kind{display:inline-block;flex:none;margin:0;padding:2px 0;border:0;border-radius:0;background:transparent;color:var(--muted);font-size:.73rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em}.symbol h3{margin:0;font-size:1.25rem;line-height:1.25}.symbol-name{color:var(--accent);text-decoration:none}.symbol-name:hover{text-decoration:underline}.symbol pre{margin:10px 0 0;padding:10px 14px;background:var(--code);border:1px solid var(--line);border-radius:6px;font-size:.94rem;line-height:1.45}.symbol p{margin:12px 0}.symbol .summary{font-weight:650}.symbol h4{margin:16px 0 4px;font-size:.92rem}.doc-table-wrap{overflow:auto;margin:14px 0;border:1px solid var(--line);border-radius:6px}.doc-table{width:100%;border-collapse:collapse;font-size:.92rem}.doc-table th,.doc-table td{padding:8px 11px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}.doc-table th{background:var(--code);font-weight:700}.doc-table tr:last-child td{border-bottom:0}.doc-table p{margin:0}.package-toc{position:sticky;top:92px;max-height:calc(100vh - 112px);overflow:auto;border-left:1px solid var(--line);padding-left:18px;font-size:.84rem;line-height:1.35}.package-toc nav>a,.toc-group a{display:block;color:var(--muted);text-decoration:none;padding:3px 0}.package-toc a:hover,.package-toc a:focus-visible{color:var(--accent)}.toc-title{margin:0 0 7px;color:var(--text);font-weight:700}.toc-group{margin:12px 0}.toc-group .toc-file{color:var(--text);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78rem;font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.toc-group .toc-entry{padding-left:9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reference-layout+footer{max-width:1380px}@media(max-width:980px){main.reference-layout{display:block;max-width:980px}.package-toc{display:none}.reference-layout .reference{max-width:none}}@media(max-width:620px){main.reference-layout{padding-top:24px}.symbol-heading{display:block}.symbol .kind{margin-bottom:4px}.symbol h3{font-size:1.13rem}.symbol pre{font-size:.84rem;padding:9px 11px}.file{padding-top:22px}}.package-directory{margin-top:46px}.section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:10px}.section-heading h2{margin:0;letter-spacing:-.025em}.section-heading p{margin:0;color:var(--muted);font-size:.9rem}.home .packages{display:block;gap:0;margin:0;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:var(--surface)}.home .packages li+li{border-top:1px solid var(--line)}.home .packages a{padding:11px 14px;border:0;border-radius:0;background:transparent;transform:none}.home .packages a:hover{background:var(--surface-raised);border-color:transparent;transform:none}.home .packages .package-route{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.92rem;color:var(--accent)}.home .packages .package-meta{margin-top:1px;font-size:.8rem}.home .packages .package-summary{margin-top:3px;font-size:.86rem;line-height:1.35}@media(max-width:620px){.section-heading{display:block}.section-heading p{margin-top:3px}}

.package-explorer,.package-toc{--varde-scroll-surface:var(--bg);--varde-scroll-thumb:color-mix(in srgb,var(--muted) 58%,var(--bg));--varde-scroll-track-active:color-mix(in srgb,var(--surface-raised) 84%,var(--bg));scrollbar-width:thin;scrollbar-color:var(--varde-scroll-thumb) transparent}
.reference pre,.doc-table-wrap{--varde-scroll-surface:var(--code);--varde-scroll-thumb:color-mix(in srgb,var(--muted) 62%,var(--code));--varde-scroll-track-active:color-mix(in srgb,var(--surface-raised) 50%,var(--code));scrollbar-width:thin;scrollbar-color:var(--varde-scroll-thumb) transparent}
.search-results-scroll{--varde-scroll-surface:var(--surface);--varde-scroll-thumb:color-mix(in srgb,var(--muted) 58%,var(--surface));--varde-scroll-track-active:var(--surface-raised);scrollbar-width:thin;scrollbar-color:var(--varde-scroll-thumb) transparent}
.package-explorer:hover,.package-explorer:focus-within,.package-toc:hover,.package-toc:focus-within,.reference pre:hover,.reference pre:focus-within,.doc-table-wrap:hover,.doc-table-wrap:focus-within,.search-results-scroll:hover,.search-results-scroll:focus-within{scrollbar-color:var(--varde-scroll-thumb) var(--varde-scroll-track-active)}
.package-explorer::-webkit-scrollbar,.package-toc::-webkit-scrollbar,.reference pre::-webkit-scrollbar,.doc-table-wrap::-webkit-scrollbar,.search-results-scroll::-webkit-scrollbar{width:11px;height:11px}
.package-explorer::-webkit-scrollbar-track,.package-toc::-webkit-scrollbar-track,.reference pre::-webkit-scrollbar-track,.doc-table-wrap::-webkit-scrollbar-track,.search-results-scroll::-webkit-scrollbar-track{background:transparent}
.package-explorer::-webkit-scrollbar-thumb,.package-toc::-webkit-scrollbar-thumb,.reference pre::-webkit-scrollbar-thumb,.doc-table-wrap::-webkit-scrollbar-thumb,.search-results-scroll::-webkit-scrollbar-thumb{background:var(--varde-scroll-thumb);background-clip:padding-box;border:3px solid transparent;border-radius:999px}
.package-explorer:hover::-webkit-scrollbar-track,.package-explorer:focus-within::-webkit-scrollbar-track,.package-toc:hover::-webkit-scrollbar-track,.package-toc:focus-within::-webkit-scrollbar-track,.reference pre:hover::-webkit-scrollbar-track,.reference pre:focus-within::-webkit-scrollbar-track,.doc-table-wrap:hover::-webkit-scrollbar-track,.doc-table-wrap:focus-within::-webkit-scrollbar-track,.search-results-scroll:hover::-webkit-scrollbar-track,.search-results-scroll:focus-within::-webkit-scrollbar-track{background:var(--varde-scroll-track-active)}
.package-explorer:hover::-webkit-scrollbar-thumb,.package-explorer:focus-within::-webkit-scrollbar-thumb,.package-toc:hover::-webkit-scrollbar-thumb,.package-toc:focus-within::-webkit-scrollbar-thumb,.reference pre:hover::-webkit-scrollbar-thumb,.reference pre:focus-within::-webkit-scrollbar-thumb,.doc-table-wrap:hover::-webkit-scrollbar-thumb,.doc-table-wrap:focus-within::-webkit-scrollbar-thumb,.search-results-scroll:hover::-webkit-scrollbar-thumb,.search-results-scroll:focus-within::-webkit-scrollbar-thumb{border-color:var(--varde-scroll-track-active)}
.package-explorer::-webkit-scrollbar-thumb:hover,.package-toc::-webkit-scrollbar-thumb:hover,.reference pre::-webkit-scrollbar-thumb:hover,.doc-table-wrap::-webkit-scrollbar-thumb:hover,.search-results-scroll::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--accent) 54%,var(--varde-scroll-surface))}
.package-explorer::-webkit-scrollbar-corner,.package-toc::-webkit-scrollbar-corner,.reference pre::-webkit-scrollbar-corner,.doc-table-wrap::-webkit-scrollbar-corner,.search-results-scroll::-webkit-scrollbar-corner{background:transparent}
/* Package declarations are grouped by their public kind, then alphabetized. The index repeats that structure so it supports both quick group jumps and precise symbol navigation. */
.entry-group{margin:30px 0 0;scroll-margin-top:88px}.entry-group-heading{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:0 0 9px;border-bottom:1px solid var(--line)}.entry-group-heading h2{margin:0;font-size:1.22rem;letter-spacing:-.02em}.entry-group-count{color:var(--muted);font-size:.78rem;font-weight:700;font-variant-numeric:tabular-nums}.entry-group .symbol:first-of-type{padding-top:17px}.toc-jumps{display:flex;flex-wrap:wrap;gap:4px;margin:8px 0 14px}.toc-jumps a{padding:3px 6px!important;border:1px solid var(--line);border-radius:999px;background:var(--surface-raised);font-size:.72rem;line-height:1.25}.toc-group{padding:8px 0 0;border-top:1px solid color-mix(in srgb,var(--line) 72%,transparent)}.toc-group-link{display:flex!important;align-items:baseline;justify-content:space-between;gap:8px;color:var(--text)!important;font-size:.77rem;font-weight:750}.toc-group-link span{color:var(--muted);font-size:.7rem;font-variant-numeric:tabular-nums}.toc-group-link[data-active="true"]{color:var(--accent)!important}.toc-group[data-active="true"]{border-color:color-mix(in srgb,var(--accent) 58%,var(--line))}.toc-entries{margin-top:3px}.toc-group .toc-entry{padding:2px 0 2px 9px}.toc-entry[data-active="true"]{color:var(--accent);font-weight:700;border-left:2px solid var(--accent);margin-left:-19px;padding-left:26px}.toc-entry[data-active="true"]:not(:focus-visible){background:color-mix(in srgb,var(--accent) 8%,transparent)}
.source-link{margin-left:auto;color:var(--muted);font-size:.78rem;font-weight:650;text-decoration:none}.source-link:hover{color:var(--accent);text-decoration:underline}
.builtin-reference .package-heading>p:last-child{max-width:68ch;margin:11px 0 0;color:var(--muted)}.builtin-symbol .summary{margin-bottom:3px}.builtin-category{margin:0;color:var(--muted);font-size:.8rem;text-transform:capitalize}
.reference-layout{width:100%;max-width:none!important;grid-template-columns:minmax(220px,1fr) minmax(0,960px) minmax(200px,1fr)!important;column-gap:clamp(28px,3vw,56px);align-items:start;padding:32px clamp(24px,4vw,72px) 96px}.reference-layout .reference{width:100%;max-width:960px;justify-self:center}.package-explorer{position:sticky;top:92px;justify-self:start;width:min(100%,260px);max-height:calc(100vh - 112px);overflow:auto;padding-right:16px;border-right:1px solid var(--line);font-size:.84rem;line-height:1.32}.package-toc{justify-self:end;width:min(100%,240px)}.explorer-title{margin:0 0 8px;font-weight:750;color:var(--text)}.package-tree,.package-tree ul{list-style:none;margin:0;padding:0}.package-tree ul{margin:2px 0 2px 7px;padding-left:12px;border-left:1px solid color-mix(in srgb,var(--line) 85%,transparent)}.package-tree li{margin:1px 0}.tree-package,.tree-folder{display:block;min-width:0;padding:5px 7px;border-radius:5px}.tree-package{color:var(--text);text-decoration:none}.tree-package:hover,.tree-package:focus-visible{background:var(--surface-raised);color:var(--accent);outline:0}.tree-package.is-active{background:color-mix(in srgb,var(--accent) 12%,var(--surface));color:var(--accent);font-weight:700}.tree-folder{color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.79rem}.tree-name,.tree-meta{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tree-meta{margin-top:1px;color:var(--muted);font-size:.75rem;font-weight:400}.home-insights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:34px 0}.home-insights article{padding:16px 17px;background:var(--surface);border:1px solid var(--line);border-radius:8px}.home-insights h2{margin:2px 0 5px;font-size:1rem;letter-spacing:-.015em}.home-insights p:last-child{margin:0;color:var(--muted);font-size:.87rem;line-height:1.45}.home .package-tree{padding:8px;background:var(--surface);border:1px solid var(--line);border-radius:8px}.home .package-tree .tree-package{padding:8px 10px}.home .package-tree .tree-package:hover{background:var(--surface-raised)}.symbol h3 .kind{display:inline-block;vertical-align:middle;margin:0 0 0 9px;padding:2px 7px;border:1px solid var(--line);border-radius:999px;background:var(--surface-raised);font-size:.66rem;line-height:1.25;letter-spacing:.06em}.reference-layout+footer{max-width:none;padding-left:clamp(24px,4vw,72px);padding-right:clamp(24px,4vw,72px)}@media(max-width:1320px){.reference-layout{grid-template-columns:minmax(0,960px) 218px!important;justify-content:center}.package-explorer{display:none}}@media(max-width:980px){.reference-layout{display:block!important;max-width:980px!important}.package-toc{display:none}}@media(max-width:760px){.home-insights{grid-template-columns:1fr}.home-insights article{padding:14px}}@media(max-width:620px){.source-link{margin:5px 0 0;display:inline-block}.symbol h3 .kind{margin:5px 0 0;vertical-align:baseline}}
/* The reference canvas stays fluid: side rails occupy the edges while the documentation expands through the center. The homepage retains a focused reading width. */
main.home{width:100%;max-width:1080px;padding:52px clamp(24px,4vw,72px) 96px}.home .hero,.home .metrics{max-width:960px;margin-left:auto;margin-right:auto}.home .package-directory{width:100%;max-width:none}.reference-layout{grid-template-columns:minmax(190px,250px) minmax(0,1fr) minmax(190px,250px)!important;column-gap:clamp(24px,3vw,48px)}.reference-layout .reference{max-width:none}.package-explorer,.package-toc{display:block;width:100%}@media(max-width:1120px){.reference-layout{grid-template-columns:minmax(0,1fr) 218px!important;justify-content:center}.package-explorer{display:none}}
/* Search is a fixed reference tool: header and query controls stay in view while only results scroll. */
dialog{width:min(820px,94vw);max-height:86vh;overflow:hidden}.search-dialog{display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;max-height:min(760px,86vh);padding:0;overflow:hidden;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:0 28px 80px color-mix(in srgb,#000 34%,transparent)}.search-dialog-header{padding:20px 24px 14px;border-bottom:1px solid var(--line);align-items:center}.search-dialog-header h2{font-size:1.35rem}.search-dialog-header button{border-color:transparent;background:transparent;color:var(--muted)}.search-dialog-header button:hover{color:var(--text);background:var(--surface-raised);border-color:var(--line)}.search-controls{padding:14px 24px 9px;border-bottom:1px solid var(--line)}.search-dialog input{margin:0;padding:12px 14px;border-radius:7px;background:var(--bg)}.search-summary{min-height:1.35em;margin:7px 1px 0;font-size:.8rem}.search-results-scroll{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:7px 10px 10px}.search-result{grid-template-columns:minmax(0,1fr) auto;column-gap:10px;align-items:center;padding:10px 12px;border-radius:7px}.search-result strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.95rem}.search-kind{grid-column:2;grid-row:1;align-self:center;padding:2px 7px;border:1px solid var(--line);border-radius:999px;background:var(--surface-raised);color:var(--muted);font-size:.66rem;font-weight:750;letter-spacing:.055em;line-height:1.35;text-transform:uppercase}.search-result small{grid-column:1 / -1;margin-top:1px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem;line-height:1.35}.search-hint{max-width:none;display:flex;gap:14px;margin:0;padding:11px 24px;border-top:1px solid var(--line);font-size:.76rem}.search-hint span{display:inline-flex;align-items:center;gap:3px}@media(max-width:620px){dialog{width:calc(100vw - 20px);max-height:calc(100vh - 20px)}.search-dialog{max-height:calc(100vh - 20px)}.search-dialog-header{padding:16px 18px 12px}.search-controls{padding:12px 18px 8px}.search-hint{gap:9px;padding:10px 18px;font-size:.71rem}.search-result{grid-template-columns:minmax(0,1fr) auto}.search-kind{display:block}.search-result small{grid-column:1 / -1}}
/* The homepage collapses package branches so large workspaces start at their collections (for example core, vendor, and base) instead of rendering every package at once. */
.home .package-branch{margin:2px 0}.home .package-branch>summary{display:flex;align-items:stretch;list-style:none;cursor:pointer;border-radius:6px}.home .package-branch>summary::-webkit-details-marker{display:none}.home .package-branch>summary::before{content:"›";flex:none;align-self:center;width:20px;color:var(--muted);font-size:1.18rem;line-height:1;text-align:center;transition:transform .14s ease}.home .package-branch[open]>summary::before{transform:rotate(90deg)}.home .package-branch>summary .tree-package,.home .package-branch>summary .tree-folder{flex:1}.home .package-branch>summary:focus-visible{outline:3px solid color-mix(in srgb,var(--focus) 55%,transparent);outline-offset:2px}.home .package-branch>ul{margin-left:16px}.home .package-branch>summary:hover .tree-folder{color:var(--accent)}
/* Configurable reading preferences. Project defaults are emitted on <html>; a reader's optional settings are stored locally in the browser. */
:root{--code-tab-width:4}pre,code{tab-size:var(--code-tab-width)}.settings-dialog{width:min(470px,94vw);padding:0;overflow:hidden;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:0 28px 80px color-mix(in srgb,#000 34%,transparent)}.settings-dialog .search-dialog-header{padding:20px 24px 14px;border-bottom:1px solid var(--line)}.settings-form{display:grid;gap:14px;padding:20px 24px 24px}.settings-form label{display:grid;gap:6px;color:var(--muted);font-size:.86rem;font-weight:650}.settings-form select{width:100%;padding:9px 10px;border:1px solid var(--line);border-radius:7px;background:var(--bg);color:var(--text);font:inherit}.settings-form .settings-check{grid-template-columns:auto 1fr;align-items:center;gap:9px;color:var(--text);font-size:.9rem}.settings-form input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent)}.settings-form button{justify-self:start;margin-top:3px}.site-header #site-settings{color:var(--muted)}@keyframes varde-page-in{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}@keyframes varde-dialog-in{from{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:no-preference){html[data-motion=system] main{animation:varde-page-in .28s ease-out both}html[data-motion=system] dialog[open] .search-dialog,html[data-motion=system] dialog[open] .settings-dialog{animation:varde-dialog-in .18s ease-out both}}html[data-motion=full] main{animation:varde-page-in .28s ease-out both}html[data-motion=full] dialog[open] .search-dialog,html[data-motion=full] dialog[open] .settings-dialog{animation:varde-dialog-in .18s ease-out both}@media(prefers-reduced-motion:reduce){html[data-motion=system] *,html[data-motion=reduced] *{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}html[data-motion=reduced] *{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}@media(max-width:620px){.settings-dialog .search-dialog-header,.settings-form{padding-left:18px;padding-right:18px}}
main{animation:none!important}
@media(max-width:620px){.site-header{padding:0 12px;gap:6px}.brand{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.site-header button{padding:7px 8px;font-size:.9rem}}
#settings-dialog{width:min(470px,calc(100vw - 24px));max-width:calc(100vw - 24px);max-height:calc(100vh - 24px);margin:auto;padding:0;border:0;background:transparent;color:var(--text)}#settings-dialog .settings-dialog{width:100%;max-width:none}

main.reference-layout{grid-template-columns:minmax(175px,215px) minmax(0,1fr) minmax(170px,210px)!important;column-gap:clamp(20px,2vw,32px);padding-left:clamp(24px,3vw,56px);padding-right:clamp(24px,3vw,56px)}
@media(max-width:1120px){main.reference-layout{grid-template-columns:minmax(0,1fr) 210px!important;padding-left:clamp(24px,4vw,56px);padding-right:clamp(24px,4vw,56px)}}

:root,:root[data-theme="odin-light"]{color-scheme:light;--bg:#ffffff;--surface:#ffffff;--surface-raised:#f4f7fd;--text:#14213d;--muted:#52627b;--line:#d6e0f0;--accent:#0059d6;--secondary:#f06f00;--accent-ink:#ffffff;--code:#eaf2ff;--focus:#f06f00;--syntax-keyword:#9d2c72;--syntax-literal:#a54800;--syntax-operator:#52627b;--syntax-comment:#64748b;--syntax-directive:#6d3cc4;--syntax-invalid:#c82333;--syntax-link:#0059d6;--syntax-builtin:#8a5a00;--syntax-string:#08734b;--syntax-number:#6941bd;--syntax-unresolved:#60708a;--inline-code:#8b2f80}
:root[data-theme="monokai"]{color-scheme:dark;--bg:#272822;--surface:#30312b;--surface-raised:#3a3b34;--text:#f8f8f2;--muted:#b6b5a9;--line:#515249;--accent:#a6e22e;--secondary:#fd971f;--accent-ink:#20211c;--code:#1f201b;--focus:#66d9ef;--syntax-keyword:#ff7ab2;--syntax-literal:#c6a3ff;--syntax-operator:#f8f8f2;--syntax-comment:#b7b8a9;--syntax-directive:#79def0;--syntax-invalid:#ff7a9e;--syntax-link:#a6e22e;--syntax-builtin:#ffad4d;--syntax-string:#e6db74;--syntax-number:#c6a3ff;--syntax-unresolved:#c7c7bb;--inline-code:#f0a6df}
:root[data-theme="github-light"]{color-scheme:light;--bg:#ffffff;--surface:#ffffff;--surface-raised:#f6f8fa;--text:#1f2328;--muted:#57606a;--line:#d0d7de;--accent:#0969da;--secondary:#bf8700;--accent-ink:#ffffff;--code:#f6f8fa;--focus:#0969da;--syntax-keyword:#b4232d;--syntax-literal:#0550ae;--syntax-operator:#57606a;--syntax-comment:#6e7781;--syntax-directive:#8250df;--syntax-invalid:#cf222e;--syntax-link:#0969da;--syntax-builtin:#8250df;--syntax-string:#087443;--syntax-number:#8250df;--syntax-unresolved:#65717d;--inline-code:#7a3eb1}
:root[data-theme="tokyo-night"]{color-scheme:dark;--bg:#1a1b26;--surface:#24283b;--surface-raised:#2f354f;--text:#c0caf5;--muted:#9aa5ce;--line:#414868;--accent:#7aa2f7;--secondary:#ff9e64;--accent-ink:#1a1b26;--code:#16161e;--focus:#bb9af7;--syntax-keyword:#c7a7ff;--syntax-literal:#ffad76;--syntax-operator:#89ddff;--syntax-comment:#7f89b3;--syntax-directive:#7dcfff;--syntax-invalid:#ff8397;--syntax-link:#7aa2f7;--syntax-builtin:#e7bd7e;--syntax-string:#9ece6a;--syntax-number:#c7a7ff;--syntax-unresolved:#aab5dd;--inline-code:#ef9dc4}
.site-header #site-search{display:inline-flex;align-items:center;gap:9px;min-height:40px;padding:0 10px 0 13px;border-color:var(--accent);border-radius:999px;background:var(--accent);color:var(--accent-ink);font-weight:750;box-shadow:0 4px 12px color-mix(in srgb,var(--accent) 24%,transparent);transition:background .14s ease,transform .14s ease,box-shadow .14s ease}.site-header #site-search:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 88%,#000);color:var(--accent-ink);transform:translateY(-1px);box-shadow:0 7px 16px color-mix(in srgb,var(--accent) 30%,transparent)}.site-header #site-search:focus-visible{outline-color:color-mix(in srgb,var(--focus) 68%,transparent)}.search-trigger-icon{display:block;flex:none;width:16px;height:16px;stroke:currentColor;stroke-width:2.1;stroke-linecap:round}.site-header #site-search kbd{display:inline-flex;align-items:center;justify-content:center;min-width:27px;margin-left:2px;padding:3px 5px;border:1px solid color-mix(in srgb,var(--accent-ink) 38%,transparent);border-radius:5px;background:color-mix(in srgb,var(--accent-ink) 14%,transparent);color:inherit;font-size:.69em;font-weight:750;letter-spacing:-.03em;line-height:1.05}.site-header #site-settings{color:var(--muted)}@media(max-width:620px){.site-header #site-search{padding:0 11px}.site-header #site-search span:not(.search-trigger-icon){display:none}}
.eyebrow{color:var(--secondary)}.settings-form fieldset{display:grid;gap:9px;margin:0;padding:12px;border:1px solid var(--line);border-radius:8px}.settings-form legend{padding:0 4px;color:var(--text);font-size:.86rem;font-weight:700}.settings-form fieldset p{margin:0;color:var(--muted);font-size:.78rem;line-height:1.4}.settings-form fieldset label{font-size:.8rem}

body{font-size:16px;line-height:1.6;text-rendering:optimizeLegibility}.site-header{min-height:72px;background:color-mix(in srgb,var(--bg) 96%,transparent);backdrop-filter:blur(10px)}.brand{font-weight:780;letter-spacing:-.025em}.site-header #site-search{min-height:36px;gap:7px;padding:0 9px 0 11px;border:1px solid var(--accent);border-radius:7px;box-shadow:none;font-size:.88rem}.site-header #site-search:hover{background:color-mix(in srgb,var(--accent) 90%,#000);box-shadow:none;transform:translateY(-1px)}.site-header #site-search kbd{min-width:23px;padding:2px 4px;border-radius:3px}.site-header #site-settings{padding:7px 9px;border-color:transparent;background:transparent}.site-header #site-settings:hover{border-color:var(--line);background:var(--surface-raised);color:var(--text)}
main.home{max-width:1120px;padding-top:clamp(56px,8vw,112px)}.home .hero{max-width:830px}.hero h1{max-width:15ch;font-size:4.5rem;letter-spacing:-.035em;line-height:.98;text-wrap:balance}.hero p{margin-top:1.15rem;font-size:1.08rem;line-height:1.65;text-wrap:pretty}.metrics{gap:0;margin:38px 0 58px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.metrics span,.kind{padding:9px 12px;border:0;border-radius:0;background:transparent;font-size:.78rem;font-variant-numeric:tabular-nums}.metrics span+span{border-left:1px solid var(--line)}.package-directory{margin-top:0}.section-heading{align-items:flex-end;margin-bottom:15px}.section-heading h2{font-size:1.5rem;letter-spacing:-.03em}.section-heading p{max-width:40ch;line-height:1.45}.home .package-tree{padding:0;border-width:1px 0;border-radius:0;background:transparent}.home .package-tree>li+li{border-top:1px solid var(--line)}.home .package-tree .tree-package{padding:14px 12px;border-radius:0}.home .package-tree .tree-package:hover{background:var(--surface-raised)}.home .package-tree .tree-meta{font-size:.78rem}.home .package-tree ul{margin-left:18px;padding-left:15px}.home .package-branch{margin:0}.home .package-branch>summary{border-radius:0}.home .package-branch>summary .tree-package,.home .package-branch>summary .tree-folder{padding-top:14px;padding-bottom:14px}
.reference-layout{padding-top:clamp(30px,4vw,54px)}.reference-layout .reference{min-width:0;overflow-x:clip}.package-heading{padding:8px 0 25px}.package-heading h1{font-size:3.25rem;letter-spacing:-.035em;line-height:1.02;text-wrap:balance}.breadcrumb{font-size:.82rem}.package-heading .package-path{font-size:.78rem;letter-spacing:.01em}.entry-group{margin-top:38px}.entry-group-heading{padding-bottom:11px}.entry-group-heading h2{font-size:1.3rem;letter-spacing:-.025em}.symbol{padding:26px 0 28px}.symbol-heading{gap:10px}.symbol h3{font-size:1.3rem;letter-spacing:-.018em;overflow-wrap:anywhere}.symbol h3 .kind,.symbol .kind{margin-left:.55rem;padding:0;border:0;border-radius:0;background:transparent;color:var(--muted);font-size:.68rem;font-weight:760;letter-spacing:.075em}.symbol pre{margin-top:12px;padding:13px 16px;border-radius:4px;line-height:1.55;box-shadow:none}.symbol p{max-width:73ch;line-height:1.65;text-wrap:pretty}.package-explorer{padding-right:18px}.tree-package,.tree-folder{padding:5px 7px;border-radius:3px}.tree-package.is-active{background:color-mix(in srgb,var(--accent) 11%,var(--surface));color:var(--accent);font-weight:760}.package-toc{padding-left:20px;border-left:1px solid var(--line)}.toc-jumps{gap:0;margin:8px 0 15px}.toc-jumps a{padding:2px 7px!important;border:0;border-radius:0;background:transparent;color:var(--muted);font-size:.73rem;text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--line) 80%,transparent);text-underline-offset:3px}.toc-jumps a:first-child{padding-left:0!important}.toc-jumps a:hover{color:var(--accent)}.toc-group{padding-top:10px}.toc-group .toc-entry{padding:3px 0 3px 9px}.toc-entry[data-active="true"]{margin-left:0;padding-left:9px;border-left:0;background:color-mix(in srgb,var(--accent) 11%,transparent);color:var(--accent);font-weight:750}.toc-entry[data-active="true"]:not(:focus-visible){background:color-mix(in srgb,var(--accent) 11%,transparent)}
.reference-layout{padding-top:clamp(30px,4vw,54px)}.reference-layout .reference{min-width:0;overflow-x:clip}.package-heading{padding:8px 0 25px}.package-heading h1{font-size:3.25rem;letter-spacing:-.035em;line-height:1.02;text-wrap:balance}.breadcrumb{font-size:.82rem}.package-heading .package-path{font-size:.78rem;letter-spacing:.01em}.entry-group{margin-top:38px}.entry-group-heading{padding-bottom:11px}.entry-group-heading h2{font-size:1.3rem;letter-spacing:-.025em}.entry-group .symbol:first-of-type{padding-top:24px}.symbol{margin:0;padding:24px 0 0;border-bottom:0}.symbol+.symbol{margin-top:26px}.symbol-heading{gap:10px}.symbol h3{font-size:1.3rem;letter-spacing:-.018em;overflow-wrap:anywhere}.symbol pre{margin-top:12px;padding:13px 16px;border-radius:4px;line-height:1.55;box-shadow:none}.symbol p{max-width:73ch;line-height:1.65;text-wrap:pretty}.package-explorer{padding-right:18px}.tree-package,.tree-folder{padding:5px 7px;border-radius:3px}.tree-package.is-active{background:color-mix(in srgb,var(--accent) 11%,var(--surface));color:var(--accent);font-weight:760}.package-toc{padding-left:20px;border-left:1px solid var(--line)}.toc-jumps{gap:0;margin:8px 0 15px}.toc-jumps a{padding:2px 7px!important;border:0;border-radius:0;background:transparent;color:var(--muted);font-size:.73rem;text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--line) 80%,transparent);text-underline-offset:3px}.toc-jumps a:first-child{padding-left:0!important}.toc-jumps a:hover{color:var(--accent)}.toc-group{padding-top:10px}.toc-group .toc-entry{padding:3px 0 3px 9px}.toc-entry[data-active="true"]{margin-left:0;padding-left:9px;border-left:0;background:color-mix(in srgb,var(--accent) 11%,transparent);color:var(--accent);font-weight:750}.toc-entry[data-active="true"]:not(:focus-visible){background:color-mix(in srgb,var(--accent) 11%,transparent)}
.search-dialog,.settings-dialog{border-radius:9px;box-shadow:none}.search-result,.search-dialog input,.settings-form select{border-radius:4px}.search-kind{border-radius:3px}.settings-form fieldset{border-radius:4px}.search-dialog-header h2{letter-spacing:-.025em}.search-result[data-selected="true"]{background:color-mix(in srgb,var(--accent) 12%,var(--surface))}.entry-group-heading h2{min-width:0}.entry-group-link{color:var(--text);text-decoration:none}.entry-group-link:hover{text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--accent) 62%,transparent);text-underline-offset:5px}.entry-group-link:focus-visible{outline-offset:5px}.entry-group .symbol:first-of-type{padding-top:27px}.symbol{padding:0;margin:0;scroll-margin-top:96px}.symbol+.symbol{margin-top:32px}.symbol-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:20px;align-items:start}.symbol .signature{display:block;min-width:0;color:var(--text);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:clamp(1.06rem,1.35vw,1.25rem);font-weight:620;line-height:1.55;letter-spacing:-.012em;white-space:pre-wrap;overflow-wrap:anywhere;tab-size:var(--code-tab-width,4)}.symbol .source-link{align-self:baseline;margin:5px 0 0;color:var(--muted);font-size:.74rem;font-weight:700;text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--line) 84%,transparent);text-underline-offset:3px}.symbol .source-link:hover{color:var(--accent);text-decoration-color:currentColor}.symbol p:first-of-type{margin-top:14px}.builtin-symbol .signature{font-size:clamp(1.12rem,1.45vw,1.32rem)}@media(max-width:760px){.hero h1{font-size:3.25rem}}@media(max-width:620px){.site-header{min-height:62px}.site-header #site-search{min-height:34px}.hero h1{font-size:2.75rem}.package-heading h1{font-size:2.5rem}.metrics{margin:30px 0 44px}.metrics span{padding:8px 9px;font-size:.72rem}.metrics span+span{border-left:0}.metrics span:nth-child(n+3){border-top:1px solid var(--line)}.metrics{display:grid;grid-template-columns:1fr 1fr}.section-heading p{margin-top:7px}.home .package-tree .tree-package{padding:13px 8px}.symbol{padding:0}.symbol+.symbol{margin-top:28px}.symbol-heading{display:block}.symbol .signature{font-size:1.02rem;line-height:1.55}.symbol .source-link{display:inline-block;margin-top:7px}.symbol pre{padding:11px 12px;font-size:.85rem}.package-heading{padding-bottom:20px}}
@media(max-width:980px){.package-toc{display:none}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important}}

.reference>.entry-group{margin:28px 0 0;padding:0;background:transparent}.entry-group-content{margin-top:5px;padding:0;background:transparent}.entry-group-content>.symbol{position:relative;padding:10px 0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent}.entry-group-content>.symbol:target{margin-inline:-12px;padding-inline:12px;background:color-mix(in srgb,var(--accent) 5%,transparent);animation:varde-anchor-highlight 1.05s cubic-bezier(.22,1,.36,1) both}.entry-group-content>.symbol:target::before{content:"";position:absolute;inset:0 auto 0 0;width:1px;background:var(--accent)}@keyframes varde-anchor-highlight{0%,30%{background:color-mix(in srgb,var(--accent) 14%,transparent)}100%{background:color-mix(in srgb,var(--accent) 5%,transparent)}}.entry-group .symbol:first-of-type{padding-top:10px}.symbol+.symbol{margin-top:0}.symbol .signature{font-size:.96rem;font-weight:600;line-height:1.5;letter-spacing:-.004em}.symbol .signature>:first-child{font-size:clamp(1.12rem,1.62vw,1.32rem);font-weight:780;line-height:1.1;letter-spacing:-.024em}.symbol .source-link{font-size:.7rem}.symbol p{margin:8px 0}.symbol p:first-of-type{margin-top:8px}.symbol ul{margin:4px 0 8px;padding-left:1.4em}.symbol h4{margin:12px 0 4px;line-height:1.35}.symbol pre{margin-top:8px;padding:10px 14px}.symbol h4+pre{margin-top:6px}@media(prefers-reduced-motion:reduce){.entry-group-content>.symbol:target{animation:none!important;background:color-mix(in srgb,var(--accent) 5%,transparent)}}html[data-motion=reduced] .entry-group-content>.symbol:target{animation:none!important;background:color-mix(in srgb,var(--accent) 5%,transparent)}@media(max-width:620px){.reference>.entry-group{margin-top:26px}.entry-group-content{margin-top:5px}.entry-group-content>.symbol{padding:10px 0}.entry-group-content>.symbol:target{margin-inline:-8px;padding-inline:8px}.entry-group-content>.symbol:target::before{left:0;width:1px}.symbol .signature{font-size:.92rem}.symbol .signature>:first-child{font-size:1.08rem}.symbol pre{padding:9px 11px}}

.signature .tok-unresolved{text-decoration:none}.tok-local,.tok-ident{color:var(--text);font-weight:inherit}.tok-keyword{color:var(--syntax-keyword);font-weight:650}.tok-literal{color:var(--syntax-literal)}.tok-operator{color:var(--syntax-operator)}.tok-comment{color:var(--syntax-comment);font-style:italic}.tok-directive{color:var(--syntax-directive)}.tok-invalid{color:var(--syntax-invalid);text-decoration:underline}.tok-link{color:var(--syntax-link);font-weight:650;text-decoration:none}.tok-link:hover,.tok-link:focus-visible{text-decoration:underline;text-underline-offset:.16em}.tok-builtin{color:var(--syntax-builtin);text-decoration:none}.tok-unresolved{color:var(--syntax-unresolved);font-weight:600;text-decoration:none}.tok-string{color:var(--syntax-string)}.tok-number{color:var(--syntax-number)}.imports a{color:var(--syntax-link);font-weight:650;text-decoration:none}.imports a:hover,.imports a:focus-visible{text-decoration:underline;text-underline-offset:.16em}.inline-code{padding:0;border-radius:0;background:transparent;color:var(--inline-code);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.92em;font-weight:600;line-height:1.45;white-space:pre-wrap}.inline-code .tok-local,.inline-code .tok-ident{color:var(--inline-code)}.doc-section-label strong{font-weight:760}
