@font-face{font-family:Schibsted Grotesk;font-style:italic;font-weight:400 900;font-display:swap;src:url(/fonts/schibsted-grotesk-italic-400-900-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Schibsted Grotesk;font-style:italic;font-weight:400 900;font-display:swap;src:url(/fonts/schibsted-grotesk-italic-400-900-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Schibsted Grotesk;font-style:normal;font-weight:400 900;font-display:swap;src:url(/fonts/schibsted-grotesk-normal-400-900-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Schibsted Grotesk;font-style:normal;font-weight:400 900;font-display:swap;src:url(/fonts/schibsted-grotesk-normal-400-900-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono-normal-400-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono-normal-400-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-mono-normal-500-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-mono-normal-500-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color-scheme:light;--paper: #F5F6F8;--surface: #FFFFFF;--ink: #172030;--muted: #536073;--rule: #D5DBE3;--focus: #1B5FD1;--wash: rgb(23 32 48 / .06);--shadow-float: 0 8px 24px rgb(0 0 0 / .2);--shadow-cover: 0 14px 32px rgb(0 0 0 / .24);--shadow-dialog: 0 24px 60px rgb(0 0 0 / .22);--backdrop: rgb(14 20 29 / .45);--backdrop-dark: rgb(8 12 18 / .88);--on-backdrop: #E3E8EF;--lane-hexo: #0A7780;--lane-git: #BF4326;--lane-chatgpt: #7143B5;--lane-games: #2C7A31;--lane-flutter: #1C60C8;--font-sans: "Schibsted Grotesk", system-ui, sans-serif;--font-code: "IBM Plex Mono", ui-monospace, Consolas, monospace;--display-weight: 800;--display-tracking: -.045em;--text-xs: .75rem;--text-sm: .875rem;--text-ui: .9375rem;--text-base: 1rem;--text-md: 1.125rem;--text-lg: 1.375rem;--text-xl: 1.75rem;--text-2xl: clamp(2.25rem, 6vw, 3.75rem);--text-display: clamp(3.25rem, 9.5vw, 7rem);--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 3rem;--space-8: 4rem;--space-9: 5rem;--gutter: clamp(1rem, 4vw, 2.5rem);--content-max: 76rem;--radius-sm: 6px;--radius-md: 14px;--radius-lg: 18px;--radius-xl: 22px;--radius-pill: 999px}:root[data-theme=dark]{color-scheme:dark;--paper: #0E141D;--surface: #151D29;--ink: #E3E8EF;--muted: #99A4B5;--rule: #253041;--focus: #7DB0FF;--wash: rgb(227 232 239 / .07);--lane-hexo: #47C2CB;--lane-git: #FF8C6B;--lane-chatgpt: #BA9CF5;--lane-games: #74C678;--lane-flutter: #7AAAFF}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-padding-top:var(--space-5)}body{margin:0;background:var(--paper);color:var(--ink);font:400 var(--text-base)/1.55 var(--font-sans)}img{max-width:100%;height:auto}a{color:inherit}button,input{font:inherit}:focus-visible{outline:2px solid var(--focus);outline-offset:3px;border-radius:3px}main:focus{outline:none}.visually-hidden{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.skip{position:absolute;top:-4rem;left:var(--gutter);z-index:30;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--ink);color:var(--paper);font-weight:600}.skip:focus{top:var(--space-3)}.wrap{max-width:var(--content-max);margin-inline:auto;padding-inline:var(--gutter)}.icon{width:1.25rem;height:1.25rem;flex:none;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.icon-btn{display:grid;place-items:center;width:2.5rem;height:2.5rem;border:0;border-radius:var(--radius-pill);background:transparent;color:var(--ink);cursor:pointer}.icon-btn:hover{background:var(--wash)}.page{padding-block:var(--space-8) var(--space-9)}.page-title{margin:0 0 var(--space-4);font-size:var(--text-2xl);font-weight:var(--display-weight);line-height:1.04;letter-spacing:calc(var(--display-tracking) * .8);text-wrap:balance}.lede{max-width:40rem;margin:0;color:var(--muted);font-size:var(--text-md);line-height:1.6}.empty{margin:0;color:var(--muted)}.button{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border:1px solid var(--rule);border-radius:var(--radius-pill);background:var(--surface);font-weight:650;text-decoration:none}.button:hover{border-color:var(--ink)}::view-transition-old(root),::view-transition-new(root){animation-duration:.3s}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.site-header[data-astro-cid-3ef6ksr2]{border-bottom:1px solid var(--rule)}.row[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;gap:var(--space-6);min-height:4rem}.brand[data-astro-cid-3ef6ksr2]{font-size:var(--text-md);font-weight:var(--display-weight);letter-spacing:-.015em;text-decoration:none;white-space:nowrap}.nav[data-astro-cid-3ef6ksr2]{display:flex;gap:var(--space-5)}.nav[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2]{padding-block:1.25rem;color:var(--muted);font-size:var(--text-ui);font-weight:500;text-decoration:none}.nav[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2]:hover{color:var(--ink)}.nav[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2][aria-current=page]{color:var(--ink);box-shadow:inset 0 -2px var(--ink)}.nav[data-astro-cid-3ef6ksr2] span[data-astro-cid-3ef6ksr2]{display:inline-block;transition:transform .15s ease}.nav[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2]:focus-visible span[data-astro-cid-3ef6ksr2]{transform:scale(1.08)}@media(hover:hover){.nav[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2]:hover span[data-astro-cid-3ef6ksr2]{transform:scale(1.08)}}.tools[data-astro-cid-3ef6ksr2]{display:flex;gap:var(--space-1);margin-left:auto}.theme-btn[data-astro-cid-3ef6ksr2] .sun[data-astro-cid-3ef6ksr2]{display:none}[data-theme=dark] .theme-btn[data-astro-cid-3ef6ksr2] .sun[data-astro-cid-3ef6ksr2]{display:block}[data-theme=dark] .theme-btn[data-astro-cid-3ef6ksr2] .moon[data-astro-cid-3ef6ksr2]{display:none}@media(max-width:719px){.row[data-astro-cid-3ef6ksr2]{flex-wrap:wrap;gap:0 var(--space-4);min-height:3.5rem}.nav[data-astro-cid-3ef6ksr2]{order:3;width:100%;gap:1.25rem;overflow-x:auto;border-top:1px solid var(--rule);scrollbar-width:none}.nav[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2]{padding-block:.875rem;white-space:nowrap}}.site-footer[data-astro-cid-sz7xmlte]{border-top:1px solid var(--rule);color:var(--muted);font-size:var(--text-sm)}.row[data-astro-cid-sz7xmlte]{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--space-2) var(--space-6);padding-block:var(--space-5) var(--space-9)}p[data-astro-cid-sz7xmlte]{margin:0}.to-top[data-astro-cid-wlspcwf4]{position:fixed;right:var(--space-4);bottom:var(--space-4);z-index:20;display:grid;place-items:center;width:2.75rem;height:2.75rem;border:1px solid var(--rule);border-radius:50%;background:var(--surface);color:var(--ink);cursor:pointer;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .2s ease,transform .2s ease,visibility .2s}.to-top[data-astro-cid-wlspcwf4].is-visible{opacity:1;visibility:visible;transform:none}.search[data-astro-cid-euff75kw]{width:min(40rem,calc(100vw - 2rem));max-height:min(34rem,80dvh);margin:12vh auto auto;padding:0;overflow:hidden;border:1px solid var(--rule);border-radius:var(--radius-lg);background:var(--surface);color:var(--ink);box-shadow:var(--shadow-dialog)}.search[data-astro-cid-euff75kw]::backdrop{background:var(--backdrop)}.box[data-astro-cid-euff75kw]{display:flex;align-items:center;gap:var(--space-3);padding:.625rem var(--space-4);border-bottom:1px solid var(--rule)}.box[data-astro-cid-euff75kw]:focus-within{box-shadow:inset 0 -2px var(--focus)}input[data-astro-cid-euff75kw]{flex:1;min-width:0;padding:var(--space-2) 0;border:0;background:transparent;color:inherit;font-size:var(--text-md);font-weight:500}input[data-astro-cid-euff75kw]:focus{outline:none}.esc[data-astro-cid-euff75kw]{padding:var(--space-1) var(--space-2);border:1px solid var(--rule);border-radius:var(--radius-sm);background:transparent;color:var(--muted);font-size:var(--text-xs);font-weight:600;cursor:pointer}.results[data-astro-cid-euff75kw]{max-height:calc(min(34rem,80dvh) - 4rem);margin:0;padding:var(--space-2);overflow-y:auto;list-style:none}.results[data-astro-cid-euff75kw] a{display:grid;gap:var(--space-1);padding:.625rem var(--space-3);border-radius:12px;text-decoration:none}.results[data-astro-cid-euff75kw] a:hover,.results[data-astro-cid-euff75kw] a:focus-visible{background:var(--wash);outline-offset:-2px}.results[data-astro-cid-euff75kw] .title{font-weight:650}.results[data-astro-cid-euff75kw] .excerpt{color:var(--muted);font-size:var(--text-sm);line-height:1.5}.results[data-astro-cid-euff75kw] mark{border-radius:3px;background:color-mix(in srgb,var(--focus) 22%,transparent);color:var(--ink)}.status[data-astro-cid-euff75kw]{margin:0;padding:1.25rem var(--space-4);color:var(--muted)}
