@font-face{font-family:Geist;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/geist-latin-400-normal.B40WzpMT.woff2)format("woff2"),url(/_astro/geist-latin-400-normal.akEymXtG.woff)format("woff")}@font-face{font-family:Geist;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/geist-latin-ext-400-normal.CND6cjiG.woff2)format("woff2"),url(/_astro/geist-latin-ext-400-normal.Bz1pQMyt.woff)format("woff")}@font-face{font-family:Geist;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/geist-latin-500-normal.CTWBw9NS.woff2)format("woff2"),url(/_astro/geist-latin-500-normal.BDXIbFrL.woff)format("woff")}@font-face{font-family:Geist;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/geist-latin-ext-500-normal.BovoTgeE.woff2)format("woff2"),url(/_astro/geist-latin-ext-500-normal.C9fx-R30.woff)format("woff")}@font-face{font-family:Geist Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/geist-mono-latin-400-normal.DTRLJnHl.woff2)format("woff2"),url(/_astro/geist-mono-latin-400-normal.B2yvC1Cq.woff)format("woff")}@font-face{font-family:Geist Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/geist-mono-latin-ext-400-normal.DI-rJ0UV.woff2)format("woff2"),url(/_astro/geist-mono-latin-ext-400-normal.CfzLURNc.woff)format("woff")}@font-face{font-family:Geist Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/geist-mono-latin-500-normal.YINYabwD.woff2)format("woff2"),url(/_astro/geist-mono-latin-500-normal.D-GG86Jb.woff)format("woff")}@font-face{font-family:Geist Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/geist-mono-latin-ext-500-normal.Buglb9-a.woff2)format("woff2"),url(/_astro/geist-mono-latin-ext-500-normal.CrWEgvU_.woff)format("woff")}@font-face{font-family:Silkscreen;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/silkscreen-latin-400-normal.CtPo2yA5.woff2)format("woff2"),url(/_astro/silkscreen-latin-400-normal.D0DfPJut.woff)format("woff")}@font-face{font-family:Silkscreen;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/silkscreen-latin-ext-400-normal.2T9bWrxp.woff2)format("woff2"),url(/_astro/silkscreen-latin-ext-400-normal.Drdn_BEM.woff)format("woff")}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-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;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--color-white:#fff;--spacing:.25rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:Geist, system-ui, sans-serif;--default-mono-font-family:"Geist Mono", ui-monospace, monospace}}@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,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){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;-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}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}body[data-season=spring][data-mode=light]{--bg:#eef1ee;--ink:#13201a;--mute:#5b6b62;--acc:#2e6b4e;--line:#d5ddd7;--chip:#e3e9e4;--link:#b2c0b7;--dim:#c4dccd;--on-acc:#eef1ee;color-scheme:light}body[data-season=spring][data-mode=dark]{--bg:#111613;--ink:#e4ebe6;--mute:#8d9a92;--acc:#8fcba4;--line:#242c27;--chip:#19201c;--link:#36413a;--dim:#213a2c;--on-acc:#111613;color-scheme:dark}body[data-season=summer][data-mode=light]{--bg:#eef3f2;--ink:#11201f;--mute:#556866;--acc:#22706f;--line:#d5e0de;--chip:#e1eae8;--link:#b0c3c0;--dim:#c2deda;--on-acc:#eef3f2;color-scheme:light}body[data-season=summer][data-mode=dark]{--bg:#101716;--ink:#e2ecea;--mute:#8b9b98;--acc:#7ccbc3;--line:#222c2b;--chip:#182120;--link:#34413f;--dim:#1f3836;--on-acc:#101716;color-scheme:dark}body[data-season=autumn][data-mode=light]{--bg:#eef1ee;--ink:#13201a;--mute:#5b6b62;--acc:#a3412c;--line:#d5ddd7;--chip:#e3e9e4;--link:#b2c0b7;--dim:#e7c9be;--on-acc:#eef1ee;color-scheme:light}body[data-season=autumn][data-mode=dark]{--bg:#131714;--ink:#e6eae6;--mute:#8f9891;--acc:#e58b6e;--line:#262c27;--chip:#1b201c;--link:#39423b;--dim:#3a2a24;--on-acc:#131714;color-scheme:dark}body[data-season=winter][data-mode=light]{--bg:#eef2f6;--ink:#121a24;--mute:#586574;--acc:#2f5f95;--line:#d8dfe7;--chip:#e2e8ef;--link:#b4c0cd;--dim:#c7d5e6;--on-acc:#eef2f6;color-scheme:light}body[data-season=winter][data-mode=dark]{--bg:#121519;--ink:#e6e8eb;--mute:#8e96a0;--acc:#8fb4e8;--line:#262b32;--chip:#1c2026;--link:#3a414b;--dim:#26354a;--on-acc:#121519;color-scheme:dark}}@layer components{:root{--plate-w:max(360px, 44vw)}body.is-post{--plate-w:max(320px, 36vw)}html,body{overscroll-behavior:none}html{background:var(--bg)}html.snap{scroll-snap-type:y mandatory}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;font-family:Geist,system-ui,sans-serif;line-height:normal}html,body,.links,.posts li,.t,.d,.label,.card,.row,.pipe span,.pipe i,.seasons,.foot,.aside,.icon-btn{transition:background-color .6s,color .6s,border-color .6s}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}ul{list-style:none}.mono{font-family:Geist Mono,ui-monospace,monospace;font-size:12px}.pixel{font-family:Silkscreen,monospace;font-weight:400}::selection{background:var(--acc);color:var(--on-acc)}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.page{grid-template-columns:var(--plate-w) 1fr;min-height:100vh;display:grid}.plate{z-index:2;height:100vh;position:sticky;top:0;overflow:hidden}.plate canvas{width:100%;height:100%;image-rendering:pixelated;display:block}.plate{touch-action:pan-y;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.plate.scratching{cursor:none}.plate #reveal{image-rendering:auto;pointer-events:none;position:absolute;inset:0}.plate #chips{pointer-events:none;position:absolute;inset:0}.plate #pile{pointer-events:none;width:auto;height:auto;image-rendering:pixelated;position:absolute;top:0;left:0}.brush{pointer-events:none;opacity:0;image-rendering:pixelated;background:var(--brush-ring) center / 100% 100% no-repeat;transition:opacity .12s;position:absolute;top:0;left:0}.plate.scratching .brush{opacity:1}.content{z-index:1;flex-direction:column;max-width:880px;padding:0 88px;display:flex;position:relative}.sec{scroll-snap-align:start;flex-direction:column;justify-content:center;min-height:100vh;padding:112px 0 80px;display:flex;position:relative}.atmos{top:0;bottom:0;right:0;left:var(--plate-w);z-index:0;pointer-events:none;position:fixed;overflow:hidden}.atmos i{position:absolute;inset:0}.atmos .glow{background:radial-gradient(70% 55% at 100% 0%, var(--acc), transparent 72%), radial-gradient(60% 50% at 0% 100%, var(--dim), transparent 75%)}@supports (color:color-mix(in lab, red, red)){.atmos .glow{background:radial-gradient(70% 55% at 100% 0%, color-mix(in srgb, var(--acc) var(--glow,10%), transparent), transparent 72%), radial-gradient(60% 50% at 0% 100%, color-mix(in srgb, var(--dim) 60%, transparent), transparent 75%)}}.atmos .dots{background:radial-gradient(circle, var(--ink) .9px, transparent 1.3px) 0 0 / 22px 22px}@supports (color:color-mix(in lab, red, red)){.atmos .dots{background:radial-gradient(circle, color-mix(in srgb, var(--ink) 16%, transparent) .9px, transparent 1.3px) 0 0 / 22px 22px}}.atmos .dots{-webkit-mask:radial-gradient(75% 65% at 70% 40%,#000,#0000);mask:radial-gradient(75% 65% at 70% 40%,#000,#0000)}.atmos .grain{opacity:var(--grain,.09);mix-blend-mode:multiply;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .55 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}body[data-mode=dark] .atmos .grain{--grain:.28;mix-blend-mode:overlay}body[data-mode=dark]{--glow:14%}.nav{top:0;left:var(--plate-w);z-index:5;width:min(880px, calc(100vw - var(--plate-w)));justify-content:space-between;align-items:center;padding:40px 88px 16px;display:flex;position:fixed}.nav:before{content:"";top:0;bottom:0;left:0;right:min(0px, calc(880px + var(--plate-w) - 100vw));z-index:-1;pointer-events:none;background:radial-gradient(70% 55% at 100% 0%, var(--acc), transparent 72%) 0 0 / 100% 100vh no-repeat, linear-gradient(var(--bg) var(--nav-solid,55%), transparent);position:absolute}@supports (color:color-mix(in lab, red, red)){.nav:before{background:radial-gradient(70% 55% at 100% 0%, color-mix(in srgb, var(--acc) var(--glow,10%), transparent), transparent 72%) 0 0 / 100% 100vh no-repeat, linear-gradient(color-mix(in srgb, var(--bg) var(--nav-bg,88%), transparent) var(--nav-solid,55%), transparent)}}.nav:before{backdrop-filter:blur(6px);-webkit-mask:linear-gradient(#000 var(--nav-mask,70%), transparent);-webkit-mask:linear-gradient(#000 var(--nav-mask,70%), transparent);-webkit-mask:linear-gradient(#000 var(--nav-mask,70%), transparent);mask:linear-gradient(#000 var(--nav-mask,70%), transparent);opacity:0;transition:opacity .3s}html.scrolled .nav:before{opacity:1}.name{-webkit-font-smoothing:none;font-size:16px}.links{color:var(--mute);align-items:center;gap:18px;display:flex}.links a{transition:color .2s;position:relative}.links a:hover{color:var(--ink)}.links a:focus-visible,.icon-btn:focus-visible,.name:focus-visible{outline:1px solid var(--acc);outline-offset:4px;border-radius:2px}.links a[aria-current=true]{color:var(--ink)}.links a[aria-current=true]:before{content:"";background:var(--acc);width:4px;height:4px;margin-top:-2px;position:absolute;top:50%;left:-9px}.icon-btn{width:26px;height:26px;color:var(--mute);border-radius:6px;place-items:center;margin:-6px -8px -6px 0;display:grid}.icon-btn:hover{background:var(--chip);color:var(--ink)}.icon-btn svg{grid-area:1/1;width:11px;height:11px}body.sound-on .sound{color:var(--acc)}.mode .i-sun,body[data-mode=dark] .mode .i-moon,.sound .i-sound,body.sound-on .sound .i-mute{display:none}body[data-mode=dark] .mode .i-sun,body.sound-on .sound .i-sound{display:block}::view-transition-old(root),::view-transition-new(root){mix-blend-mode:normal;animation:none}html.vt-theme *,html.vt-theme :before,html.vt-theme :after,html.no-anim *,html.no-anim :before,html.no-anim :after{transition:none!important}.seasons{z-index:20;background:var(--bg);border-radius:8px;padding:3px;display:flex;position:fixed;bottom:16px;left:16px}@supports (color:color-mix(in lab, red, red)){.seasons{background:color-mix(in srgb, var(--bg) 82%, transparent)}}.seasons{-webkit-backdrop-filter:blur(8px);border:1px solid var(--line)}@supports (color:color-mix(in lab, red, red)){.seasons{border:1px solid color-mix(in srgb, var(--line) 70%, transparent)}}.seasons{opacity:.72;transition:opacity .2s,box-shadow .2s,gap .2s}.seasons:hover,.seasons:focus-within{opacity:1;gap:2px;box-shadow:0 6px 20px #00000014}.season{z-index:1;color:var(--mute);white-space:nowrap;border-radius:5px;align-items:center;padding:5px;font-family:Geist Mono,monospace;font-size:11px;transition:max-width .22s,padding .22s,opacity .18s,color .2s;display:flex;position:relative;overflow:hidden}.season svg{flex:none;width:11px;height:11px}.season .lbl{opacity:0;max-width:0;transition:max-width .22s,opacity .15s,margin .22s;overflow:hidden}.season:not([aria-checked=true]){opacity:0;pointer-events:none;max-width:0;padding-left:0;padding-right:0}.season[aria-checked=true]{color:var(--ink)}.seasons:hover .season,.seasons:focus-within .season{opacity:1;pointer-events:auto;max-width:160px;padding:6px 10px 6px 8px}.seasons:hover .lbl,.seasons:focus-within .lbl{opacity:1;max-width:120px;margin-left:7px}.seasons:hover .season:hover{color:var(--ink)}.seasons:hover .season[aria-checked=true],.seasons:focus-within .season[aria-checked=true]{color:var(--on-acc)}.hl{pointer-events:none;opacity:0;border-radius:5px;width:0;height:0;transition:opacity .15s,background-color .6s;position:absolute;top:0;left:0}.hl.glide{transition:translate .28s cubic-bezier(.2,.8,.2,1),width .28s cubic-bezier(.2,.8,.2,1),height .28s cubic-bezier(.2,.8,.2,1),opacity .15s,background-color .6s}.hl-hover{background:var(--chip)}.hl-hover.on{opacity:1}.hl-active{background:var(--acc)}.seasons:hover .hl-active,.seasons:focus-within .hl-active{opacity:1}.season:active{transform:translateY(1px)}.season:focus-visible{outline:2px solid var(--acc);outline-offset:1px}.hello{letter-spacing:-.01em;font-size:34px;line-height:1.3}.aside{color:var(--mute);margin-top:18px;font-size:16px;line-height:1.5}.label{color:var(--acc);margin-bottom:8px;font-size:12px}.posts li{border-bottom:1px solid var(--line);cursor:pointer;align-items:center;gap:18px;padding:16px 0;display:flex;position:relative}.posts li:hover .t{color:var(--acc)}.chip{width:44px;height:44px;image-rendering:pixelated;flex:none}.t{flex:1;font-size:17px;transition:color .2s}.d{color:var(--mute)}.posts a.t:after,.row a.t:after{content:"";position:absolute;inset:0}.posts a.t:focus-visible,.row a.t:focus-visible{outline:none}.posts li:has(a.t:focus-visible),.row:has(a.t:focus-visible){outline:1px solid var(--acc);outline-offset:2px;border-radius:2px}.card{border:1px solid var(--line);border-radius:6px;flex-direction:column;gap:16px;margin-top:8px;padding:20px;display:flex;position:relative}.row{justify-content:space-between;align-items:center;display:flex}.card .t{font-weight:500}.row.plain{padding:12px 20px;position:relative}.row.plain .t{font-size:16px}.row a.t:hover{color:var(--acc)}.pipe{align-items:center;display:flex}.pipe span{background:var(--chip);border:1px solid var(--line);white-space:nowrap;border-radius:3px;padding:8px 12px}.pipe span.hot{background:var(--acc);border-color:var(--acc);color:var(--on-acc)}.pipe i{background:var(--link);flex:1;height:1px}.pipe i.hot{background:var(--acc)}.activity{width:100%;height:64px;image-rendering:pixelated}.foot{color:var(--mute);align-items:flex-start;gap:14px}.foot .mail{letter-spacing:-.01em;color:var(--ink);font-family:Geist,sans-serif;font-size:34px;transition:color .2s}.foot a:hover{color:var(--acc)}.foot .social a:hover{color:var(--ink)}.foot a:focus-visible{outline:1px solid var(--acc);outline-offset:4px;border-radius:2px}#fx{pointer-events:none;z-index:100;width:100vw;height:100vh;image-rendering:pixelated;position:fixed;inset:0}@keyframes enter-rise{0%{opacity:0;transform:translateY(8px)}}@keyframes enter-fade{0%{opacity:0}}html.pre-enter .enter-item{opacity:0}html.pre-enter .plate{clip-path:inset(0 100% 0 0)}html.entering .enter-item{animation:enter-rise calc(.7s * var(--slow,1)) cubic-bezier(.2, .8, .2, 1) both;animation-delay:calc(var(--enter-t0,.6s) + var(--i,0) * 80ms)}html.entering .nav{animation:.25s both enter-fade;animation-delay:var(--enter-nav,.76s)}.splash{z-index:90;pointer-events:none;place-items:center;display:none;position:fixed;inset:0}.splash:before{content:"";background:var(--bg);transition:opacity calc(.45s * var(--slow,1)) ease;position:absolute;inset:0}html.pre-enter .splash,html.entering .splash{display:grid}.splash-card{flex-direction:column;align-items:center;gap:16px;display:flex;position:relative}.splash-row{align-items:center;gap:6px;display:flex;position:relative}.splash-name{-webkit-font-smoothing:none;color:var(--ink);transform-origin:0 0;transition:transform calc(.45s * var(--slow,1)) cubic-bezier(.6, 0, .2, 1);font-size:32px}.splash-name.assembling{color:#0000}.splash-pixels{image-rendering:pixelated;pointer-events:none;transition:transform calc(.45s * var(--slow,1)) cubic-bezier(.6, 0, .2, 1);position:absolute;top:0;left:0}html.entering .nav .name{opacity:0}html.pre-enter .splash-name{color:#0000}.splash.out:before{opacity:0}@media (width<=1279px){:root{--plate-w:40vw}body.is-post{--plate-w:36vw}.nav{width:calc(100vw - var(--plate-w));padding:40px 48px 16px}.content{padding:0 48px}.links{gap:14px}}@media (width<=1023px){:root{--nav-h:72px;--band-h:35vh}@supports (height:1svh){:root{--band-h:35svh}}html.snap{scroll-padding-top:calc(var(--nav-h) + var(--band-h))}.page{padding-top:var(--nav-h);display:block}.atmos{left:0}.nav{width:100%;height:var(--nav-h);background:var(--bg);padding:0 48px;left:0}.nav:before{display:none}.plate{top:var(--nav-h);height:var(--band-h)}.content{max-width:none;padding:0}.sec{min-height:calc(100vh - var(--nav-h) - var(--band-h));padding:24px 72px 72px}@supports (height:1svh){.sec{min-height:calc(100svh - var(--nav-h) - var(--band-h))}}}@media (width<=639px){:root{--nav-h:0px;--band-h:0px}.page{padding-top:0}.plate{display:none}.nav{background:linear-gradient(var(--bg) 60%, transparent);flex-wrap:wrap;justify-content:flex-start;gap:8px 18px;height:auto;padding:16px 12px 22px 24px}@supports (color:color-mix(in lab, red, red)){.nav{background:linear-gradient(color-mix(in srgb, var(--bg) 88%, transparent) 60%, transparent)}}.nav{backdrop-filter:blur(6px);-webkit-mask:linear-gradient(#000 75%,#0000);mask:linear-gradient(#000 75%,#0000)}.nav .name{flex:1}.links{display:contents}.nav:after{content:"";flex-basis:100%;order:2}.links a{order:3}.icon-btn{width:32px;height:32px;margin:0}.sec{padding:120px 24px 72px}.hello{letter-spacing:-.005em;font-size:26px}.aside{margin-top:14px;font-size:15px}.posts li{grid-template-columns:40px 1fr;gap:4px 14px;padding:14px 0;display:grid}.posts .chip{grid-row:span 2;width:40px;height:40px}.posts .t{font-size:16px;line-height:1.3}.posts .d{font-size:11px}.card{gap:14px;padding:16px}.card .row{flex-direction:column;align-items:flex-start;gap:4px}.card .t{font-size:16px}.card .d,.pipe{font-size:11px}.pipe span{padding:6px}.activity{height:40px}.row.plain{padding:10px 16px}.row.plain .t{font-size:15px}.row.plain .d{font-size:11px}.foot .mail{font-size:26px}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}.is-post{--read:var(--ink)}@supports (color:color-mix(in lab, red, red)){.is-post{--read:color-mix(in srgb, var(--ink) 86%, var(--bg))}}.is-post{--faint:var(--mute)}@supports (color:color-mix(in lab, red, red)){.is-post{--faint:color-mix(in srgb, var(--mute) 62%, var(--bg))}}html:has(body.is-post){scroll-padding-top:104px}.is-post .atmos .dots{display:none}.is-post .nav{--nav-bg:94%;--nav-solid:72%;--nav-mask:82%}.plate-ui{z-index:3;background:var(--bg);position:absolute}@supports (color:color-mix(in lab, red, red)){.plate-ui{background:color-mix(in srgb, var(--bg) 90%, transparent)}}.plate-ui{backdrop-filter:blur(6px);border-radius:4px;transition:background-color .6s,color .6s}.toc{width:min(300px, calc(var(--plate-w) - 48px));flex-direction:column;gap:10px;padding:16px 18px;display:flex;bottom:64px;left:24px}.toc .lbl{color:var(--acc);font-size:11px}.toc ol{flex-direction:column;gap:10px;display:flex}.toc a{min-width:0;color:var(--mute);align-items:baseline;gap:10px;font-size:13px;transition:color .2s;display:flex}.toc a span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.toc a .n{width:14px;color:var(--faint);flex:none;font-family:Geist Mono,ui-monospace,monospace;font-size:11px;transition:color .2s}.toc a:hover{color:var(--ink)}.toc a[aria-current=true]{color:var(--ink);font-weight:500}.toc a[aria-current=true] .n{color:var(--acc)}.toc a:focus-visible{outline:1px solid var(--acc);outline-offset:3px;border-radius:2px}.toc .progress{grid-template-columns:repeat(20,1fr);gap:3px;margin-top:6px;display:grid}.toc .progress i{background:var(--line);height:6px;transition:background-color .3s}.toc .progress i.on{background:var(--acc)}.post-main{z-index:1;max-width:880px;padding:124px 88px 120px;position:relative}.kicker{color:var(--acc);overflow-wrap:anywhere;font-size:12px}.post-title{letter-spacing:-.03em;text-wrap:balance;margin-top:26px;font-size:52px;font-weight:500;line-height:1.05}.post-meta{border-bottom:1px solid var(--line);color:var(--mute);flex-wrap:wrap;gap:6px 20px;margin-top:26px;padding-bottom:20px;display:flex}.next{border-top:1px solid var(--line);align-items:center;gap:16px;margin-top:56px;padding-top:24px;display:flex;position:relative}.next .chip{width:56px;height:56px}.next .k{color:var(--acc);margin-bottom:4px;font-size:11px;display:block}.next .t{font-size:18px}.next>svg{width:22px;height:22px;color:var(--mute);flex:none;transition:translate .2s,color .2s}.next:hover .t{color:var(--acc)}.next:hover>svg{color:var(--acc);translate:3px}.next:focus-visible{outline:1px solid var(--acc);outline-offset:6px;border-radius:2px}.prose{color:var(--read);overflow-wrap:break-word;margin-top:26px;font-size:18px;line-height:1.7}.prose>*+*{margin-top:26px}.prose h2,.prose h3,.prose h4{color:var(--ink);text-wrap:balance;font-weight:500;line-height:1.3;position:relative}.prose h2{letter-spacing:-.02em;margin-top:56px;padding-left:20px;font-size:26px}.prose h2:before{content:"";background:var(--acc);width:8px;height:8px;position:absolute;top:calc(.5lh - 4px);left:0}.prose h3{letter-spacing:-.01em;margin-top:40px;font-size:20px}.prose h4{margin-top:32px;font-size:18px}.prose h2+*,.prose h3+*,.prose h4+*{margin-top:18px}.prose .anchor{color:var(--link);opacity:0;margin-left:.35em;font-family:Geist Mono,ui-monospace,monospace;font-weight:400;transition:opacity .15s,color .15s}.prose :is(h2,h3,h4):hover .anchor{opacity:1}.prose .anchor:hover{color:var(--acc)}.prose a:not(.anchor){color:var(--ink);text-decoration:underline;-webkit-text-decoration-color:var(--link);-webkit-text-decoration-color:var(--link);text-decoration-color:var(--link);text-underline-offset:4px;text-decoration-thickness:1px;transition:color .2s,text-decoration-color .2s}.prose a:not(.anchor):hover{color:var(--acc);-webkit-text-decoration-color:var(--acc);-webkit-text-decoration-color:var(--acc);text-decoration-color:var(--acc)}.prose strong{color:var(--ink);font-weight:500}.prose em{font-style:italic}.prose ul,.prose ol{padding-left:24px}.prose li+li{margin-top:8px}.prose ul>li{position:relative}.prose ul>li:before{content:"";background:var(--acc);width:4px;height:4px;position:absolute;top:calc(.5lh - 2px);left:-20px}.prose ol{list-style:decimal}.prose ol>li::marker{color:var(--mute);font-family:Geist Mono,ui-monospace,monospace;font-size:14px}.prose blockquote{color:var(--ink);letter-spacing:-.01em;padding-left:22px;font-size:22px;font-weight:500;line-height:1.4;position:relative}.prose blockquote:before{content:"";background:repeating-conic-gradient(var(--acc) 0 25%, var(--dim) 0 50%) 0 0 / 4px 4px;width:6px;position:absolute;top:4px;bottom:4px;left:0}.prose blockquote>*+*{margin-top:12px}.prose hr{background:radial-gradient(circle, var(--link) 1.5px, transparent 2px) 0 0 / 12px 4px repeat-x;border:0;height:4px;margin:48px 0}.prose img{border:1px solid var(--line);border-radius:4px;max-width:100%;height:auto}.prose table{border-collapse:collapse;width:100%;font-size:15px}.prose th,.prose td{border-bottom:1px solid var(--line);text-align:left;padding:8px 12px}.prose th{color:var(--mute);font-family:Geist Mono,ui-monospace,monospace;font-size:12px;font-weight:400}.prose :not(pre)>code,.prose [data-rehype-pretty-code-figure]:not(figure)>code{background:var(--chip);border:1px solid var(--line);color:var(--ink);border-radius:3px;padding:2px 6px;font-family:Geist Mono,ui-monospace,monospace;font-size:.82em}.prose figure[data-rehype-pretty-code-figure]{background:var(--chip);border:1px solid var(--line);border-radius:4px;transition:background-color .6s,border-color .6s;overflow:hidden}.prose figcaption[data-rehype-pretty-code-title]{color:var(--acc);padding:14px 20px 0;font-family:Silkscreen,monospace;font-size:10px;line-height:1.3}.prose pre{tab-size:2;padding:16px 20px;font-family:Geist Mono,ui-monospace,monospace;font-size:14px;line-height:1.7;overflow-x:auto}.prose figcaption+pre{padding-top:8px}.prose pre code{font:inherit;display:grid}.prose [data-rehype-pretty-code-figure] [style*=--shiki-light]{color:var(--shiki-light)}body[data-mode=dark] .prose [data-rehype-pretty-code-figure] [style*=--shiki-dark]{color:var(--shiki-dark)}.prose [data-highlighted-line]{background:var(--acc);margin:0 -20px;padding:0 20px}@supports (color:color-mix(in lab, red, red)){.prose [data-highlighted-line]{background:color-mix(in srgb, var(--acc) 10%, transparent)}}.prose [data-highlighted-line]{box-shadow:inset 2px 0 var(--acc)}.prose [data-highlighted-chars]{background:var(--acc);border-radius:2px}@supports (color:color-mix(in lab, red, red)){.prose [data-highlighted-chars]{background:color-mix(in srgb, var(--acc) 16%, transparent)}}@media (height<=620px){.toc{display:none}}@media (width<=1279px){.post-main{padding:124px 48px 120px}.post-title{font-size:44px}}@media (width<=1023px){html:has(body.is-post){scroll-padding-top:calc(var(--nav-h) + 24px)}.is-post .plate{position:relative;top:0}.toc{display:none}.post-main{max-width:760px;margin:0 auto;padding:56px 72px 120px}}@media (width<=639px){html:has(body.is-post){scroll-padding-top:104px}.is-post .nav{background:linear-gradient(var(--bg) 72%, transparent);justify-content:flex-start}@supports (color:color-mix(in lab, red, red)){.is-post .nav{background:linear-gradient(color-mix(in srgb, var(--bg) 94%, transparent) 72%, transparent)}}.is-post .nav{-webkit-mask:linear-gradient(#000 82%,#0000);mask:linear-gradient(#000 82%,#0000)}.post-main{padding:120px 24px 96px}.post-title{letter-spacing:-.02em;font-size:34px}.prose{font-size:17px}.prose h2{margin-top:48px;font-size:22px}.prose blockquote{font-size:19px}.prose pre{padding:14px 16px;font-size:13px}.next .chip{width:44px;height:44px}.next .t{font-size:16px}}}@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.min-w-0{min-width:0}.flex-1{flex:1}.shrink{flex-shrink:1}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.border-line{border-color:var(--line)}.bg-bg{background-color:var(--bg)}.bg-white{background-color:var(--color-white)}.p-4{padding:calc(var(--spacing) * 4)}.font-mono{font-family:Geist Mono,ui-monospace,monospace}.font-pixel{font-family:Silkscreen,monospace}.font-sans{font-family:Geist,system-ui,sans-serif}.text-ink{color:var(--ink)}.text-mute{color:var(--mute)}.italic{font-style:italic}.underline{text-decoration-line:underline}.decoration-link{-webkit-text-decoration-color:var(--link);-webkit-text-decoration-color:var(--link);text-decoration-color:var(--link)}.underline-offset-4{text-underline-offset:4px}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);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: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,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}@media (hover:hover){.hover\:text-acc:hover{color:var(--acc)}}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";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}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
