@font-face{font-family:Atkinson;src:url(/fonts/atkinson-regular.woff) format("woff");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Atkinson;src:url(/fonts/atkinson-bold.woff) format("woff");font-weight:700;font-style:normal;font-display:swap}:root{--bg: #f8fafc;--bg-secondary: #f1f5f9;--text: #1e293b;--text-muted: #64748b;--accent: #6366f1;--accent-hover: #4f46e5;--border: #e2e8f0;--card-bg: #ffffff;--code-bg: #f1f5f9;--header-bg: rgba(248, 250, 252, .95);--shadow: 0 1px 3px rgba(0, 0, 0, .1), 0 1px 2px rgba(0, 0, 0, .06);--shadow-md: 0 4px 6px rgba(0, 0, 0, .07), 0 2px 4px rgba(0, 0, 0, .06)}[data-theme=dark]{--bg: #1c1917;--bg-secondary: #292524;--text: #f5f5f4;--text-muted: #a8a29e;--accent: #fbbf24;--accent-hover: #f59e0b;--border: #44403c;--card-bg: #292524;--code-bg: #292524;--header-bg: rgba(28, 25, 23, .95);--shadow: 0 1px 3px rgba(0, 0, 0, .4), 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px rgba(0, 0, 0, .3), 0 2px 4px rgba(0, 0, 0, .2)}:where(html){scroll-behavior:smooth}[id]{scroll-margin-top:80px}*,*:before,*:after{box-sizing:border-box}body{font-family:Atkinson,sans-serif;margin:0;padding:0;text-align:left;background-color:var(--bg);color:var(--text);font-size:18px;line-height:1.7;transition:background-color .2s ease,color .2s ease;word-wrap:break-word;overflow-wrap:break-word}main{width:720px;max-width:calc(100% - 2em);margin:auto;padding:3em 1em}h1,h2,h3,h4,h5,h6{margin:0 0 .5rem;color:var(--text);line-height:1.2}h1{font-size:2.5em}h2{font-size:2em}h3{font-size:1.6em}h4{font-size:1.3em}h5{font-size:1.1em}strong,b{font-weight:700}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-hover);text-decoration:underline}p{margin-bottom:1em}.prose p{margin-bottom:1.5em}textarea{width:100%;font-size:16px}input{font-size:16px}table{width:100%;border-collapse:collapse}th,td{padding:.5em 1em;border:1px solid var(--border);text-align:left}img{max-width:100%;height:auto;border-radius:8px}code{padding:2px 6px;background-color:var(--code-bg);border:1px solid var(--border);border-radius:4px;font-size:.9em}pre{padding:1.5em;border-radius:8px;overflow-x:auto;border:1px solid var(--border)}pre>code{all:unset}blockquote{border-left:3px solid var(--accent);padding:0 0 0 1.5em;margin:1em 0;color:var(--text-muted);font-style:italic}hr{border:none;border-top:1px solid var(--border);margin:2em 0}ul,ol{padding-left:1.5em}li{margin-bottom:.25em}@media (max-width: 720px){body{font-size:16px}main{padding:1.5em 1em}}.sr-only{border:0;padding:0;margin:0;position:absolute!important;height:1px;width:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);white-space:nowrap}@keyframes fade-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-left{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}@keyframes code-border-flash{0%,30%{border-color:var(--accent)}to{border-color:var(--border)}}[data-load-anim]{opacity:0;animation-fill-mode:both;animation-duration:.4s;animation-timing-function:ease-out}[data-load-anim=fade-up]{animation-name:fade-up}[data-load-anim=fade-in]{animation-name:fade-in}[data-scroll-anim]{opacity:0;transition:opacity .4s ease-out,transform .4s ease-out}[data-scroll-anim=fade-up]{transform:translateY(8px)}[data-scroll-anim=slide-left]{transform:translate(-12px)}[data-scroll-anim].is-visible{opacity:1;transform:none}pre.code-flash{animation:code-border-flash .6s ease-out both}.prose ul li,.prose ol li{opacity:0;transform:translateY(4px);transition:opacity .3s ease-out,transform .3s ease-out}.prose ul.is-visible li,.prose ol.is-visible li{opacity:1;transform:none}.prose ul.is-visible li:nth-child(2),.prose ol.is-visible li:nth-child(2){transition-delay:40ms}.prose ul.is-visible li:nth-child(3),.prose ol.is-visible li:nth-child(3){transition-delay:80ms}.prose ul.is-visible li:nth-child(4),.prose ol.is-visible li:nth-child(4){transition-delay:.12s}.prose ul.is-visible li:nth-child(5),.prose ol.is-visible li:nth-child(5){transition-delay:.16s}.prose ul.is-visible li:nth-child(n+6),.prose ol.is-visible li:nth-child(n+6){transition-delay:.2s}#reading-progress{position:fixed;top:0;left:0;width:0%;height:2px;background:var(--accent);z-index:101;opacity:0;transition:opacity .3s ease}#reading-progress.visible{opacity:1}@media (prefers-reduced-motion: reduce){[data-load-anim]{animation:none!important;opacity:1!important}[data-scroll-anim],.prose ul li,.prose ol li{opacity:1!important;transform:none!important;transition:none!important}pre.code-flash{animation:none!important}}#cursor-glow{position:fixed;inset:0;pointer-events:none;z-index:100;mix-blend-mode:overlay;opacity:0;transition:opacity .4s ease;will-change:background}[data-theme=light] #cursor-glow{mix-blend-mode:multiply}#cursor-glow.active{opacity:1}@media (hover: none),(prefers-reduced-motion: reduce){#cursor-glow{display:none}}a[data-astro-cid-eimmu3lg]{display:inline-block;padding:.4em .75em;color:var(--text-muted);border-radius:6px;text-decoration:none;font-size:.95em;transition:color .15s ease,background-color .15s ease}a[data-astro-cid-eimmu3lg]:hover{color:var(--text);background-color:var(--bg-secondary);text-decoration:none}a[data-astro-cid-eimmu3lg].active{color:var(--accent);font-weight:600}header[data-astro-cid-3ef6ksr2]{margin:0;padding:0 1.5em;background:var(--header-bg);border-bottom:1px solid var(--border);backdrop-filter:blur(8px);position:sticky;top:0;z-index:100}h2[data-astro-cid-3ef6ksr2]{margin:0;font-size:1em}h2[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2]{text-decoration:none;color:var(--text);font-weight:700;letter-spacing:-.02em}h2[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2]:hover{color:var(--accent);text-decoration:none}nav[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;justify-content:space-between;gap:1em;height:60px}.internal-links[data-astro-cid-3ef6ksr2]{display:flex;gap:.25em}.right-links[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;gap:.5em}.social-links[data-astro-cid-3ef6ksr2]{display:flex;gap:.125em}.social-links[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:6px;color:var(--text-muted);text-decoration:none;transition:color .15s ease,background-color .15s ease}.social-links[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2]:hover{color:var(--text);background-color:var(--bg-secondary);text-decoration:none}#theme-toggle[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid var(--border);border-radius:6px;background:transparent;color:var(--text-muted);cursor:pointer;transition:color .15s ease,background-color .15s ease,border-color .15s ease}#theme-toggle[data-astro-cid-3ef6ksr2]:hover{color:var(--text);background-color:var(--bg-secondary)}[data-theme=light] .sun-icon[data-astro-cid-3ef6ksr2]{display:none}[data-theme=light] .moon-icon[data-astro-cid-3ef6ksr2],[data-theme=dark] .sun-icon[data-astro-cid-3ef6ksr2]{display:block}[data-theme=dark] .moon-icon[data-astro-cid-3ef6ksr2]{display:none}@media (max-width: 720px){.social-links[data-astro-cid-3ef6ksr2]{display:none}}footer[data-astro-cid-sz7xmlte]{padding:2em 1.5em;background:var(--bg-secondary);border-top:1px solid var(--border);color:var(--text-muted);text-align:center;font-size:.9em}.social-links[data-astro-cid-sz7xmlte]{display:flex;justify-content:center;gap:.5em;margin-top:.75em}.social-links[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:6px;text-decoration:none;color:var(--text-muted);transition:color .15s ease,background-color .15s ease}.social-links[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{color:var(--text);background-color:var(--bg)}
