:root{color-scheme:dark;--bg: #000;--text: #d5d5d5;--muted: #939393;--line: #202020;--hover: #202020;--strong: #f4f4f4;--code: #0a0a0a;font-family:Arial,Helvetica,sans-serif;font-synthesis:none}html[data-theme=light]{color-scheme:light;--bg: #fff;--text: #303030;--muted: #686868;--line: #e5e5e5;--hover: #eee;--strong: #111;--code: #f7f7f7}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--bg);color:var(--text);font-size:15px;line-height:1.75}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer;color:inherit}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--muted);outline-offset:5px}header{position:sticky;top:0;z-index:10;background:var(--bg);border-bottom:1px solid var(--line)}.topbar{height:84px;display:flex;align-items:center;justify-content:space-between;padding:0 38px;gap:24px}.brand{display:flex;align-items:center;gap:12px;color:var(--strong);white-space:nowrap;font-weight:600;letter-spacing:-.4px}.primary,.tools{display:flex;align-items:center;gap:12px}.primary a{padding:4px 12px;font-size:14px;white-space:nowrap}.selected{background:var(--hover);border-radius:10px}.tools{gap:20px}.search-trigger{display:flex;align-items:center;gap:12px;border:1px solid #303030;border-radius:30px;background:var(--hover);padding:7px 15px;color:#b5b5b5;font-size:13px}.search-trigger kbd{font:11px Arial,sans-serif;margin-left:18px;opacity:.65}.github{background:var(--strong);color:var(--bg);border-radius:30px;padding:6px 19px;font-size:13px}.github{display:inline-flex;align-items:center;gap:12px}.theme,.menu{background:none;border:0;font-size:23px;padding:0 8px}.menu{display:none}.layout{display:grid;grid-template-columns:230px minmax(0,800px) 205px;justify-content:space-between;gap:50px;padding:0 38px;max-width:1800px;margin:auto}.sidebar{position:sticky;top:84px;height:calc(100dvh - 84px);padding-top:34px;overflow:auto;font-size:14px}.side-home{display:block;padding:0 12px;margin-bottom:27px}.nav-group{margin-bottom:26px}.nav-group h2{font-size:13px;font-weight:600;padding:0 12px;margin:0 0 9px}.nav-group>a{display:block;padding:5px 20px;border-radius:9px;line-height:1.7;margin-bottom:2px}.nav-group>a:hover,.nav-group>a.active{background:var(--hover)}.sidebar-foot{border-top:1px solid var(--line);padding:20px 12px;font-size:12px;color:var(--muted);margin-top:36px}.sidebar-foot>span:last-of-type{margin-left:12px}.sidebar-foot>a{display:flex;justify-content:space-between;margin-top:12px}.status-dot{display:inline-block;width:5px;height:5px;background:var(--muted);border-radius:50%;vertical-align:middle;margin-right:6px}main{min-width:0;padding:32px 0 0}.page-heading{margin-bottom:55px}.page-heading h1{font-size:30px;letter-spacing:-.7px;line-height:1.3;margin:0 0 7px;font-weight:600}.page-heading p{font-size:18px;color:#aaa;margin:0;line-height:1.7}article h2{font-size:20px;line-height:1.4;letter-spacing:-.25px;margin:32px 0 9px;font-weight:600}article h2:first-child{margin-top:0}article h3{font-size:17px;margin:27px 0 9px}article p{margin:0 0 17px}article ul,article ol{padding-left:31px;margin:18px 0 27px}article li::marker{color:#64707a}article strong{font-weight:600;color:var(--strong)}article a{text-decoration:underline;text-underline-offset:4px}article code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:13px}article :not(pre)>code{background:var(--hover);padding:2px 5px;border-radius:4px}pre{position:relative;border:1px solid var(--line);border-radius:8px;background:var(--code)!important;padding:16px 48px 16px 16px;overflow:auto;line-height:1.6;margin:21px 0;color:var(--text)!important}pre code{background:transparent}pre span{color:var(--text)!important}.copy-code{position:absolute;right:11px;top:10px;border:0;background:var(--code);font-size:12px;padding:4px 7px}.toc{position:sticky;top:117px;align-self:start;padding-top:0;font-size:13px;margin-top:32px}.toc nav{border-left:1px solid var(--line);margin-bottom:17px}.toc a{display:block;padding:0 0 0 18px;margin-bottom:13px;line-height:1.6;color:var(--muted);position:relative}.toc a.active{color:var(--text)}.toc a.active:before{content:"";position:absolute;left:-1px;width:2px;height:21px;background:var(--strong)}#copy-page{background:var(--strong);border:1px solid var(--line);border-radius:7px;padding:3px 10px;color:var(--bg);font-size:11px}#copy-status{display:block;color:var(--muted);font-size:11px;margin-top:8px}table{border-collapse:collapse;font-size:13px;display:block;overflow-x:auto;margin:22px 0;width:100%}th,td{text-align:left;padding:12px;border-bottom:1px solid var(--line);vertical-align:top}th{color:var(--strong)}.next-page{border:1px solid var(--line);border-radius:10px;display:flex;align-items:center;justify-content:space-between;padding:18px 22px;margin:45px 0 30px;font-size:13px;color:var(--muted)}.next-page:hover{background:var(--hover)}.next-page strong{display:block;color:var(--text);font-size:16px}footer{display:flex;justify-content:space-between;gap:20px;font-size:11px;color:var(--muted);padding:10px 0 30px}.skip{position:fixed;top:-100px;z-index:30;background:var(--strong);color:var(--bg);padding:10px}.skip:focus{top:10px}dialog{width:min(580px,calc(100% - 30px));padding:0;border:1px solid #444;border-radius:15px;background:var(--bg);color:var(--text);top:14vh;margin-top:0;box-shadow:0 25px 100px #0008}dialog::backdrop{background:#0009;backdrop-filter:blur(5px)}.search-head{display:flex;align-items:center;gap:14px;padding:18px;border-bottom:1px solid var(--line)}.search-head input{background:none;border:0;outline:none;min-width:0;flex:1;color:var(--text)}.search-head button{background:var(--hover);border:1px solid var(--line);border-radius:5px;font-size:11px}#search-results{padding:12px;max-height:52vh;overflow:auto}#search-results a{display:block;padding:12px;border-radius:7px}#search-results a:hover{background:var(--hover)}#search-results span{display:block;font-size:12px;color:var(--muted)}.search-hint{border-top:1px solid var(--line);margin:0;padding:10px 20px;font-size:11px;color:var(--muted)}@media(min-width:1600px){.layout{grid-template-columns:230px minmax(0,870px) 210px;gap:65px}.topbar{height:84px}.brand{min-width:240px}}@media(max-width:1200px){.layout{grid-template-columns:205px minmax(0,1fr);gap:45px}.toc{display:none}.brand>span:not(.ph-icon){display:none}.primary{gap:0}.tools{gap:12px}.search-trigger kbd{display:none}}@media(max-width:760px){html{scroll-padding-top:90px}.topbar{height:65px;padding:0 20px;gap:10px}.brand>span:not(.ph-icon){display:inline;font-size:14px}.primary,.github,.search-trigger>span:nth-child(2){display:none}.search-trigger{padding:3px 10px;background:none;border:0}.tools{gap:8px}.menu{display:block;font-size:20px}.layout{display:block;padding:0 24px}.sidebar{display:none}.nav-open .sidebar{display:block;position:fixed;top:65px;left:0;bottom:0;height:calc(100dvh - 65px);width:280px;background:var(--bg);border-right:1px solid var(--line);z-index:9;padding:28px 16px;box-shadow:100px 0 0 100vw #0008}main{padding-top:30px}.page-heading{margin-bottom:38px}.page-heading h1{font-size:28px}.page-heading p{font-size:16px}body{font-size:14px}article h2{font-size:19px}footer{flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.ph-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:var(--icon-size, 18px);height:var(--icon-size, 18px);vertical-align:middle;line-height:1}.ph-icon svg{display:block;width:100%;height:100%;fill:currentColor}.theme,.menu{align-items:center;justify-content:center}.theme{display:inline-flex}.theme-moon,.menu-close,html[data-theme=light] .theme-sun{display:none}html[data-theme=light] .theme-moon{display:inline-flex}.nav-open .menu-open{display:none}.nav-open .menu-close{display:inline-flex}#copy-page,footer a{display:inline-flex;align-items:center;gap:6px}.copy-code.ph-icon{box-sizing:content-box;width:16px;height:16px}.copy-code.ph-icon:has(svg){padding:5px}.copy-code.ph-icon:not(:has(svg)){width:auto}@media(max-width:760px){.menu{display:inline-flex}.search-trigger>.ph-icon{display:inline-flex}}.brand-logo{display:block;flex-shrink:0;object-fit:contain}html[data-theme=light] .brand-logo{filter:brightness(0)}.page-pagination{display:flex;gap:16px;margin:45px 0 30px}.page-pagination .next-page{flex:1;min-width:0;margin:0;gap:16px}.back-arrow{transform:rotate(180deg)}.previous-page{justify-content:flex-start}.page-pagination>.next-page:only-child{flex-basis:100%}@media(max-width:500px){.page-pagination{flex-direction:column}}
