@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/_astro/archivo-vietnamese-wdth-normal.rJmnGBSt.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/_astro/archivo-latin-ext-wdth-normal.7khWdh9v.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/_astro/archivo-latin-wdth-normal.DY7AcnAa.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-cyrillic-ext-wght-normal.EocZY2iu.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-cyrillic-wght-normal.D73BlboJ.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-greek-wght-normal.Bw9x6K1M.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-vietnamese-wght-normal.Bt-aOZkq.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-latin-ext-wght-normal.DBQx-q_a.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-latin-wght-normal.B9CIFXIH.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--color-graphite:#1d1f22;--color-gunmetal:#3a3d42;--color-aluminium:#c9ccd0;--color-bright:#f4f5f6;--color-paper:var(--color-graphite);--color-paper-2:#24272b;--color-paper-3:#2c2f34;--color-ink:var(--color-bright);--color-ink-2:var(--color-aluminium);--color-muted:#9a9ea4;--color-rule:var(--color-gunmetal);--color-line:var(--color-bright);--color-line-thin:#6b6f75;--color-accent:var(--color-aluminium);--color-accent-ink:var(--color-graphite);--color-invert:var(--color-bright);--color-invert-ink:var(--color-graphite);--color-invert-muted:var(--color-gunmetal);--color-focus:var(--color-bright);--color-focus-on-invert:var(--color-graphite);--color-selection:var(--color-gunmetal);--color-error:var(--color-bright);--font-display:"Archivo Variable", "Archivo", "Arial", "Helvetica Neue", sans-serif;--font-body:"Archivo Variable", "Archivo", "Arial", "Helvetica Neue", sans-serif;--font-measure:"JetBrains Mono Variable", "JetBrains Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--font-outlier:var(--font-measure);--stretch-display:125%;--stretch-body:100%;--weight-display:800;--weight-head:800;--weight-body:400;--weight-label:400;--text-xs:.8125rem;--text-sm:.875rem;--text-md:1.0625rem;--text-lg:1.25rem;--text-title:clamp(1.25rem, .6vw + 1rem, 1.5rem);--text-section:clamp(2rem, 1.6vw + 1.3rem, 2.875rem);--text-display:clamp(2.5rem, 3.9vw + 1rem, 5.25rem);--tracking-display:-.02em;--leading-display:1.02;--space-3xs:2px;--space-2xs:4px;--space-xs:8px;--space-sm:12px;--space-md:16px;--space-lg:24px;--space-xl:40px;--space-2xl:64px;--space-3xl:96px;--space-4xl:144px;--container:1440px;--gutter:48px;--gap-columns:32px;--bar-h:56px;--section-gap:144px;--section-gap-s:120px;--line-thick:1.5px;--line-thin:1px;--rule-hair:1px;--radius-0:0;--radius-control:2px;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.7, 0, .84, 0);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--ease-machine:cubic-bezier(.22, .9, .24, 1);--dur-micro:.12s;--dur-short:.2s;--dur-long:.42s;--dur-scribe:.9s;--z-base:1;--z-raised:10;--z-sticky-nav:300;--z-modal:400}@media (width<=63.99rem){:root{--gutter:32px;--section-gap:104px;--section-gap-s:88px}}@media (width<=40rem){:root{--gutter:16px;--gap-columns:16px;--section-gap:80px;--section-gap-s:64px;--text-md:1rem;--bar-h:52px}}*,:before,:after{box-sizing:border-box}html,body{overflow-x:clip}html{background:var(--color-paper);scrollbar-color:var(--color-muted) var(--color-paper-2);scroll-padding-top:calc(var(--bar-h) + var(--space-lg));-webkit-text-size-adjust:100%}body{background:var(--color-paper);color:var(--color-ink);font-family:var(--font-body);font-stretch:var(--stretch-body);font-weight:var(--weight-body);font-size:var(--text-md);font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;caret-color:var(--color-ink);margin:0;line-height:1.55}::selection{background:var(--color-selection);color:var(--color-ink)}:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px}a{color:inherit;text-underline-offset:.22em;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}h1,h2,h3{font-family:var(--font-display);font-stretch:var(--stretch-display);font-synthesis:none;overflow-wrap:break-word;min-width:0;letter-spacing:var(--tracking-display);color:var(--color-ink);margin:0}h1{font-weight:var(--weight-display);font-size:var(--text-display);line-height:var(--leading-display);text-wrap:balance}h2{font-weight:var(--weight-head);font-size:var(--text-section);text-wrap:balance;line-height:1.06}h3{font-weight:var(--weight-head);font-size:var(--text-title);letter-spacing:-.01em;text-wrap:balance;line-height:1.2}p{text-wrap:pretty;margin:0}strong,b{font-weight:600}p:not([class]){max-width:62ch}ul,ol{margin:0;padding:0}img,video,canvas{max-width:100%;height:auto;display:block}svg{display:block}[hidden]{display:none!important}button,input,select,textarea{font:inherit;color:inherit}figure{margin:0}table{border-collapse:collapse}.tp-container{width:100%;max-width:var(--container);padding-inline:var(--gutter);margin-inline:auto}.tp-measure{font-family:var(--font-measure);font-size:var(--text-xs);font-variant-numeric:tabular-nums slashed-zero;letter-spacing:0;font-weight:400}.tp-label{font-size:var(--text-sm);font-weight:var(--weight-label);color:var(--color-muted);line-height:1.35}.tp-lede{font-size:var(--text-lg);max-width:44ch;color:var(--color-ink-2);line-height:1.45}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.tp-button{align-items:center;gap:var(--space-sm);min-height:48px;padding:var(--space-sm) var(--space-lg);background:var(--color-accent);color:var(--color-accent-ink);border:var(--line-thin) solid var(--color-accent);border-radius:var(--radius-control);font-family:var(--font-body);font-weight:600;font-size:var(--text-md);white-space:nowrap;cursor:pointer;transition:background-color var(--dur-short) var(--ease-out), color var(--dur-short) var(--ease-out);font-stretch:112%;line-height:1;text-decoration:none;display:inline-flex}.tp-button:hover{background:var(--color-bright);border-color:var(--color-bright);text-decoration:none}.tp-button:active{background:var(--color-aluminium);transform:translateY(1px)}.tp-button:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px}.tp-button:disabled{opacity:.5;cursor:not-allowed}.tp-button__mark{flex:none;width:18px;height:10px}.cp-placeholder{color:var(--color-ink-2);font-family:var(--font-body);background:0 0;border:var(--line-thin) dashed var(--color-muted)!important;border-radius:var(--radius-0)!important;padding:.35em .7em .4em!important}.cp-placeholder__tag{color:var(--color-ink);font-weight:600}@view-transition{navigation:auto}::view-transition-old(root){animation:tp-sheet-out .26s var(--ease-in) both}::view-transition-new(root){animation:tp-sheet-in .42s var(--ease-machine) both}::view-transition-old(tp-bar),::view-transition-new(tp-bar){animation:none}@keyframes tp-sheet-out{to{opacity:0}}@keyframes tp-sheet-in{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}::view-transition-old(root),::view-transition-new(root){animation:none!important}}@view-transition{navigation:auto}@media (prefers-reduced-motion:reduce){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}}.tp-wordmark{font-family:var(--font-display);font-stretch:var(--stretch-display);font-weight:var(--weight-display);letter-spacing:-.01em;white-space:nowrap;color:var(--color-ink);line-height:1}.tp-wordmark--bar{font-size:1.0625rem}.tp-wordmark--block{white-space:normal;font-size:clamp(1.5rem,1.2vw + 1rem,2rem)}.tp-bar{z-index:var(--z-sticky-nav);background:var(--color-paper);border-bottom:var(--line-thin) solid var(--color-line);view-transition-name:tp-bar;position:sticky;top:0}.tp-bar__inner{justify-content:space-between;align-items:stretch;gap:var(--space-lg);height:var(--bar-h);display:flex}.tp-bar__home{align-items:center;text-decoration:none;display:inline-flex}.tp-bar__home:focus-visible{outline-offset:4px}.tp-tabs ul{height:100%;list-style:none;display:flex}.tp-tabs li{display:flex}.tp-tabs a{align-items:center;gap:var(--space-xs);padding-inline:var(--space-md);border-left:var(--line-thin) solid var(--color-rule);height:100%;font-size:var(--text-sm);font-weight:var(--weight-label);color:var(--color-ink-2);white-space:nowrap;transition:background-color var(--dur-micro) var(--ease-out), color var(--dur-micro) var(--ease-out);text-decoration:none;display:inline-flex;position:relative}.tp-tabs li:last-child a{border-right:var(--line-thin) solid var(--color-rule)}.tp-tabs__n{min-width:20px;height:20px;padding-inline:var(--space-2xs);border:var(--line-thin) solid var(--color-rule);color:var(--color-muted);place-items:center;font-size:.75rem;line-height:1;display:inline-grid}.tp-tabs a:hover{background:var(--color-paper-2);color:var(--color-ink)}.tp-tabs a:active{background:var(--color-paper-3)}.tp-tabs a:focus-visible{outline:2px solid var(--color-focus);outline-offset:-4px}.tp-tabs a[aria-current=page]{color:var(--color-ink);background:var(--color-paper)}.tp-tabs a[aria-current=page]:after{content:"";background:var(--color-line);height:3px;position:absolute;bottom:-1px;left:0;right:0}.tp-tabs a[aria-current=page] .tp-tabs__n{border-color:var(--color-line);color:var(--color-ink)}.tp-bar__menu{align-self:center;align-items:center;gap:var(--space-sm);min-height:44px;padding-inline:var(--space-md);background:var(--color-paper);border:var(--line-thin) solid var(--color-line);border-radius:var(--radius-control);font-weight:600;font-size:var(--text-sm);cursor:pointer;white-space:nowrap;transition:background-color var(--dur-micro) var(--ease-out);display:none}.tp-bar__menu:hover{background:var(--color-paper-2)}.tp-bar__menu:active{background:var(--color-paper-3)}.tp-bar__menu:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.tp-bar__count{color:var(--color-muted);font-weight:var(--weight-body)}.tp-sheetlist{z-index:var(--z-modal);overscroll-behavior:contain;background:var(--color-paper);position:fixed;inset:0;overflow-y:auto}.tp-sheetlist__inner{flex-direction:column;min-height:100%;display:flex}.tp-sheetlist__head{height:var(--bar-h);border-bottom:var(--line-thin) solid var(--color-line);justify-content:space-between;align-items:center;display:flex}.tp-sheetlist__head .tp-bar__menu{display:inline-flex}.tp-sheetlist__list{border-left:var(--line-thin) solid var(--color-line);border-right:var(--line-thin) solid var(--color-line);list-style:none}.tp-sheetlist__list li{border-bottom:var(--line-thin) solid var(--color-line)}.tp-sheetlist__list a{gap:var(--space-2xs);padding:var(--space-md) var(--space-md) var(--space-lg);text-decoration:none;display:grid}.tp-sheetlist__list a:hover{background:var(--color-paper-2)}.tp-sheetlist__list a:active{background:var(--color-paper-3)}.tp-sheetlist__list a:focus-visible{outline:2px solid var(--color-focus);outline-offset:-4px}.tp-sheetlist__n{font-size:var(--text-sm);color:var(--color-muted)}.tp-sheetlist__t{font-family:var(--font-display);font-stretch:var(--stretch-display);font-weight:var(--weight-display);letter-spacing:var(--tracking-display);font-size:clamp(1.625rem,6vw,2.25rem);line-height:1.05}.tp-sheetlist__list a[aria-current=page]{background:var(--color-invert);color:var(--color-invert-ink)}.tp-sheetlist__list a[aria-current=page] .tp-sheetlist__n{color:var(--color-invert-muted)}.tp-sheetlist__list a[aria-current=page]:focus-visible{outline-color:var(--color-focus-on-invert)}@media (width<=63.99rem){.tp-tabs{display:none}.tp-bar__menu{display:inline-flex}}@media (width>=64rem) and (width<=80rem){.tp-tabs a{padding-inline:var(--space-sm)}}.tp-projection{width:46px;height:auto;overflow:visible}.tp-projection path,.tp-projection circle{fill:none;stroke:var(--color-line);stroke-width:1.1px}.tp-projection__c{stroke:var(--color-ink-2);stroke-width:.5px;stroke-dasharray:5 1 1 1}.tp-titleblock{padding-block:var(--space-2xl) var(--space-xl)}.tp-tb{border:var(--line-thick) solid var(--color-line);background:var(--color-paper);grid-template-columns:repeat(12,minmax(0,1fr));display:grid}.tp-tb__cell,.tp-tb__nav li{align-content:start;gap:var(--space-2xs);padding:var(--space-sm) var(--space-md) var(--space-md);border-right:var(--line-thin) solid var(--color-line);border-bottom:var(--line-thin) solid var(--color-line);min-width:0;display:grid}.tp-tb__k{color:var(--color-muted);font-size:.8125rem;line-height:1.3}.tp-tb__v{font-size:var(--text-md);font-weight:var(--weight-label);line-height:1.3}.tp-tb__v--title{font-family:var(--font-display);font-stretch:var(--stretch-display);font-weight:var(--weight-head);font-size:var(--text-title);letter-spacing:-.01em;line-height:1.1}.tp-tb__mark,.tp-tb__title{grid-column:span 5}.tp-tb__sheet{border-right:0;grid-column:span 2}.tp-tb__cell:nth-child(n+4):not(.tp-tb__note){grid-column:span 2}.tp-tb__cell:nth-child(9){border-right:0}.tp-tb__projrow{align-items:center;gap:var(--space-sm);display:inline-flex}.tp-tb__nav{border-bottom:0;grid-column:1/-1}.tp-tb__nav li{border-bottom:0}.tp-tb__nav ol{grid-template-columns:repeat(5,minmax(0,1fr));list-style:none;display:grid}.tp-tb__nav li{padding:0}.tp-tb__nav li:last-child{border-right:0}.tp-tb__nav a{gap:var(--space-2xs);height:100%;padding:var(--space-sm) var(--space-md) var(--space-md);transition:background-color var(--dur-micro) var(--ease-out);text-decoration:none;display:grid}.tp-tb__navt{font-weight:600;line-height:1.25}.tp-tb__nav a:hover{background:var(--color-paper-2)}.tp-tb__nav a:active{background:var(--color-paper-3)}.tp-tb__nav a:focus-visible{outline:2px solid var(--color-focus);outline-offset:-4px}.tp-tb__nav a[aria-current=page]{background:var(--color-invert);color:var(--color-invert-ink)}.tp-tb__nav a[aria-current=page] .tp-tb__k{color:var(--color-invert-muted)}.tp-tb__nav a[aria-current=page]:focus-visible{outline-color:var(--color-focus-on-invert)}.tp-tb__note{font-size:var(--text-sm);color:var(--color-muted);border-bottom:0;border-right:0;grid-column:1/-1}.tp-tb .cp-credits{font-size:var(--text-sm)}.tp-tb .cp-credits ul{padding-left:var(--space-md)}@media (width<=63.99rem){.tp-tb__mark{border-right:0;grid-column:span 12}.tp-tb__title{grid-column:span 8}.tp-tb__sheet,.tp-tb__cell:nth-child(n+4):not(.tp-tb__note){grid-column:span 4}.tp-tb__cell:nth-child(6),.tp-tb__cell:nth-child(9),.tp-tb__cell:nth-child(9){border-right:0}.tp-tb__nav ol{grid-template-columns:repeat(5,minmax(0,1fr))}}@media (width<=40rem){.tp-tb__title{border-right:0;grid-column:span 12}.tp-tb__sheet{grid-column:span 12}.tp-tb__cell:nth-child(n+4):not(.tp-tb__note){grid-column:span 6}.tp-tb__cell:nth-child(6){border-right:var(--line-thin) solid var(--color-line)}.tp-tb__cell:nth-child(2n+5){border-right:0}.tp-tb__nav ol{grid-template-columns:minmax(0,1fr)}.tp-tb__nav li{border-right:0}.tp-tb__nav a{grid-template-columns:5.5rem minmax(0,1fr);align-items:baseline}}.tp-main:focus{outline:none}.tp-skip{left:var(--space-sm);z-index:100;padding:var(--space-xs) var(--space-sm);background:var(--color-invert);color:var(--color-invert-ink);font-weight:600;text-decoration:none;position:absolute;top:-4rem}.tp-skip:focus-visible{top:var(--space-sm)}.tp-frame{width:calc(100% - 2 * var(--gutter));max-width:calc(var(--container) - 2 * var(--gutter));border-left:var(--line-thin) solid var(--color-line);border-right:var(--line-thin) solid var(--color-line);border-bottom:var(--line-thin) solid var(--color-line);padding-inline:var(--space-xl);margin-inline:auto;position:relative}.tp-frame__mark--t{width:1px;height:var(--space-md);background:var(--color-line);position:absolute;top:0;left:50%}@media (width<=40rem){.tp-frame{border-bottom:0;border-left:0;border-right:0;padding-inline:0}.tp-frame__mark--t{display:none}}html.js.tp-reveal-armed [data-reveal]:not(.is-in){opacity:0;transform:translateY(8px)}html.js.tp-reveal-armed [data-reveal]{transition:opacity var(--dur-long) var(--ease-out), transform var(--dur-long) var(--ease-out)}@media (prefers-reduced-motion:reduce){html.js.tp-reveal-armed [data-reveal]{opacity:1!important;transform:none!important}}
