 :root {
    --vp-c-white: #ffffff;
    --vp-c-black: #000000;
    --vp-c-gray: #8e8e93;
    --vp-c-text-light-1: rgba(60, 60, 67, .92);
    --vp-c-text-light-2: rgba(60, 60, 67, .7);
    --vp-c-text-light-3: rgba(60, 60, 67, .33);
    --vp-c-text-dark-1: rgba(255, 255, 245, .86);
    --vp-c-text-dark-2: rgba(235, 235, 245, .6);
    --vp-c-text-dark-3: rgba(235, 235, 245, .38);
    --vp-c-green: #10b981;
    --vp-c-green-light: #34d399;
    --vp-c-green-lighter: #6ee7b7;
    --vp-c-green-dark: #059669;
    --vp-c-green-darker: #047857;
    --vp-c-green-dimm-1: rgba(16, 185, 129, .05);
    --vp-c-green-dimm-2: rgba(16, 185, 129, .2);
    --vp-c-green-dimm-3: rgba(16, 185, 129, .5);
    --vp-c-yellow: #eab308;
    --vp-c-yellow-light: #facc15;
    --vp-c-yellow-lighter: #fde047;
    --vp-c-yellow-dark: #ca8a04;
    --vp-c-yellow-darker: #a16207;
    --vp-c-yellow-dimm-1: rgba(234, 179, 8, .05);
    --vp-c-yellow-dimm-2: rgba(234, 179, 8, .2);
    --vp-c-yellow-dimm-3: rgba(234, 179, 8, .5);
    --vp-c-red: #f43f5e;
    --vp-c-red-light: #fb7185;
    --vp-c-red-lighter: #fda4af;
    --vp-c-red-dark: #e11d48;
    --vp-c-red-darker: #be123c;
    --vp-c-red-dimm-1: rgba(244, 63, 94, .05);
    --vp-c-red-dimm-2: rgba(244, 63, 94, .2);
    --vp-c-red-dimm-3: rgba(244, 63, 94, .5);
    --vp-c-sponsor: #db2777
 }
 
 :root {
    --vp-c-bg: #ffffff;
    --vp-c-bg-elv: #ffffff;
    --vp-c-bg-elv-up: #ffffff;
    --vp-c-bg-elv-down: #f6f6f7;
    --vp-c-bg-elv-mute: #f6f6f7;
    --vp-c-bg-soft: #f6f6f7;
    --vp-c-bg-soft-up: #ffffff;
    --vp-c-bg-soft-down: #e3e3e5;
    --vp-c-bg-soft-mute: #e3e3e5;
    --vp-c-bg-alt: #f6f6f7;
    --vp-c-border: rgba(60, 60, 67, .29);
    --vp-c-divider: rgba(60, 60, 67, .12);
    --vp-c-gutter: rgba(60, 60, 67, .12);
    --vp-c-neutral: var(--vp-c-black);
    --vp-c-neutral-inverse: var(--vp-c-white);
    --vp-c-text-1: var(--vp-c-text-light-1);
    --vp-c-text-2: var(--vp-c-text-light-2);
    --vp-c-text-3: var(--vp-c-text-light-3);
    --vp-c-text-inverse-1: var(--vp-c-text-dark-1);
    --vp-c-text-inverse-2: var(--vp-c-text-dark-2);
    --vp-c-text-inverse-3: var(--vp-c-text-dark-3);
    --vp-c-text-code: #476582;
    --vp-c-brand: var(--vp-c-green);
    --vp-c-brand-light: var(--vp-c-green-light);
    --vp-c-brand-lighter: var(--vp-c-green-lighter);
    --vp-c-brand-dark: var(--vp-c-green-dark);
    --vp-c-brand-darker: var(--vp-c-green-darker);
    --vp-c-mute: #f6f6f7;
    --vp-c-mute-light: #f9f9fc;
    --vp-c-mute-lighter: #ffffff;
    --vp-c-mute-dark: #e3e3e5;
    --vp-c-mute-darker: #d7d7d9
 }
 
 .dark {
    --vp-c-bg: #1e1e20;
    --vp-c-bg-elv: #252529;
    --vp-c-bg-elv-up: #313136;
    --vp-c-bg-elv-down: #1e1e20;
    --vp-c-bg-elv-mute: #313136;
    --vp-c-bg-soft: #252529;
    --vp-c-bg-soft-up: #313136;
    --vp-c-bg-soft-down: #1e1e20;
    --vp-c-bg-soft-mute: #313136;
    --vp-c-bg-alt: #161618;
    --vp-c-border: rgba(82, 82, 89, .68);
    --vp-c-divider: rgba(82, 82, 89, .32);
    --vp-c-gutter: #000000;
    --vp-c-neutral: var(--vp-c-white);
    --vp-c-neutral-inverse: var(--vp-c-black);
    --vp-c-text-1: var(--vp-c-text-dark-1);
    --vp-c-text-2: var(--vp-c-text-dark-2);
    --vp-c-text-3: var(--vp-c-text-dark-3);
    --vp-c-text-inverse-1: var(--vp-c-text-light-1);
    --vp-c-text-inverse-2: var(--vp-c-text-light-2);
    --vp-c-text-inverse-3: var(--vp-c-text-light-3);
    --vp-c-text-code: #c9def1;
    --vp-c-mute: #313136;
    --vp-c-mute-light: #3a3a3c;
    --vp-c-mute-lighter: #505053;
    --vp-c-mute-dark: #2c2c30;
    --vp-c-mute-darker: #252529
 }
 
 :root {
    --vp-font-family-base: "Inter var", "Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Helvetica, Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --vp-font-family-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace
 }
 
 :root {
    --vp-shadow-1: 0 1px 2px rgba(0, 0, 0, .04), 0 1px 2px rgba(0, 0, 0, .06);
    --vp-shadow-2: 0 3px 12px rgba(0, 0, 0, .07), 0 1px 4px rgba(0, 0, 0, .07);
    --vp-shadow-3: 0 12px 32px rgba(0, 0, 0, .1), 0 2px 6px rgba(0, 0, 0, .08);
    --vp-shadow-4: 0 14px 44px rgba(0, 0, 0, .12), 0 3px 9px rgba(0, 0, 0, .12);
    --vp-shadow-5: 0 18px 56px rgba(0, 0, 0, .16), 0 4px 12px rgba(0, 0, 0, .16)
 }
 
 :root {
    --vp-z-index-local-nav: 10;
    --vp-z-index-nav: 20;
    --vp-z-index-layout-top: 30;
    --vp-z-index-backdrop: 40;
    --vp-z-index-sidebar: 50;
    --vp-z-index-footer: 60
 }
 
 :root {
    --vp-icon-copy: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' height='20' width='20' stroke='rgba(128,128,128,1)' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M9 5H7a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2h-2M9 5a2 2 0 0 0 2 2h2a2 2 0 0 0 2-2M9 5a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2'/%3E%3C/svg%3E");
    --vp-icon-copied: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' height='20' width='20' stroke='rgba(128,128,128,1)' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M9 5H7a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2h-2M9 5a2 2 0 0 0 2 2h2a2 2 0 0 0 2-2M9 5a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2m-6 9 2 2 4-4'/%3E%3C/svg%3E")
 }
 
 :root {
    --vp-layout-max-width: 1440px
 }
 
 :root {
    --vp-code-line-height: 1.7;
    --vp-code-font-size: .875em;
    --vp-code-block-color: var(--vp-c-text-dark-1);
    --vp-code-block-bg: #292b30;
    --vp-code-block-divider-color: #000000;
    --vp-code-line-highlight-color: rgba(0, 0, 0, .5);
    --vp-code-line-number-color: var(--vp-c-text-dark-3);
    --vp-code-line-diff-add-color: var(--vp-c-green-dimm-2);
    --vp-code-line-diff-add-symbol-color: var(--vp-c-green);
    --vp-code-line-diff-remove-color: var(--vp-c-red-dimm-2);
    --vp-code-line-diff-remove-symbol-color: var(--vp-c-red);
    --vp-code-line-warning-color: var(--vp-c-yellow-dimm-2);
    --vp-code-line-error-color: var(--vp-c-red-dimm-2);
    --vp-code-copy-code-hover-bg: rgba(255, 255, 255, .05);
    --vp-code-copy-code-active-text: var(--vp-c-text-dark-2);
    --vp-code-tab-divider: var(--vp-code-block-divider-color);
    --vp-code-tab-text-color: var(--vp-c-text-dark-2);
    --vp-code-tab-bg: var(--vp-code-block-bg);
    --vp-code-tab-hover-text-color: var(--vp-c-text-dark-1);
    --vp-code-tab-active-text-color: var(--vp-c-text-dark-1);
    --vp-code-tab-active-bar-color: var(--vp-c-brand)
 }
 
 .dark {
    --vp-code-block-bg: #161618
 }
 
 :root {
    --vp-button-brand-border: var(--vp-c-brand-lighter);
    --vp-button-brand-text: var(--vp-c-white);
    --vp-button-brand-bg: var(--vp-c-brand);
    --vp-button-brand-hover-border: var(--vp-c-brand-lighter);
    --vp-button-brand-hover-text: var(--vp-c-white);
    --vp-button-brand-hover-bg: var(--vp-c-brand-dark);
    --vp-button-brand-active-border: var(--vp-c-brand-lighter);
    --vp-button-brand-active-text: var(--vp-c-white);
    --vp-button-brand-active-bg: var(--vp-c-brand-darker);
    --vp-button-alt-border: var(--vp-c-border);
    --vp-button-alt-text: var(--vp-c-neutral);
    --vp-button-alt-bg: var(--vp-c-mute);
    --vp-button-alt-hover-border: var(--vp-c-border);
    --vp-button-alt-hover-text: var(--vp-c-neutral);
    --vp-button-alt-hover-bg: var(--vp-c-mute-dark);
    --vp-button-alt-active-border: var(--vp-c-border);
    --vp-button-alt-active-text: var(--vp-c-neutral);
    --vp-button-alt-active-bg: var(--vp-c-mute-darker);
    --vp-button-sponsor-border: var(--vp-c-gray-light-3);
    --vp-button-sponsor-text: var(--vp-c-text-light-2);
    --vp-button-sponsor-bg: transparent;
    --vp-button-sponsor-hover-border: var(--vp-c-sponsor);
    --vp-button-sponsor-hover-text: var(--vp-c-sponsor);
    --vp-button-sponsor-hover-bg: transparent;
    --vp-button-sponsor-active-border: var(--vp-c-sponsor);
    --vp-button-sponsor-active-text: var(--vp-c-sponsor);
    --vp-button-sponsor-active-bg: transparent
 }
 
 .dark {
    --vp-button-sponsor-border: var(--vp-c-gray-dark-1);
    --vp-button-sponsor-text: var(--vp-c-text-dark-2)
 }
 
 :root {
    --vp-custom-block-font-size: 14px;
    --vp-custom-block-code-font-size: 13px;
    --vp-custom-block-info-border: var(--vp-c-border);
    --vp-custom-block-info-text: var(--vp-c-text-2);
    --vp-custom-block-info-bg: var(--vp-c-bg-soft);
    --vp-custom-block-info-code-bg: var(--vp-c-mute);
    --vp-custom-block-tip-border: var(--vp-c-green-dimm-3);
    --vp-custom-block-tip-text: var(--vp-c-green);
    --vp-custom-block-tip-bg: var(--vp-c-green-dimm-1);
    --vp-custom-block-tip-code-bg: var(--vp-custom-block-tip-bg);
    --vp-custom-block-warning-border: var(--vp-c-yellow-dimm-3);
    --vp-custom-block-warning-text: var(--vp-c-yellow);
    --vp-custom-block-warning-bg: var(--vp-c-yellow-dimm-1);
    --vp-custom-block-warning-code-bg: var(--vp-custom-block-warning-bg);
    --vp-custom-block-danger-border: var(--vp-c-red-dimm-3);
    --vp-custom-block-danger-text: var(--vp-c-red);
    --vp-custom-block-danger-bg: var(--vp-c-red-dimm-1);
    --vp-custom-block-danger-code-bg: var(--vp-custom-block-danger-bg);
    --vp-custom-block-details-border: var(--vp-custom-block-info-border);
    --vp-custom-block-details-text: var(--vp-custom-block-info-text);
    --vp-custom-block-details-bg: var(--vp-custom-block-info-bg);
    --vp-custom-block-details-code-bg: var(--vp-custom-block-details-bg)
 }
 
 :root {
    --vp-input-border-color: var(--vp-c-border);
    --vp-input-bg-color: var(--vp-c-bg-alt);
    --vp-input-hover-border-color: var(--vp-c-gray);
    --vp-input-switch-bg-color: var(--vp-c-mute)
 }
 
 :root {
    --vp-nav-height: 64px;
    --vp-nav-bg-color: var(--vp-c-bg);
    --vp-nav-screen-bg-color: var(--vp-c-bg)
 }
 
 :root {
    --vp-local-nav-bg-color: var(--vp-c-bg)
 }
 
 :root {
    --vp-sidebar-width: 272px;
    --vp-sidebar-bg-color: var(--vp-c-bg-alt)
 }
 
 :root {
    --vp-backdrop-bg-color: rgba(0, 0, 0, .6)
 }
 
 :root {
    --vp-home-hero-name-color: var(--vp-c-brand);
    --vp-home-hero-name-background: transparent;
    --vp-home-hero-image-background-image: none;
    --vp-home-hero-image-filter: none
 }
 
 :root {
    --vp-badge-info-border: var(--vp-c-border);
    --vp-badge-info-text: var(--vp-c-text-2);
    --vp-badge-info-bg: var(--vp-c-bg-soft);
    --vp-badge-tip-border: var(--vp-c-green-dark);
    --vp-badge-tip-text: var(--vp-c-green);
    --vp-badge-tip-bg: var(--vp-c-green-dimm-1);
    --vp-badge-warning-border: var(--vp-c-yellow-dark);
    --vp-badge-warning-text: var(--vp-c-yellow);
    --vp-badge-warning-bg: var(--vp-c-yellow-dimm-1);
    --vp-badge-danger-border: var(--vp-c-red-dark);
    --vp-badge-danger-text: var(--vp-c-red);
    --vp-badge-danger-bg: var(--vp-c-red-dimm-1)
 }
 
 :root {
    --vp-carbon-ads-text-color: var(--vp-c-text-1);
    --vp-carbon-ads-poweredby-color: var(--vp-c-text-2);
    --vp-carbon-ads-bg-color: var(--vp-c-bg-soft);
    --vp-carbon-ads-hover-text-color: var(--vp-c-brand);
    --vp-carbon-ads-hover-poweredby-color: var(--vp-c-text-1)
 }
 
 *,
 :before,
 :after {
    box-sizing: border-box
 }
 
 html {
    line-height: 1.4;
    font-size: 16px;
    -webkit-text-size-adjust: 100%
 }
 
 html.dark {
    color-scheme: dark
 }
 
 body {
    margin: 0;
    width: 100%;
    min-width: 320px;
    min-height: 100vh;
    line-height: 24px;
    font-family: var(--vp-font-family-base);
    font-size: 16px;
    font-weight: 400;
    color: var(--vp-c-text-1);
    background-color: var(--vp-c-bg);
    direction: ltr;
    font-synthesis: none;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
 }
 
 main {
    display: block
 }
 
 h1,
 h2,
 h3,
 h4,
 h5,
 h6 {
    margin: 0;
    line-height: 24px;
    font-size: 16px;
    font-weight: 400
 }
 
 p {
    margin: 0
 }
 
 strong,
 b {
    font-weight: 600
 }
 
 a,
 area,
 button,
 [role=button],
 input,
 label,
 select,
 summary,
 textarea {
    touch-action: manipulation
 }
 
 a {
    color: inherit;
    text-decoration: inherit
 }
 
 ol,
 ul {
    list-style: none;
    margin: 0;
    padding: 0
 }
 
 blockquote {
    margin: 0
 }
 
 pre,
 code,
 kbd,
 samp {
    font-family: var(--vp-font-family-mono)
 }
 
 img,
 svg,
 video,
 canvas,
 audio,
 iframe,
 embed,
 object {
    display: block
 }
 
 figure {
    margin: 0
 }
 
 img,
 video {
    max-width: 100%;
    height: auto
 }
 
 button,
 input,
 optgroup,
 select,
 textarea {
    border: 0;
    padding: 0;
    line-height: inherit;
    color: inherit
 }
 
 button {
    padding: 0;
    font-family: inherit;
    background-color: transparent;
    background-image: none
 }
 
 button:enabled,
 [role=button]:enabled {
    cursor: pointer
 }
 
 button:focus,
 button:focus-visible {
    outline: 1px dotted;
    outline: 4px auto -webkit-focus-ring-color
 }
 
 button:focus:not(:focus-visible) {
    outline: none !important
 }
 
 input:focus,
 textarea:focus,
 select:focus {
    outline: none
 }
 
 table {
    border-collapse: collapse
 }
 
 input {
    background-color: transparent
 }
 
 input:-ms-input-placeholder,
 textarea:-ms-input-placeholder {
    color: var(--vp-c-text-3)
 }
 
 input::-ms-input-placeholder,
 textarea::-ms-input-placeholder {
    color: var(--vp-c-text-3)
 }
 
 input::placeholder,
 textarea::placeholder {
    color: var(--vp-c-text-3)
 }
 
 input::-webkit-outer-spin-button,
 input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0
 }
 
 input[type=number] {
    -moz-appearance: textfield
 }
 
 textarea {
    resize: vertical
 }
 
 select {
    -webkit-appearance: none
 }
 
 fieldset {
    margin: 0;
    padding: 0
 }
 
 h1,
 h2,
 h3,
 h4,
 h5,
 h6,
 li,
 p {
    overflow-wrap: break-word
 }
 
 vite-error-overlay {
    z-index: 9999
 }
 
 .visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    white-space: nowrap;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    overflow: hidden
 }
 
 .custom-block {
    border: 1px solid transparent;
    border-radius: 8px;
    padding: 16px 16px 8px;
    line-height: 24px;
    font-size: var(--vp-custom-block-font-size);
    color: var(--vp-c-text-2)
 }
 
 .custom-block.info {
    border-color: var(--vp-custom-block-info-border);
    color: var(--vp-custom-block-info-text);
    background-color: var(--vp-custom-block-info-bg)
 }
 
 .custom-block.info code {
    background-color: var(--vp-custom-block-info-code-bg)
 }
 
 .custom-block.tip {
    border-color: var(--vp-custom-block-tip-border);
    color: var(--vp-custom-block-tip-text);
    background-color: var(--vp-custom-block-tip-bg)
 }
 
 .custom-block.tip code {
    background-color: var(--vp-custom-block-tip-code-bg)
 }
 
 .custom-block.warning {
    border-color: var(--vp-custom-block-warning-border);
    color: var(--vp-custom-block-warning-text);
    background-color: var(--vp-custom-block-warning-bg)
 }
 
 .custom-block.warning code {
    background-color: var(--vp-custom-block-warning-code-bg)
 }
 
 .custom-block.danger {
    border-color: var(--vp-custom-block-danger-border);
    color: var(--vp-custom-block-danger-text);
    background-color: var(--vp-custom-block-danger-bg)
 }
 
 .custom-block.danger code {
    background-color: var(--vp-custom-block-danger-code-bg)
 }
 
 .custom-block.details {
    border-color: var(--vp-custom-block-details-border);
    color: var(--vp-custom-block-details-text);
    background-color: var(--vp-custom-block-details-bg)
 }
 
 .custom-block.details code {
    background-color: var(--vp-custom-block-details-code-bg)
 }
 
 .custom-block-title {
    font-weight: 700
 }
 
 .custom-block p+p {
    margin: 8px 0
 }
 
 .custom-block.details summary {
    margin: 0 0 8px;
    font-weight: 700;
    cursor: pointer
 }
 
 .custom-block.details summary+p {
    margin: 8px 0
 }
 
 .custom-block a {
    color: inherit;
    font-weight: 600;
    text-decoration: underline;
    transition: opacity .25s
 }
 
 .custom-block a:hover {
    opacity: .6
 }
 
 .custom-block code {
    font-size: var(--vp-custom-block-code-font-size)
 }
 
 .dark .vp-code-light {
    display: none
 }
 
 html:not(.dark) .vp-code-dark {
    display: none
 }
 
 .vp-code-group {
    margin-top: 16px
 }
 
 .vp-code-group .tabs {
    position: relative;
    display: flex;
    margin-right: -24px;
    margin-left: -24px;
    padding: 0 12px;
    background-color: var(--vp-code-tab-bg);
    overflow-x: auto;
    overflow-y: hidden
 }
 
 .vp-code-group .tabs:after {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 1px;
    background-color: var(--vp-code-tab-divider);
    content: ""
 }
 
 @media (min-width: 640px) {
    .vp-code-group .tabs {
       margin-right: 0;
       margin-left: 0;
       border-radius: 8px 8px 0 0
    }
 }
 
 .vp-code-group .tabs input {
    position: absolute;
    opacity: 0;
    pointer-events: none
 }
 
 .vp-code-group .tabs label {
    position: relative;
    display: inline-block;
    border-bottom: 1px solid transparent;
    padding: 0 12px;
    line-height: 48px;
    font-size: 14px;
    font-weight: 500;
    color: var(--vp-code-tab-text-color);
    background-color: var(--vp-code-tab-bg);
    white-space: nowrap;
    cursor: pointer;
    transition: color .25s
 }
 
 .vp-code-group .tabs label:after {
    position: absolute;
    right: 8px;
    bottom: -1px;
    left: 8px;
    z-index: 10;
    height: 1px;
    content: "";
    background-color: transparent;
    transition: background-color .25s
 }
 
 .vp-code-group label:hover {
    color: var(--vp-code-tab-hover-text-color)
 }
 
 .vp-code-group input:checked+label {
    color: var(--vp-code-tab-active-text-color)
 }
 
 .vp-code-group input:checked+label:after {
    background-color: var(--vp-code-tab-active-bar-color)
 }
 
 .vp-code-group div[class*=language-] {
    display: none;
    margin-top: 0 !important;
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important
 }
 
 .vp-code-group div[class*=language-].active {
    display: block
 }
 
 .vp-doc h1,
 .vp-doc h2,
 .vp-doc h3,
 .vp-doc h4,
 .vp-doc h5,
 .vp-doc h6 {
    position: relative;
    font-weight: 600;
    outline: none
 }
 
 .vp-doc h1 {
    letter-spacing: -.02em;
    line-height: 40px;
    font-size: 28px
 }
 
 .vp-doc h2 {
    margin: 48px 0 16px;
    border-top: 1px solid var(--vp-c-divider);
    padding-top: 24px;
    letter-spacing: -.02em;
    line-height: 32px;
    font-size: 24px
 }
 
 .vp-doc h3 {
    margin: 32px 0 0;
    letter-spacing: -.01em;
    line-height: 28px;
    font-size: 20px
 }
 
 .vp-doc .header-anchor {
    float: left;
    margin-left: -.87em;
    padding-right: .23em;
    font-weight: 500;
    user-select: none;
    opacity: 0;
    transition: color .25s, opacity .25s
 }
 
 .vp-doc h1:hover .header-anchor,
 .vp-doc h1 .header-anchor:focus,
 .vp-doc h2:hover .header-anchor,
 .vp-doc h2 .header-anchor:focus,
 .vp-doc h3:hover .header-anchor,
 .vp-doc h3 .header-anchor:focus,
 .vp-doc h4:hover .header-anchor,
 .vp-doc h4 .header-anchor:focus,
 .vp-doc h5:hover .header-anchor,
 .vp-doc h5 .header-anchor:focus,
 .vp-doc h6:hover .header-anchor,
 .vp-doc h6 .header-anchor:focus {
    opacity: 1
 }
 
 @media (min-width: 768px) {
    .vp-doc h1 {
       letter-spacing: -.02em;
       line-height: 40px;
       font-size: 32px
    }
 }
 
 .vp-doc p,
 .vp-doc summary {
    margin: 16px 0
 }
 
 .vp-doc p {
    line-height: 28px
 }
 
 .vp-doc blockquote {
    margin: 16px 0;
    border-left: 2px solid var(--vp-c-divider);
    padding-left: 16px;
    transition: border-color .5s
 }
 
 .vp-doc blockquote>p {
    margin: 0;
    font-size: 16px;
    color: var(--vp-c-text-2);
    transition: color .5s
 }
 
 .vp-doc a {
    font-weight: 500;
    color: var(--vp-c-brand);
    text-decoration-style: dotted;
    transition: color .25s
 }
 
 .vp-doc a:hover {
    color: var(--vp-c-brand-dark)
 }
 
 .vp-doc strong {
    font-weight: 600
 }
 
 .vp-doc ul,
 .vp-doc ol {
    padding-left: 1.25rem;
    margin: 16px 0
 }
 
 .vp-doc ul {
    list-style: disc
 }
 
 .vp-doc ol {
    list-style: decimal
 }
 
 .vp-doc li+li {
    margin-top: 8px
 }
 
 .vp-doc li>ol,
 .vp-doc li>ul {
    margin: 8px 0 0
 }
 
 .vp-doc table {
    display: block;
    border-collapse: collapse;
    margin: 20px 0;
    overflow-x: auto
 }
 
 .vp-doc tr {
    border-top: 1px solid var(--vp-c-divider);
    transition: background-color .5s
 }
 
 .vp-doc tr:nth-child(2n) {
    background-color: var(--vp-c-bg-soft)
 }
 
 .vp-doc th,
 .vp-doc td {
    border: 1px solid var(--vp-c-divider);
    padding: 8px 16px
 }
 
 .vp-doc th {
    text-align: left;
    font-size: 14px;
    font-weight: 600;
    color: var(--vp-c-text-2);
    background-color: var(--vp-c-bg-soft)
 }
 
 .vp-doc td {
    font-size: 14px
 }
 
 .vp-doc hr {
    margin: 16px 0;
    border: none;
    border-top: 1px solid var(--vp-c-divider)
 }
 
 .vp-doc .custom-block {
    margin: 16px 0
 }
 
 .vp-doc .custom-block p {
    margin: 8px 0;
    line-height: 24px
 }
 
 .vp-doc .custom-block p:first-child {
    margin: 0
 }
 
 .vp-doc .custom-block a {
    color: inherit;
    font-weight: 600;
    text-decoration: underline;
    transition: opacity .25s
 }
 
 .vp-doc .custom-block a:hover {
    opacity: .6
 }
 
 .vp-doc .custom-block code {
    font-size: var(--vp-custom-block-code-font-size);
    font-weight: 700;
    color: inherit
 }
 
 .vp-doc .custom-block div[class*=language-] {
    margin: 8px 0
 }
 
 .vp-doc .custom-block div[class*=language-] code {
    font-weight: 400;
    background-color: transparent
 }
 
 .vp-doc :not(pre, h1, h2, h3, h4, h5, h6)>code {
    font-size: var(--vp-code-font-size)
 }
 
 .vp-doc :not(pre)>code {
    border-radius: 4px;
    padding: 3px 6px;
    color: var(--vp-c-text-code);
    background-color: var(--vp-c-mute);
    transition: color .5s, background-color .5s
 }
 
 .vp-doc h1>code,
 .vp-doc h2>code,
 .vp-doc h3>code {
    font-size: .9em
 }
 
 .vp-doc a>code {
    color: var(--vp-c-brand);
    transition: color .25s
 }
 
 .vp-doc a:hover>code {
    color: var(--vp-c-brand-dark)
 }
 
 .vp-doc div[class*=language-] {
    position: relative;
    margin: 16px -24px;
    background-color: var(--vp-code-block-bg);
    overflow-x: auto;
    transition: background-color .5s
 }
 
 @media (min-width: 640px) {
    .vp-doc div[class*=language-] {
       border-radius: 8px;
       margin: 16px 0
    }
 }
 
 @media (max-width: 639px) {
    .vp-doc li div[class*=language-] {
       border-radius: 8px 0 0 8px
    }
 }
 
 .vp-doc div[class*=language-]+div[class*=language-],
 .vp-doc div[class$=-api]+div[class*=language-],
 .vp-doc div[class*=language-]+div[class$=-api]>div[class*=language-] {
    margin-top: -8px
 }
 
 .vp-doc [class*=language-] pre,
 .vp-doc [class*=language-] code {
    direction: ltr;
    text-align: left;
    white-space: pre;
    word-spacing: normal;
    word-break: normal;
    word-wrap: normal;
    -moz-tab-size: 4;
    -o-tab-size: 4;
    tab-size: 4;
    -webkit-hyphens: none;
    -moz-hyphens: none;
    -ms-hyphens: none;
    hyphens: none
 }
 
 .vp-doc [class*=language-] pre {
    position: relative;
    z-index: 1;
    margin: 0;
    padding: 16px 0;
    background: transparent;
    overflow-x: auto
 }
 
 .vp-doc [class*=language-] code {
    display: block;
    padding: 0 24px;
    width: fit-content;
    min-width: 100%;
    line-height: var(--vp-code-line-height);
    font-size: var(--vp-code-font-size);
    color: var(--vp-code-block-color);
    transition: color .5s
 }
 
 .vp-doc [class*=language-] code .highlighted {
    background-color: var(--vp-code-line-highlight-color);
    transition: background-color .5s;
    margin: 0 -24px;
    padding: 0 24px;
    width: calc(100% + 48px);
    display: inline-block
 }
 
 .vp-doc [class*=language-] code .highlighted.error {
    background-color: var(--vp-code-line-error-color)
 }
 
 .vp-doc [class*=language-] code .highlighted.warning {
    background-color: var(--vp-code-line-warning-color)
 }
 
 .vp-doc [class*=language-] code .diff {
    transition: background-color .5s;
    margin: 0 -24px;
    padding: 0 24px;
    width: calc(100% + 48px);
    display: inline-block
 }
 
 .vp-doc [class*=language-] code .diff:before {
    position: absolute;
    left: 10px
 }
 
 .vp-doc [class*=language-] .has-focused-lines .line:not(.has-focus) {
    filter: blur(.095rem);
    opacity: .4;
    transition: filter .35s, opacity .35s
 }
 
 .vp-doc [class*=language-] .has-focused-lines .line:not(.has-focus) {
    opacity: .7;
    transition: filter .35s, opacity .35s
 }
 
 .vp-doc [class*=language-]:hover .has-focused-lines .line:not(.has-focus) {
    filter: blur(0);
    opacity: 1
 }
 
 .vp-doc [class*=language-] code .diff.remove {
    background-color: var(--vp-code-line-diff-remove-color);
    opacity: .7
 }
 
 .vp-doc [class*=language-] code .diff.remove:before {
    content: "-";
    color: var(--vp-code-line-diff-remove-symbol-color)
 }
 
 .vp-doc [class*=language-] code .diff.add {
    background-color: var(--vp-code-line-diff-add-color)
 }
 
 .vp-doc [class*=language-] code .diff.add:before {
    content: "+";
    color: var(--vp-code-line-diff-add-symbol-color)
 }
 
 .vp-doc div[class*=language-].line-numbers-mode {
    padding-left: 32px
 }
 
 .vp-doc .line-numbers-wrapper {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    z-index: 3;
    border-right: 1px solid var(--vp-code-block-divider-color);
    padding-top: 16px;
    width: 32px;
    text-align: center;
    font-family: var(--vp-font-family-mono);
    line-height: var(--vp-code-line-height);
    font-size: var(--vp-code-font-size);
    color: var(--vp-code-line-number-color);
    transition: border-color .5s, color .5s
 }
 
 .vp-doc [class*=language-]>button.copy {
    direction: ltr;
    position: absolute;
    top: 8px;
    right: 8px;
    z-index: 3;
    display: block;
    justify-content: center;
    align-items: center;
    border-radius: 4px;
    width: 40px;
    height: 40px;
    background-color: var(--vp-code-block-bg);
    opacity: 0;
    cursor: pointer;
    background-image: var(--vp-icon-copy);
    background-position: 50%;
    background-size: 20px;
    background-repeat: no-repeat;
    transition: opacity .4s
 }
 
 .vp-doc [class*=language-]:hover>button.copy,
 .vp-doc [class*=language-]>button.copy:focus {
    opacity: 1
 }
 
 .vp-doc [class*=language-]>button.copy:hover {
    background-color: var(--vp-code-copy-code-hover-bg)
 }
 
 .vp-doc [class*=language-]>button.copy.copied,
 .vp-doc [class*=language-]>button.copy:hover.copied {
    border-radius: 0 4px 4px 0;
    background-color: var(--vp-code-copy-code-hover-bg);
    background-image: var(--vp-icon-copied)
 }
 
 .vp-doc [class*=language-]>button.copy.copied:before,
 .vp-doc [class*=language-]>button.copy:hover.copied:before {
    position: relative;
    left: -65px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 4px 0 0 4px;
    width: 64px;
    height: 40px;
    text-align: center;
    font-size: 12px;
    font-weight: 500;
    color: var(--vp-code-copy-code-active-text);
    background-color: var(--vp-code-copy-code-hover-bg);
    white-space: nowrap;
    content: "Copied"
 }
 
 .vp-doc [class*=language-]>span.lang {
    position: absolute;
    top: 6px;
    right: 12px;
    z-index: 2;
    font-size: 12px;
    font-weight: 500;
    color: var(--vp-c-text-dark-3);
    transition: color .4s, opacity .4s
 }
 
 .vp-doc [class*=language-]:hover>button.copy+span.lang,
 .vp-doc [class*=language-]>button.copy:focus+span.lang {
    opacity: 0
 }
 
 .vp-doc .VPTeamMembers {
    margin-top: 24px
 }
 
 .vp-doc .VPTeamMembers.small.count-1 .container {
    margin: 0 !important;
    max-width: calc((100% - 24px)/2) !important
 }
 
 .vp-doc .VPTeamMembers.small.count-2 .container,
 .vp-doc .VPTeamMembers.small.count-3 .container {
    max-width: 100% !important
 }
 
 .vp-doc .VPTeamMembers.medium.count-1 .container {
    margin: 0 !important;
    max-width: calc((100% - 24px)/2) !important
 }
 
 .vp-sponsor {
    border-radius: 16px;
    overflow: hidden
 }
 
 .vp-sponsor.aside {
    border-radius: 12px
 }
 
 .vp-sponsor-section+.vp-sponsor-section {
    margin-top: 4px
 }
 
 .vp-sponsor-tier {
    margin-bottom: 4px;
    text-align: center;
    letter-spacing: 1px;
    line-height: 24px;
    width: 100%;
    font-weight: 600;
    color: var(--vp-c-text-2);
    background-color: var(--vp-c-bg-soft)
 }
 
 .vp-sponsor.normal .vp-sponsor-tier {
    padding: 13px 0 11px;
    font-size: 14px
 }
 
 .vp-sponsor.aside .vp-sponsor-tier {
    padding: 9px 0 7px;
    font-size: 12px
 }
 
 .vp-sponsor-grid+.vp-sponsor-tier {
    margin-top: 4px
 }
 
 .vp-sponsor-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 4px
 }
 
 .vp-sponsor-grid.xmini .vp-sponsor-grid-link {
    height: 64px
 }
 
 .vp-sponsor-grid.xmini .vp-sponsor-grid-image {
    max-width: 64px;
    max-height: 22px
 }
 
 .vp-sponsor-grid.mini .vp-sponsor-grid-link {
    height: 72px
 }
 
 .vp-sponsor-grid.mini .vp-sponsor-grid-image {
    max-width: 96px;
    max-height: 24px
 }
 
 .vp-sponsor-grid.small .vp-sponsor-grid-link {
    height: 96px
 }
 
 .vp-sponsor-grid.small .vp-sponsor-grid-image {
    max-width: 96px;
    max-height: 24px
 }
 
 .vp-sponsor-grid.medium .vp-sponsor-grid-link {
    height: 112px
 }
 
 .vp-sponsor-grid.medium .vp-sponsor-grid-image {
    max-width: 120px;
    max-height: 36px
 }
 
 .vp-sponsor-grid.big .vp-sponsor-grid-link {
    height: 184px
 }
 
 .vp-sponsor-grid.big .vp-sponsor-grid-image {
    max-width: 192px;
    max-height: 56px
 }
 
 .vp-sponsor-grid[data-vp-grid="2"] .vp-sponsor-grid-item {
    width: calc((100% - 4px)/2)
 }
 
 .vp-sponsor-grid[data-vp-grid="3"] .vp-sponsor-grid-item {
    width: calc((100% - 4px * 2) / 3)
 }
 
 .vp-sponsor-grid[data-vp-grid="4"] .vp-sponsor-grid-item {
    width: calc((100% - 12px)/4)
 }
 
 .vp-sponsor-grid[data-vp-grid="5"] .vp-sponsor-grid-item {
    width: calc((100% - 16px)/5)
 }
 
 .vp-sponsor-grid[data-vp-grid="6"] .vp-sponsor-grid-item {
    width: calc((100% - 4px * 5) / 6)
 }
 
 .vp-sponsor-grid-item {
    flex-shrink: 0;
    width: 100%;
    background-color: var(--vp-c-bg-soft);
    transition: background-color .25s
 }
 
 .vp-sponsor-grid-item:hover {
    background-color: var(--vp-c-bg-soft-down)
 }
 
 .vp-sponsor-grid-item:hover .vp-sponsor-grid-image {
    filter: grayscale(0) invert(0)
 }
 
 .vp-sponsor-grid-item.empty:hover {
    background-color: var(--vp-c-bg-soft)
 }
 
 .dark .vp-sponsor-grid-item:hover {
    background-color: var(--vp-c-white)
 }
 
 .dark .vp-sponsor-grid-item.empty:hover {
    background-color: var(--vp-c-bg-soft)
 }
 
 .vp-sponsor-grid-link {
    display: flex
 }
 
 .vp-sponsor-grid-box {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%
 }
 
 .vp-sponsor-grid-image {
    max-width: 100%;
    filter: grayscale(1);
    transition: filter .25s
 }
 
 .dark .vp-sponsor-grid-image {
    filter: grayscale(1) invert(1)
 }
 
 .VPBadge[data-v-350d3852] {
    display: inline-block;
    margin-left: 2px;
    border: 1px solid transparent;
    border-radius: 10px;
    padding: 0 8px;
    line-height: 18px;
    font-size: 12px;
    font-weight: 600;
    transform: translateY(-2px)
 }
 
 h1 .VPBadge[data-v-350d3852],
 h2 .VPBadge[data-v-350d3852],
 h3 .VPBadge[data-v-350d3852],
 h4 .VPBadge[data-v-350d3852],
 h5 .VPBadge[data-v-350d3852],
 h6 .VPBadge[data-v-350d3852] {
    vertical-align: top
 }
 
 h2 .VPBadge[data-v-350d3852] {
    border-radius: 11px;
    line-height: 20px
 }
 
 .VPBadge.info[data-v-350d3852] {
    border-color: var(--vp-badge-info-border);
    color: var(--vp-badge-info-text);
    background-color: var(--vp-badge-info-bg)
 }
 
 .VPBadge.tip[data-v-350d3852] {
    border-color: var(--vp-badge-tip-border);
    color: var(--vp-badge-tip-text);
    background-color: var(--vp-badge-tip-bg)
 }
 
 .VPBadge.warning[data-v-350d3852] {
    border-color: var(--vp-badge-warning-border);
    color: var(--vp-badge-warning-text);
    background-color: var(--vp-badge-warning-bg)
 }
 
 .VPBadge.danger[data-v-350d3852] {
    border-color: var(--vp-badge-danger-border);
    color: var(--vp-badge-danger-text);
    background-color: var(--vp-badge-danger-bg)
 }
 
 .VPSkipLink[data-v-151f2593] {
    top: 8px;
    left: 8px;
    padding: 8px 16px;
    z-index: 999;
    border-radius: 8px;
    font-size: 12px;
    font-weight: 700;
    text-decoration: none;
    color: var(--vp-c-brand);
    box-shadow: var(--vp-shadow-3);
    background-color: var(--vp-c-bg)
 }
 
 .VPSkipLink[data-v-151f2593]:focus {
    height: auto;
    width: auto;
    clip: auto;
    clip-path: none
 }
 
 .dark .VPSkipLink[data-v-151f2593] {
    color: var(--vp-c-green)
 }
 
 @media (min-width: 1280px) {
    .VPSkipLink[data-v-151f2593] {
       top: 14px;
       left: 16px
    }
 }
 
 .VPBackdrop[data-v-c79a1216] {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: var(--vp-z-index-backdrop);
    background: var(--vp-backdrop-bg-color);
    transition: opacity .5s
 }
 
 .VPBackdrop.fade-enter-from[data-v-c79a1216],
 .VPBackdrop.fade-leave-to[data-v-c79a1216] {
    opacity: 0
 }
 
 .VPBackdrop.fade-leave-active[data-v-c79a1216] {
    transition-duration: .25s
 }
 
 @media (min-width: 1280px) {
    .VPBackdrop[data-v-c79a1216] {
       display: none
    }
 }
 
 html:not(.dark) .VPImage.dark[data-v-6db2186b] {
    display: none
 }
 
 .dark .VPImage.light[data-v-6db2186b] {
    display: none
 }
 
 .title[data-v-6d2fb2d9] {
    display: flex;
    align-items: center;
    border-bottom: 1px solid transparent;
    width: 100%;
    height: var(--vp-nav-height);
    font-size: 16px;
    font-weight: 600;
    color: var(--vp-c-text-1);
    transition: opacity .25s
 }
 
 .title[data-v-6d2fb2d9]:hover {
    opacity: .6
 }
 
 @media (min-width: 960px) {
    .title[data-v-6d2fb2d9] {
       flex-shrink: 0
    }
 
    .VPNavBarTitle.has-sidebar .title[data-v-6d2fb2d9] {
       border-bottom-color: var(--vp-c-divider)
    }
 }
 
 [data-v-6d2fb2d9] .logo {
    margin-right: 8px;
    height: 24px
 }
 
 .flex-logo {
    width: 80px;
    margin-left: calc(100% - 90px);
    padding-bottom: 10px
 }
 
 .search-list {
    padding: 1rem;
    max-height: calc(100vh - 230px);
    overflow-x: auto
 }
 
 .search-item-icon {
    font-family: none;
    align-self: center;
    padding: 0 1rem 0 0;
    font-size: x-large
 }
 
 .search-list>div {
    color: var(--vp-c-brand-dark);
    font-weight: 700
 }
 
 .search-item {
    padding: .25rem 1rem;
    margin: 8px 0 0;
    border: solid 1px;
    border-radius: 6px;
    display: flex;
    border-color: var(--vp-custom-block-details-border);
    color: var(--vp-custom-block-details-text);
    background-color: var(--vp-custom-block-details-bg)
 }
 
 .search-item p {
    margin: 0;
    font-size: smaller;
    color: var(--c-text-light-3)
 }
 
 .search-item:hover {
    color: #fff;
    background: var(--vp-c-brand-dark)
 }
 
 .search-item:hover>p {
    color: #fff
 }
 
 .VPNavBarSearch {
    display: flex;
    align-items: center;
    padding-left: 16px
 }
 
 .DocSearch-MagnifierLabel {
    margin: 16px;
    color: var(--c-brand-light);
    stroke-width: 2px
 }
 
 .DocSearch-Input {
    appearance: none;
    background: #58565636;
    border: solid 1px var(--c-brand-light);
    color: var(--docsearch-text-color);
    flex: 1;
    font: inherit;
    font-size: 1.2em;
    height: 100%;
    outline: none;
    width: 80%;
    margin: 8px;
    padding: 8px;
    border-radius: 6px
 }
 
 .dark .DocSearch-Input {
    color: var(--vp-c-text-1)
 }
 
 .modal-back {
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background: #545454b3;
    position: fixed;
    z-index: 65
 }
 
 .dark .modal {
    background-color: #242424
 }
 
 .modal {
    background-color: #f9f9f9;
    border-radius: 6px;
    box-shadow: none;
    flex-direction: column;
    margin: 80px auto auto;
    max-width: 560px;
    position: relative
 }
 
 .DocSearch-Button-Keys {
    display: flex;
    min-width: calc(40px + .8em)
 }
 
 @media (max-width: 768px) {
    .modal {
       max-width: 100%;
       border-radius: 0
    }
 }
 
 .dark .DocSearch-Form {
    background-color: var(--vt-c-bg-mute)
 }
 
 .DocSearch-Form {
    background-color: #fff;
    border: 1px solid var(--vt-c-brand);
    padding: 6px
 }
 
 .DocSearch-Form {
    align-items: center;
    background: var(--docsearch-searchbox-focus-background);
    border-radius: 4px;
    box-shadow: var(--docsearch-searchbox-shadow);
    display: flex;
    height: var(--docsearch-searchbox-height);
    margin: 0;
    padding: 0 var(--docsearch-spacing);
    position: relative;
    width: 100%
 }
 
 .DocSearch-Container,
 .DocSearch-Container * {
    box-sizing: border-box
 }
 
 .DocSearch-Button-Key {
    align-items: center;
    background: var(--c-brand-light);
    border-radius: 3px;
    box-shadow: var(--c-brand);
    color: var(--docsearch-muted-color);
    display: flex;
    height: 18px;
    justify-content: center;
    margin-right: .4em;
    padding-bottom: 2px;
    position: relative;
    top: -1px;
    width: 20px
 }
 
 body.dark .DocSearch-Button:hover {
    box-shadow: none
 }
 
 .DocSearch {
    --docsearch-primary-color: var(--vt-c-brand);
    --docsearch-highlight-color: var(--docsearch-primary-color);
    --docsearch-text-color: var(--vt-c-text-1);
    --docsearch-muted-color: #ebebeb99;
    --docsearch-searchbox-shadow: none;
    --docsearch-searchbox-focus-background: transparent;
    --docsearch-key-gradient: transparent;
    --docsearch-key-shadow: none;
    --docsearch-modal-background: var(--vt-c-bg-soft);
    --docsearch-footer-background: var(--vt-c-bg)
 }
 
 .dark .DocSearch {
    --docsearch-modal-shadow: none;
    --docsearch-footer-shadow: none;
    --docsearch-logo-color: #ebebeb99;
    --docsearch-hit-background: #2f2f2f;
    --docsearch-hit-color: #ebebeb99;
    --docsearch-hit-shadow: none
 }
 
 .dark .DocSearch-Footer {
    border-top: 1px solid var(--vt-c-divider)
 }
 
 .DocSearch-Form {
    background-color: #fff;
    border: 1px solid var(--vt-c-brand)
 }
 
 .DocSearch-Button-Container {
    align-items: center;
    display: flex
 }
 
 .DocSearch-Button {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0;
    width: 48px;
    height: 55px;
    background: transparent;
    border: none
 }
 
 .DocSearch-Button:hover {
    background: transparent
 }
 
 .DocSearch-Button:focus {
    outline: 1px dotted;
    outline: 5px auto -webkit-focus-ring-color
 }
 
 .DocSearch-Button:focus:not(:focus-visible) {
    outline: none !important
 }
 
 @media (min-width: 768px) {
    .DocSearch-Button {
       justify-content: flex-start;
       width: 100%
    }
 }
 
 .DocSearch-MagnifierLabel {
    color: var(--vp-c-brand-dark)
 }
 
 .DocSearch-Button .DocSearch-Search-Icon {
    transition: color .5s;
    fill: currentColor;
    width: 18px;
    height: 18px;
    position: relative
 }
 
 @media (min-width: 768px) {
    .DocSearch-Button .DocSearch-Search-Icon {
       top: 1px;
       margin-right: 10px;
       width: 15px;
       height: 15px
    }
 }
 
 .DocSearch-Button:hover .DocSearch-Search-Icon {
    color: var(--vt-c-text-1)
 }
 
 .DocSearch-Button-Placeholder {
    transition: color .5s;
    font-size: 13px;
    font-weight: 500;
    color: #6669;
    display: none;
    padding: 0 10px 0 0
 }
 
 @media (min-width: 960px) {
    .DocSearch-Button-Placeholder {
       display: inline-block
    }
 }
 
 .DocSearch-Button:hover .DocSearch-Button-Placeholder {
    color: var(--vt-c-text-1)
 }
 
 .DocSearch-Button .DocSearch-Button-Key {
    margin-top: 2px;
    border: 1px solid var(--vt-c-divider);
    border-right: none;
    border-radius: 4px 0 0 4px;
    display: none;
    padding-left: 6px;
    height: 22px;
    line-height: 22px;
    transition: color .5s, border-color .5s;
    min-width: 0
 }
 
 .DocSearch-Button .DocSearch-Button-Key+.DocSearch-Button-Key {
    border-right: 1px solid var(--vt-c-divider);
    border-left: none;
    border-radius: 0 4px 4px 0;
    padding-left: 2px;
    padding-right: 6px
 }
 
 .DocSearch-Button:hover .DocSearch-Button-Key {
    color: var(--vt-c-brand-light)
 }
 
 @media (min-width: 768px) {
    .DocSearch-Button .DocSearch-Button-Key {
       display: inline-block
    }
 }
 
 .DocSearch-Button-Key {
    font-size: 12px;
    font-weight: 500;
    height: 20px;
    margin: 0;
    width: auto;
    color: var(--vt-c-text-3);
    transition: color .5s;
    display: inline-block;
    padding: 0 1px
 }
 
 .icon[data-v-30c06bd3] {
    display: inline-block;
    margin-top: -1px;
    margin-left: 4px;
    width: 11px;
    height: 11px;
    fill: var(--vp-c-text-3);
    transition: fill .25s
 }
 
 .VPNavBarMenuLink[data-v-95f5d58b] {
    display: flex;
    align-items: center;
    padding: 0 12px;
    line-height: var(--vp-nav-height);
    font-size: 14px;
    font-weight: 500;
    color: var(--vp-c-text-1);
    transition: color .25s
 }
 
 .VPNavBarMenuLink.active[data-v-95f5d58b],
 .VPNavBarMenuLink[data-v-95f5d58b]:hover {
    color: var(--vp-c-brand)
 }
 
 .VPMenuGroup+.VPMenuLink[data-v-a5bbb52c] {
    margin: 12px -12px 0;
    border-top: 1px solid var(--vp-c-divider);
    padding: 12px 12px 0
 }
 
 .link[data-v-a5bbb52c] {
    display: block;
    border-radius: 6px;
    padding: 0 12px;
    line-height: 32px;
    font-size: 14px;
    font-weight: 500;
    color: var(--vp-c-text-1);
    white-space: nowrap;
    transition: background-color .25s, color .25s
 }
 
 .link[data-v-a5bbb52c]:hover {
    color: var(--vp-c-brand);
    background-color: var(--vp-c-bg-elv-mute)
 }
 
 .link.active[data-v-a5bbb52c] {
    color: var(--vp-c-brand)
 }
 
 .VPMenuGroup[data-v-b66affaf] {
    margin: 12px -12px 0;
    border-top: 1px solid var(--vp-c-divider);
    padding: 12px 12px 0
 }
 
 .VPMenuGroup[data-v-b66affaf]:first-child {
    margin-top: 0;
    border-top: 0;
    padding-top: 0
 }
 
 .VPMenuGroup+.VPMenuGroup[data-v-b66affaf] {
    margin-top: 12px;
    border-top: 1px solid var(--vp-c-divider)
 }
 
 .title[data-v-b66affaf] {
    padding: 0 12px;
    line-height: 32px;
    font-size: 14px;
    font-weight: 600;
    color: var(--vp-c-text-2);
    transition: color .25s
 }
 
 .VPMenu[data-v-e7ea1737] {
    border-radius: 12px;
    padding: 12px;
    min-width: 128px;
    border: 1px solid var(--vp-c-divider);
    background-color: var(--vp-c-bg-elv);
    box-shadow: var(--vp-shadow-3);
    transition: background-color .5s;
    max-height: calc(100vh - var(--vp-nav-height));
    overflow-y: auto
 }
 
 .VPMenu[data-v-e7ea1737] .group {
    margin: 0 -12px;
    padding: 0 12px 12px
 }
 
 .VPMenu[data-v-e7ea1737] .group+.group {
    border-top: 1px solid var(--vp-c-divider);
    padding: 11px 12px 12px
 }
 
 .VPMenu[data-v-e7ea1737] .group:last-child {
    padding-bottom: 0
 }
 
 .VPMenu[data-v-e7ea1737] .group+.item {
    border-top: 1px solid var(--vp-c-divider);
    padding: 11px 16px 0
 }
 
 .VPMenu[data-v-e7ea1737] .item {
    padding: 0 16px;
    white-space: nowrap
 }
 
 .VPMenu[data-v-e7ea1737] .label {
    flex-grow: 1;
    line-height: 28px;
    font-size: 12px;
    font-weight: 500;
    color: var(--vp-c-text-2);
    transition: color .5s
 }
 
 .VPMenu[data-v-e7ea1737] .action {
    padding-left: 24px
 }
 
 .VPFlyout[data-v-96001b6b] {
    position: relative
 }
 
 .VPFlyout[data-v-96001b6b]:hover {
    color: var(--vp-c-brand);
    transition: color .25s
 }
 
 .VPFlyout:hover .text[data-v-96001b6b] {
    color: var(--vp-c-text-2)
 }
 
 .VPFlyout:hover .icon[data-v-96001b6b] {
    fill: var(--vp-c-text-2)
 }
 
 .VPFlyout.active .text[data-v-96001b6b] {
    color: var(--vp-c-brand)
 }
 
 .VPFlyout.active:hover .text[data-v-96001b6b] {
    color: var(--vp-c-brand-dark)
 }
 
 .VPFlyout:hover .menu[data-v-96001b6b],
 .button[aria-expanded=true]+.menu[data-v-96001b6b] {
    opacity: 1;
    visibility: visible;
    transform: translateY(0)
 }
 
 .button[data-v-96001b6b] {
    display: flex;
    align-items: center;
    padding: 0 12px;
    height: var(--vp-nav-height);
    color: var(--vp-c-text-1);
    transition: color .5s
 }
 
 .text[data-v-96001b6b] {
    display: flex;
    align-items: center;
    line-height: var(--vp-nav-height);
    font-size: 14px;
    font-weight: 500;
    color: var(--vp-c-text-1);
    transition: color .25s
 }
 
 .option-icon[data-v-96001b6b] {
    margin-right: 0;
    width: 16px;
    height: 16px;
    fill: currentColor
 }
 
 .text-icon[data-v-96001b6b] {
    margin-left: 4px;
    width: 14px;
    height: 14px;
    fill: currentColor
 }
 
 .icon[data-v-96001b6b] {
    width: 20px;
    height: 20px;
    fill: currentColor;
    transition: fill .25s
 }
 
 .menu[data-v-96001b6b] {
    position: absolute;
    top: calc(var(--vp-nav-height) / 2 + 20px);
    right: 0;
    opacity: 0;
    visibility: hidden;
    transition: opacity .25s, visibility .25s, transform .25s
 }
 
 .VPNavBarMenu[data-v-bdedfc22] {
    display: none
 }
 
 @media (min-width: 768px) {
    .VPNavBarMenu[data-v-bdedfc22] {
       display: flex
    }
 }
 
 .VPNavBarTranslations[data-v-fdaf79b7] {
    display: none
 }
 
 @media (min-width: 1280px) {
    .VPNavBarTranslations[data-v-fdaf79b7] {
       display: flex;
       align-items: center
    }
 }
 
 .title[data-v-fdaf79b7] {
    padding: 0 24px 0 12px;
    line-height: 32px;
    font-size: 14px;
    font-weight: 700;
    color: var(--vp-c-text-1)
 }
 
 .VPSwitch[data-v-f3c41672] {
    position: relative;
    border-radius: 11px;
    display: block;
    width: 40px;
    height: 22px;
    flex-shrink: 0;
    border: 1px solid var(--vp-input-border-color);
    background-color: var(--vp-input-switch-bg-color);
    transition: border-color .25s
 }
 
 .VPSwitch[data-v-f3c41672]:hover {
    border-color: var(--vp-input-hover-border-color)
 }
 
 .check[data-v-f3c41672] {
    position: absolute;
    top: 1px;
    left: 1px;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background-color: var(--vp-c-neutral-inverse);
    box-shadow: var(--vp-shadow-1);
    transition: transform .25s
 }
 
 .icon[data-v-f3c41672] {
    position: relative;
    display: block;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    overflow: hidden
 }
 
 .icon[data-v-f3c41672] svg {
    position: absolute;
    top: 3px;
    left: 3px;
    width: 12px;
    height: 12px;
    fill: var(--vp-c-text-2)
 }
 
 .dark .icon[data-v-f3c41672] svg {
    fill: var(--vp-c-text-1);
    transition: opacity .25s
 }
 
 .sun[data-v-0d529b6d] {
    opacity: 1
 }
 
 .moon[data-v-0d529b6d],
 .dark .sun[data-v-0d529b6d] {
    opacity: 0
 }
 
 .dark .moon[data-v-0d529b6d] {
    opacity: 1
 }
 
 .dark .VPSwitchAppearance[data-v-0d529b6d] .check {
    transform: translate(18px)
 }
 
 .VPNavBarAppearance[data-v-da3f667a] {
    display: none
 }
 
 @media (min-width: 1280px) {
    .VPNavBarAppearance[data-v-da3f667a] {
       display: flex;
       align-items: center
    }
 }
 
 .VPSocialLink[data-v-e57698f6] {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 36px;
    height: 36px;
    color: var(--vp-c-text-2);
    transition: color .5s
 }
 
 .VPSocialLink[data-v-e57698f6]:hover {
    color: var(--vp-c-text-1);
    transition: color .25s
 }
 
 .VPSocialLink[data-v-e57698f6]>svg {
    width: 20px;
    height: 20px;
    fill: currentColor
 }
 
 .VPSocialLinks[data-v-f6988cfb] {
    display: flex;
    flex-wrap: wrap;
    justify-content: center
 }
 
 .VPNavBarSocialLinks[data-v-2ab2a029] {
    display: none
 }
 
 @media (min-width: 1280px) {
    .VPNavBarSocialLinks[data-v-2ab2a029] {
       display: flex;
       align-items: center
    }
 }
 
 .VPNavBarExtra[data-v-f38c483a] {
    display: none;
    margin-right: -12px
 }
 
 @media (min-width: 768px) {
    .VPNavBarExtra[data-v-f38c483a] {
       display: block
    }
 }
 
 @media (min-width: 1280px) {
    .VPNavBarExtra[data-v-f38c483a] {
       display: none
    }
 }
 
 .trans-title[data-v-f38c483a] {
    padding: 0 24px 0 12px;
    line-height: 32px;
    font-size: 14px;
    font-weight: 700;
    color: var(--vp-c-text-1)
 }
 
 .item.appearance[data-v-f38c483a],
 .item.social-links[data-v-f38c483a] {
    display: flex;
    align-items: center;
    padding: 0 12px
 }
 
 .item.appearance[data-v-f38c483a] {
    min-width: 176px
 }
 
 .appearance-action[data-v-f38c483a] {
    margin-right: -2px
 }
 
 .social-links-list[data-v-f38c483a] {
    margin: -4px -8px
 }
 
 .VPNavBarHamburger[data-v-e5dd9c1c] {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 48px;
    height: var(--vp-nav-height)
 }
 
 @media (min-width: 768px) {
    .VPNavBarHamburger[data-v-e5dd9c1c] {
       display: none
    }
 }
 
 .container[data-v-e5dd9c1c] {
    position: relative;
    width: 16px;
    height: 14px;
    overflow: hidden
 }
 
 .VPNavBarHamburger:hover .top[data-v-e5dd9c1c] {
    top: 0;
    left: 0;
    transform: translate(4px)
 }
 
 .VPNavBarHamburger:hover .middle[data-v-e5dd9c1c] {
    top: 6px;
    left: 0;
    transform: translate(0)
 }
 
 .VPNavBarHamburger:hover .bottom[data-v-e5dd9c1c] {
    top: 12px;
    left: 0;
    transform: translate(8px)
 }
 
 .VPNavBarHamburger.active .top[data-v-e5dd9c1c] {
    top: 6px;
    transform: translate(0) rotate(225deg)
 }
 
 .VPNavBarHamburger.active .middle[data-v-e5dd9c1c] {
    top: 6px;
    transform: translate(16px)
 }
 
 .VPNavBarHamburger.active .bottom[data-v-e5dd9c1c] {
    top: 6px;
    transform: translate(0) rotate(135deg)
 }
 
 .VPNavBarHamburger.active:hover .top[data-v-e5dd9c1c],
 .VPNavBarHamburger.active:hover .middle[data-v-e5dd9c1c],
 .VPNavBarHamburger.active:hover .bottom[data-v-e5dd9c1c] {
    background-color: var(--vp-c-text-2);
    transition: top .25s, background-color .25s, transform .25s
 }
 
 .top[data-v-e5dd9c1c],
 .middle[data-v-e5dd9c1c],
 .bottom[data-v-e5dd9c1c] {
    position: absolute;
    width: 16px;
    height: 2px;
    background-color: var(--vp-c-text-1);
    transition: top .25s, background-color .5s, transform .25s
 }
 
 .top[data-v-e5dd9c1c] {
    top: 0;
    left: 0;
    transform: translate(0)
 }
 
 .middle[data-v-e5dd9c1c] {
    top: 6px;
    left: 0;
    transform: translate(8px)
 }
 
 .bottom[data-v-e5dd9c1c] {
    top: 12px;
    left: 0;
    transform: translate(4px)
 }
 
 .VPNavBar[data-v-be450ad9] {
    position: relative;
    border-bottom: 1px solid transparent;
    padding: 0 8px 0 24px;
    height: var(--vp-nav-height);
    transition: border-color .5s, background-color .5s;
    pointer-events: none
 }
 
 .VPNavBar.has-sidebar[data-v-be450ad9] {
    border-bottom-color: var(--vp-c-gutter)
 }
 
 @media (min-width: 768px) {
    .VPNavBar[data-v-be450ad9] {
       padding: 0 32px
    }
 }
 
 @media (min-width: 960px) {
    .VPNavBar.has-sidebar[data-v-be450ad9] {
       border-bottom-color: transparent;
       padding: 0
    }
 
    .VPNavBar.fill[data-v-be450ad9]:not(.has-sidebar) {
       border-bottom-color: var(--vp-c-gutter);
       background-color: var(--vp-nav-bg-color)
    }
 }
 
 .container[data-v-be450ad9] {
    display: flex;
    justify-content: space-between;
    margin: 0 auto;
    max-width: calc(var(--vp-layout-max-width) - 64px);
    height: var(--vp-nav-height);
    pointer-events: none
 }
 
 .container[data-v-be450ad9] * {
    pointer-events: auto
 }
 
 @media (min-width: 960px) {
    .VPNavBar.has-sidebar .container[data-v-be450ad9] {
       max-width: 100%
    }
 }
 
 .title[data-v-be450ad9] {
    flex-shrink: 0;
    height: calc(var(--vp-nav-height) - 1px);
    transition: background-color .5s
 }
 
 @media (min-width: 960px) {
    .VPNavBar.has-sidebar .title[data-v-be450ad9] {
       position: absolute;
       top: 0;
       left: 0;
       z-index: 2;
       padding: 0 32px;
       width: var(--vp-sidebar-width);
       height: var(--vp-nav-height);
       background-color: transparent
    }
 }
 
 @media (min-width: 1440px) {
    .VPNavBar.has-sidebar .title[data-v-be450ad9] {
       padding-left: max(32px, calc((100% - (var(--vp-layout-max-width) - 64px)) / 2));
       width: calc((100% - (var(--vp-layout-max-width) - 64px)) / 2 + var(--vp-sidebar-width) - 32px)
    }
 }
 
 .content[data-v-be450ad9] {
    flex-grow: 1
 }
 
 @media (min-width: 960px) {
    .VPNavBar.has-sidebar .content[data-v-be450ad9] {
       position: relative;
       z-index: 1;
       padding-right: 32px;
       padding-left: var(--vp-sidebar-width)
    }
 }
 
 @media (min-width: 1440px) {
    .VPNavBar.has-sidebar .content[data-v-be450ad9] {
       padding-right: calc((100vw - var(--vp-layout-max-width)) / 2 + 32px);
       padding-left: calc((100vw - var(--vp-layout-max-width)) / 2 + var(--vp-sidebar-width))
    }
 }
 
 .content-body[data-v-be450ad9] {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    height: calc(var(--vp-nav-height) - 1px);
    transition: background-color .5s
 }
 
 @media (min-width: 960px) {
 
    .VPNavBar.has-sidebar .content-body[data-v-be450ad9],
    .VPNavBar.fill .content-body[data-v-be450ad9] {
       position: relative;
       background-color: var(--vp-nav-bg-color)
    }
 }
 
 .menu+.translations[data-v-be450ad9]:before,
 .menu+.appearance[data-v-be450ad9]:before,
 .menu+.social-links[data-v-be450ad9]:before,
 .translations+.appearance[data-v-be450ad9]:before,
 .appearance+.social-links[data-v-be450ad9]:before {
    margin-right: 8px;
    margin-left: 8px;
    width: 1px;
    height: 24px;
    background-color: var(--vp-c-divider);
    content: ""
 }
 
 .menu+.appearance[data-v-be450ad9]:before,
 .translations+.appearance[data-v-be450ad9]:before {
    margin-right: 16px
 }
 
 .appearance+.social-links[data-v-be450ad9]:before {
    margin-left: 16px
 }
 
 .social-links[data-v-be450ad9] {
    margin-right: -8px
 }
 
 @media (min-width: 960px) {
    .VPNavBar.has-sidebar .curtain[data-v-be450ad9] {
       position: absolute;
       right: 0;
       bottom: -31px;
       width: calc(100% - var(--vp-sidebar-width));
       height: 32px
    }
 
    .VPNavBar.has-sidebar .curtain[data-v-be450ad9]:before {
       display: block;
       width: 100%;
       height: 32px;
       background: linear-gradient(var(--vp-c-bg), transparent 70%);
       content: ""
    }
 }
 
 @media (min-width: 1440px) {
    .VPNavBar.has-sidebar .curtain[data-v-be450ad9] {
       width: calc(100% - ((100vw - var(--vp-layout-max-width)) / 2 + var(--vp-sidebar-width)))
    }
 }
 
 .VPNavScreenMenuLink[data-v-c328f34f] {
    display: block;
    border-bottom: 1px solid var(--vp-c-divider);
    padding: 12px 0 11px;
    line-height: 24px;
    font-size: 14px;
    font-weight: 500;
    color: var(--vp-c-text-1);
    transition: border-color .25s, color .25s
 }
 
 .VPNavScreenMenuLink[data-v-c328f34f]:hover {
    color: var(--vp-c-brand)
 }
 
 .VPNavScreenMenuGroupLink[data-v-3d20956d] {
    display: block;
    margin-left: 12px;
    line-height: 32px;
    font-size: 14px;
    font-weight: 400;
    color: var(--vp-c-text-1);
    transition: color .25s
 }
 
 .VPNavScreenMenuGroupLink[data-v-3d20956d]:hover {
    color: var(--vp-c-brand)
 }
 
 .VPNavScreenMenuGroupSection[data-v-7478538b] {
    display: block
 }
 
 .title[data-v-7478538b] {
    line-height: 32px;
    font-size: 13px;
    font-weight: 700;
    color: var(--vp-c-text-2);
    transition: color .25s
 }
 
 .VPNavScreenMenuGroup[data-v-a9a19324] {
    border-bottom: 1px solid var(--vp-c-divider);
    height: 48px;
    overflow: hidden;
    transition: border-color .5s
 }
 
 .VPNavScreenMenuGroup .items[data-v-a9a19324] {
    visibility: hidden
 }
 
 .VPNavScreenMenuGroup.open .items[data-v-a9a19324] {
    visibility: visible
 }
 
 .VPNavScreenMenuGroup.open[data-v-a9a19324] {
    padding-bottom: 10px;
    height: auto
 }
 
 .VPNavScreenMenuGroup.open .button[data-v-a9a19324] {
    padding-bottom: 6px;
    color: var(--vp-c-brand)
 }
 
 .VPNavScreenMenuGroup.open .button-icon[data-v-a9a19324] {
    transform: rotate(45deg)
 }
 
 .button[data-v-a9a19324] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 4px 11px 0;
    width: 100%;
    line-height: 24px;
    font-size: 14px;
    font-weight: 500;
    color: var(--vp-c-text-1);
    transition: color .25s
 }
 
 .button[data-v-a9a19324]:hover {
    color: var(--vp-c-brand)
 }
 
 .button-icon[data-v-a9a19324] {
    width: 14px;
    height: 14px;
    fill: var(--vp-c-text-2);
    transition: fill .5s, transform .25s
 }
 
 .group[data-v-a9a19324]:first-child {
    padding-top: 0
 }
 
 .group+.group[data-v-a9a19324],
 .group+.item[data-v-a9a19324] {
    padding-top: 4px
 }
 
 .VPNavScreenAppearance[data-v-7e6603c2] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-radius: 8px;
    padding: 12px 14px 12px 16px;
    background-color: var(--vp-c-bg-soft)
 }
 
 .text[data-v-7e6603c2] {
    line-height: 24px;
    font-size: 12px;
    font-weight: 500;
    color: var(--vp-c-text-2)
 }
 
 .VPNavScreenTranslations[data-v-8982effe] {
    height: 24px;
    overflow: hidden
 }
 
 .VPNavScreenTranslations.open[data-v-8982effe] {
    height: auto
 }
 
 .title[data-v-8982effe] {
    display: flex;
    align-items: center;
    font-size: 14px;
    font-weight: 500;
    color: var(--vp-c-text-1)
 }
 
 .icon[data-v-8982effe] {
    width: 16px;
    height: 16px;
    fill: currentColor
 }
 
 .icon.lang[data-v-8982effe] {
    margin-right: 8px
 }
 
 .icon.chevron[data-v-8982effe] {
    margin-left: 4px
 }
 
 .list[data-v-8982effe] {
    padding: 4px 0 0 24px
 }
 
 .link[data-v-8982effe] {
    line-height: 32px;
    font-size: 13px;
    color: var(--vp-c-text-1)
 }
 
 .VPNavScreen[data-v-724636ae] {
    position: fixed;
    top: calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + 1px);
    right: 0;
    bottom: 0;
    left: 0;
    padding: 0 32px;
    width: 100%;
    background-color: var(--vp-nav-screen-bg-color);
    overflow-y: auto;
    transition: background-color .5s;
    pointer-events: auto
 }
 
 .VPNavScreen.fade-enter-active[data-v-724636ae],
 .VPNavScreen.fade-leave-active[data-v-724636ae] {
    transition: opacity .25s
 }
 
 .VPNavScreen.fade-enter-active .container[data-v-724636ae],
 .VPNavScreen.fade-leave-active .container[data-v-724636ae] {
    transition: transform .25s ease
 }
 
 .VPNavScreen.fade-enter-from[data-v-724636ae],
 .VPNavScreen.fade-leave-to[data-v-724636ae] {
    opacity: 0
 }
 
 .VPNavScreen.fade-enter-from .container[data-v-724636ae],
 .VPNavScreen.fade-leave-to .container[data-v-724636ae] {
    transform: translateY(-8px)
 }
 
 @media (min-width: 768px) {
    .VPNavScreen[data-v-724636ae] {
       display: none
    }
 }
 
 .container[data-v-724636ae] {
    margin: 0 auto;
    padding: 24px 0 96px;
    max-width: 288px
 }
 
 .menu+.translations[data-v-724636ae],
 .menu+.appearance[data-v-724636ae],
 .translations+.appearance[data-v-724636ae] {
    margin-top: 24px
 }
 
 .menu+.social-links[data-v-724636ae] {
    margin-top: 16px
 }
 
 .appearance+.social-links[data-v-724636ae] {
    margin-top: 16px
 }
 
 .VPNav[data-v-0fa0e57d] {
    position: relative;
    top: var(--vp-layout-top-height, 0px);
    left: 0;
    z-index: var(--vp-z-index-nav);
    width: 100%;
    pointer-events: none;
    transition: background-color .5s
 }
 
 @media (min-width: 960px) {
    .VPNav[data-v-0fa0e57d] {
       position: fixed
    }
 }
 
 .VPLocalNav[data-v-2817d72e] {
    position: sticky;
    top: 0;
    left: 0;
    z-index: var(--vp-z-index-local-nav);
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid var(--vp-c-gutter);
    padding-top: var(--vp-layout-top-height, 0px);
    width: 100%;
    background-color: var(--vp-local-nav-bg-color);
    transition: border-color .5s, background-color .5s
 }
 
 @media (min-width: 960px) {
    .VPLocalNav[data-v-2817d72e] {
       display: none
    }
 }
 
 .menu[data-v-2817d72e] {
    display: flex;
    align-items: center;
    padding: 12px 24px 11px;
    line-height: 24px;
    font-size: 12px;
    font-weight: 500;
    color: var(--vp-c-text-2);
    transition: color .5s
 }
 
 .menu[data-v-2817d72e]:hover {
    color: var(--vp-c-text-1);
    transition: color .25s
 }
 
 @media (min-width: 768px) {
    .menu[data-v-2817d72e] {
       padding: 0 32px
    }
 }
 
 .menu-icon[data-v-2817d72e] {
    margin-right: 8px;
    width: 16px;
    height: 16px;
    fill: currentColor
 }
 
 .top-link[data-v-2817d72e] {
    display: block;
    padding: 12px 24px 11px;
    line-height: 24px;
    font-size: 12px;
    font-weight: 500;
    color: var(--vp-c-text-2);
    transition: color .5s
 }
 
 .top-link[data-v-2817d72e]:hover {
    color: var(--vp-c-text-1);
    transition: color .25s
 }
 
 @media (min-width: 768px) {
    .top-link[data-v-2817d72e] {
       padding: 12px 32px 11px
    }
 }
 
 .VPSidebarItem.level-0[data-v-b05232f3] {
    padding-bottom: 24px
 }
 
 .VPSidebarItem.collapsed.level-0[data-v-b05232f3] {
    padding-bottom: 10px
 }
 
 .item[data-v-b05232f3] {
    position: relative;
    display: flex;
    width: 100%
 }
 
 .VPSidebarItem.collapsible>.item[data-v-b05232f3] {
    cursor: pointer
 }
 
 .indicator[data-v-b05232f3] {
    position: absolute;
    top: 6px;
    bottom: 6px;
    left: -17px;
    width: 1px;
    transition: background-color .25s
 }
 
 .VPSidebarItem.level-2.is-active>.item>.indicator[data-v-b05232f3],
 .VPSidebarItem.level-3.is-active>.item>.indicator[data-v-b05232f3],
 .VPSidebarItem.level-4.is-active>.item>.indicator[data-v-b05232f3],
 .VPSidebarItem.level-5.is-active>.item>.indicator[data-v-b05232f3] {
    background-color: var(--vp-c-brand)
 }
 
 .link[data-v-b05232f3] {
    display: block;
    flex-grow: 1
 }
 
 .text[data-v-b05232f3] {
    flex-grow: 1;
    padding: 4px 0;
    line-height: 24px;
    font-size: 14px;
    transition: color .25s
 }
 
 .VPSidebarItem.level-0 .text[data-v-b05232f3] {
    font-weight: 700;
    color: var(--vp-c-text-1)
 }
 
 .VPSidebarItem.level-1 .text[data-v-b05232f3],
 .VPSidebarItem.level-2 .text[data-v-b05232f3],
 .VPSidebarItem.level-3 .text[data-v-b05232f3],
 .VPSidebarItem.level-4 .text[data-v-b05232f3],
 .VPSidebarItem.level-5 .text[data-v-b05232f3] {
    font-weight: 500;
    color: var(--vp-c-text-2)
 }
 
 .VPSidebarItem.level-0.is-link>.item>.link:hover .text[data-v-b05232f3],
 .VPSidebarItem.level-1.is-link>.item>.link:hover .text[data-v-b05232f3],
 .VPSidebarItem.level-2.is-link>.item>.link:hover .text[data-v-b05232f3],
 .VPSidebarItem.level-3.is-link>.item>.link:hover .text[data-v-b05232f3],
 .VPSidebarItem.level-4.is-link>.item>.link:hover .text[data-v-b05232f3],
 .VPSidebarItem.level-5.is-link>.item>.link:hover .text[data-v-b05232f3] {
    color: var(--vp-c-brand)
 }
 
 .VPSidebarItem.level-0.has-active>.item>.link>.text[data-v-b05232f3],
 .VPSidebarItem.level-1.has-active>.item>.link>.text[data-v-b05232f3],
 .VPSidebarItem.level-2.has-active>.item>.link>.text[data-v-b05232f3],
 .VPSidebarItem.level-3.has-active>.item>.link>.text[data-v-b05232f3],
 .VPSidebarItem.level-4.has-active>.item>.link>.text[data-v-b05232f3],
 .VPSidebarItem.level-5.has-active>.item>.link>.text[data-v-b05232f3] {
    color: var(--vp-c-text-1)
 }
 
 .VPSidebarItem.level-0.is-active>.item .link>.text[data-v-b05232f3],
 .VPSidebarItem.level-1.is-active>.item .link>.text[data-v-b05232f3],
 .VPSidebarItem.level-2.is-active>.item .link>.text[data-v-b05232f3],
 .VPSidebarItem.level-3.is-active>.item .link>.text[data-v-b05232f3],
 .VPSidebarItem.level-4.is-active>.item .link>.text[data-v-b05232f3],
 .VPSidebarItem.level-5.is-active>.item .link>.text[data-v-b05232f3] {
    color: var(--vp-c-brand)
 }
 
 .caret[data-v-b05232f3] {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-right: -7px;
    width: 32px;
    height: 32px;
    color: var(--vp-c-text-3);
    cursor: pointer;
    transition: color .25s
 }
 
 .item:hover .caret[data-v-b05232f3] {
    color: var(--vp-c-text-2)
 }
 
 .item:hover .caret[data-v-b05232f3]:hover {
    color: var(--vp-c-text-1)
 }
 
 .caret-icon[data-v-b05232f3] {
    width: 18px;
    height: 18px;
    fill: currentColor;
    transform: rotate(90deg);
    transition: transform .25s
 }
 
 .VPSidebarItem.collapsed .caret-icon[data-v-b05232f3] {
    transform: rotate(0)
 }
 
 .VPSidebarItem.level-1 .items[data-v-b05232f3],
 .VPSidebarItem.level-2 .items[data-v-b05232f3],
 .VPSidebarItem.level-3 .items[data-v-b05232f3],
 .VPSidebarItem.level-4 .items[data-v-b05232f3],
 .VPSidebarItem.level-5 .items[data-v-b05232f3] {
    border-left: 1px solid var(--vp-c-divider);
    padding-left: 16px
 }
 
 .VPSidebarItem.collapsed .items[data-v-b05232f3] {
    display: none
 }
 
 .VPSidebar[data-v-c79ccefa] {
    position: fixed;
    top: var(--vp-layout-top-height, 0px);
    bottom: 0;
    left: 0;
    z-index: var(--vp-z-index-sidebar);
    padding: 32px 32px 96px;
    width: calc(100vw - 64px);
    max-width: 320px;
    background-color: var(--vp-sidebar-bg-color);
    opacity: 0;
    box-shadow: var(--vp-c-shadow-3);
    overflow-x: hidden;
    overflow-y: auto;
    transform: translate(-100%);
    transition: opacity .5s, transform .25s ease
 }
 
 .VPSidebar.open[data-v-c79ccefa] {
    opacity: 1;
    visibility: visible;
    transform: translate(0);
    transition: opacity .25s, transform .5s cubic-bezier(.19, 1, .22, 1)
 }
 
 .dark .VPSidebar[data-v-c79ccefa] {
    box-shadow: var(--vp-shadow-1)
 }
 
 @media (min-width: 960px) {
    .VPSidebar[data-v-c79ccefa] {
       z-index: 1;
       padding-top: var(--vp-nav-height);
       padding-bottom: 128px;
       width: var(--vp-sidebar-width);
       max-width: 100%;
       background-color: var(--vp-sidebar-bg-color);
       opacity: 1;
       visibility: visible;
       box-shadow: none;
       transform: translate(0)
    }
 }
 
 @media (min-width: 1440px) {
    .VPSidebar[data-v-c79ccefa] {
       padding-left: max(32px, calc((100% - (var(--vp-layout-max-width) - 64px)) / 2));
       width: calc((100% - (var(--vp-layout-max-width) - 64px)) / 2 + var(--vp-sidebar-width) - 32px)
    }
 }
 
 @media (min-width: 960px) {
    .curtain[data-v-c79ccefa] {
       position: sticky;
       top: -64px;
       left: 0;
       z-index: 1;
       margin-top: calc(var(--vp-nav-height) * -1);
       margin-right: -32px;
       margin-left: -32px;
       height: var(--vp-nav-height);
       background-color: var(--vp-sidebar-bg-color)
    }
 }
 
 .nav[data-v-c79ccefa] {
    outline: 0
 }
 
 .group+.group[data-v-c79ccefa] {
    border-top: 1px solid var(--vp-c-divider);
    padding-top: 10px
 }
 
 @media (min-width: 960px) {
    .group[data-v-c79ccefa] {
       padding-top: 10px;
       width: calc(var(--vp-sidebar-width) - 64px)
    }
 }
 
 .VPButton[data-v-a7c4128c] {
    display: inline-block;
    border: 1px solid transparent;
    text-align: center;
    font-weight: 600;
    white-space: nowrap;
    transition: color .25s, border-color .25s, background-color .25s
 }
 
 .VPButton[data-v-a7c4128c]:active {
    transition: color .1s, border-color .1s, background-color .1s
 }
 
 .VPButton.medium[data-v-a7c4128c] {
    border-radius: 20px;
    padding: 0 20px;
    line-height: 38px;
    font-size: 14px
 }
 
 .VPButton.big[data-v-a7c4128c] {
    border-radius: 24px;
    padding: 0 24px;
    line-height: 46px;
    font-size: 16px
 }
 
 .VPButton.brand[data-v-a7c4128c] {
    border-color: var(--vp-button-brand-border);
    color: var(--vp-button-brand-text);
    background-color: var(--vp-button-brand-bg)
 }
 
 .VPButton.brand[data-v-a7c4128c]:hover {
    border-color: var(--vp-button-brand-hover-border);
    color: var(--vp-button-brand-hover-text);
    background-color: var(--vp-button-brand-hover-bg)
 }
 
 .VPButton.brand[data-v-a7c4128c]:active {
    border-color: var(--vp-button-brand-active-border);
    color: var(--vp-button-brand-active-text);
    background-color: var(--vp-button-brand-active-bg)
 }
 
 .VPButton.alt[data-v-a7c4128c] {
    border-color: var(--vp-button-alt-border);
    color: var(--vp-button-alt-text);
    background-color: var(--vp-button-alt-bg)
 }
 
 .VPButton.alt[data-v-a7c4128c]:hover {
    border-color: var(--vp-button-alt-hover-border);
    color: var(--vp-button-alt-hover-text);
    background-color: var(--vp-button-alt-hover-bg)
 }
 
 .VPButton.alt[data-v-a7c4128c]:active {
    border-color: var(--vp-button-alt-active-border);
    color: var(--vp-button-alt-active-text);
    background-color: var(--vp-button-alt-active-bg)
 }
 
 .VPButton.sponsor[data-v-a7c4128c] {
    border-color: var(--vp-button-sponsor-border);
    color: var(--vp-button-sponsor-text);
    background-color: var(--vp-button-sponsor-bg)
 }
 
 .VPButton.sponsor[data-v-a7c4128c]:hover {
    border-color: var(--vp-button-sponsor-hover-border);
    color: var(--vp-button-sponsor-hover-text);
    background-color: var(--vp-button-sponsor-hover-bg)
 }
 
 .VPButton.sponsor[data-v-a7c4128c]:active {
    border-color: var(--vp-button-sponsor-active-border);
    color: var(--vp-button-sponsor-active-text);
    background-color: var(--vp-button-sponsor-active-bg)
 }
 
 .VPHero[data-v-45916f1d] {
    margin-top: calc((var(--vp-nav-height) + var(--vp-layout-top-height, 0px)) * -1);
    padding: calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + 48px) 24px 48px
 }
 
 @media (min-width: 640px) {
    .VPHero[data-v-45916f1d] {
       padding: calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + 80px) 48px 64px
    }
 }
 
 @media (min-width: 960px) {
    .VPHero[data-v-45916f1d] {
       padding: calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + 80px) 64px 64px
    }
 }
 
 .container[data-v-45916f1d] {
    display: flex;
    flex-direction: column;
    margin: 0 auto;
    max-width: 1152px
 }
 
 @media (min-width: 960px) {
    .container[data-v-45916f1d] {
       flex-direction: row
    }
 }
 
 .main[data-v-45916f1d] {
    position: relative;
    z-index: 10;
    order: 2;
    flex-grow: 1;
    flex-shrink: 0
 }
 
 .VPHero.has-image .container[data-v-45916f1d] {
    text-align: center
 }
 
 @media (min-width: 960px) {
    .VPHero.has-image .container[data-v-45916f1d] {
       text-align: left
    }
 }
 
 @media (min-width: 960px) {
    .main[data-v-45916f1d] {
       order: 1;
       width: calc((100% / 3) * 2)
    }
 
    .VPHero.has-image .main[data-v-45916f1d] {
       max-width: 592px
    }
 }
 
 .name[data-v-45916f1d],
 .text[data-v-45916f1d] {
    max-width: 392px;
    letter-spacing: -.4px;
    line-height: 40px;
    font-size: 32px;
    font-weight: 700;
    white-space: pre-wrap
 }
 
 .VPHero.has-image .name[data-v-45916f1d],
 .VPHero.has-image .text[data-v-45916f1d] {
    margin: 0 auto
 }
 
 .name[data-v-45916f1d] {
    color: var(--vp-home-hero-name-color)
 }
 
 .clip[data-v-45916f1d] {
    background: var(--vp-home-hero-name-background);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: var(--vp-home-hero-name-color)
 }
 
 @media (min-width: 640px) {
 
    .name[data-v-45916f1d],
    .text[data-v-45916f1d] {
       max-width: 576px;
       line-height: 56px;
       font-size: 48px
    }
 }
 
 @media (min-width: 960px) {
 
    .name[data-v-45916f1d],
    .text[data-v-45916f1d] {
       line-height: 64px;
       font-size: 56px
    }
 
    .VPHero.has-image .name[data-v-45916f1d],
    .VPHero.has-image .text[data-v-45916f1d] {
       margin: 0
    }
 }
 
 .tagline[data-v-45916f1d] {
    padding-top: 8px;
    max-width: 392px;
    line-height: 28px;
    font-size: 18px;
    font-weight: 500;
    white-space: pre-wrap;
    color: var(--vp-c-text-2)
 }
 
 .VPHero.has-image .tagline[data-v-45916f1d] {
    margin: 0 auto
 }
 
 @media (min-width: 640px) {
    .tagline[data-v-45916f1d] {
       padding-top: 12px;
       max-width: 576px;
       line-height: 32px;
       font-size: 20px
    }
 }
 
 @media (min-width: 960px) {
    .tagline[data-v-45916f1d] {
       line-height: 36px;
       font-size: 24px
    }
 
    .VPHero.has-image .tagline[data-v-45916f1d] {
       margin: 0
    }
 }
 
 .actions[data-v-45916f1d] {
    display: flex;
    flex-wrap: wrap;
    margin: -6px;
    padding-top: 24px
 }
 
 .VPHero.has-image .actions[data-v-45916f1d] {
    justify-content: center
 }
 
 @media (min-width: 640px) {
    .actions[data-v-45916f1d] {
       padding-top: 32px
    }
 }
 
 @media (min-width: 960px) {
    .VPHero.has-image .actions[data-v-45916f1d] {
       justify-content: flex-start
    }
 }
 
 .action[data-v-45916f1d] {
    flex-shrink: 0;
    padding: 6px
 }
 
 .image[data-v-45916f1d] {
    order: 1;
    margin: -76px -24px -48px
 }
 
 @media (min-width: 640px) {
    .image[data-v-45916f1d] {
       margin: -108px -24px -48px
    }
 }
 
 @media (min-width: 960px) {
    .image[data-v-45916f1d] {
       flex-grow: 1;
       order: 2;
       margin: 0;
       min-height: 100%
    }
 }
 
 .image-container[data-v-45916f1d] {
    position: relative;
    margin: 0 auto;
    width: 320px;
    height: 320px
 }
 
 @media (min-width: 640px) {
    .image-container[data-v-45916f1d] {
       width: 392px;
       height: 392px
    }
 }
 
 @media (min-width: 960px) {
    .image-container[data-v-45916f1d] {
       display: flex;
       justify-content: center;
       align-items: center;
       width: 100%;
       height: 100%;
       transform: translate(-32px, -32px)
    }
 }
 
 .image-bg[data-v-45916f1d] {
    position: absolute;
    top: 50%;
    left: 50%;
    border-radius: 50%;
    width: 192px;
    height: 192px;
    background-image: var(--vp-home-hero-image-background-image);
    filter: var(--vp-home-hero-image-filter);
    transform: translate(-50%, -50%)
 }
 
 @media (min-width: 640px) {
    .image-bg[data-v-45916f1d] {
       width: 256px;
       height: 256px
    }
 }
 
 @media (min-width: 960px) {
    .image-bg[data-v-45916f1d] {
       width: 320px;
       height: 320px
    }
 }
 
 [data-v-45916f1d] .image-src {
    position: absolute;
    top: 50%;
    left: 50%;
    max-width: 192px;
    transform: translate(-50%, -50%)
 }
 
 @media (min-width: 640px) {
    [data-v-45916f1d] .image-src {
       max-width: 256px
    }
 }
 
 @media (min-width: 960px) {
    [data-v-45916f1d] .image-src {
       max-width: 320px
    }
 }
 
 .VPFeature[data-v-7b8c4596] {
    display: block;
    border: 1px solid var(--vp-c-bg-soft);
    border-radius: 12px;
    height: 100%;
    background-color: var(--vp-c-bg-soft);
    transition: border-color .25s, background-color .25s
 }
 
 .VPFeature.link[data-v-7b8c4596]:hover {
    border-color: var(--vp-c-brand);
    background-color: var(--vp-c-bg-soft-up)
 }
 
 .box[data-v-7b8c4596] {
    display: flex;
    flex-direction: column;
    padding: 24px;
    height: 100%
 }
 
 .VPFeature[data-v-7b8c4596] .VPImage {
    width: fit-content;
    margin-bottom: 20px
 }
 
 .icon[data-v-7b8c4596] {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 20px;
    border-radius: 6px;
    background-color: var(--vp-c-bg-soft-down);
    width: 48px;
    height: 48px;
    font-size: 24px;
    transition: background-color .25s
 }
 
 .title[data-v-7b8c4596] {
    line-height: 24px;
    font-size: 16px;
    font-weight: 600
 }
 
 .details[data-v-7b8c4596] {
    flex-grow: 1;
    padding-top: 8px;
    line-height: 24px;
    font-size: 14px;
    font-weight: 500;
    color: var(--vp-c-text-2)
 }
 
 .link-text[data-v-7b8c4596] {
    padding-top: 8px
 }
 
 .link-text-value[data-v-7b8c4596] {
    display: flex;
    align-items: center;
    font-size: 14px;
    font-weight: 500;
    color: var(--vp-c-brand)
 }
 
 .link-text-icon[data-v-7b8c4596] {
    display: inline-block;
    margin-left: 6px;
    width: 14px;
    height: 14px;
    fill: currentColor
 }
 
 .VPFeatures[data-v-6816157f] {
    position: relative;
    padding: 0 24px
 }
 
 @media (min-width: 640px) {
    .VPFeatures[data-v-6816157f] {
       padding: 0 48px
    }
 }
 
 @media (min-width: 960px) {
    .VPFeatures[data-v-6816157f] {
       padding: 0 64px
    }
 }
 
 .container[data-v-6816157f] {
    margin: 0 auto;
    max-width: 1152px
 }
 
 .items[data-v-6816157f] {
    display: flex;
    flex-wrap: wrap;
    margin: -8px
 }
 
 .item[data-v-6816157f] {
    padding: 8px;
    width: 100%
 }
 
 @media (min-width: 640px) {
 
    .item.grid-2[data-v-6816157f],
    .item.grid-4[data-v-6816157f],
    .item.grid-6[data-v-6816157f] {
       width: 50%
    }
 }
 
 @media (min-width: 768px) {
 
    .item.grid-2[data-v-6816157f],
    .item.grid-4[data-v-6816157f] {
       width: 50%
    }
 
    .item.grid-3[data-v-6816157f],
    .item.grid-6[data-v-6816157f] {
       width: calc(100% / 3)
    }
 }
 
 @media (min-width: 960px) {
    .item.grid-4[data-v-6816157f] {
       width: 25%
    }
 }
 
 .VPHome[data-v-b07783ac] {
    padding-bottom: 96px
 }
 
 .VPHome[data-v-b07783ac] .VPHomeSponsors {
    margin-top: 112px;
    margin-bottom: -128px
 }
 
 @media (min-width: 768px) {
    .VPHome[data-v-b07783ac] {
       padding-bottom: 128px
    }
 }
 
 .root[data-v-1188541a] {
    position: relative;
    z-index: 1
 }
 
 .nested[data-v-1188541a] {
    padding-left: 13px
 }
 
 .outline-link[data-v-1188541a] {
    display: block;
    line-height: 28px;
    color: var(--vp-c-text-2);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    transition: color .5s
 }
 
 .outline-link[data-v-1188541a]:hover,
 .outline-link.active[data-v-1188541a] {
    color: var(--vp-c-text-1);
    transition: color .25s
 }
 
 .outline-link.nested[data-v-1188541a] {
    padding-left: 13px
 }
 
 .VPDocAsideOutline[data-v-5dd9d5f6] {
    display: none
 }
 
 .VPDocAsideOutline.has-outline[data-v-5dd9d5f6] {
    display: block
 }
 
 .content[data-v-5dd9d5f6] {
    position: relative;
    border-left: 1px solid var(--vp-c-divider);
    padding-left: 16px;
    font-size: 13px;
    font-weight: 500
 }
 
 .outline-marker[data-v-5dd9d5f6] {
    position: absolute;
    top: 32px;
    left: -1px;
    z-index: 0;
    opacity: 0;
    width: 1px;
    height: 18px;
    background-color: var(--vp-c-brand);
    transition: top .25s cubic-bezier(0, 1, .5, 1), background-color .5s, opacity .25s
 }
 
 .outline-title[data-v-5dd9d5f6] {
    letter-spacing: .4px;
    line-height: 28px;
    font-size: 13px;
    font-weight: 600
 }
 
 .VPDocAside[data-v-cdc66372] {
    display: flex;
    flex-direction: column;
    flex-grow: 1
 }
 
 .spacer[data-v-cdc66372] {
    flex-grow: 1
 }
 
 .VPDocAside[data-v-cdc66372] .spacer+.VPDocAsideSponsors,
 .VPDocAside[data-v-cdc66372] .spacer+.VPDocAsideCarbonAds {
    margin-top: 24px
 }
 
 .VPDocAside[data-v-cdc66372] .VPDocAsideSponsors+.VPDocAsideCarbonAds {
    margin-top: 16px
 }
 
 .VPLastUpdated[data-v-355aa5ef] {
    line-height: 24px;
    font-size: 14px;
    font-weight: 500;
    color: var(--vp-c-text-2)
 }
 
 @media (min-width: 640px) {
    .VPLastUpdated[data-v-355aa5ef] {
       line-height: 32px;
       font-size: 14px;
       font-weight: 500
    }
 }
 
 .VPDocFooter[data-v-e033cd21] {
    margin-top: 64px
 }
 
 .edit-info[data-v-e033cd21] {
    padding-bottom: 18px
 }
 
 @media (min-width: 640px) {
    .edit-info[data-v-e033cd21] {
       display: flex;
       justify-content: space-between;
       align-items: center;
       padding-bottom: 14px
    }
 }
 
 .edit-link-button[data-v-e033cd21] {
    display: flex;
    align-items: center;
    border: 0;
    line-height: 32px;
    font-size: 14px;
    font-weight: 500;
    color: var(--vp-c-brand);
    transition: color .25s
 }
 
 .edit-link-button[data-v-e033cd21]:hover {
    color: var(--vp-c-brand-dark)
 }
 
 .edit-link-icon[data-v-e033cd21] {
    margin-right: 8px;
    width: 14px;
    height: 14px;
    fill: currentColor
 }
 
 .prev-next[data-v-e033cd21] {
    border-top: 1px solid var(--vp-c-divider);
    padding-top: 24px
 }
 
 @media (min-width: 640px) {
    .prev-next[data-v-e033cd21] {
       display: flex
    }
 }
 
 .pager.has-prev[data-v-e033cd21] {
    padding-top: 8px
 }
 
 @media (min-width: 640px) {
    .pager[data-v-e033cd21] {
       display: flex;
       flex-direction: column;
       flex-shrink: 0;
       width: 50%
    }
 
    .pager.has-prev[data-v-e033cd21] {
       padding-top: 0;
       padding-left: 16px
    }
 }
 
 .pager-link[data-v-e033cd21] {
    display: block;
    border: 1px solid var(--vp-c-divider);
    border-radius: 8px;
    padding: 11px 16px 13px;
    width: 100%;
    height: 100%;
    transition: border-color .25s
 }
 
 .pager-link[data-v-e033cd21]:hover {
    border-color: var(--vp-c-brand)
 }
 
 .pager-link.next[data-v-e033cd21] {
    margin-left: auto;
    text-align: right
 }
 
 .desc[data-v-e033cd21] {
    display: block;
    line-height: 20px;
    font-size: 12px;
    font-weight: 500;
    color: var(--vp-c-text-2)
 }
 
 .title[data-v-e033cd21] {
    display: block;
    line-height: 20px;
    font-size: 14px;
    font-weight: 500;
    color: var(--vp-c-brand);
    transition: color .25s
 }
 
 .VPDoc[data-v-c5936a1e] {
    padding: 32px 24px 96px;
    width: 100%
 }
 
 @media (min-width: 768px) {
    .VPDoc[data-v-c5936a1e] {
       padding: 48px 32px 128px
    }
 }
 
 @media (min-width: 960px) {
    .VPDoc[data-v-c5936a1e] {
       padding: 32px 32px 0
    }
 
    .VPDoc:not(.has-sidebar) .container[data-v-c5936a1e] {
       display: flex;
       justify-content: center;
       max-width: 992px
    }
 
    .VPDoc:not(.has-sidebar) .content[data-v-c5936a1e] {
       max-width: 752px
    }
 }
 
 @media (min-width: 1280px) {
    .VPDoc .container[data-v-c5936a1e] {
       display: flex;
       justify-content: center
    }
 
    .VPDoc .aside[data-v-c5936a1e] {
       display: block
    }
 }
 
 @media (min-width: 1440px) {
    .VPDoc:not(.has-sidebar) .content[data-v-c5936a1e] {
       max-width: 784px
    }
 
    .VPDoc:not(.has-sidebar) .container[data-v-c5936a1e] {
       max-width: 1104px
    }
 }
 
 .container[data-v-c5936a1e] {
    margin: 0 auto;
    width: 100%
 }
 
 .aside[data-v-c5936a1e] {
    position: relative;
    display: none;
    order: 2;
    flex-grow: 1;
    padding-left: 32px;
    width: 100%;
    max-width: 256px
 }
 
 .aside-container[data-v-c5936a1e] {
    position: sticky;
    top: 0;
    margin-top: calc((var(--vp-nav-height) + var(--vp-layout-top-height, 0px)) * -1 - 32px);
    padding-top: calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + 32px);
    height: 100vh;
    overflow-x: hidden;
    overflow-y: auto;
    scrollbar-width: none
 }
 
 .aside-container[data-v-c5936a1e]::-webkit-scrollbar {
    display: none
 }
 
 .aside-curtain[data-v-c5936a1e] {
    position: fixed;
    bottom: 0;
    z-index: 10;
    width: 224px;
    height: 32px;
    background: linear-gradient(transparent, var(--vp-c-bg) 70%)
 }
 
 .aside-content[data-v-c5936a1e] {
    display: flex;
    flex-direction: column;
    min-height: calc(100vh - (var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + 32px));
    padding-bottom: 32px
 }
 
 .content[data-v-c5936a1e] {
    position: relative;
    margin: 0 auto;
    width: 100%
 }
 
 @media (min-width: 960px) {
    .content[data-v-c5936a1e] {
       padding: 0 32px 128px
    }
 }
 
 @media (min-width: 1280px) {
    .content[data-v-c5936a1e] {
       order: 1;
       margin: 0;
       min-width: 640px
    }
 }
 
 .content-container[data-v-c5936a1e] {
    margin: 0 auto
 }
 
 .VPDoc.has-aside .content-container[data-v-c5936a1e] {
    max-width: 688px
 }
 
 .VPContent[data-v-0bd490fb] {
    flex-grow: 1;
    flex-shrink: 0;
    margin: var(--vp-layout-top-height, 0px) auto 0;
    width: 100%
 }
 
 .VPContent.is-home[data-v-0bd490fb] {
    width: 100%;
    max-width: 100%
 }
 
 .VPContent.has-sidebar[data-v-0bd490fb] {
    margin: 0
 }
 
 @media (min-width: 960px) {
    .VPContent[data-v-0bd490fb] {
       padding-top: var(--vp-nav-height)
    }
 
    .VPContent.has-sidebar[data-v-0bd490fb] {
       margin: var(--vp-layout-top-height, 0px) 0 0;
       padding-left: var(--vp-sidebar-width)
    }
 }
 
 @media (min-width: 1440px) {
    .VPContent.has-sidebar[data-v-0bd490fb] {
       padding-right: calc((100vw - var(--vp-layout-max-width)) / 2);
       padding-left: calc((100vw - var(--vp-layout-max-width)) / 2 + var(--vp-sidebar-width))
    }
 }
 
 .VPFooter[data-v-d24360a6] {
    position: relative;
    z-index: var(--vp-z-index-footer);
    border-top: 1px solid var(--vp-c-gutter);
    padding: 32px 24px;
    background-color: var(--vp-c-bg)
 }
 
 .VPFooter.has-sidebar[data-v-d24360a6] {
    display: none
 }
 
 @media (min-width: 768px) {
    .VPFooter[data-v-d24360a6] {
       padding: 32px
    }
 }
 
 .container[data-v-d24360a6] {
    margin: 0 auto;
    max-width: var(--vp-layout-max-width);
    text-align: center
 }
 
 .message[data-v-d24360a6],
 .copyright[data-v-d24360a6] {
    line-height: 24px;
    font-size: 14px;
    font-weight: 500;
    color: var(--vp-c-text-2)
 }
 
 .message[data-v-d24360a6] {
    order: 2
 }
 
 .copyright[data-v-d24360a6] {
    order: 1
 }
 
 .Layout[data-v-93a960b4] {
    display: flex;
    flex-direction: column;
    min-height: 100vh
 }
 
 .NotFound[data-v-63c9cdeb] {
    padding: 64px 24px 96px;
    text-align: center
 }
 
 @media (min-width: 768px) {
    .NotFound[data-v-63c9cdeb] {
       padding: 96px 32px 168px
    }
 }
 
 .code[data-v-63c9cdeb] {
    line-height: 64px;
    font-size: 64px;
    font-weight: 600
 }
 
 .title[data-v-63c9cdeb] {
    padding-top: 12px;
    letter-spacing: 2px;
    line-height: 20px;
    font-size: 20px;
    font-weight: 700
 }
 
 .divider[data-v-63c9cdeb] {
    margin: 24px auto 18px;
    width: 64px;
    height: 1px;
    background-color: var(--vp-c-divider)
 }
 
 .quote[data-v-63c9cdeb] {
    margin: 0 auto;
    max-width: 256px;
    font-size: 14px;
    font-weight: 500;
    color: var(--vp-c-text-2)
 }
 
 .action[data-v-63c9cdeb] {
    padding-top: 20px
 }
 
 .link[data-v-63c9cdeb] {
    display: inline-block;
    border: 1px solid var(--vp-c-brand);
    border-radius: 16px;
    padding: 3px 16px;
    font-size: 14px;
    font-weight: 500;
    color: var(--vp-c-brand);
    transition: border-color .25s, color .25s
 }
 
 .link[data-v-63c9cdeb]:hover {
    border-color: var(--vp-c-brand-dark);
    color: var(--vp-c-brand-dark)
 }
 
 .VPHomeSponsors[data-v-3c6e61c2] {
    border-top: 1px solid var(--vp-c-gutter);
    padding: 88px 24px 96px;
    background-color: var(--vp-c-bg)
 }
 
 .container[data-v-3c6e61c2] {
    margin: 0 auto;
    max-width: 1152px
 }
 
 .love[data-v-3c6e61c2] {
    margin: 0 auto;
    width: 28px;
    height: 28px;
    color: var(--vp-c-text-3)
 }
 
 .icon[data-v-3c6e61c2] {
    width: 28px;
    height: 28px;
    fill: currentColor
 }
 
 .message[data-v-3c6e61c2] {
    margin: 0 auto;
    padding-top: 10px;
    max-width: 320px;
    text-align: center;
    line-height: 24px;
    font-size: 16px;
    font-weight: 500;
    color: var(--vp-c-text-2)
 }
 
 .sponsors[data-v-3c6e61c2] {
    padding-top: 32px
 }
 
 .action[data-v-3c6e61c2] {
    padding-top: 40px;
    text-align: center
 }
 
 .VPTeamPage[data-v-10b00018] {
    padding-bottom: 96px
 }
 
 @media (min-width: 768px) {
    .VPTeamPage[data-v-10b00018] {
       padding-bottom: 128px
    }
 }
 
 .VPTeamPageSection+.VPTeamPageSection[data-v-10b00018-s],
 .VPTeamMembers+.VPTeamPageSection[data-v-10b00018-s] {
    margin-top: 64px
 }
 
 .VPTeamMembers+.VPTeamMembers[data-v-10b00018-s] {
    margin-top: 24px
 }
 
 @media (min-width: 768px) {
    .VPTeamPageTitle+.VPTeamPageSection[data-v-10b00018-s] {
       margin-top: 16px
    }
 
    .VPTeamPageSection+.VPTeamPageSection[data-v-10b00018-s],
    .VPTeamMembers+.VPTeamPageSection[data-v-10b00018-s] {
       margin-top: 96px
    }
 }
 
 .VPTeamMembers[data-v-10b00018-s] {
    padding: 0 24px
 }
 
 @media (min-width: 768px) {
    .VPTeamMembers[data-v-10b00018-s] {
       padding: 0 48px
    }
 }
 
 @media (min-width: 960px) {
    .VPTeamMembers[data-v-10b00018-s] {
       padding: 0 64px
    }
 }
 
 .VPTeamPageTitle[data-v-bf2cbdac] {
    padding: 48px 32px;
    text-align: center
 }
 
 @media (min-width: 768px) {
    .VPTeamPageTitle[data-v-bf2cbdac] {
       padding: 64px 48px 48px
    }
 }
 
 @media (min-width: 960px) {
    .VPTeamPageTitle[data-v-bf2cbdac] {
       padding: 80px 64px 48px
    }
 }
 
 .title[data-v-bf2cbdac] {
    letter-spacing: 0;
    line-height: 44px;
    font-size: 36px;
    font-weight: 500
 }
 
 @media (min-width: 768px) {
    .title[data-v-bf2cbdac] {
       letter-spacing: -.5px;
       line-height: 56px;
       font-size: 48px
    }
 }
 
 .lead[data-v-bf2cbdac] {
    margin: 0 auto;
    max-width: 512px;
    padding-top: 12px;
    line-height: 24px;
    font-size: 16px;
    font-weight: 500;
    color: var(--vp-c-text-2)
 }
 
 @media (min-width: 768px) {
    .lead[data-v-bf2cbdac] {
       max-width: 592px;
       letter-spacing: .15px;
       line-height: 28px;
       font-size: 20px
    }
 }
 
 .VPTeamPageSection[data-v-b1a88750] {
    padding: 0 32px
 }
 
 @media (min-width: 768px) {
    .VPTeamPageSection[data-v-b1a88750] {
       padding: 0 48px
    }
 }
 
 @media (min-width: 960px) {
    .VPTeamPageSection[data-v-b1a88750] {
       padding: 0 64px
    }
 }
 
 .title[data-v-b1a88750] {
    position: relative;
    margin: 0 auto;
    max-width: 1152px;
    text-align: center;
    color: var(--vp-c-text-2)
 }
 
 .title-line[data-v-b1a88750] {
    position: absolute;
    top: 16px;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: var(--vp-c-divider)
 }
 
 .title-text[data-v-b1a88750] {
    position: relative;
    display: inline-block;
    padding: 0 24px;
    letter-spacing: 0;
    line-height: 32px;
    font-size: 20px;
    font-weight: 500;
    background-color: var(--vp-c-bg)
 }
 
 .lead[data-v-b1a88750] {
    margin: 0 auto;
    max-width: 480px;
    padding-top: 12px;
    text-align: center;
    line-height: 24px;
    font-size: 16px;
    font-weight: 500;
    color: var(--vp-c-text-2)
 }
 
 .members[data-v-b1a88750] {
    padding-top: 40px
 }
 
 .VPTeamMembersItem[data-v-1739ab5f] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    border-radius: 12px;
    width: 100%;
    height: 100%;
    overflow: hidden
 }
 
 .VPTeamMembersItem.small .profile[data-v-1739ab5f] {
    padding: 32px
 }
 
 .VPTeamMembersItem.small .data[data-v-1739ab5f] {
    padding-top: 20px
 }
 
 .VPTeamMembersItem.small .avatar[data-v-1739ab5f] {
    width: 64px;
    height: 64px
 }
 
 .VPTeamMembersItem.small .name[data-v-1739ab5f] {
    line-height: 24px;
    font-size: 16px
 }
 
 .VPTeamMembersItem.small .affiliation[data-v-1739ab5f] {
    padding-top: 4px;
    line-height: 20px;
    font-size: 14px
 }
 
 .VPTeamMembersItem.small .desc[data-v-1739ab5f] {
    padding-top: 12px;
    line-height: 20px;
    font-size: 14px
 }
 
 .VPTeamMembersItem.small .links[data-v-1739ab5f] {
    margin: 0 -16px -20px;
    padding: 10px 0 0
 }
 
 .VPTeamMembersItem.medium .profile[data-v-1739ab5f] {
    padding: 48px 32px
 }
 
 .VPTeamMembersItem.medium .data[data-v-1739ab5f] {
    padding-top: 24px;
    text-align: center
 }
 
 .VPTeamMembersItem.medium .avatar[data-v-1739ab5f] {
    width: 96px;
    height: 96px
 }
 
 .VPTeamMembersItem.medium .name[data-v-1739ab5f] {
    letter-spacing: .15px;
    line-height: 28px;
    font-size: 20px
 }
 
 .VPTeamMembersItem.medium .affiliation[data-v-1739ab5f] {
    padding-top: 4px;
    font-size: 16px
 }
 
 .VPTeamMembersItem.medium .desc[data-v-1739ab5f] {
    padding-top: 16px;
    max-width: 288px;
    font-size: 16px
 }
 
 .VPTeamMembersItem.medium .links[data-v-1739ab5f] {
    margin: 0 -16px -12px;
    padding: 16px 12px 0
 }
 
 .profile[data-v-1739ab5f] {
    flex-grow: 1;
    background-color: var(--vp-c-bg-soft)
 }
 
 .data[data-v-1739ab5f] {
    text-align: center
 }
 
 .avatar[data-v-1739ab5f] {
    position: relative;
    flex-shrink: 0;
    margin: 0 auto;
    border-radius: 50%;
    box-shadow: var(--vp-shadow-3)
 }
 
 .avatar-img[data-v-1739ab5f] {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    border-radius: 50%;
    object-fit: cover
 }
 
 .name[data-v-1739ab5f] {
    margin: 0;
    font-weight: 600
 }
 
 .affiliation[data-v-1739ab5f] {
    margin: 0;
    font-weight: 500;
    color: var(--vp-c-text-2)
 }
 
 .org.link[data-v-1739ab5f] {
    color: var(--vp-c-text-2);
    transition: color .25s
 }
 
 .org.link[data-v-1739ab5f]:hover {
    color: var(--vp-c-brand)
 }
 
 .desc[data-v-1739ab5f] {
    margin: 0 auto
 }
 
 .links[data-v-1739ab5f] {
    display: flex;
    justify-content: center;
    height: 56px
 }
 
 .sp-link[data-v-1739ab5f] {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    padding: 16px;
    font-size: 14px;
    font-weight: 500;
    color: var(--vp-c-sponsor);
    background-color: var(--vp-c-bg-soft);
    transition: color .25s, background-color .25s
 }
 
 .sp .sp-link.link[data-v-1739ab5f]:hover,
 .sp .sp-link.link[data-v-1739ab5f]:focus {
    outline: none;
    color: var(--vp-c-white);
    background-color: var(--vp-c-sponsor)
 }
 
 .sp-icon[data-v-1739ab5f] {
    margin-right: 8px;
    width: 16px;
    height: 16px;
    fill: currentColor
 }
 
 .VPTeamMembers.small .container[data-v-04685dce] {
    grid-template-columns: repeat(auto-fit, minmax(224px, 1fr))
 }
 
 .VPTeamMembers.small.count-1 .container[data-v-04685dce] {
    max-width: 276px
 }
 
 .VPTeamMembers.small.count-2 .container[data-v-04685dce] {
    max-width: 576px
 }
 
 .VPTeamMembers.small.count-3 .container[data-v-04685dce] {
    max-width: 876px
 }
 
 .VPTeamMembers.medium .container[data-v-04685dce] {
    grid-template-columns: repeat(auto-fit, minmax(256px, 1fr))
 }
 
 @media (min-width: 375px) {
    .VPTeamMembers.medium .container[data-v-04685dce] {
       grid-template-columns: repeat(auto-fit, minmax(288px, 1fr))
    }
 }
 
 .VPTeamMembers.medium.count-1 .container[data-v-04685dce] {
    max-width: 368px
 }
 
 .VPTeamMembers.medium.count-2 .container[data-v-04685dce] {
    max-width: 760px
 }
 
 .container[data-v-04685dce] {
    display: grid;
    gap: 24px;
    margin: 0 auto;
    max-width: 1152px
 }
 
 .button {
    color: #666;
    background-color: #eee;
    border-color: #eee;
    font-weight: 300;
    font-size: 16px;
    font-family: Helvetica Neue Light, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;
    text-decoration: none;
    text-align: center;
    line-height: 40px;
    height: 40px;
    padding: 0 40px;
    margin: 0;
    display: inline-block;
    appearance: none;
    cursor: pointer;
    border: none;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition-property: all;
    transition-property: all;
    -webkit-transition-duration: .3s;
    transition-duration: .3s
 }
 
 .button:visited {
    color: #666
 }
 
 .button:hover,
 .button:focus {
    background-color: #f6f6f6;
    text-decoration: none;
    outline: none
 }
 
 .button:active,
 .button.active,
 .button.is-active {
    text-shadow: 0 1px 0 rgba(255, 255, 255, .3);
    text-decoration: none;
    background-color: #eee;
    border-color: #cfcfcf;
    color: #d4d4d4;
    -webkit-transition-duration: 0s;
    transition-duration: 0s;
    -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, .2);
    box-shadow: inset 0 1px 3px #0003
 }
 
 .button.disabled,
 .button.is-disabled,
 .button:disabled {
    top: 0 !important;
    background: #EEE !important;
    border: 1px solid #DDD !important;
    text-shadow: 0 1px 1px white !important;
    color: #ccc !important;
    cursor: default !important;
    appearance: none !important;
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
    opacity: .8 !important
 }
 
 .button-primary,
 .button-primary-flat {
    background-color: #1b9af7;
    border-color: #1b9af7;
    color: #fff
 }
 
 .button-primary:visited,
 .button-primary-flat:visited {
    color: #fff
 }
 
 .button-primary:hover,
 .button-primary:focus,
 .button-primary-flat:hover,
 .button-primary-flat:focus {
    background-color: #4cb0f9;
    border-color: #4cb0f9;
    color: #fff
 }
 
 .button-primary:active,
 .button-primary.active,
 .button-primary.is-active,
 .button-primary-flat:active,
 .button-primary-flat.active,
 .button-primary-flat.is-active {
    background-color: #2798eb;
    border-color: #2798eb;
    color: #0880d7
 }
 
 .button-rounded {
    border-radius: 4px
 }
 
 .button-small {
    font-size: 12px;
    height: 30px;
    line-height: 30px;
    padding: 0 30px
 }
