/*! tailwindcss v4.0.0-alpha.24 | MIT License | https://tailwindcss.com */
@layer theme{:root{--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-family-sans);--default-font-feature-settings:var(--font-family-sans--font-feature-settings);--default-font-variation-settings:var(--font-family-sans--font-variation-settings);--default-mono-font-family:var(--font-family-mono);--default-mono-font-feature-settings:var(--font-family-mono--font-feature-settings);--default-mono-font-variation-settings:var(--font-family-mono--font-variation-settings);--breakpoint-sm:40rem;--breakpoint-md:48rem;--breakpoint-lg:64rem;--breakpoint-xl:80rem;--breakpoint-2xl:96rem;--animate-spin:spin 1s linear infinite;--animate-ping:ping 1s cubic-bezier(0,0,.2,1)infinite;--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--animate-bounce:bounce 1s infinite;--blur:8px;--blur-sm:4px;--blur-md:12px;--blur-lg:16px;--blur-xl:24px;--blur-2xl:40px;--blur-3xl:64px;--radius:.25rem;--radius-sm:.125rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--radius-3xl:1.5rem;--radius-4xl:2rem;--shadow:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--shadow-xs:0 1px #0000000d;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;--shadow-2xl:0 25px 50px -12px #00000040;--shadow-inner:inset 0 2px 4px 0 #0000000d;--inset-shadow-xs:inset 0 1px #0000000d;--inset-shadow-sm:inset 0 1px 1px #0000000d;--inset-shadow:inset 0 2px 4px #0000000d;--drop-shadow:0 1px 2px #0000001a,0 1px 1px #0000000f;--drop-shadow-sm:0 1px 1px #0000000d;--drop-shadow-md:0 4px 3px #00000012,0 2px 2px #0000000f;--drop-shadow-lg:0 10px 8px #0000000a,0 4px 3px #0000001a;--drop-shadow-xl:0 20px 13px #00000008,0 8px 5px #00000014;--drop-shadow-2xl:0 25px 25px #00000026;--drop-shadow-none:0 0 #0000;--spacing-px:1px;--spacing-0:0px;--spacing-0_5:.125rem;--spacing-1:.25rem;--spacing-1_5:.375rem;--spacing-2:.5rem;--spacing-2_5:.625rem;--spacing-3:.75rem;--spacing-3_5:.875rem;--spacing-4:1rem;--spacing-5:1.25rem;--spacing-6:1.5rem;--spacing-7:1.75rem;--spacing-8:2rem;--spacing-9:2.25rem;--spacing-10:2.5rem;--spacing-11:2.75rem;--spacing-12:3rem;--spacing-14:3.5rem;--spacing-16:4rem;--spacing-20:5rem;--spacing-24:6rem;--spacing-28:7rem;--spacing-32:8rem;--spacing-36:9rem;--spacing-40:10rem;--spacing-44:11rem;--spacing-48:12rem;--spacing-52:13rem;--spacing-56:14rem;--spacing-60:15rem;--spacing-64:16rem;--spacing-72:18rem;--spacing-80:20rem;--spacing-96:24rem;--width-3xs:16rem;--width-2xs:18rem;--width-xs:20rem;--width-sm:24rem;--width-md:28rem;--width-lg:32rem;--width-xl:36rem;--width-2xl:42rem;--width-3xl:48rem;--width-4xl:56rem;--width-5xl:64rem;--width-6xl:72rem;--width-7xl:80rem;--width-prose:65ch;--font-family-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-family-serif:"Young Serif",system-ui,serif;--font-family-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--letter-spacing-tighter:-.05em;--letter-spacing-tight:-.025em;--letter-spacing-normal:0em;--letter-spacing-wide:.025em;--letter-spacing-wider:.05em;--letter-spacing-widest:.1em;--line-height-none:1;--line-height-tight:1.25;--line-height-snug:1.375;--line-height-normal:1.5;--line-height-relaxed:1.625;--line-height-loose:2;--line-height-3:.75rem;--line-height-4:1rem;--line-height-5:1.25rem;--line-height-6:1.5rem;--line-height-7:1.75rem;--line-height-8:2rem;--line-height-9:2.25rem;--line-height-10:2.5rem;--perspective-dramatic:100px;--perspective-near:300px;--perspective-normal:500px;--perspective-midrange:800px;--perspective-distant:1200px;--transition-timing-function-linear:linear;--transition-timing-function-in:cubic-bezier(.4,0,1,1);--transition-timing-function-out:cubic-bezier(0,0,.2,1);--transition-timing-function-in-out:cubic-bezier(.4,0,.2,1);--color-light-50:#eaeefa;--color-light-100:#dae0f6;--color-light-200:#adbaeb;--color-light-300:#8094e0;--color-light-400:#536fd5;--color-light-500:#2f4ec1;--color-light-600:#243c94;--color-light-700:#192a66;--color-light-800:#0e1739;--color-light-900:#03050c;--color-light-950:#000;--color-light:var(--color-light-100);--color-dark-50:#c3c8df;--color-dark-100:#a9b0d0;--color-dark-200:#8e98c2;--color-dark-300:#7480b3;--color-dark-400:#5a68a5;--color-dark-500:#4b578b;--color-dark-600:#3d4770;--color-dark-700:#2f3656;--color-dark-800:#20253b;--color-dark-900:#191d2e;--color-dark-950:#161927;--color-dark:var(--color-dark-900);--color-primary-50:#fef6fe;--color-primary-100:#fce3fc;--color-primary-200:#f8bff8;--color-primary-300:#f49af4;--color-primary-400:#f075f0;--color-primary-500:#eb42ea;--color-primary-600:#dd18dd;--color-primary-700:#aa12aa;--color-primary-800:#780d78;--color-primary-900:#450845;--color-primary-950:#2c052c;--color-primary:var(--color-primary-400);--color-secondary-50:#f8f9fc;--color-secondary-100:#eaecf6;--color-secondary-200:#cdd2ea;--color-secondary-300:#b1b9dd;--color-secondary-400:#949fd1;--color-secondary-500:#6d7cc0;--color-secondary-600:#4a5bab;--color-secondary-700:#394684;--color-secondary-800:#28315d;--color-secondary-900:#171c35;--color-secondary-950:#0f1222;--color-secondary:var(--color-secondary-400);--color-fg:var(--color-light);--color-bg:var(--color-dark);--color-bg-code:var(--color-dark-800);--color-bg-flash:var(--color-dark-700);--font-size-xs:clamp(.69rem,.04vi + .69rem,.72rem);--font-size-sm:clamp(.83rem,.11vi + .81rem,.9rem);--font-size-base:clamp(1rem,.21vi + .96rem,1.13rem);--font-size-md:clamp(1.2rem,.34vi + 1.13rem,1.41rem);--font-size-lg:clamp(1.44rem,.53vi + 1.33rem,1.76rem);--font-size-xl:clamp(1.73rem,.78vi + 1.57rem,2.2rem);--font-size-xxl:clamp(2.07rem,1.12vi + 1.85rem,2.75rem);--font-size-xxxl:clamp(2.49rem,1.57vi + 2.17rem,3.43rem);--font-size-xs--line-height:1;--font-size-sm--line-height:1;--font-size-base--line-height:1;--font-size-md--line-height:1;--font-size-lg--line-height:1;--font-size-xl--line-height:1;--font-size-xxl--line-height:1;--font-size-xxxl--line-height:1}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}body{line-height:inherit}hr{color:inherit;border-top-width:1px;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;background:0 0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;background:0 0}input:where(:not([type=button],[type=reset],[type=submit])),select,textarea{border:1px solid}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}::-webkit-search-decoration{-webkit-appearance:none}summary{display:list-item}ol,ul,menu{list-style:none}textarea{resize:vertical}::placeholder{opacity:1;color:color-mix(in srgb,currentColor 50%,transparent)}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]{display:none!important}body{background-color:var(--color-bg);color:var(--color-fg);font-size:var(--font-size-base);scroll-behavior:smooth;max-width:120rem;min-height:100vh;margin-inline:auto}@media (prefers-reduced-motion:reduce){body{scroll-behavior:auto}}h1,h2,h3,h4,h5,h6{color:var(--color-secondary);font-weight:400;font-family:var(--font-family-serif)}h1{font-size:var(--font-size-xxl)}h2,.post-heading-wrapper:has(h2)>a{font-size:var(--font-size-xl)}h3,h4,.post-heading-wrapper:has(h3)>a,.post-heading-wrapper:has(h4)>a{font-size:var(--font-size-lg)}h5,h6,.post-heading-wrapper:has(h5)>a,.post-heading-wrapper:has(h6)>a{font-size:var(--font-size-md)}a{color:inherit}a:hover,a:active{color:var(--color-primary)}a[href^=http]:after{content:" ↗"}p a,a[data-anchor=true]{color:var(--color-primary)}:is(p a,a[data-anchor=true]):hover,:is(p a,a[data-anchor=true]):active{color:var(--color-fg)}a{text-decoration-line:underline;text-decoration-thickness:2px}:is(h1,h2,h3,h4,h5,h6)>a{text-decoration-line:none}:is(h1,h2,h3,h4,h5,h6)>a:is(:hover,:active,:focus-visible){text-decoration-line:underline}a[data-anchor=true]{line-height:1;text-decoration-line:underline;text-decoration-thickness:2px;display:inline-block;transform:translate(-.05em)translateY(-.05em)}pre,code{font-family:monospace}pre{background-color:var(--color-dark-950);border:.3em solid var(--color-dark-600);font-size:var(--font-size-sm);padding:var(--pre-padding);font-weight:500;overflow-x:scroll}@keyframes bg-flash{0%{background-color:var(--color-bg-flash)}to{background-color:#0000}}}@layer components{main{container:main-content/inline-size}.posts-list{align-items:center;column-gap:calc(1em + 1vw);display:grid}@container main-content (width>48ch){.posts-list{grid-template-columns:repeat(2,1fr);grid-auto-rows:1fr}}.posts-list li{border-block-end:1px solid var(--color-dark-700);grid-template-rows:1fr auto;row-gap:1em;padding-block:1em;font-weight:500;display:grid}@container main-content (width>48ch){.posts-list li{grid-template-rows:initial;grid-template-columns:subgrid;grid-column:1/-1;grid-auto-flow:column;justify-content:space-between;align-items:center}}.posts-list a{font-size:var(--font-size-md);max-width:32ch;text-decoration-line:none}.posts-list a:hover,.posts-list a:focus-visible{text-decoration-line:underline}.posts-list time{color:var(--color-secondary);font-size:var(--font-size-sm);font-weight:700}@container main-content (width>48ch){.posts-list time{text-align:end;justify-self:end}}.tags-list{flex-wrap:wrap;gap:.5em;display:flex}.tags-list li>a{--padding-block-size:.15em;--padding-inline-size:.6em;--tag-hole-punch-size:.45em;background-color:var(--color-dark-800);font-size:var(--font-size-sm);padding-block:var(--padding-block-size);clip-path:polygon(0% 0%,0% 100%,calc(100% - .45em) 100%,100% calc(100% - .45em),100% .45em,calc(100% - .45em) 0%);will-change:transform;padding-inline-start:var(--padding-inline-size);padding-inline-end:calc(var(--padding-block-size) + var(--padding-inline-size) + var(--tag-hole-punch-size));font-weight:600;text-decoration-line:none;transition:transform .3s ease-out;display:inline-block;position:relative}.tags-list li>a:before{background-color:var(--color-dark-600);content:"";clip-path:polygon(0% 0%,0% 100%,.15em 100%,.15em .15em,calc(100% - .525em) .15em,calc(100% - .15em) .525em,calc(100% - .15em) calc(100% - .525em),calc(100% - .525em) calc(100% - .15em),.15em calc(100% - .15em),.15em 100%,calc(100% - .45em) 100%,100% calc(100% - .45em),100% .45em,calc(100% - .45em) 0%);position:absolute;inset:0}.tags-list li>a:after{content:"";clip-path:circle(50%);background-color:var(--color-dark-500);top:50%;right:var(--tag-hole-punch-size);width:.45em;height:.45em;position:absolute;transform:translateY(-50%)}.tags-list li>a:focus-visible{outline-offset:-.4em}.tags-list li>a:hover{transition:transform .15s ease-in}.tags-list li>a:nth-child(odd):hover{transform:rotate(5deg)}.tags-list li>a:nth-child(2n):hover{transform:rotate(-5deg)}}@layer utilities{.\@container{container-type:inline-size}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fixed{position:fixed}.static{position:static}.sticky{position:sticky}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.transform{transform:var(--tw-rotate-x)var(--tw-rotate-y)var(--tw-rotate-z)var(--tw-skew-x)var(--tw-skew-y)}.flex-wrap{flex-wrap:wrap}.border{border-style:var(--tw-border-style);border-width:1px}.lowercase{text-transform:lowercase}.underline{text-decoration-line:underline}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,-webkit-backdrop-filter,backdrop-filter;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--content:60ch;--sidebar:16ch;--gap-col:6ch;--gap-row:3ch;--viewport-padding:calc(var(--gap-col)/2 + 1vw);--pre-padding:1em}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media screen and (width<400px){:root{--viewport-padding:calc(var(--gap-col)/3)}}.flow>*+*{margin-block-start:var(--flow-space,1em)}#return-to-top-intersection{opacity:0;pointer-events:none;content:"";width:1px;height:1px;position:absolute;top:75vh;left:0}pre[class]:has(code[class]){touch-action:pan-x}:focus-visible{outline-offset:2px;outline:1px solid}.readable{align-items:flex-start;gap:var(--gap-col);flex-wrap:wrap;display:flex}.readable>:first-child{flex-grow:999;flex-basis:min(100%,var(--content));max-width:min(100%,var(--content));margin-inline:auto}@supports (-moz-orient:inline){@layer base{*,:before,:after,::backdrop{--tw-rotate-x:rotateX(0);--tw-rotate-y:rotateY(0);--tw-rotate-z:rotateZ(0);--tw-skew-x:skewX(0);--tw-skew-y:skewY(0);--tw-border-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial}}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes ping{75%,to{opacity:0;transform:scale(2)}}@keyframes pulse{50%{opacity:.5}}@keyframes bounce{0%,to{animation-timing-function:cubic-bezier(.8,0,1,1);transform:translateY(-25%)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:none}}@property --tw-rotate-x{syntax:"<transform-function>";inherits:false;initial-value:rotateX(0)}@property --tw-rotate-y{syntax:"<transform-function>";inherits:false;initial-value:rotateY(0)}@property --tw-rotate-z{syntax:"<transform-function>";inherits:false;initial-value:rotate(0)}@property --tw-skew-x{syntax:"<transform-function>";inherits:false;initial-value:skew(0)}@property --tw-skew-y{syntax:"<transform-function>";inherits:false;initial-value:skewY(0)}@property --tw-border-style{syntax:"<custom-ident>";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}