.docs-shell{--docs-subbar-h:48px;background:var(--card);grid-template-rows:auto auto minmax(0,1fr);height:100dvh;display:grid}.docs-header{border-bottom:1px solid var(--line);background:var(--card);align-items:center;gap:24px;height:56px;padding:0 20px;display:flex}.docs-brand{font-size:var(--fs-label);color:var(--fg);white-space:nowrap;align-items:baseline;gap:7px;font-weight:600;text-decoration:none;display:flex}.docs-brand-tag{font-size:var(--fs-eyebrow);letter-spacing:1.5px;text-transform:uppercase;color:var(--fg-faint);font-weight:500}.docs-header-nav{align-items:center;gap:18px;display:flex}.docs-header-nav a,.docs-header-nav button{font-size:var(--fs-label);color:var(--fg-label);transition:color var(--t-fast);text-decoration:none}.docs-header-nav button{background:0 0;padding:0}.docs-header-nav a:hover,.docs-header-nav button:hover{color:var(--fg)}.docs-header-nav .docs-suggest-btn{height:var(--ctl-h);border:1px solid var(--line);border-radius:var(--r-ctrl);background:var(--card-inset);color:var(--fg-label);align-items:center;gap:6px;padding:0 10px;display:inline-flex}.docs-suggest-btn span{width:14px;height:14px;color:var(--fg);place-items:center;font-size:17px;line-height:1;display:grid}.docs-header-nav .docs-suggest-btn:hover{border-color:var(--handle);background:var(--card)}.docs-header-end{align-items:center;gap:6px;margin-left:auto;display:flex}.docs-icon-btn{width:var(--ctl-h);height:var(--ctl-h);color:var(--fg-muted);border-radius:var(--r-ctrl);transition:background var(--t-fast), color var(--t-fast);place-items:center;display:grid}.docs-icon-btn:hover{background:var(--card-inset);color:var(--fg)}.docs-icon-btn svg{width:16px;height:16px}.docs-header-cta{height:var(--ctl-h);background:var(--inverse-bg);color:var(--inverse-fg);border-radius:var(--r-ctrl);font-size:var(--fs-ui);white-space:nowrap;align-items:center;padding:0 14px;font-weight:500;text-decoration:none;display:inline-flex}.docs-body{grid-template-columns:260px minmax(0,1fr);min-height:0;display:grid}.docs-nav{border-right:1px solid var(--line);padding:20px 0 40px;overflow-y:auto}.docs-nav-section{padding-top:14px}.docs-nav-title{font-size:var(--fs-eyebrow);letter-spacing:1.5px;text-transform:uppercase;color:var(--fg-faint);padding:0 20px 8px;font-weight:500}.docs-nav-rail{border-left:1px solid var(--line);margin-left:20px}.docs-nav-link{font-size:var(--fs-label);line-height:var(--lh-label);color:var(--fg-muted);transition:color var(--t-fast);align-items:center;gap:8px;padding:6px 16px 6px 14px;text-decoration:none;display:flex;position:relative}.docs-nav-link:hover{color:var(--fg)}.docs-nav-link.active{color:var(--fg);font-weight:500}.docs-nav-link.active:before{content:"";background:var(--fg);width:2px;position:absolute;top:4px;bottom:4px;left:-1px}.docs-main{scrollbar-gutter:stable both-edges;overflow:clip auto}.docs-article{box-sizing:border-box;width:100%;min-width:0;max-width:720px;color:var(--fg-body);margin:0 auto;padding:48px 40px 96px;font-size:15px;line-height:26px}.docs-eyebrow{font-size:var(--fs-eyebrow);letter-spacing:1.5px;text-transform:uppercase;color:var(--fg-faint);margin:0 0 10px;font-weight:500}.docs-eyebrow a{color:inherit;text-decoration:none}.docs-eyebrow a:hover{color:var(--fg-muted)}.docs-article h1{letter-spacing:-.4px;color:var(--fg);margin:0 0 18px;font-size:30px;font-weight:600;line-height:38px}.docs-article h2{color:var(--fg);margin:40px 0 12px;font-size:17px;font-weight:600;line-height:25px}.docs-article p{margin:0 0 16px}.docs-lead{color:var(--fg-muted);font-size:17px;line-height:29px}.docs-article strong{color:var(--fg);font-weight:500}.docs-article a{color:var(--fg);text-underline-offset:2px;text-decoration:underline}.docs-list{margin:0 0 16px;padding-left:20px}.docs-list li{margin-bottom:8px}.docs-article code{background:var(--card-inset);border:1px solid var(--line);border-radius:var(--r-chip);color:var(--fg);padding:1px 5px;font-family:ui-monospace,SFMono-Regular,monospace;font-size:13px}.docs-code{background:var(--card-inset);border:1px solid var(--line);border-radius:var(--r-card);margin:0 0 16px;padding:14px 16px;overflow-x:auto}.docs-code code{background:0 0;border:none;padding:0;font-size:13px;line-height:22px}.docs-note{background:var(--card-soft);border:1px solid var(--line);font-size:var(--fs-label);line-height:var(--lh-label);color:var(--fg-muted);margin:0 0 16px;padding:12px 14px}.docs-next{border-top:1px solid var(--line);margin-top:40px;padding-top:20px}.docs-next a{font-weight:500;text-decoration:none}.docs-table-wrap{border:1px solid var(--line);margin:0 0 16px;overflow-x:auto}.docs-table{border-collapse:collapse;width:100%;font-size:var(--fs-label)}.docs-table th,.docs-table td{text-align:left;vertical-align:top;border-bottom:1px solid var(--line);padding:10px 12px}.docs-table th{font-size:var(--fs-eyebrow);letter-spacing:1.5px;text-transform:uppercase;color:var(--fg-faint);background:var(--card-soft);font-weight:500}.docs-table tr:last-child td{border-bottom:none}.docs-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin:24px 0 8px;display:grid}.docs-article a.docs-preset,.docs-article a.docs-preset:hover{text-decoration:none}.docs-preset-id{font-size:var(--fs-micro);text-align:center;color:var(--fg-faint);text-overflow:ellipsis;white-space:nowrap;background:0 0;border:none;padding:0;line-height:14px;overflow:hidden}.docs-ctl-list{flex-direction:column;margin:24px 0 8px;display:flex}.docs-ctl{border-top:1px solid var(--line);padding:20px 0}.docs-ctl:last-child{border-bottom:1px solid var(--line)}.docs-ctl-head{align-items:baseline;gap:10px;margin-bottom:14px;display:flex}.docs-ctl-head code{font-size:var(--fs-label);color:var(--inverse-fg);background:var(--inverse-bg);border-radius:var(--r-chip);border:none;padding:2px 7px;font-weight:500}.docs-ctl-head span{font-size:var(--fs-label);color:var(--fg);font-weight:500}.docs-ctl-body{grid-template-columns:280px minmax(0,1fr);align-items:start;gap:24px;display:grid}.docs-ctl-demo{padding:14px var(--pad-sect);background:var(--card);border:1px solid var(--line)}.docs-ctl-side p{font-size:var(--fs-label);line-height:var(--lh-label);color:var(--fg-muted);margin:0 0 12px}.docs-ctl-readout{flex-direction:column;gap:4px;display:flex}.docs-ctl-readout span{font-size:var(--fs-eyebrow);letter-spacing:1.5px;text-transform:uppercase;color:var(--fg-faint)}.docs-ctl-readout code{background:var(--card-inset);border:1px solid var(--line);color:var(--fg-body);white-space:nowrap;padding:6px 8px;font-size:12px;overflow-x:auto}@media (max-width:919px){.docs-header{gap:14px;padding:0 14px}.docs-header-nav{display:none}.docs-brand{min-width:0}.docs-brand-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.docs-header-end{gap:2px}.docs-header-cta{padding:0 10px}.docs-ctl-body{grid-template-columns:minmax(0,1fr);gap:14px}}.docs-article h3{font-size:var(--fs-label);line-height:var(--lh-label);color:var(--fg);margin:28px 0 10px;font-weight:600}.docs-ez{flex-direction:column;gap:16px;margin:24px 0 8px;display:flex}.docs-ez-block{border:1px solid var(--line);background:var(--card)}.docs-ez-block-head{border-bottom:1px solid var(--line);background:var(--card-soft);align-items:baseline;gap:10px;padding:11px 16px;display:flex}.docs-ez-block-head span{font-size:var(--fs-label);color:var(--fg);font-weight:500}.docs-ez-block-head em{font-style:normal;font-size:var(--fs-meta);color:var(--fg-faint);font-variant-numeric:tabular-nums;margin-left:auto}.docs-ez-lane{padding:16px 16px 0}.docs-ez-runway{background:var(--card-inset);border:1px solid var(--line);height:56px;position:relative}.docs-ez-square{background:var(--fg);width:38px;height:38px;position:absolute;top:50%;transform:translate(-50%,-50%)}.docs-ez-ruler{height:26px;position:relative}.docs-ez-ruler i{background:var(--handle);opacity:.5;width:2px;height:14px;position:absolute;top:4px;transform:translate(-50%)}.docs-ez-row{align-items:flex-end;gap:12px;padding:4px 16px 0;display:flex}.docs-ez-play{height:var(--ctl-h);background:var(--inverse-bg);color:var(--inverse-fg);border-radius:var(--r-ctrl);font-size:var(--fs-ui);flex:none;padding:0 16px;font-weight:500}.docs-ez-scrub{flex:1;min-width:0}.docs-ez-note{font-size:var(--fs-meta);color:var(--fg-muted);margin:0;padding:12px 16px 16px;line-height:16.5px}.docs-ez-adjust{grid-template-columns:200px minmax(0,1fr);align-items:start;gap:20px;padding:16px;display:grid}.docs-ez-editor{flex-direction:column;gap:8px;display:flex}.docs-ez-adjust-side p{font-size:var(--fs-label);line-height:var(--lh-label);color:var(--fg-muted);margin:0 0 12px}.docs-ez-readout{flex-direction:column;gap:4px;display:flex}.docs-ez-readout span{font-size:var(--fs-eyebrow);letter-spacing:1.5px;text-transform:uppercase;color:var(--fg-faint)}.docs-ez-readout code{background:var(--card-inset);border:1px solid var(--line);color:var(--fg-body);white-space:nowrap;padding:8px 10px;font-size:12px;overflow-x:auto}.docs-ez-group{padding:16px 16px 4px}.docs-ez-group+.docs-ez-group{padding-top:0}.docs-ez-group:last-child{padding-bottom:16px}.docs-ez-group-head{align-items:baseline;gap:10px;margin-bottom:10px;display:flex}.docs-ez-group-head span{font-size:var(--fs-label);color:var(--fg);font-weight:500}.docs-ez-group-head em{font-size:var(--fs-meta);color:var(--fg-faint);font-style:normal}.docs-ez-grid{grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:8px;display:grid}.docs-ez-card{background:var(--card-soft);border:1px solid var(--line);transition:border-color var(--t-fast);flex-direction:column;gap:6px;padding:7px;display:flex}.docs-ez-card svg{aspect-ratio:3/2;width:100%;display:block}.docs-ez-curve{fill:none;stroke:var(--fg-body);stroke-width:1.6px}.docs-ez-card span{font-size:var(--fs-micro);color:var(--fg-muted);text-align:center}.docs-ez-card:hover{border-color:var(--handle)}.docs-ez-card.active{border-color:var(--fg);background:var(--card-inset)}.docs-ez-card.active span{color:var(--fg)}@media (max-width:919px){.docs-ez-adjust{grid-template-columns:minmax(0,1fr)}}.docs-mk{flex-direction:column;gap:14px;margin:24px 0 8px;display:flex}.docs-mk-block{border:1px solid var(--line);background:var(--card)}.docs-mk-block-head{border-bottom:1px solid var(--line);background:var(--card-soft);align-items:baseline;gap:10px;padding:11px 16px;display:flex}.docs-mk-index{font-size:var(--fs-micro);font-variant-numeric:tabular-nums;color:var(--fg-faint);border:1px solid var(--line);border-radius:var(--r-chip);padding:3px 5px;line-height:1}.docs-mk-name{font-size:var(--fs-label);color:var(--fg);font-weight:500}.docs-mk-block-head em{font-style:normal;font-size:var(--fs-meta);color:var(--fg-faint);margin-left:auto}.docs-mk-body{grid-template-columns:262px minmax(0,1fr);align-items:start;gap:20px;padding:16px;display:grid}.docs-mk-panel{background:var(--card-soft);border:1px solid var(--line)}.docs-mk-rows{padding:14px var(--pad-sect);gap:var(--gap-row);flex-direction:column;display:flex}.docs-mk-side p{font-size:var(--fs-label);line-height:var(--lh-label);color:var(--fg-muted);margin:0 0 12px}.docs-mk-side p:last-child{margin-bottom:0}.docs-mk-side .docs-mk-governs{color:var(--fg);font-weight:500}@media (max-width:919px){.docs-mk-body{grid-template-columns:minmax(0,1fr)}}.docs-feedback{border-top:1px solid var(--line);box-sizing:border-box;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;min-width:0;margin-top:48px;padding-top:20px;display:grid}.docs-feedback-q{font-size:var(--fs-label);color:var(--fg-muted)}.docs-feedback-actions{justify-self:end;gap:8px;display:flex}.docs-feedback-btn{height:var(--ctl-h);background:var(--card);border:1px solid var(--line);border-radius:var(--r-ctrl);font-size:var(--fs-ui);color:var(--fg-label);transition:border-color var(--t-fast), color var(--t-fast), background var(--t-fast);align-items:center;gap:7px;padding:0 14px;display:inline-flex}.docs-feedback-btn:hover{border-color:var(--handle);color:var(--fg);background:var(--card-inset)}.docs-feedback-btn svg{width:15px;height:15px}.docs-feedback-undo{font-size:var(--fs-meta);color:var(--fg-faint);text-underline-offset:2px;justify-self:end;text-decoration:underline}.docs-feedback-undo:hover{color:var(--fg-muted)}.docs-feedback-detail,.docs-idea{grid-column:1/-1;width:100%;min-width:0}.docs-feedback-detail{flex-direction:column;gap:8px;padding-top:4px;display:flex}.docs-feedback-detail label,.docs-idea label{font-size:var(--fs-label);color:var(--fg);font-weight:500}.docs-feedback-detail textarea,.docs-idea input{box-sizing:border-box;border:1px solid var(--line);border-radius:var(--r-ctrl);background:var(--card-inset);width:100%;min-width:0;color:var(--fg-body);font:inherit;outline:none}.docs-feedback-detail textarea{resize:vertical;min-height:88px;padding:10px 11px;line-height:1.5}.docs-idea input{height:var(--ctl-h);padding:0 10px}.docs-feedback-detail textarea:focus,.docs-idea input:focus{border-color:var(--handle)}.docs-feedback-detail-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.docs-feedback-cancel,.docs-feedback-send,.docs-idea-row a{min-height:var(--ctl-h);border:1px solid var(--line);border-radius:var(--r-ctrl);font-size:var(--fs-ui);justify-content:center;align-items:center;padding:0 12px;text-decoration:none;display:inline-flex}.docs-feedback-cancel{background:var(--card);color:var(--fg-muted)}.docs-feedback-send,.docs-idea-row a{background:var(--inverse-bg);color:var(--inverse-fg)}.docs-feedback-send.disabled,.docs-idea-row a.disabled{opacity:.38;pointer-events:none}.docs-feedback-hint,.docs-idea p{font-size:var(--fs-meta);color:var(--fg-faint);margin:0;line-height:16px}.docs-idea{border-top:1px solid var(--line);flex-direction:column;gap:8px;margin-top:8px;padding-top:18px;display:flex}.docs-idea-row{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}@media (max-width:520px){.docs-idea-row{grid-template-columns:minmax(0,1fr)}.docs-idea-row a{box-sizing:border-box;width:100%}}.docs-menu-btn{display:none}@media (max-width:919px){.docs-body{grid-template-columns:minmax(0,1fr);position:relative}.docs-nav{z-index:40;background:var(--card);border-right:none;border-bottom:1px solid var(--line);visibility:hidden;width:auto;max-width:none;max-height:calc(100dvh - 56px);padding:14px 0 20px;transition:transform .18s ease-out;position:fixed;inset:56px 0 auto;transform:translateY(-100%)}.docs-nav.is-open{visibility:visible;transform:translateY(0)}.docs-scrim{z-index:39;background:var(--stage-shadow);border:none;position:fixed;inset:56px 0 0}.docs-article{padding:32px 20px 64px}.docs-article h1{font-size:25px;line-height:32px}}@media (prefers-reduced-motion:reduce){.docs-nav{transition:none}}.docs-nav-foot{display:none}@media (max-width:919px){.docs-repo-link{display:none}.docs-nav-foot{border-top:1px solid var(--line);flex-direction:column;gap:2px;margin:14px 20px 0;padding-top:12px;display:flex}.docs-nav-foot a,.docs-nav-foot button{width:100%;font-size:var(--fs-label);color:var(--fg-muted);background:0 0;border:none;align-items:center;gap:9px;padding:7px 0;text-decoration:none;display:flex}.docs-nav-foot a:hover,.docs-nav-foot button:hover{color:var(--fg)}.docs-nav-foot svg{flex:none;width:15px;height:15px}}.docs-subbar{display:none}@media (max-width:919px){.docs-subbar{height:var(--docs-subbar-h);border-bottom:1px solid var(--line);background:var(--card);align-items:center;gap:10px;padding:0 14px;display:flex}.docs-subbar .docs-searchbtn{flex:1;width:auto;min-width:0;margin:0}.docs-menu-btn{height:var(--ctl-h);background:var(--card-inset);border:1px solid var(--line);border-radius:var(--r-ctrl);color:var(--fg-label);font-size:var(--fs-ui);flex:none;align-items:center;gap:7px;padding:0 11px;font-weight:500;display:flex}.docs-menu-btn:hover{border-color:var(--handle);color:var(--fg)}.docs-menu-btn svg{width:15px;height:15px}.docs-nav>.docs-searchbtn{display:none}.docs-nav{top:calc(56px + var(--docs-subbar-h));max-height:calc(100dvh - 56px - var(--docs-subbar-h))}.docs-scrim{inset:calc(56px + var(--docs-subbar-h)) 0 0 0}}.docs-searchbtn{width:calc(100% - 40px);height:var(--ctl-h);background:var(--card-inset);border:1px solid var(--line);border-radius:var(--r-ctrl);text-align:left;align-items:center;gap:9px;margin:0 20px 10px;padding:0 8px 0 9px;display:flex}.docs-searchbtn:hover{border-color:var(--handle)}.docs-searchbtn-ico{color:var(--fg-faint);flex:none;place-items:center;display:grid}.docs-searchbtn-label{min-width:0;font-size:var(--fs-ui);color:var(--fg-faint);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.docs-searchbtn-kbd{text-align:center;min-width:34px;font-family:inherit;font-size:var(--fs-micro);border:1px solid var(--line);border-radius:var(--r-chip);background:var(--card);color:var(--fg-faint);flex:none;padding:3px 5px;line-height:1}.docs-palette-layer{z-index:60;position:fixed;inset:0}.docs-palette-scrim{background:var(--stage-shadow);border:none;position:absolute;inset:0}.docs-palette{background:var(--card);border:1px solid var(--line);width:min(560px,100vw - 28px);max-height:min(64vh,520px);box-shadow:0 18px 48px var(--stage-shadow);flex-direction:column;display:flex;position:absolute;top:14vh;left:50%;transform:translate(-50%)}.docs-palette-field{border-bottom:1px solid var(--line);flex:none;align-items:center;gap:10px;height:48px;padding:0 12px;display:flex}.docs-palette-ico{color:var(--fg-faint);place-items:center;display:grid}.docs-palette-input{min-width:0;color:var(--fg-body);background:0 0;border:none;outline:none;flex:1;font-size:15px}.docs-palette-input::placeholder{color:var(--fg-faint)}.docs-palette-esc{font-family:inherit;font-size:var(--fs-micro);border:1px solid var(--line);border-radius:var(--r-chip);color:var(--fg-faint);padding:3px 5px;line-height:1}.docs-palette-list{flex:1;min-height:0;padding:6px 0;overflow-y:auto}.docs-palette-empty{font-size:var(--fs-label);color:var(--fg-faint);margin:0;padding:14px}.docs-palette-group{font-size:var(--fs-eyebrow);letter-spacing:1.5px;text-transform:uppercase;color:var(--fg-faint);padding:10px 14px 5px;font-weight:500}.docs-palette-hit{text-align:left;align-items:baseline;gap:10px;width:100%;padding:8px 14px;display:flex}.docs-palette-hit.active{background:var(--card-inset)}.docs-palette-hit-title{font-size:var(--fs-label);color:var(--fg);flex:1}.docs-palette-hit-meta{font-size:var(--fs-micro);color:var(--fg-faint)}.docs-palette-foot{border-top:1px solid var(--line);background:var(--card-soft);font-size:var(--fs-micro);color:var(--fg-faint);flex:none;gap:16px;padding:9px 14px;display:flex}.docs-palette-foot kbd{border:1px solid var(--line);border-radius:var(--r-chip);background:var(--card);margin-right:4px;padding:2px 4px;font-family:inherit}.docs-idea-dialog{background:var(--card);border:1px solid var(--line);width:min(560px,100vw - 28px);box-shadow:0 18px 48px var(--stage-shadow);padding:18px;position:absolute;top:14vh;left:50%;transform:translate(-50%)}.docs-idea-dialog-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.docs-idea-dialog-head .docs-eyebrow{margin:0 0 4px}.docs-idea-dialog-head h2{color:var(--fg);margin:0;font-size:20px;line-height:26px}.docs-idea-dialog-head button{border:1px solid var(--line);color:var(--fg-faint);font-size:var(--fs-micro);padding:3px 6px}.docs-idea-dialog>label{font-size:var(--fs-label);color:var(--fg);margin-bottom:7px;display:block}.docs-idea-dialog textarea{box-sizing:border-box;resize:vertical;border:1px solid var(--line);border-radius:var(--r-ctrl);background:var(--card-inset);width:100%;min-width:0;min-height:120px;color:var(--fg-body);font:inherit;outline:none;padding:10px 11px;line-height:1.5}.docs-idea-dialog textarea:focus{border-color:var(--handle)}.docs-idea-dialog-foot{align-items:center;gap:12px;margin-top:12px;display:flex}.docs-idea-dialog-foot p{font-size:var(--fs-meta);color:var(--fg-faint);flex:1;margin:0}.docs-idea-dialog-foot a{min-height:var(--ctl-h);background:var(--inverse-bg);color:var(--inverse-fg);border-radius:var(--r-ctrl);font-size:var(--fs-ui);justify-content:center;align-items:center;padding:0 13px;text-decoration:none;display:inline-flex}.docs-idea-dialog-foot a.disabled{opacity:.38;pointer-events:none}@media (max-width:520px){.docs-idea-dialog{padding:16px;top:8vh}.docs-idea-dialog-foot{flex-direction:column;align-items:stretch}.docs-idea-dialog-foot a{box-sizing:border-box;width:100%}}@media (max-width:919px){.docs-palette{max-height:74vh;top:8vh}}.docs-article kbd{font-family:inherit;font-size:var(--fs-micro);border:1px solid var(--line);border-radius:var(--r-chip);background:var(--card-inset);color:var(--fg-body);padding:2px 5px;line-height:1}@media (max-width:319px){.docs-header-cta,.docs-brand-tag{display:none}}
