:root{--ispark-bg: #070707;--ispark-bg-elevated: #0d0d0d;--ispark-surface: #121212;--ispark-surface-raised: #181818;--ispark-paper: #f1f1ed;--ispark-ink: #070707;--ispark-text: #f1f1ed;--ispark-text-soft: #d7d7d3;--ispark-muted: #858580;--ispark-muted-strong: #a6a6a0;--ispark-border: #303030;--ispark-border-subtle: #202020;--ispark-accent: #d24136;--ispark-accent-dark: #8f2c27;--ispark-success: #78c7a1;--ispark-font-sans: "Inter", "PingFang SC", "Microsoft YaHei", sans-serif;--ispark-font-mono: "DM Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--ispark-radius-sm: 0px;--ispark-radius-md: 0px;--ispark-shadow: 0 24px 70px rgb(0 0 0 / .38);--ispark-motion-fast: .18s ease;--ispark-motion-enter: .42s cubic-bezier(.2, .8, .2, 1)}.ispark-theme{color:var(--ispark-text);background:var(--ispark-bg);font-family:var(--ispark-font-sans)}.ispark-theme button,.ispark-theme input,.ispark-theme textarea,.ispark-theme select{font-family:inherit}.ispark-theme button:focus-visible,.ispark-theme input:focus-visible,.ispark-theme textarea:focus-visible,.ispark-theme select:focus-visible{outline:2px solid var(--ispark-accent);outline-offset:3px}:root{font-family:var(--ispark-font-sans);color:var(--ispark-text);background:var(--ispark-bg);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--page-bg: var(--ispark-bg);--panel-bg: var(--ispark-surface);--ink: var(--ispark-text);--muted: var(--ispark-muted);--faint: #62635e;--line: var(--ispark-border);--line-strong: #494949;--accent: var(--ispark-accent);--accent-soft: #24100e;--sidebar: #0d0d0d;--sidebar-ink: var(--ispark-text);--sidebar-muted: #777872;--code-bg: #0d0f10;--shadow: var(--ispark-shadow)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:var(--page-bg)}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}.app{min-height:100vh;background:var(--page-bg);color:var(--ink);transition:background .25s ease,color .25s ease}.app:not(.is-dark){--page-bg: var(--ispark-paper);--panel-bg: #e7e7e1;--ink: var(--ispark-ink);--muted: #5c5c57;--faint: #777872;--line: #b9b9b2;--line-strong: #8d8d86;--accent: #4d79ff;--accent-soft: #eaf0ff;--code-bg: #181818;--sidebar: #111111;--sidebar-ink: var(--ispark-text);--sidebar-muted: #a1a19a;--shadow: 0 20px 50px rgb(0 0 0 / .18)}.app.is-dark{--page-bg: var(--ispark-bg);--panel-bg: var(--ispark-surface);--ink: var(--ispark-text);--muted: var(--ispark-muted);--faint: #62635e;--line: var(--ispark-border);--line-strong: #494949;--accent-soft: #24100e;--code-bg: #0d0f10;--sidebar: #0d0d0d;--sidebar-ink: var(--ispark-text);--sidebar-muted: #777872;--shadow: var(--ispark-shadow)}.app:not(.is-dark){--sidebar: #111822;--sidebar-ink: #e7edf6;--sidebar-muted: #8390a3}.app:not(.is-dark) .version-select{border-color:#2b3544;color:#c0cbd9;background:#17212d}.app:not(.is-dark) .side-nav-item{color:#aebaca}.app:not(.is-dark) .side-nav-item:hover{color:#fff;background:#1a2532}.app:not(.is-dark) .side-nav-item.active{color:#fff;background:#1a2a43}.app:not(.is-dark) .nav-item-icon{color:#75859b}.app:not(.is-dark) .side-nav-item.active .nav-item-icon{color:#78a0ff}.app:not(.is-dark) .active-line{background:#6e96ff}.app:not(.is-dark) .help-card{border-color:#293646;background:#151f2b}.app:not(.is-dark) .help-icon{border-color:transparent;color:#8aabff;background:#202f52}.app:not(.is-dark) .help-card p{color:#d8e0eb}.app:not(.is-dark) .help-card a,.app:not(.is-dark) .help-card button{color:#84a5ff}.app:not(.is-dark) .help-card a:hover,.app:not(.is-dark) .help-card button:hover{color:#b4c8ff}.app:not(.is-dark) .sidebar-meta{color:#66768a}.topbar{height:68px;padding:0 clamp(16px,2vw,36px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:clamp(12px,2vw,24px);background:color-mix(in srgb,var(--panel-bg) 94%,transparent);position:sticky;top:0;z-index:30;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.brand-cluster,.top-actions,.top-nav,.brand,.search-trigger,.version-select,.doc-meta,.breadcrumbs,.doc-pagination,.pagination-card,.edit-link,.search-dialog-head{display:flex;align-items:center}.brand-cluster{flex:1 1 280px;min-width:0;gap:13px}.brand{border:0;background:transparent;gap:9px;color:var(--ink);padding:0}.brand-logo{display:block;width:24px;height:30px;object-fit:contain}.brand-name{font:800 13px/1 var(--ispark-font-sans);letter-spacing:.075em}.brand-name span{color:var(--accent);margin:0 2px}.brand-divider{height:19px;width:1px;background:var(--line-strong)}.product-name{color:var(--muted);font-size:12px}.top-nav{flex:0 0 auto;gap:clamp(18px,2vw,28px)}.top-nav-link{display:inline-flex;align-items:center;gap:5px;border:0;padding:7px 1px;background:transparent;color:var(--muted);font-size:13px;font-weight:600}.top-nav-link:hover,.top-nav-link.active{color:var(--ink)}.top-nav-link.active{position:relative}.top-nav-link.active:after{content:"";position:absolute;bottom:-19px;left:0;right:0;height:2px;background:var(--accent)}.top-actions{flex:1 1 280px;justify-content:flex-end;gap:9px}.search-trigger{gap:9px;min-width:205px;height:34px;padding:0 9px 0 11px;border:1px solid var(--line);border-radius:var(--ispark-radius-sm);color:var(--muted);background:var(--page-bg);font-size:12px;text-align:left}.search-trigger:hover{border-color:var(--line-strong);color:var(--ink)}.search-trigger kbd{display:inline-flex;align-items:center;gap:2px;margin-left:auto;padding:3px 6px;border:1px solid var(--line);border-radius:var(--ispark-radius-sm);color:var(--faint);font:500 10px/1 var(--ispark-font-mono)}.icon-button,.github-link,.dialog-close{display:grid;place-items:center;width:34px;height:34px;padding:0;border:1px solid transparent;border-radius:var(--ispark-radius-sm);background:transparent;color:var(--muted)}.icon-button:hover,.github-link:hover,.dialog-close:hover{border-color:var(--line);background:var(--page-bg);color:var(--ink)}.github-link{color:var(--muted)}.mobile-menu,.sidebar-close{display:none}.layout{display:grid;grid-template-columns:clamp(238px,17vw,286px) minmax(0,1fr);width:100%;min-height:calc(100vh - 68px)}.sidebar{position:sticky;top:68px;align-self:start;width:auto;height:calc(100dvh - 68px);min-width:0;overflow:hidden;padding:31px clamp(15px,1.2vw,20px) 24px;display:flex;flex-direction:column;background:var(--sidebar);color:var(--sidebar-ink)}.sidebar-head{display:flex;align-items:flex-start;justify-content:space-between;padding:0 13px}.eyebrow{margin:0 0 7px;color:var(--sidebar-muted);font:500 10px/1.2 var(--ispark-font-mono);letter-spacing:.12em;text-transform:uppercase}.sidebar-title{margin:0;font-size:17px;font-weight:700;letter-spacing:0}.version-select{gap:8px;height:34px;margin:24px 6px 29px;padding:0 10px;border:1px solid var(--line);border-radius:var(--ispark-radius-sm);color:var(--ispark-text-soft);background:var(--ispark-surface);font-size:11px}.version-select svg{margin-left:auto;color:var(--sidebar-muted)}.status-dot{width:6px;height:6px;border-radius:50%;background:var(--ispark-success);box-shadow:0 0 0 3px #78c7a121}.side-nav{flex:1 1 auto;min-height:0;overflow:hidden}.nav-group{margin-bottom:28px}.nav-group-title{display:flex;align-items:center;justify-content:space-between;padding:0 13px 8px;color:var(--sidebar-muted);font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.nav-group-title svg{opacity:.55}.side-nav-item{position:relative;width:100%;display:flex;align-items:center;gap:11px;height:37px;padding:0 13px;border:0;border-radius:var(--ispark-radius-sm);color:#a6a6a0;background:transparent;font-size:13px;font-weight:500;text-align:left}.side-nav-item:hover{color:#fff;background:var(--ispark-surface-raised)}.side-nav-item.active{color:#fff;background:var(--accent-soft)}.nav-item-icon{display:grid;place-items:center;width:14px;color:#777872;font:600 14px/1 var(--ispark-font-mono)}.side-nav-item.active .nav-item-icon{color:var(--accent)}.active-line{position:absolute;left:-15px;width:3px;height:21px;background:var(--accent)}.sidebar-footer{flex:0 0 auto;margin:auto 7px 0}.help-card{display:flex;align-items:flex-start;gap:11px;padding:13px 12px;border:1px solid #3b2927;border-radius:var(--ispark-radius-sm);background:#17100f}.help-icon{display:grid;place-items:center;width:27px;height:27px;border:1px solid color-mix(in srgb,var(--accent) 45%,var(--line));border-radius:var(--ispark-radius-sm);color:var(--accent);background:var(--accent-soft)}.help-card p{margin:0 0 4px;color:var(--ispark-text-soft);font-size:11px;font-weight:700}.help-card a,.help-card button{display:inline-flex;align-items:center;gap:4px;border:0;padding:0;color:var(--accent);background:transparent;font-size:10px;text-align:left}.help-card a:hover,.help-card button:hover{color:#efefeb}.sidebar-meta{display:flex;gap:6px;padding:13px 4px 0;color:#62635e;font:10px/1 var(--ispark-font-mono)}.main-content{flex:1;min-width:0;background:var(--panel-bg)}.content-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,220px);gap:clamp(44px,5vw,96px);width:100%;padding:clamp(40px,4vw,58px) clamp(28px,5vw,96px) 92px}.doc-article{width:100%;max-width:780px;min-width:0;justify-self:center}.breadcrumbs{flex-wrap:wrap;gap:7px;margin-bottom:48px;color:var(--faint);font-size:11px}.breadcrumbs strong{color:var(--muted);font-weight:600}.doc-heading{padding-bottom:32px;border-bottom:1px solid var(--line)}.doc-label{display:flex;align-items:center;gap:8px;margin-bottom:15px;color:var(--accent);font:600 11px/1 DM Mono,monospace;letter-spacing:.08em;text-transform:uppercase}.label-marker{width:7px;height:7px;border-radius:2px;background:var(--accent);transform:rotate(45deg)}.doc-heading h1{margin:0;color:var(--ink);font-size:48px;line-height:1.08;letter-spacing:0}.doc-lede{max-width:630px;margin:18px 0 20px;color:var(--muted);font-size:16px;line-height:1.75}.doc-meta{flex-wrap:wrap;gap:11px;color:var(--faint);font:10px/1.4 DM Mono,monospace}.meta-separator{width:3px;height:3px;border-radius:50%;background:var(--line-strong)}.markdown-body{padding-top:35px;color:var(--ink);font-size:15px;line-height:1.85}.markdown-body h1{display:none}.markdown-body h2{margin:45px 0 13px;font-size:24px;line-height:1.25;letter-spacing:0;scroll-margin-top:99px}.markdown-body h3{margin:28px 0 9px;font-size:17px;line-height:1.4;letter-spacing:0;scroll-margin-top:99px}.markdown-body p{margin:0 0 18px;color:var(--muted)}.markdown-body strong{color:var(--ink);font-weight:700}.markdown-body code:not(pre code){padding:2px 5px;border:1px solid var(--line);border-radius:var(--ispark-radius-sm);color:var(--ink);background:var(--page-bg);font:12px/1.2 var(--ispark-font-mono)}.markdown-body a{color:var(--accent);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--accent) 35%,transparent);text-underline-offset:3px}.markdown-body a:hover{text-decoration-color:var(--accent)}.markdown-body blockquote{margin:23px 0;padding:13px 17px;border-left:3px solid var(--accent);border-radius:0;background:var(--accent-soft)}.markdown-body blockquote p{margin:0;color:var(--ink);font-size:13px;line-height:1.7}.markdown-body ul,.markdown-body ol{margin:8px 0 22px;padding-left:23px;color:var(--muted)}.markdown-body li{margin:5px 0;padding-left:4px}.markdown-body li::marker{color:var(--accent)}.markdown-body .code-block{overflow:hidden;margin:23px 0 27px;border:1px solid var(--line);border-radius:var(--ispark-radius-sm);background:var(--code-bg);box-shadow:var(--shadow)}.markdown-body .code-toolbar{height:34px;display:flex;align-items:center;justify-content:space-between;padding:0 11px 0 14px;border-bottom:1px solid var(--line);color:var(--muted);background:var(--ispark-surface-raised);font:10px/1 var(--ispark-font-mono);letter-spacing:.08em;text-transform:uppercase}.markdown-body .copy-code{padding:4px 7px;border:1px solid var(--line-strong);border-radius:var(--ispark-radius-sm);color:var(--ispark-text-soft);background:transparent;font-size:10px;text-transform:none;letter-spacing:0}.markdown-body .copy-code:hover{border-color:var(--accent);color:var(--accent)}.markdown-body pre{overflow-x:auto;margin:0;padding:17px 18px 19px}.markdown-body pre code{color:var(--ispark-text-soft);font:12px/1.75 var(--ispark-font-mono)}.markdown-body .hljs-keyword,.markdown-body .hljs-selector-tag{color:#e17a70}.markdown-body .hljs-string,.markdown-body .hljs-attr{color:var(--ispark-success)}.markdown-body .hljs-title,.markdown-body .hljs-title.function_{color:#deded8}.markdown-body .hljs-variable,.markdown-body .hljs-params{color:#c7c7c1}.markdown-body .hljs-comment{color:#62635e}.markdown-body table{width:100%;margin:21px 0 27px;border-collapse:collapse;font-size:13px}.markdown-body th{color:var(--ink);background:var(--page-bg);font-weight:700;text-align:left}.markdown-body th,.markdown-body td{padding:10px 13px;border:1px solid var(--line)}.markdown-body td{color:var(--muted)}.markdown-body hr{margin:37px 0;border:0;border-top:1px solid var(--line)}.toc{position:sticky;top:113px;align-self:start;padding-top:39px}.toc-title{margin:0 0 14px;color:var(--ink);font-size:11px;font-weight:800;letter-spacing:.02em}.toc nav{display:flex;flex-direction:column;border-left:1px solid var(--line)}.toc a{position:relative;display:block;padding:5px 0 5px 14px;color:var(--faint);font-size:11px;line-height:1.4}.toc a.level-3{padding-left:26px;font-size:10px}.toc a:hover,.toc a.active{color:var(--accent)}.toc a.active:before{content:"";position:absolute;left:-1px;top:0;bottom:0;width:2px;background:var(--accent)}.toc-rule{margin:28px 0 17px;border-top:1px solid var(--line)}.edit-link{gap:7px;border:0;padding:0;color:var(--muted);background:transparent;font-size:10px}.edit-link:hover{color:var(--accent)}.doc-pagination{justify-content:space-between;gap:16px;margin-top:60px;padding-top:25px;border-top:1px solid var(--line)}.pagination-card{min-width:170px;max-width:48%;gap:11px;padding:11px 12px;border:1px solid var(--line);border-radius:var(--ispark-radius-sm);color:var(--ink);background:var(--panel-bg);text-align:left}.pagination-card:hover{border-color:var(--accent);color:var(--accent)}.pagination-card span{display:flex;flex-direction:column;gap:4px;font-size:12px;font-weight:700}.pagination-card small{color:var(--faint);font:10px/1 DM Mono,monospace;font-weight:400}.pagination-card.next{margin-left:auto;text-align:right}.search-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:start center;padding-top:110px;background:#000000b8;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.search-dialog{width:min(610px,calc(100vw - 32px));overflow:hidden;border:1px solid var(--line-strong);border-radius:var(--ispark-radius-sm);background:var(--panel-bg);box-shadow:var(--ispark-shadow)}.search-dialog-head{gap:10px;height:58px;padding:0 14px 0 18px;border-bottom:1px solid var(--line);color:var(--muted)}.search-dialog-head input{flex:1;min-width:0;border:0;outline:0;color:var(--ink);background:transparent;font-size:14px}.search-dialog-head input::placeholder{color:var(--faint)}.search-dialog-head .dialog-close{width:28px;height:28px}.search-results{max-height:390px;overflow-y:auto;padding:15px 9px 13px}.search-caption{margin:0 10px 8px;color:var(--faint);font:10px/1.2 DM Mono,monospace;text-transform:uppercase;letter-spacing:.08em}.search-result{width:100%;display:grid;grid-template-columns:31px 1fr 18px;align-items:center;gap:10px;padding:10px;border:0;border-radius:var(--ispark-radius-sm);color:var(--ink);background:transparent;text-align:left}.search-result:hover{background:var(--page-bg)}.result-icon{display:grid;place-items:center;width:29px;height:29px;border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);border-radius:var(--ispark-radius-sm);color:var(--accent);background:var(--accent-soft)}.search-result strong,.search-result small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-result strong{margin-bottom:3px;font-size:12px}.search-result small{color:var(--muted);font-size:10px}.search-result>svg{color:var(--faint)}.no-results{padding:34px 12px;color:var(--muted);font-size:12px;text-align:center}@media(max-width:1280px){.product-name,.brand-divider{display:none}.content-grid{grid-template-columns:minmax(0,1fr);padding-right:clamp(28px,6vw,72px);padding-left:clamp(28px,6vw,72px)}.doc-article{max-width:820px}.toc{display:none}}@media(max-width:980px){.topbar{padding:0 16px}.mobile-menu{display:grid}.brand-cluster{min-width:auto;gap:9px}.top-nav,.github-link{display:none}.layout{display:block}.sidebar{position:fixed;inset:0 auto 0 0;z-index:45;width:min(285px,calc(100vw - 48px));height:100dvh;max-height:100dvh;overflow-y:auto;transform:translate(-100%);transition:transform .24s ease;box-shadow:13px 0 38px #0000003b}.side-nav{overflow:visible}.sidebar.open{transform:translate(0)}.sidebar-close{display:grid;color:var(--ispark-muted-strong)}.mobile-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:#0000009e}.content-grid{display:block;padding:35px clamp(24px,7vw,64px) 70px}.doc-article{max-width:780px;margin:0 auto}.breadcrumbs{margin-bottom:38px}}@media(max-width:680px){.search-trigger{min-width:34px;width:34px;justify-content:center;padding:0}.search-trigger span,.search-trigger kbd{display:none}}@media(max-width:560px){.topbar{height:62px}.layout{min-height:calc(100vh - 62px)}.brand-name{font-size:12px}.theme-toggle{display:none}.content-grid{padding:28px 18px 55px}.breadcrumbs{margin-bottom:33px;font-size:10px}.doc-heading{padding-bottom:25px}.doc-heading h1{font-size:37px}.doc-lede{margin-top:15px;font-size:14px;line-height:1.7}.doc-meta{font-size:9px}.markdown-body{padding-top:28px;font-size:14px;line-height:1.8}.markdown-body h2{margin-top:36px;font-size:21px}.markdown-body h3{font-size:16px}.markdown-body .code-block{margin-right:-2px;margin-left:-2px}.markdown-body pre{padding:14px 13px 16px}.markdown-body pre code{font-size:11px}.markdown-body table{display:block;overflow-x:auto;white-space:nowrap}.doc-pagination{margin-top:42px}.pagination-card{min-width:0;padding:9px}.pagination-card span{font-size:11px}.search-overlay{padding-top:80px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
