:root{color-scheme:light dark;--topbar-height:64px;--sidebar-width:280px;--bg:#ffffff;--bg-alt:#f5f5f7;--fg:#1f2933;--fg-muted:#52606d;--accent:#111111;--accent-strong:#000000;--accent-rgb:17, 17, 17;--border:#d9dde3;--surface:#ffffff;--code-bg:#f1f5f9;--blockquote-bg:rgba(var(--accent-rgb), 0.08);--font-sans:"Inter", "Segoe UI", sans-serif;--font-mono:"Share Tech Mono", monospace}html[data-theme=dark]{--bg:#141414;--bg-alt:#131313;--fg:#f5f5f5;--fg-muted:#b0b0b0;--accent:#f0f0f0;--accent-strong:#ffffff;--accent-rgb:255, 255, 255;--border:#1a1a1a;--surface:#131313;--code-bg:#111111;--blockquote-bg:rgba(var(--accent-rgb), 0.06)}*{box-sizing:border-box}body{margin:0;font-family:var(--font-sans);color:var(--fg);background-color:var(--bg-alt);transition:background-color .3s ease,color .3s ease}code,pre,kbd,samp{font-family:var(--font-mono)}.app{min-height:100vh;display:flex;background-color:var(--bg-alt);margin-top:var(--topbar-height)}.sidebar{display:flex;flex-direction:column;gap:1.5rem;padding:1.5rem;border-right:1px solid var(--border);background-color:var(--surface);position:fixed;top:var(--topbar-height);left:0;width:var(--sidebar-width);height:calc(100vh - var(--topbar-height));overflow-y:auto;transform:translateX(-100%);transition:transform .3s ease;z-index:20}.sidebar.show{transform:translateX(0)}.sidebar__brand{display:flex;flex-direction:column;gap:.25rem}.sidebar__title{display:inline-flex;align-items:center;gap:.75rem;color:var(--fg);text-decoration:none;font-weight:600;font-size:1.1rem;font-family:var(--font-mono)}.sidebar__logo{height:48px;width:auto;border-radius:.5rem}html[data-theme=light] .topbar__logo,html[data-theme=light] .sidebar__logo{filter:invert(1)}.sidebar__subtitle{margin:0;color:var(--fg-muted);font-size:.9rem}.sidebar__version{display:flex;flex-direction:column;gap:.35rem}.sidebar__version-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--fg-muted);font-family:var(--font-mono)}.sidebar__version-select{width:100%;padding:.55rem .65rem;border-radius:.55rem;border:1px solid var(--border);background-color:var(--bg-alt);color:inherit;font-weight:600;transition:border-color .2s ease,box-shadow .2s ease}.sidebar__version-select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px rgba(var(--accent-rgb),.2)}html[data-theme=dark] .sidebar__version-select{background-color:var(--surface)}.sidebar__search input{width:100%;padding:.6rem .75rem;border-radius:.5rem;border:1px solid var(--border);background-color:var(--bg-alt);color:inherit}.sidebar__search-results{margin-top:.75rem;display:none;flex-direction:column;gap:.5rem;background-color:var(--surface);border:1px solid var(--border);border-radius:.75rem;box-shadow:0 14px 40px rgba(15,23,42,.12);padding:.5rem;position:relative}.sidebar__search-results[data-visible=true]{display:flex}.sidebar__result{padding:.5rem .75rem;border-radius:.5rem;background-color:var(--bg-alt);text-decoration:none;color:inherit;border:1px solid transparent;display:flex;flex-direction:column;gap:.25rem}.sidebar__result:hover{border-color:var(--accent)}.sidebar__result--active{border-color:var(--accent);background-color:var(--accent);color:#fff}html[data-theme=dark] .sidebar__result--active{background-color:var(--fg);color:var(--bg);border-color:transparent}.sidebar__result mark{background-color:rgba(var(--accent-rgb),.3);color:inherit;padding:.1rem .2rem;border-radius:.25rem;font-weight:600}html[data-theme=dark] .sidebar__result mark{background-color:rgba(255,255,255,.2)}.sidebar__result--active mark{background-color:rgba(255,255,255,.3);color:inherit}.sidebar__result--count{padding:.4rem .75rem;font-size:.85rem;color:var(--fg-muted);font-weight:500;border-bottom:1px solid var(--border);margin-bottom:.25rem}.sidebar__result--empty,.sidebar__result--loading,.sidebar__result--error{padding:1rem .75rem;text-align:center;color:var(--fg-muted);font-size:.9rem}.sidebar__result--error{color:#ef4444}.sidebar__nav{display:flex;flex-direction:column;gap:.25rem;padding-bottom:3rem}.sidebar__link{padding:.55rem .75rem;border-radius:.5rem;text-decoration:none;color:var(--fg);font-weight:600}.sidebar__link:hover,.sidebar__link--active{background-color:var(--accent);color:#fff}html[data-theme=dark] .sidebar__link:hover,html[data-theme=dark] .sidebar__link--active{background-color:var(--fg);color:var(--bg)}.sidebar__group{display:flex;flex-direction:column;border-radius:.75rem;background-color:var(--bg-alt);transition:border-color .2s ease;overflow:hidden}.sidebar__group.group--open{border-color:var(--accent)}.sidebar__group-toggle{display:flex;width:100%;align-items:center;justify-content:space-between;padding:.65rem .85rem;background:0 0;border:none;color:inherit;font-size:.95rem;font-weight:600;cursor:pointer;text-align:left}.sidebar__group-toggle--active{color:var(--accent)}.sidebar__group-icon{width:.5rem;height:.5rem;border-right:1px solid;border-bottom:1px solid;transform:rotate(-45deg);transition:transform .2s ease}.sidebar__group-toggle:not(.collapsed) .sidebar__group-icon,[aria-expanded=true] .sidebar__group-icon{transform:rotate(45deg)}.sidebar__group-items{display:flex;flex-direction:column;gap:.2rem;padding:.4rem .75rem .8rem}.sidebar__group-items:not(.show){display:none}.sidebar__sublink{padding:.5rem .6rem;border-radius:.5rem;text-decoration:none;color:var(--fg-muted);font-size:.92rem;font-weight:500;font-family:var(--font-mono)}.sidebar__sublink:hover,.sidebar__sublink--active{background-color:rgba(var(--accent-rgb),.12);color:var(--accent-strong)}html[data-theme=dark] .sidebar__sublink:hover,html[data-theme=dark] .sidebar__sublink--active{background-color:rgba(255,255,255,8%);color:var(--fg)}.content{display:flex;flex-direction:column;min-height:calc(100vh - var(--topbar-height));flex-grow:1;min-width:0}.content__body{flex:1;padding:2rem;background-color:var(--bg-alt)}.content__body h1,.content__body h2,.content__body h3,.content__body h4{color:var(--fg)}.content__body h1[id],.content__body h2[id],.content__body h3[id],.content__body h4[id],.content__body h5[id],.content__body h6[id]{scroll-margin-top:calc(var(--topbar-height) + 1rem)}.content__body h1{font-size:2.4rem;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border)}.content__body h2{font-size:1.9rem;margin-top:2.5rem;margin-bottom:1.25rem;padding-bottom:.75rem;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:.6rem}.content__body h2 .heading-anchor{display:inline-flex;align-items:center;justify-content:center;width:1.2rem;height:1.2rem;border-radius:.4rem;color:#000;text-decoration:none;opacity:.8;transition:opacity .2s ease,color .2s ease,background-color .2s ease}.content__body h2:hover .heading-anchor,.content__body h2 .heading-anchor:focus{opacity:1;color:var(--accent)}.content__body h2 .heading-anchor:focus{outline:2px solid var(--accent);outline-offset:2px}.content__body h2 .heading-anchor svg{width:100%;height:100%;fill:currentColor;stroke:currentColor}html[data-theme=dark] .content__body h2 .heading-anchor{color:#fff}.content__body h3{font-size:1.5rem;margin-top:2.5rem;margin-bottom:1rem}.content__body p{line-height:1.7}.content__body ul,.content__body ol{padding-left:1.5rem;margin-bottom:1.5rem}.content__body li+li{margin-top:.4rem}.content__body a{color:var(--accent)}.doc{max-width:840px;margin:0 auto;padding:2rem}.doc__item h2 a{color:inherit;text-decoration:none}.doc__cards{display:grid;gap:1.25rem;margin-top:2rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.doc__card{display:flex;flex-direction:column;gap:.65rem;border-radius:.85rem;padding:1.5rem;text-decoration:none;color:inherit;background-color:var(--surface);border:1px solid rgba(var(--accent-rgb),.08);box-shadow:0 6px 18px rgba(15,23,42,7%);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.doc__card h2{margin:0;font-size:1.1rem}.doc__card p{margin:0;color:var(--fg-muted)}.doc__card:hover{border-color:rgba(var(--accent-rgb),.18);box-shadow:0 14px 32px rgba(15,23,42,.12);transform:translateY(-4px)}html[data-theme=dark] .doc__card{background-color:var(--bg-alt);border-color:rgba(255,255,255,8%);box-shadow:0 12px 28px rgba(0,0,0,.4)}html[data-theme=dark] .doc__card:hover{border-color:rgba(255,255,255,.16);box-shadow:0 20px 44px rgba(0,0,0,.55)}.doc__toc{margin-top:3rem;margin-bottom:3rem;padding:1.5rem;border:1px solid var(--border);background-color:var(--surface);border-radius:1rem;position:relative;display:flex;flex-direction:column;gap:1rem;box-shadow:0 12px 32px rgba(15,23,42,6%)}.doc__toc h2{margin:0;font-size:1.1rem;text-transform:uppercase;letter-spacing:.08em;font-family:var(--font-mono)}.doc__toc nav{display:flex;flex-direction:column;gap:.75rem}.doc__toc ul{list-style:none;margin:0;padding-left:0;display:flex;flex-direction:column;gap:.4rem;margin-top:1rem}.doc__toc ul ul{padding-left:1rem;border-left:1px solid var(--border);margin-left:.5rem;gap:.35rem}.doc__toc li{margin:0}.doc__toc a{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .6rem;border-radius:.5rem;color:var(--fg);text-decoration:none;transition:background-color .2s ease,color .2s ease,border-color .2s ease;border:1px solid transparent;font-family:var(--font-mono)}.doc__toc a:hover,.doc__toc a:focus{background-color:var(--accent);color:#fff;border-color:transparent}html[data-theme=dark] .doc__toc{background-color:var(--surface);box-shadow:0 8px 24px rgba(0,0,0,.4)}html[data-theme=dark] .doc__toc a:hover,html[data-theme=dark] .doc__toc a:focus{background-color:rgba(var(--accent-rgb),.35);color:var(--bg)}.doc__nav-link,.content__footer,.sidebar__group-toggle,.sidebar__link,.topbar__actions [data-theme-toggle-icon],.content__body h1,.content__body h2,.content__body h3,.content__body h4{font-family:var(--font-mono)}.doc__nav{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:3rem}.doc__nav-link--prev{grid-column:1}.doc__nav-link--next{grid-column:2}.doc__nav-link{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border:1px solid var(--border);border-radius:.85rem;text-decoration:none;background-color:var(--bg-alt);color:inherit;transition:transform .2s ease,border-color .2s ease}.doc__nav-link:hover{border-color:var(--accent);transform:translateY(-2px)}html[data-theme=dark] .doc__nav-link{background-color:var(--surface)}html[data-theme=dark] .doc__nav-link:hover{border-color:var(--fg);transform:translateY(-2px)}.doc__nav-link span{display:block}.content__footer{padding:1rem 2rem;text-align:center;color:var(--fg-muted);background-color:var(--bg)}.topbar{position:fixed;top:0;left:0;right:0;height:var(--topbar-height);display:flex;align-items:center;justify-content:space-between;padding:0 1.5rem;background-color:var(--surface);border-bottom:1px solid var(--border);z-index:30;font-family:var(--font-mono)}.topbar__brand{display:inline-flex;align-items:center;gap:.75rem;text-decoration:none;color:inherit;font-weight:600;font-size:1.05rem;font-family:var(--font-mono)}.topbar__logo{height:48px;width:auto;border-radius:.5rem}.topbar__toggle,.topbar__theme{width:40px;height:40px;border-radius:50%;border:1px solid var(--border);background-color:var(--surface);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-family:var(--font-mono);color:var(--fg);transition:color .3s ease,border-color .3s ease,background-color .3s ease}.topbar__toggle svg,.topbar__theme svg{width:24px;height:24px}.topbar__toggle:hover,.topbar__theme:hover{border-color:var(--accent)}html[data-theme=dark] .topbar__toggle,html[data-theme=dark] .topbar__theme{background-color:var(--bg-alt);color:var(--fg)}.icon{width:24px;height:24px}.icon-menu__line{stroke:currentColor;stroke-width:1.8;stroke-linecap:round;transition:transform .3s ease,opacity .3s ease;transform-box:fill-box;transform-origin:center}.topbar__toggle.is-open .icon-menu__line--top{transform:translateY(5px)rotate(45deg)}.topbar__toggle.is-open .icon-menu__line--middle{opacity:0}.topbar__toggle.is-open .icon-menu__line--bottom{transform:translateY(-5px)rotate(-45deg)}.icon-theme{transition:transform .4s ease}.icon-theme--spin{animation:icon-theme-spin .45s ease}@keyframes icon-theme-spin{from{transform:rotate(0)}to{transform:rotate(360deg)}}.icon-theme__sun circle{fill:currentColor;transition:opacity .35s ease,transform .35s ease}.icon-theme__sun-rays line{stroke:currentColor;stroke-width:1.6;stroke-linecap:round;transition:opacity .35s ease,transform .35s ease}.icon-theme__moon path{fill:currentColor;opacity:0;transform:scale(.8)rotate(-10deg);transition:opacity .35s ease,transform .35s ease}html[data-theme=dark] .icon-theme__sun circle{opacity:0;transform:scale(.6)}html[data-theme=dark] .icon-theme__sun-rays line{opacity:0;transform:rotate(25deg)}html[data-theme=dark] .icon-theme__moon path{opacity:1;transform:scale(1)rotate(0)}.topbar__actions{display:flex;align-items:center;gap:.75rem}.sidebar__overlay{position:fixed;inset:0;background:rgba(0,0,0,.5);opacity:0;visibility:hidden;transition:opacity .2s ease;z-index:15}.sidebar__overlay.show{opacity:1;visibility:visible}.content__body pre{background-color:var(--code-bg);padding:1.25rem;border-radius:.9rem;overflow:auto;border:1px solid var(--border)}.content__body code{background-color:var(--code-bg);padding:.15rem .35rem;border-radius:.4rem;font-size:.9rem}blockquote{margin:2rem 0;padding:1rem 1.25rem;border-left:5px solid var(--accent);border-radius:.75rem;background-color:var(--blockquote-bg)}.content__body blockquote .note-heading{margin:0 0 .75rem;text-align:center;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.content__body img,.content__body video,.content__body iframe{max-width:100%;border-radius:1rem;display:block;margin:1.5rem auto;box-shadow:0 20px 40px rgba(15,23,42,.18)}html[data-theme=dark] .content__body img,html[data-theme=dark] .content__body video,html[data-theme=dark] .content__body iframe{box-shadow:0 12px 32px rgba(0,0,0,.6)}@media(min-width:961px){.app{flex-direction:row}.sidebar{transform:translateX(-100%)}.sidebar.show{transform:translateX(0)}.sidebar.show~.content{margin-left:var(--sidebar-width)}.content{margin-left:0}.sidebar__overlay{display:none !important}}@media(max-width:960px){.sidebar{max-width:320px}.sidebar.show{transform:translateX(0)}}@media(max-width:600px){.content__body{padding:1rem}.doc{padding:1.5rem}.topbar{padding:0 1rem}.doc__nav{grid-template-columns:1fr}.doc__nav-link--prev,.doc__nav-link--next{grid-column:auto}}