/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
html{-webkit-text-size-adjust:100%;line-height:1.15}body{margin:0}main{display:block}h1{margin:.67em 0;font-size:2em}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace;font-size:1em}a{background-color:#0000}abbr[title]{border-bottom:none;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:100%;line-height:1.15}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner{border-style:none;padding:0}[type=button]::-moz-focus-inner{border-style:none;padding:0}[type=reset]::-moz-focus-inner{border-style:none;padding:0}[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring{outline:1px dotted buttontext}[type=button]:-moz-focusring{outline:1px dotted buttontext}[type=reset]:-moz-focusring{outline:1px dotted buttontext}[type=submit]:-moz-focusring{outline:1px dotted buttontext}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;white-space:normal;max-width:100%;padding:0;display:table}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button{height:auto}[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template,[hidden]{display:none}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-cyrillic-ext-wght-normal.BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-cyrillic-wght-normal.DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-greek-ext-wght-normal.DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-greek-wght-normal.CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-vietnamese-wght-normal.CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-latin-ext-wght-normal.DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-latin-wght-normal.Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/_astro/inter-cyrillic-ext-wght-italic.B5xAaiFk.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/_astro/inter-cyrillic-wght-italic.DzZdc28x.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/_astro/inter-greek-ext-wght-italic.DcOpz6Lw.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/_astro/inter-greek-wght-italic.CILZdfAp.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/_astro/inter-vietnamese-wght-italic.K3WlGtc8.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/_astro/inter-latin-ext-wght-italic.0pjOp8NU.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/_astro/inter-latin-wght-italic.DpCbqKDY.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Oswald Variable;font-style:normal;font-display:swap;font-weight:200 700;src:url(/_astro/oswald-cyrillic-ext-wght-normal.DLWmRmaW.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Oswald Variable;font-style:normal;font-display:swap;font-weight:200 700;src:url(/_astro/oswald-cyrillic-wght-normal.C8sJyxwB.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Oswald Variable;font-style:normal;font-display:swap;font-weight:200 700;src:url(/_astro/oswald-vietnamese-wght-normal.Tdf5mmdl.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Oswald Variable;font-style:normal;font-display:swap;font-weight:200 700;src:url(/_astro/oswald-latin-ext-wght-normal.Dj_1K-Kw.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Oswald Variable;font-style:normal;font-display:swap;font-weight:200 700;src:url(/_astro/oswald-latin-wght-normal.CzS3kehr.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/jetbrains-mono-latin-400-normal.V6pRDFza.woff2)format("woff2"),url(/_astro/jetbrains-mono-latin-400-normal.6-qcROiO.woff)format("woff")}:root{--color-bg:#252422;--color-bg-muted:#403d39;--color-text:#fffcf2;--color-text-muted:#ccc5b9;--color-accent:#eb5e28;--color-border:#6b6460;--font-heading:"Oswald Variable", system-ui, sans-serif;--font-sans:"Inter Variable", system-ui, sans-serif;--font-mono:"JetBrains Mono", monospace;--font-size-sm:.875em;--font-size-base:1em;--font-size-lg:1.25em;--font-size-xl:1.75em;--font-size-2xl:2.5em;--font-size-3xl:4em;--line-height-base:1.6;--line-height-heading:1.15;--font-weight-normal:400;--font-weight-bold:700;--space-xs:.5rem;--space-sm:1rem;--space-md:2rem;--space-lg:4rem;--space-xl:6rem;--space-2xl:10rem}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{font-size:1vw;font-family:var(--font-sans);line-height:var(--line-height-base);background-color:var(--color-bg);color:var(--color-text)}body{min-height:100svh}img,video{max-width:100%;display:block}a{color:inherit}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:400;line-height:var(--line-height-heading);text-transform:uppercase}code,pre{font-family:var(--font-mono)}.post-card{background:var(--color-border);flex-direction:column;gap:2px;display:flex}.post-card .cover{aspect-ratio:16/9;background:var(--color-bg-muted);display:block;overflow:hidden}.post-card .cover img{object-fit:cover;width:100%;height:100%;transition:transform .3s}.post-card .cover:hover img{transform:scale(1.02)}.post-card .body{gap:var(--space-sm);padding:var(--space-md);background:var(--color-bg);box-shadow:inset 0 0 var(--space-sm) var(--color-bg-muted);flex-direction:column;flex:1;display:flex}.post-card .title{font-size:var(--font-size-lg);line-height:var(--line-height-heading);margin:0}.post-card .title a{color:var(--color-text);text-decoration:none}.post-card .title a:hover{color:var(--color-accent)}.post-card .categories{gap:var(--space-xs);flex-wrap:wrap;display:flex}.post-card .category{font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;text-decoration:none}.post-card .category:hover{color:var(--color-accent)}.post-card .excerpt{font-size:var(--font-size-sm);color:var(--color-text-muted);line-height:var(--line-height-base)}.post-card .tags{gap:var(--space-xs);flex-wrap:wrap;display:flex}.post-card .tag{font-size:var(--font-size-sm);color:var(--color-text-muted);text-decoration:none}.post-card .tag:hover{color:var(--color-text)}.post-card .card-footer{justify-content:space-between;align-items:center;margin-top:auto;display:flex}.post-card .reading-time{color:var(--color-text-muted);font-size:.75em}.post-card .read-more{font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:var(--color-text-muted);border:1px solid var(--color-border);padding:var(--space-xs) var(--space-sm);text-decoration:none;transition:color .15s,border-color .15s}.post-card .read-more:hover{color:var(--color-text);border-color:var(--color-text)}.logo-container[data-astro-cid-f7espo7c]{justify-content:flex-start;align-items:center;gap:var(--space-xs);flex-flow:row;text-decoration:none;display:flex}.logo-container[data-astro-cid-f7espo7c] .image[data-astro-cid-f7espo7c]{width:auto;height:var(--font-size-xl);aspect-ratio:1;background:var(--color-text);mask-image:url(/images/logo-spritesheet.png);mask-size:auto var(--font-size-xl);animation:1s steps(31,end) infinite alternate paused logo-noise;display:block;position:relative;overflow:hidden;mask-position:0 0}.logo-container[data-astro-cid-f7espo7c] .text[data-astro-cid-f7espo7c]{font-family:var(--font-heading);color:var(--color-text);font-size:var(--font-size-xl);text-transform:uppercase;line-height:1}.logo-container[data-astro-cid-f7espo7c]:hover .image[data-astro-cid-f7espo7c]{animation-play-state:running}@keyframes logo-noise{0%{mask-position:0 0}to{mask-position:calc(var(--font-size-xl) * 31) 0}}.header{background:var(--color-border);grid-template-columns:20rem 60rem 1fr;align-items:center;gap:2px;height:5rem;display:grid}.header .logo{padding-left:var(--space-lg);background:var(--color-bg);height:100%;box-shadow:inset 0 0 var(--space-sm) var(--color-bg-muted);align-items:center;display:flex}.header .nav{justify-content:center;align-items:center;gap:var(--space-md);background:var(--color-bg);height:100%;box-shadow:inset 0 0 var(--space-sm) var(--color-bg-muted);display:flex}.header .nav a{font-size:var(--font-size-sm);color:var(--color-text-muted);text-decoration:none;transition:color .15s}.header .nav a:hover{color:var(--color-text)}.header .lang{justify-content:flex-end;align-items:center;gap:var(--space-sm);padding-right:var(--space-lg);background:var(--color-bg);height:100%;box-shadow:inset 0 0 var(--space-sm) var(--color-bg-muted);display:flex}.header .lang a,.header .lang .search-btn{font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:var(--color-text-muted);border:1px solid var(--color-border);padding:var(--space-xs) var(--space-sm);cursor:pointer;font-family:inherit;line-height:inherit;background:0 0;text-decoration:none;transition:color .15s,border-color .15s}.header .lang a:hover,.header .lang .search-btn:hover{color:var(--color-text);border-color:var(--color-text)}.footer{background:var(--color-border);grid-template-rows:1fr auto;gap:2px;display:grid}.footer .top{background:var(--color-bg);box-shadow:inset 0 0 var(--space-sm) var(--color-bg-muted);gap:var(--space-lg);padding:var(--space-lg);grid-template-columns:40rem 1fr;display:grid}.footer .top .brand{justify-content:space-between;gap:var(--space-md);flex-direction:column;display:flex}.footer .top .brand .brand-top{gap:var(--space-sm);flex-direction:column;display:flex}.footer .top .brand .logo-container{width:fit-content}.footer .top .brand .tagline{font-size:var(--font-size-sm);color:var(--color-text-muted);line-height:var(--line-height-base)}.footer .top .brand .social{gap:var(--space-md);list-style:none;display:flex}.footer .top .brand .social a{font-size:var(--font-size-sm);color:var(--color-text-muted);text-decoration:none;transition:color .15s}.footer .top .brand .social a:hover{color:var(--color-text)}.footer .top .menus{justify-content:flex-end;gap:var(--space-xl);display:flex}.footer .top .menus .menu{gap:var(--space-sm);flex-direction:column;display:flex}.footer .top .menus .menu .menu-title{font-weight:var(--font-weight-bold);font-size:var(--font-size-sm)}.footer .top .menus .menu ul{gap:var(--space-xs);flex-direction:column;list-style:none;display:flex}.footer .top .menus .menu a{font-size:var(--font-size-sm);color:var(--color-text-muted);text-decoration:none;transition:color .15s}.footer .top .menus .menu a:hover{color:var(--color-text)}.footer .bottom{background:var(--color-bg);box-shadow:inset 0 0 var(--space-sm) var(--color-bg-muted);padding:var(--space-sm) var(--space-lg);border-top:1px solid var(--color-border);font-size:var(--font-size-sm);color:var(--color-text-muted);grid-template-columns:1fr auto 1fr;align-items:center;display:grid}.footer .bottom .right{text-align:right}.footer .bottom .legal-links{gap:var(--space-md);justify-content:center;display:flex}.footer .bottom .legal-links a{color:var(--color-text-muted);text-decoration:none;transition:color .15s}.footer .bottom .legal-links a:hover{color:var(--color-text)}.search-modal{background:0 0;border:none;width:100%;max-width:48rem;margin:8rem auto auto;padding:0}.search-modal::backdrop{backdrop-filter:blur(2px);background:#00000080}.search-modal .inner{background:var(--color-bg);border:1px solid var(--color-border);padding:var(--space-md)}.search-modal .pagefind-ui{--pagefind-ui-font:inherit}body{box-sizing:border-box;background:var(--color-border);border:2px solid var(--color-border);grid-template-rows:auto 1fr auto;gap:2px;min-height:100svh;display:grid}main{background:var(--color-border);flex-direction:column;grid-row:2;gap:2px;display:flex}.hero{background:var(--color-border);grid-template-columns:1fr 1fr;gap:2px;display:grid}.hero .text{padding:var(--space-xl) var(--space-xl) var(--space-xl) var(--space-lg);background:var(--color-bg);box-shadow:inset 0 0 var(--space-sm) var(--color-bg-muted);flex-direction:column;justify-content:space-between;display:flex}.hero .top{gap:var(--space-xs);flex-direction:column;display:flex}.hero .top h1{font-size:var(--font-size-3xl);text-transform:uppercase;font-weight:400;line-height:var(--line-height-heading)}.hero .top p{font-size:var(--font-size-base);color:var(--color-text-muted);line-height:var(--line-height-base)}.hero .actions{gap:var(--space-sm);display:flex}.hero .actions a{font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:var(--color-text-muted);border:1px solid var(--color-border);padding:var(--space-xs) var(--space-sm);text-decoration:none;transition:color .15s,border-color .15s}.hero .actions a:hover{color:var(--color-text);border-color:var(--color-text)}.hero .image{aspect-ratio:4/3;background:var(--color-bg);justify-content:center;align-items:center;display:flex;overflow:hidden}.hero .image>*{object-fit:cover;width:100%;height:100%}.maintenance[data-astro-cid-g2wlkqgi]{justify-content:center;align-items:center;gap:var(--space-md);text-align:center;min-height:100%;padding:var(--space-lg);background:var(--color-bg);flex-direction:column;display:flex}.title[data-astro-cid-g2wlkqgi]{font-size:var(--font-size-2xl);line-height:var(--line-height-heading);margin:0}.message[data-astro-cid-g2wlkqgi]{font-size:var(--font-size-base);color:var(--color-text-muted);max-width:32rem;line-height:var(--line-height-base);margin:0}
