.site-header[data-astro-cid-nen7h5rs]{border-bottom:1px solid var(--color-border);background-color:var(--color-bg);z-index:50;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);width:100%;position:sticky;top:0}.header-inner[data-astro-cid-nen7h5rs]{max-width:var(--container-wide);padding:var(--space-4) var(--gutter);justify-content:space-between;align-items:center;margin:0 auto;display:flex}@media (width>=640px){.header-inner[data-astro-cid-nen7h5rs]{padding:var(--space-5) var(--gutter-lg)}}.brand-link[data-astro-cid-nen7h5rs]{color:var(--color-text);text-decoration:none}.brand-name[data-astro-cid-nen7h5rs]{font-family:var(--font-sans);font-size:var(--text-md);letter-spacing:.01em;font-weight:600}.site-nav[data-astro-cid-nen7h5rs]{align-items:center;gap:var(--space-4);display:flex}@media (width>=640px){.site-nav[data-astro-cid-nen7h5rs]{gap:var(--space-6)}}.nav-link[data-astro-cid-nen7h5rs]{font-family:var(--font-sans);font-size:var(--text-sm);color:var(--color-text-secondary);transition:color var(--transition-speed), border-color var(--transition-speed);border-bottom:1.5px solid #0000;padding-bottom:2px;text-decoration:none}.nav-link[data-astro-cid-nen7h5rs]:hover{color:var(--color-accent)}.nav-link[data-astro-cid-nen7h5rs].active{color:var(--color-text);border-bottom-color:var(--color-accent)}.theme-toggle[data-astro-cid-nen7h5rs]{border:1px solid var(--color-border);border-radius:var(--radius-full);cursor:pointer;margin-left:var(--space-1);color:var(--color-text-muted);background:0 0;align-items:center;padding:2px;display:inline-flex}.theme-toggle[data-astro-cid-nen7h5rs]:hover{border-color:var(--color-accent)}.theme-toggle-option[data-astro-cid-nen7h5rs]{border-radius:var(--radius-full);width:24px;height:20px;transition:background-color var(--transition-speed), color var(--transition-speed);justify-content:center;align-items:center;font-size:11px;display:inline-flex}:root:not([data-theme=dark]) .theme-toggle-option[data-astro-cid-nen7h5rs].sun,:root[data-theme=dark] .theme-toggle-option[data-astro-cid-nen7h5rs].moon{background-color:var(--color-surface);color:var(--color-text)}.site-footer[data-astro-cid-jo6i4kqk]{border-top:1px solid var(--color-border);background-color:var(--color-bg);width:100%;margin-top:auto}.footer-inner[data-astro-cid-jo6i4kqk]{max-width:var(--container-wide);padding:var(--space-6) var(--gutter);gap:var(--space-3);font-family:var(--font-sans);font-size:var(--text-sm);color:var(--color-text-muted);flex-direction:column;align-items:center;margin:0 auto;display:flex}@media (width>=640px){.footer-inner[data-astro-cid-jo6i4kqk]{padding:var(--space-6) var(--gutter-lg);flex-direction:row;justify-content:space-between}}.footer-copy[data-astro-cid-jo6i4kqk]{align-items:center;display:flex}.footer-links[data-astro-cid-jo6i4kqk]{align-items:center;gap:var(--space-4);display:flex}.footer-links[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]{color:var(--color-text-secondary);transition:color var(--transition-speed);text-decoration:none}.footer-links[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]:hover{color:var(--color-accent)}:root{--font-sans:"Newsreader", Georgia, Cambria, "Times New Roman", Times, serif;--font-mono:ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--text-3xl:2.5rem;--text-3xl-lh:1.05;--text-3xl-ls:-.015em;--text-2xl:2.125rem;--text-2xl-lh:1.15;--text-2xl-ls:-.015em;--text-xl:1.5rem;--text-xl-lh:1.25;--text-xl-ls:-.01em;--text-lg:1.25rem;--text-lg-lh:1.35;--text-lg-ls:0;--text-md:1.1875rem;--text-md-lh:1.55;--text-md-ls:0;--text-base:1.0625rem;--text-base-lh:1.6;--text-base-ls:0;--text-sm:.9375rem;--text-sm-lh:1.5;--text-sm-ls:0;--text-xs:.6875rem;--text-xs-lh:1;--text-xs-ls:.16em;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-14:56px;--space-16:64px;--space-18:72px;--space-20:80px;--space-24:96px;--radius-none:0;--radius-sm:4px;--radius-md:4px;--radius-lg:6px;--radius-full:999px;--shadow-none:none;--shadow-sm:0 1px 2px oklch(20% .01 60/.06);--shadow-md:0 4px 16px oklch(20% .01 60/.08);--container-page:1080px;--container-prose:68ch;--container-wide:1080px;--gutter:20px;--gutter-lg:48px;--bp-sm:640px;--bp-md:900px;--bp-lg:1200px;--transition-speed:.12s;--color-bg:oklch(97.5% .009 85);--color-surface:oklch(95.2% .013 85);--color-surface-raised:oklch(99% .005 85);--color-text:oklch(25.5% .015 60);--color-text-secondary:oklch(45% .015 60);--color-text-muted:oklch(60% .014 60);--color-accent:oklch(50% .13 45);--color-accent-hover:oklch(41% .14 45);--color-accent-contrast:oklch(99% .005 85);--color-border:oklch(88.5% .013 75);--color-border-strong:oklch(80% .015 75);--color-focus:oklch(50% .13 45);--color-selection:oklch(90% .06 45);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--color-bg:oklch(19.5% .012 60);--color-surface:oklch(24.5% .014 60);--color-surface-raised:oklch(27.5% .014 60);--color-text:oklch(94.5% .008 80);--color-text-secondary:oklch(76% .012 75);--color-text-muted:oklch(62.5% .014 75);--color-accent:oklch(77.5% .11 55);--color-accent-hover:oklch(86% .09 55);--color-accent-contrast:oklch(19.5% .012 60);--color-border:oklch(32.5% .014 70);--color-border-strong:oklch(42% .014 70);--color-focus:oklch(77.5% .11 55);--color-selection:oklch(38% .08 55);--shadow-sm:none;--shadow-md:none;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--color-bg:oklch(19.5% .012 60);--color-surface:oklch(24.5% .014 60);--color-surface-raised:oklch(27.5% .014 60);--color-text:oklch(94.5% .008 80);--color-text-secondary:oklch(76% .012 75);--color-text-muted:oklch(62.5% .014 75);--color-accent:oklch(77.5% .11 55);--color-accent-hover:oklch(86% .09 55);--color-accent-contrast:oklch(19.5% .012 60);--color-border:oklch(32.5% .014 70);--color-border-strong:oklch(42% .014 70);--color-focus:oklch(77.5% .11 55);--color-selection:oklch(38% .08 55);--shadow-sm:none;--shadow-md:none;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light]{--color-bg:oklch(97.5% .009 85);--color-surface:oklch(95.2% .013 85);--color-surface-raised:oklch(99% .005 85);--color-text:oklch(25.5% .015 60);--color-text-secondary:oklch(45% .015 60);--color-text-muted:oklch(60% .014 60);--color-accent:oklch(50% .13 45);--color-accent-hover:oklch(41% .14 45);--color-accent-contrast:oklch(99% .005 85);--color-border:oklch(88.5% .013 75);--color-border-strong:oklch(80% .015 75);--color-focus:oklch(50% .13 45);--color-selection:oklch(90% .06 45);--shadow-sm:0 1px 2px oklch(20% .01 60/.06);--shadow-md:0 4px 16px oklch(20% .01 60/.08);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}html{font-family:var(--font-sans);background-color:var(--color-bg);color:var(--color-text);font-size:16px;line-height:var(--text-base-lh);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background-color:var(--color-bg);min-height:100vh;color:var(--color-text);transition:background-color var(--transition-speed), color var(--transition-speed);flex-direction:column;margin:0;padding:0;display:flex}::selection{background-color:var(--color-selection);color:var(--color-text)}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px;border-radius:inherit}:focus:not(:focus-visible){outline:none}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}h1,h2,h3,h4,h5,h6{font-family:var(--font-sans);color:var(--color-text);text-wrap:balance;margin:0;font-weight:600}p{text-wrap:pretty;margin:0}a{color:inherit;transition:color var(--transition-speed), border-color var(--transition-speed), background-color var(--transition-speed);text-decoration:none}img,svg,picture,video{max-width:100%;display:block}code,kbd,samp,pre{font-family:var(--font-mono)}.prose{max-width:var(--container-prose);font-size:var(--text-base);line-height:var(--text-base-lh);color:var(--color-text)}.prose p{margin-bottom:var(--space-6);font-size:var(--text-base);line-height:1.65}.prose h1{font-size:var(--text-2xl);line-height:var(--text-2xl-lh);letter-spacing:var(--text-2xl-ls);margin-top:var(--space-10);margin-bottom:var(--space-4)}.prose h2{font-size:var(--text-xl);line-height:var(--text-xl-lh);letter-spacing:var(--text-xl-ls);margin-top:var(--space-10);margin-bottom:var(--space-3);position:relative}.prose h3{font-size:var(--text-lg);line-height:var(--text-lg-lh);margin-top:var(--space-8);margin-bottom:var(--space-2)}.prose a{color:var(--color-text);border-bottom:1.5px solid var(--color-accent)}.prose a:hover{color:var(--color-accent-hover);border-bottom-color:var(--color-accent-hover)}.prose code{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);padding:2px 6px;font-size:.88em}.prose pre{margin:0 0 var(--space-6);padding:var(--space-4) var(--space-5);background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);font-size:.875rem;line-height:1.65;overflow-x:auto}.prose pre code{font-size:inherit;color:inherit;background:0 0;border:none;padding:0}.prose blockquote{margin:0 0 var(--space-6);padding:var(--space-1) 0 var(--space-1) var(--space-5);border-left:2px solid var(--color-accent);font-size:var(--text-md);color:var(--color-text);line-height:1.6}.prose blockquote p:last-child{margin-bottom:0}.prose ul,.prose ol{margin:0 0 var(--space-6);padding-left:var(--space-6)}.prose li{margin-bottom:var(--space-2);line-height:1.65}.prose table{border-collapse:collapse;width:100%;margin:0 0 var(--space-6);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.prose th,.prose td{padding:var(--space-3) var(--space-4);text-align:left;border-bottom:1px solid var(--color-border)}.prose th{background-color:var(--color-surface);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted)}.prose td{font-size:var(--text-sm)}.prose figure{margin:0 0 var(--space-6)}.prose figcaption{font-size:var(--text-sm);color:var(--color-text-muted);margin-top:var(--space-2)}.container{width:100%;max-width:var(--container-page);padding-left:var(--gutter);padding-right:var(--gutter);margin-left:auto;margin-right:auto}@media (width>=640px){.container{padding-left:var(--gutter-lg);padding-right:var(--gutter-lg)}}.btn-primary{justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--radius-md);background-color:var(--color-accent);color:var(--color-accent-contrast);font-family:var(--font-sans);font-weight:600;font-size:var(--text-sm);cursor:pointer;border:1px solid #0000;padding:12px 18px;line-height:1;text-decoration:none;display:inline-flex}.btn-primary:hover{background-color:var(--color-accent-hover)}.btn-secondary{justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--radius-md);color:var(--color-text);font-family:var(--font-sans);font-weight:400;font-size:var(--text-sm);border:1px solid var(--color-border);cursor:pointer;background-color:#0000;padding:12px 18px;line-height:1;text-decoration:none;display:inline-flex}.btn-secondary:hover{border-color:var(--color-accent);color:var(--color-accent)}.tag-badge{font-family:var(--font-mono);color:var(--color-text-muted);border:1px solid var(--color-border);border-radius:var(--radius-sm);background-color:var(--color-surface);white-space:nowrap;padding:4px 8px;font-size:.75rem}.section-label{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:var(--text-xs-ls);text-transform:uppercase;color:var(--color-text-muted);font-weight:600}@media print{body{color:#111!important;background:#fff!important;font-size:11pt!important;line-height:1.4!important}header,footer,.theme-toggle,.no-print{display:none!important}a{color:#111!important;border-bottom:none!important;text-decoration:underline!important}a[href^=http]:after{content:" (" attr(href) ")";color:#555;font-size:.85em}.container{max-width:100%!important;padding:0!important}h1,h2,h3{page-break-after:avoid}.prose pre,blockquote,table,.card{page-break-inside:avoid;background:#fff!important;border-color:#ccc!important}}main[data-astro-cid-hkbrpulz]{flex:1 0 auto;width:100%}
