.site-header{z-index:40;background:color-mix(in srgb, var(--home-bg) 80%, transparent);-webkit-backdrop-filter:saturate(1.4)blur(12px);backdrop-filter:saturate(1.4)blur(12px);color:var(--home-ink);font:400 14px/1.4 var(--home-font-text);border-bottom:1px solid #0000;transition:border-color .3s;position:sticky;top:0}.site-header.scrolled,.site-header[data-docs]{border-bottom-color:var(--home-line)}.site-header[data-docs]{top:var(--fd-docs-row-1,0px);grid-area:header}.site-header a{color:inherit;text-decoration:none}.site-header :focus-visible{outline:2px solid var(--home-accent);outline-offset:2px;border-radius:6px}.header-sky{pointer-events:none;position:absolute;inset:0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#000 calc(50% - 630px),#0000 calc(50% - 590px) calc(50% - 150px),#000 calc(50% - 70px) calc(50% + 300px),#0000 calc(50% + 380px) calc(50% + 590px),#000 calc(50% + 630px));mask-image:linear-gradient(90deg,#000 calc(50% - 630px),#0000 calc(50% - 590px) calc(50% - 150px),#000 calc(50% - 70px) calc(50% + 300px),#0000 calc(50% + 380px) calc(50% + 590px),#000 calc(50% + 630px))}.site-header[data-docs] .header-sky{-webkit-mask-image:linear-gradient(90deg,#0000 440px,#000 520px calc(100% - 580px),#0000 calc(100% - 500px));mask-image:linear-gradient(90deg,#0000 440px,#000 520px calc(100% - 580px),#0000 calc(100% - 500px))}.site-header .header-sky svg{width:2560px;height:60px;position:absolute;top:0;left:50%;transform:translate(-50%)}.site-header-row{align-items:center;gap:24px;max-width:1180px;height:60px;margin:0 auto;padding:0 24px;display:flex;position:relative}.site-header[data-docs] .site-header-row{max-width:none}.site-brand{font:600 17px var(--home-font-display);letter-spacing:-.01em;white-space:nowrap;align-items:center;gap:10px;display:flex}.site-mark{flex:none;width:28px;height:28px}.site-nav{color:var(--home-muted);gap:22px;display:flex}.site-nav a:hover{color:var(--home-ink)}.site-spacer{flex:1}.site-search{border:1px solid var(--home-line);background:var(--home-panel);width:240px;height:36px;color:var(--home-faint);font:inherit;cursor:pointer;border-radius:8px;align-items:center;gap:10px;padding:0 8px 0 12px;transition:border-color .2s,color .2s;display:inline-flex}.site-search:hover{border-color:var(--home-line-2);color:var(--home-muted)}.site-search kbd{font:12px var(--home-font-data);color:var(--home-muted);border:1px solid var(--home-line);border-radius:6px;margin-left:auto;padding:1px 6px}.site-ghost{color:var(--home-muted);border:1px solid var(--home-line);border-radius:8px;align-items:center;gap:8px;padding:6px 10px;transition:color .2s,border-color .2s;display:inline-flex}.site-ghost:hover{color:var(--home-ink);border-color:var(--home-line-2)}.site-header svg{flex:none;width:16px;height:16px}.site-ghost svg{fill:none;stroke:currentColor;stroke-width:1.75px;stroke-linecap:round;stroke-linejoin:round}.site-theme{border:1px solid var(--home-line);cursor:pointer;background:0 0;border-radius:8px;flex:none;justify-content:center;align-items:center;width:40px;height:36px;padding:0;transition:border-color .2s;display:inline-flex;position:relative}.site-theme:hover{border-color:var(--home-line-2)}.site-header .site-theme svg{width:32px;height:32px;overflow:visible}.site-theme-orbit{fill:none;stroke:var(--home-line-2);stroke-width:1.1px;transition:stroke .2s}.site-theme:hover .site-theme-orbit{stroke:var(--home-muted)}.site-theme-sun{transition:transform .5s var(--home-ease), opacity .5s var(--home-ease);transform:translate(-10.2px,5px)}.site-theme-sun circle{fill:var(--home-star)}.site-theme-sun path{stroke:var(--home-star);stroke-width:1.2px;stroke-linecap:round}.site-theme-night{fill:var(--home-night);stroke:var(--home-muted);stroke-width:.9px}.site-theme-day{fill:var(--home-accent)}.site-theme-shade{transition:transform .5s var(--home-ease);transform:translate(16px,-4px)}.dark .site-theme-sun{opacity:.9;transform:translate(4.5px,-5.6px)scale(.85)}.dark .site-theme-shade{transform:translate(-2.4px,2.4px)}.site-theme-tip{font:12px var(--home-font-text);color:var(--home-ink);white-space:nowrap;background:var(--home-panel);border:1px solid var(--home-line-2);opacity:0;pointer-events:none;transition:opacity .15s, transform .2s var(--home-ease);border-radius:6px;padding:4px 8px;position:absolute;top:calc(100% + 8px);right:0;transform:translateY(-3px)}.site-theme:hover .site-theme-tip,.site-theme:focus-visible .site-theme-tip{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.site-theme-sun,.site-theme-shade,.site-theme-tip{transition:none}}@media (hover:none){.site-theme-tip{display:none}}.site-menu{border:1px solid var(--home-line);width:36px;height:36px;color:var(--home-muted);cursor:pointer;background:0 0;border-radius:8px;justify-content:center;align-items:center;display:none}@media (max-width:860px){.site-header-row{gap:10px;padding:0 16px}.header-sky,.site-header[data-docs] .header-sky{-webkit-mask-image:linear-gradient(90deg,#0000 190px,#000 240px calc(100% - 250px),#0000 calc(100% - 210px));mask-image:linear-gradient(90deg,#0000 190px,#000 240px calc(100% - 250px),#0000 calc(100% - 210px))}.site-nav,.site-ghost-label,.site-search-label,.site-search kbd{display:none}.site-search{justify-content:center;width:36px;padding:0}.site-ghost{padding:9px}.site-menu{display:inline-flex}}#nd-sidebar-mobile{background:var(--home-panel)}#nd-page h1,#nd-page h2,#nd-page h3{font-family:var(--home-font-display);letter-spacing:-.02em}#nd-page h1{font-weight:600;line-height:1.1}.planet-mark,.moon-phase{flex:none;overflow:visible}.planet-label{font-family:var(--home-font-data);fill:var(--home-muted)}.pkg-hero{--eco:var(--home-faint);border:1px solid var(--home-line);background:radial-gradient(60% 120% at 100% 50%, color-mix(in srgb, var(--eco) 12%, transparent), transparent 70%), var(--home-panel);border-radius:14px;grid-template-columns:minmax(0,1fr) 280px;align-items:center;gap:20px;padding:24px 26px;display:grid;position:relative;overflow:hidden}.pkg-text{flex-direction:column;gap:12px;min-width:0;display:flex}.pkg-kind{font:13px var(--home-font-text);color:var(--home-muted);align-items:center;gap:8px;margin:0;display:flex}.pkg-kind .planet-mark{width:18px;height:18px}.pkg-name{font:500 clamp(1.6rem, 1.2rem + 1.4vw, 2.3rem) / 1.1 var(--home-font-data);letter-spacing:-.03em;color:var(--home-ink);overflow-wrap:anywhere;margin:0}.pkg-desc{max-width:56ch;color:var(--home-muted);margin:0}.fact-sheet{grid-template-columns:auto 1fr;gap:4px 16px;margin:2px 0 0;font-size:13px;display:grid}.fact-sheet dt{color:var(--home-faint)}.fact-sheet dd{font:12.5px var(--home-font-data);color:var(--home-ink);margin:0}.fact-sheet dd.dim{color:var(--home-muted)}.pkg-links{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.pkg-links a{border:1px solid var(--home-line);color:var(--home-ink);border-radius:8px;align-items:center;gap:6px;padding:6px 12px;font-size:14px;text-decoration:none;transition:border-color .2s,background-color .2s;display:inline-flex}.pkg-links a:hover{border-color:var(--home-line-2);background:var(--home-panel-2)}.pkg-links a[data-primary]{background:var(--home-accent);border-color:var(--home-accent);color:var(--home-accent-ink)}.pkg-links a[data-primary]:hover{background:color-mix(in srgb, var(--home-accent) 88%, var(--home-ink))}.pkg-links .pkg-link-plain{border:1px dashed var(--home-line);color:var(--home-muted);border-radius:8px;align-items:center;padding:6px 12px;font-size:14px;display:inline-flex}.pkg-links svg{width:15px;height:15px}.pkg-system{width:100%;height:auto}@media (max-width:720px){.pkg-hero{grid-template-columns:1fr;padding:20px}.pkg-system{max-height:190px}}.version-line{color:var(--home-muted);align-items:center;gap:8px;margin:0;font-size:14px;display:flex}.version-line .moon-phase{width:14px;height:14px}.version-notice{color:var(--home-ink);background:var(--home-bg-2);border:1px solid var(--home-line-2);border-radius:10px;align-items:flex-start;gap:12px;padding:12px 14px;font-size:14px;display:flex}.version-notice .moon-phase{width:22px;height:22px;margin-top:1px}.version-notice p{margin:0}.version-notice b{font-weight:600}.version-notice a{color:var(--home-accent);text-underline-offset:4px;font-weight:500;text-decoration:underline}#nd-sidebar,#nd-sidebar-mobile{--eco:var(--home-accent)}:is(#nd-sidebar,#nd-sidebar-mobile):has(.planet-banner[data-ring=npm]){--eco:var(--home-npm)}:is(#nd-sidebar,#nd-sidebar-mobile):has(.planet-banner[data-ring=composer]){--eco:var(--home-composer)}:is(#nd-sidebar,#nd-sidebar-mobile):has(.planet-banner[data-ring=pypi]){--eco:var(--home-pypi)}:is(#nd-sidebar,#nd-sidebar-mobile):has(.planet-banner[data-ring=go]){--eco:var(--home-go)}:is(#nd-sidebar,#nd-sidebar-mobile):has(.planet-banner[data-ring=cargo]){--eco:var(--home-cargo)}.planet-banner{order:-1;align-items:center;gap:8px;display:flex}.planet-chip{min-width:0;color:var(--home-ink);background:var(--home-bg-2);border:1px solid var(--home-line);border-radius:10px;flex:1;align-items:center;gap:9px;padding:7px 10px;transition:border-color .2s;display:flex}.planet-chip:hover{border-color:var(--home-line-2)}.planet-chip .planet-mark{flex:none;width:24px;height:24px}.planet-chip span{min-width:0}.planet-chip b,.planet-chip small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.planet-chip b{font:500 14px var(--home-font-data)}.planet-chip small{color:var(--home-faint);font-size:11.5px}.planet-sides{background:var(--home-bg-2);border:1px solid var(--home-line);border-radius:10px;flex:none;gap:2px;padding:3px;display:flex}.planet-sides a{width:32px;height:32px;color:var(--home-muted);border-radius:7px;place-items:center;transition:color .2s,background-color .2s;display:grid;position:relative}.planet-sides a:hover{color:var(--home-ink)}.planet-sides a:focus-visible{outline:2px solid var(--home-accent);outline-offset:1px}.planet-sides a[aria-current]{color:var(--home-ink);background:var(--home-panel);box-shadow:0 1px 4px var(--home-shadow-near)}.planet-sides svg{width:16px;height:16px}.planet-sides a[aria-current] .side-sun{color:var(--home-star)}.planet-side-tip{z-index:30;font:400 12px var(--home-font-text);white-space:nowrap;color:var(--home-ink);background:var(--home-panel);border:1px solid var(--home-line);box-shadow:0 4px 12px var(--home-shadow);opacity:0;pointer-events:none;border-radius:7px;padding:4px 8px;transition:opacity .15s,transform .15s;position:absolute;top:calc(100% + 8px);right:0;transform:translateY(-2px)}@media (hover:hover){.planet-sides a:hover .planet-side-tip{opacity:1;transform:none}}.planet-sides a:focus-visible .planet-side-tip{opacity:1;transform:none}#nd-sidebar .moon-phase,#nd-sidebar-mobile .moon-phase{width:100%;height:100%;padding:2px}.station[data-level="1"]{border:1px solid #0000;border-radius:12px;margin-block:1px;transition:background-color .25s,border-color .25s,margin .25s}.station[data-level="1"][data-open]{background:var(--home-panel);border-color:var(--home-line);margin-block:6px}.station[data-level="1"][data-open][data-current]{border-color:color-mix(in srgb, var(--eco) 45%, var(--home-line))}.station[data-level="2"]{position:relative}.station-head{width:100%;min-height:34px;font:500 14px/1.35 var(--home-font-text);text-align:start;color:var(--home-ink);border-radius:10px;align-items:center;gap:10px;padding:7px 9px;transition:background-color .15s,color .15s;display:flex;position:relative}.station-head:hover{background:var(--home-bg-2)}.station[data-open]>.station-head:hover{background:0 0}.station-head:focus-visible,.orbit-item:focus-visible{outline:2px solid var(--home-accent);outline-offset:-2px}.station-head[data-active=true] .station-name{color:var(--home-accent)}.station-head svg[data-icon]{width:14px;height:14px;color:var(--home-faint);flex:none;margin-inline-start:0}.station[data-level="2"]>.station-head,.station[data-level="3"]>.station-head,.orbit-link[data-level="2"],.orbit-link[data-level="3"]{border-radius:8px;min-height:32px;padding-inline-start:30px;font-size:13.5px}.station[data-level="3"]>.station-head{color:var(--home-muted)}.orbit-link[data-active=true]{background:color-mix(in srgb, var(--eco) 10%, transparent)}.orbit-ring{flex:none;width:12px;height:12px;overflow:visible}:is(.station[data-level="2"]>.station-head,.orbit-link[data-level="2"]) .orbit-ring{width:10px;height:10px}.orbit-ring-path{fill:none;stroke:var(--home-faint);stroke-width:1.5px;transition:stroke .25s}.orbit-ring-planet{fill:var(--home-ink);opacity:0;transform-origin:0 0;transition:opacity .2s,transform .25s cubic-bezier(.16,1,.3,1);transform:scale(.4)}.station[data-current]>.station-head .orbit-ring-path{stroke:var(--eco)}.station[data-open]>.station-head .orbit-ring-planet{opacity:1;transform:none}.station[data-current][data-open]>.station-head .orbit-ring-planet{fill:var(--eco)}.station-name{flex:1;min-width:0}.station-count{min-width:18px;font:500 11.5px/1.5 var(--home-font-data);font-variant-numeric:tabular-nums;text-align:end;color:var(--home-faint);flex:none}.station-moons{flex-direction:column;gap:1px;padding:0 4px 6px;display:flex}.station[data-level="2"] .station-moons{padding:0 0 2px 22px}.station[data-level="3"] .station-moons{padding:0 0 2px 14px}.orbit-item{min-height:32px;font:400 13.5px/1.35 var(--home-font-text);color:var(--home-muted);border-radius:8px;align-items:center;gap:8px;padding:6px 8px 6px 30px;transition:color .15s,background-color .15s;display:flex;position:relative}.orbit-item[data-body=landmark]{min-height:36px;font:500 14.5px/1.35 var(--home-font-text);color:var(--home-ink);padding-inline-start:30px}.orbit-item:hover{color:var(--home-ink);background:var(--home-bg-2)}.orbit-item[data-active=true]{color:var(--home-ink);background:color-mix(in srgb, var(--eco) 10%, transparent);font-weight:500}.orbit-arc{pointer-events:none;width:24px;height:100%;position:absolute;top:0;left:0;overflow:visible}.orbit-arc path{fill:none;stroke:var(--home-line-2);stroke-width:1.2px}.orbit-dot{top:calc(50% - 3px);left:calc(var(--dot-x) - 3px);background:var(--home-panel);width:6px;height:6px;box-shadow:inset 0 0 0 1.4px var(--home-line-2);border-radius:50%;transition:background-color .15s,box-shadow .15s;position:absolute}.orbit-item[data-body=landmark] .orbit-dot{top:calc(50% - 4px);left:calc(var(--dot-x) - 4px);background:var(--home-faint);width:8px;height:8px;box-shadow:none}.orbit-item:hover .orbit-dot{background:var(--home-line-2)}.orbit-item[data-body=landmark]:hover .orbit-dot{background:var(--home-muted)}.orbit-item[data-active=true] .orbit-dot,.orbit-item[data-body=landmark][data-active=true] .orbit-dot{top:calc(50% - 4.5px);left:calc(var(--dot-x) - 4.5px);background:var(--home-accent);width:9px;height:9px;box-shadow:0 0 0 3px color-mix(in srgb, var(--home-accent) 22%, transparent)}.orbit-name{min-width:0}.orbit-separator{font:600 11px/1.4 var(--home-font-text);letter-spacing:.08em;text-transform:uppercase;color:var(--home-faint);align-items:center;gap:8px;margin:18px 9px 4px;display:flex}.orbit-separator:after{content:"";border-top:1px dotted var(--home-line-2);flex:1}.constellation{gap:10px;padding:2px 10px 11px;display:grid}.constellation-grid{grid-template-columns:repeat(auto-fill,24px);gap:2px;margin:0;padding:0;list-style:none;display:grid}.constellation-grid a{border-radius:6px;place-items:center;width:24px;height:24px;transition:background-color .15s;display:grid}.constellation-grid a:hover{background:var(--home-bg-2)}.constellation-grid a:focus-visible,.constellation-steps a:focus-visible,.constellation-all:focus-visible{outline:2px solid var(--home-accent);outline-offset:1px;border-radius:6px}:is(#nd-sidebar,#nd-sidebar-mobile) .constellation-grid .moon-phase{width:12px;height:12px;padding:0}.constellation-planet{background:var(--home-accent);width:12px;height:12px;box-shadow:0 0 0 2px var(--home-panel), 0 0 0 3.5px var(--eco);border-radius:50%}.constellation-readout{min-height:35px;font:400 12.5px/1.4 var(--home-font-text);color:var(--home-muted);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.constellation-readout b{font:500 12.5px var(--home-font-data);color:var(--home-ink);margin-inline-end:6px}.constellation-summary{color:var(--home-faint)}.constellation-steps{justify-content:space-between;display:flex}.constellation-steps a,.constellation-all{font:500 12.5px var(--home-font-data);color:var(--home-muted);align-items:center;gap:5px;transition:color .15s;display:inline-flex}.constellation-steps a:hover,.constellation-all:hover{color:var(--home-accent)}.constellation-all{font-family:var(--home-font-text);color:var(--home-accent);justify-self:start}.constellation-steps svg,.constellation-all svg{width:13px;height:13px}.constellation-legend{font:400 11px var(--home-font-text);color:var(--home-faint);flex-wrap:wrap;gap:4px 10px;margin:0;display:flex}.constellation-legend span{align-items:center;gap:4px;display:inline-flex}:is(#nd-sidebar,#nd-sidebar-mobile) .constellation-legend .moon-phase{width:10px;height:10px;padding:0}.constellation-empty{color:var(--home-faint);margin:0;padding:0 10px 10px;font-size:12.5px}@media (prefers-reduced-motion:reduce){.constellation-grid a,.constellation-steps a,.constellation-all{transition:none}}.trajectory-head{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:14px;display:flex}.trajectory-head h3{font:500 13px var(--home-font-text);color:var(--home-ink);margin:0}.trajectory-head span,.trajectory-bar-time{font:500 12px var(--home-font-data);font-variant-numeric:tabular-nums;color:var(--home-faint)}.trajectory-scroll{scrollbar-width:thin;scrollbar-color:var(--home-line-2) transparent;min-height:0;overflow-y:auto}.trajectory{position:relative}.trajectory-path{pointer-events:none;position:absolute;top:0;left:0;overflow:visible}.trajectory-ahead{fill:none;stroke:var(--home-line-2);stroke-width:1.2px;stroke-dasharray:3 4}.trajectory-read{fill:none;stroke:var(--home-accent);stroke-width:1.6px;stroke-linecap:round}.trajectory-probe{pointer-events:none;width:12px;height:12px;position:absolute;top:-6px;left:-6px}.trajectory-probe svg{width:100%;height:100%;display:block;overflow:visible}.trajectory-probe-halo{fill:var(--home-accent);opacity:.22}.trajectory-probe-body{fill:var(--home-accent)}.trajectory-probe-shade{fill:var(--home-ink);opacity:.32}.trajectory ol{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.trajectory:not([data-ready]) ol{background:repeating-linear-gradient(to bottom, var(--home-line-2) 0 3px, transparent 3px 7px) 5.4px 14px / 1.2px calc(100% - 28px) no-repeat}.trajectory li a{padding:5px 0 5px calc(var(--x) + 16px);font:400 13px/1.45 var(--home-font-text);color:var(--home-muted);text-decoration:none;transition:color .15s;display:block;position:relative}.trajectory li a:hover{color:var(--home-ink)}.trajectory li a:focus-visible{outline:2px solid var(--home-accent);outline-offset:1px;border-radius:6px}.trajectory li[data-state=current] a{color:var(--home-ink);font-weight:500}.trajectory-dot{top:calc(2px + .725em);left:calc(var(--x) - 3px);background:var(--color-fd-background);width:6px;height:6px;box-shadow:inset 0 0 0 1.3px var(--home-line-2);border-radius:50%;position:absolute}.trajectory li:is([data-state=read],[data-state=current]) .trajectory-dot{background:var(--home-accent);box-shadow:none}.trajectory-empty{color:var(--home-faint);margin:0;font-size:13px}.trajectory-top{font:500 12.5px var(--home-font-text);color:var(--home-muted);cursor:pointer;background:0 0;border:0;align-self:flex-start;align-items:center;gap:6px;margin-top:14px;padding:4px 0;transition:color .15s;display:inline-flex}.trajectory-top:hover{color:var(--home-accent)}.trajectory-top svg{width:13px;height:13px}.trajectory-bar{background:color-mix(in srgb, var(--color-fd-background) 86%, transparent);border-bottom:1px solid var(--home-line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:box-shadow .2s}.trajectory-bar[data-open]{background:var(--color-fd-background);box-shadow:0 10px 24px var(--home-shadow)}.trajectory-bar-trigger{width:100%;height:40px;font:400 13.5px var(--home-font-text);text-align:start;color:var(--home-muted);background:0 0;border:0;align-items:center;gap:10px;padding:0 16px;display:flex}.trajectory-bar-trigger:focus-visible{outline:2px solid var(--home-accent);outline-offset:-2px}.trajectory-ring{flex:none;width:20px;height:20px;overflow:visible}.trajectory-ring-track{fill:none;stroke:var(--home-line-2);stroke-width:1.5px}.trajectory-ring-read{fill:none;stroke:var(--home-accent);stroke-width:1.8px;stroke-linecap:round}.trajectory-ring-probe{fill:var(--home-accent)}.trajectory-bar-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--home-ink);flex:1;overflow:hidden}.trajectory-bar-title[data-muted]{color:var(--home-faint)}.trajectory-bar-chevron{flex:none;width:16px;height:16px;transition:transform .2s}.trajectory-bar[data-open] .trajectory-bar-chevron{transform:rotate(180deg)}.trajectory-sheet{max-height:50vh;padding:4px 16px 16px;overflow-y:auto}@media (min-width:768px){.trajectory-bar-trigger{padding:0 24px}.trajectory-sheet{padding:4px 24px 16px}}@media (prefers-reduced-motion:reduce){.station[data-level="1"],.station-head,.orbit-ring-path,.orbit-ring-planet,.orbit-item,.orbit-dot,.planet-side-tip,.trajectory-bar,.trajectory-bar-chevron{transition:none}.station-body{transition:none!important}}.horizon{--cloud-top:color-mix(in srgb, var(--home-faint) 45%, var(--home-bg));--cloud-under:color-mix(in srgb, var(--home-star) 55%, var(--home-bg));--range-far:#b4c5d3;--range-mid:#7b97ad;--range-near:#1f3f5a;--range-snow:#fbfdfe;--range-trace:#55bfc3;--horizon-pole:#14324d;--sun-glow:.85;--horizon-warm:#ff9d7a;--horizon-moon:var(--home-faint);--horizon-sky:#ff9d7a2e;color:var(--home-ink);font:400 15px/1.6 var(--home-font-text);background:linear-gradient(transparent, var(--home-bg) 96px);isolation:isolate;view-timeline:--horizon block;margin-top:44px;padding-top:96px;position:relative;overflow:hidden}.dark .horizon{--cloud-top:var(--home-line-2);--cloud-under:var(--home-star);--range-far:#223245;--range-mid:#1a2736;--range-near:#141f2c;--range-snow:#e6ecf2;--range-trace:#3ddbb6;--horizon-pole:var(--home-ink);--sun-glow:.6;--horizon-moon:var(--home-ink);--horizon-sky:#ff9d7a12}.site-header[data-docs]~.horizon{z-index:30}.horizon a,.horizon button{color:inherit;text-decoration:none}.horizon :focus-visible{outline:2px solid var(--home-accent);outline-offset:3px;border-radius:6px}.horizon-closing{z-index:2;text-align:center;max-width:22ch;font:650 clamp(1.7rem, 1.2rem + 2vw, 3rem) / 1.08 var(--home-font-display);letter-spacing:-.035em;text-wrap:balance;margin:0 auto;padding:0 16px;position:relative}.horizon-closing span{display:block}.horizon-closing a{background:linear-gradient(var(--home-star), var(--home-star)) 0 100% / 100% 2px no-repeat;padding-bottom:2px}.horizon-scene{background:linear-gradient(transparent 15%, var(--horizon-sky) 80%);height:clamp(230px,28vw,360px);margin-top:-6px;position:relative;container-type:size}.horizon-scene>svg,.horizon-clouds{width:100%;height:100%;position:absolute;inset:0}.horizon-scene>.horizon-world{aspect-ratio:3600/330;width:auto;max-width:none;height:100%;inset:0 auto auto 50%;transform:translate(-50%)}.horizon-stars circle{fill:var(--home-faint)}.horizon-stars{opacity:.7}.dark .horizon-stars{opacity:1}.horizon-twinkle{animation:horizon-twinkle var(--twinkle) ease-in-out var(--delay) infinite alternate}.horizon-scene>.horizon-shooting{opacity:0;width:160px;height:60px;animation:horizon-shoot var(--cycle) linear var(--delay) infinite;will-change:transform, opacity;position:absolute;inset:auto}.horizon-scene>.horizon-shooting-a{top:3%;left:76%}.horizon-scene>.horizon-shooting-b{top:10%;left:22%}.horizon-cloud-band{width:max(200cqw,727.27cqh);height:100cqh;animation:horizon-drift var(--drift) linear infinite;will-change:transform;position:absolute;bottom:0;left:calc(50% - max(50cqw,181.82cqh))}.horizon-cloud-band:first-child{opacity:.45}.horizon-cloud-band:nth-child(2){opacity:.65}.horizon-cloud-band:nth-child(3){opacity:.85}.horizon-clouds{-webkit-mask-image:radial-gradient(70% 120% at 50% 100%,#000 45%,#00000073 85%);mask-image:radial-gradient(70% 120% at 50% 100%,#000 45%,#00000073 85%)}.horizon-moon{fill:var(--horizon-moon);opacity:.85}.horizon-star-disc{fill:var(--home-star)}.horizon-far path{fill:var(--range-far)}.horizon-mid path{fill:var(--range-mid)}.horizon-near .horizon-rock{fill:var(--range-near)}.horizon-near .horizon-snow{fill:var(--range-snow)}.horizon-near .horizon-alpenglow{fill:#d2193b;opacity:.92}.horizon-ground-fill{fill:var(--home-bg-2);stroke:var(--home-accent);stroke-width:1.2px;stroke-opacity:.55}.horizon-trace{fill:none;stroke:var(--range-trace);stroke-width:1.5px;stroke-linejoin:round;opacity:.7}.horizon-light{--light-lit:color-mix(in srgb, var(--light) 50%, #fff)}.dark .horizon-light{--light-lit:var(--light)}.horizon-light-halo{fill:var(--light-lit);opacity:.2;transform-box:fill-box;transform-origin:50%;transition:opacity .25s,transform .25s}.horizon-light-core{fill:var(--range-near);stroke:var(--light-lit);stroke-width:2px}:is(.horizon:has(.horizon-planets a[data-spot="0"]:is(:hover,:focus-visible)) .horizon-light[data-spot="0"] .horizon-light-halo,.horizon:has(.horizon-planets a[data-spot="1"]:is(:hover,:focus-visible)) .horizon-light[data-spot="1"] .horizon-light-halo,.horizon:has(.horizon-planets a[data-spot="2"]:is(:hover,:focus-visible)) .horizon-light[data-spot="2"] .horizon-light-halo,.horizon:has(.horizon-planets a[data-spot="3"]:is(:hover,:focus-visible)) .horizon-light[data-spot="3"] .horizon-light-halo,.horizon:has(.horizon-planets a[data-spot="4"]:is(:hover,:focus-visible)) .horizon-light[data-spot="4"] .horizon-light-halo,.horizon:has(.horizon-planets a[data-spot="5"]:is(:hover,:focus-visible)) .horizon-light[data-spot="5"] .horizon-light-halo,.horizon:has(.horizon-planets a[data-spot="6"]:is(:hover,:focus-visible)) .horizon-light[data-spot="6"] .horizon-light-halo,.horizon:has(.horizon-planets a[data-spot="7"]:is(:hover,:focus-visible)) .horizon-light[data-spot="7"] .horizon-light-halo,.horizon:has(.horizon-planets a[data-spot="8"]:is(:hover,:focus-visible)) .horizon-light[data-spot="8"] .horizon-light-halo,.horizon:has(.horizon-planets a[data-spot="9"]:is(:hover,:focus-visible)) .horizon-light[data-spot="9"] .horizon-light-halo,.horizon:has(.horizon-planets a[data-spot="10"]:is(:hover,:focus-visible)) .horizon-light[data-spot="10"] .horizon-light-halo,.horizon:has(.horizon-planets a[data-spot="11"]:is(:hover,:focus-visible)) .horizon-light[data-spot="11"] .horizon-light-halo,.horizon:has(.horizon-planets a[data-spot="12"]:is(:hover,:focus-visible)) .horizon-light[data-spot="12"] .horizon-light-halo,.horizon:has(.horizon-planets a[data-spot="13"]:is(:hover,:focus-visible)) .horizon-light[data-spot="13"] .horizon-light-halo,.horizon:has(.horizon-planets a[data-spot="14"]:is(:hover,:focus-visible)) .horizon-light[data-spot="14"] .horizon-light-halo,.horizon:has(.horizon-planets a[data-spot="15"]:is(:hover,:focus-visible)) .horizon-light[data-spot="15"] .horizon-light-halo){opacity:.75;transform:scale(1.5)}.horizon-pole{fill:var(--horizon-pole)}.horizon-flag{transform-box:fill-box;transform-origin:0 100%}.horizon-flag-cloth{transform-box:fill-box;transform-origin:0;animation:7s ease-in-out infinite alternate horizon-wave}@media (prefers-reduced-motion:no-preference){.horizon[data-lowered]:not([data-summit]) .horizon-flag{transform:translateY(26px)scale(.28,.5)}.horizon[data-summit] .horizon-flag{transition:transform 1.2s cubic-bezier(.16,1,.3,1)}}.horizon-observatory{fill:var(--range-near)}.horizon-observatory .horizon-scope{stroke:var(--home-faint);stroke-width:1.2px;stroke-linecap:round}.horizon-observatory .horizon-slit{fill:var(--home-star);opacity:.7}.horizon-observatory .horizon-dome-lit{fill:none;stroke:var(--home-star);stroke-opacity:.45}.horizon-observatory .horizon-window{fill:var(--home-star)}.horizon:not([data-awake]) .h-loop{animation-play-state:paused}@keyframes horizon-wave{0%{transform:skewY(-1.6deg)scaleX(1)}to{transform:skewY(1.6deg)scaleX(.97)}}@keyframes horizon-twinkle{0%{opacity:.25}to{opacity:1}}@keyframes horizon-shoot{0%{opacity:0;transform:translate(0)}1.5%{opacity:1}7%{opacity:0;transform:translate(-220px,76px)}to{opacity:0;transform:translate(-220px,76px)}}@keyframes horizon-drift{to{transform:translate(-50%)}}@keyframes horizon-rise{0%{transform:translateY(100px)}}@keyframes horizon-glow-face{0%{opacity:0}}@keyframes horizon-glow{0%{opacity:.35}}@keyframes horizon-set{to{translate:0 24px}}@supports (animation-timeline:view()){:root{timeline-scope:--horizon}@media (prefers-reduced-motion:no-preference){.horizon-rise{animation:linear both horizon-rise;animation-timeline:--horizon;animation-range:entry 15% entry 95%}.horizon-glow{animation:linear both horizon-glow;animation-timeline:--horizon;animation-range:entry 15% entry 95%}.horizon-near .horizon-alpenglow{animation:linear both horizon-glow-face;animation-timeline:--horizon;animation-range:entry 25% entry 95%}}@media (prefers-reduced-motion:no-preference) and (min-width:768px){.site-header[data-docs]~[class*="[grid-area:sidebar]"],.site-header[data-docs]~#nd-toc{animation:linear both horizon-set;animation-timeline:--horizon;animation-range:entry entry 60%}}}@media (prefers-reduced-motion:reduce){.horizon .h-loop{animation:none}.horizon-scene>.horizon-shooting{display:none}}.horizon-surface{z-index:2;text-align:center;background:var(--home-bg-2);justify-items:center;gap:22px;margin-top:-1px;padding:10px 16px 40px;display:grid;position:relative}.horizon-planets{flex-wrap:wrap;justify-content:center;gap:10px 26px;display:flex}.horizon-planets a{font:500 14px var(--home-font-data);align-items:center;gap:8px;transition:color .2s;display:inline-flex}.horizon-planets a:hover{color:var(--home-accent)}.horizon-planets .planet-mark{width:18px;height:18px}.horizon-links{color:var(--home-muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 22px;font-size:14px;display:flex}.horizon-links a,.horizon-links button{font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0;transition:color .2s;display:inline-flex}.horizon-links a:hover,.horizon-links button:hover{color:var(--home-ink)}.horizon-links svg{width:14px;height:14px}.horizon-links kbd{font:11.5px var(--home-font-data);color:var(--home-muted);background:var(--home-bg);border:1px solid var(--home-line-2);border-radius:6px;padding:1px 6px}.horizon small{color:var(--home-faint);font-size:13px}.horizon-credit{text-wrap:balance;align-items:center;gap:8px;display:inline-flex}.horizon-credit .brand-mark{flex:none;width:24px;height:24px}.horizon small a{color:var(--home-muted);text-decoration:underline;-webkit-text-decoration-color:var(--home-line-2);text-decoration-color:var(--home-line-2);text-underline-offset:3px}#nd-notebook-layout>.horizon{grid-area:4/1/auto/-1}.diagram{--diagram-reserve:10rem;margin:1.5rem 0;container-type:inline-size}.diagram iframe{width:100%;height:calc(100cqw * var(--diagram-ratio) + var(--diagram-reserve));border:1px solid var(--home-line);background:var(--home-bg);border-radius:12px;display:block}.diagram[data-wide] iframe{height:calc(max(100cqw, 720px) * var(--diagram-ratio) + var(--diagram-reserve))}.diagram figcaption{color:var(--home-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 16px;margin-top:8px;font-size:13px;display:flex}.diagram figcaption a{min-height:24px;color:var(--home-accent);align-items:center;gap:4px;font-weight:500;text-decoration:none;display:inline-flex}.diagram figcaption a:hover{text-underline-offset:3px;text-decoration:underline}.diagram figcaption a:focus-visible{outline:2px solid var(--home-accent);outline-offset:2px;border-radius:6px}.diagram figcaption svg{width:14px;height:14px}.profile-chip{vertical-align:middle;min-height:24px;color:var(--home-ink);background:var(--home-panel);border:1px solid var(--home-line);border-radius:12px;align-items:center;gap:6px;padding:1px 9px 1px 2px;font-weight:500;text-decoration:none;transition:border-color .2s;display:inline-flex}.profile-chip:hover{border-color:var(--home-line-2)}.profile-chip:hover .profile-chip-name{text-underline-offset:3px;text-decoration:underline}.profile-chip:focus-visible{outline:2px solid var(--home-accent);outline-offset:2px}.profile-chip-avatar{width:20px;height:20px;color:var(--home-muted);background:var(--home-panel-2);border-radius:50%;flex:none;place-items:center;font-size:11px;font-weight:600;line-height:1;display:inline-grid;position:relative;overflow:hidden}.profile-chip-avatar img{object-fit:cover;border-radius:50%;width:100%;height:100%;margin:0;position:absolute;inset:0}@media (prefers-reduced-motion:reduce){.profile-chip{transition:none}}.scale-strip{font:400 13px/1.4 var(--home-font-text);color:var(--home-muted);margin:0 0 14px}.scale-strip ol{flex-wrap:wrap;align-items:center;gap:4px 6px;margin:0;padding:0;list-style:none;display:flex}.scale-strip li{align-items:center;gap:6px;min-width:0;display:flex}.scale-strip a,.scale-here{border-radius:6px;align-items:center;gap:6px;min-width:0;padding:2px 4px;display:inline-flex}.scale-strip a{color:inherit;text-decoration:none;transition:color .2s}.scale-strip a:hover{color:var(--home-ink)}.scale-strip a:focus-visible{outline:2px solid var(--home-accent);outline-offset:1px}.scale-strip [aria-current=page] .scale-here{color:var(--home-ink);font-weight:500}.scale-mark,.scale-strip .planet-mark,.scale-strip .moon-phase{flex:none;width:14px;height:14px}.scale-strip li[data-kind=side] .scale-mark{color:var(--home-star)}.scale-strip li[data-kind=orbit] .scale-mark{color:var(--home-faint)}.scale-line{font:400 12px var(--home-font-data);font-variant-numeric:tabular-nums;color:var(--home-faint);align-items:center;gap:4px;margin-left:2px;display:inline-flex}.scale-line .moon-phase{width:12px;height:12px}.scale-sep{width:12px;height:12px;color:var(--home-faint);flex:none}.scale-back{flex:none;width:14px;height:14px;display:none}@media (max-width:720px){.scale-strip ol{flex-wrap:nowrap}.scale-strip li:not([data-parent]):not([aria-current]),.scale-strip li[data-parent] .scale-sep{display:none}.scale-strip li[data-parent] .scale-back{display:block}.scale-strip li[aria-current] .scale-here span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}}
