.cv-timeline[data-v-ba5454cf]{--cv-timeline-offset:1.625rem;--cv-timeline-spacing:clamp(3.75rem, 7vw, 4rem);--cv-timeline-role-gap:1.5rem;--cv-position-line-height:1.365rem;--cv-position-line-center:.6825rem;gap:2rem;margin-top:1.5rem;display:grid}@media (width<=640px){.cv-timeline[data-v-ba5454cf]{--cv-timeline-offset:1.625rem;--cv-timeline-spacing:3.5rem}}.cv-timeline-group[data-v-06c7c817]{margin-top:2rem;position:relative}.cv-timeline-group__header[data-v-06c7c817]{align-items:center;gap:.85rem;display:flex}.cv-timeline-group__logo-frame[data-v-06c7c817]{box-sizing:border-box;border:1px solid var(--vp-c-divider);border-radius:999px;flex:0 0 3.25rem;justify-content:center;align-items:center;width:3.25rem;height:3.25rem;padding:.55rem;display:flex;overflow:hidden}.cv-timeline-group__logo[data-v-06c7c817]{object-fit:contain;object-position:center;width:100%;height:100%;margin:auto;display:block}.cv-timeline-group__heading[data-v-06c7c817]{min-width:0}.cv-timeline-group__employer[data-v-06c7c817]{color:var(--vp-c-text-1);margin:0;font-size:1.05rem;font-weight:700;line-height:1.3}.cv-timeline-group__location[data-v-06c7c817]{color:var(--vp-c-text-2);margin:.2rem 0 0;font-size:.95rem}.cv-timeline-group__card[data-v-06c7c817]{padding-top:1.25rem}.cv-timeline-group__roles[data-v-06c7c817]{gap:var(--cv-timeline-role-gap);padding-left:var(--cv-timeline-spacing);display:grid;position:relative}@media (width<=640px){.cv-timeline-group__card[data-v-06c7c817]{padding-top:1rem}}.cv-timeline-item[data-v-fc8ece8c]{position:relative}.cv-timeline-item[data-v-fc8ece8c]:not(:last-child):before{content:"";top:var(--cv-position-line-center);bottom:calc(0px - var(--cv-timeline-role-gap) - var(--cv-position-line-center));left:calc((var(--cv-timeline-spacing,2.75rem) * -1) + var(--cv-timeline-offset,.75rem) - 1px);background:var(--vp-c-divider);width:2px;position:absolute}.cv-timeline-item__marker[data-v-fc8ece8c]{top:50%;left:calc((var(--cv-timeline-spacing,2.75rem) * -1) + var(--cv-timeline-offset,.75rem) - .3125rem);z-index:1;border:2px solid var(--vp-c-text-3);background:var(--vp-c-bg);width:.625rem;height:.625rem;box-shadow:0 0 0 .2rem color-mix(in srgb, var(--vp-c-text-3) 12%, transparent);border-radius:999px;position:absolute;transform:translateY(-50%)}.cv-timeline-item__card[data-v-fc8ece8c]{background:0 0;border:0;border-radius:0;padding:1.25rem 1.4rem}.cv-timeline-item--grouped .cv-timeline-item__card[data-v-fc8ece8c]{background:0 0;border:0;border-radius:0;padding:0}.cv-timeline-item__header[data-v-fc8ece8c]{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.cv-timeline-item__heading[data-v-fc8ece8c]{min-width:0}.cv-timeline-item__title[data-v-fc8ece8c]{font-size:1.05rem;font-weight:700;line-height:var(--cv-position-line-height);margin:0;position:relative}.cv-timeline-item__position[data-v-fc8ece8c]{color:var(--vp-c-text-1)}.cv-timeline-item__position-type[data-v-fc8ece8c],.cv-timeline-item__employer[data-v-fc8ece8c]{color:var(--vp-c-text-2)}.cv-timeline-item__location[data-v-fc8ece8c]{color:var(--vp-c-text-2);margin:.2rem 0 0;font-size:.95rem}.cv-timeline-item__dates[data-v-fc8ece8c]{color:var(--vp-c-text-2);font-variant-numeric:tabular-nums;white-space:nowrap;flex-shrink:0;margin:0}.cv-timeline-item__responsibilities[data-v-fc8ece8c],.cv-timeline-item__body[data-v-fc8ece8c] ul{color:var(--vp-c-text-2);margin:0;padding-left:1.1rem}.cv-timeline-item__responsibilities li+li[data-v-fc8ece8c],.cv-timeline-item__body[data-v-fc8ece8c] li+li{margin-top:.45rem}.cv-timeline-item__body[data-v-fc8ece8c]{color:var(--vp-c-text-2)}.cv-timeline-item__responsibilities+.cv-timeline-item__body[data-v-fc8ece8c]{margin-top:1rem}.cv-timeline-item__body[data-v-fc8ece8c] :first-child{margin-top:0}.cv-timeline-item__body[data-v-fc8ece8c] :last-child{margin-bottom:0}@media (width<=640px){.cv-timeline-item__card[data-v-fc8ece8c]{padding:1.1rem 1.1rem 1.1rem 1.2rem}.cv-timeline-item--grouped .cv-timeline-item__card[data-v-fc8ece8c]{padding:0}.cv-timeline-item__header[data-v-fc8ece8c]{flex-direction:column;align-items:flex-start;gap:.75rem}.cv-timeline-item__dates[data-v-fc8ece8c]{white-space:normal}}.portfolio-link-grid[data-v-232e982b]{grid-template-columns:1fr;gap:12px;margin:18px 0 28px;display:grid}.portfolio-link-grid__item[data-v-232e982b]{border:1px solid var(--vp-c-divider);min-width:0;color:var(--vp-c-text-1);background:var(--vp-c-bg-soft);border-radius:8px;align-items:center;gap:12px;padding:14px;text-decoration:none;transition:border-color .2s,background-color .2s,transform .2s;display:flex}.portfolio-link-grid__item[data-v-232e982b]:hover{border-color:color-mix(in srgb, var(--vp-c-brand-1) 45%, var(--vp-c-divider));color:var(--vp-c-text-1);background:color-mix(in srgb, var(--vp-c-brand-soft) 55%, var(--vp-c-bg-soft));transform:translateY(-2px)}.portfolio-link-grid__icon[data-v-232e982b]{width:42px;height:42px;color:var(--vp-c-brand-1);background:var(--vp-c-brand-soft);border-radius:8px;flex:none;place-items:center;display:inline-grid}.portfolio-link-grid__icon svg[data-v-232e982b]{width:23px;height:23px}.portfolio-link-grid__copy[data-v-232e982b]{flex:auto;min-width:0}.portfolio-link-grid__title[data-v-232e982b]{overflow-wrap:break-word;font-weight:600;line-height:1.25}.portfolio-link-grid__external[data-v-232e982b]{width:22px;height:22px;color:var(--vp-c-text-2);flex:none;place-items:center;transition:color .2s;display:inline-grid}.portfolio-link-grid__external svg[data-v-232e982b]{width:19px;height:19px}.portfolio-link-grid__item:hover .portfolio-link-grid__external[data-v-232e982b]{color:var(--vp-c-brand-1)}.has-recommendation-lightbox{overflow:hidden}.portfolio-recommendation[data-v-9fa171ba]{margin:-18px 0 42px}.portfolio-recommendation__preview[data-v-9fa171ba]{border:1px solid color-mix(in srgb, var(--vp-c-brand-1) 28%, var(--vp-c-divider));background:color-mix(in srgb, var(--vp-c-brand-soft) 34%, var(--vp-c-bg-soft));width:100%;min-width:0;color:var(--vp-c-text-1);cursor:pointer;font:inherit;text-align:left;border-radius:8px;gap:14px;padding:clamp(16px,3vw,22px);transition:border-color .2s,background-color .2s,transform .2s;display:grid}.portfolio-recommendation__preview[data-v-9fa171ba]:hover,.portfolio-recommendation__preview[data-v-9fa171ba]:focus-visible{border-color:color-mix(in srgb, var(--vp-c-brand-1) 56%, var(--vp-c-divider));background:color-mix(in srgb, var(--vp-c-brand-soft) 56%, var(--vp-c-bg-soft));transform:translateY(-2px)}.portfolio-recommendation__preview[data-v-9fa171ba]:focus-visible{outline:3px solid color-mix(in srgb, var(--vp-c-brand-1) 35%, transparent);outline-offset:3px}.portfolio-recommendation__meta[data-v-9fa171ba]{gap:3px;display:grid}.portfolio-recommendation__author[data-v-9fa171ba]{font-weight:700}.portfolio-recommendation__position[data-v-9fa171ba],.portfolio-recommendation__date[data-v-9fa171ba],.portfolio-recommendation__footer[data-v-9fa171ba]{color:var(--vp-c-text-2);font-size:.88rem;line-height:1.45}.portfolio-recommendation__quote[data-v-9fa171ba]{color:var(--vp-c-text-1);-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:1rem;line-height:1.65;display:-webkit-box;overflow:hidden}.portfolio-recommendation__footer[data-v-9fa171ba]{flex-wrap:wrap;justify-content:space-between;gap:8px 14px;display:flex}.portfolio-recommendation__read[data-v-9fa171ba]{color:var(--vp-c-brand-1);font-weight:700}.recommendation-lightbox[data-v-9fa171ba]{z-index:9999;overscroll-behavior:contain;background:#070a0ee0;padding:clamp(64px,8vw,92px) clamp(12px,3vw,28px) clamp(18px,4vw,32px);display:grid;position:fixed;inset:0;overflow:auto}.recommendation-lightbox-enter-active[data-v-9fa171ba],.recommendation-lightbox-leave-active[data-v-9fa171ba]{transition:opacity .24s}.recommendation-lightbox-enter-active .recommendation-lightbox__close[data-v-9fa171ba],.recommendation-lightbox-enter-active .recommendation-lightbox__panel[data-v-9fa171ba],.recommendation-lightbox-leave-active .recommendation-lightbox__close[data-v-9fa171ba],.recommendation-lightbox-leave-active .recommendation-lightbox__panel[data-v-9fa171ba]{transition:opacity .24s,transform .24s}.recommendation-lightbox-enter-from[data-v-9fa171ba],.recommendation-lightbox-leave-to[data-v-9fa171ba]{opacity:0}.recommendation-lightbox-enter-from .recommendation-lightbox__panel[data-v-9fa171ba],.recommendation-lightbox-leave-to .recommendation-lightbox__panel[data-v-9fa171ba]{opacity:0;transform:translateY(10px)scale(.985)}.recommendation-lightbox-enter-from .recommendation-lightbox__close[data-v-9fa171ba],.recommendation-lightbox-leave-to .recommendation-lightbox__close[data-v-9fa171ba]{opacity:0;transform:translateY(-6px)scale(.96)}.recommendation-lightbox__panel[data-v-9fa171ba]{border:1px solid color-mix(in srgb, var(--vp-c-brand-1) 26%, var(--vp-c-divider));background:var(--vp-c-bg);width:min(100%,840px);color:var(--vp-c-text-1);border-radius:8px;place-self:center;gap:22px;padding:clamp(20px,4vw,34px);display:grid;box-shadow:0 24px 70px #0000006b}.recommendation-lightbox__header[data-v-9fa171ba]{gap:4px;display:grid}.recommendation-lightbox__author[data-v-9fa171ba],.recommendation-lightbox__position[data-v-9fa171ba],.recommendation-lightbox__date[data-v-9fa171ba],.recommendation-lightbox__quote[data-v-9fa171ba],.recommendation-lightbox__footer[data-v-9fa171ba]{margin:0}.recommendation-lightbox__author[data-v-9fa171ba]{font-size:1.05rem;font-weight:700}.recommendation-lightbox__position[data-v-9fa171ba],.recommendation-lightbox__date[data-v-9fa171ba],.recommendation-lightbox__footer[data-v-9fa171ba]{color:var(--vp-c-text-2);font-size:.9rem;line-height:1.45}.recommendation-lightbox__quote[data-v-9fa171ba]{color:var(--vp-c-text-1);gap:1em;font-size:1rem;line-height:1.68;display:grid}.recommendation-lightbox__quote p[data-v-9fa171ba]{margin:0}.recommendation-lightbox__footer[data-v-9fa171ba]{gap:4px;display:grid}.recommendation-lightbox__close[data-v-9fa171ba]{z-index:1;top:max(12px, env(safe-area-inset-top));right:max(12px, env(safe-area-inset-right));border:1px solid color-mix(in srgb, var(--vp-c-brand-1) 34%, var(--vp-c-divider));background:color-mix(in srgb, var(--vp-c-bg) 88%, transparent);width:44px;height:44px;color:var(--vp-c-text-1);cursor:pointer;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:8px;place-items:center;padding:0;transition:border-color .2s,background-color .2s,color .2s,transform .2s;display:grid;position:fixed;box-shadow:0 12px 32px #0000003d,inset 0 1px #ffffff1f}.recommendation-lightbox__close[data-v-9fa171ba]:hover{border-color:var(--vp-c-brand-1);background:var(--vp-c-brand-soft);color:var(--vp-c-brand-1)}.recommendation-lightbox__close[data-v-9fa171ba]:focus-visible{outline:3px solid color-mix(in srgb, var(--vp-c-brand-1) 38%, transparent);outline-offset:3px}.recommendation-lightbox__close svg[data-v-9fa171ba]{fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:2px;width:22px;height:22px}@media (width<=639px){.portfolio-recommendation[data-v-9fa171ba]{margin:-20px 0 34px}.portfolio-recommendation__quote[data-v-9fa171ba]{-webkit-line-clamp:4}.recommendation-lightbox__panel[data-v-9fa171ba]{align-self:start}}.profile-letter[data-v-0d3d7447]{--profile-paper:#fffdf6;--profile-paper-edge:#e7e1d2;--profile-paper-grain:#5a4b3405;--profile-paper-highlight:#5c4b310f;--profile-flap-highlight:#ffffff3d;--profile-left-highlight:#ffffff47;--profile-right-highlight:#ffffff2e;--profile-bottom-highlight:#fff3;--profile-envelope-fiber:#4e514c26;--profile-envelope-fiber-light:#ffffff8c;--profile-envelope-texture:radial-gradient(circle, var(--profile-envelope-fiber) 0 .7px, transparent 1px) 2px 3px / 15px 17px, radial-gradient(circle, var(--profile-envelope-fiber-light) 0 .55px, transparent .85px) 9px 7px / 23px 19px, radial-gradient(circle, var(--profile-envelope-fiber) 0 .35px, transparent .65px) 5px 12px / 29px 27px;--profile-sheet-shadow:#202d232e;--profile-sheet-shadow-close:#202d231a;--profile-sheet-shadow-hover:#202d2338;--profile-sheet-shadow-hover-close:#202d231f;--profile-bar-shadow:#202d233d;--profile-ink:#253029;--profile-envelope-flap:#f2f1ec;--profile-envelope-back:#f5f4f0;--profile-envelope-left:#faf9f6;--profile-envelope-right:#f7f6f2;--profile-envelope-bottom:#fffefa;--profile-envelope-edge:#bfc0b8;--profile-accent:#15803d;--profile-button-text:#fff;--profile-stamp-border:#af8068;--profile-stamp-background:#f4dfd0;--profile-stamp-ink:#825b4b;--profile-postmark:#78827b;margin:.75rem 0 1.5rem}.vp-doc .profile-letter+h2{border-top:0;margin-top:0;padding-top:0}.dark .profile-letter{--profile-paper:#141815;--profile-paper-edge:#303832;--profile-paper-grain:#ffffff04;--profile-paper-highlight:#ffffff0a;--profile-flap-highlight:#ffffff17;--profile-left-highlight:#ffffff1f;--profile-right-highlight:#ffffff12;--profile-bottom-highlight:#ffffff1a;--profile-envelope-fiber:#0003;--profile-envelope-fiber-light:#ffffff1f;--profile-sheet-shadow:#0006;--profile-sheet-shadow-close:#00000047;--profile-sheet-shadow-hover:#00000085;--profile-sheet-shadow-hover-close:#00000057;--profile-bar-shadow:#00000085;--profile-ink:#dce5de;--profile-envelope-flap:#343633;--profile-envelope-back:#3b3d39;--profile-envelope-left:#444641;--profile-envelope-right:#40423e;--profile-envelope-bottom:#4a4c47;--profile-envelope-edge:#74786f;--profile-accent:#78d996;--profile-button-text:#0b1710;--profile-stamp-border:#6f4d41;--profile-stamp-background:#2b1d19;--profile-stamp-ink:#d7ad9b;--profile-postmark:#78847b}.profile-letter__scene[data-v-0d3d7447]{--profile-envelope-border-width:1px;--profile-envelope-bottom-position:0;--profile-envelope-width:min(96%, 41.25rem);--profile-envelope-max-height:18rem;--profile-envelope-height:min(41.86cqi, var(--profile-envelope-max-height));--profile-envelope-current-bottom-position:var(--profile-envelope-bottom-position);--profile-envelope-aspect-ratio:165 / 72;--profile-envelope-growth:3.5rem;--profile-sheet-bleed:9rem;--profile-sheet-lift:4.5rem;min-height:clamp(30.5rem, calc(62vw + var(--profile-envelope-growth)), 34.5rem);isolation:isolate;perspective:1200px;position:relative;container-type:inline-size}.profile-letter__scroll-hint[data-v-0d3d7447]{z-index:5;right:0;bottom:calc(var(--profile-envelope-height) + clamp(5.5rem, 14cqi, 8rem));width:max-content;max-width:calc(100% - 2rem);color:var(--profile-accent);font-family:var(--vp-font-family-mono);letter-spacing:.08em;opacity:var(--profile-hint-opacity);pointer-events:none;text-align:center;text-transform:uppercase;flex-direction:column;align-items:center;margin-inline:auto;font-size:.72rem;font-weight:700;line-height:1.25;transition:opacity .18s;animation:1.55s ease-in-out infinite profile-letter-scroll-hint-0d3d7447;display:flex;position:absolute;left:0}.profile-letter__scroll-hint-text[data-v-0d3d7447]{background:color-mix(in srgb, var(--profile-paper) 76%, transparent);border-radius:999px;padding:.25rem .45rem;box-shadow:0 .5rem 1.3rem #202d231a}.profile-letter__scroll-hint-arrow[data-v-0d3d7447]{border-bottom:2px solid;border-right:2px solid;width:.5rem;height:.5rem;margin-top:.28rem;transform:rotate(45deg)}.profile-letter__sheet-layer[data-v-0d3d7447]{z-index:2;inset:0 0 var(--profile-envelope-bottom-position);clip-path:inset(calc(-1 * var(--profile-sheet-bleed)) calc(-1 * var(--profile-sheet-bleed)) 0 calc(-1 * var(--profile-sheet-bleed)));position:absolute;overflow:visible}.profile-letter__envelope-rear[data-v-0d3d7447],.profile-letter__envelope-front[data-v-0d3d7447]{right:0;bottom:var(--profile-envelope-current-bottom-position);width:var(--profile-envelope-width);height:var(--profile-envelope-height);aspect-ratio:var(--profile-envelope-aspect-ratio);margin-inline:auto;position:absolute;left:0}.profile-letter__envelope-back[data-v-0d3d7447]{z-index:1;box-sizing:border-box;border:var(--profile-envelope-border-width) solid var(--profile-envelope-edge);background:var(--profile-envelope-texture), var(--profile-envelope-back);border-top:0;border-radius:0 0 .85rem .85rem;position:absolute;inset:0}.profile-letter__sheet[data-v-0d3d7447]{bottom:calc(-4.25rem - var(--profile-envelope-bottom-position) + var(--profile-envelope-growth));box-sizing:border-box;border:1px solid var(--profile-paper-edge);background:repeating-linear-gradient(0deg, var(--profile-paper-grain) 0, var(--profile-paper-grain) 1px, transparent 1px, transparent 5px), var(--profile-paper);width:min(79%,34rem);min-height:24.25rem;box-shadow:0 1.7rem 2.8rem var(--profile-sheet-shadow), 0 .35rem .8rem var(--profile-sheet-shadow-close);color:var(--profile-ink);transform-origin:bottom;border-radius:.18rem;padding:5rem clamp(1.5rem,4vw,2.35rem) clamp(1.5rem,4vw,2.35rem);transition:transform .42s cubic-bezier(.2,.75,.25,1),box-shadow .42s;position:absolute;left:50%;overflow:hidden;transform:translate(-50%)rotateX(-2deg)rotate(-1deg)}.profile-letter__sheet[data-v-0d3d7447]:after{border:.45rem solid var(--profile-paper-highlight);content:"";pointer-events:none;position:absolute;inset:0}.profile-letter__scene:focus-within .profile-letter__sheet[data-v-0d3d7447]{box-shadow:0 2.2rem 3.4rem var(--profile-sheet-shadow-hover), 0 .5rem 1rem var(--profile-sheet-shadow-hover-close)}.profile-letter__scene:focus-within .profile-letter__front-flap[data-v-0d3d7447]{z-index:1;transform:rotateX(-178deg)}.profile-letter__scene:focus-within .profile-letter__scroll-hint[data-v-0d3d7447]{opacity:0}.profile-letter__name[data-v-0d3d7447]{max-width:calc(100% - 5.2rem);color:var(--profile-accent);font-family:var(--vp-font-family-mono);letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:700;line-height:1.4}.profile-letter__summary[data-v-0d3d7447]{max-width:29rem;color:var(--profile-ink);margin:1.35rem 0 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.02rem,2.5vw,1.17rem);line-height:1.62}.profile-letter__actions[data-v-0d3d7447]{z-index:1;flex-wrap:wrap;gap:.65rem;margin-top:1.9rem;display:flex;position:relative;top:.25rem}.profile-letter__postage[data-v-0d3d7447]{width:5.5rem;height:3.8rem;position:absolute;top:1.7rem;right:1.6rem;transform:rotate(4deg)}.profile-letter__stamp[data-v-0d3d7447]{border:.28rem dotted var(--profile-stamp-border);background:var(--profile-stamp-background);width:2.8rem;height:3.3rem;color:var(--profile-stamp-ink);opacity:.72;place-items:center;font-family:Georgia,Times New Roman,serif;font-size:.83rem;font-weight:700;display:grid;position:absolute;top:0;right:0}.profile-letter__postmark[data-v-0d3d7447]{box-sizing:border-box;border:1px solid var(--profile-postmark);border-radius:50%;width:3.25rem;height:3.25rem;display:block;position:absolute;top:.2rem;left:0}.profile-letter__portrait[data-v-0d3d7447]{background:var(--profile-paper);clip-path:circle(50%);filter:saturate(.88)contrast(1.04);object-fit:cover;object-position:center;border-radius:50%;width:calc(100% - .28rem);height:calc(100% - .28rem);margin:0;display:block;position:absolute;inset:.14rem}.profile-letter__postmark[data-v-0d3d7447]:before,.profile-letter__postmark[data-v-0d3d7447]:after{background:var(--profile-postmark);content:"";opacity:.7;transform-origin:0;width:2.4rem;height:1px;position:absolute;left:2.7rem;transform:rotate(-5deg)}.profile-letter__postmark[data-v-0d3d7447]:before{box-shadow:0 .4rem var(--profile-postmark);top:1.25rem}.profile-letter__postmark[data-v-0d3d7447]:after{top:2.05rem}.profile-letter__envelope-front[data-v-0d3d7447]{z-index:3;box-sizing:border-box;pointer-events:none;border-radius:0 0 .85rem .85rem;overflow:hidden}.profile-letter__fold[data-v-0d3d7447]{position:absolute;inset:0}.profile-letter__envelope-front[data-v-0d3d7447]:after{z-index:1;box-sizing:border-box;border-right:var(--profile-envelope-border-width) solid var(--profile-envelope-edge);border-bottom:var(--profile-envelope-border-width) solid var(--profile-envelope-edge);border-left:var(--profile-envelope-border-width) solid var(--profile-envelope-edge);border-radius:inherit;content:"";position:absolute;inset:0}.profile-letter__fold--left[data-v-0d3d7447]{background:var(--profile-envelope-texture), linear-gradient(145deg, var(--profile-left-highlight), transparent 52%), var(--profile-envelope-left);clip-path:polygon(0 0,58% 100%,0 100%)}.profile-letter__fold--right[data-v-0d3d7447]{background:var(--profile-envelope-texture), linear-gradient(215deg, var(--profile-right-highlight), transparent 55%), var(--profile-envelope-right);clip-path:polygon(100% 0,42% 100%,100% 100%)}.profile-letter__fold--bottom[data-v-0d3d7447]{background:var(--profile-envelope-texture), linear-gradient(180deg, var(--profile-bottom-highlight), transparent 52%), var(--profile-envelope-bottom);clip-path:polygon(0 100%,50% 25%,100% 100%)}.profile-letter__fold-seams[data-v-0d3d7447]{z-index:1;fill:none;pointer-events:none;width:100%;height:100%;stroke:var(--profile-envelope-edge);stroke-linecap:round;stroke-linejoin:round;stroke-width:var(--profile-envelope-border-width);display:block;position:absolute;inset:0}.profile-letter__fold-seams path[data-v-0d3d7447]{vector-effect:non-scaling-stroke}.profile-letter__front-flap[data-v-0d3d7447]{z-index:var(--profile-front-flap-z-index);right:0;bottom:var(--profile-envelope-current-bottom-position);width:var(--profile-envelope-width);height:var(--profile-envelope-height);background:var(--profile-envelope-texture), linear-gradient(180deg, var(--profile-flap-highlight), transparent 58%), var(--profile-envelope-flap);clip-path:polygon(0 0,50% 92%,100% 0);pointer-events:none;transform:rotateX(var(--profile-front-flap-rotation));transform-origin:top;transform-style:preserve-3d;will-change:transform;margin-inline:auto;position:absolute;left:0}.profile-letter__front-flap-border[data-v-0d3d7447]{z-index:1;fill:none;pointer-events:none;width:100%;height:100%;stroke:var(--profile-envelope-edge);stroke-linecap:round;stroke-linejoin:round;stroke-width:var(--profile-envelope-border-width);display:block;position:absolute;inset:0}.profile-letter__front-flap-border path[data-v-0d3d7447]{vector-effect:non-scaling-stroke}@keyframes profile-letter-scroll-hint-0d3d7447{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-.35rem)scale(1.035)}}@media (width<=520px){.profile-letter[data-v-0d3d7447]{margin-left:-.4rem;margin-right:-.4rem}.profile-letter__scene[data-v-0d3d7447]{min-height:30.5rem}.profile-letter__sheet[data-v-0d3d7447]{bottom:calc(-3.85rem - var(--profile-envelope-bottom-position) + var(--profile-envelope-growth));width:87%;min-height:24rem;padding:4.5rem 1.35rem 1.45rem}.profile-letter__summary[data-v-0d3d7447]{margin-top:1.4rem;line-height:1.5}.profile-letter__postage[data-v-0d3d7447]{transform-origin:100% 0;top:1.1rem;right:1rem;transform:scale(.8)rotate(4deg)}}@media (prefers-reduced-motion:reduce){.profile-letter__scroll-hint[data-v-0d3d7447]{animation:none}.profile-letter__sheet[data-v-0d3d7447]{transition:none}}.service-cards[data-v-d67a47b8]{grid-template-columns:minmax(0,1fr);gap:12px;margin:24px 0 36px;display:grid}.service-card[data-v-d67a47b8]{border:1px solid color-mix(in srgb, var(--vp-c-divider) 78%, var(--vp-c-brand-1));background:linear-gradient(135deg, color-mix(in srgb, var(--vp-c-brand-soft) 42%, transparent), transparent 54%), var(--vp-c-bg-soft);border-radius:8px;align-items:flex-start;gap:clamp(14px,3vw,20px);min-width:0;min-height:0;padding:clamp(16px,3vw,22px);transition:border-color .2s,transform .2s,box-shadow .2s;display:flex;box-shadow:0 12px 34px #0000000a}.service-card[data-v-d67a47b8]:hover{border-color:color-mix(in srgb, var(--vp-c-brand-1) 48%, var(--vp-c-divider));transform:translateY(-2px);box-shadow:0 16px 38px #00000012}.service-card__icon[data-v-d67a47b8]{width:44px;height:44px;color:var(--vp-c-brand-1);background:var(--vp-c-brand-soft);border-radius:8px;flex:none;place-items:center;display:inline-grid}.service-card__icon svg[data-v-d67a47b8]{width:24px;height:24px}.service-card__copy[data-v-d67a47b8]{gap:6px;min-width:0;display:grid}.service-card__title[data-v-d67a47b8]{color:var(--vp-c-text-1);overflow-wrap:anywhere;font-size:16px;font-weight:700;line-height:1.3}.service-card__description[data-v-d67a47b8]{color:var(--vp-c-text-2);overflow-wrap:anywhere;font-size:14px;line-height:1.55}@media (width>=720px){.service-card[data-v-d67a47b8]{align-items:center}}.skills-heading[data-v-af5ce8c2]{border-top:1px solid var(--vp-c-divider);justify-content:space-between;align-items:center;gap:1.5rem;margin-top:48px;padding-top:24px;display:flex}.skills-heading h2[data-v-af5ce8c2]{border:0;margin:0;padding:0}.skill-filter[data-v-af5ce8c2]{flex:0 22rem;width:min(50%,22rem)}.skill-filter__control[data-v-af5ce8c2]{width:min(100%,22rem);position:relative}.skill-filter__combobox[data-v-af5ce8c2]{border:1px solid var(--vp-c-divider);background:var(--vp-c-bg);width:100%;min-height:2.75rem;color:var(--vp-c-text-1);font:inherit;text-align:left;cursor:pointer;border-radius:.65rem;padding:.6rem 2.5rem .6rem .85rem;transition:border-color .15s,box-shadow .15s;position:relative}.skill-filter__combobox[data-v-af5ce8c2]:after{content:"";border-bottom:2px solid;border-right:2px solid;width:.45rem;height:.45rem;transition:transform .15s;position:absolute;top:50%;right:1rem;transform:translateY(-70%)rotate(45deg)}.skill-filter__combobox[aria-expanded=true][data-v-af5ce8c2]:after{transform:translateY(-25%)rotate(225deg)}.skill-filter__combobox[data-v-af5ce8c2]:hover,.skill-filter__combobox[data-v-af5ce8c2]:focus-visible{border-color:var(--vp-c-brand-1);box-shadow:0 0 0 3px var(--vp-c-brand-soft);outline:none}.skill-filter__listbox[data-v-af5ce8c2]{z-index:5;border:1px solid var(--vp-c-divider);background:var(--vp-c-bg);width:100%;box-shadow:var(--vp-shadow-3);border-radius:.65rem;margin:0;padding:.35rem;list-style:none;position:absolute;top:calc(100% + .35rem);left:0}.skill-filter__option[data-v-af5ce8c2]{cursor:pointer;border-radius:.4rem;outline:none;align-items:center;gap:.65rem;margin:0;padding:.55rem .6rem;display:flex}.skill-filter__option[data-v-af5ce8c2]:hover,.skill-filter__option[data-v-af5ce8c2]:focus-visible{background:var(--vp-c-bg-soft)}.skill-filter__option--locked[data-v-af5ce8c2]{color:var(--vp-c-text-2);cursor:not-allowed}.skill-filter__check[data-v-af5ce8c2]{border:1px solid var(--vp-c-divider);background:var(--vp-c-bg);width:1.1rem;height:1.1rem;color:var(--vp-c-brand-1);border-radius:.3rem;flex:none;place-items:center;font-size:.8rem;font-weight:700;display:grid}.skill-filter__check svg[data-v-af5ce8c2]{width:.85rem;height:.85rem}.skill-filter__option[aria-selected=true] .skill-filter__check[data-v-af5ce8c2]{border-color:var(--vp-c-brand-1);background:var(--vp-c-brand-soft)}.tool-bubbles[data-v-af5ce8c2]{isolation:isolate;width:100vw;height:clamp(22rem,58vw,27rem);transform:translateX(var(--tool-bubbles-viewport-offset,0));margin:5rem calc(50% - 50vw);padding:0;list-style:none;position:relative;overflow:hidden}.tool-bubbles__empty[data-v-af5ce8c2]{width:min(100% - 2rem,28rem);color:var(--vp-c-text-2);text-align:center;margin:0;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.tool-bubbles__item[data-v-af5ce8c2]{--tool-color:var(--vp-c-brand-1);opacity:0;will-change:transform;margin:0;display:block;position:absolute;top:0;left:0}.tool-bubbles__item--tools[data-v-af5ce8c2]{--tool-color:#14532d}.tool-bubbles__item--technologies[data-v-af5ce8c2]{--tool-color:color-mix(in srgb, var(--vp-c-brand-2) 52%, var(--vp-c-indigo-2))}.tool-bubbles__item--soft-skills[data-v-af5ce8c2]{--tool-color:#84cc16}.dark{--tool-color:#bef264}.tool-bubbles--ready .tool-bubbles__item[data-v-af5ce8c2]{opacity:1;transition:opacity .18s ease-out}.tool-bubbles--ready .tool-bubble-enter-active[data-v-af5ce8c2],.tool-bubbles--ready .tool-bubble-leave-active[data-v-af5ce8c2]{transition:opacity .36s}.tool-bubble-enter-active .tool-bubbles__bubble[data-v-af5ce8c2],.tool-bubble-leave-active .tool-bubbles__bubble[data-v-af5ce8c2]{transition:border-color .15s,box-shadow .15s,transform .36s cubic-bezier(.22,1,.36,1)}.tool-bubbles--ready .tool-bubble-enter-from[data-v-af5ce8c2],.tool-bubbles--ready .tool-bubble-leave-to[data-v-af5ce8c2]{opacity:0}.tool-bubble-enter-from .tool-bubbles__bubble[data-v-af5ce8c2],.tool-bubble-leave-to .tool-bubbles__bubble[data-v-af5ce8c2]{transform:scale(.65)}.tool-bubble-leave-active[data-v-af5ce8c2]{pointer-events:none}.tool-bubbles__bubble[data-v-af5ce8c2]{box-sizing:border-box;border:1px solid color-mix(in srgb, var(--tool-color) 55%, var(--vp-c-divider));background:linear-gradient(145deg, color-mix(in srgb, var(--tool-color) 34%, var(--vp-c-bg-soft)), color-mix(in srgb, var(--tool-color) 18%, var(--vp-c-bg)));width:100%;height:100%;box-shadow:inset 0 1px 0 #ffffff73, 0 10px 24px color-mix(in srgb, var(--tool-color) 18%, transparent);color:var(--vp-c-text-1);font-size:inherit;text-align:center;border-radius:50%;outline:none;place-items:center;padding:.75rem;font-weight:600;line-height:1.2;transition:border-color .15s,box-shadow .15s;display:grid}.tool-bubbles__bubble>span[data-v-af5ce8c2]{width:var(--tool-label-width)}.tool-bubbles__bubble[data-v-af5ce8c2]:hover,.tool-bubbles__bubble[data-v-af5ce8c2]:focus-visible{border-color:color-mix(in srgb, var(--tool-color) 88%, var(--vp-c-divider));box-shadow:inset 0 1px 0 #ffffff8c, 0 14px 30px color-mix(in srgb, var(--tool-color) 35%, transparent)}:is(.tool-bubbles__item[data-v-af5ce8c2]:has(.tool-bubbles__bubble:hover),.tool-bubbles__item[data-v-af5ce8c2]:has(.tool-bubbles__bubble:focus-visible)){z-index:1}.dark{box-shadow:inset 0 1px 0 #ffffff1a, 0 10px 24px color-mix(in srgb, var(--tool-color) 18%, #0000002e)}.dark,.dark{box-shadow:inset 0 1px 0 #ffffff26, 0 14px 30px color-mix(in srgb, var(--tool-color) 32%, #0003)}@media (width<=767px){.skills-heading[data-v-af5ce8c2]{flex-direction:column;align-items:stretch;gap:1rem}.skill-filter[data-v-af5ce8c2]{flex-basis:auto;width:100%}.tool-bubbles[data-v-af5ce8c2]{isolation:auto;grid-template-columns:1fr;gap:.65rem;width:100%;height:auto;margin:2rem 0 0;display:grid;overflow:visible;transform:none}.tool-bubbles__item[data-v-af5ce8c2]{opacity:1;will-change:auto;transition:none;position:static;width:auto!important;height:auto!important;font-size:inherit!important;transform:none!important}.tool-bubbles__bubble[data-v-af5ce8c2]{border-left:.25rem solid var(--tool-color);background:color-mix(in srgb, var(--tool-color) 9%, var(--vp-c-bg-soft));width:100%;height:auto;min-height:2.75rem;box-shadow:none;text-align:left;border-radius:.5rem;justify-content:flex-start;align-items:center;padding:.7rem .85rem;font-size:.95rem;transition:none;display:flex}.tool-bubbles__bubble>span[data-v-af5ce8c2]{width:auto}.tool-bubbles__bubble[data-v-af5ce8c2]:hover,.tool-bubbles__bubble[data-v-af5ce8c2]:focus-visible,.dark,.dark{box-shadow:none}.tool-bubble-enter-active[data-v-af5ce8c2],.tool-bubble-leave-active[data-v-af5ce8c2],.tool-bubble-enter-active .tool-bubbles__bubble[data-v-af5ce8c2],.tool-bubble-leave-active .tool-bubbles__bubble[data-v-af5ce8c2]{transition:none}.tool-bubble-enter-from .tool-bubbles__bubble[data-v-af5ce8c2],.tool-bubble-leave-to .tool-bubbles__bubble[data-v-af5ce8c2]{transform:none}.tool-bubbles__empty[data-v-af5ce8c2]{border:1px solid var(--vp-c-divider);background:var(--vp-c-bg-soft);border-radius:.5rem;width:100%;padding:.85rem;position:static;transform:none}}@media (prefers-reduced-motion:reduce){.tool-bubbles--ready .tool-bubble-enter-active[data-v-af5ce8c2],.tool-bubbles--ready .tool-bubble-leave-active[data-v-af5ce8c2],.tool-bubble-enter-active .tool-bubbles__bubble[data-v-af5ce8c2],.tool-bubble-leave-active .tool-bubbles__bubble[data-v-af5ce8c2],.tool-bubbles__item[data-v-af5ce8c2],.tool-bubbles__bubble[data-v-af5ce8c2]{transition-duration:.01ms}}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/inter-roman-cyrillic-ext.BeNbU08G.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/inter-roman-cyrillic.CD0kT8R4.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/inter-roman-greek-ext.CFAEQ5Ow.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/inter-roman-greek.Dsf7YjP7.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/inter-roman-vietnamese.CpqCnS2H.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/inter-roman-latin-ext.Dl_ayf4-.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/inter-roman-latin.Cy4MYw_J.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(/assets/inter-italic-cyrillic-ext._dlW9xFb.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(/assets/inter-italic-cyrillic.D7dRslh9.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(/assets/inter-italic-greek-ext.Ct-Tf2bq.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(/assets/inter-italic-greek.DNcpQ8QC.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(/assets/inter-italic-vietnamese.BI5UxJD-.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(/assets/inter-italic-latin-ext.DytegdRQ.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(/assets/inter-italic-latin.COaG5lWR.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter4CJK;font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/inter-roman-cyrillic-ext.BeNbU08G.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter4CJK;font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/inter-roman-cyrillic.CD0kT8R4.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter4CJK;font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/inter-roman-greek-ext.CFAEQ5Ow.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter4CJK;font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/inter-roman-greek.Dsf7YjP7.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter4CJK;font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/inter-roman-vietnamese.CpqCnS2H.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter4CJK;font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/inter-roman-latin-ext.Dl_ayf4-.woff2)format("woff2");unicode-range:U+100-2AF,U+304,U+308,U+329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter4CJK;font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/inter-roman-latin.Cy4MYw_J.woff2)format("woff2");unicode-range:U+0-7D,U+7F-B6,U+B8-FF,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-2012,U+2016-2017,U+201A-201B,U+201E-2025,U+2027-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter4CJK;font-style:italic;font-weight:100 900;font-display:swap;src:url(/assets/inter-italic-cyrillic-ext._dlW9xFb.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter4CJK;font-style:italic;font-weight:100 900;font-display:swap;src:url(/assets/inter-italic-cyrillic.D7dRslh9.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter4CJK;font-style:italic;font-weight:100 900;font-display:swap;src:url(/assets/inter-italic-greek-ext.Ct-Tf2bq.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter4CJK;font-style:italic;font-weight:100 900;font-display:swap;src:url(/assets/inter-italic-greek.DNcpQ8QC.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter4CJK;font-style:italic;font-weight:100 900;font-display:swap;src:url(/assets/inter-italic-vietnamese.BI5UxJD-.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter4CJK;font-style:italic;font-weight:100 900;font-display:swap;src:url(/assets/inter-italic-latin-ext.DytegdRQ.woff2)format("woff2");unicode-range:U+100-2AF,U+304,U+308,U+329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter4CJK;font-style:italic;font-weight:100 900;font-display:swap;src:url(/assets/inter-italic-latin.COaG5lWR.woff2)format("woff2");unicode-range:U+0-7D,U+7F-B6,U+B8-FF,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-2012,U+2016-2017,U+201A-201B,U+201E-2025,U+2027-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--vp-c-white:#fff;--vp-c-black:#000;--vp-c-neutral:var(--vp-c-black);--vp-c-neutral-inverse:var(--vp-c-white)}.dark{--vp-c-neutral:var(--vp-c-white);--vp-c-neutral-inverse:var(--vp-c-black)}:root{--vp-c-gray-1:#dddde3;--vp-c-gray-2:#e4e4e9;--vp-c-gray-3:#ebebef;--vp-c-gray-soft:#8e96aa24;--vp-c-indigo-1:#3451b2;--vp-c-indigo-2:#3a5ccc;--vp-c-indigo-3:#5672cd;--vp-c-indigo-soft:#646cff24;--vp-c-purple-1:#6f42c1;--vp-c-purple-2:#7e4cc9;--vp-c-purple-3:#8e5cd9;--vp-c-purple-soft:#9f7aea24;--vp-c-green-1:#18794e;--vp-c-green-2:#299764;--vp-c-green-3:#30a46c;--vp-c-green-soft:#10b98124;--vp-c-yellow-1:#915930;--vp-c-yellow-2:#946300;--vp-c-yellow-3:#9f6a00;--vp-c-yellow-soft:#eab30824;--vp-c-red-1:#b8272c;--vp-c-red-2:#d5393e;--vp-c-red-3:#e0575b;--vp-c-red-soft:#f43f5e24;--vp-c-sponsor:#db2777}.dark{--vp-c-gray-1:#515c67;--vp-c-gray-2:#414853;--vp-c-gray-3:#32363f;--vp-c-gray-soft:#65758529;--vp-c-indigo-1:#a8b1ff;--vp-c-indigo-2:#5c73e7;--vp-c-indigo-3:#3e63dd;--vp-c-indigo-soft:#646cff29;--vp-c-purple-1:#c8abfa;--vp-c-purple-2:#a879e6;--vp-c-purple-3:#8e5cd9;--vp-c-purple-soft:#9f7aea29;--vp-c-green-1:#3dd68c;--vp-c-green-2:#30a46c;--vp-c-green-3:#298459;--vp-c-green-soft:#10b98129;--vp-c-yellow-1:#f9b44e;--vp-c-yellow-2:#da8b17;--vp-c-yellow-3:#a46a0a;--vp-c-yellow-soft:#eab30829;--vp-c-red-1:#f66f81;--vp-c-red-2:#f14158;--vp-c-red-3:#b62a3c;--vp-c-red-soft:#f43f5e29}:root{--vp-c-bg:#fff;--vp-c-bg-alt:#f6f6f7;--vp-c-bg-elv:#fff;--vp-c-bg-soft:#f6f6f7}.dark{--vp-c-bg:#1b1b1f;--vp-c-bg-alt:#161618;--vp-c-bg-elv:#202127;--vp-c-bg-soft:#202127}:root{--vp-c-border:#c2c2c4;--vp-c-divider:#e2e2e3;--vp-c-gutter:#e2e2e3}.dark{--vp-c-border:#3c3f44;--vp-c-divider:#2e2e32;--vp-c-gutter:#000}:root{--vp-c-text-1:#3c3c43;--vp-c-text-2:#67676c;--vp-c-text-3:#929295}.dark{--vp-c-text-1:#dfdfd6;--vp-c-text-2:#98989f;--vp-c-text-3:#6a6a71}:root{--vp-c-default-1:var(--vp-c-gray-1);--vp-c-default-2:var(--vp-c-gray-2);--vp-c-default-3:var(--vp-c-gray-3);--vp-c-default-soft:var(--vp-c-gray-soft);--vp-c-brand-1:var(--vp-c-indigo-1);--vp-c-brand-2:var(--vp-c-indigo-2);--vp-c-brand-3:var(--vp-c-indigo-3);--vp-c-brand-soft:var(--vp-c-indigo-soft);--vp-c-brand:var(--vp-c-brand-1);--vp-c-tip-1:var(--vp-c-brand-1);--vp-c-tip-2:var(--vp-c-brand-2);--vp-c-tip-3:var(--vp-c-brand-3);--vp-c-tip-soft:var(--vp-c-brand-soft);--vp-c-note-1:var(--vp-c-brand-1);--vp-c-note-2:var(--vp-c-brand-2);--vp-c-note-3:var(--vp-c-brand-3);--vp-c-note-soft:var(--vp-c-brand-soft);--vp-c-success-1:var(--vp-c-green-1);--vp-c-success-2:var(--vp-c-green-2);--vp-c-success-3:var(--vp-c-green-3);--vp-c-success-soft:var(--vp-c-green-soft);--vp-c-important-1:var(--vp-c-purple-1);--vp-c-important-2:var(--vp-c-purple-2);--vp-c-important-3:var(--vp-c-purple-3);--vp-c-important-soft:var(--vp-c-purple-soft);--vp-c-warning-1:var(--vp-c-yellow-1);--vp-c-warning-2:var(--vp-c-yellow-2);--vp-c-warning-3:var(--vp-c-yellow-3);--vp-c-warning-soft:var(--vp-c-yellow-soft);--vp-c-danger-1:var(--vp-c-red-1);--vp-c-danger-2:var(--vp-c-red-2);--vp-c-danger-3:var(--vp-c-red-3);--vp-c-danger-soft:var(--vp-c-red-soft);--vp-c-caution-1:var(--vp-c-red-1);--vp-c-caution-2:var(--vp-c-red-2);--vp-c-caution-3:var(--vp-c-red-3);--vp-c-caution-soft:var(--vp-c-red-soft);--vp-font-family-base:"Inter", -apple-system, BlinkMacSystemFont, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--vp-font-family-mono:ui-monospace, "Menlo", "Monaco", "Consolas", "Liberation Mono", "Courier New", monospace;font-optical-sizing:auto}[lang]:where(:is(:lang(zh),:lang(ja))){--vp-font-family-base:"Inter4CJK", -apple-system, BlinkMacSystemFont, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"}[lang]:where(:is(:lang(zh),:lang(ja),:lang(ko))) h1,[lang]:where(:is(:lang(zh),:lang(ja),:lang(ko))) h2,[lang]:where(:is(:lang(zh),:lang(ja),:lang(ko))) h3,[lang]:where(:is(:lang(zh),:lang(ja),:lang(ko))) h4,[lang]:where(:is(:lang(zh),:lang(ja),:lang(ko))) h5,[lang]:where(:is(:lang(zh),:lang(ja),:lang(ko))) h6,[lang]:where(:is(:lang(zh),:lang(ja),:lang(ko))) li,[lang]:where(:is(:lang(zh),:lang(ja),:lang(ko))) p{line-break:strict}:root{--vp-shadow-1:0 1px 2px #0000000a, 0 1px 2px #0000000f;--vp-shadow-2:0 3px 12px #00000012, 0 1px 4px #00000012;--vp-shadow-3:0 12px 32px #0000001a, 0 2px 6px #00000014;--vp-shadow-4:0 14px 44px #0000001f, 0 3px 9px #0000001f;--vp-shadow-5:0 18px 56px #00000029, 0 4px 12px #00000029;--vp-z-index-footer:10;--vp-z-index-local-nav:20;--vp-z-index-nav:30;--vp-z-index-layout-top:40;--vp-z-index-backdrop:50;--vp-z-index-sidebar:60}@media (width>=960px){:root{--vp-z-index-sidebar:25}}:root{--vp-layout-max-width:1440px;--vp-header-anchor-symbol:"#";--vp-code-line-height:1.7;--vp-code-font-size:.875em;--vp-code-color:var(--vp-c-brand-1);--vp-code-link-color:var(--vp-c-brand-1);--vp-code-link-hover-color:var(--vp-c-brand-2);--vp-code-bg:var(--vp-c-default-soft);--vp-code-block-color:var(--vp-c-text-2);--vp-code-block-bg:var(--vp-c-bg-alt);--vp-code-block-divider-color:var(--vp-c-gutter);--vp-code-lang-color:var(--vp-c-text-2);--vp-code-line-highlight-color:var(--vp-c-default-soft);--vp-code-line-number-color:var(--vp-c-text-2);--vp-code-line-diff-add-color:var(--vp-c-success-soft);--vp-code-line-diff-add-symbol-color:var(--vp-c-success-1);--vp-code-line-diff-remove-color:var(--vp-c-danger-soft);--vp-code-line-diff-remove-symbol-color:var(--vp-c-danger-1);--vp-code-line-warning-color:var(--vp-c-warning-soft);--vp-code-line-error-color:var(--vp-c-danger-soft);--vp-code-copy-code-border-color:var(--vp-c-divider);--vp-code-copy-code-bg:var(--vp-c-bg-soft);--vp-code-copy-code-hover-border-color:var(--vp-c-divider);--vp-code-copy-code-hover-bg:var(--vp-c-bg);--vp-code-copy-code-active-text:var(--vp-c-text-2);--vp-code-copy-copied-text-content:"Copied";--vp-code-tab-divider:var(--vp-code-block-divider-color);--vp-code-tab-text-color:var(--vp-c-text-2);--vp-code-tab-bg:var(--vp-code-block-bg);--vp-code-tab-hover-text-color:var(--vp-c-text-1);--vp-code-tab-active-text-color:var(--vp-c-text-1);--vp-code-tab-active-bar-color:var(--vp-c-brand-1)}:lang(es),:lang(pt){--vp-code-copy-copied-text-content:"Copiado"}:lang(fa){--vp-code-copy-copied-text-content:"کپی شد"}:lang(ko){--vp-code-copy-copied-text-content:"복사됨"}:lang(ru){--vp-code-copy-copied-text-content:"Скопировано"}:lang(zh){--vp-code-copy-copied-text-content:"已复制"}:lang(ja){--vp-code-copy-copied-text-content:"コピー完了"}:root{--vp-button-brand-border:transparent;--vp-button-brand-text:var(--vp-c-white);--vp-button-brand-bg:var(--vp-c-brand-3);--vp-button-brand-hover-border:transparent;--vp-button-brand-hover-text:var(--vp-c-white);--vp-button-brand-hover-bg:var(--vp-c-brand-2);--vp-button-brand-active-border:transparent;--vp-button-brand-active-text:var(--vp-c-white);--vp-button-brand-active-bg:var(--vp-c-brand-1);--vp-button-alt-border:transparent;--vp-button-alt-text:var(--vp-c-text-1);--vp-button-alt-bg:var(--vp-c-default-3);--vp-button-alt-hover-border:transparent;--vp-button-alt-hover-text:var(--vp-c-text-1);--vp-button-alt-hover-bg:var(--vp-c-default-2);--vp-button-alt-active-border:transparent;--vp-button-alt-active-text:var(--vp-c-text-1);--vp-button-alt-active-bg:var(--vp-c-default-1);--vp-button-sponsor-border:var(--vp-c-text-2);--vp-button-sponsor-text:var(--vp-c-text-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;--vp-custom-block-font-size:14px;--vp-custom-block-code-font-size:13px;--vp-custom-block-info-border:transparent;--vp-custom-block-info-text:var(--vp-c-text-1);--vp-custom-block-info-bg:var(--vp-c-default-soft);--vp-custom-block-info-code-bg:var(--vp-c-default-soft);--vp-custom-block-note-border:transparent;--vp-custom-block-note-text:var(--vp-c-text-1);--vp-custom-block-note-bg:var(--vp-c-default-soft);--vp-custom-block-note-code-bg:var(--vp-c-default-soft);--vp-custom-block-tip-border:transparent;--vp-custom-block-tip-text:var(--vp-c-text-1);--vp-custom-block-tip-bg:var(--vp-c-tip-soft);--vp-custom-block-tip-code-bg:var(--vp-c-tip-soft);--vp-custom-block-important-border:transparent;--vp-custom-block-important-text:var(--vp-c-text-1);--vp-custom-block-important-bg:var(--vp-c-important-soft);--vp-custom-block-important-code-bg:var(--vp-c-important-soft);--vp-custom-block-warning-border:transparent;--vp-custom-block-warning-text:var(--vp-c-text-1);--vp-custom-block-warning-bg:var(--vp-c-warning-soft);--vp-custom-block-warning-code-bg:var(--vp-c-warning-soft);--vp-custom-block-danger-border:transparent;--vp-custom-block-danger-text:var(--vp-c-text-1);--vp-custom-block-danger-bg:var(--vp-c-danger-soft);--vp-custom-block-danger-code-bg:var(--vp-c-danger-soft);--vp-custom-block-caution-border:transparent;--vp-custom-block-caution-text:var(--vp-c-text-1);--vp-custom-block-caution-bg:var(--vp-c-caution-soft);--vp-custom-block-caution-code-bg:var(--vp-c-caution-soft);--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-info-code-bg);--vp-input-border-color:var(--vp-c-border);--vp-input-bg-color:var(--vp-c-bg-alt);--vp-input-switch-bg-color:var(--vp-c-default-soft);--vp-nav-height:64px;--vp-nav-bg-color:var(--vp-c-bg);--vp-nav-screen-bg-color:var(--vp-c-bg);--vp-nav-logo-height:24px}.hide-nav{--vp-nav-height:0px}.hide-nav .VPSidebar{--vp-nav-height:22px}:root{--vp-local-nav-bg-color:var(--vp-c-bg);--vp-sidebar-width:272px;--vp-sidebar-bg-color:var(--vp-c-bg-alt);--vp-backdrop-bg-color:#0009;--vp-home-hero-name-color:var(--vp-c-brand-1);--vp-home-hero-name-background:transparent;--vp-home-hero-image-background-image:none;--vp-home-hero-image-filter:none;--vp-badge-info-border:transparent;--vp-badge-info-text:var(--vp-c-text-2);--vp-badge-info-bg:var(--vp-c-default-soft);--vp-badge-tip-border:transparent;--vp-badge-tip-text:var(--vp-c-tip-1);--vp-badge-tip-bg:var(--vp-c-tip-soft);--vp-badge-warning-border:transparent;--vp-badge-warning-text:var(--vp-c-warning-1);--vp-badge-warning-bg:var(--vp-c-warning-soft);--vp-badge-danger-border:transparent;--vp-badge-danger-text:var(--vp-c-danger-1);--vp-badge-danger-bg:var(--vp-c-danger-soft);--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-1);--vp-carbon-ads-hover-poweredby-color:var(--vp-c-text-1);--vp-local-search-bg:var(--vp-c-bg);--vp-local-search-result-bg:var(--vp-c-bg);--vp-local-search-result-border:var(--vp-c-divider);--vp-local-search-result-selected-bg:var(--vp-c-bg);--vp-local-search-result-selected-border:var(--vp-c-brand-1);--vp-local-search-highlight-bg:var(--vp-c-brand-1);--vp-local-search-highlight-text:var(--vp-c-neutral-inverse)}@layer __vitepress_base{@media (prefers-reduced-motion:reduce){*,:before,:after{background-attachment:initial!important;scroll-behavior:auto!important;transition-duration:0s!important;transition-delay:0s!important;animation-duration:1ms!important;animation-iteration-count:1!important;animation-delay:-1ms!important}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;font-size:16px;line-height:1.4}html.dark{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body{width:100%;min-width:320px;min-height:100vh;line-height:24px;font-family:var(--vp-font-family-base);color:var(--vp-c-text-1);background-color:var(--vp-c-bg);font-synthesis:style;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-autospace:normal;text-spacing-trim:normal;margin:0;font-size:16px;font-weight:400}main{display:block}h1,h2,h3,h4,h5,h6{margin:0;font-size:16px;font-weight:400;line-height:24px}p{margin:0}strong,b{font-weight:600}a,area,button,[role=button],input,label,select,summary,textarea{touch-action:manipulation}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}ol,ul{margin:0;padding:0;list-style:none}blockquote{margin:0}pre,code,kbd,samp{font-family:var(--vp-font-family-mono);text-autospace:no-autospace}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{line-height:inherit;color:inherit;border:0;padding:0}button{background-color:#0000;background-image:none;padding:0;font-family:inherit}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:#0000}:is(input:-ms-placeholder-shown,textarea:-ms-placeholder-shown){color:var(--vp-c-text-3)}:is(input:placeholder-shown,textarea:placeholder-shown){color:var(--vp-c-text-3)}input::-moz-placeholder{color:var(--vp-c-text-3)}textarea::-moz-placeholder{color:var(--vp-c-text-3)}input::placeholder,textarea::placeholder{color:var(--vp-c-text-3)}input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}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}mjx-container{overflow-x:auto}mjx-container>svg{margin:auto;display:inline-block}}[class^=vpi-],[class*=\ vpi-],.vp-icon{width:1em;height:1em}[class^=vpi-].bg,[class*=\ vpi-].bg,.vp-icon.bg{background-color:#0000;background-size:100% 100%}[class^=vpi-]:not(.bg),[class*=\ vpi-]:not(.bg),.vp-icon:not(.bg){-webkit-mask:var(--icon) no-repeat;-webkit-mask:var(--icon) no-repeat;mask:var(--icon) no-repeat;color:inherit;background-color:currentColor;-webkit-mask-size:100% 100%;mask-size:100% 100%}.vpi-align-left{--icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M15 12H3m14 6H3M21 6H3'/%3E%3C/svg%3E")}.vpi-arrow-right,.vpi-arrow-down,.vpi-arrow-left,.vpi-arrow-up{--icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M5 12h14m-7-7l7 7l-7 7'/%3E%3C/svg%3E")}.vpi-chevron-right,.vpi-chevron-down,.vpi-chevron-left,.vpi-chevron-up{--icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m9 18l6-6l-6-6'/%3E%3C/svg%3E")}.vpi-chevron-down,.vpi-arrow-down{transform:rotate(90deg)}.vpi-chevron-left,.vpi-arrow-left{transform:rotate(180deg)}.vpi-chevron-up,.vpi-arrow-up{transform:rotate(-90deg)}.vpi-square-pen{--icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='M12 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7'/%3E%3Cpath d='M18.375 2.625a1 1 0 0 1 3 3l-9.013 9.014a2 2 0 0 1-.853.505l-2.873.84a.5.5 0 0 1-.62-.62l.84-2.873a2 2 0 0 1 .506-.852z'/%3E%3C/g%3E%3C/svg%3E")}.vpi-plus{--icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M5 12h14m-7-7v14'/%3E%3C/svg%3E")}.vpi-sun{--icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3Cpath d='M12 2v2m0 16v2M4.93 4.93l1.41 1.41m11.32 11.32l1.41 1.41M2 12h2m16 0h2M6.34 17.66l-1.41 1.41M19.07 4.93l-1.41 1.41'/%3E%3C/g%3E%3C/svg%3E")}.vpi-moon{--icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M12 3a6 6 0 0 0 9 9a9 9 0 1 1-9-9'/%3E%3C/svg%3E")}.vpi-more-horizontal{--icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='1'/%3E%3Ccircle cx='19' cy='12' r='1'/%3E%3Ccircle cx='5' cy='12' r='1'/%3E%3C/g%3E%3C/svg%3E")}.vpi-languages{--icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m5 8l6 6m-7 0l6-6l2-3M2 5h12M7 2h1m14 20l-5-10l-5 10m2-4h6'/%3E%3C/svg%3E")}.vpi-heart{--icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 14c1.49-1.46 3-3.21 3-5.5A5.5 5.5 0 0 0 16.5 3c-1.76 0-3 .5-4.5 2c-1.5-1.5-2.74-2-4.5-2A5.5 5.5 0 0 0 2 8.5c0 2.3 1.5 4.05 3 5.5l7 7Z'/%3E%3C/svg%3E")}.vpi-search{--icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='m21 21l-4.34-4.34'/%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3C/g%3E%3C/svg%3E")}.vpi-sparkles{--icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.8'%3E%3Cpath d='M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594zM20 2v4m2-2h-4'/%3E%3Ccircle cx='4' cy='20' r='2'/%3E%3C/g%3E%3C/svg%3E")}.vpi-layout-list{--icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Crect width='7' height='7' x='3' y='3' rx='1'/%3E%3Crect width='7' height='7' x='3' y='14' rx='1'/%3E%3Cpath d='M14 4h7m-7 5h7m-7 6h7m-7 5h7'/%3E%3C/g%3E%3C/svg%3E")}.vpi-delete{--icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M10 5a2 2 0 0 0-1.344.519l-6.328 5.74a1 1 0 0 0 0 1.481l6.328 5.741A2 2 0 0 0 10 19h10a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2zm2 4l6 6m0-6l-6 6'/%3E%3C/svg%3E")}.vpi-corner-down-left{--icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='M20 4v7a4 4 0 0 1-4 4H4'/%3E%3Cpath d='m9 10l-5 5l5 5'/%3E%3C/g%3E%3C/svg%3E")}:root{--vp-icon-copy:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='rgba(128,128,128,1)' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Crect width='8' height='4' x='8' y='2' rx='1' ry='1'/%3E%3Cpath d='M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2'/%3E%3C/g%3E%3C/svg%3E");--vp-icon-copied:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='rgba(128,128,128,1)' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Crect width='8' height='4' x='8' y='2' rx='1' ry='1'/%3E%3Cpath d='M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2'/%3E%3Cpath d='m9 14l2 2l4-4'/%3E%3C/g%3E%3C/svg%3E")}.visually-hidden{white-space:nowrap;clip:rect(0 0 0 0);clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.custom-block{line-height:24px;font-size:var(--vp-custom-block-font-size);color:var(--vp-c-text-2);border:1px solid #0000;border-radius:8px;padding:16px 16px 8px}.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 a,.custom-block.info code{color:var(--vp-c-brand-1)}.custom-block.info a:hover,.custom-block.info a:hover>code{color:var(--vp-c-brand-2)}.custom-block.info code{background-color:var(--vp-custom-block-info-code-bg)}.custom-block.note{border-color:var(--vp-custom-block-note-border);color:var(--vp-custom-block-note-text);background-color:var(--vp-custom-block-note-bg)}.custom-block.note a,.custom-block.note code{color:var(--vp-c-brand-1)}.custom-block.note a:hover,.custom-block.note a:hover>code{color:var(--vp-c-brand-2)}.custom-block.note code{background-color:var(--vp-custom-block-note-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 a,.custom-block.tip code{color:var(--vp-c-tip-1)}.custom-block.tip a:hover,.custom-block.tip a:hover>code{color:var(--vp-c-tip-2)}.custom-block.tip code{background-color:var(--vp-custom-block-tip-code-bg)}.custom-block.important{border-color:var(--vp-custom-block-important-border);color:var(--vp-custom-block-important-text);background-color:var(--vp-custom-block-important-bg)}.custom-block.important a,.custom-block.important code{color:var(--vp-c-important-1)}.custom-block.important a:hover,.custom-block.important a:hover>code{color:var(--vp-c-important-2)}.custom-block.important code{background-color:var(--vp-custom-block-important-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 a,.custom-block.warning code{color:var(--vp-c-warning-1)}.custom-block.warning a:hover,.custom-block.warning a:hover>code{color:var(--vp-c-warning-2)}.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 a,.custom-block.danger code{color:var(--vp-c-danger-1)}.custom-block.danger a:hover,.custom-block.danger a:hover>code{color:var(--vp-c-danger-2)}.custom-block.danger code{background-color:var(--vp-custom-block-danger-code-bg)}.custom-block.caution{border-color:var(--vp-custom-block-caution-border);color:var(--vp-custom-block-caution-text);background-color:var(--vp-custom-block-caution-bg)}.custom-block.caution a,.custom-block.caution code{color:var(--vp-c-caution-1)}.custom-block.caution a:hover,.custom-block.caution a:hover>code{color:var(--vp-c-caution-2)}.custom-block.caution code{background-color:var(--vp-custom-block-caution-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 a{color:var(--vp-c-brand-1)}.custom-block.details a:hover,.custom-block.details a:hover>code{color:var(--vp-c-brand-2)}.custom-block.details code{background-color:var(--vp-custom-block-details-code-bg)}.custom-block-title{font-weight:600}.custom-block p+p{margin:8px 0}.custom-block.details summary{cursor:pointer;-webkit-user-select:none;user-select:none;margin:0 0 8px;font-weight:700}.custom-block.details summary+p{margin:8px 0}.custom-block a{color:inherit;text-underline-offset:2px;font-weight:600;text-decoration:underline;transition:opacity .25s}.custom-block a:hover{opacity:.75}.custom-block code{font-size:var(--vp-custom-block-code-font-size)}.custom-block.custom-block th,.custom-block.custom-block blockquote>p{font-size:var(--vp-custom-block-font-size);color:inherit}.dark .shiki span{color:var(--shiki-dark,inherit)}html:not(.dark) .shiki span{color:var(--shiki-light,inherit)}.vp-code-group{margin-top:16px}.vp-code-group .tabs{background-color:var(--vp-code-tab-bg);box-shadow:inset 0 -1px var(--vp-code-tab-divider);margin-left:-24px;margin-right:-24px;padding:0 12px;display:flex;position:relative;overflow:auto hidden}@media (width>=640px){.vp-code-group .tabs{border-radius:8px 8px 0 0;margin-left:0;margin-right:0}}.vp-code-group .tabs input{opacity:0;pointer-events:none;position:fixed}.vp-code-group .tabs label{color:var(--vp-code-tab-text-color);white-space:nowrap;cursor:pointer;border-bottom:1px solid #0000;padding:0 12px;font-size:14px;font-weight:500;line-height:48px;transition:color .25s;display:inline-block;position:relative}.vp-code-group .tabs label:after{z-index:1;content:"";background-color:#0000;border-radius:2px;height:2px;transition:background-color .25s;position:absolute;bottom:-1px;left:8px;right:8px}.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-],.vp-block{display:none;border-top-left-radius:0!important;border-top-right-radius:0!important;margin-top:0!important}.vp-code-group div[class*=language-].active,.vp-block.active{display:block}.vp-block{padding:20px 24px}.vp-doc h1,.vp-doc h2,.vp-doc h3,.vp-doc h4,.vp-doc h5,.vp-doc h6{outline:none;font-weight:600;position:relative}.vp-doc h1{letter-spacing:-.02em;font-size:28px;line-height:40px}.vp-doc h2{border-top:1px solid var(--vp-c-divider);letter-spacing:-.02em;margin:48px 0 16px;padding-top:24px;font-size:24px;line-height:32px}.vp-doc h3{letter-spacing:-.01em;margin:32px 0 0;font-size:20px;line-height:28px}.vp-doc h4{letter-spacing:-.01em;margin:24px 0 0;font-size:18px;line-height:24px}.vp-doc .header-anchor{-webkit-user-select:none;user-select:none;opacity:0;margin-left:-.87em;font-weight:500;text-decoration:none;transition:color .25s,opacity .25s;position:absolute;top:0;left:0}.vp-doc .header-anchor:before{content:var(--vp-header-anchor-symbol)}.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 (width>=768px){.vp-doc h1{letter-spacing:-.02em;font-size:32px;line-height:40px}}.vp-doc h2 .header-anchor{top:24px}.vp-doc p,.vp-doc img,.vp-doc summary{margin:16px 0}.vp-doc p{line-height:28px}.vp-doc blockquote{border-left:2px solid var(--vp-c-divider);color:var(--vp-c-text-2);margin:16px 0;padding-left:16px;transition:border-color .5s}.vp-doc blockquote>p{margin:0;font-size:16px;transition:color .5s}.vp-doc a{color:var(--vp-c-brand-1);text-underline-offset:2px;font-weight:500;text-decoration:underline;transition:color .25s,opacity .25s}.vp-doc a:hover{color:var(--vp-c-brand-2)}.vp-doc strong{font-weight:600}.vp-doc ul,.vp-doc ol{margin:16px 0;padding-left:1.25rem}.vp-doc ul{list-style:outside}.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{border-collapse:collapse;margin:20px 0;display:block;overflow-x:auto}.vp-doc tr{background-color:var(--vp-c-bg);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;color:var(--vp-c-text-2);background-color:var(--vp-c-bg-soft);font-size:14px;font-weight:600}.vp-doc td{font-size:14px}.vp-doc hr{border:none;border-top:1px solid var(--vp-c-divider);margin:16px 0}.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 div[class*=language-]{border-radius:8px;margin:8px 0!important}.vp-doc .custom-block div[class*=language-] code{background-color:#0000;font-weight:400}.vp-doc .custom-block .vp-code-group,.vp-doc .custom-block [class*=vp-code-block]{margin-top:8px}.vp-doc .custom-block .vp-code-group .tabs{border-radius:8px 8px 0 0;margin:0}.vp-doc .custom-block .vp-code-group div[class*=language-],.vp-doc .custom-block [class*=vp-code-block] div[class*=language-]{margin-top:0!important}.vp-doc :not(pre,h1,h2,h3,h4,h5,h6)>code{font-size:var(--vp-code-font-size);color:var(--vp-code-color)}.vp-doc :not(pre)>code{background-color:var(--vp-code-bg);border-radius:4px;padding:3px 6px;transition:color .25s,background-color .5s}.vp-doc a>code{color:var(--vp-code-link-color)}.vp-doc a:hover>code{color:var(--vp-code-link-hover-color)}.vp-doc h1>code,.vp-doc h2>code,.vp-doc h3>code,.vp-doc h4>code{font-size:.9em}.vp-doc div[class*=language-],.vp-block{background-color:var(--vp-code-block-bg);margin:16px -24px;transition:background-color .5s;position:relative;overflow-x:auto}@media (width>=640px){.vp-doc div[class*=language-],.vp-block{border-radius:8px;margin:16px 0}}@media (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{tab-size:4}.vp-doc [class*=language-] pre{z-index:1;text-align:left;background:0 0;margin:0;padding:20px 0;position:relative;overflow-x:auto}.vp-doc [class*=language-] code{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);padding:0 24px;transition:color .5s;display:block}.vp-doc [class*=language-] code .highlighted{background-color:var(--vp-code-line-highlight-color);width:calc(100% + 48px);margin:0 -24px;padding:0 24px;transition:background-color .5s;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{width:calc(100% + 48px);margin:0 -24px;padding:0 24px;transition:background-color .5s;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;opacity:.7;transition:filter .35s,opacity .35s}.vp-doc [class*=language-]:hover .has-focused-lines .line:not(.has-focus){filter:blur();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{z-index:3;border-right:1px solid var(--vp-code-block-divider-color);text-align:center;width:32px;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);padding-top:20px;transition:border-color .5s,color .5s;position:absolute;top:0;bottom:0;left:0}.vp-doc [class*=language-]>button.copy{z-index:3;border:1px solid var(--vp-code-copy-code-border-color);background-color:var(--vp-code-copy-code-bg);opacity:0;cursor:pointer;background-image:var(--vp-icon-copy);direction:ltr;background-position:50%;background-repeat:no-repeat;background-size:20px;border-radius:4px;width:40px;height:40px;transition:border-color .25s,background-color .25s,opacity .25s;position:absolute;top:12px;right:12px}.vp-doc [class*=language-]:hover>button.copy,.vp-doc [class*=language-]>button.copy:focus{opacity:1}.vp-doc [class*=language-]>button.copy:hover,.vp-doc [class*=language-]>button.copy.copied{border-color:var(--vp-code-copy-code-hover-border-color);background-color:var(--vp-code-copy-code-hover-bg)}.vp-doc [class*=language-]>button.copy.copied,.vp-doc [class*=language-]>button.copy:hover.copied{background-color:var(--vp-code-copy-code-hover-bg);background-image:var(--vp-icon-copied);border-radius:0 4px 4px 0}.vp-doc [class*=language-]>button.copy.copied:before,.vp-doc [class*=language-]>button.copy:hover.copied:before{border:1px solid var(--vp-code-copy-code-hover-border-color);text-align:center;width:fit-content;height:40px;color:var(--vp-code-copy-code-active-text);background-color:var(--vp-code-copy-code-hover-bg);white-space:nowrap;content:var(--vp-code-copy-copied-text-content);border-right:0;border-radius:4px 0 0 4px;justify-content:center;align-items:center;padding:0 10px;font-size:12px;font-weight:500;display:flex;position:relative;top:-1px;transform:translate(calc(-100% - 1px))}.vp-doc [class*=language-]>span.lang{z-index:2;-webkit-user-select:none;user-select:none;color:var(--vp-code-lang-color);font-size:12px;font-weight:500;transition:color .4s,opacity .4s;position:absolute;top:2px;right:8px}.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{max-width:calc(50% - 12px)!important;margin:0!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{max-width:calc(50% - 12px)!important;margin:0!important}:is(.vp-external-link-icon,.vp-doc a[href*="://"],.vp-doc a[target=_blank]):not(:is(.no-icon,svg a,:has(img,svg))):after{width:11px;height:11px;color:var(--vp-c-text-3);--icon:url("data:image/svg+xml, %3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' %3E%3Cpath d='M0 0h24v24H0V0z' fill='none' /%3E%3Cpath d='M9 5v2h6.59L4 18.59 5.41 20 17 8.41V15h2V5H9z' /%3E%3C/svg%3E");-webkit-mask-image:var(--icon);-webkit-mask-image:var(--icon);mask-image:var(--icon);background:currentColor;flex-shrink:0;margin-top:-1px;margin-left:4px;display:inline-block}.vp-external-link-icon:after{content:""}.external-link-icon-enabled :is(.vp-doc a[href*="://"],.vp-doc a[target=_blank]):not(:is(.no-icon,svg a,:has(img,svg))):after{content:"";color:currentColor}.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{text-align:center;width:100%;color:var(--vp-c-text-2);background-color:var(--vp-c-bg-soft);font-weight:600;line-height:24px;letter-spacing:1px!important;margin:0 0 4px!important}.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{flex-wrap:wrap;gap:4px;display:flex}.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(50% - 2px)}.vp-sponsor-grid[data-vp-grid="3"] .vp-sponsor-grid-item{width:calc(33.3333% - 2.66667px)}.vp-sponsor-grid[data-vp-grid="4"] .vp-sponsor-grid-item{width:calc(25% - 3px)}.vp-sponsor-grid[data-vp-grid="5"] .vp-sponsor-grid-item{width:calc(20% - 3.2px)}.vp-sponsor-grid[data-vp-grid="6"] .vp-sponsor-grid-item{width:calc(16.6667% - 3.33333px)}.vp-sponsor-grid-item{background-color:var(--vp-c-bg-soft);flex-shrink:0;width:100%;transition:background-color .25s}.vp-sponsor-grid-item:hover{background-color:var(--vp-c-default-soft)}.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{justify-content:center;align-items:center;width:100%;display:flex}.vp-sponsor-grid-image{filter:grayscale();max-width:100%;transition:filter .25s}.dark .vp-sponsor-grid-image{filter:grayscale()invert()}.VPBadge{white-space:nowrap;border:1px solid #0000;border-radius:12px;margin-left:2px;padding:0 10px;font-size:12px;font-weight:500;line-height:22px;display:inline-block;transform:translateY(-2px)}.VPBadge.small{padding:0 6px;font-size:10px;line-height:18px;transform:translateY(-8px)}.VPDocFooter .VPBadge{display:none}.vp-doc h1>.VPBadge,.vp-doc h2>.VPBadge{vertical-align:middle;margin:0 0 0 2px}.vp-doc h2>.VPBadge{padding:0 8px}.vp-doc h3>.VPBadge{vertical-align:middle}.vp-doc h4>.VPBadge,.vp-doc h5>.VPBadge,.vp-doc h6>.VPBadge{vertical-align:middle;line-height:18px}.VPBadge.info{border-color:var(--vp-badge-info-border);color:var(--vp-badge-info-text);background-color:var(--vp-badge-info-bg)}.VPBadge.tip{border-color:var(--vp-badge-tip-border);color:var(--vp-badge-tip-text);background-color:var(--vp-badge-tip-bg)}.VPBadge.warning{border-color:var(--vp-badge-warning-border);color:var(--vp-badge-warning-text);background-color:var(--vp-badge-warning-bg)}.VPBadge.danger{border-color:var(--vp-badge-danger-border);color:var(--vp-badge-danger-text);background-color:var(--vp-badge-danger-bg)}.VPBackdrop[data-v-aa5dbc72]{z-index:var(--vp-z-index-backdrop);background:var(--vp-backdrop-bg-color);transition:opacity .5s;position:fixed;inset:0}.VPBackdrop.fade-enter-from[data-v-aa5dbc72],.VPBackdrop.fade-leave-to[data-v-aa5dbc72]{opacity:0}.VPBackdrop.fade-leave-active[data-v-aa5dbc72]{transition-duration:.25s}@media (width>=1280px){.VPBackdrop[data-v-aa5dbc72]{display:none}}.NotFound[data-v-e6c6056f]{text-align:center;padding:64px 24px 96px}@media (width>=768px){.NotFound[data-v-e6c6056f]{padding:96px 32px 168px}}.code[data-v-e6c6056f]{font-size:64px;font-weight:600;line-height:64px}.title[data-v-e6c6056f]{letter-spacing:2px;padding-top:12px;font-size:20px;font-weight:700;line-height:20px}.divider[data-v-e6c6056f]{background-color:var(--vp-c-divider);width:64px;height:1px;margin:24px auto 18px}.quote[data-v-e6c6056f]{max-width:256px;color:var(--vp-c-text-2);margin:0 auto;font-size:14px;font-weight:500}.action[data-v-e6c6056f]{padding-top:20px}.link[data-v-e6c6056f]{border:1px solid var(--vp-c-brand-1);color:var(--vp-c-brand-1);border-radius:16px;padding:3px 16px;font-size:14px;font-weight:500;transition:border-color .25s,color .25s;display:inline-block}.link[data-v-e6c6056f]:hover{border-color:var(--vp-c-brand-2);color:var(--vp-c-brand-2)}.root[data-v-743b425d]{z-index:1;position:relative}.nested[data-v-743b425d]{padding-left:16px;padding-right:16px}.outline-link[data-v-743b425d]{color:var(--vp-c-text-2);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:400;line-height:32px;transition:color .5s;display:block;overflow:hidden}.outline-link[data-v-743b425d]:hover,.outline-link.active[data-v-743b425d]{color:var(--vp-c-text-1);transition:color .25s}.outline-link.nested[data-v-743b425d]{padding-left:13px}.VPDocAsideOutline[data-v-83f31044]{display:none}.VPDocAsideOutline.has-outline[data-v-83f31044]{display:block}.content[data-v-83f31044]{border-left:1px solid var(--vp-c-divider);padding-left:16px;font-size:13px;font-weight:500;position:relative}.outline-marker[data-v-83f31044]{z-index:0;opacity:0;background-color:var(--vp-c-brand-1);border-radius:2px;width:2px;height:18px;transition:top .25s cubic-bezier(0,1,.5,1),background-color .5s,opacity .25s;position:absolute;top:32px;left:-1px}.outline-title[data-v-83f31044]{font-size:14px;font-weight:600;line-height:32px}.VPDocAside[data-v-a1e3c7aa]{flex-direction:column;flex-grow:1;display:flex}.spacer[data-v-a1e3c7aa]{flex-grow:1}.VPDocAside[data-v-a1e3c7aa] .spacer+.VPDocAsideSponsors,.VPDocAside[data-v-a1e3c7aa] .spacer+.VPDocAsideCarbonAds{margin-top:24px}.VPDocAside[data-v-a1e3c7aa] .VPDocAsideSponsors+.VPDocAsideCarbonAds{margin-top:16px}.VPLastUpdated[data-v-0bfff0af]{color:var(--vp-c-text-2);font-size:14px;font-weight:500;line-height:24px}@media (width>=640px){.VPLastUpdated[data-v-0bfff0af]{font-size:14px;font-weight:500;line-height:32px}}.VPDocFooter[data-v-b305492c]{margin-top:64px}.edit-info[data-v-b305492c]{padding-bottom:18px}@media (width>=640px){.edit-info[data-v-b305492c]{justify-content:space-between;align-items:center;padding-bottom:14px;display:flex}}.edit-link-button[data-v-b305492c]{color:var(--vp-c-brand-1);border:0;align-items:center;font-size:14px;font-weight:500;line-height:32px;transition:color .25s;display:flex}.edit-link-button[data-v-b305492c]:hover{color:var(--vp-c-brand-2)}.edit-link-icon[data-v-b305492c]{margin-right:8px}.prev-next[data-v-b305492c]{border-top:1px solid var(--vp-c-divider);grid-row-gap:8px;padding-top:24px;display:grid}@media (width>=640px){.prev-next[data-v-b305492c]{grid-column-gap:16px;grid-template-columns:repeat(2,1fr)}}.pager-link[data-v-b305492c]{border:1px solid var(--vp-c-divider);border-radius:8px;width:100%;height:100%;padding:11px 16px 13px;transition:border-color .25s;display:block}.pager-link[data-v-b305492c]:hover{border-color:var(--vp-c-brand-1)}.pager-link.next[data-v-b305492c]{text-align:right;margin-left:auto}.desc[data-v-b305492c]{color:var(--vp-c-text-2);font-size:12px;font-weight:500;line-height:20px;display:block}.title[data-v-b305492c]{color:var(--vp-c-brand-1);font-size:14px;font-weight:500;line-height:20px;transition:color .25s;display:block}.VPDoc[data-v-25139527]{width:100%;padding:32px 24px 96px}@media (width>=768px){.VPDoc[data-v-25139527]{padding:48px 32px 128px}}@media (width>=960px){.VPDoc[data-v-25139527]{padding:48px 32px 0}.VPDoc:not(.has-sidebar) .container[data-v-25139527]{justify-content:center;max-width:992px;display:flex}.VPDoc:not(.has-sidebar) .content[data-v-25139527]{max-width:752px}}@media (width>=1280px){.VPDoc .container[data-v-25139527]{justify-content:center;display:flex}.VPDoc .aside[data-v-25139527]{display:block}}@media (width>=1440px){.VPDoc:not(.has-sidebar) .content[data-v-25139527]{max-width:784px}.VPDoc:not(.has-sidebar) .container[data-v-25139527]{max-width:1104px}}.container[data-v-25139527]{width:100%;margin:0 auto}.aside[data-v-25139527]{flex-grow:1;order:2;width:100%;max-width:256px;padding-left:32px;display:none;position:relative}.left-aside[data-v-25139527]{padding-left:unset;order:1;padding-right:32px}.aside-container[data-v-25139527]{padding-top:calc(var(--vp-nav-height) + var(--vp-layout-top-height,0px) + var(--vp-doc-top-height,0px) + 48px);scrollbar-width:none;width:224px;height:100vh;position:fixed;top:0;overflow:hidden auto}.aside-container[data-v-25139527]::-webkit-scrollbar{display:none}.aside-curtain[data-v-25139527]{z-index:10;background:linear-gradient(transparent, var(--vp-c-bg) 70%);pointer-events:none;width:224px;height:32px;position:fixed;bottom:0}.aside-content[data-v-25139527]{min-height:calc(100vh - (var(--vp-nav-height) + var(--vp-layout-top-height,0px) + 48px));flex-direction:column;padding-bottom:32px;display:flex}.content[data-v-25139527]{width:100%;margin:0 auto;position:relative}@media (width>=960px){.content[data-v-25139527]{padding:0 32px 128px}}@media (width>=1280px){.content[data-v-25139527]{order:1;min-width:640px;margin:0}}.content-container[data-v-25139527]{margin:0 auto}.VPDoc.has-aside .content-container[data-v-25139527]{max-width:688px}.VPButton[data-v-7b5c7ce2]{text-align:center;white-space:nowrap;border:1px solid #0000;font-weight:600;transition:color .25s,border-color .25s,background-color .25s;display:inline-block}.VPButton[data-v-7b5c7ce2]:active{transition:color .1s,border-color .1s,background-color .1s}.VPButton.medium[data-v-7b5c7ce2]{border-radius:20px;padding:0 20px;font-size:14px;line-height:38px}.VPButton.big[data-v-7b5c7ce2]{border-radius:24px;padding:0 24px;font-size:16px;line-height:46px}.VPButton.brand[data-v-7b5c7ce2]{border-color:var(--vp-button-brand-border);color:var(--vp-button-brand-text);background-color:var(--vp-button-brand-bg)}.VPButton.brand[data-v-7b5c7ce2]: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-7b5c7ce2]: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-7b5c7ce2]{border-color:var(--vp-button-alt-border);color:var(--vp-button-alt-text);background-color:var(--vp-button-alt-bg)}.VPButton.alt[data-v-7b5c7ce2]: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-7b5c7ce2]: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-7b5c7ce2]{border-color:var(--vp-button-sponsor-border);color:var(--vp-button-sponsor-text);background-color:var(--vp-button-sponsor-bg)}.VPButton.sponsor[data-v-7b5c7ce2]: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-7b5c7ce2]:active{border-color:var(--vp-button-sponsor-active-border);color:var(--vp-button-sponsor-active-text);background-color:var(--vp-button-sponsor-active-bg)}html:not(.dark) .VPImage.dark[data-v-8370ae73],.dark .VPImage.light[data-v-8370ae73]{display:none}.VPHero[data-v-fe0c3330]{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 (width>=640px){.VPHero[data-v-fe0c3330]{padding:calc(var(--vp-nav-height) + var(--vp-layout-top-height,0px) + 80px) 48px 64px}}@media (width>=960px){.VPHero[data-v-fe0c3330]{padding:calc(var(--vp-nav-height) + var(--vp-layout-top-height,0px) + 80px) 64px 64px}}.container[data-v-fe0c3330]{flex-direction:column;max-width:1152px;margin:0 auto;display:flex}@media (width>=960px){.container[data-v-fe0c3330]{flex-direction:row}}.main[data-v-fe0c3330]{z-index:10;flex-grow:1;flex-shrink:0;order:2;position:relative}.VPHero.has-image .container[data-v-fe0c3330]{text-align:center}@media (width>=960px){.VPHero.has-image .container[data-v-fe0c3330]{text-align:left}.main[data-v-fe0c3330]{order:1;width:66.6667%}.VPHero.has-image .main[data-v-fe0c3330]{max-width:592px}}.heading[data-v-fe0c3330]{flex-direction:column;display:flex}:is(.name,.text)[data-v-fe0c3330]{letter-spacing:-.4px;white-space:pre-wrap;width:fit-content;max-width:392px;font-size:32px;font-weight:700;line-height:40px}:is(.name,.text)[data-v-fe0c3330]:lang(ja){font-feature-settings:"palt";word-break:auto-phrase}.VPHero.has-image .name[data-v-fe0c3330],.VPHero.has-image .text[data-v-fe0c3330]{margin:0 auto}.name[data-v-fe0c3330]{color:var(--vp-home-hero-name-color)}.clip[data-v-fe0c3330]{background:var(--vp-home-hero-name-background);-webkit-text-fill-color:var(--vp-home-hero-name-color);-webkit-background-clip:text;background-clip:text}@media (width>=640px){.name[data-v-fe0c3330],.text[data-v-fe0c3330]{max-width:576px;font-size:48px;line-height:56px}}@media (width>=960px){.name[data-v-fe0c3330],.text[data-v-fe0c3330]{font-size:56px;line-height:64px}.VPHero.has-image .name[data-v-fe0c3330],.VPHero.has-image .text[data-v-fe0c3330]{margin:0}}.tagline[data-v-fe0c3330]{white-space:pre-wrap;max-width:392px;color:var(--vp-c-text-2);padding-top:8px;font-size:18px;font-weight:500;line-height:28px}.VPHero.has-image .tagline[data-v-fe0c3330]{margin:0 auto}@media (width>=640px){.tagline[data-v-fe0c3330]{max-width:576px;padding-top:12px;font-size:20px;line-height:32px}}@media (width>=960px){.tagline[data-v-fe0c3330]{font-size:24px;line-height:36px}.VPHero.has-image .tagline[data-v-fe0c3330]{margin:0}}.actions[data-v-fe0c3330]{flex-wrap:wrap;margin:-6px;padding-top:24px;display:flex}.VPHero.has-image .actions[data-v-fe0c3330]{justify-content:center}@media (width>=640px){.actions[data-v-fe0c3330]{padding-top:32px}}@media (width>=960px){.VPHero.has-image .actions[data-v-fe0c3330]{justify-content:flex-start}}.action[data-v-fe0c3330]{flex-shrink:0;padding:6px}.image[data-v-fe0c3330]{order:1;margin:-76px -24px -48px}@media (width>=640px){.image[data-v-fe0c3330]{margin:-108px -24px -48px}}@media (width>=960px){.image[data-v-fe0c3330]{flex-grow:1;order:2;min-height:100%;margin:0}}.image-container[data-v-fe0c3330]{width:320px;height:320px;margin:0 auto;position:relative}@media (width>=640px){.image-container[data-v-fe0c3330]{width:392px;height:392px}}@media (width>=960px){.image-container[data-v-fe0c3330]{justify-content:center;align-items:center;width:100%;height:100%;display:flex;transform:translate(-32px,-32px)}}.image-bg[data-v-fe0c3330]{background-image:var(--vp-home-hero-image-background-image);width:192px;height:192px;filter:var(--vp-home-hero-image-filter);border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@media (width>=640px){.image-bg[data-v-fe0c3330]{width:256px;height:256px}}@media (width>=960px){.image-bg[data-v-fe0c3330]{width:320px;height:320px}}[data-v-fe0c3330] .image-src{object-fit:contain;width:100%;max-width:192px;height:100%;max-height:192px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@media (width>=640px){[data-v-fe0c3330] .image-src{max-width:256px;max-height:256px}}@media (width>=960px){[data-v-fe0c3330] .image-src{max-width:320px;max-height:320px}}.VPFeature[data-v-9a25e063]{border:1px solid var(--vp-c-bg-soft);background-color:var(--vp-c-bg-soft);border-radius:12px;height:100%;transition:border-color .25s,background-color .25s;display:block}.VPFeature.link[data-v-9a25e063]:hover{border-color:var(--vp-c-brand-1)}.box[data-v-9a25e063]{flex-direction:column;height:100%;padding:24px;display:flex}.box[data-v-9a25e063]>.VPImage{margin-bottom:20px}.icon[data-v-9a25e063]{background-color:var(--vp-c-default-soft);border-radius:6px;justify-content:center;align-items:center;width:48px;height:48px;margin-bottom:20px;font-size:24px;transition:background-color .25s;display:flex}.title[data-v-9a25e063]{font-size:16px;font-weight:600;line-height:24px}.details[data-v-9a25e063]{color:var(--vp-c-text-2);flex-grow:1;padding-top:8px;font-size:14px;font-weight:500;line-height:24px}ul.details[data-v-9a25e063]{padding-left:14px;list-style-type:disc}.link-text[data-v-9a25e063]{padding-top:8px}.link-text-value[data-v-9a25e063]{color:var(--vp-c-brand-1);align-items:center;font-size:14px;font-weight:500;display:flex}.link-text-icon[data-v-9a25e063]{margin-left:6px}.VPFeatures[data-v-ab249509]{padding:0 24px;position:relative}@media (width>=640px){.VPFeatures[data-v-ab249509]{padding:0 48px}}@media (width>=960px){.VPFeatures[data-v-ab249509]{padding:0 64px}}.container[data-v-ab249509]{max-width:1152px;margin:0 auto}.items[data-v-ab249509]{flex-wrap:wrap;margin:-8px;display:flex}.item[data-v-ab249509]{width:100%;padding:8px}@media (width>=640px){.item.grid-2[data-v-ab249509],.item.grid-4[data-v-ab249509],.item.grid-6[data-v-ab249509]{width:50%}}@media (width>=768px){.item.grid-2[data-v-ab249509],.item.grid-4[data-v-ab249509]{width:50%}.item.grid-3[data-v-ab249509],.item.grid-6[data-v-ab249509]{width:33.3333%}}@media (width>=960px){.item.grid-4[data-v-ab249509]{width:25%}}.container[data-v-aac3a1ab]{width:100%;max-width:1280px;margin:auto;padding:0 24px}@media (width>=640px){.container[data-v-aac3a1ab]{padding:0 48px}}@media (width>=960px){.container[data-v-aac3a1ab]{width:100%;padding:0 64px}}.vp-doc[data-v-aac3a1ab] .VPHomeSponsors,.vp-doc[data-v-aac3a1ab] .VPTeamPage{margin-left:var(--vp-offset,calc(50% - 50vw));margin-right:var(--vp-offset,calc(50% - 50vw))}.vp-doc[data-v-aac3a1ab] .VPHomeSponsors h2{letter-spacing:normal;border-top:none}.vp-doc[data-v-aac3a1ab] .VPHomeSponsors a,.vp-doc[data-v-aac3a1ab] .VPTeamPage a{text-decoration:none}.VPHome[data-v-2f0b78a8]{margin-bottom:96px}@media (width>=768px){.VPHome[data-v-2f0b78a8]{margin-bottom:128px}}.VPContent[data-v-eb9c3b1c]{margin:var(--vp-layout-top-height,0px) auto 0;flex-grow:1;flex-shrink:0;width:100%}.VPContent.is-home[data-v-eb9c3b1c]{width:100%;max-width:100%}.VPContent.has-sidebar[data-v-eb9c3b1c]{margin:0}@media (width>=960px){.VPContent[data-v-eb9c3b1c]{padding-top:var(--vp-nav-height)}.VPContent.has-sidebar[data-v-eb9c3b1c]{margin:var(--vp-layout-top-height,0px) 0 0;padding-left:var(--vp-sidebar-width)}}@media (width>=1440px){.VPContent.has-sidebar[data-v-eb9c3b1c]{padding-right:calc((100% - var(--vp-layout-max-width)) / 2);padding-left:calc((100% - var(--vp-layout-max-width)) / 2 + var(--vp-sidebar-width))}}.VPFooter[data-v-b6f8b528]{z-index:var(--vp-z-index-footer);border-top:1px solid var(--vp-c-gutter);background-color:var(--vp-c-bg);padding:32px 24px;position:relative}.VPFooter.has-sidebar[data-v-b6f8b528]{display:none}.VPFooter[data-v-b6f8b528] a{text-underline-offset:2px;text-decoration-line:underline;transition:color .25s}.VPFooter[data-v-b6f8b528] a:hover{color:var(--vp-c-text-1)}@media (width>=768px){.VPFooter[data-v-b6f8b528]{padding:32px}}.container[data-v-b6f8b528]{max-width:var(--vp-layout-max-width);text-align:center;margin:0 auto}.message[data-v-b6f8b528],.copyright[data-v-b6f8b528]{color:var(--vp-c-text-2);font-size:14px;font-weight:500;line-height:24px}.VPLocalNavOutlineDropdown button[data-v-58f09d41]{color:var(--vp-c-text-2);font-size:12px;font-weight:500;line-height:24px;transition:color .5s;display:block;position:relative}.VPLocalNavOutlineDropdown button[data-v-58f09d41]:hover{color:var(--vp-c-text-1);transition:color .25s}.VPLocalNavOutlineDropdown button.open[data-v-58f09d41]{color:var(--vp-c-text-1)}.icon[data-v-58f09d41]{vertical-align:middle;margin-left:2px;font-size:14px;transition:transform .25s;display:inline-block;transform:rotate(0)}@media (width>=960px){.VPLocalNavOutlineDropdown button[data-v-58f09d41]{font-size:14px}.icon[data-v-58f09d41]{font-size:16px}}.open>.icon[data-v-58f09d41]{transform:rotate(90deg)}.items[data-v-58f09d41]{border:1px solid var(--vp-c-border);background-color:var(--vp-c-gutter);max-height:calc(var(--vp-vh,100vh) - 86px);box-shadow:var(--vp-shadow-3);border-radius:8px;gap:1px;display:grid;position:absolute;top:40px;left:16px;right:16px;overflow:hidden auto}@media (width>=960px){.items[data-v-58f09d41]{right:auto;left:calc(var(--vp-sidebar-width) + 32px);width:320px}}.header[data-v-58f09d41]{background-color:var(--vp-c-bg-soft)}.top-link[data-v-58f09d41]{color:var(--vp-c-brand-1);padding:0 16px;font-size:14px;font-weight:500;line-height:48px;display:block}.outline[data-v-58f09d41]{background-color:var(--vp-c-bg-soft);padding:8px 0}.flyout-enter-active[data-v-58f09d41]{transition:all .2s ease-out}.flyout-leave-active[data-v-58f09d41]{transition:all .15s ease-in}.flyout-enter-from[data-v-58f09d41],.flyout-leave-to[data-v-58f09d41]{opacity:0;transform:translateY(-16px)}.VPLocalNav[data-v-6de7a4e5]{z-index:var(--vp-z-index-local-nav);border-bottom:1px solid var(--vp-c-gutter);padding-top:var(--vp-layout-top-height,0px);background-color:var(--vp-local-nav-bg-color);width:100%;position:sticky;top:0;left:0}.VPLocalNav.fixed[data-v-6de7a4e5]{position:fixed}@media (width>=960px){.VPLocalNav[data-v-6de7a4e5]{top:var(--vp-nav-height)}.VPLocalNav.has-sidebar[data-v-6de7a4e5]{padding-left:var(--vp-sidebar-width)}.VPLocalNav.empty[data-v-6de7a4e5]{display:none}}@media (width>=1280px){.VPLocalNav[data-v-6de7a4e5]{display:none}}.container[data-v-6de7a4e5]{justify-content:space-between;align-items:center;display:flex}.menu[data-v-6de7a4e5]{color:var(--vp-c-text-2);align-items:center;font-size:12px;font-weight:500;line-height:24px;transition:color .5s;display:flex}.menu[data-v-6de7a4e5]:hover{color:var(--vp-c-text-1);transition:color .25s}@media (width>=960px){.menu[data-v-6de7a4e5]{display:none}}.menu-icon[data-v-6de7a4e5]{margin-right:8px;font-size:14px}.menu[data-v-6de7a4e5],[data-v-6de7a4e5] .VPLocalNavOutlineDropdown>button{padding:12px 24px 11px}@media (width>=768px){.menu[data-v-6de7a4e5],[data-v-6de7a4e5] .VPLocalNavOutlineDropdown>button{padding:12px 32px 11px}}.VPSwitch[data-v-34579654]{border:1px solid var(--vp-input-border-color);background-color:var(--vp-input-switch-bg-color);border-radius:11px;flex-shrink:0;width:40px;height:22px;display:block;position:relative;transition:border-color .25s!important}.VPSwitch[data-v-34579654]:hover{border-color:var(--vp-c-brand-1)}.check[data-v-34579654]{background-color:var(--vp-c-neutral-inverse);width:18px;height:18px;box-shadow:var(--vp-shadow-1);border-radius:50%;position:absolute;top:1px;left:1px;transition:transform .25s!important}.icon[data-v-34579654]{border-radius:50%;width:18px;height:18px;display:block;position:relative;overflow:hidden}.icon[data-v-34579654] [class^=vpi-]{width:12px;height:12px;color:var(--vp-c-text-2);position:absolute;top:3px;left:3px}.dark .icon[data-v-34579654] [class^=vpi-]{color:var(--vp-c-text-1);transition:opacity .25s!important}.sun[data-v-eaf40456]{opacity:1}.moon[data-v-eaf40456],.dark .sun[data-v-eaf40456]{opacity:0}.dark .moon[data-v-eaf40456]{opacity:1}.dark .VPSwitchAppearance[data-v-eaf40456] .check{transform:translate(18px)}.VPNavBarAppearance[data-v-d9af89f2]{display:none}@media (width>=1280px){.VPNavBarAppearance[data-v-d9af89f2]{align-items:center;display:flex}}.VPMenuGroup+.VPMenuLink[data-v-d7fed7fd]{border-top:1px solid var(--vp-c-divider);margin:12px -12px 0;padding:12px 12px 0}.link[data-v-d7fed7fd]{color:var(--vp-c-text-1);text-align:left;white-space:nowrap;border-radius:6px;padding:0 12px;font-size:14px;font-weight:500;line-height:32px;transition:background-color .25s,color .25s;display:block}.link[data-v-d7fed7fd]:hover{color:var(--vp-c-brand-1);background-color:var(--vp-c-default-soft)}.link.active[data-v-d7fed7fd]{color:var(--vp-c-brand-1)}.VPMenuGroup[data-v-fde35d17]{border-top:1px solid var(--vp-c-divider);margin:12px -12px 0;padding:12px 12px 0}.VPMenuGroup[data-v-fde35d17]:first-child{border-top:0;margin-top:0;padding-top:0}.VPMenuGroup+.VPMenuGroup[data-v-fde35d17]{border-top:1px solid var(--vp-c-divider);margin-top:12px}.title[data-v-fde35d17]{color:var(--vp-c-text-2);white-space:nowrap;padding:0 12px;font-size:14px;font-weight:600;line-height:32px;transition:color .25s}.VPMenu[data-v-d15c99c7]{border:1px solid var(--vp-c-divider);background-color:var(--vp-c-bg-elv);min-width:128px;box-shadow:var(--vp-shadow-3);max-height:calc(100vh - var(--vp-nav-height));border-radius:12px;padding:12px;transition:background-color .5s;overflow-y:auto}.VPMenu[data-v-d15c99c7] .group{margin:0 -12px;padding:0 12px 12px}.VPMenu[data-v-d15c99c7] .group+.group{border-top:1px solid var(--vp-c-divider);padding:11px 12px 12px}.VPMenu[data-v-d15c99c7] .group:last-child{padding-bottom:0}.VPMenu[data-v-d15c99c7] .group+.item{border-top:1px solid var(--vp-c-divider);padding:11px 16px 0}.VPMenu[data-v-d15c99c7] .item{white-space:nowrap;padding:0 16px}.VPMenu[data-v-d15c99c7] .label{color:var(--vp-c-text-2);flex-grow:1;font-size:12px;font-weight:500;line-height:28px;transition:color .5s}.VPMenu[data-v-d15c99c7] .action{padding-left:24px}.VPFlyout[data-v-24aba813]{position:relative}.VPFlyout[data-v-24aba813]:hover{color:var(--vp-c-brand-1);transition:color .25s}.VPFlyout:hover .text[data-v-24aba813]{color:var(--vp-c-text-2)}.VPFlyout:hover .icon[data-v-24aba813]{fill:var(--vp-c-text-2)}.VPFlyout.active .text[data-v-24aba813]{color:var(--vp-c-brand-1)}.VPFlyout.active:hover .text[data-v-24aba813]{color:var(--vp-c-brand-2)}.button[aria-expanded=false]+.menu[data-v-24aba813]{opacity:0;visibility:hidden;transform:translateY(0)}.VPFlyout:hover .menu[data-v-24aba813],.button[aria-expanded=true]+.menu[data-v-24aba813]{opacity:1;visibility:visible;transform:translateY(0)}.button[data-v-24aba813]{height:var(--vp-nav-height);color:var(--vp-c-text-1);align-items:center;padding:0 12px;transition:color .5s;display:flex}.text[data-v-24aba813]{line-height:var(--vp-nav-height);color:var(--vp-c-text-1);align-items:center;font-size:14px;font-weight:500;transition:color .25s;display:flex}.option-icon[data-v-24aba813]{margin-right:0;font-size:16px}.text-icon[data-v-24aba813]{margin-left:4px;font-size:14px}.icon[data-v-24aba813]{font-size:20px;transition:fill .25s}.menu[data-v-24aba813]{top:calc(var(--vp-nav-height) / 2 + 20px);opacity:0;visibility:hidden;transition:opacity .25s,visibility .25s,transform .25s;position:absolute;right:0}.VPSocialLink[data-v-07c5a2d3]{width:36px;height:36px;color:var(--vp-c-text-2);justify-content:center;align-items:center;transition:color .5s;display:flex}.VPSocialLink[data-v-07c5a2d3]:hover{color:var(--vp-c-text-1);transition:color .25s}.VPSocialLink[data-v-07c5a2d3]>svg,.VPSocialLink[data-v-07c5a2d3]>[class^=vpi-social-]{fill:currentColor;width:20px;height:20px}.VPSocialLinks[data-v-0b8ecdc3]{justify-content:center;display:flex}.VPNavBarExtra[data-v-2ecf8558]{margin-right:-12px;display:none}@media (width>=768px){.VPNavBarExtra[data-v-2ecf8558]{display:block}}@media (width>=1280px){.VPNavBarExtra[data-v-2ecf8558]{display:none}}.trans-title[data-v-2ecf8558]{color:var(--vp-c-text-1);padding:0 24px 0 12px;font-size:14px;font-weight:700;line-height:32px}.item.appearance[data-v-2ecf8558],.item.social-links[data-v-2ecf8558]{align-items:center;padding:0 12px;display:flex}.item.appearance[data-v-2ecf8558]{min-width:176px}.appearance-action[data-v-2ecf8558]{margin-right:-2px}.social-links-list[data-v-2ecf8558]{margin:-4px -8px}.VPNavBarHamburger[data-v-f0e6757c]{width:48px;height:var(--vp-nav-height);justify-content:center;align-items:center;display:flex}@media (width>=768px){.VPNavBarHamburger[data-v-f0e6757c]{display:none}}.container[data-v-f0e6757c]{width:16px;height:14px;position:relative;overflow:hidden}.VPNavBarHamburger:hover .top[data-v-f0e6757c]{top:0;left:0;transform:translate(4px)}.VPNavBarHamburger:hover .middle[data-v-f0e6757c]{top:6px;left:0;transform:translate(0)}.VPNavBarHamburger:hover .bottom[data-v-f0e6757c]{top:12px;left:0;transform:translate(8px)}.VPNavBarHamburger.active .top[data-v-f0e6757c]{top:6px;transform:translate(0)rotate(225deg)}.VPNavBarHamburger.active .middle[data-v-f0e6757c]{top:6px;transform:translate(16px)}.VPNavBarHamburger.active .bottom[data-v-f0e6757c]{top:6px;transform:translate(0)rotate(135deg)}.VPNavBarHamburger.active:hover .top[data-v-f0e6757c],.VPNavBarHamburger.active:hover .middle[data-v-f0e6757c],.VPNavBarHamburger.active:hover .bottom[data-v-f0e6757c]{background-color:var(--vp-c-text-2);transition:top .25s,background-color .25s,transform .25s}.top[data-v-f0e6757c],.middle[data-v-f0e6757c],.bottom[data-v-f0e6757c]{background-color:var(--vp-c-text-1);width:16px;height:2px;transition:top .25s,background-color .5s,transform .25s;position:absolute}.top[data-v-f0e6757c]{top:0;left:0;transform:translate(0)}.middle[data-v-f0e6757c]{top:6px;left:0;transform:translate(8px)}.bottom[data-v-f0e6757c]{top:12px;left:0;transform:translate(4px)}.VPNavBarMenuLink[data-v-d85c368a]{line-height:var(--vp-nav-height);color:var(--vp-c-text-1);align-items:center;padding:0 12px;font-size:14px;font-weight:500;transition:color .25s;display:flex}.VPNavBarMenuLink.active[data-v-d85c368a],.VPNavBarMenuLink[data-v-d85c368a]:hover{color:var(--vp-c-brand-1)}.VPNavBarMenu[data-v-d2cb18bc]{display:none}@media (width>=768px){.VPNavBarMenu[data-v-d2cb18bc]{display:flex}}.VPNavBarAskAiButton[data-v-b4d9a9ec]{height:var(--vp-nav-height);align-items:center;padding:8px 14px;font-size:20px;display:flex}@media (width>=768px){.VPNavBarAskAiButton[data-v-b4d9a9ec]{background-color:var(--vp-c-bg-alt);height:auto;color:var(--vp-c-text-2);border-radius:8px;padding:11.5px;font-size:15px;transition:color .3s}.VPNavBarAskAiButton[data-v-b4d9a9ec]:hover{color:var(--vp-c-brand-1)}}.VPNavBarSearchButton[data-v-823dcbc5]{height:var(--vp-nav-height);align-items:center;gap:8px;padding:8px 14px;font-size:20px;display:flex}.text[data-v-823dcbc5],.keys[data-v-823dcbc5],:root.mac .key-ctrl[data-v-823dcbc5],:root:not(.mac) .key-cmd[data-v-823dcbc5]{display:none}kbd[data-v-823dcbc5]{font-family:inherit;font-weight:500}@media (width>=768px){.VPNavBarSearchButton[data-v-823dcbc5]{background-color:var(--vp-c-bg-alt);height:auto;color:var(--vp-c-text-2);border-radius:8px;padding:8px 12px;font-size:14px;line-height:1}.text[data-v-823dcbc5]{font-size:13px;display:inline}.keys[data-v-823dcbc5]{border:1px solid var(--vp-c-divider);border-radius:4px;align-items:center;gap:4px;padding:4px 6px;font-size:12px;display:flex}}.VPNavBarSearch[data-v-84c279b4]{align-items:center;display:flex}@media (width>=768px){.VPNavBarSearch[data-v-84c279b4]{flex-grow:1;gap:8px;padding-left:24px}}@media (width>=960px){.VPNavBarSearch[data-v-84c279b4]{padding-left:32px}}.VPNavBarSocialLinks[data-v-20d624e4]{display:none}@media (width>=1280px){.VPNavBarSocialLinks[data-v-20d624e4]{align-items:center;display:flex}}.title[data-v-5a001b05]{width:100%;height:var(--vp-nav-height);color:var(--vp-c-text-1);border-bottom:1px solid #0000;align-items:center;font-size:16px;font-weight:600;transition:opacity .25s;display:flex}@media (width>=960px){.title[data-v-5a001b05]{flex-shrink:0}.VPNavBarTitle.has-sidebar .title[data-v-5a001b05]{border-bottom-color:var(--vp-c-divider)}}[data-v-5a001b05] .logo{height:var(--vp-nav-logo-height);margin-right:8px}.VPNavBarTranslations[data-v-19d693bc]{display:none}@media (width>=1280px){.VPNavBarTranslations[data-v-19d693bc]{align-items:center;display:flex}}.title[data-v-19d693bc]{color:var(--vp-c-text-1);padding:0 24px 0 12px;font-size:14px;font-weight:700;line-height:32px}.VPNavBar[data-v-fb5f19bf]{height:var(--vp-nav-height);pointer-events:none;white-space:nowrap;transition:background-color .25s;position:relative}.VPNavBar.screen-open[data-v-fb5f19bf]{background-color:var(--vp-nav-bg-color);border-bottom:1px solid var(--vp-c-divider);transition:none}.VPNavBar[data-v-fb5f19bf]:not(.home){background-color:var(--vp-nav-bg-color)}@media (width>=960px){.VPNavBar[data-v-fb5f19bf]:not(.home){background-color:#0000}.VPNavBar[data-v-fb5f19bf]:not(.has-sidebar):not(.home.top){background-color:var(--vp-nav-bg-color)}}.wrapper[data-v-fb5f19bf]{padding:0 8px 0 24px}@media (width>=768px){.wrapper[data-v-fb5f19bf]{padding:0 32px}}@media (width>=960px){.VPNavBar.has-sidebar .wrapper[data-v-fb5f19bf]{padding:0}}.container[data-v-fb5f19bf]{max-width:calc(var(--vp-layout-max-width) - 64px);height:var(--vp-nav-height);pointer-events:none;justify-content:space-between;margin:0 auto;display:flex}.container>.title[data-v-fb5f19bf],.container>.content[data-v-fb5f19bf]{pointer-events:none}.container[data-v-fb5f19bf] *{pointer-events:auto}@media (width>=960px){.VPNavBar.has-sidebar .container[data-v-fb5f19bf]{max-width:100%}}.title[data-v-fb5f19bf]{height:calc(var(--vp-nav-height) - 1px);flex-shrink:0;transition:background-color .5s}@media (width>=960px){.VPNavBar.has-sidebar .title[data-v-fb5f19bf]{z-index:2;width:var(--vp-sidebar-width);height:var(--vp-nav-height);background-color:#0000;padding:0 32px;position:absolute;top:0;left:0}}@media (width>=1440px){.VPNavBar.has-sidebar .title[data-v-fb5f19bf]{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-fb5f19bf]{flex-grow:1}@media (width>=960px){.VPNavBar.has-sidebar .content[data-v-fb5f19bf]{z-index:1;padding-left:var(--vp-sidebar-width);padding-right:32px;position:relative}}@media (width>=1440px){.VPNavBar.has-sidebar .content[data-v-fb5f19bf]{padding-left:calc((100% - var(--vp-layout-max-width)) / 2 + var(--vp-sidebar-width));padding-right:calc((100% - var(--vp-layout-max-width)) / 2 + 32px)}}.content-body[data-v-fb5f19bf]{height:var(--vp-nav-height);justify-content:flex-end;align-items:center;transition:background-color .5s;display:flex}@media (width>=960px){.VPNavBar:not(.home.top) .content-body[data-v-fb5f19bf]{background-color:var(--vp-nav-bg-color);position:relative}.VPNavBar:not(.has-sidebar):not(.home.top) .content-body[data-v-fb5f19bf]{background-color:#0000}.content-body[data-v-fb5f19bf]{margin-right:-100vw;padding-right:100vw}}.menu+.translations[data-v-fb5f19bf]:before,.menu+.appearance[data-v-fb5f19bf]:before,.menu+.social-links[data-v-fb5f19bf]:before,.translations+.appearance[data-v-fb5f19bf]:before,.appearance+.social-links[data-v-fb5f19bf]:before{background-color:var(--vp-c-divider);content:"";width:1px;height:24px;margin-left:8px;margin-right:8px}.menu+.appearance[data-v-fb5f19bf]:before,.translations+.appearance[data-v-fb5f19bf]:before{margin-right:16px}.appearance+.social-links[data-v-fb5f19bf]:before{margin-left:16px}.social-links[data-v-fb5f19bf]{margin-right:-8px}.divider[data-v-fb5f19bf]{width:100%;height:1px}@media (width>=960px){.VPNavBar.has-sidebar .divider[data-v-fb5f19bf]{padding-left:var(--vp-sidebar-width)}}@media (width>=1440px){.VPNavBar.has-sidebar .divider[data-v-fb5f19bf]{padding-left:calc((100% - var(--vp-layout-max-width)) / 2 + var(--vp-sidebar-width))}}.divider-line[data-v-fb5f19bf]{width:100%;height:1px;transition:background-color .5s}.VPNavBar:not(.home) .divider-line[data-v-fb5f19bf]{background-color:var(--vp-c-gutter)}@media (width>=960px){.VPNavBar:not(.home.top) .divider-line[data-v-fb5f19bf],.VPNavBar:not(.has-sidebar):not(.home.top) .divider[data-v-fb5f19bf]{background-color:var(--vp-c-gutter)}}.VPNavScreenAppearance[data-v-98ff1485]{background-color:var(--vp-c-bg-soft);border-radius:8px;justify-content:space-between;align-items:center;padding:12px 14px 12px 16px;display:flex}.text[data-v-98ff1485]{color:var(--vp-c-text-2);font-size:12px;font-weight:500;line-height:24px}.VPNavScreenMenuLink[data-v-51fec5f6]{border-bottom:1px solid var(--vp-c-divider);color:var(--vp-c-text-1);padding:12px 0 11px;font-size:14px;font-weight:500;line-height:24px;transition:border-color .25s,color .25s;display:block}.VPNavScreenMenuLink[data-v-51fec5f6]:hover,.VPNavScreenMenuLink.active[data-v-51fec5f6]{color:var(--vp-c-brand-1)}.VPNavScreenMenuGroupLink[data-v-2ab8f451]{color:var(--vp-c-text-1);margin-left:12px;font-size:14px;font-weight:400;line-height:32px;transition:color .25s;display:block}.VPNavScreenMenuGroupLink[data-v-2ab8f451]:hover,.VPNavScreenMenuGroupLink.active[data-v-2ab8f451]{color:var(--vp-c-brand-1)}.VPNavScreenMenuGroupSection[data-v-68f5ee18]{display:block}.title[data-v-68f5ee18]{color:var(--vp-c-text-2);font-size:13px;font-weight:700;line-height:32px;transition:color .25s}.VPNavScreenMenuGroup[data-v-8d126ff7]{border-bottom:1px solid var(--vp-c-divider);height:48px;transition:border-color .5s;overflow:hidden}.VPNavScreenMenuGroup .items[data-v-8d126ff7]{visibility:hidden}.VPNavScreenMenuGroup.open .items[data-v-8d126ff7]{visibility:visible}.VPNavScreenMenuGroup.open[data-v-8d126ff7]{height:auto;padding-bottom:10px}.VPNavScreenMenuGroup.open .button[data-v-8d126ff7]{color:var(--vp-c-brand-1);padding-bottom:6px}.VPNavScreenMenuGroup.open .button-icon[data-v-8d126ff7]{transform:rotate(45deg)}.button[data-v-8d126ff7]{width:100%;color:var(--vp-c-text-1);justify-content:space-between;align-items:center;padding:12px 4px 11px 0;font-size:14px;font-weight:500;line-height:24px;transition:color .25s;display:flex}.button[data-v-8d126ff7]:hover{color:var(--vp-c-brand-1)}.button-icon[data-v-8d126ff7]{transition:transform .25s}.group[data-v-8d126ff7]:first-child{padding-top:0}.group+.group[data-v-8d126ff7],.group+.item[data-v-8d126ff7]{padding-top:4px}.VPNavScreenTranslations[data-v-599666bb]{height:24px;overflow:hidden}.VPNavScreenTranslations.open[data-v-599666bb]{height:auto}.title[data-v-599666bb]{color:var(--vp-c-text-1);align-items:center;font-size:14px;font-weight:500;display:flex}.icon[data-v-599666bb]{font-size:16px}.icon.lang[data-v-599666bb]{margin-right:8px}.icon.chevron[data-v-599666bb]{margin-left:4px}.list[data-v-599666bb]{padding:4px 0 0 24px}.link[data-v-599666bb]{color:var(--vp-c-text-1);font-size:13px;line-height:32px}.VPNavScreen[data-v-dc837829]{top:calc(var(--vp-nav-height) + var(--vp-layout-top-height,0px));background-color:var(--vp-nav-screen-bg-color);pointer-events:auto;width:100%;padding:0 32px;transition:background-color .25s;position:fixed;bottom:0;left:0;right:0;overflow-y:auto}.VPNavScreen.fade-enter-active[data-v-dc837829],.VPNavScreen.fade-leave-active[data-v-dc837829]{transition:opacity .25s}.VPNavScreen.fade-enter-active .container[data-v-dc837829],.VPNavScreen.fade-leave-active .container[data-v-dc837829]{transition:transform .25s}.VPNavScreen.fade-enter-from[data-v-dc837829],.VPNavScreen.fade-leave-to[data-v-dc837829]{opacity:0}.VPNavScreen.fade-enter-from .container[data-v-dc837829],.VPNavScreen.fade-leave-to .container[data-v-dc837829]{transform:translateY(-8px)}@media (width>=768px){.VPNavScreen[data-v-dc837829]{display:none}}.container[data-v-dc837829]{max-width:288px;margin:0 auto;padding:24px 0 96px}.menu+.translations[data-v-dc837829],.menu+.appearance[data-v-dc837829],.translations+.appearance[data-v-dc837829]{margin-top:24px}.menu+.social-links[data-v-dc837829],.appearance+.social-links[data-v-dc837829]{margin-top:16px}.VPNav[data-v-30d4b6d3]{top:var(--vp-layout-top-height,0px);z-index:var(--vp-z-index-nav);pointer-events:none;width:100%;transition:background-color .5s;position:relative;left:0}@media (width>=960px){.VPNav[data-v-30d4b6d3]{position:fixed}}.VPSidebarItem.level-0[data-v-dc26d667]{padding-bottom:24px}.VPSidebarItem.collapsed.level-0[data-v-dc26d667]{padding-bottom:10px}.item[data-v-dc26d667]{width:100%;display:flex;position:relative}.VPSidebarItem.collapsible>.item[data-v-dc26d667]{cursor:pointer}.indicator[data-v-dc26d667]{border-radius:2px;width:2px;transition:background-color .25s;position:absolute;top:6px;bottom:6px;left:-17px}.VPSidebarItem.level-2.is-active>.item>.indicator[data-v-dc26d667],.VPSidebarItem.level-3.is-active>.item>.indicator[data-v-dc26d667],.VPSidebarItem.level-4.is-active>.item>.indicator[data-v-dc26d667],.VPSidebarItem.level-5.is-active>.item>.indicator[data-v-dc26d667]{background-color:var(--vp-c-brand-1)}.link[data-v-dc26d667]{flex-grow:1;align-items:center;display:flex}.text[data-v-dc26d667]{flex-grow:1;padding:4px 0;font-size:14px;line-height:24px;transition:color .25s}.VPSidebarItem.level-0 .text[data-v-dc26d667]{color:var(--vp-c-text-1);font-weight:700}.VPSidebarItem.level-1 .text[data-v-dc26d667],.VPSidebarItem.level-2 .text[data-v-dc26d667],.VPSidebarItem.level-3 .text[data-v-dc26d667],.VPSidebarItem.level-4 .text[data-v-dc26d667],.VPSidebarItem.level-5 .text[data-v-dc26d667]{color:var(--vp-c-text-2);font-weight:500}.VPSidebarItem.level-0.is-link>.item>.link:hover .text[data-v-dc26d667],.VPSidebarItem.level-1.is-link>.item>.link:hover .text[data-v-dc26d667],.VPSidebarItem.level-2.is-link>.item>.link:hover .text[data-v-dc26d667],.VPSidebarItem.level-3.is-link>.item>.link:hover .text[data-v-dc26d667],.VPSidebarItem.level-4.is-link>.item>.link:hover .text[data-v-dc26d667],.VPSidebarItem.level-5.is-link>.item>.link:hover .text[data-v-dc26d667]{color:var(--vp-c-brand-1)}.VPSidebarItem.level-0.has-active>.item>.text[data-v-dc26d667],.VPSidebarItem.level-1.has-active>.item>.text[data-v-dc26d667],.VPSidebarItem.level-2.has-active>.item>.text[data-v-dc26d667],.VPSidebarItem.level-3.has-active>.item>.text[data-v-dc26d667],.VPSidebarItem.level-4.has-active>.item>.text[data-v-dc26d667],.VPSidebarItem.level-5.has-active>.item>.text[data-v-dc26d667],.VPSidebarItem.level-0.has-active>.item>.link>.text[data-v-dc26d667],.VPSidebarItem.level-1.has-active>.item>.link>.text[data-v-dc26d667],.VPSidebarItem.level-2.has-active>.item>.link>.text[data-v-dc26d667],.VPSidebarItem.level-3.has-active>.item>.link>.text[data-v-dc26d667],.VPSidebarItem.level-4.has-active>.item>.link>.text[data-v-dc26d667],.VPSidebarItem.level-5.has-active>.item>.link>.text[data-v-dc26d667]{color:var(--vp-c-text-1)}.VPSidebarItem.level-0.is-active>.item .link>.text[data-v-dc26d667],.VPSidebarItem.level-1.is-active>.item .link>.text[data-v-dc26d667],.VPSidebarItem.level-2.is-active>.item .link>.text[data-v-dc26d667],.VPSidebarItem.level-3.is-active>.item .link>.text[data-v-dc26d667],.VPSidebarItem.level-4.is-active>.item .link>.text[data-v-dc26d667],.VPSidebarItem.level-5.is-active>.item .link>.text[data-v-dc26d667]{color:var(--vp-c-brand-1)}.caret[data-v-dc26d667]{width:32px;height:32px;color:var(--vp-c-text-3);cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;margin-right:-7px;transition:color .25s;display:flex}.item:hover .caret[data-v-dc26d667]{color:var(--vp-c-text-2)}.item:hover .caret[data-v-dc26d667]:hover{color:var(--vp-c-text-1)}.caret-icon[data-v-dc26d667]{font-size:18px;transition:transform .25s;transform:rotate(90deg)}.VPSidebarItem.collapsed .caret-icon[data-v-dc26d667]{transform:rotate(0)}.VPSidebarItem.level-1 .items[data-v-dc26d667],.VPSidebarItem.level-2 .items[data-v-dc26d667],.VPSidebarItem.level-3 .items[data-v-dc26d667],.VPSidebarItem.level-4 .items[data-v-dc26d667],.VPSidebarItem.level-5 .items[data-v-dc26d667]{border-left:1px solid var(--vp-c-divider);padding-left:16px}.VPSidebarItem.collapsed .items[data-v-dc26d667]{display:none}.no-transition[data-v-f196544a] .caret-icon{transition:none}.group+.group[data-v-f196544a]{border-top:1px solid var(--vp-c-divider);padding-top:10px}@media (width>=960px){.group[data-v-f196544a]{width:calc(var(--vp-sidebar-width) - 64px);padding-top:10px}}.VPSidebar[data-v-d5a21b51]{top:var(--vp-layout-top-height,0px);z-index:var(--vp-z-index-sidebar);background-color:var(--vp-sidebar-bg-color);opacity:0;width:calc(100vw - 64px);max-width:320px;box-shadow:var(--vp-c-shadow-3);overscroll-behavior:contain;padding:32px 32px 96px;transition:opacity .5s,transform .25s;position:fixed;bottom:0;left:0;overflow:hidden auto;transform:translate(-100%)}.VPSidebar.open[data-v-d5a21b51]{opacity:1;visibility:visible;transition:opacity .25s,transform .5s cubic-bezier(.19,1,.22,1);transform:translate(0)}.dark .VPSidebar[data-v-d5a21b51]{box-shadow:var(--vp-shadow-1)}@media (width>=960px){.VPSidebar[data-v-d5a21b51]{padding-top:var(--vp-nav-height);width:var(--vp-sidebar-width);background-color:var(--vp-sidebar-bg-color);opacity:1;visibility:visible;max-width:100%;box-shadow:none;transform:translate(0)}}@media (width>=1440px){.VPSidebar[data-v-d5a21b51]{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 (width>=960px){.curtain[data-v-d5a21b51]{top:calc(var(--vp-nav-height) * -1);z-index:1;margin-top:calc(var(--vp-nav-height) * -1);height:var(--vp-nav-height);background-color:var(--vp-sidebar-bg-color);margin-left:-32px;margin-right:-32px;position:sticky;left:0}}.nav[data-v-d5a21b51]{outline:0}.VPSkipLink[data-v-575e8cee]{z-index:999;color:var(--vp-c-brand-1);box-shadow:var(--vp-shadow-3);background-color:var(--vp-c-bg);border-radius:8px;padding:8px 16px;font-size:12px;font-weight:700;text-decoration:none;position:fixed;top:8px;left:8px}.VPSkipLink[data-v-575e8cee]:focus{clip:auto;clip-path:none;width:auto;height:auto}@media (width>=1280px){.VPSkipLink[data-v-575e8cee]{top:14px;left:16px}}.Layout[data-v-c5c823aa]{flex-direction:column;min-height:100vh;display:flex}.home-cv-letter-stage[data-v-0fb549c6]{min-height:calc(100svh + clamp(20rem,48svh,34rem))}.home-cv-letter[data-v-0fb549c6]{top:var(--vp-nav-height,64px);height:calc(100svh - var(--vp-nav-height,64px));align-items:flex-end;padding:0 24px;display:flex;position:sticky;overflow:hidden}.home-cv-letter__container[data-v-0fb549c6]{width:100%;max-width:1152px;margin:0 auto}.home-cv-letter[data-v-0fb549c6] .profile-letter{margin-top:0;margin-bottom:0;transform:translateY(1.15rem)}.VPHome:has(.home-cv-letter){margin-bottom:0}.VPContent.is-home:has(.home-cv-letter){min-height:0}@media (width>=640px){.home-cv-letter[data-v-0fb549c6]{padding:0 48px}}@media (width>=960px){.home-cv-letter[data-v-0fb549c6]{padding:0 64px}}@media (width<=520px){.home-cv-letter[data-v-0fb549c6] .profile-letter{transform:none}}:root{--vp-c-brand-1:#15803d;--vp-c-brand-2:#16a34a;--vp-c-brand-3:#22c55e;--vp-c-brand-soft:#22c55e24;--vp-button-brand-text:#fff;--vp-button-brand-bg:#15803d;--vp-button-brand-hover-bg:#166534;--vp-button-brand-active-bg:#14532d;--profile-paper:#fffdf6;--profile-paper-edge:#e7e1d2;--profile-ink:#253029;--profile-accent:#15803d;--profile-button-text:#fff;--vp-home-hero-name-color:transparent;--vp-home-hero-name-background:linear-gradient(120deg, #15803d 20%, #65a30d 85%);--vp-home-hero-image-background-image:linear-gradient(135deg, #22c55e 20%, #bef264 75%);--vp-home-hero-image-filter:blur(42px)}.dark{--vp-c-brand-1:#4ade80;--vp-c-brand-2:#22c55e;--vp-c-brand-3:#16a34a;--vp-c-brand-soft:#4ade8029;--vp-button-brand-text:#052e16;--vp-button-brand-bg:#4ade80;--vp-button-brand-hover-text:#052e16;--vp-button-brand-hover-bg:#86efac;--vp-button-brand-active-text:#052e16;--vp-button-brand-active-bg:#22c55e;--profile-paper:#141815;--profile-paper-edge:#303832;--profile-ink:#dce5de;--profile-accent:#78d996;--profile-button-text:#0b1710;--vp-home-hero-name-background:linear-gradient(120deg, #4ade80 20%, #bef264 85%)}::selection{background:#4ade8059}.VPHero.has-image .image-src{border:3px solid color-mix(in srgb, var(--vp-c-brand-1) 35%, transparent);border-radius:50%;box-shadow:0 16px 48px #15803d2e;object-fit:cover!important}.VPFeature{transition:border-color .2s,transform .2s}.VPFeature:hover{border-color:color-mix(in srgb, var(--vp-c-brand-1) 45%, var(--vp-c-divider));transform:translateY(-2px)}.profile-letter__button,.vp-doc a.profile-letter__button{box-sizing:border-box;min-height:2.5rem;font-family:var(--vp-font-family-base);border-radius:999px;align-items:center;padding:.55rem 1rem;font-size:.88rem;font-weight:700;line-height:1;text-decoration:none;transition:border-color .18s,filter .18s,transform .18s;display:inline-flex}.profile-letter__button--primary,.vp-doc a.profile-letter__button--primary{border:1px solid color-mix(in srgb, var(--profile-accent) 78%, var(--profile-ink));background:var(--profile-accent);color:var(--profile-button-text)}.profile-letter__button--secondary,.vp-doc a.profile-letter__button--secondary{border:1px solid color-mix(in srgb, var(--profile-accent) 55%, var(--profile-paper-edge));background:color-mix(in srgb, var(--profile-paper) 82%, var(--profile-accent));color:var(--profile-accent)}.profile-letter__button:hover,.vp-doc a.profile-letter__button:hover{filter:brightness(1.08);transform:translateY(-1px)}.profile-letter__button--primary:hover,.vp-doc a.profile-letter__button--primary:hover{color:var(--profile-button-text)}.profile-letter__button--secondary:hover,.vp-doc a.profile-letter__button--secondary:hover{border-color:color-mix(in srgb, var(--profile-accent) 75%, var(--profile-paper-edge));color:var(--profile-accent)}.profile-letter__button:focus-visible,.vp-doc a.profile-letter__button:focus-visible{outline:3px solid color-mix(in srgb, var(--profile-accent) 35%, transparent);outline-offset:3px}.profile-letter__button--primary:focus-visible,.vp-doc a.profile-letter__button--primary:focus-visible{color:var(--profile-button-text)}.profile-letter__button--secondary:focus-visible,.vp-doc a.profile-letter__button--secondary:focus-visible{color:var(--profile-accent)}.portfolio-site-showcase{grid-template-columns:minmax(0,1fr) minmax(220px,.65fr);align-items:stretch;gap:clamp(12px,2.6vw,20px);margin:28px 0 42px;display:grid}.portfolio-site-showcase--single{grid-template-columns:minmax(0,1fr)}.portfolio-app-showcase{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:clamp(12px,2.6vw,20px);margin:28px 0 42px;display:grid}.portfolio-browser-frame{border:1px solid color-mix(in srgb, var(--vp-c-divider) 78%, transparent);background:var(--vp-c-bg);border-radius:14px;flex-direction:column;display:flex;position:relative;overflow:hidden;box-shadow:0 8px 20px #00000017,inset 0 1px #ffffff94}.vp-doc a.portfolio-browser-frame{color:inherit;text-decoration:none}.vp-doc a.portfolio-browser-frame:hover{color:inherit}[data-lightbox].portfolio-browser-frame{cursor:zoom-in;transition:border-color .2s,box-shadow .2s,transform .2s}[data-lightbox].portfolio-browser-frame:hover,[data-lightbox].portfolio-browser-frame:focus-visible{border-color:color-mix(in srgb, var(--vp-c-brand-1) 48%, var(--vp-c-divider));transform:translateY(-2px);box-shadow:0 14px 30px #00000024,inset 0 1px #ffffffa3}[data-lightbox].portfolio-browser-frame:focus-visible{outline:3px solid color-mix(in srgb, var(--vp-c-brand-1) 35%, transparent);outline-offset:3px}.portfolio-browser-frame__bar{border-bottom:1px solid color-mix(in srgb, var(--vp-c-divider) 70%, transparent);background:linear-gradient(180deg, color-mix(in srgb, var(--vp-c-bg) 96%, #fff), color-mix(in srgb, var(--vp-c-bg-soft) 92%, #fff));flex:none;align-items:center;height:22px;padding-left:10px;display:flex}.portfolio-browser-frame__buttons{background:#ff5f57;border-radius:50%;width:7px;height:7px;box-shadow:12px 0 #ffbd2e,24px 0 #28c840}.portfolio-browser-frame--mobile{border-radius:18px}.portfolio-browser-frame>.portfolio-browser-frame__image{vertical-align:top;width:100%;max-width:none;height:auto;margin:0;display:block}.portfolio-browser-frame--mobile .portfolio-browser-frame__image{object-fit:cover;object-position:top center;flex:auto;height:0;min-height:0}.portfolio-browser-frame--app .portfolio-browser-frame__image{object-fit:contain;flex:none;height:auto}@media (width<=639px){.portfolio-site-showcase,.portfolio-app-showcase{grid-template-columns:1fr;gap:10px;margin-top:22px}.portfolio-browser-frame--mobile{justify-self:stretch;width:100%}.portfolio-browser-frame{border-radius:10px}.portfolio-browser-frame--mobile{border-radius:13px}.portfolio-browser-frame__bar{height:20px;padding-left:8px}.portfolio-browser-frame__buttons{width:7px;height:7px;box-shadow:11px 0 #ffbd2e,22px 0 #28c840}.portfolio-browser-frame--mobile .portfolio-browser-frame__image{height:auto}}.has-image-lightbox{overflow:hidden}.image-lightbox{z-index:9999;overscroll-behavior:contain;background:#070a0ee0;padding:clamp(12px,3vw,28px);display:grid;position:fixed;inset:0;overflow:auto}.image-lightbox-enter-active,.image-lightbox-leave-active{transition:opacity .24s}.image-lightbox-enter-active .image-lightbox__close,.image-lightbox-enter-active .image-lightbox__figure,.image-lightbox-leave-active .image-lightbox__close,.image-lightbox-leave-active .image-lightbox__figure{transition:opacity .24s,transform .24s}.image-lightbox-enter-from,.image-lightbox-leave-to{opacity:0}.image-lightbox-enter-from .image-lightbox__figure,.image-lightbox-leave-to .image-lightbox__figure{opacity:0;transform:translateY(10px)scale(.985)}.image-lightbox-enter-from .image-lightbox__close,.image-lightbox-leave-to .image-lightbox__close{opacity:0;transform:translateY(-6px)scale(.96)}.image-lightbox__figure{place-self:center;gap:12px;width:min(100%,1440px);max-height:none;margin:0;display:grid}.image-lightbox__image{object-fit:contain;background:#fff;border-radius:10px;width:auto;max-width:100%;max-height:calc(100vh - 104px);margin:0 auto;display:block;box-shadow:0 24px 70px #0000006b}.image-lightbox__caption{color:#ffffffc7;text-align:center;max-width:min(100%,980px);margin:0 auto;font-size:.9rem;line-height:1.45}.image-lightbox__close{z-index:1;top:max(12px, env(safe-area-inset-top));right:max(12px, env(safe-area-inset-right));border:1px solid color-mix(in srgb, var(--vp-c-brand-1) 34%, var(--vp-c-divider));background:color-mix(in srgb, var(--vp-c-bg) 88%, transparent);width:44px;height:44px;color:var(--vp-c-text-1);cursor:pointer;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:8px;place-items:center;padding:0;transition:border-color .2s,background-color .2s,color .2s,transform .2s;display:grid;position:fixed;box-shadow:0 12px 32px #0000003d,inset 0 1px #ffffff1f}.image-lightbox__close:hover{border-color:var(--vp-c-brand-1);background:var(--vp-c-brand-soft);color:var(--vp-c-brand-1)}.image-lightbox__close:focus-visible{outline:3px solid color-mix(in srgb, var(--vp-c-brand-1) 38%, transparent);outline-offset:3px}.image-lightbox__close svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:2px;width:22px;height:22px}@media (width<=639px){.image-lightbox{padding:64px 10px 14px}.image-lightbox__image{border-radius:8px;max-height:calc(100vh - 122px)}}@media (width>=960px){.VPHero.has-image .image-container{width:240px!important;height:240px!important}.VPHero.has-image .image-container,.VPHero.has-image .image-bg,.VPHero.has-image .image-src{max-width:none!important;max-height:none!important}.VPHero.has-image .image-bg,.VPHero.has-image .image-src{width:240px!important;height:240px!important}}
/*$vite$:1*/