@font-face{font-family:Faustina;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/faustina-vietnamese-400-normal.Sn5hAUQS.woff2)format("woff2"),url(/_astro/faustina-vietnamese-400-normal.Chkd9Wpt.woff)format("woff");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:Faustina;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/faustina-latin-ext-400-normal.B22iVYGE.woff2)format("woff2"),url(/_astro/faustina-latin-ext-400-normal.CljNlxfH.woff)format("woff");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:Faustina;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/faustina-latin-400-normal.e8gc7iQ7.woff2)format("woff2"),url(/_astro/faustina-latin-400-normal.BYG-_Xg4.woff)format("woff");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:Faustina;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/faustina-vietnamese-500-normal.AxuR4G_C.woff2)format("woff2"),url(/_astro/faustina-vietnamese-500-normal.DTDnFy6e.woff)format("woff");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:Faustina;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/faustina-latin-ext-500-normal.DKrrGnmv.woff2)format("woff2"),url(/_astro/faustina-latin-ext-500-normal.D1QXHBte.woff)format("woff");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:Faustina;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/faustina-latin-500-normal.BkqJsRRl.woff2)format("woff2"),url(/_astro/faustina-latin-500-normal.DwOt744d.woff)format("woff");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:Faustina;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/faustina-vietnamese-600-normal.B4ypEOuR.woff2)format("woff2"),url(/_astro/faustina-vietnamese-600-normal.C7wHn4S3.woff)format("woff");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:Faustina;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/faustina-latin-ext-600-normal.Cn9n6zhm.woff2)format("woff2"),url(/_astro/faustina-latin-ext-600-normal.Bf915RLG.woff)format("woff");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:Faustina;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/faustina-latin-600-normal.rqtO4ZnS.woff2)format("woff2"),url(/_astro/faustina-latin-600-normal.lmDbLmrH.woff)format("woff");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:Faustina;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/faustina-vietnamese-700-normal.CI84ZZtG.woff2)format("woff2"),url(/_astro/faustina-vietnamese-700-normal.R0IBviLk.woff)format("woff");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:Faustina;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/faustina-latin-ext-700-normal.BjFCu3HQ.woff2)format("woff2"),url(/_astro/faustina-latin-ext-700-normal.rIigbJQN.woff)format("woff");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:Faustina;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/faustina-latin-700-normal.8qe6lqFo.woff2)format("woff2"),url(/_astro/faustina-latin-700-normal.Dus5pVZ-.woff)format("woff");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:Mulish;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/mulish-cyrillic-ext-400-normal.wd4asoXq.woff2)format("woff2"),url(/_astro/mulish-cyrillic-ext-400-normal.DGgLiUMh.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Mulish;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/mulish-cyrillic-400-normal.NYULt11J.woff2)format("woff2"),url(/_astro/mulish-cyrillic-400-normal.BNekwWHs.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Mulish;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/mulish-vietnamese-400-normal.DoBClvYm.woff2)format("woff2"),url(/_astro/mulish-vietnamese-400-normal.wxj85OR_.woff)format("woff");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:Mulish;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/mulish-latin-ext-400-normal.avcijv45.woff2)format("woff2"),url(/_astro/mulish-latin-ext-400-normal.CkhBr6wh.woff)format("woff");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:Mulish;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/mulish-latin-400-normal.C9Snyl1s.woff2)format("woff2"),url(/_astro/mulish-latin-400-normal.BRmeVNaI.woff)format("woff");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:Mulish;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/mulish-cyrillic-ext-500-normal.BTJLs2q5.woff2)format("woff2"),url(/_astro/mulish-cyrillic-ext-500-normal.NOuHDXve.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Mulish;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/mulish-cyrillic-500-normal.5Gm1uDpZ.woff2)format("woff2"),url(/_astro/mulish-cyrillic-500-normal.C9oc_C6e.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Mulish;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/mulish-vietnamese-500-normal.BcKeiari.woff2)format("woff2"),url(/_astro/mulish-vietnamese-500-normal.DC_f6fjv.woff)format("woff");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:Mulish;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/mulish-latin-ext-500-normal.CyTKV2lK.woff2)format("woff2"),url(/_astro/mulish-latin-ext-500-normal.CWDcFwYe.woff)format("woff");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:Mulish;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/mulish-latin-500-normal.BoPlPdCZ.woff2)format("woff2"),url(/_astro/mulish-latin-500-normal.CoJZbj2t.woff)format("woff");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:Mulish;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/mulish-cyrillic-ext-600-normal.vB0dh4Vd.woff2)format("woff2"),url(/_astro/mulish-cyrillic-ext-600-normal.B_z2ex1z.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Mulish;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/mulish-cyrillic-600-normal.CKFF8GaG.woff2)format("woff2"),url(/_astro/mulish-cyrillic-600-normal.DPq7SEaB.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Mulish;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/mulish-vietnamese-600-normal.DQ5mKFzk.woff2)format("woff2"),url(/_astro/mulish-vietnamese-600-normal.BpgYXBxh.woff)format("woff");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:Mulish;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/mulish-latin-ext-600-normal.D7_foosS.woff2)format("woff2"),url(/_astro/mulish-latin-ext-600-normal.Chxu7DbI.woff)format("woff");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:Mulish;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/mulish-latin-600-normal.BSghSUeJ.woff2)format("woff2"),url(/_astro/mulish-latin-600-normal.BgWMv2vh.woff)format("woff");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:Mulish;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/mulish-cyrillic-ext-700-normal.8rTAbKX1.woff2)format("woff2"),url(/_astro/mulish-cyrillic-ext-700-normal.BOPj4Aba.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Mulish;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/mulish-cyrillic-700-normal.Cdb6nxyj.woff2)format("woff2"),url(/_astro/mulish-cyrillic-700-normal.C83yEZuV.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Mulish;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/mulish-vietnamese-700-normal.B7ZZnzhK.woff2)format("woff2"),url(/_astro/mulish-vietnamese-700-normal.iBzJykbs.woff)format("woff");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:Mulish;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/mulish-latin-ext-700-normal.DmQ9OtDO.woff2)format("woff2"),url(/_astro/mulish-latin-ext-700-normal.CZscPGxd.woff)format("woff");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:Mulish;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/mulish-latin-700-normal.DP36JSCV.woff2)format("woff2"),url(/_astro/mulish-latin-700-normal.LuPokTVX.woff)format("woff");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-scheme:light;--font-ui:"Mulish", sans-serif;--text:#091320;--page-bg:#f3f7fc;--surface:#f6f7f9;--border:#22446d;--link:#0a468f;--sidebar-link:#063a79;--sidebar-gradient:linear-gradient(to right, #f0f2f4, #eff2f5 90%, #dae4f1);--muted:#4b5f77;--modal-bg:#fafafa;--modal-text:#0a0d10;--modal-neutral:#c9cccf;--modal-link:#004799;--modal-shortcut:#e0e5eb;--content-width:72rem;--nav-width:15rem;--nav-peek:4rem;--page-gradient:linear-gradient(to right, #f6f7f9, #eef2f6 80%, #e7eaee);--sidebar-shadow:#17191c4d;--card-shadow:#0b2441;--card-arrow:#e7eaef;--heading-start:#0d1826;--heading-end:#d3964a;--pill-text:#0c141d;--pill-bg:#d8dbdf;--portfolio-tab-bg:#293e56;--portfolio-tab-text:#d9e4f2;--portfolio-selected-tab-bg:#e2eaf3;--portfolio-selected-tab-text:#1f3147;--monochrome-filter:none;font-family:Faustina,serif}@media (prefers-color-scheme:dark){:root{color-scheme:dark;--text:#cad1e2;--page-bg:#111b32;--surface:#081a45;--border:#b8c4e0;--link:#bacbf3;--muted:#cad1e2;--page-gradient:linear-gradient(to bottom right, #111b32, #081c49, #111b32);--sidebar-link:#d4def7;--sidebar-gradient:linear-gradient(to bottom right, #031030, #081a45, #0d2b73, #172036, #173273);--sidebar-shadow:#c7cad14d;--card-shadow:#c8d0e4;--card-arrow:#193066;--heading-start:#e4e8f1;--heading-end:#bf9022;--pill-text:#050a14;--pill-bg:#cfd5e2;--portfolio-tab-bg:#e4e8f1;--portfolio-tab-text:#1d2230;--portfolio-selected-tab-bg:#081a45;--portfolio-selected-tab-text:#cad1e2;--monochrome-filter:invert(1)}}*{box-sizing:border-box}html{background:var(--page-bg);color:var(--text)}body{min-width:20rem;min-height:100vh;margin:0}button,input,select{font:inherit}button{all:unset;cursor:pointer}button:disabled{cursor:default}a{color:currentColor;text-decoration:none}:focus-visible{outline-offset:2px;outline:2px solid}h1,h2,h3,h4,h5,h6{font-family:var(--font-ui)}ul{list-style:none}.site-shell{min-height:100vh;display:flex}.sidebar{z-index:2;width:var(--nav-width);height:100vh;transform:translateX(calc(-100% + var(--nav-peek)));user-select:none;background-image:var(--sidebar-gradient);border-right:2px solid var(--border);box-shadow:2px 0 2px 1px var(--sidebar-shadow);padding:1rem 0 1rem 1rem;font-size:1.875rem;transition:transform .3s;position:fixed;top:0;left:0;overflow:auto}.sidebar.open{box-shadow:none;transform:translate(0)}.sidebar-arrow{top:1rem;left:calc(100% - var(--nav-peek) / 2 - .75rem);width:1.5rem;height:1.5rem;color:var(--text);place-items:center;transition:all .3s;display:grid;position:absolute}.sidebar-arrow svg{width:1.5rem;height:1.5rem}.sidebar.open .sidebar-arrow{left:1rem;rotate:180deg}.sidebar-content{margin-top:2rem;transition:transform .3s;position:relative;transform:translate(-100%)}.sidebar.open .sidebar-content{transform:translate(0)}.sidebar-links{flex-direction:column;gap:2rem;display:flex}.sidebar-nav-group{flex-direction:column;gap:.4rem;margin:.8rem 0;display:flex;position:relative}.sidebar-link{width:fit-content;color:var(--sidebar-link);font-size:1.25rem;transition:color .2s;position:relative}.sidebar-link:before{content:"";transform-origin:50%;background:currentColor;width:100%;height:2px;transition:scale .3s;position:absolute;bottom:0;left:0;scale:0 1}.sidebar-link:hover:before,.sidebar-link:focus:before,.sidebar-link.active:before{scale:1}.sidebar-actions{gap:.8rem;display:grid}.sidebar-action{width:max-content;color:var(--sidebar-link);background-image:linear-gradient(var(--link), var(--link));background-position:0 100%;background-repeat:no-repeat;background-size:0 2px;align-items:center;gap:.8rem;font-size:1.125rem;text-decoration:none;transition:background-size .3s;display:flex}.sidebar-action:hover,.sidebar-action:focus-within{background-size:100% 2px}.sidebar-action:focus-within{outline:1px solid var(--link)}@media (any-hover:none){.sidebar-action{background-size:100% 2px}}.sidebar-icon{width:1.5rem;height:1.5rem;font-family:var(--font-ui);place-items:center;display:grid}.sidebar-legal{color:var(--text);flex-direction:column;font-size:.75rem;display:flex}.sidebar-logo{top:50%;left:calc(100% - var(--nav-peek) / 2 - .8rem);width:1.6rem;height:1.6rem;transition:left .3s;display:block;position:absolute;transform:translateY(-50%)}.sidebar.open .sidebar-logo{top:max(50%,25rem);left:1rem}.sidebar-logo img{object-fit:contain;width:1.6rem;height:1.6rem;filter:var(--monochrome-filter);transform:rotate(var(--wheel-angle,0deg));transition:transform .5s;display:block}.sidebar-backdrop{z-index:1;backdrop-filter:blur(4px);display:none;position:fixed;inset:0}.sidebar-backdrop.visible{display:block}.site-main{width:calc(100% - var(--nav-peek));min-height:100vh;margin-left:var(--nav-peek);background:var(--page-gradient);position:relative;overflow:hidden}.site-footer{width:min(100% - 2rem, var(--content-width));margin:0 auto 0 calc(var(--nav-peek) + max(1rem, (100vw - var(--nav-peek) - var(--content-width)) / 2));color:var(--muted);font-family:var(--font-ui);padding-block:1rem 2rem;font-size:.85rem}.page-title{margin:0 0 1.5rem;font-size:clamp(2rem,5vw,3.2rem)}.card-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,19rem),1fr));gap:1rem;display:grid}.content-card{border:1px solid var(--border);background:var(--surface);border-radius:.4rem;padding:1rem 1.2rem}.content-card h2{margin:0 0 .4rem;font-size:1.35rem}.content-card p{margin:.5rem 0}.content-card time,.muted{color:var(--muted);font-family:var(--font-ui);font-size:.85rem}.article{width:100%;min-width:0;margin:0;font-size:1.25rem;line-height:1.75rem}.article h1{margin:0;padding:.4rem 0;font-size:2.25rem;line-height:2.5rem}.article :is(h2,h3,h4,h5,h6){padding:1.6rem 0}.article p{margin:0 0 1.6rem}.article img{max-width:100%;height:auto}.article pre{border-radius:.4rem;padding:1rem;font-size:.9rem;line-height:1.55;overflow-x:auto}.article table{border-collapse:collapse;max-width:100%;display:block;overflow-x:auto}.article th,.article td{border:1px solid var(--border);padding:.4rem .65rem}.search-dialog,.shortcuts-dialog{color-scheme:light;z-index:6;width:50%;max-width:none;max-height:75vh;color:var(--modal-text);background:var(--modal-bg);border:0;border-radius:1.6rem;margin:0;padding:0;position:fixed;top:20%;left:50%;overflow:auto;transform:translate(-50%)}.search-dialog::backdrop,.shortcuts-dialog::backdrop{backdrop-filter:blur(4px);background:#0003;height:200vh}.search-row{gap:.8rem;height:4rem;padding:0 .8rem;display:flex}.search-icon{place-items:center;width:1.6rem;display:grid}.search-row input{width:100%;min-width:0;height:100%;color:var(--modal-text);font:1.25rem var(--font-ui);background:0 0;border:0;outline:0;padding:0;display:block}.search-input-wrap{flex-grow:1;width:50%;min-width:0;position:relative;overflow:hidden}.search-completion{white-space:pre;visibility:hidden;width:max-content;color:var(--modal-text);pointer-events:none;font:1.25rem var(--font-ui);display:block;position:absolute;top:50%;left:0;transform:translateY(-50%)}.search-completion:after{content:attr(data-suggestion);visibility:visible;opacity:.6;position:absolute;top:0;left:100%}.search-count{width:10ch;color:var(--modal-text);font:.875rem var(--font-ui);text-transform:uppercase;opacity:.8;align-self:center}.search-close{place-items:center;width:1.6rem;font-size:1.5rem;display:grid}.search-groups{scroll-snap-type:block;gap:.8rem;width:100%;max-height:45vh;padding-top:.8rem;scroll-margin:.2rem;display:grid;overflow-y:auto}.search-group{min-height:1.6rem;padding:0 .8rem}.search-group h2{font:inherit;margin:0;position:relative}.search-group-toggle{border-top:2px solid var(--modal-text);width:100%;display:block;position:relative}.search-group-toggle:focus-visible{outline:none}.search-group-toggle:focus-visible .search-group-eye{outline:2px solid var(--modal-text);outline-offset:2px}.search-group-label{z-index:1;color:var(--modal-text);background:var(--modal-bg);font:1rem var(--font-ui);padding:0 .4rem;position:absolute;top:-.7rem;left:.8rem}.search-group-eye{z-index:1;color:var(--modal-text);background:var(--modal-bg);padding:0 .4rem;position:absolute;top:-.7rem;right:.8rem}.search-group-eye>svg{fill:var(--modal-text)}.search-group-eye>svg>path:nth-of-type(2){stroke:var(--modal-bg)}.search-eye-bar{background:var(--modal-text);clip-path:polygon(68% 4%,76% 5%,26% 86%,18% 86%);transition:clip-path .2s;position:absolute;inset:0}.search-eye-bar[data-open=true]{clip-path:polygon(18% 87%,26% 87%,26% 86%,18% 88%)}.search-group-items{margin-top:.8rem}.search-group-items[hidden]{display:none}.search-result{width:100%;color:var(--modal-text);text-align:left;opacity:.6;padding:.8rem 0;font-family:Faustina,serif;transition:opacity .2s;display:block}.search-result:not(:last-child){border-bottom:1px solid #0a0d1066}.search-result:hover,.search-result:focus-visible{opacity:1}.search-result-title{font:600 1rem var(--font-ui);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.search-result-type{font:.875rem var(--font-ui);text-transform:uppercase;margin-top:.2rem;display:block}.search-empty{padding:.8rem;font-size:1.125rem;line-height:1.25rem}.search-suggestions{padding:0;display:inline}.search-suggestions button{color:var(--modal-link)}.search-suggestions button:hover{text-decoration:underline}.shortcuts-dialog{width:70%;padding:1.6rem}.shortcuts-dialog h1{margin:0 0 1.6rem;font-size:2.25rem}.shortcuts-dialog h2{margin:1rem 0 .4rem;font-size:1.5rem}.shortcut-close{place-items:center;width:1.6rem;height:1.6rem;display:grid;position:absolute;top:.8rem;right:.8rem}.shortcut-list{grid-template-columns:1fr auto;align-items:baseline;gap:.4rem;display:grid}.shortcut-list span,.shortcut-list kbd{border-radius:.4rem;padding:.4rem .8rem}.shortcut-list kbd{background:var(--modal-shortcut)}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}@media (prefers-color-scheme:dark){.astro-code,.astro-code span{color:var(--shiki-dark)!important;background-color:var(--shiki-dark-bg)!important}}@media (width<=1200px){.search-dialog{width:70%}}@media (width<=900px){.search-dialog{width:80%}}@media (width<=600px){.search-dialog{width:90%;top:12%}.search-count{display:none}.shortcuts-dialog{width:90%}.shortcut-list{grid-template-columns:1fr}.site-footer{margin-left:calc(var(--nav-peek) + 1rem)}}.page-content{min-width:0;padding:2rem 1rem}.home-content{width:100%;max-width:none}.lead-heading{background-image:linear-gradient(to right, var(--heading-start) 40%, var(--heading-end));color:#0000;background-position:0;background-size:300%;background-clip:text;margin:0;padding-bottom:1.6rem;font-size:2.25rem;font-weight:700;line-height:2.5rem;transition:background-position .5s;position:relative}.lead-heading:hover{background-position:100%}.latest-group{margin-bottom:4rem;position:relative}.latest-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,500px),1fr));gap:2.4rem;margin:0;padding:0;display:grid}.latest-card-item{min-width:0}.latest-card-link{height:100%;display:block}.latest-card{border:1px solid var(--border);background-color:var(--page-bg);height:100%;box-shadow:2px 6px 0 0 var(--card-shadow);border-radius:.4rem;grid-template-columns:auto 1fr;gap:.8rem;padding:.8rem;transition:box-shadow .3s;display:grid;position:relative;overflow:visible}.latest-card:hover,.latest-card-link:focus-visible .latest-card{box-shadow:2px 16px 0 0 var(--card-shadow)}.latest-category{grid-column:1/2;align-self:center;margin:0;font-size:1rem;font-weight:700;line-height:1.5rem}.latest-tags{flex-wrap:wrap;grid-column:2/3;justify-content:flex-end;align-items:center;gap:.4rem;min-width:max-content;max-width:100%;height:2rem;display:flex}.latest-desktop-tags{display:contents}.tag-pill.latest-mobile-tags{display:none}.tag-pill{width:min-content;height:min-content;color:var(--pill-text);background:var(--pill-bg);font:.875rem var(--font-ui);text-transform:capitalize;white-space:nowrap;border-radius:2.4rem;justify-content:space-between;align-items:center;padding:.4rem .8rem;display:flex}.latest-title{height:1.75rem;font:700 1.25rem/1.75rem var(--font-ui);text-overflow:ellipsis;white-space:nowrap;grid-column:span 2;margin:0;overflow:hidden}.latest-excerpt{grid-column:span 2;margin:0;font-size:1.125rem;line-height:1.75rem}.latest-card-dates{grid-column:span 2;align-self:end;align-items:center;gap:.4rem;font-size:1rem;line-height:1.5rem;display:flex}.date-item{align-items:center;gap:.4rem;min-width:0;display:flex}.date-icon{flex:0 0 1.5rem;width:1.5rem;height:1.5rem}.latest-card-arrow{opacity:0;background:var(--card-arrow);clip-path:polygon(0% 35%,1% 35%,1% 0,2% 50%,1% 100%,1% 65%,0% 65%);width:99%;height:8px;transition:clip-path .3s .1s,opacity .1s;position:absolute;bottom:-12px;left:4px}.latest-card:hover>[data-arrow],.latest-card-link:focus-visible [data-arrow]{opacity:1;clip-path:polygon(0% 35%,99% 35%,99% 0,100% 50%,99% 100%,99% 65%,0% 65%)}@media (width>=1700px){.latest-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=576px){.page-content{padding:2rem .5rem}.article{font-size:1.125rem}.article h1{font-size:1.875rem;line-height:2.25rem}.latest-grid{grid-template-columns:1fr}.latest-card{padding:.8rem .4rem}.latest-tags{gap:2px;width:100%;min-width:0;max-width:none}.tag-pill{padding:.4rem}.latest-desktop-tags{display:none}.tag-pill.latest-mobile-tags{display:flex}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
