body.is-crt{--c-bg:#120a20;--c-bg-raised:#1c1132;--c-bg-sunken:#0d0718;--c-text:#f3edff;--c-text-muted:#d6c9ee;--c-text-faint:#b3a5cd;--c-border:#3a2b55;--c-border-strong:#503c72;--c-accent:#ffb547;--c-accent-hover:#ffd894;--c-accent-soft:#ffb5471f;--c-link:#ffc76b;--c-link-hover:#ffeccd;--c-selection:#3d2a63;--c-code-bg:#efe9f8;--c-code-text:#2b2038;--c-code-border:#4a3a68;color:var(--c-text);background-color:#120a20}body.is-crt .site-header{background:#0c0616b8;border-bottom-color:#ffb5472e}body.is-crt .site-title,body.is-crt .site-nav__link{color:#fff3dc;text-shadow:0 0 10px #ffb5476b}body.is-crt .site-nav__link:hover{color:#fff}body.is-crt .site-nav__link[aria-current=page]:after{background:#ffb547}body.is-crt .site-footer{color:#fff2dcd1;background:linear-gradient(#08031000 0%,#080310c2 45%);border-top-color:#ffb5472e}body.is-crt .site-footer a{color:#ffc76b}body.is-crt .site-main,body.is-crt .site-footer{z-index:1;position:relative}.crt{z-index:-1;pointer-events:none;--scan-period:14px;--scan-speed:6s;position:fixed;inset:0;overflow:hidden}.crt>*{display:block;position:absolute;inset:0}.crt__sky{background:linear-gradient(#0d0618 0%,#1a0b2e 42%,#2b1046 58%,#4a1252 68%,#260d3a 76%,#120a20 100%);animation:52s ease-in-out infinite alternate crt-sky-drift;inset:-4%}.crt__haze{filter:blur(54px);opacity:.72;background:radial-gradient(40% 32% at 16% 72%,#ff5cbe9e,#0000 72%),radial-gradient(36% 28% at 80% 64%,#7e60ff8c,#0000 74%),radial-gradient(32% 26% at 52% 90%,#ffb54766,#0000 72%);animation:44s ease-in-out infinite alternate crt-haze;inset:-14%}.crt__sun{opacity:.78;filter:blur(1.5px);background:repeating-linear-gradient(0deg,#0000 0 7px,#120a20e6 7px 12px),linear-gradient(#ffe9a0 0%,#ff7ac0 44%,#b13bd6 100%);border-radius:50%;width:24vw;max-width:300px;height:24vw;max-height:300px;animation:19s ease-in-out infinite crt-sun;inset:auto auto 30vh 10vw;box-shadow:0 0 90px 26px #ff6ec747}.crt__floor{perspective:320px;perspective-origin:50% 58%;inset:0}.crt__grid{transform-origin:50% 100%;filter:blur(1.1px);opacity:.8;background-image:repeating-linear-gradient(90deg,#ffb5479e 0 1px,#0000 1px 84px),repeating-linear-gradient(0deg,#ff6ec794 0 1px,#0000 1px 62px);background-size:84px 62px;height:134vh;animation:11s linear infinite crt-grid-run;position:absolute;bottom:-14vh;left:-60%;right:-60%;transform:rotateX(74deg)}.crt__horizon{opacity:.85;background:linear-gradient(90deg,#0000,#ffb547d9,#ff7ac0cc,#0000);height:2px;inset:58% 0 auto;box-shadow:0 0 30px 8px #ff7ac052,0 0 70px 14px #ffb5472e}.crt__scan{inset:0 0 calc(-1 * var(--scan-period)) 0;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAgCAYAAAAv8DnQAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAuSURBVDhP7cjBCQAwDMNAj9X9J0ufCgiygAX3UX7voJN0kk7SSTpJJ+mk1toqGXoODgG0rk4hAAAAAElFTkSuQmCC);background-repeat:repeat;background-size:8px var(--scan-period);image-rendering:pixelated;animation:crt-scan-roll var(--scan-speed) linear infinite;will-change:background-position}.crt__snow{mix-blend-mode:screen;opacity:.07;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMjAiIGhlaWdodD0iMjIwIj48ZmlsdGVyIGlkPSJuIj48ZmVUdXJidWxlbmNlIHR5cGU9ImZyYWN0YWxOb2lzZSIgYmFzZUZyZXF1ZW5jeT0iMC44NSIgbnVtT2N0YXZlcz0iMiIgc3RpdGNoVGlsZXM9InN0aXRjaCIvPjxmZUNvbG9yTWF0cml4IHR5cGU9InNhdHVyYXRlIiB2YWx1ZXM9IjAiLz48L2ZpbHRlcj48cmVjdCB3aWR0aD0iMjIwIiBoZWlnaHQ9IjIyMCIgZmlsdGVyPSJ1cmwoI24pIiBvcGFjaXR5PSIwLjYiLz48L3N2Zz4=);background-size:220px 220px;animation:3.6s steps(4,end) infinite crt-snow-jitter,13s step-end infinite crt-snow-burst}.crt__tear{opacity:0;backdrop-filter:blur(2px)saturate(1.7)hue-rotate(10deg);mix-blend-mode:screen;background:linear-gradient(90deg,#ff00781a,#ffc45a1a);height:13px;animation:2.2s steps(2,end) infinite crt-tear-shake,13s step-end infinite crt-tear-show;inset:auto 0}.crt__tear--a{top:22%}.crt__tear--b{height:9px;animation-duration:2.8s,19s;top:54%}.crt__tear--c{height:19px;animation-duration:2.5s,29s;top:78%}.crt__bar{opacity:.55;background:linear-gradient(#0000,#ffffff0d,#0000);height:20vh;animation:12s linear infinite crt-bar;inset:auto 0}.crt__flicker{mix-blend-mode:screen;opacity:0;background:#ffffff0f;animation:9s step-end infinite crt-flicker}.crt__glass{background:radial-gradient(120% 90% at 50% 45%,#0000 42%,#04010a9e 100%)}@keyframes crt-sky-drift{0%{transform:translateY(-1.2%)}to{transform:translateY(1.6%)}}@keyframes crt-haze{0%{transform:translate(-1.5%,.5%)scale(1.02)}to{transform:translate(2%,-1%)scale(1.06)}}@keyframes crt-sun{0%,to{transform:translate(0,0)}50%{transform:translate(.8vw,-1.4vh)}}@keyframes crt-grid-run{0%{background-position-y:0}to{background-position-y:62px}}@keyframes crt-scan-roll{0%{background-position-y:0}to{background-position-y:var(--scan-period)}}@keyframes crt-snow-jitter{0%{background-position:0 0}to{background-position:-220px 140px}}@keyframes crt-snow-burst{0%,88%{opacity:.07}89%{opacity:.2}90%{opacity:.1}92%{opacity:.17}94%,to{opacity:.07}}@keyframes crt-tear-shake{0%{transform:translate(-5px)}to{transform:translate(5px)}}@keyframes crt-tear-show{0%,93%{opacity:0}94%{opacity:.35}97%{opacity:.22}98%,to{opacity:0}}@keyframes crt-bar{0%{transform:translateY(120vh)}to{transform:translateY(-28vh)}}@keyframes crt-flicker{0%,90%{opacity:0}90.6%{opacity:.35}91%{opacity:.15}91.6%{opacity:.3}92.2%,to{opacity:0}}.crt-screen{isolation:isolate;backdrop-filter:blur(9px)saturate(1.06);background:#0f091aed;border:1px solid #ffb5473d;border-radius:18px;padding:clamp(1.4rem,3.4vw,2.9rem) clamp(1.15rem,3.6vw,3rem);position:relative;box-shadow:0 0 0 1px #0000008c,0 0 46px -8px #ffb5472e,0 30px 70px -30px #000000f2,inset 0 0 0 6px #221539e6,inset 0 0 0 7px #ffb54717,inset 0 0 70px #080310b3}.crt-screen:before{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#ffe4b866,#0000);border-radius:18px 18px 0 0;height:1px;position:absolute;inset:0 0 auto}.crt-screen:after{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(118deg,#ffffff0b 0%,#0000 34%),radial-gradient(130% 105% at 50% 40%,#0000 58%,#06020c6b 100%);position:absolute;inset:0}@supports not (backdrop-filter:blur(1px)){.crt-screen{background:#0d0817fa}}body.is-crt .crt-screen .post-header{border-bottom-color:#ffb54738}body.is-crt .crt-screen .post-header__title{color:#f7f2ff;text-shadow:0 0 20px #ffb54738}body.is-crt .crt-screen .prose{color:var(--c-text)}body.is-crt .crt-screen .prose h2,body.is-crt .crt-screen .prose h3{color:#f6f0ff}body.is-crt .crt-screen .prose h2{border-bottom-color:#ffb54733}body.is-crt .crt-screen .prose a{color:var(--c-link);text-decoration:underline #ffc76b73}body.is-crt .crt-screen .prose a:hover{color:var(--c-link-hover);text-decoration-color:currentColor}body.is-crt .crt-screen .prose blockquote{color:var(--c-text-muted);background:#ffb54714;border-left-color:#ffb547bf}body.is-crt .crt-screen .prose code,body.is-crt .crt-screen .prose pre{color:var(--c-code-text)}body.is-crt .crt-screen .prose pre code{color:inherit}body.is-crt .crt-screen .prose table th,body.is-crt .crt-screen .prose table td{border-color:var(--c-border)}body.is-crt .crt-screen .prose th{background:#ffb54712}body.is-crt .crt-screen .prose hr{border-top-color:#ffb5472e}body.is-crt .crt-screen .prose img,body.is-crt .crt-screen .post-cover{border-color:#ffb54738;box-shadow:0 12px 34px -18px #000000e6}body.is-crt .crt-screen .tag{color:#f6e3c4;background:#ffb54717;border-color:#ffb54747}body.is-crt .crt-screen .tag:hover{color:#fff4e2;background:#ffb5472e;border-color:#ffb5478c}body.is-crt .crt-screen .post-nav__link{background:#0a05148c;border-color:#ffb5472e}body.is-crt .crt-screen .post-nav__link:hover{border-color:#ffb54773}body.is-crt .crt-screen .post-list,body.is-crt .crt-screen .page-header{margin-top:0}body.is-crt .crt-screen .archive-year+.archive-year{margin-top:var(--sp-6)}@media (prefers-reduced-motion:reduce){.crt,.crt *,.crt :before,.crt :after{animation:none!important}.crt__snow{opacity:.16}.crt__tear,.crt__flicker{opacity:0}}@media (width<=720px){.crt__haze{filter:blur(34px);opacity:.42}.crt__sun{width:42vw;height:42vw;bottom:30vh}.crt__floor{height:42vh}.crt__horizon{bottom:42vh}.crt-screen{border-radius:14px;padding:1.25rem 1.1rem}}
