@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-cyrillic-ext-wght-normal.BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-cyrillic-wght-normal.DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-greek-ext-wght-normal.DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-greek-wght-normal.CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-vietnamese-wght-normal.CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-latin-ext-wght-normal.DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-latin-wght-normal.Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-cyrillic-wght-normal.D73BlboJ.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-greek-wght-normal.Bw9x6K1M.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-vietnamese-wght-normal.Bt-aOZkq.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-latin-ext-wght-normal.DBQx-q_a.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-latin-wght-normal.B9CIFXIH.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--font-sans:"Inter Variable", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono Variable", ui-monospace, SFMono-Regular, Menlo, monospace;--bg:#fff;--bg-subtle:#f7f7f8;--bg-muted:#efeff1;--fg:#18181b;--fg-muted:#5f5f69;--fg-subtle:#8a8a94;--border:#e4e4e7;--border-strong:#d4d4d8;--brand:#7c3aed;--accent:var(--brand);--accent-fg:color-mix(in srgb, var(--brand) 70%, #000);--accent-soft:color-mix(in srgb, var(--brand) 9%, #fff);--accent-solid:color-mix(in srgb, var(--brand) 70%, #000);--code-bg:#f7f7f8;--shadow:0 10px 40px -10px #0003;--info:#2563eb;--info-soft:#eff5ff;--tip:#059669;--tip-soft:#ecfdf5;--warning:#c2410c;--warning-soft:#fff7ed;--danger:#dc2626;--danger-soft:#fef2f2;--header-h:60px;--sidebar-w:280px;--toc-w:230px;--content-w:760px;--radius:10px;color-scheme:light}:root[data-theme=dark]{--bg:#0c0c0e;--bg-subtle:#141417;--bg-muted:#1d1d21;--fg:#ececef;--fg-muted:#a1a1aa;--fg-subtle:#71717a;--border:#26262b;--border-strong:#34343a;--accent:color-mix(in srgb, var(--brand) 70%, #fff);--accent-fg:color-mix(in srgb, var(--brand) 50%, #fff);--accent-soft:color-mix(in srgb, var(--brand) 16%, #0c0c0e);--code-bg:#141417;--shadow:0 10px 40px -10px #000000b3;--info:#60a5fa;--info-soft:#111a2c;--tip:#34d399;--tip-soft:#0d1f1a;--warning:#fb923c;--warning-soft:#26170c;--danger:#f87171;--danger-soft:#2a1212;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{scroll-padding-top:calc(var(--header-h) + 24px);-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--fg);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.65}a{color:inherit}svg{flex-shrink:0}img{max-width:100%;height:auto}.skip-link{z-index:100;background:var(--accent-solid);color:#fff;border-radius:6px;padding:8px 12px;position:absolute;top:-100px;left:16px}.skip-link:focus{top:12px}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.site-header{z-index:40;height:var(--header-h);background:color-mix(in srgb, var(--bg) 85%, transparent);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);position:sticky;top:0}.header-inner{grid-template-columns:var(--sidebar-w) minmax(0, 1fr) var(--toc-w);align-items:center;max-width:1440px;height:100%;margin:0 auto;display:grid}.header-start{align-items:center;gap:8px;padding:0 16px;display:flex}.header-main{width:100%;max-width:calc(var(--content-w) + 96px);justify-content:center;margin:0 auto;padding:0 48px;display:flex}.brand{color:var(--fg);align-items:center;display:flex}.brand .logo{height:30px;display:flex}.brand .logo svg,.brand img.logo{width:auto;height:30px}.search-button{border:1px solid var(--border);background:var(--bg-subtle);width:100%;max-width:420px;height:38px;color:var(--fg-subtle);font:inherit;cursor:pointer;border-radius:8px;align-items:center;gap:10px;padding:0 10px 0 12px;font-size:14px;transition:border-color .15s;display:flex}.search-button:hover{border-color:var(--border-strong)}.search-button svg{width:16px;height:16px}.search-button span{text-align:left;flex:1}kbd{font-family:var(--font-sans);border:1px solid var(--border);background:var(--bg);color:var(--fg-muted);border-radius:5px;padding:1px 6px;font-size:12px}.header-actions{justify-content:flex-end;gap:4px;padding-right:20px;display:flex}.icon-button{width:38px;height:38px;color:var(--fg-muted);cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;transition:background .15s,color .15s;display:inline-grid}.icon-button:hover{background:var(--bg-muted);color:var(--fg)}.icon-button svg{width:20px;height:20px}.menu-button,:root[data-theme=dark] .theme-icon-light,:root:not([data-theme=dark]) .theme-icon-dark{display:none}.theme-icon-light,.theme-icon-dark{display:grid}.layout{grid-template-columns:var(--sidebar-w) minmax(0, 1fr) var(--toc-w);max-width:1440px;margin:0 auto;display:grid}.main{width:100%;min-width:0;max-width:calc(var(--content-w) + 96px);margin:0 auto;padding:40px 48px 64px}.sidebar{top:var(--header-h);height:calc(100dvh - var(--header-h));border-right:1px solid var(--border);scrollbar-width:thin;padding:20px 16px 40px;position:sticky;overflow-y:auto}.product-switcher{margin-bottom:20px;position:relative}.product-switcher summary{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-subtle);cursor:pointer;align-items:center;gap:10px;padding:8px 10px;list-style:none;transition:border-color .15s;display:flex}.product-switcher summary::-webkit-details-marker{display:none}.product-switcher summary:hover,.product-switcher[open] summary{border-color:var(--border-strong)}.product-switcher .chevron{color:var(--fg-subtle);margin-left:auto;display:grid}.product-switcher .chevron svg{width:16px;height:16px}.product-logo{border-radius:6px;flex-shrink:0;width:28px;height:28px}.product-logo-icon{background:var(--accent-soft);color:var(--accent-fg);place-items:center;display:grid}.product-logo-icon svg{width:16px;height:16px}.product-text{flex-direction:column;min-width:0;line-height:1.3;display:flex}.product-title{font-size:14px;font-weight:600}.product-description{color:var(--fg-subtle);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.product-menu{z-index:10;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);box-shadow:var(--shadow);margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 6px);left:0;right:0}.product-menu a{border-radius:7px;align-items:center;gap:10px;padding:7px 8px;text-decoration:none;display:flex}.product-menu a:hover{background:var(--bg-muted)}.product-menu a[aria-current]{background:var(--accent-soft)}.nav-group+.nav-group{margin-top:20px}.nav-group-label{letter-spacing:.02em;color:var(--fg);margin:0 0 6px;padding:0 10px;font-size:12px;font-weight:600}.sidebar-nav ul{margin:0;padding:0;list-style:none}.sidebar-nav a{color:var(--fg-muted);border-radius:7px;align-items:center;gap:9px;padding:6px 10px;font-size:14px;text-decoration:none;transition:background .12s,color .12s;display:flex}.sidebar-nav a:hover{background:var(--bg-muted);color:var(--fg)}.sidebar-nav a[aria-current=page]{background:var(--accent-soft);color:var(--accent-fg);font-weight:500}.nav-icon{display:grid}.nav-icon svg{width:16px;height:16px}.sidebar-backdrop{display:none}.toc{top:var(--header-h);height:calc(100dvh - var(--header-h));padding:40px 20px 40px 8px;font-size:13px;position:sticky;overflow-y:auto}.toc-title{margin:0 0 10px;font-weight:600}.toc ul{border-left:1px solid var(--border);margin:0;padding:0;list-style:none}.toc a{color:var(--fg-subtle);border-left:1px solid #0000;margin-left:-1px;padding:4px 0 4px 12px;line-height:1.4;text-decoration:none;display:block}.toc .depth-3 a{padding-left:24px}.toc a:hover{color:var(--fg)}.toc a.active{color:var(--accent-fg);border-left-color:var(--accent)}.page-header{border-bottom:1px solid var(--border);margin-bottom:32px;padding-bottom:24px}.page-eyebrow{color:var(--accent-fg);margin:0 0 6px;font-size:14px;font-weight:600}.page-header h1{letter-spacing:-.02em;margin:0;font-size:2.1rem;line-height:1.2}.page-description{color:var(--fg-muted);margin:10px 0 0;font-size:1.1rem}.page-footer{margin-top:56px}.edit-link{color:var(--fg-muted);align-items:center;gap:6px;font-size:14px;text-decoration:none;display:inline-flex}.edit-link:hover{color:var(--fg)}.edit-link svg{width:15px;height:15px}.pager{grid-template-columns:1fr 1fr;gap:16px;margin-top:20px;display:grid}.pager-link{border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:2px;padding:14px 16px;text-decoration:none;transition:border-color .15s;display:flex}.pager-link:hover{border-color:var(--accent)}.pager-link.next{text-align:right;grid-column:2}.pager-label{color:var(--fg-subtle);font-size:13px}.pager-title{font-weight:600}.button{background:var(--accent-solid);color:#fff;border-radius:8px;padding:8px 16px;font-weight:500;text-decoration:none;display:inline-block}.prose>:first-child{margin-top:0}.prose :is(h2,h3,h4){letter-spacing:-.01em;scroll-margin-top:calc(var(--header-h) + 24px);line-height:1.3;position:relative}.prose h1{margin:2.2em 0 .6em;font-size:1.75rem}.prose h2{margin:2.2em 0 .7em;font-size:1.5rem}.prose h3{margin:1.8em 0 .5em;font-size:1.2rem}.prose h4{margin:1.5em 0 .4em;font-size:1.05rem}.heading-anchor{color:var(--fg-subtle);opacity:0;margin-left:8px;text-decoration:none;transition:opacity .15s}.prose :is(h2,h3,h4):hover .heading-anchor,.heading-anchor:focus{opacity:1}.prose p,.prose ul,.prose ol,.prose table,.prose blockquote{margin:1em 0}.prose a{color:var(--accent-fg);text-decoration:underline;text-decoration-color:color-mix(in srgb, var(--accent) 40%, transparent);text-underline-offset:3px}.prose a:hover{text-decoration-color:currentColor}.prose ul,.prose ol{padding-left:1.5em}.prose li,.prose li>ul,.prose li>ol{margin:.3em 0}.prose li::marker{color:var(--fg-subtle)}.prose hr{border:0;border-top:1px solid var(--border);margin:2.5em 0}.prose blockquote{border-left:3px solid var(--border-strong);color:var(--fg-muted);padding:2px 0 2px 16px}.prose img{border-radius:var(--radius)}.prose strong{font-weight:600}.prose :not(pre)>code{border:1px solid var(--border);background:var(--bg-subtle);font-family:var(--font-mono);overflow-wrap:anywhere;border-radius:5px;padding:.15em .4em;font-size:.86em}.prose table{border-collapse:collapse;width:100%;font-size:14px;display:block;overflow-x:auto}.prose th,.prose td{border:1px solid var(--border);text-align:left;vertical-align:top;padding:8px 12px}.prose th{background:var(--bg-subtle);font-weight:600}.code-wrap{margin:1.2em 0;position:relative}.prose pre{border:1px solid var(--border);border-radius:var(--radius);font-family:var(--font-mono);tab-size:4;margin:0;padding:16px 18px;font-size:13.5px;line-height:1.65;overflow-x:auto;background:var(--code-bg)!important}.prose pre code{font-family:inherit}.astro-code,.astro-code span{color:var(--shiki-light)}:root[data-theme=dark] .astro-code,:root[data-theme=dark] .astro-code span{color:var(--shiki-dark)}.copy-button{border:1px solid var(--border);background:var(--bg);color:var(--fg-muted);font:inherit;cursor:pointer;opacity:0;border-radius:6px;padding:3px 9px;font-size:12px;transition:opacity .15s;position:absolute;top:8px;right:8px}.code-wrap:hover .copy-button,.copy-button:focus-visible{opacity:1}@media (hover:none){.copy-button{opacity:1}}.code-block{margin:1.2em 0}.code-block figcaption{border:1px solid var(--border);border-radius:var(--radius) var(--radius) 0 0;background:var(--bg-muted);font-family:var(--font-mono);color:var(--fg-muted);border-bottom:0;align-items:center;gap:7px;padding:8px 14px;font-size:13px;display:flex}.code-block figcaption svg{width:14px;height:14px}.code-block .code-wrap{margin:0}.code-block pre{border-top-left-radius:0;border-top-right-radius:0}.callout{--c:var(--info);--c-soft:var(--info-soft);border:1px solid color-mix(in srgb, var(--c) 30%, transparent);border-radius:var(--radius);background:var(--c-soft);gap:12px;margin:1.4em 0;padding:14px 16px;display:flex}.callout-tip{--c:var(--tip);--c-soft:var(--tip-soft)}.callout-warning{--c:var(--warning);--c-soft:var(--warning-soft)}.callout-danger{--c:var(--danger);--c-soft:var(--danger-soft)}.callout-icon{color:var(--c);padding-top:3px;display:grid}.callout-icon svg{width:18px;height:18px}.callout-body{flex:1;min-width:0}.callout-body>:first-child,.callout-body>.callout-title+*{margin-top:0}.callout-body>:last-child{margin-bottom:0}.callout .callout-title{color:var(--c);margin:0 0 4px;font-weight:600}.tabs{border:1px solid var(--border);border-radius:var(--radius);margin:1.4em 0;overflow:hidden}.tab-list{border-bottom:1px solid var(--border);background:var(--bg-subtle);gap:2px;padding:0 8px;display:flex;overflow-x:auto}.tab-list button{color:var(--fg-muted);font:inherit;white-space:nowrap;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 12px;font-size:14px;font-weight:500}.tab-list button:hover{color:var(--fg)}.tab-list button[aria-selected=true]{color:var(--accent-fg);border-bottom-color:var(--accent)}.tab-panel{padding:4px 16px}.tab-panel>.code-wrap:only-child,.tab-panel>.code-wrap:first-child:last-child{margin:12px 0}.steps{counter-reset:step;border-left:1px solid var(--border);margin:1.6em 0 1.6em 14px;padding-left:44px}.steps>h3{counter-increment:step;margin-top:1.8em;position:relative}.steps>h3:first-child{margin-top:0}.steps>h3:before{content:counter(step);border:1px solid var(--border);background:var(--bg-muted);border-radius:50%;place-items:center;width:32px;height:32px;font-size:14px;font-weight:600;display:grid;position:absolute;top:-2px;left:-60px}.cards{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px;margin:1.4em 0;display:grid}.prose a.card{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-subtle);color:var(--fg);flex-direction:column;gap:4px;padding:16px;text-decoration:none;transition:border-color .15s,background .15s;display:flex}.prose>a.card{margin:1.2em 0}.prose a.card[data-brand]{--accent:var(--brand);--accent-fg:color-mix(in srgb, var(--brand) 70%, #000);--accent-soft:color-mix(in srgb, var(--brand) 9%, #fff);border-color:color-mix(in srgb, var(--accent) 30%, var(--border));background:linear-gradient(160deg, var(--accent-soft), var(--bg-subtle) 70%)}.prose a.card[data-brand]:hover{border-color:var(--accent)}:root[data-theme=dark] .prose a.card[data-brand]{--accent:color-mix(in srgb, var(--brand) 70%, #fff);--accent-fg:color-mix(in srgb, var(--brand) 50%, #fff);--accent-soft:color-mix(in srgb, var(--brand) 16%, #0c0c0e)}.prose a.card:hover{border-color:var(--accent)}.card-icon{background:var(--accent-soft);width:32px;height:32px;color:var(--accent-fg);border-radius:8px;place-items:center;margin-bottom:6px;display:grid}.card-icon svg{width:18px;height:18px}.prose .card-logo{border-radius:8px;width:32px;height:32px;margin:0 0 6px}.card-title{font-weight:600}.card-description{color:var(--fg-muted);font-size:14px}.files{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-subtle);font-family:var(--font-mono);margin:1.4em 0;padding:12px 14px;font-size:13.5px}.files ul{margin:0;padding-left:0;list-style:none}.files ul ul{border-left:1px solid var(--border);margin-left:7px;padding-left:16px}.files li{margin:0}.files p{align-items:center;gap:8px;margin:0;padding:3px 0;display:flex}.files li{padding:2px 0}.files svg{vertical-align:-2px;width:15px;height:15px;color:var(--fg-subtle);margin-right:8px}.files p svg{margin-right:0}.files .folder>svg,.files .folder>p svg{color:var(--accent-fg)}.search-dialog{border:1px solid var(--border);background:var(--bg);width:min(640px,100vw - 32px);max-height:min(560px,100dvh - 120px);color:var(--fg);box-shadow:var(--shadow);border-radius:14px;margin:80px auto auto;padding:0}.search-dialog::backdrop{backdrop-filter:blur(2px);background:#0006}.search-box{max-height:inherit;flex-direction:column;display:flex}.search-input-row{border-bottom:1px solid var(--border);color:var(--fg-subtle);align-items:center;gap:10px;padding:6px 8px 6px 16px;display:flex}.search-input-row>svg{width:18px;height:18px}.search-input-row input{min-width:0;height:44px;color:var(--fg);font:inherit;background:0 0;border:0;outline:0;flex:1;font-size:16px}.search-input-row input::-webkit-search-cancel-button{display:none}.search-results{margin:0;padding:6px;list-style:none;overflow-y:auto}.search-results:empty{display:none}.search-results a{border-radius:8px;flex-direction:column;gap:2px;padding:10px 12px;text-decoration:none;display:flex}.search-results a:hover,.search-results a:focus{background:var(--bg-muted);outline:none}.search-result-title{align-items:center;gap:8px;font-size:14px;font-weight:600;display:flex}.search-result-product{background:var(--accent-soft);color:var(--accent-fg);border-radius:4px;padding:0 6px;font-size:11px;font-weight:500}.search-result-excerpt{color:var(--fg-muted);font-size:13px}.search-result-excerpt mark{color:var(--accent-fg);background:0 0;font-weight:600}.search-status{color:var(--fg-subtle);margin:0;padding:14px 16px;font-size:14px}.search-status:empty{display:none}@media (width<=1180px){.layout{grid-template-columns:var(--sidebar-w) minmax(0, 1fr)}.toc{display:none}.header-inner{grid-template-columns:var(--sidebar-w) minmax(0, 1fr) auto}}@media (width<=860px){.layout{display:block}.menu-button{margin-left:-8px;display:inline-grid}.header-inner{gap:8px;padding:0 16px;display:flex}.header-start{padding:0}.header-main{width:auto;margin:0 0 0 auto;padding:0}.header-actions{padding-right:0}.search-button{background:0 0;border:0;justify-content:center;width:38px;margin-left:auto;padding:0}.search-button span,.search-button kbd{display:none}.sidebar{z-index:50;background:var(--bg);width:min(300px,85vw);height:100dvh;transition:transform .2s;position:fixed;top:0;left:0;transform:translate(-100%)}.nav-open .sidebar{box-shadow:var(--shadow);transform:none}.nav-open .sidebar-backdrop{z-index:45;background:#0006;display:block;position:fixed;inset:0}.main{padding:28px 16px 48px}.page-header h1{font-size:1.75rem}.steps{padding-left:30px}.steps>h3:before{left:-46px}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}
