*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{color-scheme:light;--background:#eae8e6;--primary:#211f1c;--accent:#e43e0c;--accent-text:#ae3009;--accent-strong:#882507;--accent-fill:#ae3009;--on-accent:#f6f5f3;--highlight:#ae3009;--muted:#6c6660;--muted-strong:#514d48;--rule:#201f1d24;--surface:#e2deda;--image-edge:#211f1c14;--wash-tone:contrast(.35) brightness(1.4) saturate(1.9);--wash-veil:74%;--glow-lightness:.72;--glow-chroma:.2;--shade-alpha:.1;--success:#186231;--warning:#885207;--error:#a51d1d;--noise:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.06'/%3E%3C/svg%3E");--font-mono:"Martian Mono", ui-monospace, monospace;--font-sans:"Archivo", system-ui, sans-serif;--font-serif:"Literata", Georgia, serif;--step--2:.75rem;--step--1:.875rem;--step-0:1rem;--step-1:1.2rem;--step-2:1.44rem;--step-3:1.728rem;--step-4:2.074rem;--step-5:2.488rem;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4rem;--border-size:1px;--tap-target:44px;--container:1240px;--measure:66ch;--measure-tight:62ch;--dur-fast:90ms;--dur:.14s;--dur-slow:.24s;--ease:cubic-bezier(.2, 0, 0, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--stagger:18ms}html[data-theme=dark]{color-scheme:dark;--background:#1e1c1a;--primary:#e5e3e1;--accent:#f57047;--accent-text:#f8997c;--accent-strong:#f89d81;--accent-fill:#f57047;--on-accent:#1e1c1a;--highlight:#f57047;--muted:#99948f;--muted-strong:#bcb8b3;--rule:#e5e3e12e;--surface:#2b2926;--image-edge:#f6f5f314;--wash-tone:contrast(.6) brightness(.45) saturate(2.6);--wash-veil:50%;--shade-alpha:.5;--success:#6ecf8e;--warning:#f2bf5a;--error:#ec7979}html{font-size:16px}@media (resolution>=1.5x){html{font-size:17px}}@media (resolution>=2x){html{font-size:18px}}body{background-image:var(--noise);background-size:256px 256px;background-color:var(--background);min-height:100dvh;color:var(--primary);font-family:var(--font-sans);flex-direction:column;align-items:center;line-height:1.5;display:flex}:focus-visible{outline:3px solid var(--primary);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}button:active,.btn:active{scale:1}}button,.btn{transition:scale var(--dur-fast) var(--ease);&:active:not(:disabled){scale:.96}}main{width:100%;max-width:1180px;padding:0 var(--space-4);flex-direction:column;justify-content:center;align-items:center;display:flex}article.saved{& .prose img{width:100%;max-width:100%;margin:var(--space-5) auto;@media (width>=768px){margin:var(--space-6) auto}}}img,video{width:100%;height:auto;display:block}a{color:var(--accent-text);text-underline-offset:.2rem;transition:background-color var(--dur) var(--ease), color var(--dur) var(--ease);text-decoration-thickness:1px;&:hover{background:var(--primary);color:var(--background);text-decoration-color:#0000}}.mono{font-family:var(--font-mono);letter-spacing:.02em}.page-title{font-family:var(--font-sans);letter-spacing:-.02em;text-wrap:balance;font-size:clamp(2rem,5vw,3.5rem);font-weight:800;line-height:1.05}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;min-height:var(--tap-target);background:var(--primary);color:var(--background);font-family:var(--font-mono);font-size:var(--step--2);text-transform:uppercase;align-items:center;padding:.75rem 1.25rem;text-decoration:none;display:inline-flex;position:absolute;top:0;left:0;transform:translateY(-150%);&:focus{transform:translateY(0)}}.favicon{width:1rem;height:1rem;display:inline-block}.icon{vertical-align:-.125em;flex-shrink:0;width:1em;height:1em;display:inline-block}@keyframes card-in{0%{opacity:0;translate:0 6px}}.bookmarks .card-in{animation:card-in var(--dur-slow) var(--ease-out) backwards}.bookmarks{width:100%}.bookmarks .year[hidden]{display:none}.bookmarks.grid .rows{column-gap:var(--space-5);grid-template-columns:repeat(auto-fill,minmax(260px,1fr));grid-auto-rows:1px;align-items:start;row-gap:0;display:grid}.bookmarks.grid .rows>article{margin-bottom:var(--space-5)}.sprite[data-astro-cid-t4lnswie]{display:none}.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}body>header{align-items:center;gap:var(--space-4);width:100%;max-width:1180px;padding:var(--space-2) var(--space-4);z-index:2;background-color:var(--background);background-image:var(--noise);background-size:256px 256px;flex-direction:row;display:flex;position:sticky;top:0;& nav{margin-left:auto;display:flex}& button,& .btn{min-width:var(--tap-target);min-height:var(--tap-target);cursor:pointer;padding:var(--space-2);color:var(--primary);font-family:var(--font-mono);font-size:var(--step--2);transition:background-color var(--dur) var(--ease), color var(--dur) var(--ease), scale var(--dur-fast) var(--ease);background:0 0;border:0;justify-content:center;align-items:center;text-decoration:none;display:inline-flex;&:hover,&:focus-visible{background:var(--surface);color:var(--primary)}&:active{scale:.96}}}#theme-toggle .sun-icon{display:none}#theme-toggle .moon-icon,[data-theme=dark] #theme-toggle .sun-icon{display:inline-block}[data-theme=dark] #theme-toggle .moon-icon{display:none}body>header .logo{& a{min-height:var(--tap-target);padding-block:var(--space-2);color:var(--primary);align-items:baseline;gap:.3rem;text-decoration:none;display:inline-flex;&:hover,&:focus-visible{color:var(--accent-text);background:0 0}}& .mark{font-family:var(--font-serif);font-weight:700;font-size:var(--step-3);color:var(--accent-text)}& .text{font-family:var(--font-mono);font-weight:700;font-size:var(--step--1);letter-spacing:.08em}}
