.reading-progress-track{background:linear-gradient(to right, color-mix(in oklab, var(--color-fd-foreground) 60%, transparent) var(--reading-progress), color-mix(in oklab, var(--color-fd-foreground) 20%, transparent) 0);flex:1;height:14px;-webkit-mask:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2056%2028'%20width='56'%20height='28'%3e%3cdesc%3eEndless%20Clouds%20by%20Steve%20Schoger,%20https://heropatterns.com/,%20CC%20BY%204.0%20https://creativecommons.org/licenses/by/4.0/.%20Original%20geometry,%20scaled%20as%20a%20CSS%20mask.%3c/desc%3e%3cpath%20fill='%23000'%20d='M56%2026v2h-7.75c2.3-1.27%204.94-2%207.75-2zm-26%202a2%202%200%201%200-4%200h-4.09A25.98%2025.98%200%200%200%200%2016v-2c.67%200%201.34.02%202%20.07V14a2%202%200%200%200-2-2v-2a4%204%200%200%201%203.98%203.6%2028.09%2028.09%200%200%201%202.8-3.86A8%208%200%200%200%200%206V4a9.99%209.99%200%200%201%208.17%204.23c.94-.95%201.96-1.83%203.03-2.63A13.98%2013.98%200%200%200%200%200h7.75c2%201.1%203.73%202.63%205.1%204.45%201.12-.72%202.3-1.37%203.53-1.93A20.1%2020.1%200%200%200%2014.28%200h2.7c.45.56.88%201.14%201.29%201.74%201.3-.48%202.63-.87%204-1.15-.11-.2-.23-.4-.36-.59H26v.07a28.4%2028.4%200%200%201%204%200V0h4.09l-.37.59c1.38.28%202.72.67%204.01%201.15.4-.6.84-1.18%201.3-1.74h2.69a20.1%2020.1%200%200%200-2.1%202.52c1.23.56%202.41%201.2%203.54%201.93A16.08%2016.08%200%200%201%2048.25%200H56c-4.58%200-8.65%202.2-11.2%205.6%201.07.8%202.09%201.68%203.03%202.63A9.99%209.99%200%200%201%2056%204v2a8%208%200%200%200-6.77%203.74c1.03%201.2%201.97%202.5%202.79%203.86A4%204%200%200%201%2056%2010v2a2%202%200%200%200-2%202.07%2028.4%2028.4%200%200%201%202-.07v2c-9.2%200-17.3%204.78-21.91%2012H30zM7.75%2028H0v-2c2.81%200%205.46.73%207.75%202zM56%2020v2c-5.6%200-10.65%202.3-14.28%206h-2.7c4.04-4.89%2010.15-8%2016.98-8zm-39.03%208h-2.69C10.65%2024.3%205.6%2022%200%2022v-2c6.83%200%2012.94%203.11%2016.97%208zm15.01-.4a28.09%2028.09%200%200%201%202.8-3.86%208%208%200%200%200-13.55%200c1.03%201.2%201.97%202.5%202.79%203.86a4%204%200%200%201%207.96%200zm14.29-11.86c1.3-.48%202.63-.87%204-1.15a25.99%2025.99%200%200%200-44.55%200c1.38.28%202.72.67%204.01%201.15a21.98%2021.98%200%200%201%2036.54%200zm-5.43%202.71c1.13-.72%202.3-1.37%203.54-1.93a19.98%2019.98%200%200%200-32.76%200c1.23.56%202.41%201.2%203.54%201.93a15.98%2015.98%200%200%201%2025.68%200zm-4.67%203.78c.94-.95%201.96-1.83%203.03-2.63a13.98%2013.98%200%200%200-22.4%200c1.07.8%202.09%201.68%203.03%202.63a9.99%209.99%200%200%201%2016.34%200z'%3e%3c/path%3e%3c/svg%3e") 0/28px 14px repeat-x;mask:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2056%2028'%20width='56'%20height='28'%3e%3cdesc%3eEndless%20Clouds%20by%20Steve%20Schoger,%20https://heropatterns.com/,%20CC%20BY%204.0%20https://creativecommons.org/licenses/by/4.0/.%20Original%20geometry,%20scaled%20as%20a%20CSS%20mask.%3c/desc%3e%3cpath%20fill='%23000'%20d='M56%2026v2h-7.75c2.3-1.27%204.94-2%207.75-2zm-26%202a2%202%200%201%200-4%200h-4.09A25.98%2025.98%200%200%200%200%2016v-2c.67%200%201.34.02%202%20.07V14a2%202%200%200%200-2-2v-2a4%204%200%200%201%203.98%203.6%2028.09%2028.09%200%200%201%202.8-3.86A8%208%200%200%200%200%206V4a9.99%209.99%200%200%201%208.17%204.23c.94-.95%201.96-1.83%203.03-2.63A13.98%2013.98%200%200%200%200%200h7.75c2%201.1%203.73%202.63%205.1%204.45%201.12-.72%202.3-1.37%203.53-1.93A20.1%2020.1%200%200%200%2014.28%200h2.7c.45.56.88%201.14%201.29%201.74%201.3-.48%202.63-.87%204-1.15-.11-.2-.23-.4-.36-.59H26v.07a28.4%2028.4%200%200%201%204%200V0h4.09l-.37.59c1.38.28%202.72.67%204.01%201.15.4-.6.84-1.18%201.3-1.74h2.69a20.1%2020.1%200%200%200-2.1%202.52c1.23.56%202.41%201.2%203.54%201.93A16.08%2016.08%200%200%201%2048.25%200H56c-4.58%200-8.65%202.2-11.2%205.6%201.07.8%202.09%201.68%203.03%202.63A9.99%209.99%200%200%201%2056%204v2a8%208%200%200%200-6.77%203.74c1.03%201.2%201.97%202.5%202.79%203.86A4%204%200%200%201%2056%2010v2a2%202%200%200%200-2%202.07%2028.4%2028.4%200%200%201%202-.07v2c-9.2%200-17.3%204.78-21.91%2012H30zM7.75%2028H0v-2c2.81%200%205.46.73%207.75%202zM56%2020v2c-5.6%200-10.65%202.3-14.28%206h-2.7c4.04-4.89%2010.15-8%2016.98-8zm-39.03%208h-2.69C10.65%2024.3%205.6%2022%200%2022v-2c6.83%200%2012.94%203.11%2016.97%208zm15.01-.4a28.09%2028.09%200%200%201%202.8-3.86%208%208%200%200%200-13.55%200c1.03%201.2%201.97%202.5%202.79%203.86a4%204%200%200%201%207.96%200zm14.29-11.86c1.3-.48%202.63-.87%204-1.15a25.99%2025.99%200%200%200-44.55%200c1.38.28%202.72.67%204.01%201.15a21.98%2021.98%200%200%201%2036.54%200zm-5.43%202.71c1.13-.72%202.3-1.37%203.54-1.93a19.98%2019.98%200%200%200-32.76%200c1.23.56%202.41%201.2%203.54%201.93a15.98%2015.98%200%200%201%2025.68%200zm-4.67%203.78c.94-.95%201.96-1.83%203.03-2.63a13.98%2013.98%200%200%200-22.4%200c1.07.8%202.09%201.68%203.03%202.63a9.99%209.99%200%200%201%2016.34%200z'%3e%3c/path%3e%3c/svg%3e") 0/28px 14px repeat-x}[data-reading-root]{--reading-offset:96px}[data-reading-root] .blog-body :is(h2,h3,h4){scroll-margin-top:var(--reading-offset)}@media (width<=1099px){[data-reading-root]{--reading-offset:164px}}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial}}}.site-header .nav-brand .brand,.site-header .nav-brand .sidebar-logo-icon{color:var(--color-fd-primary)}.site-header .nav-brand .sidebar-logo-icon{transition:filter .3s}.site-header .nav-brand .logo-cutout{display:inline}.site-header .nav-brand .logo-body{fill:none}.site-header .nav-brand :is(.logo-body,.logo-eyes){transition:opacity .3s}.dark :is(.site-header .nav-brand) :is(.logo-body,.logo-eyes){opacity:0}@media (hover:hover){.site-header .nav-brand:hover :is(.logo-body,.logo-eyes){opacity:1}.site-header .nav-brand:hover .sidebar-logo-icon{filter:drop-shadow(0 0 1px var(--color-fd-primary))}}@media (prefers-reduced-motion:reduce){.site-header .nav-brand :is(.sidebar-logo-icon,.logo-body,.logo-eyes){transition:none}}.reading-mobile-toc button:focus-visible{--tw-ring-inset:inset}.reading-mobile-toc[data-stuck]:not([data-open]){background-color:#f1f1f199}@supports (color:color-mix(in lab, red, red)){.reading-mobile-toc[data-stuck]:not([data-open]){background-color:color-mix(in oklab, var(--color-fd-card,#f1f1f1) 60%, transparent)}}.reading-mobile-toc[data-stuck]:not([data-open]){--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-backdrop-blur:blur(var(--blur-lg,16px));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.blog-body [role=button][aria-haspopup=dialog]:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.blog-body [role=button][aria-haspopup=dialog]:focus-visible img{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-ring-color:var(--color-fd-ring,#a3a3a3)}.page-width{width:min(1120px,100% - 48px);margin-inline:auto}.skip-link{z-index:100;background:var(--color-fd-card);padding:12px;position:fixed;top:-100px;left:16px}.skip-link:focus{top:12px}.article-grid{grid-template-columns:minmax(0,672px) 240px;justify-content:center;gap:64px;margin-top:64px;display:grid}.article-toc{flex-direction:column;align-self:start;gap:16px;max-height:calc(100dvh - 128px);display:flex;position:sticky;top:96px}.article-toc>div{min-height:0;overflow-y:auto}.reading-mobile-toc{display:none}.blog-body{overflow-wrap:break-word;max-width:none}@media (width>=40rem){.blog-body{--tw-prose-size:1.125}}.blog-body h4{font-family:var(--font-sans,"Noto Sans SC", "Noto Sans HK", "Noto Sans TC", "Noto Sans KR", "Noto Sans JP", "Noto Sans Thai", "Open Sans", ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");color:var(--color-fd-foreground,#0a0a0a)}.blog-body>figure:not(.shiki){margin-block:32px}.blog-body>figure:not(.shiki):first-child{margin-top:0}.blog-body figure img{border-radius:var(--radius-2xl,1rem);background-color:var(--color-fd-muted,#f5f5f5);corner-shape:var(--docs-corner-shape,round);margin:0}.blog-body figcaption{color:var(--color-fd-muted-foreground);margin-top:8px;font-size:13px;line-height:20px}.blog-body table{font-size:14px;line-height:20px}.blog-body :not(pre)>code{overflow-wrap:anywhere}.site-footer{isolation:isolate;grid-template-columns:max-content minmax(0,1fr) max-content;grid-template-areas:"guide artwork play";align-items:end;gap:16px 32px;padding-top:48px;display:grid}.site-footer>a{margin-bottom:24px}.site-footer>a:first-child{grid-area:guide;justify-self:start}.site-footer>a:last-child{grid-area:play;justify-self:end}.site-footer:before,.site-footer:after{content:"";z-index:-1;pointer-events:none;background-color:var(--color-fd-muted-foreground);grid-area:artwork;justify-self:center;width:480px;height:195px}.site-footer:before{opacity:.4;-webkit-mask:url(https://assets.mipha.ai/static-site/compiled/bottom-kelp-slim-CcwwKdo-.svg) left 24px bottom/182px 136.5px no-repeat;mask:url(https://assets.mipha.ai/static-site/compiled/bottom-kelp-slim-CcwwKdo-.svg) left 24px bottom/182px 136.5px no-repeat}.site-footer:after{opacity:.15;-webkit-mask:url(https://assets.mipha.ai/static-site/compiled/footer-crab-BMgL8Wm8.svg) right 144px bottom/57.6px no-repeat,url(https://assets.mipha.ai/static-site/compiled/footer-coral-BSp2T5Q4.svg) 100% 100%/auto 195px no-repeat;mask:url(https://assets.mipha.ai/static-site/compiled/footer-crab-BMgL8Wm8.svg) right 144px bottom/57.6px no-repeat,url(https://assets.mipha.ai/static-site/compiled/footer-coral-BSp2T5Q4.svg) 100% 100%/auto 195px no-repeat}.dark .site-footer:before,.dark .site-footer:after{background-color:var(--color-fd-foreground)}@media (width>=1024px){.site-footer:before,.site-footer:after{width:100%}}@media (width<=1023px){.site-footer{grid-template-columns:auto auto;grid-template-areas:"guide play""artwork artwork";justify-content:space-between}.site-footer>a{margin-bottom:0}}@media (width<=1099px){.article-grid{max-width:672px;margin-inline:auto;display:block}.article-toc{display:none}.reading-mobile-toc{margin-bottom:32px;display:block}}@media (width<=639px){.article-grid{margin-top:40px}.site-footer{padding-top:32px}.site-footer:before{width:145.6px;height:109.2px;-webkit-mask:url(https://assets.mipha.ai/static-site/compiled/bottom-kelp-slim-CcwwKdo-.svg) bottom/contain no-repeat;mask:url(https://assets.mipha.ai/static-site/compiled/bottom-kelp-slim-CcwwKdo-.svg) bottom/contain no-repeat}.site-footer:after{display:none}}@media (prefers-reduced-motion:reduce){.post-card h3{transition:none}}@media print{.site-header,.site-footer,.article-toc,.reading-mobile-toc,.related{display:none}.article-grid{display:block}[data-image-reveal]{opacity:1!important}}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}.blog-contours{--contour-right:-96px;--contour-width:min(60vw, 640px);--contour-height:420px}.blog-contours :is(.index-heading,.article-heading){position:relative}.blog-contours :is(.index-heading,.article-heading):before{--contour-fade:radial-gradient(ellipse at 65% 40%, #000 15%, transparent 72%);--contour-edge:linear-gradient(to right, #000 calc(100% + var(--contour-right) - clamp(80px, 12vw, 160px)), transparent calc(100% + var(--contour-right)));content:"";z-index:-1;pointer-events:none;top:-64px;right:calc((100% - 100vw) / 2 + var(--contour-right) + 8px);width:var(--contour-width);height:var(--contour-height);opacity:.15;background:var(--color-fd-muted-foreground);-webkit-mask-image:url(https://assets.mipha.ai/static-site/compiled/contours-fine-sewsYe4q.svg), var(--contour-fade), var(--contour-edge);mask-image:url(https://assets.mipha.ai/static-site/compiled/contours-fine-sewsYe4q.svg), var(--contour-fade), var(--contour-edge);position:absolute;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:cover;mask-size:cover;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-composite:source-in;mask-composite:intersect}@media (width<=639px){.blog-contours{--contour-right:-144px;--contour-width:400px;--contour-height:320px}}
