@font-face{font-family:"Libertinus Sans";src:url("fonts/LibertinusSans-Regular.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:"Libertinus Sans";src:url("fonts/LibertinusSans-Bold.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:"Libertinus Sans";src:url("fonts/LibertinusSans-Italic.woff2") format("woff2");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:"Libertinus Serif";src:url("fonts/LibertinusSerif-Regular.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:"Libertinus Serif";src:url("fonts/LibertinusSerif-Bold.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:"Libertinus Serif";src:url("fonts/LibertinusSerif-Italic.woff2") format("woff2");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:"Libertinus Serif";src:url("fonts/LibertinusSerif-BoldItalic.woff2") format("woff2");font-weight:700;font-style:italic;font-display:swap}@font-face{font-family:"Libertinus Serif";src:url("fonts/LibertinusSerif-Semibold.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:"Libertinus Serif";src:url("fonts/LibertinusSerif-SemiboldItalic.woff2") format("woff2");font-weight:600;font-style:italic;font-display:swap}@font-face{font-family:"Libertinus Serif Display";src:url("fonts/LibertinusSerifDisplay-Regular.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:"Libertinus Serif Initials";src:url("fonts/LibertinusSerifInitials-Regular.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:"Libertinus Mono";src:url("fonts/LibertinusMono-Regular.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:"Libertinus Keyboard";src:url("fonts/LibertinusKeyboard-Regular.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:"Libertinus Math";src:url("fonts/LibertinusMath-Regular.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}body{font-family:var(--font-text),var(--font-emoji)}:root{--bg-color: linear-gradient( rgb(255 255 255 / 0.8), rgb(255 255 255 / 0.8) );--fg-color: rgb(0 0 0 / 0.8);--fg-muted-1: rgb(0 0 0 / 0.05);--fg-muted-2: rgb(0 0 0 / 0.1);--fg-muted-3: rgb(0 0 0 / 0.2);--fg-muted-4: rgb(0 0 0 / 0.5);--fg-muted-5: rgb(0 0 0 / 0.6);--nav-bg: rgb(242 242 242 / 0.7);--blue-bg: rgb(53 132 228 / 0.1);--blue-fg: rgb(53 132 228);--green-bg: rgb(38 162 105 / 0.1);--green-fg: rgb(38 162 105);--purple-bg: rgb(145 65 172 / 0.1);--purple-fg: rgb(145 65 172);--red-bg: rgb(224 27 36 / 0.1);--red-fg: rgb(224 27 36);--yellow-bg: rgb(156 110 3 / 0.1);--yellow-fg: rgb(156 110 3);--star-featured: rgb(156 110 3 / 0.15);--active: 0.9;--blur: saturate(180%) blur(0.75rem);--container-width: 1000px;--edge-highlight: inset 0 0.0625rem 0 rgb(255 255 255 / 0.1);--rounded-corner-small: 0.5rem;--rounded-corner: 0.75rem;--shadow-raised: 0 0 0 0.0625rem rgb(0 0 0 / 0.06), 0 0.125rem 0.375rem 0.125rem rgb(0 0 0 / 0.14), 0 0.25rem 0.75rem 0.25rem rgb(0 0 0 / 0.06);--shadow: 0 0 0 0.0625rem rgb(0 0 0 / 0.03), 0 0.0625rem 0.1875rem 0.0625rem rgb(0 0 0 / 0.07), 0 0.125rem 0.375rem 0.125rem rgb(0 0 0 / 0.03);--transition-long: 0.8s;--transition-longer: 0.4s;--transition: 0.2s;--font-body: "Libertinus Serif", serif;--font-title: "Libertinus Sans", sans-serif;--font-math: "Libertinus Math", serif;--font-keyboard: "Libertinus Keyboard", monospace;--font-emoji: "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-text: "Libertinus Serif", serif;--font-code: ui-monospace, "Cascadia Code", "Source Code Pro", Menlo, Consolas, "DejaVu Sans Mono", monospace;--font-size: 22px;--font-size-mobile: 16px;--mobile-width: 480px}[data-theme=dark]{--bg-color: linear-gradient(rgb(0 0 0 / 0.9), rgb(0 0 0 / 0.9));--fg-color: rgb(255 255 255);--fg-muted-1: rgb(255 255 255 / 0.05);--fg-muted-2: rgb(255 255 255 / 0.1);--fg-muted-3: rgb(255 255 255 / 0.2);--fg-muted-4: rgb(255 255 255 / 0.5);--fg-muted-5: rgb(255 255 255 / 0.6);--nav-bg: rgb(25 25 25 / 0.7);--blue-bg: rgb(153 193 241 / 0.1);--blue-fg: rgb(153 193 241);--green-bg: rgb(143 240 164 / 0.1);--green-fg: rgb(143 240 164);--purple-bg: rgb(220 138 221 / 0.1);--purple-fg: rgb(220 138 221);--red-bg: rgb(226 97 81 / 0.1);--red-fg: rgb(246 97 81);--yellow-bg: rgb(248 228 92 / 0.1);--yellow-fg: rgb(248 228 92);--star-featured: rgb(248 228 92 / 0.05);color-scheme:dark}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--bg-color: linear-gradient(rgb(0 0 0 / 0.9), rgb(0 0 0 / 0.9));--fg-color: rgb(255 255 255);--fg-muted-1: rgb(255 255 255 / 0.05);--fg-muted-2: rgb(255 255 255 / 0.1);--fg-muted-3: rgb(255 255 255 / 0.2);--fg-muted-4: rgb(255 255 255 / 0.5);--fg-muted-5: rgb(255 255 255 / 0.6);--nav-bg: rgb(25 25 25 / 0.7);--blue-bg: rgb(153 193 241 / 0.1);--blue-fg: rgb(153 193 241);--green-bg: rgb(143 240 164 / 0.1);--green-fg: rgb(143 240 164);--purple-bg: rgb(220 138 221 / 0.1);--purple-fg: rgb(220 138 221);--red-bg: rgb(226 97 81 / 0.1);--red-fg: rgb(246 97 81);--yellow-bg: rgb(248 228 92 / 0.1);--yellow-fg: rgb(248 228 92);--star-featured: rgb(248 228 92 / 0.05);color-scheme:dark}}.dialog-buttons{display:flex;flex-direction:row;justify-content:space-between;align-items:baseline;margin-top:4rem}.inline-button{-webkit-appearance:none;appearance:none;transition:var(--transition);cursor:pointer;box-shadow:var(--edge-highlight);border:none;border-radius:var(--rounded-corner);background-color:var(--fg-muted-1);padding:.75rem 1rem;color:var(--fg-color);font-weight:bold;font-size:.875rem;line-height:1;text-decoration:none}.inline-button:hover{background-color:var(--fg-muted-2);text-decoration:none}.inline-button:active{transform:scale(var(--active))}.inline-button.colored{box-shadow:none;background-color:rgba(0,0,0,0);color:var(--primary-color)}.inline-button.colored:hover{box-shadow:var(--edge-highlight);background-color:var(--primary-color-alpha)}.my-button{display:inline-block;padding:.2rem .5rem;background-color:var(--fg-muted-3);text-decoration:none;border-radius:4px;font-weight:500;transition:background-color .2s}.my-button:hover{background-color:var(--fg-muted-4)}pre,code,kbd,samp{font-family:var(--font-code)}code:not(pre code){box-shadow:var(--edge-highlight);border-radius:var(--rounded-corner-small);background-color:var(--fg-muted-1);padding:.125rem .375rem;color:var(--red-fg);font-size:.775em}@media (max-width: var(--mobile-width)){code:not(pre code){font-size:.85em;padding:.2rem .4rem}}pre{margin:1rem 0 1rem;box-shadow:var(--edge-highlight),var(--shadow);border-radius:var(--rounded-corner);background-color:var(--fg-muted-1);padding:1rem;max-width:100vw;overflow:auto;line-height:1.25;font-size:.8rem}@media (max-width: var(--mobile-width)){pre{padding:.75rem;font-size:.95rem;line-height:1.4}}pre table{box-shadow:none;border-radius:0;background-color:rgba(0,0,0,0);table-layout:auto;overflow:hidden}pre table tr:nth-child(even){background-color:rgba(0,0,0,0)}pre table tr th,pre table tr td{padding:0}pre table tr th{background-color:rgba(0,0,0,0);font-weight:normal}pre table td:nth-of-type(1){cursor:default;text-align:center}pre mark{display:block;box-shadow:none;border-radius:0;background-color:var(--fg-muted-1);padding:0;color:#f5f5f5}pre[data-linenos]{padding:1rem 0}:root{text-wrap:pretty;scroll-behavior:smooth;accent-color:var(--primary-color);font-size:var(--font-size);overflow-wrap:break-word;}@media (max-width: 768px){:root{font-size:var(--font-size-mobile)}}@media (max-width: var(--mobile-width)){:root{font-size:var(--font-size);}}@media (prefers-color-scheme: dark){:root{color-scheme:dark}}*{box-sizing:border-box}body{line-height:1.6;max-width:var(--container-width);width:100%;margin:0 auto;padding:20px;color:var(--fg-color);}@media (max-width: var(--mobile-width)){body{padding:15px 10px}}.lang-icon{display:inline-block;vertical-align:middle;position:relative;top:2px}.latest-post-content{background:rgba(0,0,0,0);-webkit-mask-image:linear-gradient(to bottom, #000, rgba(0,0,0,0));mask-image:linear-gradient(to bottom, #000, rgba(0,0,0,0))}.post-grid{display:grid;grid-template-columns:150px 1fr;gap:40px;align-items:center}@media (max-width: 600px){.post-grid{grid-template-columns:1fr;gap:15px}}.post-date{font-size:1.06em;padding-left:.8em;color:var(--fg-muted-4)}@media (max-width: 600px){.post-date{padding-left:0;font-size:1.1em}}.post-title{font-size:1.4em;font-weight:bolder}@media (max-width: 600px){.post-title{font-size:1.5em}}.post-description{color:var(--fg-muted-5);font-size:1rem;font-style:italic}@media (max-width: var(--mobile-width)){.post-description{font-size:.95rem}}.post-link{text-decoration:none;color:inherit;display:block;padding:10px 0}.post-link:hover .post-title{text-decoration:underline}.title-box{display:flex;justify-content:space-between;align-items:flex-start}img,video{display:block;margin:1rem auto;box-shadow:var(--edge-highlight),var(--shadow);border-radius:var(--rounded-corner);background-color:var(--fg-muted-1);max-width:100%}img.full,img[src*="#full"],video.full,video[src*="#full"]{width:100%}img.full-bleed,img[src*="#full-bleed"],video.full-bleed,video[src*="#full-bleed"]{margin-right:calc((-100vw + 100%)/2);margin-left:calc((-100vw + 100%)/2);width:100vw;max-width:100vw}img.start,img.end,img[src*="#start"],img[src*="#end"],video.start,video.end,video[src*="#start"],video[src*="#end"]{margin:0;width:30%}@media only screen and (max-width: 720px){img.start,img.end,img[src*="#start"],img[src*="#end"],video.start,video.end,video[src*="#start"],video[src*="#end"]{float:none;margin-inline-start:0;margin-inline-end:0;margin-block-start:1rem;margin-block-end:1rem;width:100%}}img.start,img[src*="#start"],video.start,video[src*="#start"]{float:left;transform-origin:left;margin-inline-end:1rem}:root[dir*=rtl] img.start,:root[dir*=rtl] img[src*="#start"],:root[dir*=rtl] video.start,:root[dir*=rtl] video[src*="#start"]{float:right;transform-origin:right}img.end,img[src*="#end"],video.end,video[src*="#end"]{float:right;transform-origin:right;margin-inline-start:1rem}:root[dir*=rtl] img.end,:root[dir*=rtl] img[src*="#end"],:root[dir*=rtl] video.end,:root[dir*=rtl] video[src*="#end"]{float:left;transform-origin:left}img.pixels,img[src*="#pixels"],video.pixels,video[src*="#pixels"]{image-rendering:pixelated}img.transparent,img.full-bleed,img[src*="#transparent"],img[src*="#full-bleed"],video.transparent,video.full-bleed,video[src*="#transparent"],video[src*="#full-bleed"]{box-shadow:none;border-radius:0;background-color:rgba(0,0,0,0)}img{transition:var(--transition-longer)}img:not(.no-hover,.full-bleed,img[src*="#no-hover"],img[src*="#full-bleed"]){cursor:zoom-in}img:not(.no-hover,.full-bleed,img[src*="#no-hover"],img[src*="#full-bleed"]):hover{transform:scale(1.1);z-index:1;box-shadow:var(--shadow-raised);border-radius:0}img:not(.no-hover,.full-bleed,img[src*="#no-hover"],img[src*="#full-bleed"]).start:hover,img:not(.no-hover,.full-bleed,img[src*="#no-hover"],img[src*="#full-bleed"]).end:hover,img:not(.no-hover,.full-bleed,img[src*="#no-hover"],img[src*="#full-bleed"])[src*="#start"]:hover,img:not(.no-hover,.full-bleed,img[src*="#no-hover"],img[src*="#full-bleed"])[src*="#end"]:hover{transform:scale(1.6)}@media only screen and (max-width: 720px){img:not(.no-hover,.full-bleed,img[src*="#no-hover"],img[src*="#full-bleed"]).start,img:not(.no-hover,.full-bleed,img[src*="#no-hover"],img[src*="#full-bleed"]).end,img:not(.no-hover,.full-bleed,img[src*="#no-hover"],img[src*="#full-bleed"])[src*="#start"],img:not(.no-hover,.full-bleed,img[src*="#no-hover"],img[src*="#full-bleed"])[src*="#end"]{transform-origin:center}img:not(.no-hover,.full-bleed,img[src*="#no-hover"],img[src*="#full-bleed"]).start:hover,img:not(.no-hover,.full-bleed,img[src*="#no-hover"],img[src*="#full-bleed"]).end:hover,img:not(.no-hover,.full-bleed,img[src*="#no-hover"],img[src*="#full-bleed"])[src*="#start"]:hover,img:not(.no-hover,.full-bleed,img[src*="#no-hover"],img[src*="#full-bleed"])[src*="#end"]:hover{transform:scale(1.1)}}img:not(.no-hover,.full-bleed,img[src*="#no-hover"],img[src*="#full-bleed"]).transparent:hover,img:not(.no-hover,.full-bleed,img[src*="#no-hover"],img[src*="#full-bleed"])[src*="#transparent"]:hover{box-shadow:none}#not-found{padding:0 35%;width:100%}h1,h2,h3,h4,h5,h6{text-wrap:balance;margin:2rem 0 1rem;font-weight:bolder;line-height:1.25;font-family:var(--font-title)}h1{font-size:1.8rem}@media (max-width: var(--mobile-width)){h1{font-size:1.8rem}}h2{font-size:1.58rem}@media (max-width: var(--mobile-width)){h2{font-size:1.58rem}}h3{font-size:1.2rem}@media (max-width: var(--mobile-width)){h3{font-size:1.25rem}}small{color:var(--fg-muted-5);font-size:.875em}abbr[title]{cursor:help;text-decoration:underline;text-decoration-style:dotted;text-decoration-thickness:max(1px,.0625em)}figcaption{color:var(--fg-muted-4);font-size:.875em;text-align:center}blockquote{margin:0;border-radius:.25rem;border-inline-start:.25rem solid var(--primary-color);padding:0 .75rem;color:var(--fg-muted-5)}mark,del,ins,samp,q{box-shadow:var(--edge-highlight);border-radius:var(--rounded-corner-small);padding:.125rem .375rem}p{text-align:justify}mark{background-color:var(--primary-color-alpha);color:var(--primary-color)}del{background-color:var(--red-bg);color:var(--red-fg);text-decoration:line-through;text-decoration-thickness:max(1px,.0625em)}ins{background-color:var(--green-bg);color:var(--green-fg);text-decoration:underline;text-decoration-thickness:max(1px,.0625em)}samp{background-color:var(--fg-muted-1);color:var(--fg-muted-5);font-size:.875em}q{background-color:var(--fg-muted-1);color:var(--fg-muted-5);font-style:italic}u{text-decoration:underline;text-decoration-style:wavy;text-decoration-color:var(--red-fg);text-decoration-thickness:max(1px,.0625em)}progress{-webkit-appearance:none;appearance:none;box-shadow:var(--edge-highlight);border:none;border-radius:999px;background-color:var(--fg-muted-1);width:100%;height:.5rem;color:var(--primary-color)}progress:indeterminate{background-color:var(--fg-muted-1)}progress:indeterminate::-moz-progress-bar{background-color:rgba(0,0,0,0)}progress::-webkit-progress-bar{background-color:rgba(0,0,0,0)}progress::-moz-progress-bar{border-radius:999px;background-color:var(--primary-color)}progress::-webkit-progress-value{border-radius:999px;background-color:var(--primary-color)}kbd{display:inline-block;transition:var(--transition);cursor:pointer;box-shadow:inset 0 -.125rem 0 var(--fg-muted-2),0 -.0625rem 0 var(--fg-muted-3);border-radius:var(--rounded-corner-small);background-color:var(--fg-muted-2);padding:.25rem .375rem;font-size:.875em;line-height:1}@media (max-width: var(--mobile-width)){kbd{font-size:1em;padding:.3rem .45rem}}kbd:active{transform:translateY(.125rem);box-shadow:inset 0 .0625rem 0 var(--fg-muted-2);background-color:var(--fg-muted-3)}hr{margin:1.2rem auto;border:none;border-top:.1875rem double var(--fg-muted-2);overflow:visible;text-align:center}dt{font-weight:bold}dd{margin-bottom:1rem}aside{float:right;margin-inline-start:1rem;box-shadow:var(--edge-highlight);border-radius:var(--rounded-corner);background-color:var(--primary-color-alpha);padding:1rem;width:30%}:root[dir*=rtl] aside{float:left}@media only screen and (max-width: 720px){aside{float:none;margin-inline-start:0;width:100%}}details{box-shadow:var(--edge-highlight);border-radius:var(--rounded-corner);background-color:var(--fg-muted-1);padding:1rem}details summary{cursor:pointer;line-height:1.25}details :last-of-type{margin-block-end:0}figure{margin-inline:0}@media (max-width: var(--mobile-width)){input,select,textarea{font-size:var(--font-size-mobile) !important;}a{padding:2px 0}p{margin-bottom:1.2em}ul,ol{padding-left:1.5em}table{display:block;overflow-x:auto;white-space:nowrap}}