:root{--black: #000000;--text: #171717;--muted: #6b6b6b;--line: #e7e7e7;--surface: #f8f8f8;--white: #ffffff;color:var(--text);background:var(--white);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;line-height:1.65;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html{width:100%;max-width:100%;overflow-x:hidden}*{box-sizing:border-box;min-width:0}body{width:100%;max-width:100%;min-width:320px;min-height:100vh;margin:0;background:var(--white);overflow-x:hidden}body.mobile-docs-open,body.mobile-menu-open,body.image-preview-open{overflow:hidden}a{color:inherit;text-decoration:none;overflow-wrap:anywhere}button{font:inherit}a:focus-visible,button:focus-visible{outline:2px solid var(--black);outline-offset:3px}.page{width:100%;max-width:100%;min-height:100vh}img,svg,video,canvas,iframe{max-width:100%}.header{position:sticky;top:0;z-index:10;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:26px;min-height:64px;padding:0 28px;border-bottom:1px solid var(--line);background:var(--white)}.brand{display:inline-flex;align-items:center;gap:9px}.brand-button{width:max-content;border:0;background:transparent;padding:0;cursor:pointer}.brand img{display:block;width:30px;height:auto}.brand span{color:var(--black);font-size:1.05rem;font-weight:780;letter-spacing:0;line-height:1}.nav{display:flex;justify-content:center;gap:24px;color:var(--muted);font-size:.9rem;min-width:0}.nav button{min-height:44px;border:0;background:transparent;color:inherit;padding:0 2px;cursor:pointer;white-space:nowrap}.nav-icon{display:none;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.mobile-menu-button,.mobile-menu-overlay,.mobile-menu-panel{display:none}.nav a:hover,.nav button:hover{color:var(--black)}.mobile-nav-trigger{display:none;min-height:40px;border:1px solid var(--line);background:var(--white);color:var(--black);padding:0 12px;cursor:pointer}.mobile-nav-trigger:hover{border-color:var(--black)}.language-menu{position:relative}.language-button{display:flex;min-width:154px;min-height:38px;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--line);background:var(--white);color:var(--black);padding:0 10px;cursor:pointer}.language-button span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.language-button strong{color:var(--muted);font-size:.72rem}.language-button svg,.language-option svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.language-button:hover{border-color:var(--black)}.language-list{position:absolute;top:calc(100% + 8px);right:0;width:190px;padding:6px;border:1px solid var(--line);background:var(--white)}.language-option{display:grid;grid-template-columns:minmax(0,1fr) auto 18px;align-items:center;gap:10px;width:100%;min-height:36px;border:0;background:var(--white);color:var(--text);padding:0 8px;text-align:left;cursor:pointer}.language-option:hover{background:var(--surface)}.language-option[aria-checked=true]{color:var(--black);font-weight:700}.language-option span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.language-option small{color:var(--muted);font-size:.7rem;font-weight:700}.main{width:100%;max-width:820px;margin:0 auto;padding:72px 28px 84px}.hero-logo{display:block;width:150px;height:auto;margin:0 auto 28px}h1{margin:0 0 12px;color:var(--black);font-size:5.4rem;font-weight:760;line-height:1;text-align:center;overflow-wrap:anywhere}.maintained{max-width:560px;margin:0 auto 72px;color:var(--muted);text-align:center}section{padding:34px 0;border-top:1px solid var(--line)}h2{margin:0 0 14px;color:var(--black);font-size:1.65rem;line-height:1.25;overflow-wrap:anywhere}h3{margin:0 0 8px;color:var(--black);font-size:1.08rem;overflow-wrap:anywhere}h4{margin:0 0 8px;color:var(--black);font-size:1rem;overflow-wrap:anywhere}p{margin:0 0 14px;overflow-wrap:anywhere}section>p,.path-block p{color:var(--muted)}.section-label{margin-top:26px;color:var(--black);font-weight:700}ul,ol{display:grid;gap:8px;margin:0;padding-left:20px}li{padding-left:4px}.path-block{padding:22px 0;border-top:1px solid var(--line)}.path-block:first-of-type{margin-top:8px}.link-row{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:14px}.link-row a,.text-link{color:var(--black);font-size:.94rem;text-decoration:underline;text-underline-offset:4px}.text-link{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;padding:0;cursor:pointer}.recommend-badge{display:inline-flex;min-height:20px;align-items:center;justify-content:center;border:1px solid var(--black);border-radius:4px;background:var(--white);color:var(--black);padding:0 6px;font-size:.68rem;font-weight:750;line-height:1;text-decoration:none;white-space:nowrap}.link-row a:hover,.text-link:hover{color:var(--muted)}.docs-layout{display:grid;grid-template-columns:220px minmax(0,760px) 180px;gap:40px;max-width:1260px;margin:0 auto;padding:56px 28px 84px}.docs-layout>*{min-width:0}.mobile-docs-menu,.mobile-docs-trigger,.mobile-docs-overlay,.mobile-docs-panel{display:none}.docs-sidebar{position:sticky;top:96px;align-self:start;display:grid;gap:8px;color:var(--muted);font-size:.92rem}.article-toc{position:sticky;top:96px;align-self:start;display:grid;gap:8px;color:var(--muted);font-size:.86rem}.article-toc p{margin:0 0 4px;color:var(--black);font-weight:700}.article-toc a{color:var(--muted)}.article-toc a:hover{color:var(--black)}.article-toc a.child{padding-left:12px}.docs-sidebar button,.docs-sidebar a{display:inline-flex;align-items:center;gap:6px;max-width:100%;min-height:32px;border:0;background:transparent;color:inherit;padding:0;text-align:left;cursor:pointer;overflow-wrap:anywhere}.docs-sidebar button:hover,.docs-sidebar a:hover{color:var(--black)}.sidebar-group{display:grid;gap:8px}.sidebar-title{margin:10px 0 2px;color:var(--black);font-weight:750}.product-link{margin-left:12px;font-weight:500}.product-link.active{color:var(--black)}.doc-article h1{text-align:left;font-size:4rem}.doc-article [id]{scroll-margin-top:90px}.doc-eyebrow{margin:0 0 12px;color:var(--muted);font-size:.9rem}.doc-lead{max-width:680px;margin-bottom:44px;color:var(--text);font-size:1.12rem}.doc-article section{padding:32px 0}.doc-article section:first-of-type{border-top:1px solid var(--line)}.doc-part{margin-top:18px;padding-top:42px}.doc-part h2{font-size:2rem}pre{max-width:100%;overflow-x:auto;margin:16px 0 0;padding:16px;border:1px solid var(--line);background:var(--surface)}code{color:var(--black);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9rem;line-height:1.7}.callout{margin:18px 0;padding:16px 18px;border:1px solid var(--line);background:var(--surface);overflow-wrap:anywhere}.callout strong{display:block;margin-bottom:8px;color:var(--black)}.callout p:last-child{margin-bottom:0}.callout a{display:block;width:max-content;max-width:100%;color:var(--black);text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}.callout a+a{margin-top:6px}.callout-warn{background:var(--white);border-color:var(--black)}.image-stack,.image-grid{display:grid;gap:14px}.image-grid{grid-template-columns:repeat(2,minmax(0,1fr))}figure{margin:0}.doc-image{display:block;width:100%;height:auto;border:1px solid var(--line);background:var(--white)}.doc-image-button{display:block;width:100%;border:0;background:transparent;padding:0;cursor:zoom-in}.doc-image-button:hover .doc-image{border-color:var(--black)}.image-preview{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;grid-template-rows:auto minmax(0,1fr);place-items:center;padding:76px 28px 28px;background:#fffffff0;overscroll-behavior:contain;touch-action:none}.image-preview-toolbar{position:fixed;top:14px;left:50%;z-index:82;display:inline-flex;min-height:44px;align-items:center;gap:6px;border:1px solid var(--black);background:var(--white);padding:4px;transform:translate(-50%)}.image-preview-toolbar button,.image-preview-close{display:inline-flex;width:44px;height:44px;align-items:center;justify-content:center;border:0;background:var(--white);color:var(--black);cursor:pointer;font-weight:750}.image-preview-toolbar span{min-width:52px;color:var(--black);font-size:.86rem;font-weight:750;text-align:center}.image-preview-toolbar svg,.image-preview-close svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.image-preview-stage{display:grid;width:100%;height:100%;min-height:0;place-items:center;overflow:hidden;cursor:default;touch-action:none}.image-preview-stage.is-zoomed{cursor:grab}.image-preview img{display:block;max-width:min(1120px,94vw);max-height:calc(100vh - 128px);border:1px solid var(--black);background:var(--white);object-fit:contain;transform-origin:center;transition:transform .12s ease;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.image-preview-close{position:fixed;top:14px;right:14px;z-index:83;border:1px solid var(--black)}.image-placeholder{display:grid;min-height:180px;place-items:center;border:1px solid var(--line);background:var(--surface);color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.86rem}.table-wrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--line)}table{width:100%;min-width:640px;border-collapse:collapse;font-size:.94rem}th,td{padding:12px 14px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}th{color:var(--black);background:var(--surface);font-weight:750}td:first-child{width:160px;color:var(--black);font-weight:700}tr:last-child td{border-bottom:0}.platform-guide{padding:26px 0;border-top:1px solid var(--line)}.platform-guide h3{margin-bottom:18px;font-size:1.32rem}.install-step{padding:18px 0;border-top:1px solid var(--line)}.nested-section{padding:16px 0 4px;border-top:1px solid var(--line)}.nested-section:first-of-type{margin-top:12px}.next-doc{display:grid;gap:6px;margin-top:30px;padding:22px 0 0;border-top:1px solid var(--line)}.next-doc span{color:var(--muted);font-size:.86rem}.next-doc a{color:var(--black);font-weight:700}.footer{display:flex;justify-content:space-between;gap:20px;max-width:820px;margin:0 auto;padding:26px 28px 36px;border-top:1px solid var(--line);color:var(--muted);font-size:.9rem}.footer a{color:var(--black)}@media (max-width: 1180px){.docs-layout{grid-template-columns:200px minmax(0,1fr);gap:28px;max-width:100%}.article-toc{display:none}}@media (max-width: 768px),(hover: none) and (pointer: coarse) and (max-width: 820px){.header{grid-template-columns:minmax(0,1fr) auto auto;min-height:58px;gap:8px;padding:8px 12px}.nav{display:none}.mobile-menu-button{display:inline-flex;min-width:44px;min-height:44px;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line);background:var(--white);color:var(--black);padding:0 10px;cursor:pointer}.mobile-menu-button svg,.mobile-menu-header button svg,.mobile-menu-link svg,.mobile-docs-trigger svg,.mobile-docs-header button svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}.mobile-menu-button span{max-width:72px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;font-weight:700}.mobile-menu-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:55;display:block;background:#00000047}.mobile-menu-panel{position:fixed;top:0;right:0;bottom:0;z-index:60;display:grid;width:min(360px,92vw);grid-template-rows:auto minmax(0,1fr);border-left:1px solid var(--line);background:var(--white);box-shadow:-18px 0 36px #0000001f}.mobile-menu-header,.mobile-docs-header{display:flex;min-height:58px;align-items:center;justify-content:space-between;gap:12px;padding:0 14px;border-bottom:1px solid var(--line)}.mobile-menu-header h2,.mobile-docs-header h2{margin:0;font-size:1rem;line-height:1.2}.mobile-menu-header button,.mobile-docs-header button{display:inline-flex;width:44px;height:44px;align-items:center;justify-content:center;border:0;background:transparent;color:var(--black);cursor:pointer}.mobile-menu-content{overflow-y:auto;padding:10px 14px calc(18px + env(safe-area-inset-bottom));-webkit-overflow-scrolling:touch}.mobile-menu-section{display:grid;gap:8px;padding:12px 0;border-bottom:1px solid var(--line)}.mobile-menu-section:last-child{border-bottom:0}.mobile-menu-section p{margin:0 0 2px;color:var(--muted);font-size:.82rem;font-weight:750}.mobile-menu-link{display:flex;width:100%;min-height:46px;align-items:center;gap:10px;border:1px solid var(--line);background:var(--white);color:var(--black);padding:0 12px;text-align:left;cursor:pointer}.mobile-menu-link span{min-width:0;overflow-wrap:anywhere}.mobile-menu-link .recommend-badge{margin-left:auto}.language-button{min-width:72px;max-width:84px;min-height:44px;padding:0 9px}.language-button span{display:none}.language-list{position:fixed;top:58px;right:8px;width:min(248px,calc(100vw - 16px));z-index:65}.main{padding:56px 18px 64px}h1{font-size:3.4rem}.doc-article h1{font-size:2.8rem}.maintained{margin-bottom:56px}.footer{flex-direction:column;padding-right:18px;padding-left:18px}.docs-layout{grid-template-columns:1fr;gap:28px;width:100%;max-width:100%;padding:34px 18px 96px}.docs-sidebar{display:none}.mobile-docs-trigger{position:fixed;right:14px;bottom:calc(14px + env(safe-area-inset-bottom));z-index:45;display:inline-flex;max-width:calc(100vw - 28px);min-height:46px;align-items:center;justify-content:center;gap:8px;border:1px solid var(--line);background:var(--black);color:var(--white);padding:0 14px;cursor:pointer;font-weight:750}.mobile-docs-trigger span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-docs-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:68;display:block;background:#00000047}.mobile-docs-panel{position:fixed;right:0;bottom:0;left:0;z-index:70;display:grid;max-height:min(74vh,620px);grid-template-rows:auto minmax(0,1fr);border-top:1px solid var(--line);background:var(--white);box-shadow:0 -18px 36px #0000001f}.mobile-docs-list{overflow-y:auto;padding:12px 14px calc(18px + env(safe-area-inset-bottom));-webkit-overflow-scrolling:touch}.mobile-docs-group{display:grid;gap:8px;padding:0 0 14px}.mobile-docs-group .product-link{display:flex;width:100%;min-height:46px;align-items:center;justify-content:space-between;gap:8px;border:1px solid var(--line);background:var(--white);color:var(--black);padding:0 12px;text-align:left}.article-toc{position:static;order:-1;display:none}.image-grid{grid-template-columns:1fr}pre{white-space:pre-wrap;overflow-x:hidden}code{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}table{min-width:0;table-layout:fixed}th,td{overflow-wrap:anywhere;word-break:break-word}td:first-child{width:auto}}@media (max-width: 560px){.header{grid-template-columns:minmax(0,1fr) auto auto;padding:8px 10px;gap:8px}.brand span{font-size:.96rem}.mobile-menu-button{min-width:46px;padding:0 11px}.main{padding:34px 14px 48px}.page{padding-bottom:0}.hero-logo{width:96px;margin-bottom:18px}h1{font-size:2.35rem;line-height:1.08}h2{font-size:1.28rem}.doc-article h1{font-size:1.78rem;line-height:1.16}.doc-lead{font-size:1rem;margin-bottom:28px}section{padding:26px 0}.doc-article section{padding:24px 0}.docs-layout{gap:18px;padding:28px 14px 94px}.sidebar-title{margin:0 0 4px}.sidebar-group{gap:8px}.product-link{margin-left:0}.product-link.active{border-color:var(--black)!important}.callout{padding:14px}pre{padding:13px}code{font-size:.8rem}table{font-size:.88rem}th,td{padding:8px 7px}.image-preview{padding:72px 14px 76px}.image-preview-toolbar{top:auto;bottom:calc(14px + env(safe-area-inset-bottom))}.image-preview img{max-width:96vw;max-height:calc(100vh - 160px)}.footer{padding:22px 14px 30px}}@media (max-width: 430px){.header{padding:8px 10px}.mobile-menu-button span{display:none}.mobile-menu-panel{width:min(340px,94vw)}.main{padding:30px 12px 44px}.docs-layout{padding:24px 12px 92px}.doc-article h1{font-size:1.62rem}h1{font-size:2.12rem}h2{font-size:1.2rem}h3{font-size:1rem}.callout{padding:12px}pre{padding:11px}code{font-size:.76rem}table{font-size:.8rem}th,td{padding:6px}.docs-sidebar{padding:10px}.product-link{min-height:44px;padding:0 10px!important}}@media (max-width: 380px){.brand span{display:none}h1{font-size:2rem}.doc-article h1{font-size:1.55rem}.mobile-menu-panel{width:100vw}}
