.theme-toggle[data-astro-cid-x3pjskd3]{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:1px solid var(--border);border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);cursor:pointer;transition:color var(--transition-fast),border-color var(--transition-fast)}.theme-toggle[data-astro-cid-x3pjskd3]:hover{color:var(--accent);border-color:var(--accent)}.theme-icon[data-astro-cid-x3pjskd3]{display:block}.theme-icon--sun[data-astro-cid-x3pjskd3],[data-theme=light] .theme-icon--moon[data-astro-cid-x3pjskd3]{display:none}[data-theme=light] .theme-icon--sun[data-astro-cid-x3pjskd3]{display:block}.sidebar[data-astro-cid-ssfzsv2f]{position:fixed;top:0;left:0;bottom:0;width:var(--sidebar-width);background:var(--bg-secondary);border-right:1px solid var(--border);overflow-y:auto;overscroll-behavior:contain;z-index:100;display:flex;flex-direction:column}.sidebar-overlay[data-astro-cid-ssfzsv2f]{display:none;position:fixed;inset:0;background:#0000008c;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);z-index:99}.sidebar-overlay[data-astro-cid-ssfzsv2f][data-visible]{display:block}.sidebar-close[data-astro-cid-ssfzsv2f]{display:none;background:transparent;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;width:32px;height:32px;font-size:20px;line-height:1;align-items:center;justify-content:center;padding:0;transition:color var(--transition-fast),border-color var(--transition-fast)}.sidebar-close[data-astro-cid-ssfzsv2f]:hover{color:var(--accent);border-color:var(--accent)}.sidebar-content[data-astro-cid-ssfzsv2f]{padding:18px 0 8px;flex:1;display:flex;flex-direction:column}.sidebar-header[data-astro-cid-ssfzsv2f]{display:flex;justify-content:space-between;align-items:center;gap:var(--space-sm);padding:0 18px 16px;border-bottom:1px solid var(--divider);margin-bottom:14px}.sidebar-header-actions[data-astro-cid-ssfzsv2f]{display:flex;align-items:center;gap:var(--space-sm)}.sidebar-home[data-astro-cid-ssfzsv2f]{font-family:var(--font-heading);font-size:var(--step-1);font-weight:700;color:var(--accent);text-decoration:none;letter-spacing:.4px;line-height:1.15}.sidebar-home[data-astro-cid-ssfzsv2f]:hover{color:var(--accent-hover)}.sidebar-section[data-astro-cid-ssfzsv2f]{margin-bottom:10px}.sidebar-heading[data-astro-cid-ssfzsv2f]{font-family:var(--font-ui);font-size:var(--step--1);font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted);padding:0 18px;margin:14px 0 4px;border:none}.sidebar-heading-rule[data-astro-cid-ssfzsv2f]{border:none;border-top:2px solid var(--accent);width:28px;margin:4px 0 8px 18px;opacity:.7}.sidebar-list[data-astro-cid-ssfzsv2f]{list-style:none;margin:0;padding:0}.sidebar-item[data-astro-cid-ssfzsv2f]{margin:0}.sidebar-link[data-astro-cid-ssfzsv2f]{display:block;padding:6px 18px;font-family:var(--font-ui);font-size:var(--step--1);line-height:1.45;color:var(--text-primary);text-decoration:none;border-left:3px solid transparent;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast)}.sidebar-link[data-astro-cid-ssfzsv2f]:hover{background:var(--bg-tertiary);color:var(--text-heading);text-decoration:none}.sidebar-link--active[data-astro-cid-ssfzsv2f]{color:var(--accent);background:var(--accent-muted);border-left-color:var(--accent);font-weight:600}.sidebar-footer[data-astro-cid-ssfzsv2f]{margin-top:auto;padding:16px 18px;font-family:var(--font-ui);font-size:var(--step--1);color:var(--text-muted)}@media (max-width: 768px){.sidebar[data-astro-cid-ssfzsv2f]{width:min(var(--sidebar-width),86vw);transform:translate(-100%);transition:transform var(--transition-base);box-shadow:var(--shadow-lg);padding-top:0}.sidebar[data-astro-cid-ssfzsv2f][data-sidebar-open]{transform:translate(0)}.sidebar-close[data-astro-cid-ssfzsv2f]{display:inline-flex}}@media (prefers-reduced-motion: reduce){.sidebar[data-astro-cid-ssfzsv2f]{transition:none}}.topbar[data-astro-cid-lq7i5isa]{display:none;position:fixed;top:0;left:0;right:0;height:var(--topbar-height);z-index:90;align-items:center;gap:var(--space-sm);padding:0 12px;background:color-mix(in srgb,var(--bg-secondary) 88%,transparent);backdrop-filter:saturate(160%) blur(10px);-webkit-backdrop-filter:saturate(160%) blur(10px);border-bottom:1px solid var(--border)}.topbar-wordmark[data-astro-cid-lq7i5isa]{flex:1;font-family:var(--font-heading);font-size:var(--step-1);font-weight:700;color:var(--accent);text-decoration:none;letter-spacing:.4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar-wordmark[data-astro-cid-lq7i5isa]:hover{color:var(--accent-hover)}.hamburger-btn[data-astro-cid-lq7i5isa]{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;flex:0 0 auto;background:transparent;border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;padding:0;color:var(--text-primary);transition:border-color var(--transition-fast),color var(--transition-fast)}.hamburger-btn[data-astro-cid-lq7i5isa]:hover{border-color:var(--accent);color:var(--accent)}.hamburger[data-astro-cid-lq7i5isa],.hamburger[data-astro-cid-lq7i5isa]:before,.hamburger[data-astro-cid-lq7i5isa]:after{display:block;width:18px;height:2px;background:currentColor;border-radius:1px;position:relative;transition:transform var(--transition-fast),opacity var(--transition-fast)}.hamburger[data-astro-cid-lq7i5isa]:before,.hamburger[data-astro-cid-lq7i5isa]:after{content:"";position:absolute;left:0}.hamburger[data-astro-cid-lq7i5isa]:before{top:-6px}.hamburger[data-astro-cid-lq7i5isa]:after{top:6px}@media (max-width: 768px){.topbar[data-astro-cid-lq7i5isa]{display:flex}}.reading-progress[data-astro-cid-mu6cnre2]{position:fixed;top:0;left:0;width:100%;height:3px;z-index:200;pointer-events:none}.reading-progress-bar[data-astro-cid-mu6cnre2]{height:100%;width:0%;background:var(--accent);box-shadow:0 0 8px var(--accent-glow);transition:width .1s linear}.back-to-top[data-astro-cid-wlspcwf4]{position:fixed;bottom:24px;right:24px;width:40px;height:40px;border-radius:50%;background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transform:translateY(12px);pointer-events:none;transition:opacity var(--transition-base),transform var(--transition-base),border-color var(--transition-base),color var(--transition-base);z-index:50;box-shadow:var(--shadow-md)}.back-to-top--visible[data-astro-cid-wlspcwf4]{opacity:1;transform:translateY(0);pointer-events:auto}.back-to-top[data-astro-cid-wlspcwf4]:hover{color:var(--accent);border-color:var(--accent)}.toc[data-astro-cid-xvrfupwn]{position:sticky;top:var(--space-xl);max-height:calc(100vh - 2 * var(--space-xl));overflow-y:auto;overscroll-behavior:contain;font-family:var(--font-ui);padding-left:var(--space-md);border-left:1px solid var(--divider);scrollbar-width:thin}.toc-title[data-astro-cid-xvrfupwn]{position:sticky;top:0;z-index:1;margin:0 0 var(--space-sm);padding-bottom:var(--space-xs);background:var(--bg-primary);font-size:var(--step--1);font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted)}.toc-list[data-astro-cid-xvrfupwn]{list-style:none;margin:0;padding:0;border:none}.toc-item[data-astro-cid-xvrfupwn]{margin:0}.toc-item--sub[data-astro-cid-xvrfupwn]{padding-left:var(--space-md)}.toc-link[data-astro-cid-xvrfupwn]{display:block;font-size:var(--step--1);line-height:1.4;color:var(--text-secondary);text-decoration:none;border-left:2px solid transparent;margin-left:-2px;padding:3px 0 3px 10px;transition:color var(--transition-fast),border-color var(--transition-fast)}.toc-link[data-astro-cid-xvrfupwn]:hover{color:var(--accent);text-decoration:none}.toc-link[data-astro-cid-xvrfupwn].is-active{color:var(--accent);border-left-color:var(--accent);font-weight:600}:root{color-scheme:dark;--bg-primary: #0d0e12;--bg-secondary: #14161b;--bg-tertiary: #1a1d24;--bg-elevated: #1c1f27;--text-primary: #e6decb;--text-secondary: #a39a85;--text-heading: #f3edda;--text-muted: #756e60;--accent: #d4aa4e;--accent-hover: #ecc973;--accent-muted: rgba(212, 170, 78, .12);--accent-soft: rgba(212, 170, 78, .06);--accent-glow: rgba(212, 170, 78, .28);--border: #2c2f38;--border-strong: #3a3e49;--border-light: #1f2229;--divider: #22252d;--code-bg: #111318;--code-border: #2a2d35;--code-text: #e6decb;--code-inline-bg: rgba(212, 170, 78, .1);--code-inline-text: #ecc973;--callout-bg: rgba(212, 170, 78, .07);--callout-border: rgba(212, 170, 78, .5);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow-md: 0 6px 18px rgba(0, 0, 0, .45);--shadow-lg: 0 14px 38px rgba(0, 0, 0, .55);--ring: rgba(212, 170, 78, .65);--selection-bg: rgba(212, 170, 78, .3);--selection-text: #f3edda;--scrollbar-track: transparent;--scrollbar-thumb: #33373f;--scrollbar-thumb-hover: #474c57;--vignette-color: rgba(0, 0, 0, .45);--vignette-strength: 78%}[data-theme=light]{color-scheme:light;--bg-primary: #faf7f0;--bg-secondary: #f2ece0;--bg-tertiary: #e8e0cf;--bg-elevated: #fffdf7;--text-primary: #2c2416;--text-secondary: #6b5e4a;--text-heading: #1a1410;--text-muted: #8c7d6b;--accent: #9c4a23;--accent-hover: #b85c30;--accent-muted: rgba(156, 74, 35, .1);--accent-soft: rgba(156, 74, 35, .05);--accent-glow: rgba(156, 74, 35, .18);--border: #d9ceb8;--border-strong: #c4b79e;--border-light: #e8e0d0;--divider: #ddd3c0;--code-bg: #f0e9da;--code-border: #d9ceb8;--code-text: #2c2416;--code-inline-bg: rgba(156, 74, 35, .09);--code-inline-text: #8a3f1d;--callout-bg: rgba(156, 74, 35, .06);--callout-border: rgba(156, 74, 35, .45);--shadow-sm: 0 1px 2px rgba(60, 40, 15, .08);--shadow-md: 0 6px 18px rgba(60, 40, 15, .1);--shadow-lg: 0 14px 38px rgba(60, 40, 15, .14);--ring: rgba(156, 74, 35, .6);--selection-bg: rgba(156, 74, 35, .2);--selection-text: #1a1410;--scrollbar-track: transparent;--scrollbar-thumb: #d4c8b0;--scrollbar-thumb-hover: #c0b193;--vignette-color: rgba(70, 50, 20, .07);--vignette-strength: 42%}:root{--font-heading: "Cormorant Garamond", "Times New Roman", Georgia, serif;--font-body: "Source Serif 4", "Times New Roman", Georgia, serif;--font-ui: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", "SFMono-Regular", Consolas, "Liberation Mono", monospace;--step--1: clamp(.75rem, .7rem + .25vw, .875rem);--step-0: clamp(1rem, .95rem + .25vw, 1.125rem);--step-1: clamp(1.25rem, 1.15rem + .5vw, 1.5rem);--step-2: clamp(1.5rem, 1.35rem + .75vw, 2rem);--step-3: clamp(1.875rem, 1.6rem + 1.25vw, 2.5rem);--step-4: clamp(2.25rem, 1.85rem + 2vw, 3.25rem);--step-5: clamp(3rem, 2.25rem + 3.5vw, 4.5rem);--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--space-3xl: 4rem;--sidebar-width: 264px;--topbar-height: 56px;--toc-width: 232px;--content-max-width: 760px;--content-padding: clamp(1.25rem, 3vw, 3rem);--transition-fast: .15s ease;--transition-base: .25s ease;--transition-slow: .4s ease;--transition-theme: .3s ease;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 14px;--radius-pill: 999px}html.theme-transitioning,html.theme-transitioning *,html.theme-transitioning *:before,html.theme-transitioning *:after{transition:background-color var(--transition-theme),color var(--transition-theme),border-color var(--transition-theme),box-shadow var(--transition-theme),fill var(--transition-theme),stroke var(--transition-theme)!important}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto!important}*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;padding:0;font-family:var(--font-body);font-size:var(--step-0);line-height:1.75;color:var(--text-primary);background:var(--bg-primary);min-height:100vh;position:relative;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}html.no-js .js-only{display:none!important}body:after{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;background:radial-gradient(circle at center,transparent 0%,var(--vignette-color) var(--vignette-strength))}::selection{background:var(--selection-bg);color:var(--selection-text)}:focus-visible{outline:2px solid var(--ring);outline-offset:2px;border-radius:var(--radius-sm)}:focus:not(:focus-visible){outline:none}.skip-link{position:fixed;top:0;left:0;transform:translateY(-120%);z-index:300;margin:8px;padding:10px 16px;background:var(--accent);color:#0d0e12;font-family:var(--font-ui);font-weight:600;font-size:var(--step--1);border-radius:var(--radius-sm);text-decoration:none;transition:transform var(--transition-fast)}.skip-link:focus{transform:translateY(0)}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--scrollbar-track)}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:var(--radius-pill);border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover);background-clip:padding-box}.md-content{max-width:100%}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--text-heading);font-weight:600;line-height:1.2;margin-top:1.6em;margin-bottom:.5em;letter-spacing:.2px;scroll-margin-top:calc(var(--topbar-height) + 1rem)}.md-content>h1:first-child,.md-content>h2:first-child{margin-top:0}h1{font-size:var(--step-4);font-weight:700;border-bottom:1px solid var(--divider);padding-bottom:.25em}h2{font-size:var(--step-2);border-bottom:1px solid var(--divider);padding-bottom:.18em}h3{font-size:var(--step-1)}h4{font-size:var(--step-0);text-transform:uppercase;letter-spacing:.06em;font-family:var(--font-ui);font-weight:700;color:var(--text-secondary)}p{margin:0 0 1em}a{color:var(--accent);text-decoration:none;text-underline-offset:.18em;transition:color var(--transition-fast)}a:hover{color:var(--accent-hover);text-decoration:underline}strong{color:var(--text-heading);font-weight:600}em{color:var(--text-primary)}.heading-anchor{margin-left:.4em;color:var(--text-muted);opacity:0;font-weight:400;text-decoration:none;transition:opacity var(--transition-fast),color var(--transition-fast)}h1:hover .heading-anchor,h2:hover .heading-anchor,h3:hover .heading-anchor,h4:hover .heading-anchor{opacity:1}.heading-anchor:hover{color:var(--accent);text-decoration:none}blockquote{margin:1.4em 0;padding:.6em 1.4em;color:var(--text-secondary);border-left:3px solid var(--accent);background:var(--accent-soft);border-radius:0 var(--radius-md) var(--radius-md) 0;font-style:italic}blockquote p:last-child{margin-bottom:0}hr{border:none;border-top:1px solid var(--divider);margin:2em 0}ul,ol{padding-left:1.5em;margin-bottom:1em}li{margin-bottom:.35em}li::marker{color:var(--accent)}code{font-family:var(--font-mono);font-size:.85em;background:var(--code-inline-bg);padding:.15em .4em;border-radius:var(--radius-sm);color:var(--code-inline-text);word-break:break-word}pre{background:var(--code-bg);border:1px solid var(--code-border);border-radius:var(--radius-md);padding:16px 18px;overflow-x:auto;margin:0 0 1.4em;box-shadow:var(--shadow-sm);-webkit-overflow-scrolling:touch}pre code{background:none;padding:0;border-radius:0;color:inherit;font-size:.85em;line-height:1.6;word-break:normal}.astro-code,.astro-code span{color:var(--shiki-dark)!important;font-style:var(--shiki-dark-font-style)!important;font-weight:var(--shiki-dark-font-weight)!important;text-decoration:var(--shiki-dark-text-decoration)!important}[data-theme=light] .astro-code,[data-theme=light] .astro-code span{color:var(--shiki-light)!important;font-style:var(--shiki-light-font-style)!important;font-weight:var(--shiki-light-font-weight)!important;text-decoration:var(--shiki-light-text-decoration)!important}pre.astro-code{background:var(--code-bg)!important}.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 0 1.4em;border:1px solid var(--border);border-radius:var(--radius-md);background:linear-gradient(to right,var(--bg-primary),transparent) 0 0,linear-gradient(to left,var(--bg-primary),transparent) 100% 0,radial-gradient(farthest-side at 0 50%,var(--accent-glow),transparent) 0 0,radial-gradient(farthest-side at 100% 50%,var(--accent-glow),transparent) 100% 0;background-repeat:no-repeat;background-size:40px 100%,40px 100%,14px 100%,14px 100%;background-attachment:local,local,scroll,scroll}table{border-collapse:collapse;width:100%;margin:0;font-size:.9em;font-family:var(--font-body)}.md-content>table,.content-prose>table{margin-bottom:1.4em}thead th{position:sticky;top:0;background:var(--bg-tertiary);color:var(--text-heading);font-family:var(--font-ui);font-weight:600;font-size:.92em;z-index:1}th,td{padding:9px 14px;border-bottom:1px solid var(--border);text-align:left;vertical-align:top}th+th,td+td{border-left:1px solid var(--border-light)}tbody tr:nth-child(2n){background:var(--accent-soft)}tbody tr:hover{background:var(--accent-muted)}tbody tr:last-child td{border-bottom:none}img{max-width:100%;height:auto;border-radius:var(--radius-md)}.content-figure{margin:1.75em 0;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-secondary);overflow:hidden;box-shadow:var(--shadow-sm)}.content-figure img{display:block;width:100%;margin:0;border-radius:0}.content-figure figcaption{padding:.75em 1em;font-size:var(--step--1);color:var(--text-secondary);border-top:1px solid var(--border);line-height:1.5}.content-figure figcaption a{color:var(--link)}.callout{margin:1.5em 0;padding:1em 1.25em;background:var(--callout-bg);border:1px solid var(--border);border-left:4px solid var(--callout-border);border-radius:var(--radius-md);color:var(--text-secondary)}.callout>:last-child{margin-bottom:0}.mermaid-figure{margin:1.6em 0;padding:1rem;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);overflow-x:auto;-webkit-overflow-scrolling:touch;box-shadow:var(--shadow-sm)}.mermaid{display:flex;justify-content:center;min-width:min-content}.mermaid svg{max-width:100%;height:auto}.mermaid:not([data-processed]){font-family:var(--font-mono);font-size:.8em;color:var(--text-muted);white-space:pre;justify-content:flex-start}.mermaid-error{color:var(--text-secondary);font-family:var(--font-mono);font-size:.8em;white-space:pre-wrap}.main-content[data-astro-cid-37fxchfa]{margin-left:var(--sidebar-width);padding:var(--space-2xl) var(--content-padding) var(--space-3xl);min-height:100vh;position:relative;z-index:1}.reading-shell[data-astro-cid-37fxchfa]{margin-inline:auto;max-width:var(--content-max-width)}.content-col[data-astro-cid-37fxchfa]{min-width:0}.toc-rail[data-astro-cid-37fxchfa]{display:none}@media (min-width: 1200px){.reading-shell[data-astro-cid-37fxchfa].has-toc{max-width:calc(var(--content-max-width) + var(--toc-width) + var(--space-2xl));display:grid;grid-template-columns:minmax(0,1fr) var(--toc-width);gap:var(--space-2xl);align-items:stretch}.reading-shell[data-astro-cid-37fxchfa].has-toc .toc-rail[data-astro-cid-37fxchfa]{display:block;min-height:0}}@media (max-width: 768px){.main-content[data-astro-cid-37fxchfa]{margin-left:0;padding:calc(var(--topbar-height) + var(--space-lg)) var(--content-padding) var(--space-2xl)}}
