@font-face{font-family:Rubik Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/_astro/rubik-arabic-wght-normal.CGnJ-sf6.woff2)format("woff2-variations");unicode-range:U+6??,U+750-77F,U+870-88E,U+890-891,U+897-8E1,U+8E3-8FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Rubik Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/_astro/rubik-cyrillic-ext-wght-normal.BjodpZir.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:Rubik Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/_astro/rubik-cyrillic-wght-normal.DveCct9I.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Rubik Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/_astro/rubik-hebrew-wght-normal.BIkpbuMU.woff2)format("woff2-variations");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Rubik Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/_astro/rubik-latin-ext-wght-normal.OacczzuJ.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:Rubik Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/_astro/rubik-latin-wght-normal.CnQIisVs.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:Rubik Variable;font-style:italic;font-display:swap;font-weight:300 900;src:url(/_astro/rubik-arabic-wght-italic.DWPcQDwX.woff2)format("woff2-variations");unicode-range:U+6??,U+750-77F,U+870-88E,U+890-891,U+897-8E1,U+8E3-8FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Rubik Variable;font-style:italic;font-display:swap;font-weight:300 900;src:url(/_astro/rubik-cyrillic-ext-wght-italic.D6GrQ2Z2.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:Rubik Variable;font-style:italic;font-display:swap;font-weight:300 900;src:url(/_astro/rubik-cyrillic-wght-italic.Bvmh_w8I.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Rubik Variable;font-style:italic;font-display:swap;font-weight:300 900;src:url(/_astro/rubik-hebrew-wght-italic.CY6H6RI2.woff2)format("woff2-variations");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Rubik Variable;font-style:italic;font-display:swap;font-weight:300 900;src:url(/_astro/rubik-latin-ext-wght-italic.CvT2ySUa.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:Rubik Variable;font-style:italic;font-display:swap;font-weight:300 900;src:url(/_astro/rubik-latin-wght-italic.BSFEwDWV.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:Rubik Mono One;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/rubik-mono-one-cyrillic-400-normal.BnSqJbXw.woff2)format("woff2"),url(/_astro/rubik-mono-one-cyrillic-400-normal.CYYDEcIq.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Rubik Mono One;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/rubik-mono-one-latin-ext-400-normal.CZqoBXpE.woff2)format("woff2"),url(/_astro/rubik-mono-one-latin-ext-400-normal.CJfzRdUT.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:Rubik Mono One;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/rubik-mono-one-latin-400-normal.U2Afr9Di.woff2)format("woff2"),url(/_astro/rubik-mono-one-latin-400-normal.Cd19iSlZ.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{--sky:#5c94fc;--paper:#fff8e7;--paper-warm:#fff1cc;--ink:#1f1a17;--ink-soft:#5b504a;--brick:#c84c0c;--brick-dark:#3a1402;--block:#f8a800;--block-light:#ffd070;--block-dark:#7a3b00;--px:4px;--font-body:"Rubik Variable", system-ui, sans-serif;--font-title:"Rubik Mono One", "Rubik Variable", system-ui, sans-serif;--frame:0 calc(-1 * var(--px)) 0 0 var(--ink), 0 var(--px) 0 0 var(--ink), calc(-1 * var(--px)) 0 0 0 var(--ink), var(--px) 0 0 0 var(--ink)}*,:before,:after{box-sizing:border-box}body{background:var(--sky);min-height:100vh;color:var(--ink);font-family:var(--font-body);flex-direction:column;margin:0;font-size:1.125rem;line-height:1.7;display:flex}img[src^="/art/"]{image-rendering:pixelated}.sky{text-align:center;padding:4.5rem 1rem 3.5rem;position:relative;overflow:hidden}.site-title{z-index:1;font-family:var(--font-title);color:#fff;text-shadow:var(--px) var(--px) 0 var(--ink);font-size:clamp(1.6rem,7vw,3.25rem);line-height:1.2;text-decoration:none;position:relative}.menu{z-index:1;flex-wrap:wrap;justify-content:center;gap:.75rem;margin-top:1.5rem;display:flex;position:relative}.clouds{z-index:0;pointer-events:none;position:fixed;inset:0}.sky,.column,.ground{z-index:1;position:relative}.cloud{animation:14s ease-in-out infinite alternate drift;position:absolute}.cloud-a{top:.75rem;left:6%}.cloud-b{animation-duration:19s;top:6.5rem;right:10%}.cloud-c{animation-duration:16s;top:1.75rem;left:64%}@media (width<=600px){.cloud-b{top:.75rem;right:6%}.cloud-c{display:none}}@keyframes drift{0%{transform:translate(-1.5rem)}to{transform:translate(1.5rem)}}@media (prefers-reduced-motion:reduce){.cloud{animation:none}}.column{flex:1;width:100%;max-width:46rem;margin:0 auto;padding:0 1rem 3rem}.panel{margin:var(--px) var(--px) 2.5rem;background:var(--paper);box-shadow:var(--frame);padding:1.5rem 1.75rem}.post-list{margin:0;padding:0;list-style:none}.post-card h2{margin:0 0 .25rem;font-size:1.5rem;line-height:1.3}.post-card h2 a{color:var(--ink);text-decoration:none}.post-card h2 a:hover{color:var(--brick)}.meta{color:var(--ink-soft);align-items:center;gap:.5rem;margin:0 0 .75rem;font-size:.95rem;font-weight:500;display:flex}.excerpt{margin:0 0 1.25rem}.category{background:var(--block);color:var(--ink);box-shadow:0 -2px 0 0 var(--ink), 0 2px 0 0 var(--ink), -2px 0 0 0 var(--ink), 2px 0 0 0 var(--ink);padding:.05rem .55rem;font-size:.8rem;font-weight:700}.button{margin:var(--px);background:var(--block);color:var(--ink);box-shadow:inset calc(-1 * var(--px)) calc(-1 * var(--px)) 0 0 var(--block-dark), inset var(--px) var(--px) 0 0 var(--block-light), var(--frame);padding:.45rem 1.1rem;font-size:.95rem;font-weight:700;text-decoration:none;display:inline-block}.button:hover{transform:translateY(-2px)}.button:active{transform:translateY(2px)}.button:focus-visible{outline-offset:8px;outline:3px dashed #fff}.diagram{margin:1.75rem var(--px);background:var(--paper-warm);box-shadow:var(--frame);text-align:center;padding:1.25rem 1rem}.diagram svg{width:100%;max-width:420px;height:auto}.diagram figcaption{color:var(--ink-soft);margin-top:.75rem;font-size:.9rem}.equation{margin:1.75rem var(--px);background:var(--paper-warm);box-shadow:var(--frame);text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem;padding:1.25rem 1rem;font-weight:700;display:flex}.equation .arrow{align-items:center;display:flex;position:relative}.equation .arrow img{width:56px;height:18px;image-rendering:pixelated;display:block}.equation .arrow span{color:var(--ink-soft);white-space:nowrap;margin-bottom:1px;font-size:.8rem;line-height:1.2;position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.draft{background:var(--brick);color:var(--paper);box-shadow:0 -2px 0 0 var(--ink), 0 2px 0 0 var(--ink), -2px 0 0 0 var(--ink), 2px 0 0 0 var(--ink);padding:.05rem .55rem;font-size:.8rem;font-weight:700}.feature{width:100%;max-width:100%;height:auto;box-shadow:0 0 0 var(--px) var(--ink);margin:0 0 1.25rem;display:block}.feature[src$=\.svg]{image-rendering:pixelated}.photo{object-fit:cover;width:200px;max-width:100%;height:200px;box-shadow:0 0 0 var(--px) var(--ink), 0 0 0 calc(2 * var(--px)) var(--block);border-radius:50%;margin:.5rem auto 1.5rem;display:block}.post h1{margin:0 0 .5rem;font-size:clamp(1.75rem,5vw,2.25rem);line-height:1.25}.post-body h2,.post-body h3{margin:2rem 0 .5rem;line-height:1.3}.post-body a{color:var(--brick);text-decoration-thickness:2px}.post-body img{max-width:100%;height:auto}.post-body blockquote{border-left:var(--px) solid var(--block);background:var(--paper-warm);margin:1.5rem 0;padding:.25rem 1rem}.post-body pre{padding:1rem;font-size:.9rem;overflow-x:auto}.post-body code{font-size:.9em}.back{margin:0 0 1rem}.hills{align-items:flex-end;gap:2.5rem;padding-left:8%;display:flex}.hills img{display:block}.grass{height:16px;image-rendering:pixelated;background:url(/art/grass.svg) 0 0/32px 16px repeat-x}.bricks{text-align:center;background:var(--brick) url(/art/brick.svg) repeat;image-rendering:pixelated;background-size:48px 48px;padding:1.75rem 1rem 2.25rem}.bricks p{background:var(--ink);color:var(--paper);margin:0;padding:.25rem .75rem;font-size:.9rem;font-weight:500;display:inline-block}
