@charset "UTF-8";@import"https://fonts.googleapis.com/css2?family=Roboto+Flex:opsz,wght@8..144,100..1000&display=swap";.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}@layer root{:root{--font-fallback: system, -apple-system, "BlinkMacSystemFont", ".SFNSText-Regular", "San Francisco", "Roboto", "Segoe UI", "Helvetica Neue", "Lucida Grande", "Ubuntu", "arial", sans-serif;--font-body: "Roboto Flex", var(--font-fallback);--font-heading: "Roboto Flex", var(--font-fallback);--font-code: Menlo, Consolas, Monaco, Liberation Mono, Lucida Console, monospace;--brand-color: #a0755b;--brand-hue: 22.6086956522deg;--brand-saturation: 27.4900398406%;--brand-lightness: 49.2156862745%;--brand-light: hsl( var(--brand-hue) var(--brand-saturation) var(--brand-lightness) );--text1-light: hsl(var(--brand-hue) var(--brand-saturation) 10%);--text2-light: hsl(var(--brand-hue) 30% 30%);--surface1-light: hsl(var(--brand-hue) 25% 90%);--surface2-light: hsl(var(--brand-hue) 20% 99%);--surface3-light: hsl(var(--brand-hue) 20% 92%);--surface4-light: hsl(var(--brand-hue) 20% 85%);--surface-shadow-light: var(--brand-hue) 10% 20%;--shadow-strength-light: .02;--brand-dark: hsl( var(--brand-hue) calc(var(--brand-saturation) / 2) calc(var(--brand-lightness) / 1.5) );--text1-dark: hsl(var(--brand-hue) 15% 85%);--text2-dark: hsl(var(--brand-hue) 5% 65%);--surface1-dark: hsl(var(--brand-hue) 10% 10%);--surface2-dark: hsl(var(--brand-hue) 10% 15%);--surface3-dark: hsl(var(--brand-hue) 5% 20%);--surface4-dark: hsl(var(--brand-hue) 5% 25%);--surface-shadow-dark: var(--brand-hue) 50% 3%;--shadow-strength-dark: .8;--brand-dim: hsl( var(--brand-hue) calc(var(--brand-saturation) / 1.25) calc(var(--brand-lightness) / 1.25) );--text1-dim: hsl(var(--brand-hue) 15% 75%);--text2-dim: hsl(var(--brand-hue) 10% 61%);--surface1-dim: hsl(var(--brand-hue) 10% 20%);--surface2-dim: hsl(var(--brand-hue) 10% 25%);--surface3-dim: hsl(var(--brand-hue) 5% 30%);--surface4-dim: hsl(var(--brand-hue) 5% 35%);--surface-shadow-dim: var(--brand-hue) 30% 13%;--shadow-strength-dim: .2;--brand: var(--brand-light);--text1: var(--text1-light);--text2: var(--text2-light);--surface1: var(--surface1-light);--surface2: var(--surface2-light);--surface3: var(--surface3-light);--surface4: var(--surface4-light);--surface-shadow: var(--surface-shadow-light);--shadow-strength: var(--shadow-strength-light);--max-container-width: 1024px;--gutter: 16px;--gap: 12px;--base-weight: 400;--base-grade: 0;color-scheme:light}@media (prefers-contrast: more){--base-weight: 700}@media (prefers-contrast: less){--base-weight: 200}@media (prefers-color-scheme: dark){--base-grade: -25}@media (prefers-color-scheme: dark){:root{color-scheme:dark;--brand: var(--brand-dark);--text1: var(--text1-dark);--text2: var(--text2-dark);--surface1: var(--surface1-dark);--surface2: var(--surface2-dark);--surface3: var(--surface3-dark);--surface4: var(--surface4-dark);--surface-shadow: var(--surface-shadow-dark);--shadow-strength: var(--shadow-strength-dark)}}[color-scheme=light]{color-scheme:light;--brand: var(--brand-light);--text1: var(--text1-light);--text2: var(--text2-light);--surface1: var(--surface1-light);--surface2: var(--surface2-light);--surface3: var(--surface3-light);--surface4: var(--surface4-light);--surface-shadow: var(--surface-shadow-light);--shadow-strength: var(--shadow-strength-light)}[color-scheme=dark]{color-scheme:dark;--brand: var(--brand-dark);--text1: var(--text1-dark);--text2: var(--text2-dark);--surface1: var(--surface1-dark);--surface2: var(--surface2-dark);--surface3: var(--surface3-dark);--surface4: var(--surface4-dark);--surface-shadow: var(--surface-shadow-dark);--shadow-strength: var(--shadow-strength-dark)}[color-scheme=dim]{color-scheme:dark;--brand: var(--brand-dim);--text1: var(--text1-dim);--text2: var(--text2-dim);--surface1: var(--surface1-dim);--surface2: var(--surface2-dim);--surface3: var(--surface3-dim);--surface4: var(--surface4-dim);--surface-shadow: var(--surface-shadow-dim);--shadow-strength: var(--shadow-strength-dim)}}@layer reset{*,*:before,*:after{box-sizing:border-box}body,h1,h2,h3,h4,p,figure,blockquote,dl,dd{margin:0}ul,ol{list-style:none;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-body);font-size:var(--base-font-size);line-height:var(--font-content-line-height);text-rendering:optimizeSpeed}a:not([class]){text-decoration-skip-ink:auto}a{text-decoration:none}img,picture{display:block;max-width:100%}em{font-variation-settings:"slnt" -10}input,button,textarea,select{font:inherit}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}}@layer base{html{color:var(--text1);font-family:var(--font-body);font-variation-settings:"wght" var(--base-weight),"GRAD" var(--base-grade);line-height:1.2;background-color:var(--surface2)}h1{font-weight:600}h2{font-weight:500}h3{font-weight:300}a{color:var(--text2)}}/*!
 * dev
 */::view-transition-old(root),::view-transition-new(root){animation-duration:.5s;animation-timing-function:cubic-bezier(.4,0,.2,1)}::view-transition-old(root){animation-name:fade-out}::view-transition-new(root){animation-name:fade-in}@keyframes fade-in{0%{opacity:0;transform:translateY(20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes fade-out{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-20px) scale(.98)}}::view-transition-old(back-button),::view-transition-new(back-button){animation-duration:.3s;animation-timing-function:cubic-bezier(.4,0,.2,1)}article{transition:all .3s cubic-bezier(.4,0,.2,1);will-change:transform,box-shadow}h2{transition:color .3s ease}figure{transition:all .3s ease;will-change:transform,box-shadow}.back-button{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:var(--primary, #a0755b);color:#fff;text-decoration:none;border-radius:8px;font-weight:500;transition:all .3s cubic-bezier(.4,0,.2,1);margin-bottom:2rem;box-shadow:0 2px 8px var(--surface-shadow);will-change:transform,box-shadow}.back-button:hover{background:var(--primary-dark, #8a6b4f);transform:translate(-4px);box-shadow:0 4px 12px var(--surface-shadow)}.back-button:active{transform:translate(-2px)}.loading{opacity:.7;pointer-events:none}.skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:loading 1.5s infinite;will-change:background-position}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}:root{--view-transition-duration: .5s;--view-transition-timing: cubic-bezier(.4, 0, .2, 1)}@media (prefers-reduced-motion: reduce){::view-transition-old(root),::view-transition-new(root){animation-duration:.1s}}@media (prefers-color-scheme: dark){.skeleton{background:linear-gradient(90deg,#2a2a2a 25%,#3a3a3a,#2a2a2a 75%)}figure:hover{box-shadow:0 8px 25px #ffffff26}}@media (prefers-reduced-motion: no-preference) and (min-resolution: 2dppx){::view-transition-old(root),::view-transition-new(root){animation-duration:.4s}}@layer navigation{.navigation{border:1px solid red}}@layer post-content{.post-item{max-width:var(--max-container-width);margin:0 auto;padding-right:var(--gutter);padding-left:var(--gutter);padding-bottom:calc(var(--gap) * 5)}.post-header,.post-content{max-width:var(--max-container-width);margin:0 auto;padding-right:var(--gutter);padding-left:var(--gutter)}}@layer code-highlight{code[data-theme*=" "],code[data-theme*=" "] span{color:var(--shiki-light);background-color:var(--shiki-light-bg)}@media (prefers-color-scheme: dark){code[data-theme*=" "],code[data-theme*=" "] span{color:var(--shiki-dark);background-color:var(--shiki-dark-bg)}}code[data-line-numbers]{counter-reset:line}code[data-line-numbers]>[data-line]:before{counter-increment:line;content:counter(line);display:inline-block;width:.75rem;margin-right:2rem;text-align:right;color:gray}code[data-line-numbers-max-digits="2"]>[data-line]:before{width:1.25rem}code[data-line-numbers-max-digits="3"]>[data-line]:before{width:1.75rem}code[data-line-numbers-max-digits="4"]>[data-line]:before{width:2.25rem}}body{--columns: 12;--spacing: 16px;--container: min(var(--max-container-width), 100cqw) ;--content-width: calc(var(--container) - var(--gutter) * 2);--line: linear-gradient(90deg, transparent 0, rgba(255, 0, 0, .01) 1px);--grid-column-fill: rgba(255, 0, 0, .04);--grid-gutter-fill: rgba(0, 120, 255, .04);--grid-padding-fill: rgba(255, 150, 0, .12);--col-padding: calc(var(--spacing) / 1);--col: calc((var(--content-width) - (var(--spacing) * (var(--columns) - 1))) / var(--columns));--track: calc(var(--col) + var(--spacing));container-type:inline-size}body:after{position:fixed;z-index:100;inset:0 0 0 50%;width:var(--content-width);max-width:none;content:"";transform:translate(-50%);pointer-events:none;background-image:repeating-linear-gradient(90deg,rgba(255,0,0,.5) 0 1px,transparent 1px var(--track)),repeating-linear-gradient(90deg,transparent 0 calc(var(--col) - 1px),rgba(255,0,0,.5) calc(var(--col) - 1px) var(--col),transparent var(--col) var(--track)),repeating-linear-gradient(90deg,var(--grid-padding-fill) 0 var(--col-padding),transparent var(--col-padding) var(--track)),repeating-linear-gradient(90deg,transparent 0 calc(var(--col) - var(--col-padding)),var(--grid-padding-fill) calc(var(--col) - var(--col-padding)) var(--col),transparent var(--col) var(--track)),repeating-linear-gradient(90deg,var(--grid-column-fill) 0 var(--col),transparent var(--col) var(--track)),repeating-linear-gradient(90deg,transparent 0 var(--col),var(--grid-gutter-fill) var(--col) var(--track));background-repeat:repeat}@media (max-width: 1280px){body{--columns: 6}}@media (max-width: 768px){body{--columns: 4}}@media print{body:after{display:none}}
