﻿@import url("/css/open-props-optimized.css");@media (min-width: 768px){.u-hidden-md-up{display:none !important}}@media (min-width: 1024px){.u-hidden-lg-up{display:none !important}}:root{--base-font: var(--font-system-ui), ui-serif;--code-font: var(--font-monospace-code), monospace;--sidenote-width: var(--size-13);--sidenote-gap: var(--size-fluid-2);--content-width: var(--size-md);--grid-total-width: calc(var(--sidenote-width) + var(--sidenote-gap) + var(--content-width) + var(--sidenote-gap) + var(--sidenote-width))}body{font-family:var(--base-font);font-size:var(--font-size-1);line-height:var(--font-lineheight-3);color:var(--text-color);background-color:var(--bg-color)}img{max-width:100%;height:auto}mark{color:var(--text-color);background:var(--mark-bg-color);padding:.1em .1em;position:relative;z-index:1}*:focus-visible{outline:2px solid var(--blue-6);outline-offset:2px;border-radius:var(--radius-1)}@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration:.01s !important;animation-iteration-count:1 !important;transition-duration:.01s !important;scroll-behavior:auto !important}}.skip-link{position:absolute;top:-40px;left:6px;background:var(--bg-color);color:var(--text-color);padding:8px;text-decoration:none;border-radius:var(--radius-2);z-index:100}.skip-link:focus{top:6px}.container{max-width:var(--grid-total-width);margin:0 auto;display:flex;flex-direction:column;min-height:100vh}header{font-size:var(--font-size-1);margin-top:var(--size-fluid-1)}header :link{text-decoration:none;color:var(--gray-5);cursor:pointer;position:relative;font-weight:var(--font-weight-3)}header a:hover{text-decoration:none}header a:visited{color:var(--gray-6)}main{flex:1;display:grid;grid-template-columns:var(--sidenote-width) var(--sidenote-gap) var(--content-width) var(--sidenote-gap) var(--sidenote-width);grid-template-areas:"sidenote-left gap-left content gap-right sidenote-right";justify-content:center;align-items:start;gap:0;width:100%;position:relative}article{grid-area:content;width:100%;max-width:var(--content-width);position:relative}footer{text-align:center;padding:var(--size-fluid-3) 0;margin-top:var(--size-fluid-3);border-top:var(--border-size-1) solid var(--border-color);color:var(--muted-color)}.wide{position:relative;margin-top:var(--size-fluid-2);margin-bottom:var(--size-fluid-2);left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;width:100vw;max-width:100vw}@media screen and (min-width: 1024px){.wide{margin-left:calc(-1*var(--sidenote-width) - var(--sidenote-gap));margin-right:calc(-1*var(--sidenote-width) - var(--sidenote-gap));width:var(--grid-total-width);max-width:var(--grid-total-width);left:0;right:0}}.wide img,.wide table,.wide pre,.wide .z-code,.wide iframe,.wide video{width:100%;max-width:100%;height:auto}.wide table{margin:0 auto}.wide pre,.wide .z-code{overflow-x:auto}@container (max-width: breakpoint(xl)){:root{--sidenote-width: var(--size-12);--sidenote-gap: var(--size-4)}}@media screen and (max-width: 1290px){:root{--sidenote-width: var(--size-12);--sidenote-gap: var(--size-4);--grid-total-width: calc(var(--size-12) + var(--size-4) + var(--size-md) + var(--size-4) + var(--size-12))}}@media screen and (max-width: 1024px){main{display:block}.container{max-width:90%;padding:var(--size-fluid-1)}article{max-width:100%;grid-area:unset}.wide{margin-left:calc(-1*var(--size-fluid-1));margin-right:calc(-1*var(--size-fluid-1));width:calc(100% + 2*var(--size-fluid-1));max-width:calc(100% + 2*var(--size-fluid-1));left:0;right:0;padding:0 var(--size-fluid-1);overflow-x:auto}.wide table{font-size:var(--font-size-0)}}@media screen and (max-width: 480px){.container{max-width:100%;padding:var(--size-fluid-1)}main{display:block}.wide{width:100vw;max-width:100vw;margin:var(--size-2) calc(-50vw + 50%);padding:0 var(--size-2);overflow-x:auto;-webkit-overflow-scrolling:touch}.wide table{font-size:var(--font-size-00)}.wide img,.wide iframe,.wide video{border-radius:0}}@supports (container-type: inline-size){.container{container-type:inline-size;container-name:main-container}}h1,h2,h3,h4,h5,h6{margin-top:var(--size-fluid-2);margin-bottom:var(--size-fluid-0);border:none;background-image:var(--flavour-header-gradient);background-size:var(--size-md);background-clip:text;-webkit-background-clip:text;color:var(--flavour-header-color-text)}h1+h2,h1+h3,h1+h4,h1+h5,h1+h6,h2+h3,h2+h4,h2+h5,h2+h6,h3+h4,h3+h5,h3+h6,h4+h5,h4+h6,h5+h6{margin-top:0}h1+h4:before{content:"";display:none}h1{font-size:var(--font-size-fluid-3);font-weight:var(--font-weight-1)}h2{font-size:var(--font-size-fluid-2);font-weight:var(--font-weight-1)}h3{font-size:var(--font-size-fluid-1);font-weight:var(--font-weight-1)}h4{font-size:var(--font-size-fluid-0);font-weight:var(--font-weight-2)}h5{margin-top:var(--size-fluid-2);font-size:var(--font-size-3);font-weight:var(--font-weight-2)}h6{margin-top:var(--size-fluid-2);font-size:var(--font-size-2);font-weight:var(--font-weight-2)}header{background-image:var(--flavour-header-gradient);background-size:var(--size-md);background-clip:text;-webkit-background-clip:text;color:var(--flavour-header-color-text)}p{margin-bottom:var(--size-fluid-1);font-size:var(--font-size-1);line-height:var(--font-lineheight-2)}ul,ol{margin:var(--size-fluid-1) 0 var(--size-fluid-1) var(--size-fluid-1)}li{margin-bottom:var(--size-1)}h1.post-title{margin-top:var(--size-fluid-1);margin-bottom:0;margin-block-end:0;line-height:var(--font-lineheight-1);font-weight:var(--font-weight-1);font-size:var(--font-size-8)}p.post-description{font-size:var(--font-size-0);font-weight:var(--font-weight-1);color:var(--muted-color);margin-block-start:0;line-height:var(--font-lineheight-1);margin-block-end:var(--size-1)}p.post-date{font-size:var(--font-size-1);font-weight:var(--font-weight-2);color:var(--muted-color);font-style:italic;margin-block-start:0;line-height:var(--font-lineheight-1);margin-block-end:var(--size-1)}strong,b{background-image:var(--flavour-bold-gradient);background-clip:text;-webkit-background-clip:text;color:var(--flavour-bold-color-text);font-weight:var(--font-weight-strong)}del,s{position:relative;text-decoration:none}del::after,s::after{content:"";position:absolute;left:0;right:0;top:60%;height:1.5px;transform:translateY(-50%);background:var(--flavour-strikethrough-gradient, var(--text-color));opacity:var(--flavour-strikethrough-opacity, .7);pointer-events:none}a,:link{position:relative;color:var(--text-color);text-decoration:none;cursor:pointer}a::after,:link::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--flavour-link-gradient, var(--text-color));opacity:var(--flavour-link-opacity, .6);transition:opacity .2s ease,height .2s ease;pointer-events:none}a:hover::after,:link:hover::after{opacity:1;height:2px}a:visited,:link:visited{color:var(--text-color);cursor:pointer}.underscore{border-bottom:none !important;position:relative}.underscore::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--flavour-link-gradient, var(--text-color));opacity:var(--flavour-link-opacity, .6);pointer-events:none}:root{--light-text: var(--gray-8);--light-muted: var(--gray-6);--light-text-opp: var(--gray-1);--light-bg: #fff;--light-surface-1: var(--gray-1);--light-surface-2: var(--gray-2);--light-surface-3: var(--gray-3);--light-surface-4: var(--gray-4);--light-border: var(--gray-3);--light-border-sidenote: var(--gray-1);--light-mark-bg: var(--blue-1);--light-blockquote-bg: linear-gradient(135deg, #fff, #fafafb 75%, #fff);--dark-text: var(--gray-2);--dark-muted: var(--gray-6);--dark-text-opp: var(--gray-8);--dark-bg: var(--gray-9);--dark-surface-1: var(--gray-10);--dark-surface-2: var(--gray-7);--dark-surface-3: var(--gray-6);--dark-surface-4: var(--gray-5);--dark-border: var(--gray-7);--dark-border-sidenote: var(--gray-7);--dark-mark-bg: var(--blue-9);--dark-blockquote-bg: linear-gradient(135deg, var(--gray-9), var(--gray-10) 75%, var(--gray-9));--font-weight-strong: var(--font-weight-5);--flavour-header-gradient: none;--flavour-header-color-text: var(--text-color);--flavour-bold-gradient: none;--flavour-bold-color-text: var(--text-color);--flavour-strikethrough-gradient: none;--flavour-strikethrough-opacity: 0.7;--flavour-link-gradient: none;--flavour-link-opacity: 0.6}:root[color-scheme=light] .markdown-alert-note:before{background:linear-gradient(to bottom, var(--gray-3), var(--gray-4), var(--gray-5))}:root[color-scheme=light] .markdown-alert-tip:before{background:linear-gradient(to bottom, var(--gray-4), var(--gray-5), var(--gray-6))}:root[color-scheme=light] .markdown-alert-important:before{background:linear-gradient(to bottom, var(--gray-5), var(--gray-6), var(--gray-7))}:root[color-scheme=light] .markdown-alert-warning:before{background:linear-gradient(to bottom, var(--gray-6), var(--gray-7), var(--gray-6))}:root[color-scheme=light] .markdown-alert-caution:before{background:linear-gradient(to bottom, var(--gray-9), var(--gray-10), var(--gray-12))}@media (prefers-color-scheme: light){:root:not([color-scheme]) .markdown-alert-note:before{background:linear-gradient(to bottom, var(--gray-3), var(--gray-4), var(--gray-5))}:root:not([color-scheme]) .markdown-alert-tip:before{background:linear-gradient(to bottom, var(--gray-4), var(--gray-5), var(--gray-6))}:root:not([color-scheme]) .markdown-alert-important:before{background:linear-gradient(to bottom, var(--gray-5), var(--gray-6), var(--gray-7))}:root:not([color-scheme]) .markdown-alert-warning:before{background:linear-gradient(to bottom, var(--gray-6), var(--gray-7), var(--gray-6))}:root:not([color-scheme]) .markdown-alert-caution:before{background:linear-gradient(to bottom, var(--gray-9), var(--gray-10), var(--gray-12))}}:root[color-scheme=dark] .markdown-alert-note:before{background:linear-gradient(to bottom, var(--gray-8), var(--gray-7), var(--gray-8))}:root[color-scheme=dark] .markdown-alert-tip:before{background:linear-gradient(to bottom, var(--gray-7), var(--gray-7), var(--gray-8))}:root[color-scheme=dark] .markdown-alert-important:before{background:linear-gradient(to bottom, var(--gray-6), var(--gray-6), var(--gray-6))}:root[color-scheme=dark] .markdown-alert-warning:before{background:linear-gradient(to bottom, var(--gray-5), var(--gray-6), var(--gray-5))}:root[color-scheme=dark] .markdown-alert-caution:before{background:linear-gradient(to bottom, var(--gray-1), var(--gray-2), var(--gray-1))}@media (prefers-color-scheme: dark){:root:not([color-scheme]) .markdown-alert-note:before{background:linear-gradient(to bottom, var(--gray-8), var(--gray-7), var(--gray-8))}:root:not([color-scheme]) .markdown-alert-tip:before{background:linear-gradient(to bottom, var(--gray-7), var(--gray-7), var(--gray-8))}:root:not([color-scheme]) .markdown-alert-important:before{background:linear-gradient(to bottom, var(--gray-6), var(--gray-6), var(--gray-6))}:root:not([color-scheme]) .markdown-alert-warning:before{background:linear-gradient(to bottom, var(--gray-5), var(--gray-6), var(--gray-5))}:root:not([color-scheme]) .markdown-alert-caution:before{background:linear-gradient(to bottom, var(--gray-1), var(--gray-2), var(--gray-1))}}html[color-scheme=dark]{color-scheme:dark;--text-color: var(--dark-text);--muted-color: var(--dark-muted);--text-color-opposite: var(--dark-text-opp);--bg-color: var(--dark-bg);--surface-1: var(--dark-surface-1);--surface-2: var(--dark-surface-2);--surface-3: var(--dark-surface-3);--surface-4: var(--dark-surface-4);--border-color: var(--dark-border);--border-color-sidenote: var(--dark-border-sidenote);--mark-bg-color: var(--dark-mark-bg);--blockquote-bg-color: var(--dark-blockquote-bg)}html[color-scheme=light]{color-scheme:light;--text-color: var(--light-text);--muted-color: var(--light-muted);--text-color-opposite: var(--light-text-opp);--bg-color: var(--light-bg);--surface-1: var(--light-surface-1);--surface-2: var(--light-surface-2);--surface-3: var(--light-surface-3);--surface-4: var(--light-surface-4);--border-color: var(--light-border);--border-color-sidenote: var(--light-border-sidenote);--mark-bg-color: var(--light-mark-bg);--blockquote-bg-color: var(--light-blockquote-bg)}@media (prefers-color-scheme: dark){html:not([color-scheme]){color-scheme:dark;--text-color: var(--dark-text);--muted-color: var(--dark-muted);--text-color-opposite: var(--dark-text-opp);--bg-color: var(--dark-bg);--surface-1: var(--dark-surface-1);--surface-2: var(--dark-surface-2);--surface-3: var(--dark-surface-3);--surface-4: var(--dark-surface-4);--border-color: var(--dark-border);--border-color-sidenote: var(--dark-border-sidenote);--mark-bg-color: var(--dark-mark-bg);--blockquote-bg-color: var(--dark-blockquote-bg)}}@media (prefers-color-scheme: light){html:not([color-scheme]){color-scheme:light;--text-color: var(--light-text);--muted-color: var(--light-muted);--text-color-opposite: var(--light-text-opp);--bg-color: var(--light-bg);--surface-1: var(--light-surface-1);--surface-2: var(--light-surface-2);--surface-3: var(--light-surface-3);--surface-4: var(--light-surface-4);--border-color: var(--light-border);--border-color-sidenote: var(--light-border-sidenote);--mark-bg-color: var(--light-mark-bg);--blockquote-bg-color: var(--light-blockquote-bg)}}html[flavor=happy]{--accent-1: #ff63ca;--accent-2: #009fff;--accent-3: #12cfe3;--accent-4: #0a87d3;--flavour-header-gradient: linear-gradient(to right, var(--accent-1), var(--accent-2), var(--accent-3), var(--accent-4));--flavour-header-color-text: transparent;--flavour-strikethrough-gradient: linear-gradient(to right, var(--accent-1), var(--accent-2), var(--accent-3), var(--accent-4));--flavour-strikethrough-opacity: 1;--flavour-link-gradient: linear-gradient(to right, var(--accent-1), var(--accent-2), var(--accent-3), var(--accent-4));--flavour-link-opacity: 1;--font-weight-strong: var(--font-weight-4);--flavour-bold-gradient: var(--flavour-header-gradient);--flavour-bold-color-text: var(--flavour-header-color-text)}html[flavor=happy][color-scheme=light] .markdown-alert-note:before{background:linear-gradient(to bottom, rgba(232,240,243,.76), #dfe3e7)}html[flavor=happy][color-scheme=light] .markdown-alert-tip:before{background:linear-gradient(to bottom, rgba(22,188,240,.76), rgba(22,188,240,.71), #1ecfe3)}html[flavor=happy][color-scheme=light] .markdown-alert-important:before{background:linear-gradient(to bottom, #1ca0fc, rgba(39,164,252,.76), #c279d9 120%)}html[flavor=happy][color-scheme=light] .markdown-alert-warning:before{background:linear-gradient(to bottom, #f1e3a7, #fdf87b, #10aff8 110%)}html[flavor=happy][color-scheme=light] .markdown-alert-caution:before{background:linear-gradient(to bottom, #e84658, #f64287, #ef6ecf, #10aff8 120%)}@media (prefers-color-scheme: light){html[flavor=happy]:not([color-scheme]) .markdown-alert-note:before{background:linear-gradient(to bottom, rgba(232,240,243,.76), #dfe3e7)}html[flavor=happy]:not([color-scheme]) .markdown-alert-tip:before{background:linear-gradient(to bottom, rgba(22,188,240,.76), rgba(22,188,240,.71), #1ecfe3)}html[flavor=happy]:not([color-scheme]) .markdown-alert-important:before{background:linear-gradient(to bottom, #1ca0fc, rgba(39,164,252,.76), #c279d9 120%)}html[flavor=happy]:not([color-scheme]) .markdown-alert-warning:before{background:linear-gradient(to bottom, #f1e3a7, #fdf87b, #10aff8 110%)}html[flavor=happy]:not([color-scheme]) .markdown-alert-caution:before{background:linear-gradient(to bottom, #e84658, #f64287, #ef6ecf, #10aff8 120%)}}html[flavor=happy][color-scheme=dark] .markdown-alert-note:before{background:linear-gradient(to bottom, rgba(232,240,243,.76), #dfe3e7)}html[flavor=happy][color-scheme=dark] .markdown-alert-tip:before{background:linear-gradient(to bottom, rgba(22,188,240,.76), rgba(22,188,240,.71), #1ecfe3)}html[flavor=happy][color-scheme=dark] .markdown-alert-important:before{background:linear-gradient(to bottom, #1ca0fc, rgba(39,164,252,.76), #c279d9 120%)}html[flavor=happy][color-scheme=dark] .markdown-alert-warning:before{background:linear-gradient(to bottom, #f1e3a7, #fdf87b, #10aff8 110%)}html[flavor=happy][color-scheme=dark] .markdown-alert-caution:before{background:linear-gradient(to bottom, #e84658, #f64287, #ef6ecf, #10aff8 120%)}@media (prefers-color-scheme: dark){html[flavor=happy]:not([color-scheme]) .markdown-alert-note:before{background:linear-gradient(to bottom, rgba(232,240,243,.76), #dfe3e7)}html[flavor=happy]:not([color-scheme]) .markdown-alert-tip:before{background:linear-gradient(to bottom, rgba(22,188,240,.76), rgba(22,188,240,.71), #1ecfe3)}html[flavor=happy]:not([color-scheme]) .markdown-alert-important:before{background:linear-gradient(to bottom, #1ca0fc, rgba(39,164,252,.76), #c279d9 120%)}html[flavor=happy]:not([color-scheme]) .markdown-alert-warning:before{background:linear-gradient(to bottom, #f1e3a7, #fdf87b, #10aff8 110%)}html[flavor=happy]:not([color-scheme]) .markdown-alert-caution:before{background:linear-gradient(to bottom, #e84658, #f64287, #ef6ecf, #10aff8 120%)}}html[flavor=happy-headers]{--accent-1: #ff63ca;--accent-2: #009fff;--accent-3: #12cfe3;--accent-4: #0a87d3;--flavour-header-gradient: linear-gradient(to right, var(--accent-1), var(--accent-2), var(--accent-3), var(--accent-4));--flavour-header-color-text: transparent;--flavour-strikethrough-gradient: linear-gradient(to right, var(--accent-1), var(--accent-2), var(--accent-3), var(--accent-4));--flavour-strikethrough-opacity: 1;--flavour-link-gradient: linear-gradient(to right, var(--accent-1), var(--accent-2), var(--accent-3), var(--accent-4));--flavour-link-opacity: 1;--font-weight-strong: var(--font-weight-5);--flavour-bold-gradient: none;--flavour-bold-color-text: var(--text-color)}html[flavor=happy-headers][color-scheme=light] .markdown-alert-note:before{background:linear-gradient(to bottom, rgba(232,240,243,.76), #dfe3e7)}html[flavor=happy-headers][color-scheme=light] .markdown-alert-tip:before{background:linear-gradient(to bottom, rgba(22,188,240,.76), rgba(22,188,240,.71), #1ecfe3)}html[flavor=happy-headers][color-scheme=light] .markdown-alert-important:before{background:linear-gradient(to bottom, #1ca0fc, rgba(39,164,252,.76), #c279d9 120%)}html[flavor=happy-headers][color-scheme=light] .markdown-alert-warning:before{background:linear-gradient(to bottom, #f1e3a7, #fdf87b, #10aff8 110%)}html[flavor=happy-headers][color-scheme=light] .markdown-alert-caution:before{background:linear-gradient(to bottom, #e84658, #f64287, #ef6ecf, #10aff8 120%)}@media (prefers-color-scheme: light){html[flavor=happy-headers]:not([color-scheme]) .markdown-alert-note:before{background:linear-gradient(to bottom, rgba(232,240,243,.76), #dfe3e7)}html[flavor=happy-headers]:not([color-scheme]) .markdown-alert-tip:before{background:linear-gradient(to bottom, rgba(22,188,240,.76), rgba(22,188,240,.71), #1ecfe3)}html[flavor=happy-headers]:not([color-scheme]) .markdown-alert-important:before{background:linear-gradient(to bottom, #1ca0fc, rgba(39,164,252,.76), #c279d9 120%)}html[flavor=happy-headers]:not([color-scheme]) .markdown-alert-warning:before{background:linear-gradient(to bottom, #f1e3a7, #fdf87b, #10aff8 110%)}html[flavor=happy-headers]:not([color-scheme]) .markdown-alert-caution:before{background:linear-gradient(to bottom, #e84658, #f64287, #ef6ecf, #10aff8 120%)}}html[flavor=happy-headers][color-scheme=dark] .markdown-alert-note:before{background:linear-gradient(to bottom, rgba(232,240,243,.76), #dfe3e7)}html[flavor=happy-headers][color-scheme=dark] .markdown-alert-tip:before{background:linear-gradient(to bottom, rgba(22,188,240,.76), rgba(22,188,240,.71), #1ecfe3)}html[flavor=happy-headers][color-scheme=dark] .markdown-alert-important:before{background:linear-gradient(to bottom, #1ca0fc, rgba(39,164,252,.76), #c279d9 120%)}html[flavor=happy-headers][color-scheme=dark] .markdown-alert-warning:before{background:linear-gradient(to bottom, #f1e3a7, #fdf87b, #10aff8 110%)}html[flavor=happy-headers][color-scheme=dark] .markdown-alert-caution:before{background:linear-gradient(to bottom, #e84658, #f64287, #ef6ecf, #10aff8 120%)}@media (prefers-color-scheme: dark){html[flavor=happy-headers]:not([color-scheme]) .markdown-alert-note:before{background:linear-gradient(to bottom, rgba(232,240,243,.76), #dfe3e7)}html[flavor=happy-headers]:not([color-scheme]) .markdown-alert-tip:before{background:linear-gradient(to bottom, rgba(22,188,240,.76), rgba(22,188,240,.71), #1ecfe3)}html[flavor=happy-headers]:not([color-scheme]) .markdown-alert-important:before{background:linear-gradient(to bottom, #1ca0fc, rgba(39,164,252,.76), #c279d9 120%)}html[flavor=happy-headers]:not([color-scheme]) .markdown-alert-warning:before{background:linear-gradient(to bottom, #f1e3a7, #fdf87b, #10aff8 110%)}html[flavor=happy-headers]:not([color-scheme]) .markdown-alert-caution:before{background:linear-gradient(to bottom, #e84658, #f64287, #ef6ecf, #10aff8 120%)}}html[flavor=deep]{--accent-1: var(--pink-7);--accent-2: var(--blue-7);--accent-3: var(--cyan-7);--accent-4: var(--blue-8);--flavour-header-gradient: linear-gradient(to right, var(--accent-1), var(--accent-2), var(--accent-3), var(--accent-4));--flavour-header-color-text: transparent;--flavour-strikethrough-gradient: linear-gradient(to right, var(--accent-1), var(--accent-2), var(--accent-3), var(--accent-4));--flavour-strikethrough-opacity: 1;--flavour-link-gradient: linear-gradient(to right, var(--accent-1), var(--accent-2), var(--accent-3), var(--accent-4));--flavour-link-opacity: 1;--font-weight-strong: var(--font-weight-4);--flavour-bold-gradient: var(--flavour-header-gradient);--flavour-bold-color-text: var(--flavour-header-color-text)}html[flavor=deep][color-scheme=light] .markdown-alert-note:before{background:linear-gradient(to bottom, var(--blue-7), var(--blue-8), var(--blue-9))}html[flavor=deep][color-scheme=light] .markdown-alert-tip:before{background:linear-gradient(to bottom, var(--green-7), var(--green-8), var(--green-9))}html[flavor=deep][color-scheme=light] .markdown-alert-important:before{background:linear-gradient(to bottom, var(--purple-7), var(--purple-8), var(--purple-9))}html[flavor=deep][color-scheme=light] .markdown-alert-warning:before{background:linear-gradient(to bottom, var(--yellow-7), var(--yellow-8), var(--yellow-9))}html[flavor=deep][color-scheme=light] .markdown-alert-caution:before{background:linear-gradient(to bottom, var(--red-7), var(--red-8), var(--red-9))}@media (prefers-color-scheme: light){html[flavor=deep]:not([color-scheme]) .markdown-alert-note:before{background:linear-gradient(to bottom, var(--blue-7), var(--blue-8), var(--blue-9))}html[flavor=deep]:not([color-scheme]) .markdown-alert-tip:before{background:linear-gradient(to bottom, var(--green-7), var(--green-8), var(--green-9))}html[flavor=deep]:not([color-scheme]) .markdown-alert-important:before{background:linear-gradient(to bottom, var(--purple-7), var(--purple-8), var(--purple-9))}html[flavor=deep]:not([color-scheme]) .markdown-alert-warning:before{background:linear-gradient(to bottom, var(--yellow-7), var(--yellow-8), var(--yellow-9))}html[flavor=deep]:not([color-scheme]) .markdown-alert-caution:before{background:linear-gradient(to bottom, var(--red-7), var(--red-8), var(--red-9))}}html[flavor=deep][color-scheme=dark] .markdown-alert-note:before{background:linear-gradient(to bottom, var(--blue-7), var(--blue-8), var(--blue-9))}html[flavor=deep][color-scheme=dark] .markdown-alert-tip:before{background:linear-gradient(to bottom, var(--green-7), var(--green-8), var(--green-9))}html[flavor=deep][color-scheme=dark] .markdown-alert-important:before{background:linear-gradient(to bottom, var(--purple-7), var(--purple-8), var(--purple-9))}html[flavor=deep][color-scheme=dark] .markdown-alert-warning:before{background:linear-gradient(to bottom, var(--yellow-7), var(--yellow-8), var(--yellow-9))}html[flavor=deep][color-scheme=dark] .markdown-alert-caution:before{background:linear-gradient(to bottom, var(--red-7), var(--red-8), var(--red-9))}@media (prefers-color-scheme: dark){html[flavor=deep]:not([color-scheme]) .markdown-alert-note:before{background:linear-gradient(to bottom, var(--blue-7), var(--blue-8), var(--blue-9))}html[flavor=deep]:not([color-scheme]) .markdown-alert-tip:before{background:linear-gradient(to bottom, var(--green-7), var(--green-8), var(--green-9))}html[flavor=deep]:not([color-scheme]) .markdown-alert-important:before{background:linear-gradient(to bottom, var(--purple-7), var(--purple-8), var(--purple-9))}html[flavor=deep]:not([color-scheme]) .markdown-alert-warning:before{background:linear-gradient(to bottom, var(--yellow-7), var(--yellow-8), var(--yellow-9))}html[flavor=deep]:not([color-scheme]) .markdown-alert-caution:before{background:linear-gradient(to bottom, var(--red-7), var(--red-8), var(--red-9))}}html[flavor=deep-headers]{--accent-1: var(--pink-7);--accent-2: var(--blue-7);--accent-3: var(--cyan-7);--accent-4: var(--blue-8);--flavour-header-gradient: linear-gradient(to right, var(--accent-1), var(--accent-2), var(--accent-3), var(--accent-4));--flavour-header-color-text: transparent;--flavour-strikethrough-gradient: linear-gradient(to right, var(--accent-1), var(--accent-2), var(--accent-3), var(--accent-4));--flavour-strikethrough-opacity: 1;--flavour-link-gradient: linear-gradient(to right, var(--accent-1), var(--accent-2), var(--accent-3), var(--accent-4));--flavour-link-opacity: 1;--font-weight-strong: var(--font-weight-5);--flavour-bold-gradient: none;--flavour-bold-color-text: var(--text-color)}html[flavor=deep-headers][color-scheme=light] .markdown-alert-note:before{background:linear-gradient(to bottom, var(--blue-7), var(--blue-8), var(--blue-9))}html[flavor=deep-headers][color-scheme=light] .markdown-alert-tip:before{background:linear-gradient(to bottom, var(--green-7), var(--green-8), var(--green-9))}html[flavor=deep-headers][color-scheme=light] .markdown-alert-important:before{background:linear-gradient(to bottom, var(--purple-7), var(--purple-8), var(--purple-9))}html[flavor=deep-headers][color-scheme=light] .markdown-alert-warning:before{background:linear-gradient(to bottom, var(--yellow-7), var(--yellow-8), var(--yellow-9))}html[flavor=deep-headers][color-scheme=light] .markdown-alert-caution:before{background:linear-gradient(to bottom, var(--red-7), var(--red-8), var(--red-9))}@media (prefers-color-scheme: light){html[flavor=deep-headers]:not([color-scheme]) .markdown-alert-note:before{background:linear-gradient(to bottom, var(--blue-7), var(--blue-8), var(--blue-9))}html[flavor=deep-headers]:not([color-scheme]) .markdown-alert-tip:before{background:linear-gradient(to bottom, var(--green-7), var(--green-8), var(--green-9))}html[flavor=deep-headers]:not([color-scheme]) .markdown-alert-important:before{background:linear-gradient(to bottom, var(--purple-7), var(--purple-8), var(--purple-9))}html[flavor=deep-headers]:not([color-scheme]) .markdown-alert-warning:before{background:linear-gradient(to bottom, var(--yellow-7), var(--yellow-8), var(--yellow-9))}html[flavor=deep-headers]:not([color-scheme]) .markdown-alert-caution:before{background:linear-gradient(to bottom, var(--red-7), var(--red-8), var(--red-9))}}html[flavor=deep-headers][color-scheme=dark] .markdown-alert-note:before{background:linear-gradient(to bottom, var(--blue-7), var(--blue-8), var(--blue-9))}html[flavor=deep-headers][color-scheme=dark] .markdown-alert-tip:before{background:linear-gradient(to bottom, var(--green-7), var(--green-8), var(--green-9))}html[flavor=deep-headers][color-scheme=dark] .markdown-alert-important:before{background:linear-gradient(to bottom, var(--purple-7), var(--purple-8), var(--purple-9))}html[flavor=deep-headers][color-scheme=dark] .markdown-alert-warning:before{background:linear-gradient(to bottom, var(--yellow-7), var(--yellow-8), var(--yellow-9))}html[flavor=deep-headers][color-scheme=dark] .markdown-alert-caution:before{background:linear-gradient(to bottom, var(--red-7), var(--red-8), var(--red-9))}@media (prefers-color-scheme: dark){html[flavor=deep-headers]:not([color-scheme]) .markdown-alert-note:before{background:linear-gradient(to bottom, var(--blue-7), var(--blue-8), var(--blue-9))}html[flavor=deep-headers]:not([color-scheme]) .markdown-alert-tip:before{background:linear-gradient(to bottom, var(--green-7), var(--green-8), var(--green-9))}html[flavor=deep-headers]:not([color-scheme]) .markdown-alert-important:before{background:linear-gradient(to bottom, var(--purple-7), var(--purple-8), var(--purple-9))}html[flavor=deep-headers]:not([color-scheme]) .markdown-alert-warning:before{background:linear-gradient(to bottom, var(--yellow-7), var(--yellow-8), var(--yellow-9))}html[flavor=deep-headers]:not([color-scheme]) .markdown-alert-caution:before{background:linear-gradient(to bottom, var(--red-7), var(--red-8), var(--red-9))}}html[flavor=monochrome]{--font-weight-strong: var(--font-weight-5);--flavour-header-gradient: none;--flavour-header-color-text: var(--text-color);--flavour-bold-gradient: none;--flavour-bold-color-text: var(--text-color);--flavour-strikethrough-gradient: none;--flavour-strikethrough-opacity: 0.7;--flavour-link-gradient: none;--flavour-link-opacity: 0.6}html[flavor=monochrome][color-scheme=light] .markdown-alert-note:before{background:linear-gradient(to bottom, var(--gray-3), var(--gray-4), var(--gray-5))}html[flavor=monochrome][color-scheme=light] .markdown-alert-tip:before{background:linear-gradient(to bottom, var(--gray-4), var(--gray-5), var(--gray-6))}html[flavor=monochrome][color-scheme=light] .markdown-alert-important:before{background:linear-gradient(to bottom, var(--gray-5), var(--gray-6), var(--gray-7))}html[flavor=monochrome][color-scheme=light] .markdown-alert-warning:before{background:linear-gradient(to bottom, var(--gray-6), var(--gray-7), var(--gray-6))}html[flavor=monochrome][color-scheme=light] .markdown-alert-caution:before{background:linear-gradient(to bottom, var(--gray-9), var(--gray-10), var(--gray-12))}@media (prefers-color-scheme: light){html[flavor=monochrome]:not([color-scheme]) .markdown-alert-note:before{background:linear-gradient(to bottom, var(--gray-3), var(--gray-4), var(--gray-5))}html[flavor=monochrome]:not([color-scheme]) .markdown-alert-tip:before{background:linear-gradient(to bottom, var(--gray-4), var(--gray-5), var(--gray-6))}html[flavor=monochrome]:not([color-scheme]) .markdown-alert-important:before{background:linear-gradient(to bottom, var(--gray-5), var(--gray-6), var(--gray-7))}html[flavor=monochrome]:not([color-scheme]) .markdown-alert-warning:before{background:linear-gradient(to bottom, var(--gray-6), var(--gray-7), var(--gray-6))}html[flavor=monochrome]:not([color-scheme]) .markdown-alert-caution:before{background:linear-gradient(to bottom, var(--gray-9), var(--gray-10), var(--gray-12))}}html[flavor=monochrome][color-scheme=dark] .markdown-alert-note:before{background:linear-gradient(to bottom, var(--gray-8), var(--gray-7), var(--gray-8))}html[flavor=monochrome][color-scheme=dark] .markdown-alert-tip:before{background:linear-gradient(to bottom, var(--gray-7), var(--gray-7), var(--gray-8))}html[flavor=monochrome][color-scheme=dark] .markdown-alert-important:before{background:linear-gradient(to bottom, var(--gray-6), var(--gray-6), var(--gray-6))}html[flavor=monochrome][color-scheme=dark] .markdown-alert-warning:before{background:linear-gradient(to bottom, var(--gray-5), var(--gray-6), var(--gray-5))}html[flavor=monochrome][color-scheme=dark] .markdown-alert-caution:before{background:linear-gradient(to bottom, var(--gray-1), var(--gray-2), var(--gray-1))}@media (prefers-color-scheme: dark){html[flavor=monochrome]:not([color-scheme]) .markdown-alert-note:before{background:linear-gradient(to bottom, var(--gray-8), var(--gray-7), var(--gray-8))}html[flavor=monochrome]:not([color-scheme]) .markdown-alert-tip:before{background:linear-gradient(to bottom, var(--gray-7), var(--gray-7), var(--gray-8))}html[flavor=monochrome]:not([color-scheme]) .markdown-alert-important:before{background:linear-gradient(to bottom, var(--gray-6), var(--gray-6), var(--gray-6))}html[flavor=monochrome]:not([color-scheme]) .markdown-alert-warning:before{background:linear-gradient(to bottom, var(--gray-5), var(--gray-6), var(--gray-5))}html[flavor=monochrome]:not([color-scheme]) .markdown-alert-caution:before{background:linear-gradient(to bottom, var(--gray-1), var(--gray-2), var(--gray-1))}}.header-content{display:flex;justify-content:flex-end;margin-bottom:var(--size-2);max-width:var(--size-md);margin-left:auto;margin-right:auto}.nav-menu{display:flex;list-style:none;margin:0;padding:0;gap:var(--size-3)}.nav-item{margin:0}.nav-link{color:var(--gray-6);text-decoration:none;font-size:var(--font-size-1)}.nav-link::after{display:none}@media screen and (max-width: 768px){.nav-menu{flex-direction:column;align-items:flex-end;gap:var(--size-1)}}pre,.z-code{position:relative;margin:var(--size-fluid-3) 0;border-radius:16px;overflow:hidden;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(255,255,255,.15);box-shadow:0 8px 32px rgba(0,0,0,.1),0 1px 2px rgba(0,0,0,.1),inset 0 1px 0 rgba(255,255,255,.1);padding:16px 20px;overflow-x:auto;-webkit-overflow-scrolling:touch;transition:transform .2s ease,box-shadow .2s ease}pre[data-lang]:before,.z-code[data-lang]:before{content:attr(data-lang);position:absolute;top:12px;right:16px;background:rgba(255,255,255,.15);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);border-radius:12px;color:rgba(255,255,255,.8);font-size:11px;font-weight:600;line-height:1;letter-spacing:.5px;text-transform:uppercase;padding:4px 8px;transition:all .2s ease}pre[data-lang=javascript]:before,pre[data-lang=js]:before,.z-code[data-lang=javascript]:before,.z-code[data-lang=js]:before{content:"JavaScript"}pre[data-lang=typescript]:before,pre[data-lang=ts]:before,.z-code[data-lang=typescript]:before,.z-code[data-lang=ts]:before{content:"TypeScript"}pre[data-lang=python]:before,pre[data-lang=py]:before,.z-code[data-lang=python]:before,.z-code[data-lang=py]:before{content:"Python"}pre[data-lang=rust]:before,pre[data-lang=rs]:before,.z-code[data-lang=rust]:before,.z-code[data-lang=rs]:before{content:"Rust"}pre[data-lang=sass]:before,pre[data-lang=scss]:before,.z-code[data-lang=sass]:before,.z-code[data-lang=scss]:before{content:"Sass"}pre[data-lang=html]:before,.z-code[data-lang=html]:before{content:"HTML"}pre[data-lang=css]:before,.z-code[data-lang=css]:before{content:"CSS"}pre[data-lang=bash]:before,pre[data-lang=sh]:before,.z-code[data-lang=bash]:before,.z-code[data-lang=sh]:before{content:"Shell"}pre[data-lang=json]:before,.z-code[data-lang=json]:before{content:"JSON"}pre[data-lang=yaml]:before,pre[data-lang=yml]:before,.z-code[data-lang=yaml]:before,.z-code[data-lang=yml]:before{content:"YAML"}pre[data-lang=toml]:before,.z-code[data-lang=toml]:before{content:"TOML"}pre[data-lang=markdown]:before,pre[data-lang=md]:before,.z-code[data-lang=markdown]:before,.z-code[data-lang=md]:before{content:"Markdown"}@media (prefers-color-scheme: dark){pre,.z-code{border-color:rgba(255,255,255,.2)}pre:before,.z-code:before{background:rgba(0,0,0,.4);border-color:rgba(255,255,255,.2);color:rgba(255,255,255,.7)}}html[color-scheme=dark] pre,html[color-scheme=dark] .z-code{border-color:rgba(255,255,255,.2)}html[color-scheme=dark] pre:before,html[color-scheme=dark] .z-code:before{background:rgba(0,0,0,.4);border-color:rgba(255,255,255,.2);color:rgba(255,255,255,.7)}pre.mermaid{backdrop-filter:none;border:1px solid var(--border-color)}pre.mermaid:before{display:none}code{font-family:var(--code-font),monospace;background:rgba(255,255,255,.1);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);border-radius:6px;padding:2px 6px;font-size:.9em;color:var(--text-color)}@media (prefers-color-scheme: dark){code{background:rgba(0,0,0,.2);border-color:rgba(255,255,255,.25)}}html[color-scheme=dark] code{background:rgba(0,0,0,.2);border-color:rgba(255,255,255,.25)}pre code,.z-code code{background:rgba(0,0,0,0);backdrop-filter:none;border:none;padding:0;margin:var(--size-2) 0;font-size:var(--font-size-1);line-height:1.5;display:block}:root{--syntax-light-background: rgba(255, 255, 255, 0.02);--syntax-light-foreground: var(--gray-8);--syntax-light-comment: var(--gray-6);--syntax-light-string: #2d7d32;--syntax-light-operator: #5d4037;--syntax-light-variable: var(--gray-8);--syntax-light-constant: #e65100;--syntax-dark-background: rgba(0, 0, 0, 0.08);--syntax-dark-foreground: var(--gray-2);--syntax-dark-comment: var(--gray-6);--syntax-dark-string: var(--green-4);--syntax-dark-operator: var(--gray-4);--syntax-dark-variable: var(--gray-2);--syntax-dark-constant: var(--orange-4)}html[color-scheme=light]{--syntax-background: var(--syntax-light-background);--syntax-foreground: var(--syntax-light-foreground);--syntax-comment: var(--syntax-light-comment);--syntax-string: var(--syntax-light-string);--syntax-operator: var(--syntax-light-operator);--syntax-variable: var(--syntax-light-variable);--syntax-constant: var(--syntax-light-constant);--syntax-keyword: var(--accent-1);--syntax-function: var(--accent-2);--syntax-number: var(--accent-3);--syntax-type: var(--accent-4)}html[color-scheme=dark]{--syntax-background: var(--syntax-dark-background);--syntax-foreground: var(--syntax-dark-foreground);--syntax-comment: var(--syntax-dark-comment);--syntax-string: var(--syntax-dark-string);--syntax-operator: var(--syntax-dark-operator);--syntax-variable: var(--syntax-dark-variable);--syntax-constant: var(--syntax-dark-constant);--syntax-keyword: var(--accent-1);--syntax-function: var(--accent-2);--syntax-number: var(--accent-3);--syntax-type: var(--accent-4)}@media (prefers-color-scheme: light){html:not([color-scheme]){--syntax-background: var(--syntax-light-background);--syntax-foreground: var(--syntax-light-foreground);--syntax-comment: var(--syntax-light-comment);--syntax-string: var(--syntax-light-string);--syntax-operator: var(--syntax-light-operator);--syntax-variable: var(--syntax-light-variable);--syntax-constant: var(--syntax-light-constant);--syntax-keyword: var(--accent-1);--syntax-function: var(--accent-2);--syntax-number: var(--accent-3);--syntax-type: var(--accent-4)}}@media (prefers-color-scheme: dark){html:not([color-scheme]){--syntax-background: var(--syntax-dark-background);--syntax-foreground: var(--syntax-dark-foreground);--syntax-comment: var(--syntax-dark-comment);--syntax-string: var(--syntax-dark-string);--syntax-operator: var(--syntax-dark-operator);--syntax-variable: var(--syntax-dark-variable);--syntax-constant: var(--syntax-dark-constant);--syntax-keyword: var(--accent-1);--syntax-function: var(--accent-2);--syntax-number: var(--accent-3);--syntax-type: var(--accent-4)}}html[flavor=monochrome]{--syntax-keyword: var(--text-color);--syntax-function: var(--muted-color);--syntax-number: var(--text-color);--syntax-type: var(--muted-color)}.z-code{color:var(--syntax-foreground);background-color:var(--syntax-background)}.z-keyword,.z-storage.z-type,.z-storage.z-modifier,.z-keyword.z-control{color:var(--syntax-keyword);font-weight:600}.z-keyword.z-operator,.z-punctuation.z-terminator,.z-punctuation.z-separator,.z-punctuation.z-accessor{color:var(--syntax-operator)}.z-entity.z-name.z-function,.z-support.z-function,.z-meta.z-function-call .z-entity.z-name.z-function,.z-support.z-function.z-any-method,.z-meta.z-method.z-declaration .z-entity.z-name.z-function{color:var(--syntax-function)}.z-meta.z-function-call .z-variable.z-function,.z-meta.z-method.z-declaration .z-variable.z-object{color:var(--syntax-function)}.z-constant.z-numeric,.z-constant.z-numeric.z-css,.z-keyword.z-other.z-unit{color:var(--syntax-number)}.z-constant.z-language,.z-constant.z-boolean{color:var(--syntax-number);font-weight:600}.z-constant.z-other,.z-variable.z-other.z-constant,.z-support.z-constant{color:var(--syntax-constant);font-weight:600}.z-entity.z-name.z-class,.z-entity.z-name.z-type.z-class,.z-support.z-class,.z-entity.z-name.z-type,.z-support.z-type,.z-support.z-type.z-primitive{color:var(--syntax-type)}.z-entity.z-other.z-inherited-class,.z-entity.z-name.z-namespace{color:var(--syntax-type)}.z-variable,.z-variable.z-parameter,.z-variable.z-other.z-property,.z-variable.z-other.z-readwrite.z-instance{color:var(--syntax-variable)}.z-variable.z-language,.z-variable.z-other.z-constant,.z-constant.z-other.z-symbol,.z-support.z-constant{color:var(--syntax-type)}.z-string,.z-string .z-source,.z-string .z-meta.z-embedded.z-line,.z-string.z-regexp,.z-markup.z-raw.z-inline,.z-markup.z-raw.z-block{color:var(--syntax-string)}.z-string.z-other.z-link{color:var(--syntax-function);text-decoration:underline}.z-string .z-constant.z-character.z-escape,.z-string.z-regexp .z-constant.z-character.z-escape{color:var(--syntax-number)}.z-comment,.z-punctuation.z-definition.z-comment,.z-meta.z-preprocessor,.z-meta.z-pragma{color:var(--syntax-comment);font-style:italic}.z-entity.z-name.z-tag,.z-punctuation.z-definition.z-tag{color:var(--syntax-type)}.z-entity.z-other.z-attribute-name,.z-entity.z-other.z-attribute-name.z-id{color:var(--syntax-function)}.z-punctuation.z-definition.z-entity{color:var(--syntax-keyword)}.z-meta.z-selector .z-entity.z-name.z-tag,.z-meta.z-selector .z-entity.z-other.z-attribute-name.z-class{color:var(--syntax-type)}.z-meta.z-selector .z-entity.z-other.z-attribute-name.z-id{color:var(--syntax-function)}.z-meta.z-selector .z-entity.z-other.z-attribute-name.z-pseudo-class,.z-meta.z-selector .z-entity.z-other.z-attribute-name.z-pseudo-element{color:var(--syntax-function)}.z-support.z-type.z-property-name{color:var(--syntax-keyword)}.z-support.z-constant.z-property-value,.z-constant.z-other.z-color{color:var(--syntax-variable)}.z-support.z-function.z-misc{color:var(--syntax-type)}.z-meta.z-import,.z-meta.z-require{color:var(--syntax-keyword)}.z-storage.z-type.z-function.z-arrow,.z-storage.z-type.z-function{color:var(--syntax-keyword)}.z-variable.z-other.z-property.z-js,.z-meta.z-object.z-member .z-meta.z-property-name,.z-variable.z-object.z-property{color:var(--syntax-function)}.z-string.z-template .z-punctuation.z-definition.z-string.z-template,.z-punctuation.z-definition.z-template-expression{color:var(--syntax-operator)}.z-meta.z-decorator .z-entity.z-name.z-function,.z-meta.z-decorator .z-punctuation.z-decorator{color:var(--syntax-type)}.z-variable.z-language.z-self.z-python,.z-variable.z-parameter.z-function.z-language.z-special.z-self.z-python{color:var(--syntax-type);font-style:italic}.z-meta.z-fstring .z-punctuation.z-definition.z-string,.z-meta.z-fstring .z-punctuation.z-section.z-interpolation{color:var(--syntax-operator)}.z-meta.z-annotation .z-entity.z-name.z-type{color:var(--syntax-type)}.z-punctuation.z-bracket.z-angle,.z-storage.z-type.z-generic{color:var(--syntax-operator)}.z-storage.z-type.z-rust,.z-keyword.z-other.z-rust{color:var(--syntax-keyword)}.z-storage.z-modifier.z-lifetime.z-rust,.z-entity.z-name.z-lifetime.z-rust{color:var(--syntax-function);font-style:italic}.z-support.z-macro.z-rust,.z-entity.z-name.z-macro.z-rust{color:var(--syntax-constant)}.z-keyword.z-type.z-go,.z-keyword.z-function.z-go{color:var(--syntax-keyword)}.z-keyword.z-package.z-go,.z-keyword.z-import.z-go{color:var(--syntax-keyword)}.z-keyword.z-interface.z-go,.z-keyword.z-struct.z-go{color:var(--syntax-type)}.z-punctuation.z-definition.z-variable.z-php,.z-variable.z-other.z-php{color:var(--syntax-variable)}.z-keyword.z-other.z-class.z-php,.z-storage.z-type.z-class.z-php{color:var(--syntax-type)}.z-entity.z-name.z-namespace.z-php,.z-keyword.z-other.z-namespace.z-php{color:var(--syntax-type)}.z-entity.z-name.z-type.z-terraform,.z-keyword.z-other.z-terraform{color:var(--syntax-type)}.z-entity.z-name.z-function.z-terraform{color:var(--syntax-function)}.z-variable.z-other.z-terraform{color:var(--syntax-variable)}.z-entity.z-name.z-resource.z-terraform,.z-entity.z-name.z-data-source.z-terraform{color:var(--syntax-type);font-weight:600}.z-meta.z-structure.z-dictionary.z-json .z-string.z-quoted.z-double.z-key{color:var(--syntax-function)}.z-meta.z-structure.z-dictionary.z-value.z-json .z-constant.z-language,.z-meta.z-structure.z-array.z-json .z-constant.z-language{color:var(--syntax-number)}.z-entity.z-name.z-tag.z-yaml{color:var(--syntax-function)}.z-string.z-unquoted.z-key.z-yaml{color:var(--syntax-function)}.z-string.z-unquoted.z-block.z-yaml,.z-string.z-quoted.z-double.z-yaml,.z-string.z-quoted.z-single.z-yaml{color:var(--syntax-string)}.z-variable.z-other.z-alias.z-yaml{color:var(--syntax-type)}.z-markup.z-heading,.z-markup.z-heading .z-entity.z-name.z-section{color:var(--syntax-type);font-weight:700}.z-markup.z-heading .z-punctuation.z-definition.z-heading{color:var(--syntax-type)}.z-markup.z-bold{color:var(--syntax-variable);font-weight:700}.z-markup.z-italic{color:var(--syntax-function);font-style:italic}.z-punctuation.z-definition.z-bold,.z-punctuation.z-definition.z-italic{color:var(--syntax-keyword)}.z-markup.z-list .z-punctuation.z-definition.z-list_item{color:var(--syntax-keyword)}.z-markup.z-quote{color:var(--syntax-comment);font-style:italic}.z-meta.z-link .z-entity.z-name,.z-string.z-other.z-link.z-title{color:var(--syntax-function)}.z-markup.z-inserted,.z-markup.z-inserted.z-git_gutter{color:var(--green-6)}.z-markup.z-deleted,.z-markup.z-deleted.z-git_gutter{color:var(--red-6)}.z-markup.z-changed,.z-markup.z-changed.z-git_gutter{color:var(--yellow-6)}.z-markup.z-ignored,.z-markup.z-untracked{color:var(--syntax-comment)}.z-invalid.z-illegal{color:var(--syntax-foreground);background-color:var(--red-6);font-weight:700}.z-invalid.z-deprecated{text-decoration:line-through;color:var(--syntax-comment)}.z-code code table tbody tr td:first-child{background-color:var(--surface-2);color:var(--syntax-comment);padding-right:1em;text-align:right;user-select:none;-webkit-user-select:none;-moz-user-select:none}.z-code code table{border-collapse:collapse;width:100%}.z-code code table tbody tr td{vertical-align:top;padding-left:.5em}.z-code code table tbody tr td:first-child{padding-left:1em;padding-right:1em}.z-comment.z-line.z-double-slash .z-storage.z-type.z-class,.z-comment.z-block.z-documentation .z-storage.z-type.z-class{color:var(--syntax-number);font-weight:700}pre[data-lang=terraform]:before,pre[data-lang=tf]:before,.z-code[data-lang=terraform]:before,.z-code[data-lang=tf]:before{content:"Terraform"}pre[data-lang=go]:before,.z-code[data-lang=go]:before{content:"Go"}pre[data-lang=php]:before,.z-code[data-lang=php]:before{content:"PHP"}pre[data-lang=java]:before,.z-code[data-lang=java]:before{content:"Java"}@media (prefers-contrast: high){:root{--syntax-comment: var(--gray-7)}html[color-scheme=dark]{--syntax-comment: var(--gray-5)}}@media (prefers-reduced-motion: reduce){.z-code,pre{transition:none}}@media (max-width: 768px){.z-code code table tbody tr td:first-child{padding-left:.5em;padding-right:.5em;font-size:.9em}}table{width:100%;border-collapse:collapse;margin:var(--size-fluid-2) 0;font-size:var(--font-size-1);line-height:var(--font-lineheight-2);background:var(--bg-color);border:var(--border-size-1) solid var(--border-color);border-radius:var(--radius-2);overflow:hidden}table thead{background:var(--surface-1)}table thead th{padding:var(--size-2) var(--size-3);text-align:left;font-weight:var(--font-weight-3);color:var(--text-color);border-bottom:var(--border-size-1) solid var(--border-color)}table thead th.numeric{text-align:right}table tbody tr:nth-child(even){background:rgba(0,0,0,0)}table tbody tr:hover{background:var(--surface-1)}table tbody tr td{padding:var(--size-2) var(--size-3);border-bottom:var(--border-size-1) solid var(--border-color);vertical-align:top;color:var(--text-color)}tr:last-child table tbody tr td{border-bottom:none}table tbody tr td.numeric{text-align:right;font-variant-numeric:tabular-nums}table tbody tr td code{font-size:var(--font-size-0);background:var(--surface-2);padding:var(--size-1) var(--size-2);border-radius:var(--radius-1)}@media screen and (max-width: 768px){table{font-size:var(--font-size-0)}table th,table td{padding:var(--size-1) var(--size-2)}}@media screen and (max-width: 480px){table{font-size:var(--font-size-00)}table th,table td{padding:var(--size-1)}table.responsive-stack thead{display:none}table.responsive-stack tbody,table.responsive-stack tr,table.responsive-stack td{display:block}table.responsive-stack tr{margin-bottom:var(--size-3);border:var(--border-size-1) solid var(--border-color);border-radius:var(--radius-2);padding:var(--size-2)}table.responsive-stack td{border-bottom:none;position:relative;padding-left:30%}table.responsive-stack td:before{content:attr(data-label) ": ";position:absolute;left:var(--size-2);width:25%;font-weight:var(--font-weight-3);color:var(--muted-color)}}.table-compact{margin:var(--size-fluid-1) 0}.table-compact th,.table-compact td{padding:var(--size-1) var(--size-2)}.table-striped tbody tr:nth-child(odd){background:var(--surface-1)}.table-bordered th,.table-bordered td{border:var(--border-size-1) solid var(--border-color)}.wide table{margin:0 auto}.wide table th,.wide table td{padding:var(--size-2) var(--size-4)}@media screen and (max-width: 1024px){.wide table th,.wide table td{padding:var(--size-2) var(--size-3)}}:root{--footnote-width: var(--size-13);--footnote-margin: var(--size-fluid-2)}.footnote-definition{float:right;clear:right;z-index:var(--layer-1);width:var(--sidenote-width);margin:var(--size-2) calc(-1*var(--sidenote-width) - var(--sidenote-gap)) var(--size-2) var(--size-2);padding:var(--size-3) var(--size-2);border-left:.5px solid var(--border-color-sidenote);transition:opacity .3s ease}.footnote-definition[id*=left]{float:left;clear:left;margin:var(--size-2) var(--size-2) var(--size-2) calc(-1*var(--sidenote-width) - var(--sidenote-gap));border-left:none;border-right:.5px solid var(--border-color-sidenote);text-align:right}.footnote-definition *{color:var(--muted-color);font-size:var(--font-size-0);font-weight:var(--font-weight-2);line-height:var(--font-lineheight-1)}.footnote-definition ol,.footnote-definition ul{padding-inline-start:var(--size-2)}.footnote-definition ol[id*=left] .footnote-definition ol,.footnote-definition ol[id*=left] .footnote-definition ul,.footnote-definition ul[id*=left] .footnote-definition ol,.footnote-definition ul[id*=left] .footnote-definition ul{padding-inline-start:0;padding-inline-end:var(--size-2)}.footnote-definition code{padding:0}.footnote-definition img{margin:var(--size-1) 0;box-shadow:var(--shadow-4);max-width:100%}.footnote-definition p{margin:var(--size-2) 0}.footnote-definition p:first-of-type{margin-top:0}.footnote-definition p:last-of-type{margin-bottom:0}.footnote-definition sup.footnote-definition-label{color:var(--muted-color);line-height:var(--font-lineheight-1);display:none;margin-left:-.7rem;position:relative;left:-.01rem}sup.footnote-reference{font-size:var(--font-size-0);line-height:var(--font-lineheight-1);color:var(--muted-color);position:relative;left:-.01rem;margin-left:-2px}sup.footnote-reference :link{text-decoration:none;color:var(--text-color);cursor:pointer;position:relative;transition:color .15s ease}sup.footnote-reference:hover :link{color:var(--blue-6)}sup.footnote-reference :visited{color:var(--text-color)}@media screen and (min-width: 768px) and (max-width: 1023px){.footnote-definition,.footnote-definition[id*=left],.footnote-definition:not([id*=left]){float:right !important;clear:right !important;width:200px;margin:var(--size-2) var(--size-2) var(--size-2) var(--size-3);padding:var(--size-3) var(--size-2);border-left:.5px solid var(--border-color-sidenote) !important;border-right:none !important;background:none;border-radius:0;box-shadow:none;text-align:left !important}.footnote-definition *,.footnote-definition[id*=left] *,.footnote-definition:not([id*=left]) *{color:var(--muted-color);font-size:var(--font-size-0);font-weight:var(--font-weight-2);line-height:var(--font-lineheight-1)}.footnote-definition ol,.footnote-definition ul,.footnote-definition[id*=left] ol,.footnote-definition[id*=left] ul,.footnote-definition:not([id*=left]) ol,.footnote-definition:not([id*=left]) ul{padding-inline-start:var(--size-2);text-align:left !important}.footnote-definition code,.footnote-definition[id*=left] code,.footnote-definition:not([id*=left]) code{padding:0}.footnote-definition img,.footnote-definition[id*=left] img,.footnote-definition:not([id*=left]) img{margin:var(--size-1) 0;box-shadow:var(--shadow-4);max-width:100%}.footnote-definition p,.footnote-definition[id*=left] p,.footnote-definition:not([id*=left]) p{margin:var(--size-2) 0}.footnote-definition p:first-of-type,.footnote-definition[id*=left] p:first-of-type,.footnote-definition:not([id*=left]) p:first-of-type{margin-top:0}.footnote-definition p:last-of-type,.footnote-definition[id*=left] p:last-of-type,.footnote-definition:not([id*=left]) p:last-of-type{margin-bottom:0}.footnote-definition sup.footnote-definition-label,.footnote-definition[id*=left] sup.footnote-definition-label,.footnote-definition:not([id*=left]) sup.footnote-definition-label{display:inline;color:var(--muted-color);line-height:var(--font-lineheight-1);margin:0 var(--size-1) 0 0;position:relative;left:0}}@media screen and (max-width: 767px){.footnote-definition,.footnote-definition[id*=left],.footnote-definition:not([id*=left]){float:none !important;clear:none !important;position:static;display:block;width:auto;max-width:none;margin:var(--size-fluid-2) 0;padding:var(--size-3) var(--size-3) var(--size-3) var(--size-4);background:none;border:none;border-left:3px solid var(--border-color-sidenote);border-radius:0;box-shadow:none;text-align:left}.footnote-definition>*,.footnote-definition p,.footnote-definition li,.footnote-definition span,.footnote-definition strong,.footnote-definition em,.footnote-definition code,.footnote-definition[id*=left]>*,.footnote-definition[id*=left] p,.footnote-definition[id*=left] li,.footnote-definition[id*=left] span,.footnote-definition[id*=left] strong,.footnote-definition[id*=left] em,.footnote-definition[id*=left] code,.footnote-definition:not([id*=left])>*,.footnote-definition:not([id*=left]) p,.footnote-definition:not([id*=left]) li,.footnote-definition:not([id*=left]) span,.footnote-definition:not([id*=left]) strong,.footnote-definition:not([id*=left]) em,.footnote-definition:not([id*=left]) code{color:var(--muted-color);font-size:var(--font-size-0);font-weight:var(--font-weight-2);line-height:var(--font-lineheight-1)}.footnote-definition p,.footnote-definition[id*=left] p,.footnote-definition:not([id*=left]) p{margin:var(--size-2) 0}.footnote-definition p:first-of-type,.footnote-definition[id*=left] p:first-of-type,.footnote-definition:not([id*=left]) p:first-of-type{margin-top:0}.footnote-definition p:last-of-type,.footnote-definition[id*=left] p:last-of-type,.footnote-definition:not([id*=left]) p:last-of-type{margin-bottom:0}.footnote-definition sup.footnote-definition-label,.footnote-definition[id*=left] sup.footnote-definition-label,.footnote-definition:not([id*=left]) sup.footnote-definition-label{display:inline;background:none;color:var(--muted-color);font-size:var(--font-size-0);font-weight:var(--font-weight-4);margin:0 var(--size-1) 0 0;line-height:var(--font-lineheight-1)}.footnote-definition code,.footnote-definition[id*=left] code,.footnote-definition:not([id*=left]) code{background-color:var(--surface-1);padding:var(--size-1) var(--size-1);border-radius:var(--radius-1)}.footnote-definition ol,.footnote-definition ul,.footnote-definition[id*=left] ol,.footnote-definition[id*=left] ul,.footnote-definition:not([id*=left]) ol,.footnote-definition:not([id*=left]) ul{margin:var(--size-2) 0;padding-inline-start:var(--size-3);text-align:left}.footnote-definition ol li,.footnote-definition ul li,.footnote-definition[id*=left] ol li,.footnote-definition[id*=left] ul li,.footnote-definition:not([id*=left]) ol li,.footnote-definition:not([id*=left]) ul li{margin-bottom:var(--size-1)}.footnote-definition img,.footnote-definition[id*=left] img,.footnote-definition:not([id*=left]) img{border-radius:var(--radius-1);margin:var(--size-2) 0}}@media screen and (max-width: 480px){.footnote-definition,.footnote-definition[id*=left],.footnote-definition:not([id*=left]){margin:var(--size-fluid-1) 0;padding:var(--size-2) var(--size-2) var(--size-2) var(--size-3);border-left-width:2px}}@media (prefers-reduced-motion: reduce){.footnote-definition{transition:none}.footnote-definition:hover{transform:none}}.footnote-definition:target{border-left-color:var(--blue-6);border-left-width:4px}.footnote-reference:hover{background:color-mix(in srgb, var(--accent-1, var(--blue-6)) 15%, rgba(0,0,0,0));border-radius:var(--radius-1);transition:background .15s ease}.sidenote-highlighted{border-left-color:var(--accent-1, var(--blue-6)) !important;border-left-width:3px !important;background:color-mix(in srgb, var(--accent-1, var(--blue-6)) 8%, rgba(0,0,0,0))}html[flavor=happy] .footnote-reference:hover,html[flavor=happy-headers] .footnote-reference:hover{background:color-mix(in srgb, var(--pink-6) 12%, rgba(0,0,0,0))}html[flavor=deep] .footnote-reference:hover,html[flavor=deep-headers] .footnote-reference:hover{background:color-mix(in srgb, var(--indigo-6) 10%, rgba(0,0,0,0))}html[flavor=happy] .sidenote-highlighted,html[flavor=happy-headers] .sidenote-highlighted{border-left-color:var(--pink-6) !important;background:color-mix(in srgb, var(--pink-6) 8%, rgba(0,0,0,0))}html[flavor=deep] .sidenote-highlighted,html[flavor=deep-headers] .sidenote-highlighted{border-left-color:var(--indigo-6) !important;background:color-mix(in srgb, var(--indigo-6) 6%, rgba(0,0,0,0))}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}@media print{.footnote-definition,.footnote-definition[id*=left],.footnote-definition:not([id*=left]){position:static;right:unset;left:unset;float:none;clear:none;width:100%;margin:var(--size-2) 0;padding:var(--size-2) var(--size-3);border:none;border-left:1px solid var(--gray-5);border-radius:0;background:none;box-shadow:none;page-break-inside:avoid}.footnote-definition sup.footnote-definition-label,.footnote-definition[id*=left] sup.footnote-definition-label,.footnote-definition:not([id*=left]) sup.footnote-definition-label{display:inline;background:none;color:var(--text-color);border-radius:0;width:auto;height:auto;box-shadow:none;float:none;font-weight:var(--font-weight-4);left:0}}@keyframes pulse{0%{opacity:.7;transform:scaleY(.98)}100%{opacity:1;transform:scaleY(1)}}.markdown-alert-note{position:relative;padding:var(--size-4) var(--size-4) var(--size-4) var(--size-6);border-radius:var(--radius-2);border-width:0;border-left:none;overflow:hidden;box-shadow:var(--shadow-6);backdrop-filter:blur(4px);transition:transform .15s ease,box-shadow .15s ease}.markdown-alert-note:before{content:"";position:absolute;left:0;top:0;bottom:0;width:var(--border-size-2);box-shadow:var(--shadow-6);z-index:2;animation:pulse 3s infinite alternate}.markdown-alert-note:after{content:"";position:absolute;left:var(--border-size-2);top:0;bottom:0;width:var(--size-3);z-index:1;pointer-events:none;backdrop-filter:blur(2px);opacity:.6}.markdown-alert-tip{position:relative;padding:var(--size-4) var(--size-4) var(--size-4) var(--size-6);border-radius:var(--radius-2);border-width:0;border-left:none;overflow:hidden;box-shadow:var(--shadow-6);backdrop-filter:blur(4px);transition:transform .15s ease,box-shadow .15s ease}.markdown-alert-tip:before{content:"";position:absolute;left:0;top:0;bottom:0;width:var(--border-size-2);box-shadow:var(--shadow-6);z-index:2;animation:pulse 3s infinite alternate}.markdown-alert-tip:after{content:"";position:absolute;left:var(--border-size-2);top:0;bottom:0;width:var(--size-3);z-index:1;pointer-events:none;backdrop-filter:blur(2px);opacity:.6}.markdown-alert-important{position:relative;padding:var(--size-4) var(--size-4) var(--size-4) var(--size-6);border-radius:var(--radius-2);border-width:0;border-left:none;overflow:hidden;box-shadow:var(--shadow-6);backdrop-filter:blur(4px);transition:transform .15s ease,box-shadow .15s ease}.markdown-alert-important:before{content:"";position:absolute;left:0;top:0;bottom:0;width:var(--border-size-2);box-shadow:var(--shadow-6);z-index:2;animation:pulse 3s infinite alternate}.markdown-alert-important:after{content:"";position:absolute;left:var(--border-size-2);top:0;bottom:0;width:var(--size-3);z-index:1;pointer-events:none;backdrop-filter:blur(2px);opacity:.6}.markdown-alert-warning{position:relative;padding:var(--size-4) var(--size-4) var(--size-4) var(--size-6);border-radius:var(--radius-2);border-width:0;border-left:none;overflow:hidden;box-shadow:var(--shadow-6);backdrop-filter:blur(4px);transition:transform .15s ease,box-shadow .15s ease}.markdown-alert-warning:before{content:"";position:absolute;left:0;top:0;bottom:0;width:var(--border-size-2);box-shadow:var(--shadow-6);z-index:2;animation:pulse 3s infinite alternate}.markdown-alert-warning:after{content:"";position:absolute;left:var(--border-size-2);top:0;bottom:0;width:var(--size-3);z-index:1;pointer-events:none;backdrop-filter:blur(2px);opacity:.6}.markdown-alert-caution{position:relative;padding:var(--size-4) var(--size-4) var(--size-4) var(--size-6);border-radius:var(--radius-2);border-width:0;border-left:none;overflow:hidden;box-shadow:var(--shadow-6);backdrop-filter:blur(4px);transition:transform .15s ease,box-shadow .15s ease}.markdown-alert-caution:before{content:"";position:absolute;left:0;top:0;bottom:0;width:var(--border-size-2);box-shadow:var(--shadow-6);z-index:2;animation:pulse 3s infinite alternate}.markdown-alert-caution:after{content:"";position:absolute;left:var(--border-size-2);top:0;bottom:0;width:var(--size-3);z-index:1;pointer-events:none;backdrop-filter:blur(2px);opacity:.6}blockquote{border-left:var(--border-size-1) solid var(--border-color);padding:var(--size-fluid-2);margin:var(--size-fluid-3) 0}blockquote cite{display:block;margin-top:var(--size-fluid-2);font-style:normal;text-align:right}blockquote cite::before{content:"— "}blockquote p{margin:0}@keyframes folded-pulse{0%{opacity:.7;transform:scaleX(.98)}100%{opacity:1;transform:scaleX(1)}}.folded{position:relative;margin:var(--size-2) 0;background:var(--surface-1);border-radius:var(--radius-1)}.folded .folded-header{padding:var(--size-3) var(--size-4);cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-size:var(--font-size-1);font-weight:var(--font-weight-4);line-height:var(--font-lineheight-2);color:var(--text-2);user-select:none}.folded .folded-header .folded-arrow{color:var(--text-3);font-size:var(--font-size-0);font-weight:var(--font-weight-6);line-height:1;transition:transform .3s ease}.folded .folded-content{max-height:0;overflow:hidden;padding:0 var(--size-4);opacity:0;background:var(--surface-1);transition:max-height .45s ease-in-out,padding .3s ease,opacity .3s ease}.folded .folded-content p:first-child{margin-top:0}.folded .folded-content p:last-child{margin-bottom:0}.folded.active .folded-header{color:var(--text-1)}.folded.active .folded-arrow{transform:rotate(180deg);color:var(--text-2)}.folded.active .folded-content{max-height:2000px;padding:var(--size-3) var(--size-4) var(--size-4) var(--size-4);opacity:1;overflow:auto}@media screen and (max-width: 768px){.folded{margin:var(--size-1) 0}.folded .folded-header{padding:var(--size-2) var(--size-3)}}.theme-switcher{position:fixed;top:0;left:0;right:0;z-index:1000;background:var(--surface-1);backdrop-filter:blur(10px);border-bottom:1px solid var(--border-color);padding:var(--size-2) var(--size-4);box-shadow:var(--shadow-2);transform:translateY(0);transition:transform .3s cubic-bezier(.4, 0, .2, 1),opacity .3s ease;opacity:1}.theme-switcher.hidden{transform:translateY(-100%);opacity:0}.theme-switcher .switcher-content{max-width:var(--size-content-3);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:var(--size-4)}.theme-switcher .switcher-section{display:flex;align-items:center;gap:var(--size-2)}.theme-switcher .switcher-label{font-size:var(--font-size-0);font-weight:var(--font-weight-3);color:var(--text-2);margin-right:var(--size-1)}.theme-switcher .switcher-buttons{display:flex;gap:var(--size-1)}.theme-switcher .switcher-button{background:var(--surface-2);border:1px solid var(--border-color);border-radius:var(--radius-2);padding:var(--size-1) var(--size-2);font-size:var(--font-size-0);color:var(--text-2);cursor:pointer;transition:all .2s ease;text-decoration:none;user-select:none}.theme-switcher .switcher-button:hover{background:var(--surface-3);color:var(--text-1)}.theme-switcher .switcher-button.active{background:var(--accent-1);color:var(--gray-0);border-color:var(--accent-1)}.theme-switcher .close-switcher{background:none;border:none;font-size:var(--font-size-2);color:var(--text-2);cursor:pointer;padding:var(--size-1);border-radius:var(--radius-2);transition:color .2s ease}.theme-switcher .close-switcher:hover{color:var(--text-1)}body:has(.theme-switcher){padding-top:60px}@media (max-width: 768px){.theme-switcher .switcher-content{flex-direction:column;gap:var(--size-2)}.theme-switcher .switcher-section{width:100%;justify-content:center}body:has(.theme-switcher){padding-top:100px}}.theme-switcher-toggle{position:fixed;top:var(--size-2);right:var(--size-2);z-index:1001;background:var(--surface-2);border:1px solid var(--border-color);border-radius:var(--radius-round);width:32px;height:32px;display:flex;align-items:center;justify-content:center;line-height:1;cursor:pointer;font-size:var(--font-size-1);color:var(--text-2);backdrop-filter:blur(8px);box-shadow:var(--shadow-1);transition:all .2s ease;opacity:.6;user-select:none}.theme-switcher-toggle:hover{opacity:1;background:var(--surface-3);color:var(--text-1);transform:scale(1.05);box-shadow:var(--shadow-2)}.theme-switcher-toggle:active{transform:scale(.95)}.theme-switcher.hidden+.theme-switcher-toggle{opacity:.7}.u-m-none{margin:0 !important}.u-p-none{padding:0 !important}.u-mb-none{margin-bottom:0 !important}.u-mt-none{margin-top:0 !important}.u-m-sm{margin:.5rem !important}.u-p-sm{padding:.5rem !important}.u-mb-sm{margin-bottom:.5rem !important}.u-mt-sm{margin-top:.5rem !important}.u-m-md{margin:1rem !important}.u-p-md{padding:1rem !important}.u-mb-md{margin-bottom:1rem !important}.u-mt-md{margin-top:1rem !important}.u-m-lg{margin:1.5rem !important}.u-p-lg{padding:1.5rem !important}.u-mb-lg{margin-bottom:1.5rem !important}.u-mt-lg{margin-top:1.5rem !important}.u-block{display:block !important}.u-flex{display:flex !important}.u-grid{display:grid !important}.u-hidden{display:none !important}.u-inline-block{display:inline-block !important}.u-flex-col{flex-direction:column}.u-items-center{align-items:center}.u-items-start{align-items:flex-start}.u-justify-center{justify-content:center}.u-justify-between{justify-content:space-between}.u-flex-1{flex:1 1 0%}.u-gap-xs{gap:.25rem}.u-gap-sm{gap:.5rem}.u-gap-md{gap:1rem}.u-gap-lg{gap:1.5rem}.u-grid-cols-1{grid-template-columns:repeat(1, minmax(0, 1fr))}.u-grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))}.u-grid-cols-3{grid-template-columns:repeat(3, minmax(0, 1fr))}.u-relative{position:relative !important}.u-absolute{position:absolute !important}.u-fixed{position:fixed !important}.u-text-center{text-align:center}.u-text-left{text-align:left}.u-text-right{text-align:right}.u-font-bold{font-weight:700}.u-uppercase{text-transform:uppercase}.u-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.u-w-full{width:100%}.u-h-full{height:100%}.u-w-auto{width:auto}.u-h-auto{height:auto}.u-sr-only{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border:0 !important}.u-focus-ring:focus-visible{outline:2px solid var(--blue-6);outline-offset:2px;border-radius:var(--radius-1)}.u-cursor-pointer{cursor:pointer}.u-cursor-not-allowed{cursor:not-allowed}.u-pointer-events-none{pointer-events:none !important}.u-select-none{user-select:none}.u-border{border:1px solid var(--border-color)}.u-border-0{border:0}.u-rounded{border-radius:var(--radius-2)}.u-rounded-full{border-radius:9999px}.u-overflow-hidden{overflow:hidden}.u-overflow-auto{overflow:auto}.debug-outline{outline:2px solid red !important}.debug-grid{background-image:linear-gradient(rgba(255,0,0,.1) 1px, rgba(0,0,0,0) 1px),linear-gradient(90deg, rgba(255,0,0,.1) 1px, rgba(0,0,0,0) 1px);background-size:1rem 1rem}