*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246/0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246/0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*
! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com
*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.\!visible{visibility:visible!important}.visible{visibility:visible}.invisible{visibility:hidden}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.left-0{left:0}.top-0{top:0}.z-10{z-index:10}.m-0{margin:0}.-mx-10{margin-left:-2.5rem;margin-right:-2.5rem}.-my-1{margin-top:-.25rem;margin-bottom:-.25rem}.mx-auto{margin-left:auto;margin-right:auto}.my-10{margin-top:2.5rem;margin-bottom:2.5rem}.my-4{margin-top:1rem;margin-bottom:1rem}.my-6{margin-top:1.5rem;margin-bottom:1.5rem}.my-8{margin-top:2rem;margin-bottom:2rem}.\!mb-0{margin-bottom:0!important}.-ml-1{margin-left:-.25rem}.-mr-1\.5{margin-right:-.375rem}.mb-1{margin-bottom:.25rem}.mb-1\.5{margin-bottom:.375rem}.mb-12{margin-bottom:3rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.ml-auto{margin-left:auto}.mr-2{margin-right:.5rem}.mt-24{margin-top:6rem}.mt-3{margin-top:.75rem}.mt-\[3px\]{margin-top:3px}.mt-\[4px\]{margin-top:4px}.\!block{display:block!important}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.\!table{display:table!important}.table{display:table}.grid{display:grid}.contents{display:contents}.list-item{display:list-item}.hidden{display:none}.size-3{width:.75rem;height:.75rem}.size-4{width:1rem;height:1rem}.size-7{width:1.75rem;height:1.75rem}.size-8{width:2rem;height:2rem}.size-9{width:2.25rem;height:2.25rem}.h-0\.5{height:.125rem}.h-1\.5{height:.375rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-48{height:12rem}.h-5{height:1.25rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-\[144px\]{height:144px}.h-\[250px\]{height:250px}.h-full{height:100%}.min-h-\[23rem\]{min-height:23rem}.w-2{width:.5rem}.w-3{width:.75rem}.w-5{width:1.25rem}.w-60{width:15rem}.w-8{width:2rem}.w-\[144px\]{width:144px}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.min-w-0{min-width:0}.min-w-\[8\.5rem\]{min-width:8.5rem}.max-w-\[200px\]{max-width:200px}.max-w-\[32rem\]{max-width:32rem}.max-w-\[672px\]{max-width:672px}.max-w-\[75\%\]{max-width:75%}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.scale-100{--tw-scale-x:1;--tw-scale-y:1}.scale-100,.scale-\[0\.25\]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-\[0\.25\]{--tw-scale-x:0.25;--tw-scale-y:0.25}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(1turn)}}.animate-spin{animation:spin 1s linear infinite}.cursor-default{cursor:default}.cursor-help{cursor:help}.cursor-pointer{cursor:pointer}.cursor-zoom-in{cursor:zoom-in}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.select-all{-webkit-user-select:all;-moz-user-select:all;user-select:all}.\!resize{resize:both!important}.resize{resize:both}.list-none{list-style-type:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-\[3rem_1fr\]{grid-template-columns:3rem 1fr}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.items-baseline{align-items:baseline}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-12{gap:3rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-3\.5{gap:.875rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-x-3{-moz-column-gap:.75rem;column-gap:.75rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-x-6{-moz-column-gap:1.5rem;column-gap:1.5rem}.gap-y-1{row-gap:.25rem}.gap-y-1\.5{row-gap:.375rem}.gap-y-2{row-gap:.5rem}.space-y-2\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.625rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.625rem * var(--tw-space-y-reverse))}.self-center{align-self:center}.overflow-hidden,.truncate{overflow:hidden}.truncate{text-overflow:ellipsis}.truncate,.whitespace-nowrap{white-space:nowrap}.text-balance{text-wrap:balance}.text-pretty{text-wrap:pretty}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-\[14px\]{border-radius:14px}.rounded-\[99px\]{border-radius:99px}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-sm{border-radius:.125rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-0{border-width:0}.border-b-2{border-bottom-width:2px}.border-b-\[0\.8px\]{border-bottom-width:.8px}.border-dashed{border-style:dashed}.border-\[color\:var\(--line\)\]{border-color:var(--line)}.border-\[var\(--control-line\2c \#e1e5ec\)\]{border-color:var(--control-line,#e1e5ec)}.border-emerald-500\/20{border-color:rgb(16 185 129/.2)}.border-sky-500\/20{border-color:rgb(14 165 233/.2)}.border-zinc-100{--tw-border-opacity:1;border-color:rgb(244 244 245/var(--tw-border-opacity,1))}.bg-\[color\:var\(--paper\)\]{background-color:var(--paper)}.bg-\[color\:var\(--paper-sunk\)\]{background-color:var(--paper-sunk)}.bg-\[var\(--control-surface\2c \#ffffff\)\]{background-color:var(--control-surface,#ffffff)}.bg-\[var\(--control-tint\)\]{background-color:var(--control-tint)}.bg-\[var\(--control-tint\2c \#f1f3f7\)\]{background-color:var(--control-tint,#f1f3f7)}.bg-emerald-500\/10{background-color:rgb(16 185 129/.1)}.bg-gray-50{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.bg-rose-500\/10{background-color:rgb(244 63 94/.1)}.bg-sky-500\/10{background-color:rgb(14 165 233/.1)}.bg-transparent{background-color:transparent}.bg-cover{background-size:cover}.object-contain{-o-object-fit:contain;object-fit:contain}.object-cover{-o-object-fit:cover;object-fit:cover}.\!p-0\.5{padding:.125rem!important}.p-0{padding:0}.p-0\.5{padding:.125rem}.p-1\.5{padding:.375rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.\!px-2{padding-left:.5rem!important;padding-right:.5rem!important}.\!py-0\.5{padding-top:.125rem!important;padding-bottom:.125rem!important}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-10{padding-left:2.5rem;padding-right:2.5rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.pb-8{padding-bottom:2rem}.pt-1{padding-top:.25rem}.pt-2{padding-top:.5rem}.text-center{text-align:center}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.\!text-\[11px\]{font-size:11px!important}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-\[10px\]{font-size:10px}.text-\[11\.5px\]{font-size:11.5px}.text-\[11px\]{font-size:11px}.text-\[12px\]{font-size:12px}.text-\[14px\]{font-size:14px}.text-base{font-size:1rem;line-height:1.5rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.capitalize{text-transform:capitalize}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-5{line-height:1.25rem}.leading-6{line-height:1.5rem}.leading-relaxed{line-height:1.625}.tracking-tight{letter-spacing:-.025em}.tracking-wider{letter-spacing:.05em}.text-\[color\:var\(--a-ink-2\)\]{color:var(--a-ink-2)}.text-\[color\:var\(--fg\)\]{color:var(--fg)}.text-\[color\:var\(--fg-2\)\]{color:var(--fg-2)}.text-\[color\:var\(--fg-3\)\]{color:var(--fg-3)}.text-\[color\:var\(--line-strong\)\]{color:var(--line-strong)}.text-\[var\(--control-ink\2c \#20232b\)\]{color:var(--control-ink,#20232b)}.text-\[var\(--control-muted\2c \#697181\)\]{color:var(--control-muted,#697181)}.text-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity,1))}.text-current{color:currentColor}.text-emerald-500{--tw-text-opacity:1;color:rgb(16 185 129/var(--tw-text-opacity,1))}.text-emerald-600{--tw-text-opacity:1;color:rgb(5 150 105/var(--tw-text-opacity,1))}.text-rose-600{--tw-text-opacity:1;color:rgb(225 29 72/var(--tw-text-opacity,1))}.text-shell-fg-faint{color:var(--shell-fg-faint)}.text-sky-600{--tw-text-opacity:1;color:rgb(2 132 199/var(--tw-text-opacity,1))}.text-zinc-400{--tw-text-opacity:1;color:rgb(161 161 170/var(--tw-text-opacity,1))}.text-zinc-500{--tw-text-opacity:1;color:rgb(113 113 122/var(--tw-text-opacity,1))}.underline{text-decoration-line:underline}.no-underline{text-decoration-line:none}.decoration-\[var\(--control-accent\2c \#2456d9\)\]{text-decoration-color:var(--control-accent,#2456d9)}.underline-offset-2{text-underline-offset:2px}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-40{opacity:.4}.opacity-75{opacity:.75}.opacity-80{opacity:.8}.shadow{--tw-shadow:0 1px 3px 0 rgb(0 0 0/0.1),0 1px 2px -1px rgb(0 0 0/0.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.shadow,.shadow-lg{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgb(0 0 0/0.1),0 4px 6px -4px rgb(0 0 0/0.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-sm{--tw-shadow:0 1px 2px 0 rgb(0 0 0/0.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.outline-offset-4{outline-offset:4px}.ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.ring,.ring-1{box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.ring-1{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.ring-black\/10{--tw-ring-color:rgb(0 0 0/0.1)}.blur{--tw-blur:blur(8px)}.blur,.blur-0{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)}.blur-0{--tw-blur:blur(0)}.blur-\[4px\]{--tw-blur:blur(4px)}.blur-\[4px\],.invert{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)}.invert{--tw-invert:invert(100%)}.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)}.backdrop-blur-md{--tw-backdrop-blur:blur(12px);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[opacity\2c transform\2c filter\]{transition-property:opacity,transform,filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[transform\2c box-shadow\]{transition-property:transform,box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-100{transition-duration:.1s}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-500{transition-duration:.5s}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}:root{--ease:cubic-bezier(0.2,0,0,1);--ease-morph:cubic-bezier(0.32,0.72,0,1);--ease-soft:cubic-bezier(0.25,0.46,0.45,0.94);--dur-morph:340ms;--shell-fg-muted:#333333;--shell-fg-faint:#6d6d6d;color-scheme:light;--column:672px;--preview-gutter:32px;--surface-fill:#f7f7f8;--surface-bg:linear-gradient(180deg,#fdfdfd,#f2f2f3);--surface-ring:inset 0 1px 0 0 rgb(255 255 255/0.95),inset 0 0 0 1px rgb(0 0 0/0.07),inset 0 -1.5px 0 0 rgb(0 0 0/0.06);--surface-lift:0 1px 1px -0.5px rgb(0 0 0/0.06),0 2px 4px -1px rgb(0 0 0/0.06),0 6px 12px -3px rgb(0 0 0/0.08),0 14px 28px -8px rgb(0 0 0/0.08);--surface-sheen:linear-gradient(105deg,rgb(255 255 255/0.7),rgb(255 255 255/0.2) 32%,rgb(255 255 255/0) 58%);--paper:#ffffff;--paper-raised:#ffffff;--paper-float:#ffffff;--paper-sunk:#fafafa;--fg:#0a0a0a;--fg-2:#52525b;--fg-3:#6b6b73;--fg-4:#a1a1aa;--on-fg:#ffffff;--fg-hover:#27272a;--line:#ececee;--line-strong:#e4e4e7;--wash:#f4f4f5;--wash-2:#e9e9ec;--tint:0 0 0;--focus:#111111;--img-outline:oklch(0 0 0/0.1);--shadow-pop:0 0 0 1px rgb(0 0 0/0.06),0 2px 4px -1px rgb(0 0 0/0.06),0 12px 32px -8px rgb(0 0 0/0.16);--tooltip-bg:#111111;--tooltip-fg:#ffffff;--red:#dc2626;--green:#15803d;--amber:#b45309;--blue:#2563eb;--tone-gray:#787774;--tone-brown:#9f6b53;--tone-orange:#d9730d;--tone-yellow:#cb912f;--tone-green:#448361;--tone-blue:#337ea9;--tone-purple:#9065b0;--tone-pink:#c14c8a;--tone-red:#d44c47;--tone-gray-bg:#f1f1ef;--tone-brown-bg:#f4eeee;--tone-orange-bg:#fbecdd;--tone-yellow-bg:#fbf3db;--tone-green-bg:#edf3ec;--tone-blue-bg:#e7f3f8;--tone-purple-bg:#f6f3f9;--tone-pink-bg:#faf1f5;--tone-red-bg:#fdebec}:root[data-theme=dark]{color-scheme:dark;--paper:#191919;--paper-raised:#202020;--paper-float:#252525;--paper-sunk:#222222;--fg:#e9e9e7;--fg-2:#adadab;--fg-3:#9c9c9a;--fg-4:#767674;--on-fg:#191919;--fg-hover:#ffffff;--line:rgb(255 255 255/0.1);--line-strong:rgb(255 255 255/0.16);--wash:rgb(255 255 255/0.07);--wash-2:rgb(255 255 255/0.12);--tint:255 255 255;--focus:#e9e9e7;--img-outline:oklch(1 0 0/0.1);--shadow-pop:0 0 0 1px rgb(255 255 255/0.12),0 2px 4px -1px rgb(0 0 0/0.3),0 12px 32px -8px rgb(0 0 0/0.55);--tooltip-bg:#3a3a3a;--tooltip-fg:#f2f2f0;--red:#f2716b;--green:#4fb67a;--amber:#e0a14a;--blue:#6aa1f5;--tone-gray:#adadab;--tone-brown:#c99a85;--tone-orange:#eaa06b;--tone-yellow:#d9ad5f;--tone-green:#6cbb8c;--tone-blue:#5eb0e0;--tone-purple:#b98ae3;--tone-pink:#e98bb8;--tone-red:#f08a86;--tone-gray-bg:#2f2f2f;--tone-brown-bg:#4a3228;--tone-orange-bg:#5c3b23;--tone-yellow-bg:#564328;--tone-green-bg:#243d30;--tone-blue-bg:#143a4e;--tone-purple-bg:#3c2d49;--tone-pink-bg:#4e2c3c;--tone-red-bg:#522e2a;--shell-fg-muted:#d4d4d2;--shell-fg-faint:#adadab;--surface-fill:#262626;--surface-bg:linear-gradient(180deg,#2a2a2a,#232323);--surface-ring:inset 0 1px 0 0 rgb(255 255 255/0.07),inset 0 0 0 1px rgb(255 255 255/0.12),inset 0 -1.5px 0 0 rgb(0 0 0/0.3);--surface-lift:0 1px 1px -0.5px rgb(0 0 0/0.3),0 2px 4px -1px rgb(0 0 0/0.3),0 6px 12px -3px rgb(0 0 0/0.35),0 14px 28px -8px rgb(0 0 0/0.35);--surface-sheen:linear-gradient(105deg,rgb(255 255 255/0.06),rgb(255 255 255/0.02) 32%,rgb(255 255 255/0) 58%)}html{-webkit-text-size-adjust:100%;overscroll-behavior-y:none;scrollbar-gutter:stable}body,html{background-color:var(--paper)}body{margin:0;overflow-x:hidden;font-family:var(--font-sans),-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,sans-serif;font-size:16px;line-height:1.5;letter-spacing:-.011em;font-optical-sizing:auto;color:#000000;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.prose-line{line-height:1.65;letter-spacing:-.006em;text-wrap:pretty}@font-face{font-family:Paper Mono;src:url(/fonts/PaperMono-Variable.woff2) format("woff2-variations");font-weight:100 800;font-style:normal;font-display:swap}.font-paper-mono{font-family:Paper Mono,ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:0}a{text-underline-offset:2px;text-decoration-thickness:1px}.tab-hit{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-touch-callout:none}.page-enter{animation:page-in .72s var(--ease-soft) both}@keyframes page-in{0%{opacity:0;transform:translateY(8px) scale(.994);filter:blur(10px)}to{opacity:1;transform:none;filter:blur(0)}}::-moz-selection{background-color:rgb(var(--tint)/.1);color:#000000}::selection{background-color:rgb(var(--tint)/.1);color:#000000}.tab-hit:after{content:"";position:absolute;inset:-10px -2px}.smooth-cursor{position:fixed;top:0;left:0;z-index:100;pointer-events:none;opacity:0;transition:opacity .15s ease;will-change:transform;color:#111111}[data-theme=dark] .smooth-cursor{color:#f2f2f0}[data-theme=dark] .smooth-cursor .cursor-keyline{stroke:#191919}[data-theme=dark] .smooth-cursor .cursor-keyline-fill{fill:#191919}html.has-smooth-cursor,html.has-smooth-cursor :not(input):not(textarea):not(select):not([contenteditable]){cursor:none!important}html.has-smooth-cursor [contenteditable],html.has-smooth-cursor input,html.has-smooth-cursor select,html.has-smooth-cursor textarea{cursor:auto!important}html:not(.has-smooth-cursor) [data-drag-handle]{cursor:grab}html.is-grabbing:not(.has-smooth-cursor),html.is-grabbing:not(.has-smooth-cursor) *{cursor:grabbing!important}html:not(.has-smooth-cursor) .article-body,html:not(.has-smooth-cursor) .article-header,html:not(.has-smooth-cursor) .document-reading,html:not(.has-smooth-cursor) [data-cursor=text]{cursor:text}html:not(.has-smooth-cursor) .article-body a,html:not(.has-smooth-cursor) .article-body button,html:not(.has-smooth-cursor) [data-clickable],html:not(.has-smooth-cursor) [data-cursor=text] a,html:not(.has-smooth-cursor) [data-cursor=text] button{cursor:pointer}.peer-cursor-layer{position:fixed;inset:0;z-index:99;pointer-events:none;overflow:hidden}.peer-cursor{position:absolute;top:0;left:0;opacity:0;transition:opacity .26s var(--ease-soft);will-change:transform}.peer-cursor .cursor-shape{filter:drop-shadow(0 1px 2px rgb(0 0 0/.18))}.cursor-shape{position:relative;display:block}.smooth-cursor .cursor-shape{transition:transform .2s cubic-bezier(.2,0,0,1)}.smooth-cursor[data-pressed] .cursor-shape{transform:scale(.82);transition-duration:70ms}.cursor-glyph{position:absolute;inset:0;display:grid;place-items:center;opacity:0;transform:scale(.55);transition:opacity .11s var(--ease-soft),transform .22s cubic-bezier(.34,1.56,.64,1)}.cursor-glyph svg{display:block;width:100%;height:100%;overflow:visible}[data-glyph=hand] svg{transform:translate(6%,44%)}.cursor-spin{display:block;width:100%;height:100%;will-change:transform}[data-shape=arrow]>.cursor-shape>[data-glyph=arrow],[data-shape=hand]>.cursor-shape>[data-glyph=hand],[data-shape=text]>.cursor-shape>[data-glyph=text]{opacity:1;transform:scale(1)}.tool-row{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0 0;padding:0;list-style:none}.tool-badge{position:relative;cursor:pointer;display:grid;place-items:center;width:52px;height:52px;border-radius:13px;background-color:var(--surface-fill);background-image:var(--surface-bg);box-shadow:var(--surface-ring),var(--surface-lift);transition:transform .18s var(--ease),opacity .18s var(--ease)}.tool-badge img{display:block;width:32px;height:32px;-o-object-fit:contain;object-fit:contain;-webkit-user-select:none;-moz-user-select:none;user-select:none}.tool-badge:after{content:attr(data-label);position:absolute;left:50%;top:calc(100% + 6px);padding:3px 7px;border-radius:6px;background:var(--tooltip-bg);color:var(--tooltip-fg);font-size:12px;line-height:16px;white-space:nowrap;pointer-events:none;opacity:0;transform:translate(-50%,-3px);transition:opacity .14s var(--ease),transform .18s var(--ease)}@media (max-width:639px){.tool-row{max-width:284px}}@media (any-hover:hover) and (any-pointer:fine){.tool-badge:hover{transform:translateY(-2px)}.tool-badge:hover:after{opacity:1;transform:translate(-50%)}.tool-row:hover .tool-badge:not(:hover){opacity:.55}}@media (hover:none){.tool-badge:active:after{opacity:1;transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.tool-badge,.tool-badge:after{transition:opacity .14s linear}.tool-badge:hover{transform:none}}.menu-positioner{outline:0;z-index:50}.menu-popup{min-width:12rem;padding:.25rem;border-radius:14px;outline:none;background-color:var(--surface-fill);background-image:var(--surface-bg);box-shadow:var(--surface-ring),var(--surface-lift);font-size:.875rem;line-height:1.25rem;letter-spacing:-.006em;color:#171717;transform-origin:var(--transform-origin);transition:opacity .16s var(--ease),transform .16s var(--ease)}.menu-popup[data-ending-style],.menu-popup[data-starting-style]{opacity:0;transform:scale(.96)}.menu-item{display:flex;align-items:center;gap:.625rem;padding:.4375rem .625rem;border-radius:9px;outline:0;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:background-color .12s ease,color .12s ease}.menu-item[data-highlighted]{background-color:rgb(var(--tint)/.06)}.menu-item:focus-visible{box-shadow:inset 0 0 0 1.5px rgb(var(--tint)/.6)}.menu-item[data-disabled]{color:rgb(var(--tint)/.35)}.menu-item-icon{display:grid;place-items:center;color:rgb(113 113 122);flex:none}.menu-separator{height:.8px;margin:.25rem .375rem;background-color:var(--wash)}.menu-label{padding:.375rem .625rem .25rem;font-size:.75rem;line-height:1rem;color:rgb(var(--tint)/.4)}@media (prefers-reduced-motion:reduce){.menu-popup{transition:opacity .12s ease}.menu-popup[data-ending-style],.menu-popup[data-starting-style]{transform:none}}.avatar-dialog{position:fixed;inset:0;width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:0;border:0;background:transparent}.avatar-dialog[open]{display:grid;place-items:center;overscroll-behavior:contain}.avatar-dialog[open] .avatar-dialog-img{will-change:transform}.avatar-dialog::backdrop{background:rgb(0 0 0/.85);backdrop-filter:blur(6px);opacity:0;transition:opacity .22s cubic-bezier(.23,1,.32,1)}.avatar-dialog[data-open=true]::backdrop{opacity:1;transition-duration:.3s}.avatar-dialog-img{display:block;width:auto;height:auto;max-width:min(90vw,1200px);max-height:90vh;border-radius:50%;cursor:zoom-out;outline:1px solid oklch(1 0 0/.12);outline-offset:-1px}.avatar-button{border:0;padding:0;background:none}.tab-hover-rail{display:none;width:0;height:0;background-color:rgb(var(--tint)/.028);box-shadow:inset 0 0 0 1px rgb(var(--tint)/.045),inset 0 1px 0 0 rgb(255 255 255/.7);transition:transform .26s var(--ease-morph),width .26s var(--ease-morph),height .26s var(--ease-morph),opacity .15s ease-out}@media (hover:hover) and (pointer:fine){.tab-hover-rail{display:block}}.tab-hover-rail.is-idle{transition:opacity .22s ease}.tab-rail{transition:transform .32s var(--ease-morph),width .32s var(--ease-morph),height .32s var(--ease-morph)}.list-highlight,.tab-rail{width:0;height:0;background-color:var(--surface-fill);background-image:var(--surface-bg);box-shadow:var(--surface-ring),var(--surface-lift)}.list-highlight{transition:transform var(--dur-morph) var(--ease-morph),width var(--dur-morph) var(--ease-morph),height var(--dur-morph) var(--ease-morph),opacity .14s ease-out}.list-highlight.is-idle{transition:opacity .22s ease}.preview-rail{display:none;position:absolute;top:0;bottom:0;left:calc(100% + 3rem + var(--preview-gutter))}@media (hover:hover) and (pointer:fine) and (min-width:1280px){.preview-rail{display:block}}.list-highlight:before,.preview-frame:before,.tab-rail:before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:var(--surface-sheen)}.preview-rail>.preview-frame{position:sticky;top:calc(50vh - 6.5rem)}.preview-frame{background-color:var(--surface-fill);background-image:var(--surface-bg);box-shadow:var(--surface-ring),0 4px 12px -4px rgb(0 0 0/.1),0 12px 32px -12px rgb(0 0 0/.12),0 28px 56px -20px rgb(0 0 0/.1);opacity:0;transform:scale(.96);filter:blur(4px);transition:opacity .4s var(--ease-soft),transform .4s var(--ease-soft),filter .4s var(--ease-soft)}.preview-frame.is-shown{opacity:1;transform:scale(1);filter:blur(0)}.preview-img{outline:1px solid var(--img-outline);outline-offset:-1px;opacity:0;transform:scale(1.015);transition:opacity .26s var(--ease-soft),transform .26s var(--ease-soft)}.preview-img.is-active{opacity:1;transform:scale(1)}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.panel-chunk{animation:chunk-in .52s var(--ease-soft) both;animation-delay:calc(min(var(--i, 0), 6) * 50ms)}@keyframes chunk-in{0%{opacity:0;transform:translateY(6px);filter:blur(5px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}.post-list{letter-spacing:-.006em}.post-date,.post-title,.post-year{transition:color .18s ease}.post-row .post-date,.post-row .post-title{transition:color .18s ease,transform .22s cubic-bezier(.2,0,0,1)}.post-row .post-title{transform-origin:left center}.post-row .post-date{transform-origin:right center}.post-row:active .post-date,.post-row:active .post-title{transform:translateY(1px) scale(.985);transition-duration:.18s,70ms}@media (prefers-reduced-motion:reduce){.post-row:active .post-date,.post-row:active .post-title{transform:none}}.post-title{color:#171717}.post-date,.post-year{color:rgb(var(--tint)/.4)}@media (hover:hover) and (pointer:fine){.post-list:hover .post-title{color:rgb(var(--tint)/.4)}.post-list:hover .post-date{color:rgb(var(--tint)/.18)}.post-list .post-row:hover .post-title{color:#171717}.post-list .post-row:hover .post-date{color:rgb(var(--tint)/.4)}}.page-shell{padding-left:max(3rem,env(safe-area-inset-left));padding-right:max(3rem,env(safe-area-inset-right));padding-bottom:max(4rem,env(safe-area-inset-bottom))}@media (max-width:639px){.page-shell{padding:2.5rem max(1.5rem,env(safe-area-inset-right)) max(2.5rem,env(safe-area-inset-bottom)) max(1.5rem,env(safe-area-inset-left))}.rhythm-12{gap:2rem}.panel-floor{min-height:0}.row-pad{padding-top:.75rem;padding-bottom:.75rem}.footer-gap{margin-top:3rem}.panel-anim{height:var(--panel-h,auto);overflow:hidden;transition:height .42s var(--ease-morph)}body,html{overflow-x:hidden;overscroll-behavior-x:none;max-width:100%}.page-shell{max-width:100vw}}@media (prefers-reduced-motion:reduce){.list-highlight{transition:opacity .12s ease}.preview-frame{transition:opacity .16s ease}.preview-frame,.preview-frame.is-shown{transform:none;filter:none}.panel-chunk{animation:fade-in .16s ease both;animation-delay:0s}.page-enter{animation:fade-in .24s ease both}.preview-img,.preview-img.is-active{transform:none;transition:none}.tab-hit:active{transform:none}}.avatar-button,.tab-hit{transition:transform .22s cubic-bezier(.2,0,0,1)}.tool-badge{transition:transform .22s cubic-bezier(.2,0,0,1),opacity .18s var(--ease)}[data-keycap]:active{transform:translateY(2px) scale(.96);transition-duration:70ms}.tool-badge:active{transition-duration:70ms,.18s}@media (prefers-reduced-motion:reduce){[data-keycap]:active{transform:none}}@media (max-width:639px){.tab-scroller{scroll-padding-inline:1.5rem 2.5rem;width:calc(100% + 3rem);margin:-8px -1.5rem -36px;padding:8px 1.5rem 36px;pointer-events:none;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 1.5rem,#000 calc(100% - 2.5rem),transparent);mask-image:linear-gradient(90deg,transparent 0,#000 1.5rem,#000 calc(100% - 2.5rem),transparent)}.tab-scroller::-webkit-scrollbar{display:none}.tab-scroller>ul{width:-moz-max-content;width:max-content;margin-right:1.5rem;pointer-events:auto}}.tip-popup{display:flex;flex-direction:column;gap:2px;max-width:min(22rem,calc(100vw - 24px));padding:10px 12px;border-radius:12px;background-color:var(--surface-fill);background-image:var(--surface-bg);box-shadow:var(--surface-ring),var(--surface-lift);font-size:.8125rem;line-height:1.25rem;letter-spacing:-.006em;color:#171717;transform-origin:var(--transform-origin);transition:opacity .15s var(--ease),transform .15s var(--ease)}.tip-popup[data-ending-style],.tip-popup[data-starting-style]{opacity:0;transform:scale(.97)}.tip-primary,.tip-secondary{font-variant-numeric:tabular-nums;white-space:nowrap}.tip-primary{font-weight:500}.tip-secondary{color:rgb(var(--tint)/.5)}.tip-commit{display:flex;align-items:baseline;gap:8px;min-width:0;margin-top:6px;padding-top:6px;border-top:.8px solid rgb(var(--tint)/.08)}.tip-sha{flex-shrink:0;font-size:.75rem;color:rgb(var(--tint)/.55)}.tip-subject{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tip-hint{margin-top:4px;font-size:.75rem;color:rgb(var(--tint)/.4)}@media (prefers-reduced-motion:reduce){.tip-popup[data-ending-style],.tip-popup[data-starting-style]{transform:none}}.toast-viewport{position:fixed;z-index:90;left:50%;bottom:max(1.25rem,env(safe-area-inset-bottom));width:min(22rem,calc(100vw - 2rem));transform:translateX(-50%);outline:none}.toast-root{--gap:8px;--peek:8px;--scale:calc(max(0, 1 - (var(--toast-index) * 0.06)));--shrink:calc(1 - var(--scale));--height:var(--toast-frontmost-height,var(--toast-height));--offset-y:calc(var(--toast-offset-y) * -1 + (var(--toast-index) * var(--gap) * -1) + var(--toast-swipe-movement-y));position:absolute;bottom:0;left:0;width:100%;box-sizing:border-box;height:var(--height);border-radius:14px;background-color:var(--surface-fill);background-image:var(--surface-bg);box-shadow:var(--surface-ring),var(--surface-lift);color:#171717;-webkit-user-select:none;-moz-user-select:none;user-select:none;transform-origin:bottom center;z-index:calc(1000 - var(--toast-index));transform:translateX(var(--toast-swipe-movement-x)) translateY(calc(var(--toast-swipe-movement-y) - (var(--toast-index) * var(--peek)) - (var(--shrink) * var(--height)))) scale(var(--scale));transition:transform .42s cubic-bezier(.23,1,.32,1),opacity .3s cubic-bezier(.23,1,.32,1),height .15s cubic-bezier(.23,1,.32,1);outline:none}.toast-root[data-expanded]{transform:translateX(var(--toast-swipe-movement-x)) translateY(var(--offset-y));height:var(--toast-height)}.toast-root[data-ending-style],.toast-root[data-starting-style]{transform:translateY(calc(100% + 1.5rem));opacity:0}.toast-root[data-limited]{opacity:0}.toast-root[data-ending-style][data-swipe-direction=down]{transform:translateY(calc(var(--toast-swipe-movement-y) + 150%))}.toast-root:after{content:"";position:absolute;top:100%;left:0;width:100%;height:calc(var(--gap) + 1px)}.toast-root:focus-visible{box-shadow:var(--surface-ring),var(--surface-lift),0 0 0 2px rgb(var(--tint)/.5)}.toast-content{display:flex;align-items:flex-start;gap:10px;padding:11px 12px;overflow:hidden;transition:opacity .25s cubic-bezier(.23,1,.32,1)}.toast-content[data-behind]{opacity:0}.toast-content[data-expanded]{opacity:1}.toast-icon{display:grid;flex-shrink:0;margin-top:1px;color:rgb(var(--tint)/.45)}.toast-root[data-type=success] .toast-icon{color:#16a34a}.toast-root[data-type=error] .toast-icon{color:#dc2626}.toast-root[data-type=warning] .toast-icon{color:#d97706}.toast-text{display:flex;flex:1;flex-direction:column;gap:1px;min-width:0}.toast-title{margin:0;font-size:.875rem;font-weight:500;line-height:1.25rem;letter-spacing:-.006em}.toast-description{margin:0;overflow:hidden;font-size:.8125rem;line-height:1.125rem;color:rgb(var(--tint)/.55);text-overflow:ellipsis;white-space:nowrap}.toast-description:empty{display:none}.toast-action{flex-shrink:0;align-self:center;padding:4px 10px;border:0;border-radius:99px;background:rgb(var(--tint)/.06);color:#171717;font:inherit;font-size:.8125rem;font-weight:500;line-height:1.125rem;cursor:pointer;transition:background-color .12s ease,transform .16s cubic-bezier(.2,0,0,1)}.toast-action:empty{display:none}.toast-action:active{transform:scale(.96)}.toast-close{display:grid;place-items:center;flex-shrink:0;width:24px;height:24px;margin:-2px -4px -2px 0;padding:0;border:0;border-radius:99px;background:transparent;color:rgb(var(--tint)/.35);cursor:pointer;transition:background-color .12s ease,color .12s ease}@media (hover:hover) and (pointer:fine){.toast-action:hover{background:rgb(var(--tint)/.1)}.toast-close:hover{background:rgb(var(--tint)/.06);color:rgb(var(--tint)/.6)}}.toast-spin{animation:toast-spin .9s linear infinite}@keyframes toast-spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.toast-root{transition:opacity .2s linear}.toast-root[data-ending-style],.toast-root[data-ending-style][data-swipe-direction=down],.toast-root[data-starting-style]{transform:translateX(var(--toast-swipe-movement-x)) translateY(var(--offset-y))}.toast-spin{animation-duration:2.4s}}.shiba{display:inline-block;width:32px;height:32px;margin:-8px 0 -8px 4px;vertical-align:middle;position:relative;top:-4px;color:inherit;opacity:0;transition:opacity .3s ease;-webkit-tap-highlight-color:transparent;padding:0;border:0;border-radius:8px;background:none;font:inherit;cursor:pointer}.shiba[aria-disabled=true]{cursor:default}.shiba:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.shiba[data-mood]{opacity:1}.shiba svg{display:block;overflow:visible}.shiba-line,.shiba-z{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.shiba-mouth{stroke-width:1.4}.shiba-brows,.shiba-eye,.shiba-nose,.shiba-tongue{fill:currentColor}.shiba-nose{stroke:currentColor;stroke-width:1;stroke-linejoin:round}.shiba-breath,.shiba-brows,.shiba-ear,.shiba-eye,.shiba-tail,.shiba-tilt,.shiba-tongue{transform-box:fill-box}.shiba-ear{transform-origin:50% 100%}.shiba-tail{transform-origin:0 100%}.shiba-eye{transform-origin:center}.shiba-tongue{transform-origin:50% 0;transform:scaleY(0)}.shiba-tilt{transform-origin:50% 70%}.shiba-breath{transform-origin:50% 100%}.shiba-brows{transition:transform .25s cubic-bezier(.34,1.56,.64,1)}.shiba-eyes{transition:opacity .12s ease}.shiba-eyes-closed,.shiba-eyes-happy,.shiba[data-happy] .shiba-eyes-open,.shiba[data-mood=asleep] .shiba-eyes-open{opacity:0}.shiba[data-happy] .shiba-eyes-happy,.shiba[data-mood=asleep] .shiba-eyes-closed{opacity:1}.shiba[data-mood=awake] .shiba-glance{animation:shiba-glance 5s ease-in-out infinite}.shiba[data-mood=awake] .shiba-eye{animation:shiba-blink 5s linear infinite}.shiba[data-mood=awake] .shiba-ear-l{animation:shiba-ear-l 12s ease-in-out infinite}.shiba[data-mood=awake] .shiba-ear-r{animation:shiba-ear-r 12s ease-in-out infinite}.shiba[data-mood=awake] .shiba-tail{animation:shiba-wag 12s ease-in-out infinite}.shiba[data-mood=awake] .shiba-tilt{animation:shiba-tilt 12s ease-in-out infinite}.shiba[data-mood=awake] .shiba-tongue{animation:shiba-blep 12s ease-in-out infinite}.shiba[data-happy] .shiba-brows{transform:translateY(-.8px)}.shiba[data-happy] .shiba-ear-l{animation:shiba-wiggle-l .28s ease-in-out infinite alternate}.shiba[data-happy] .shiba-ear-r{animation:shiba-wiggle-r .28s ease-in-out infinite alternate}.shiba[data-happy] .shiba-tail{animation:shiba-wag-happy .16s ease-in-out infinite alternate}.shiba[data-happy] .shiba-tongue{animation:shiba-pant .3s ease-in-out infinite alternate}.shiba[data-happy] .shiba-tilt{animation:shiba-bounce .3s ease-in-out infinite alternate}.shiba[data-mood=asleep] .shiba-ear-l{animation:shiba-sleep-ear-l 4s ease-in-out infinite}.shiba[data-mood=asleep] .shiba-ear-r{animation:shiba-sleep-ear-r 4s ease-in-out infinite}.shiba[data-mood=asleep] .shiba-breath{animation:shiba-breathe 4s ease-in-out infinite}.shiba-z path{opacity:0;transform-box:fill-box;transform-origin:0 100%}.shiba[data-mood=asleep] .shiba-z1{stroke-width:1.5;animation:shiba-z1 3s ease-out infinite both}.shiba[data-mood=asleep] .shiba-z2{stroke-width:1.3;animation:shiba-z2 3s ease-out 1s infinite both}.shiba[data-mood=asleep] .shiba-z3{stroke-width:1.1;animation:shiba-z3 3s ease-out 2s infinite both}@keyframes shiba-glance{0%{transform:translate(0)}10%{transform:translate(.8px)}20%{transform:translate(.8px)}40%{transform:translate(-1px,-.6px)}55%{transform:translate(0)}75%{transform:translate(-.5px,.5px)}to{transform:translate(0)}}@keyframes shiba-blink{0%,19%,23%,52%,56%,to{transform:scaleY(1)}21%,54%{transform:scaleY(.1)}}@keyframes shiba-ear-l{0%,9%{transform:rotate(0)}12%{transform:rotate(-9deg)}16%,34%{transform:rotate(0)}38%{transform:rotate(-14deg)}42%{transform:rotate(-5deg)}48%,to{transform:rotate(0)}}@keyframes shiba-ear-r{0%,9%{transform:rotate(0)}12%{transform:rotate(6deg)}16%,34%{transform:rotate(0)}38%{transform:rotate(11deg)}42%{transform:rotate(4deg)}48%,to{transform:rotate(0)}}@keyframes shiba-tilt{0%,58%{transform:rotate(0)}63%,74%{transform:rotate(-10deg)}79%,to{transform:rotate(0)}}@keyframes shiba-blep{0%,84%{transform:scaleY(0)}87%,95%{transform:scaleY(1)}98%,to{transform:scaleY(0)}}@keyframes shiba-wag{0%,44%{transform:rotate(0)}46%{transform:rotate(-16deg)}48%{transform:rotate(8deg)}50%{transform:rotate(-16deg)}52%{transform:rotate(8deg)}54%,to{transform:rotate(0)}}@keyframes shiba-wag-happy{0%{transform:rotate(-18deg)}to{transform:rotate(10deg)}}@keyframes shiba-wiggle-l{0%{transform:rotate(-4deg)}to{transform:rotate(-14deg)}}@keyframes shiba-wiggle-r{0%{transform:rotate(4deg)}to{transform:rotate(14deg)}}@keyframes shiba-pant{0%{transform:scaleY(.75)}to{transform:scaleY(1.1)}}@keyframes shiba-bounce{0%{transform:translateY(0)}to{transform:translateY(-.7px)}}@keyframes shiba-sleep-ear-l{0%,to{transform:rotate(-9deg) scaleY(.84)}50%{transform:rotate(-6deg) scaleY(.84)}}@keyframes shiba-sleep-ear-r{0%,to{transform:rotate(9deg) scaleY(.84)}50%{transform:rotate(6deg) scaleY(.84)}}@keyframes shiba-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.03,1.015)}}@keyframes shiba-z1{0%{transform:translate(0) scale(.7);opacity:0}10%,80%{opacity:1}to{transform:translate(4px,-14px) scale(1);opacity:0}}@keyframes shiba-z2{0%{transform:translate(0) scale(.6);opacity:0}10%,80%{opacity:1}to{transform:translate(6px,-16px) scale(.9);opacity:0}}@keyframes shiba-z3{0%{transform:translate(0) scale(.5);opacity:0}10%,80%{opacity:1}to{transform:translate(8px,-18px) scale(.8);opacity:0}}@media (prefers-reduced-motion:reduce){.shiba *,.shiba[data-mood] *{animation:none!important}.shiba[data-mood=asleep] .shiba-z1{opacity:1}}.shiba[data-still]:not([data-happy]) *,.shiba[data-still][data-mood]:not([data-happy]) *{animation:none!important}.shiba[data-still][data-mood=asleep] .shiba-z1{opacity:1}.updated-at{display:inline-block;font-size:12px;font-weight:400;line-height:1.5;color:#71717a;border-radius:4px;font-variant-numeric:tabular-nums}.updated-at:focus-visible{outline:2px solid currentColor;outline-offset:4px}.writing-row-updated{display:block;margin-top:4px}.article-more-row .updated-at time{font:inherit;color:inherit}.date-mention,.page-mention{display:inline;border-radius:4px;background:var(--wash);color:var(--fg-2);padding:1px 4px;font-size:.94em;box-decoration-break:clone;-webkit-box-decoration-break:clone}.page-mention-unpublished{color:#71717a}.article-body .inline-logo{display:inline;color:inherit}.article-body .inline-logo>img{display:inline-block;width:1em;height:1em;-o-object-fit:contain;object-fit:contain;vertical-align:-.14em;margin:0 .25em 0 0;border-radius:2px;background:transparent;outline:1px solid var(--img-outline)}html.has-smooth-cursor .tag,html.has-smooth-cursor .tag *,html.has-smooth-cursor img[data-zoom]{cursor:none!important}[data-shape=zoom]>.cursor-shape>[data-glyph=zoom]{opacity:1;transform:scale(1);filter:blur(0)}.sound-slash{stroke-dasharray:1 2;stroke-dashoffset:1.02;--slash-ms:200ms;transition:stroke-dashoffset var(--slash-ms) var(--ease-out)}[data-muted=true] .sound-slash{stroke-dashoffset:0;--slash-ms:260ms}.sound-wave{transform-box:view-box;transform-origin:11px 12px;transition:opacity .13s var(--ease-out) var(--wave-delay),transform .13s var(--ease-out) var(--wave-delay),filter .13s var(--ease-out) var(--wave-delay)}[data-muted=true] .sound-wave{opacity:0;transform:scale(.25);filter:blur(1px)}.sound-wave-inner{--wave-delay:45ms}.sound-wave-outer{--wave-delay:20ms}[data-muted=true] .sound-wave-inner{--wave-delay:50ms}[data-muted=true] .sound-wave-outer{--wave-delay:75ms}.sound-speaker{--speaker-ms:220ms;--speaker-delay:0ms;transition:transform var(--speaker-ms) var(--ease-out) var(--speaker-delay)}[data-muted=true] .sound-speaker{transform:translateX(5.5px);--speaker-ms:260ms;--speaker-delay:80ms}@media (prefers-reduced-motion:reduce){.sound-slash,.sound-speaker,.sound-wave{transition:none}}:where(a,button,summary,[role=button],[role=slider],[tabindex]:not([tabindex="-1"])):focus-visible{outline:2px solid var(--focus);outline-offset:2px}.skip-link{position:fixed;top:8px;left:8px;z-index:100;padding:8px 12px;border-radius:10px;background:var(--tooltip-bg);color:var(--tooltip-fg);font-size:14px;line-height:20px;text-decoration:none;transform:translateY(-160%)}.skip-link:focus-visible{transform:none;outline-offset:2px}main[tabindex="-1"]:focus{outline:none}@media (forced-colors:active){.list-highlight,.tab-rail{outline:2px solid Highlight;outline-offset:-2px}.tab-hover-rail{outline:1px dashed CanvasText;outline-offset:-1px}.menu-item:focus-visible,.menu-item[data-highlighted]{outline:2px solid Highlight;outline-offset:-2px}.peer-cursor-layer,.smooth-cursor{display:none!important}html.has-smooth-cursor *{cursor:auto!important}}@media (prefers-reduced-motion:reduce){.article-body summary:before,.article-menu,.panel-anim,.tab-hover-rail,.tab-rail,.voice-play path{transition-duration:0s!important}.code-copy:active,.share-button:active,.tag:active,.voice-play:active{transform:none!important;scale:none!important}}:root{--scroll-thumb:rgb(0 0 0/0.2);--scroll-thumb-hover:rgb(0 0 0/0.36)}@supports (scrollbar-color:auto){:where(html,body,*){scrollbar-width:thin;scrollbar-color:var(--scroll-thumb) transparent}}@supports not (scrollbar-color:auto){:where(*)::-webkit-scrollbar{width:10px;height:10px}:where(*)::-webkit-scrollbar-corner,:where(*)::-webkit-scrollbar-track{background:transparent}:where(*)::-webkit-scrollbar-thumb{border:3px solid transparent;border-radius:9999px;background:var(--scroll-thumb) padding-box}:where(*)::-webkit-scrollbar-thumb:hover{background-color:var(--scroll-thumb-hover)}}@media (forced-colors:active){:where(html,body,*){scrollbar-color:auto}}:root[data-theme=dark]{--scroll-thumb:rgb(255 255 255/0.2);--scroll-thumb-hover:rgb(255 255 255/0.34)}[data-theme=dark] body{color:var(--fg)}[data-theme=dark] ::-moz-selection{background-color:rgb(255 255 255/.16);color:#ffffff}[data-theme=dark] ::selection{background-color:rgb(255 255 255/.16);color:#ffffff}[data-theme=dark] .post-list .post-row:hover .post-title,[data-theme=dark] :is(.menu-popup,.tip-popup,.toast-root,.toast-action,.post-title){color:var(--fg)}[data-theme=dark] .menu-item-icon{color:var(--fg-3)}[data-theme=dark] .tab-hover-rail{box-shadow:inset 0 0 0 1px rgb(255 255 255/.06),inset 0 1px 0 0 rgb(255 255 255/.04)}[data-theme=dark] .preview-frame{box-shadow:var(--surface-ring),0 4px 12px -4px rgb(0 0 0/.4),0 12px 32px -12px rgb(0 0 0/.5),0 28px 56px -20px rgb(0 0 0/.45)}[data-theme=dark] .toast-root[data-type=success] .toast-icon{color:var(--green)}[data-theme=dark] .toast-root[data-type=error] .toast-icon{color:var(--red)}[data-theme=dark] .toast-root[data-type=warning] .toast-icon{color:var(--amber)}[data-theme=dark] :is(.updated-at,.page-mention-unpublished){color:var(--fg-3)}:where([data-theme=dark]) .text-black{color:var(--fg)}:where([data-theme=dark]) .text-zinc-500{color:var(--fg-2)}:where([data-theme=dark]) .text-zinc-400{color:var(--fg-3)}:where([data-theme=dark]) .bg-white{background-color:var(--paper)}:where([data-theme=dark]) .bg-gray-50{background-color:var(--paper-sunk)}:where([data-theme=dark]) .border-zinc-100{border-color:var(--line)}[data-theme=dark] [data-text-color="#52525b"]{color:#adadab!important}[data-theme=dark] [data-text-color="#854d0e"]{color:#d6a874!important}[data-theme=dark] [data-text-color="#b91c1c"]{color:#f28b86!important}[data-theme=dark] [data-text-color="#9a3412"]{color:#f29c64!important}[data-theme=dark] [data-text-color="#166534"]{color:#6fcf97!important}[data-theme=dark] [data-text-color="#1d4ed8"]{color:#7fb0f7!important}[data-theme=dark] [data-text-color="#7e22ce"]{color:#c49af0!important}[data-theme=dark] [data-text-color^="#"]:not([data-text-color="#52525b"],[data-text-color="#854d0e"],[data-text-color="#b91c1c"],[data-text-color="#9a3412"],[data-text-color="#166534"],[data-text-color="#1d4ed8"],[data-text-color="#7e22ce"]){color:oklch(from attr(data-text-color type(<color>)) max(l,.76) c h)!important}[data-theme=dark] .tool-badge img:is([src$="/github.svg"],[src$="/github-copilot.svg"]){filter:invert(1)}[data-theme=dark] .tool-badge img[src$="/aws.svg"]{filter:invert(1) hue-rotate(180deg)}[data-theme=dark] .avatar-button img{outline:1px solid var(--img-outline);outline-offset:-1px}[data-theme=dark] .peer-cursor .cursor-shape{filter:drop-shadow(0 1px 2px rgb(0 0 0/.5)) brightness(1.35)}.first\:rounded-l-full:first-child{border-top-left-radius:9999px;border-bottom-left-radius:9999px}.last\:rounded-r-full:last-child{border-top-right-radius:9999px;border-bottom-right-radius:9999px}.hover\:border-\[color\:var\(--line-strong\)\]:hover{border-color:var(--line-strong)}.hover\:bg-\[color\:var\(--wash\)\]:hover{background-color:var(--wash)}.hover\:bg-\[var\(--control-tint\2c \#f1f3f7\)\]:hover{background-color:var(--control-tint,#f1f3f7)}.hover\:bg-black\/5:hover{background-color:rgb(0 0 0/.05)}.hover\:text-\[color\:var\(--fg\)\]:hover{color:var(--fg)}.hover\:text-\[var\(--control-accent\2c \#2456d9\)\]:hover{color:var(--control-accent,#2456d9)}.hover\:text-shell-fg-muted:hover{color:var(--shell-fg-muted)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-80:hover{opacity:.8}.hover\:shadow-sm:hover{--tw-shadow:0 1px 2px 0 rgb(0 0 0/0.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-visible\:ring-\[color\:var\(--focus\)\]:focus-visible{--tw-ring-color:var(--focus)}.focus-visible\:ring-black\/70:focus-visible{--tw-ring-color:rgb(0 0 0/0.7)}.active\:scale-95:active{--tw-scale-x:.95;--tw-scale-y:.95}.active\:scale-95:active,.active\:scale-\[0\.96\]:active{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.active\:scale-\[0\.96\]:active{--tw-scale-x:0.96;--tw-scale-y:0.96}.active\:scale-\[0\.99\]:active{--tw-scale-x:0.99;--tw-scale-y:0.99}.active\:scale-\[0\.99\]:active,.group:hover .group-hover\:scale-105{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:scale-105{--tw-scale-x:1.05;--tw-scale-y:1.05}.group:hover .group-hover\:border-\[color\:var\(--line-strong\)\]{border-color:var(--line-strong)}.group:hover .group-hover\:text-\[var\(--control-ink\2c \#20232b\)\]{color:var(--control-ink,#20232b)}.group:hover .group-hover\:opacity-100{opacity:1}@media (prefers-reduced-motion:reduce){.motion-reduce\:transition-none{transition-property:none}}@media (min-width:640px){.sm\:h-24{height:6rem}.sm\:w-24{width:6rem}.sm\:grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-\[7rem_1fr\]{grid-template-columns:7rem 1fr}.sm\:py-24{padding-top:6rem;padding-bottom:6rem}}@media (min-width:1024px){.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}.dark\:text-emerald-400:where([data-theme=dark],[data-theme=dark] *){--tw-text-opacity:1;color:rgb(52 211 153/var(--tw-text-opacity,1))}.dark\:text-rose-400:where([data-theme=dark],[data-theme=dark] *){--tw-text-opacity:1;color:rgb(251 113 133/var(--tw-text-opacity,1))}.dark\:text-sky-400:where([data-theme=dark],[data-theme=dark] *){--tw-text-opacity:1;color:rgb(56 189 248/var(--tw-text-opacity,1))}.dark\:ring-white\/20:where([data-theme=dark],[data-theme=dark] *){--tw-ring-color:rgb(255 255 255/0.2)}.dark\:hover\:bg-white\/10:hover:where([data-theme=dark],[data-theme=dark] *){background-color:rgb(255 255 255/.1)}.dark\:focus-visible\:ring-white\/70:focus-visible:where([data-theme=dark],[data-theme=dark] *){--tw-ring-color:rgb(255 255 255/0.7)}.\[\&_\.recharts-cartesian-axis-tick_text\]\:fill-\[var\(--control-muted\2c \#697181\)\] .recharts-cartesian-axis-tick text{fill:var(--control-muted,#697181)}.\[\&_\.recharts-cartesian-grid_line\[stroke\=\'\#ccc\'\]\]\:stroke-\[var\(--control-line\2c \#e1e5ec\)\] .recharts-cartesian-grid line[stroke="#ccc"]{stroke:var(--control-line,#e1e5ec)}