@font-face{font-family:'IBM Plex Sans';font-style:italic;font-weight:400;src:url(/fonts/IBMPlexSans-Italic.woff2) format("woff2")}@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:400;src:url(/fonts/IBMPlexSans-Regular.woff2) format("woff2")}@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:700;src:url(/fonts/IBMPlexSans-Bold.woff2) format("woff2")}@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:400;src:url(/fonts/IBMPlexMono-Regular.woff2) format("woff2")}pre{font-family:'IBM Plex Mono', 'Menlo', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', Courier, monospace;margin:20px 0 0;background:#121923;padding:15px;border-radius:5px;border:1px solid #2f405d}.highlight :is(.o, .ow){color:rgba(210,215,249,0.62)}.highlight .p{color:rgba(210,215,249,0.62)}.highlight :is(.cpf, .l, .s, .sb, .sc, .s2, .si, .s1, .ss){color:#2fb170}.highlight :is(.cp, .se, .sh, .sr, .sx){color:#f06090}.highlight :is(.m, .mb, .mf, .mh, .mi, .il, .mo){color:#e6695b}.highlight :is(.k, .kd, .kn, .kp, .kr, .kt){color:#6791e0}.highlight :is(.kc, .n){color:#d5d7e2}.highlight :is(.no, .nb, .bp){color:#9383e2}.highlight :is(.nc, .ne, .nf, .nn){color:#c973d9}.highlight :is(.nd, .ni, .nl, .nt){color:#6791e0}.highlight :is(.c, .cm, .c1, .ch, .cs, .sd){color:rgba(210,215,249,0.62)}.highlight :is(.na, .nv, .vc, .vg, .vi){color:rgba(210,215,249,0.62)}.highlight :is(.ge, .gr, .gh, .go, .gp, .gs, .gu, .gt){color:rgba(210,215,249,0.62)}.highlight :is(.gd, .gi){margin:0 -2px;padding:0 2px;border-radius:2px}.highlight .gd{background-color:rgba(245,80,61,0.14902)}.highlight .gi{background-color:rgba(11,213,112,0.14902)}.highlight .hll{display:block;margin:0 -16px;padding:0 16px;background-color:rgba(66,135,255,0.14902)}html{scroll-behavior:smooth}body{background:#1e293b;color:#dee0e7;font-family:'IBM Plex Sans', sans-serif;display:flex;flex-direction:column;align-items:center;margin:0;font-size:17px}.page{margin:10px 10px 0}@media only screen and (min-width: 720px){.page{margin-top:40px}}.container{width:1216px;max-width:calc(100vw - 20px);box-sizing:border-box}.flex-center{display:flex;justify-content:center}main{margin-top:20px}@media only screen and (min-width: 720px){main{width:700px;margin-top:30px}}main img{width:calc(100% - 20px);padding:10px}.fill-page{min-height:calc(100vh - 360px)}footer{margin-top:40px;padding:10px 20px 20px;align-self:stretch;display:flex;justify-content:center;background:#101620;color:#a3a9bc;text-align:center;font-size:0.9rem}footer .social{display:flex;justify-content:center}footer .social a{display:inline-block;margin:20px 8px 30px}footer svg{width:30px;height:30px}footer svg path{fill:#c0c4d2}h1,h2,h3,h4,h5,h6{font-weight:500;margin-bottom:30px}h1{font-size:3.75rem}h2{font-size:2.5rem;margin-bottom:1rem}h3{font-size:1.75rem}a{text-decoration:none;color:#e92063}hr{border:0;border-top:1px solid #e92063;margin:20px 0}.font-large{font-size:1.2rem}.increase-line-height{line-height:1.5rem}blockquote{margin:0;padding:0 10px;border-left:0.25em solid #40587f;color:#c0c4d2}nav{display:flex;justify-content:space-between;background:transparent;padding:0 20px}nav .title{padding:20px 0;font-size:1.4rem;font-weight:700}nav .title a{display:flex}nav .title img{width:30px;height:30px;display:block;margin-right:8px}nav a{color:#dee0e7}nav a i{padding-right:5px}.nav-menu-desktop{display:none;align-items:center;margin:0 0}@media only screen and (min-width: 720px){.nav-menu-desktop{display:flex}}.nav-menu-desktop a{display:inline-block;padding:10px 15px;color:#a3a9bc;transition:color 300ms ease}.nav-menu-desktop a.active,.nav-menu-desktop a:hover{color:#dee0e7}.nav-menu-desktop a img{width:35px;height:35px;display:block}.nav-menu-desktop #tiny{width:0}.nav-menu-desktop #menu-back{width:222px;height:42px;border-radius:5px;float:left;position:relative;z-index:-10;transition:all 300ms ease;transform:translateX(0)}.nav-menu-desktop #menu-back.move-to-1{transform:translateX(0);width:222px}.nav-menu-desktop #menu-back.move-to-2{transform:translateX(222px);width:142px}.nav-menu-desktop #menu-back.move-to-3{transform:translateX(379px);width:46px;border-radius:23px}.nav-menu-desktop:hover #menu-back{background:#101620}.nav-menu-mobile{margin-top:15px}@media only screen and (min-width: 720px){.nav-menu-mobile{display:none}}.nav-menu-mobile select{appearance:none;background-color:transparent;color:#dee0e7;font-size:1.2rem;padding:5px 8px;border:1px solid #dee0e7;width:36px;height:36px;border-radius:5px}.nav-border{width:calc(100% - $dot-width);border-top:3px dotted #e92063}.nav-border:after{position:relative;display:block;bottom:-2px;margin-left:3px;width:100%;border-bottom:3px dotted #e92063;content:''}.index main{display:flex;flex-direction:column;align-items:center;justify-content:space-between;text-align:center;margin:0;font-size:1.2em;height:calc(100vh - 120px)}.index main p{margin:0.5em 0}.index main .arrow-down{width:50px;height:50px;margin-bottom:30px;fill:#e92063;cursor:pointer;transition:all 300ms ease}.index main .arrow-down:hover{transform:translateY(-3px);filter:drop-shadow(0 5px 4px #111)}.index h1{color:#e92063}.index p{margin:0.8em 0}.index .panels>div{margin-top:20px;display:flex}@media only screen and (min-width: 720px){.index .panels>div:nth-child(even){justify-content:right}.index .panels>div>div{max-width:60%;min-width:500px;padding:0 15px;box-sizing:border-box}}.index .panels img{margin:0 50px}.blog h2,.blog h3{cursor:pointer}.blog h2::before,.blog h3::before{content:'#';font-size:0.9em;font-weight:400;color:#e92063;padding-right:5px}.plot-title{font-weight:700;text-align:center}.plot-caption{font-style:italic;text-align:center;font-size:0.9em}aside.author{display:flex;align-items:center}aside.author img.headshot{width:50px;height:50px;border-radius:25px;margin-right:20px;padding:0}aside.author svg{width:20px;height:20px;padding:0;position:relative;top:3px}aside.author svg path{fill:#dee0e7}aside.author a svg path{fill:#e92063}svg.github{margin-right:2px}svg.twitter{margin-left:5px;margin-right:2px}svg.calendar{margin-left:5px;margin-right:2px}img.social-icon{width:20px;height:20px;margin-right:20px;padding:0}#scene{max-width:500px;width:100vw;max-height:500px;height:100vw}
