@font-face{font-family:Virgil;src:url(/fonts/Virgil-Regular.woff2)format("woff2");font-display:swap}:root{--paper:#fdfcf9;--grid-minor:#1e1e1e07;--grid-major:#1e1e1e0b;--ink:#1e1e1e;--muted:#6b675e;--faint:#a8a292;--accent:#6965db;--accent-hover:#4a47b1;--marker:#ffec99;--fill-violet:#6965db47;--fill-blue:#d0ebff;--font-hand:"Virgil", "Segoe Print", "Comic Sans MS", cursive;--font-body:"Nunito", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Noto Sans CJK SC", sans-serif;--font-mono:ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--paper:#151515;--grid-minor:#ffffff08;--grid-major:#ffffff0e;--ink:#e3e3e8;--muted:#a3a09a;--faint:#6d6a64;--accent:#a8a5ff;--accent-hover:#cdcbff;--marker:#fad2504d;--fill-violet:#a8a5ff4d;--fill-blue:#4dabf72e}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{min-height:100vh;font-family:var(--font-body);color:var(--ink);background-color:var(--paper);background-image:linear-gradient(var(--grid-major) 1px, transparent 1px), linear-gradient(90deg, var(--grid-major) 1px, transparent 1px), linear-gradient(var(--grid-minor) 1px, transparent 1px), linear-gradient(90deg, var(--grid-minor) 1px, transparent 1px);background-size:120px 120px,120px 120px,24px 24px,24px 24px;background-attachment:fixed;margin:0;font-size:1.0625rem;line-height:1.7}.page{flex-direction:column;max-width:46rem;min-height:100vh;margin:0 auto;padding:2.5rem 1.25rem 2rem;display:flex}main{flex-grow:1;padding:3rem 0 4rem}h1,h2,h3,h4{font-family:var(--font-hand);margin:2rem 0 1rem;font-weight:400;line-height:1.25}h1{margin-top:0;font-size:clamp(2.4rem,7vw,3.6rem)}h2{font-size:2rem}h3{font-size:1.5rem}h4{font-size:1.2rem}p,ul,ol{margin:0 0 1.25rem}a{color:var(--accent);text-underline-offset:3px;text-decoration:underline 1.5px}a:hover{color:var(--accent-hover)}:focus-visible{outline:2px dashed var(--accent);outline-offset:3px}hr{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='12'%3E%3Cpath d='M0 6 Q10 1 20 6 T40 6' fill='none' stroke='%23a8a292' stroke-width='1.5'/%3E%3C/svg%3E") 50% repeat-x;border:none;height:12px;margin:2.5rem 0}.hand{font-family:var(--font-hand)}.muted{color:var(--muted)}.marker{background:linear-gradient(100deg, transparent 2%, var(--marker) 4%, var(--marker) 96%, transparent 98%);background-position:0 85%;background-repeat:no-repeat;background-size:100% 55%;padding:0 .2em}.site-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.site-header .brand{font-family:var(--font-hand);color:var(--ink);font-size:1.6rem;text-decoration:none}.site-header ul{flex-wrap:wrap;gap:.25rem;margin:0;padding:0;list-style:none;display:flex}.site-header nav a{font-family:var(--font-hand);color:var(--ink);border:2px solid #0000;border-radius:255px 15px 225px/15px 225px 15px 255px;padding:.35rem .8rem;font-size:1.1rem;text-decoration:none;display:inline-block}.site-header nav a:hover{border-color:var(--ink)}.site-header nav a[aria-current=page]{border:2px solid var(--ink);background-image:repeating-linear-gradient(-45deg, var(--fill-violet) 0 2px, transparent 2px 9px);border-radius:255px 15px 225px/15px 225px 15px 255px}.site-footer{border-top:1.5px dashed var(--faint);font-family:var(--font-hand);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:1rem;padding-top:1.25rem;display:flex}.site-footer p{margin:0}.site-footer ul{gap:1.25rem;margin:0;padding:0;list-style:none;display:flex}.site-footer a{color:var(--muted)}.site-footer a:hover{color:var(--ink)}.intro{margin-bottom:3rem;position:relative}.intro .lead{color:var(--muted);margin-bottom:.75rem;font-size:1.35rem}.annotation{font-family:var(--font-hand);color:var(--accent);align-items:flex-end;gap:.5rem;margin:0 0 .75rem;font-size:1.15rem;display:flex}.annotation svg{stroke:currentColor;flex-shrink:0}.post-list{margin:0 0 2rem;padding:0;list-style:none}.post-list>li{border-bottom:1.5px solid var(--ink);flex-wrap:wrap;align-items:baseline;gap:.25rem 1.5rem;padding:1rem 0;display:flex}.post-list time{font-family:var(--font-hand);color:var(--muted);min-width:7.5rem}.post-list .post-title{color:var(--ink);flex:16rem;font-size:1.35rem;font-weight:700;text-decoration:none}.post-list .post-title:hover{color:var(--accent)}.cards{grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:1.5rem;margin:0;padding:0;list-style:none;display:grid}.cards li:nth-child(2n) .card{border-radius:15px 255px 15px 225px/225px 15px 255px;transform:rotate(.6deg)}.card{background-color:var(--paper);border:2px solid var(--ink);border-radius:255px 15px 225px/15px 225px 15px 255px;flex-direction:column;gap:.5rem;height:100%;padding:1.25rem 1.4rem;transition:transform .2s;display:flex;position:relative;transform:rotate(-.5deg)}.card:hover{background-image:repeating-linear-gradient(-45deg, var(--fill-blue) 0 2px, transparent 2px 9px);transform:rotate(0)translateY(-2px)}.card time{font-family:var(--font-hand);color:var(--muted);font-size:.95rem}.card h3{font-family:var(--font-body);margin:0;font-size:1.3rem;font-weight:800}.card h3 a{color:var(--ink);text-decoration:none}.card h3 a:after{content:"";position:absolute;inset:0}.card p{color:var(--muted);margin:0;font-size:.95rem}.tag-list{flex-wrap:wrap;gap:.6rem;margin:0;padding:0;list-style:none;display:flex}.tag{font-family:var(--font-hand);color:var(--ink);border:1.5px solid var(--ink);border-radius:15px 255px 15px 225px/225px 15px 255px;padding:.15rem .75rem;font-size:.95rem;text-decoration:none;display:inline-block}.tag:hover{color:var(--ink);background-image:repeating-linear-gradient(-45deg, var(--fill-violet) 0 2px, transparent 2px 9px)}.post-header{margin-bottom:2.5rem}.post-header h1{margin-bottom:.5rem}.post-header time{font-family:var(--font-hand);color:var(--muted)}.prose h1{margin-top:0;font-size:2.2rem}.prose img{border:2px solid var(--ink);border-radius:255px 15px 225px/15px 225px 15px 255px;max-width:100%;height:auto}.prose blockquote{color:var(--muted);border:2px solid var(--ink);border-style:dashed;border-radius:15px 255px 15px 225px/225px 15px 255px;margin:1.5rem 0;padding:.75rem 1.25rem}.prose blockquote p:last-child{margin-bottom:0}.prose code{font-family:var(--font-mono);background:var(--marker);border-radius:4px;padding:.1em .35em;font-size:.9em}.prose pre{border:2px solid var(--ink);border-radius:255px 15px 225px/15px 225px 15px 255px;margin:1.5rem 0;padding:1rem 1.25rem;line-height:1.5;overflow-x:auto}.prose pre code{background:0 0;padding:0}.prose table{border-collapse:collapse;width:100%;margin:1.5rem 0}.prose th,.prose td{text-align:left;border-bottom:1.5px solid var(--ink);padding:.5rem .75rem}.post-footer{border-top:1.5px dashed var(--faint);margin-top:3rem;padding-top:1.5rem}.post-footer h4{margin:0 0 .75rem}
