@font-face{font-family:Yanone Kaffeesatz;font-style:normal;font-weight:300;font-display:block;src:url(/breath/fonts/yanone-kaffeesatz-latin-300-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Yanone Kaffeesatz;font-style:normal;font-weight:300;font-display:block;src:url(/breath/fonts/yanone-kaffeesatz-latin-ext-300-normal.woff2)format("woff2");unicode-range:U+100-2AF,U+304,U+308,U+329,U+1E??,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Yanone Kaffeesatz;font-style:normal;font-weight:400;font-display:block;src:url(/breath/fonts/yanone-kaffeesatz-latin-400-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Yanone Kaffeesatz;font-style:normal;font-weight:400;font-display:block;src:url(/breath/fonts/yanone-kaffeesatz-latin-ext-400-normal.woff2)format("woff2");unicode-range:U+100-2AF,U+304,U+308,U+329,U+1E??,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Yanone Kaffeesatz;font-style:normal;font-weight:500;font-display:block;src:url(/breath/fonts/yanone-kaffeesatz-latin-500-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Yanone Kaffeesatz;font-style:normal;font-weight:500;font-display:block;src:url(/breath/fonts/yanone-kaffeesatz-latin-ext-500-normal.woff2)format("woff2");unicode-range:U+100-2AF,U+304,U+308,U+329,U+1E??,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Yanone Kaffeesatz;font-style:normal;font-weight:600;font-display:block;src:url(/breath/fonts/yanone-kaffeesatz-latin-600-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Yanone Kaffeesatz;font-style:normal;font-weight:600;font-display:block;src:url(/breath/fonts/yanone-kaffeesatz-latin-ext-600-normal.woff2)format("woff2");unicode-range:U+100-2AF,U+304,U+308,U+329,U+1E??,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Yanone Kaffeesatz;font-style:normal;font-weight:700;font-display:block;src:url(/breath/fonts/yanone-kaffeesatz-latin-700-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Yanone Kaffeesatz;font-style:normal;font-weight:700;font-display:block;src:url(/breath/fonts/yanone-kaffeesatz-latin-ext-700-normal.woff2)format("woff2");unicode-range:U+100-2AF,U+304,U+308,U+329,U+1E??,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:block;src:url(/breath/fonts/jetbrains-mono-latin-400-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:block;src:url(/breath/fonts/jetbrains-mono-latin-500-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:block;src:url(/breath/fonts/jetbrains-mono-latin-600-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--font-main:"Yanone Kaffeesatz", Helvetica, Arial, sans-serif;--font-sans:"Yanone Kaffeesatz", Helvetica, Arial, sans-serif;--font-mono:"JetBrains Mono", "Fira Code", "Cascadia Code", Menlo, Monaco, Consolas, "Courier New", monospace;--text-xs:.875rem;--text-sm:1rem;--text-base:1.125rem;--text-md:1.25rem;--text-lg:1.4rem;--text-xl:1.65rem;--text-primary:#212529;--text-secondary:#5a6070;--text-muted:#9aa0ab;--text-link:#227ce8;--text-link-hover:#1558b0;--title-accent:#b22;--bg:#fff;--bg-surface:#f8f8f6;--border:#e4e4e0;--border-hover:#c8c8c2;--table-header-bg:#ebebe6;--table-header-text:#1a1e23;--table-header-border:#d8d8d0;--table-even-bg:#fafaf8;--table-hover-bg:#f4f6fa;--accent-captured:#7c5cbf;--accent-seedling:#5a9e5a;--accent-budding:#c98a20;--accent-evergreen:#2e6e4a;--badge-captured-bg:#f6f2fb;--badge-seedling-bg:#f0f8f0;--badge-budding-bg:#fdf6e8;--badge-evergreen-bg:#eef5f1;--selection-bg:#d6e4ff;--selection-text:inherit;--sidebar-w:130px;--max-prose:680px;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:28px;--space-xl:40px;--space-2xl:72px;--radius:3px;--transition:.16s ease}html.dark,[data-theme=dark]{color-scheme:dark;--bg:#222630;--bg-surface:#1e222a;--border:#3b4252;--border-hover:#4c566a;--text-primary:#eceff4;--text-secondary:#d8dee9;--text-muted:#8fbcbb;--text-link:#ebcb8b;--text-link-hover:#efd49f;--title-accent:#d08770;--table-header-bg:#1e222a;--table-header-text:#eceff4;--table-header-border:#3b4252;--table-even-bg:#222630;--table-hover-bg:#2e3440;--accent-captured:#b48ead;--accent-seedling:#a3be8c;--accent-budding:#d08770;--accent-evergreen:#8fbcbb;--badge-captured-bg:#b48ead26;--badge-seedling-bg:#a3be8c26;--badge-budding-bg:#d0877026;--badge-evergreen-bg:#8fbcbb26;--selection-bg:#434c5e;--selection-text:#eceff4}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not(.light){color-scheme:dark;--bg:#222630;--bg-surface:#1e222a;--border:#3b4252;--border-hover:#4c566a;--text-primary:#eceff4;--text-secondary:#d8dee9;--text-muted:#8fbcbb;--text-link:#ebcb8b;--text-link-hover:#efd49f;--title-accent:#d08770;--table-header-bg:#1e222a;--table-header-text:#eceff4;--table-header-border:#3b4252;--table-even-bg:#222630;--table-hover-bg:#2e3440;--accent-captured:#b48ead;--accent-seedling:#a3be8c;--accent-budding:#d08770;--accent-evergreen:#8fbcbb;--badge-captured-bg:#b48ead26;--badge-seedling-bg:#a3be8c26;--badge-budding-bg:#d0877026;--badge-evergreen-bg:#8fbcbb26;--selection-bg:#434c5e;--selection-text:#eceff4}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;font-family:var(--font-main);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;scroll-behavior:smooth}body{font-family:var(--font-main);font-size:var(--text-base);color:var(--text-primary);background:var(--bg);letter-spacing:.01em;min-height:100dvh;font-weight:400;line-height:1.6}h1{font-size:var(--text-xl);margin-bottom:var(--space-sm);font-weight:700;line-height:1.2}h2{font-size:var(--text-lg);margin-top:var(--space-xl);margin-bottom:var(--space-md);font-weight:700;line-height:1.25}h3{font-size:var(--text-md);margin-top:var(--space-lg);margin-bottom:var(--space-sm);font-weight:700;line-height:1.3}h4,h5,h6{font-size:var(--text-base);margin-top:var(--space-md);margin-bottom:var(--space-xs);font-weight:700}p{font-size:var(--text-base);margin-bottom:var(--space-md);line-height:1.6}a{color:var(--text-link);font-size:inherit;transition:color var(--transition);text-decoration:none}a:hover{color:var(--text-link-hover);text-decoration:underline}strong{font-weight:700}em{font-style:italic}blockquote{border-left:3px solid var(--border);padding-left:var(--space-md);color:var(--text-secondary);margin:var(--space-lg) 0;font-style:italic;font-size:var(--text-base)}code,pre,pre code,pre span,.astro-code,.astro-code span{font-family:var(--font-mono)!important}code{background:var(--bg-surface);border-radius:var(--radius);border:1px solid var(--border);color:var(--text-primary);padding:2px 6px;font-size:.75rem;line-height:1.4}pre,.astro-code{border:1px solid var(--border);padding:var(--space-md) var(--space-lg);margin:var(--space-lg) 0;border-radius:4px;line-height:1.35;overflow-x:auto;background:var(--bg-surface)!important}pre code,pre span,.astro-code code,.astro-code span{border:none;padding:0;font-size:.75rem;line-height:1.35;background:0 0!important}.astro-code code{color:inherit!important}html.dark .astro-code,[data-theme=dark] .astro-code{border-color:var(--border);color:var(--shiki-dark)!important;background-color:var(--bg-surface)!important}html.dark .astro-code span,[data-theme=dark] .astro-code span{color:var(--shiki-dark)!important;font-style:var(--shiki-dark-font-style,inherit)!important;font-weight:var(--shiki-dark-font-weight,inherit)!important;text-decoration:var(--shiki-dark-text-decoration,inherit)!important}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not(.light) .astro-code{border-color:var(--border);color:var(--shiki-dark)!important;background-color:var(--bg-surface)!important}:root:not([data-theme=light]):not(.light) .astro-code span{color:var(--shiki-dark)!important;font-style:var(--shiki-dark-font-style,inherit)!important;font-weight:var(--shiki-dark-font-weight,inherit)!important;text-decoration:var(--shiki-dark-text-decoration,inherit)!important}}hr{border:none;border-top:1px solid var(--border);margin:var(--space-xl) 0}ul,ol{padding-left:var(--space-lg);margin-bottom:var(--space-md);font-size:var(--text-base)}li{margin-bottom:var(--space-xs)}img{max-width:100%;height:auto}table{border-collapse:separate;border-spacing:0;width:100%;margin:var(--space-lg) 0;font-size:var(--text-base);border:1px solid var(--border);border-radius:6px;overflow:hidden;box-shadow:0 1px 3px #00000005}thead{background:var(--table-header-bg)}th{font-family:var(--font-main);color:var(--table-header-text);letter-spacing:.025em;text-transform:uppercase;text-align:left;vertical-align:middle;border-bottom:2px solid var(--table-header-border);border-right:1px solid #7f7f7f1f;padding:10px 14px;font-size:1.05rem;font-weight:700;line-height:1.3}th:last-child{border-right:none}td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;color:var(--text-primary);line-height:1.5;font-size:var(--text-base);background:var(--bg);transition:background var(--transition);border-right:1px solid #7f7f7f14;padding:9px 14px}td:last-child{border-right:none}tbody tr:nth-child(2n) td{background:var(--table-even-bg)}tbody tr:hover td{background:var(--table-hover-bg)}tbody tr:last-child td{border-bottom:none}th code{border:1px solid var(--border);color:var(--text-primary);border-radius:var(--radius);white-space:nowrap;background:#7f7f7f24;padding:2px 6px;font-size:.75rem}td code{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);white-space:nowrap;padding:2px 6px;font-size:.75rem}@media (width<=768px){table{-webkit-overflow-scrolling:touch;max-width:100%;display:block;overflow-x:auto}}.prose{font-family:var(--font-main);font-size:var(--text-base);max-width:var(--max-prose);line-height:1.65}.prose p,.prose li{font-size:var(--text-base)}.site-layout{grid-template-columns:var(--sidebar-w) 1fr;min-height:100dvh;display:grid}.site-content{padding:25px var(--space-xl) var(--space-2xl) 30px;max-width:860px}h2.page-title{margin-top:0}.page-title{color:var(--title-accent);letter-spacing:-.01em;margin-bottom:.35em;font-size:1.85rem;font-weight:700;line-height:1.2}.page-title .count{color:var(--text-muted);background:var(--bg-surface);border:1px solid var(--border);letter-spacing:0;vertical-align:middle;border-radius:12px;align-items:center;margin-left:6px;padding:1px 7px;font-size:.55em;font-weight:500;line-height:1.3;display:inline-flex;position:relative;top:-.22em}.ycount,.cat-count,.section-count,.sub-count,.stage-count,.tag-count{color:var(--text-muted);font-size:.85em;font-weight:300}.page-desc{color:var(--text-secondary);margin-bottom:var(--space-xl);font-size:.95rem;font-style:italic;line-height:1.5}.tag{font-size:var(--text-xs);color:var(--text-secondary);border:1px solid var(--border);transition:border-color var(--transition), color var(--transition);border-radius:2px;align-items:center;padding:2px 6px 0;font-weight:500;line-height:1.2;text-decoration:none;display:inline-flex}.tag:hover{border-color:var(--border-hover);color:var(--text-primary);text-decoration:none}.stage-badge{font-size:var(--text-xs);border:1px solid #0000;border-radius:2px;align-items:center;gap:3px;padding:2px 6px 0;font-weight:500;line-height:1.2;display:inline-flex}.stage-captured{background:var(--badge-captured-bg);color:var(--accent-captured)}.stage-seedling{background:var(--badge-seedling-bg);color:var(--accent-seedling)}.stage-budding{background:var(--badge-budding-bg);color:var(--accent-budding)}.stage-evergreen{background:var(--badge-evergreen-bg);color:var(--accent-evergreen)}.listing{margin:0;padding:0;list-style:none}.listing li{justify-content:space-between;align-items:baseline;gap:var(--space-md);border-bottom:1px dotted var(--border);border-radius:var(--radius);transition:background var(--transition);margin:0 -8px;padding:6px 8px;display:flex}.listing li:last-child{border-bottom:none}.listing li:hover{background:var(--bg-surface)}.listing a{font-family:var(--font-sans);font-size:var(--text-base);color:var(--text-primary);word-break:break-word;flex:1;min-width:0;font-weight:500;text-decoration:none}.listing a:hover{color:var(--text-link);text-decoration:underline}.listing time{font-family:var(--font-mono);color:var(--text-muted);text-align:right;letter-spacing:.02em;flex-shrink:0;font-size:.8rem}.year-heading{font-size:var(--text-sm);color:var(--text-muted);letter-spacing:.05em;text-transform:uppercase;margin:var(--space-lg) 0 var(--space-sm);font-weight:700}.year-heading:first-child{margin-top:0}::selection{background:var(--selection-bg);color:var(--selection-text)}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}body.sidebar-open,body.toc-open,body.drawer-open{overflow:hidden}@media (width<=768px){.site-layout{flex-direction:column;grid-template-columns:1fr;min-height:100dvh;display:flex}.site-content{padding:var(--space-md) var(--space-md) var(--space-xl);box-sizing:border-box;width:100%;max-width:100%}}.mermaid-rendered-card{margin:var(--space-lg,24px) 0;background:var(--bg-surface,#f8f8f6);border:1px solid var(--border,#e4e4e0);cursor:zoom-in;transition:border-color var(--transition,.16s ease), box-shadow var(--transition,.16s ease);user-select:none;border-radius:6px;outline:none;padding:16px 20px;display:block;position:relative;overflow:hidden}.mermaid-rendered-card:hover{border-color:var(--border-hover);box-shadow:0 4px 16px #0000000d}.mermaid-rendered-card:focus-visible{border-color:var(--text-link);box-shadow:0 0 0 3px #ebcb8b33}html.dark .mermaid-rendered-card,[data-theme=dark] .mermaid-rendered-card{background:var(--bg-surface);border-color:var(--border);box-shadow:none}html.dark .mermaid-rendered-card:hover,[data-theme=dark] .mermaid-rendered-card:hover{border-color:var(--border-hover);box-shadow:0 4px 16px #00000059}html.dark .mermaid-rendered-card svg text,[data-theme=dark] .mermaid-rendered-card svg text,html.dark .media-modal-diagram-card svg text,[data-theme=dark] .media-modal-diagram-card svg text{fill:var(--text-primary)!important}html.dark .mermaid-rendered-card svg .label,[data-theme=dark] .mermaid-rendered-card svg .label,html.dark .media-modal-diagram-card svg .label,[data-theme=dark] .media-modal-diagram-card svg .label{color:var(--text-primary)!important}html.dark .mermaid-rendered-card svg .edgeLabel,[data-theme=dark] .mermaid-rendered-card svg .edgeLabel,html.dark .media-modal-diagram-card svg .edgeLabel,[data-theme=dark] .media-modal-diagram-card svg .edgeLabel{background-color:var(--bg-surface)!important;color:var(--text-secondary)!important}html.dark .mermaid-rendered-card svg .edgeLabel rect,[data-theme=dark] .mermaid-rendered-card svg .edgeLabel rect,html.dark .media-modal-diagram-card svg .edgeLabel rect,[data-theme=dark] .media-modal-diagram-card svg .edgeLabel rect{fill:var(--bg-surface)!important}html.dark .mermaid-rendered-card svg .flowchart-link,[data-theme=dark] .mermaid-rendered-card svg .flowchart-link,html.dark .media-modal-diagram-card svg .flowchart-link,[data-theme=dark] .media-modal-diagram-card svg .flowchart-link{stroke:var(--text-muted)!important}html.dark .mermaid-rendered-card svg .marker,[data-theme=dark] .mermaid-rendered-card svg .marker,html.dark .media-modal-diagram-card svg .marker,[data-theme=dark] .media-modal-diagram-card svg .marker{fill:var(--text-muted)!important;stroke:var(--text-muted)!important}.mermaid-card-header{border-bottom:1px dashed var(--border,#e4e4e0);justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:8px;display:flex}.mermaid-card-tag{font-family:var(--font-mono,monospace);font-size:var(--text-xs,.8rem);color:var(--text-secondary,#5a6070);text-transform:uppercase;letter-spacing:.04em;align-items:center;gap:5px;font-weight:600;display:inline-flex}.mermaid-expand-hint{font-family:var(--font-mono,monospace);font-size:var(--text-xs,.8rem);color:var(--text-link,#227ce8);transition:transform var(--transition,.16s ease);align-items:center;gap:4px;font-weight:500;display:inline-flex}.mermaid-rendered-card:hover .mermaid-expand-hint{transform:translate(-2px)}.mermaid-svg-viewport{justify-content:center;align-items:center;width:100%;padding:8px 0;display:flex;overflow-x:auto}.mermaid-svg-viewport svg:not(.mermaid-ui-icon){max-width:100%;height:auto;display:block}.mermaid-placeholder{background:var(--bg-surface,#f8f8f6);border:1px dashed var(--border,#e4e4e0);margin:var(--space-md,16px) 0;font-family:var(--font-mono,monospace);font-size:var(--text-xs,.85rem);color:var(--text-muted,#9aa0ab);cursor:zoom-in;border-radius:6px;justify-content:center;align-items:center;padding:24px;display:flex}.mermaid-error-card{margin:var(--space-md,16px) 0;color:#c92a2a;font-family:var(--font-mono,monospace);font-size:var(--text-xs,.85rem);background:#fff5f5;border:1px solid #ffd4d4;border-radius:6px;padding:14px 16px}.mermaid-error-title{margin-bottom:6px;font-weight:700}.mermaid-fallback-code{color:#333;background:#fff;border:1px solid #ffe3e3;border-radius:4px;padding:8px;overflow-x:auto}.prose img,.note-article img,.site-content article img{cursor:zoom-in;transition:transform var(--transition,.16s ease), box-shadow var(--transition,.16s ease);border-radius:4px}.prose img:hover,.note-article img:hover,.site-content article img:hover{box-shadow:0 4px 14px #00000014}body.media-modal-open{overflow:hidden!important}.media-modal{z-index:999999;opacity:0;visibility:hidden;pointer-events:none;flex-direction:column;transition:opacity .2s,visibility .2s;display:flex;position:fixed;inset:0}.media-modal.active{opacity:1;visibility:visible;pointer-events:auto}.media-modal-backdrop{-webkit-backdrop-filter:blur(14px);z-index:1;background:#0c0e12e0;position:absolute;inset:0}.media-modal-header{z-index:10;-webkit-backdrop-filter:blur(8px);background:#161a22d1;border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;gap:16px;padding:12px 20px;display:flex;position:relative}.media-modal-meta{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.media-modal-badge{font-family:var(--font-mono,monospace);text-transform:uppercase;letter-spacing:.05em;color:#f1f3f5;background:#ffffff1f;border-radius:4px;flex-shrink:0;padding:3px 8px;font-size:.75rem;font-weight:700}.media-modal-badge.badge-diagram{color:#74c0fc;background:#227ce840;border:1px solid #74c0fc4d}.media-modal-badge.badge-image{color:#8ce99a;background:#5a9e5a40;border:1px solid #8ce99a4d}.media-modal-caption{font-family:var(--font-main,sans-serif);color:#e9ecef;white-space:nowrap;text-overflow:ellipsis;letter-spacing:.01em;font-size:1.15rem;overflow:hidden}.media-modal-toolbar{flex-shrink:0;align-items:center;gap:6px;display:flex}.media-btn{color:#e9ecef;cursor:pointer;user-select:none;background:#ffffff14;border:1px solid #ffffff1f;border-radius:5px;justify-content:center;align-items:center;width:34px;height:34px;padding:0;text-decoration:none;transition:background .14s,border-color .14s,transform .14s,color .14s;display:inline-flex}.media-btn:hover{color:#fff;background:#ffffff2e;border-color:#ffffff40}.media-btn:active{transform:scale(.95)}.media-btn-val{width:auto;font-family:var(--font-mono,monospace);color:#dee2e6;padding:0 10px;font-size:.8rem;font-weight:600}.media-btn-sep{background:#ffffff26;width:1px;height:20px;margin:0 3px}.media-btn-close{color:#ff8787;background:#eb4d4b33;border-color:#eb4d4b59;margin-left:6px}.media-btn-close:hover{color:#fff;background:#eb4d4b66;border-color:#eb4d4b99}.media-modal-viewport{z-index:5;cursor:grab;touch-action:none;flex:1;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative;overflow:hidden}.media-modal-viewport.is-panning{cursor:grabbing}.media-modal-stage{transform-origin:50%;will-change:transform;user-select:none;justify-content:center;align-items:center;display:flex;position:relative}.media-modal-content-wrap{justify-content:center;align-items:center;display:flex;position:relative}.media-modal-diagram-card{background:var(--bg);border:1px solid var(--border);box-sizing:border-box;border-radius:8px;justify-content:center;align-items:center;padding:24px;display:flex;box-shadow:0 12px 40px #00000059}.media-modal-diagram-card svg{max-width:none;max-height:none;display:block}.media-modal-img{pointer-events:none;border-radius:6px;max-width:none;max-height:none;display:block;box-shadow:0 12px 40px #0006}.media-modal-loading{color:#e9ecef;font-family:var(--font-mono,monospace);flex-direction:column;align-items:center;gap:12px;font-size:.9rem;display:flex}.media-modal-spinner{border:3px solid #fff3;border-top-color:var(--text-link,#227ce8);border-radius:50%;width:32px;height:32px;animation:.7s linear infinite media-spin}@keyframes media-spin{to{transform:rotate(360deg)}}.media-modal-footer{z-index:10;background:#161a22a6;border-top:1px solid #ffffff14;justify-content:center;align-items:center;padding:8px 16px;display:flex;position:relative}.media-modal-hints{font-family:var(--font-mono,monospace);color:#adb5bd;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;font-size:.75rem;display:flex}.media-modal-hints kbd{color:#f8f9fa;background:#ffffff1f;border:1px solid #fff3;border-radius:3px;padding:1px 5px;font-size:.72rem}@media (width<=640px){.media-modal-header{padding:8px 12px}.media-modal-caption{max-width:140px;font-size:1rem}.media-modal-footer,.media-btn-sep,#media-btn-actual,#media-btn-reset{display:none}}.ext-popover{z-index:3000;pointer-events:none;opacity:0;filter:drop-shadow(0 6px 20px #00000026);transition:opacity .18s,transform .18s;position:fixed;transform:translateY(4px)}.ext-popover.visible{pointer-events:auto;opacity:1;transform:translateY(0)}.ext-popover-card{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);color:inherit;transition:border-color var(--transition);text-decoration:none;display:block;overflow:hidden}.ext-popover-card:hover{border-color:var(--border-hover);text-decoration:none}.ext-popover-image-wrap{background:var(--bg-surface);border-bottom:1px solid var(--border);width:100%;height:120px;overflow:hidden}.ext-popover-image{object-fit:cover;width:100%;height:100%;display:block}.ext-popover-content{padding:10px 12px}.ext-popover-header{align-items:center;gap:6px;margin-bottom:4px;display:flex}.ext-popover-fav-wrap{flex-shrink:0;align-items:center;display:inline-flex}.ext-popover-favicon{border-radius:2px;width:14px;height:14px}.ext-popover-hostname{font-family:var(--font-sans);font-size:var(--text-xs);color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;flex:1;font-weight:500;overflow:hidden}.ext-popover-arrow{font-size:var(--text-xs);color:var(--text-muted);flex-shrink:0}.ext-popover-title{font-family:var(--font-sans);font-size:var(--text-sm);color:var(--text-primary);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 4px;font-weight:600;line-height:1.3;display:-webkit-box;overflow:hidden}.ext-popover-card:hover .ext-popover-title{color:var(--text-link)}.ext-popover-desc{font-family:var(--font-sans);font-size:var(--text-xs);color:var(--text-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;line-height:1.4;display:-webkit-box;overflow:hidden}.embed-wrap{width:100%;margin:var(--space-lg) 0;position:relative}.embed-youtube{aspect-ratio:16/9;border:1px solid var(--border);background:var(--bg-surface);border-radius:6px;overflow:hidden}.embed-youtube iframe{border:none;width:100%;height:100%;display:block}.embed-x{width:100%;margin:var(--space-lg) 0;justify-content:center;display:flex}.embed-x .twitter-tweet{margin:0 auto!important}.embed-x .twitter-tweet-rendered,.embed-x iframe{transform:translateZ(0);background-color:#0000!important;border-radius:13px!important;overflow:hidden!important}.embed-x blockquote.twitter-tweet:not(.twitter-tweet-rendered){background:var(--bg-surface);border:1px solid var(--border);width:100%;max-width:550px;color:var(--text-primary);font-family:var(--font-sans);font-size:var(--text-base);border-radius:12px;margin:0 auto;padding:16px 20px;line-height:1.5;display:block}.embed-x blockquote.twitter-tweet:not(.twitter-tweet-rendered) a{color:var(--text-link);word-break:break-all;text-decoration:none}.embed-x blockquote.twitter-tweet:not(.twitter-tweet-rendered) a:hover{text-decoration:underline}html.dark .embed-x iframe,[data-theme=dark] .embed-x iframe{color-scheme:dark;background-color:#0000!important}html.dark .embed-x .twitter-tweet-rendered,[data-theme=dark] .embed-x .twitter-tweet-rendered{background-color:#0000!important}html.dark .ext-popover,[data-theme=dark] .ext-popover{filter:drop-shadow(0 8px 24px #0000008c)}html.dark .ext-popover-card,[data-theme=dark] .ext-popover-card{background:var(--bg-surface);border-color:var(--border)}@media (width<=768px){.ext-popover{display:none!important}}.theme-toggle[data-astro-cid-l6lhmie6]{cursor:pointer;color:var(--text-muted);border-radius:var(--radius);transition:color var(--transition);user-select:none;font-family:inherit;line-height:1;font-size:inherit;font-weight:inherit;background:0 0;border:none;justify-content:center;align-items:center;padding:2px;display:inline-flex}.theme-toggle[data-astro-cid-l6lhmie6]:hover{color:var(--text-link)}.theme-toggle[data-astro-cid-l6lhmie6]:focus-visible{outline:2px solid var(--text-link);outline-offset:2px}.theme-icon[data-astro-cid-l6lhmie6]{pointer-events:none;width:16px;height:16px;display:block}.sun-icon[data-astro-cid-l6lhmie6]{display:none}.moon-icon[data-astro-cid-l6lhmie6]{display:block}.theme-icon-wrap[data-astro-cid-l6lhmie6]{justify-content:center;align-items:center;line-height:1;display:inline-flex}.theme-text[data-astro-cid-l6lhmie6]{font-size:inherit;font-family:inherit;font-style:inherit;line-height:inherit;white-space:nowrap;margin-left:0}.theme-icon-wrap[data-astro-cid-l6lhmie6]+.theme-text[data-astro-cid-l6lhmie6]{margin-left:6px}.sun-label[data-astro-cid-l6lhmie6]{display:none}.moon-label[data-astro-cid-l6lhmie6]{display:inline}html.dark .sun-icon[data-astro-cid-l6lhmie6],[data-theme=dark] .sun-icon[data-astro-cid-l6lhmie6]{display:block}html.dark .moon-icon[data-astro-cid-l6lhmie6],[data-theme=dark] .moon-icon[data-astro-cid-l6lhmie6]{display:none}html.dark .sun-label[data-astro-cid-l6lhmie6],[data-theme=dark] .sun-label[data-astro-cid-l6lhmie6]{display:inline}html.dark .moon-label[data-astro-cid-l6lhmie6],[data-theme=dark] .moon-label[data-astro-cid-l6lhmie6]{display:none}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not(.light) .sun-icon[data-astro-cid-l6lhmie6]{display:block}:root:not([data-theme=light]):not(.light) .moon-icon[data-astro-cid-l6lhmie6]{display:none}:root:not([data-theme=light]):not(.light) .sun-label[data-astro-cid-l6lhmie6]{display:inline}:root:not([data-theme=light]):not(.light) .moon-label[data-astro-cid-l6lhmie6]{display:none}}.mobile-header[data-astro-cid-wv7whodv],.sidebar-backdrop[data-astro-cid-wv7whodv],.sidebar-drawer-header[data-astro-cid-wv7whodv]{display:none}.sidebar[data-astro-cid-wv7whodv]{border-right:1px solid var(--border);background:var(--bg);flex-direction:column;gap:20px;height:100dvh;padding:25px;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar-identity[data-astro-cid-wv7whodv]{flex-direction:column;gap:8px;display:flex}.avatar-link[data-astro-cid-wv7whodv]{width:fit-content;display:block}.avatar[data-astro-cid-wv7whodv]{background:var(--bg-surface);border:1px solid var(--border);object-fit:cover;border-radius:6px;display:block}.identity-name[data-astro-cid-wv7whodv]{flex-direction:column;text-decoration:none;display:flex}.name-main[data-astro-cid-wv7whodv]{font-family:var(--font-sans);font-size:var(--text-md);color:var(--text-primary);font-weight:700;line-height:1.2}.name-aka[data-astro-cid-wv7whodv]{font-family:var(--font-sans);font-size:var(--text-xs);color:var(--text-muted);letter-spacing:.6px;font-weight:400}.identity-name[data-astro-cid-wv7whodv]:hover .name-main[data-astro-cid-wv7whodv]{color:var(--text-link)}.sidebar-social[data-astro-cid-wv7whodv]{align-items:center;gap:12px;display:flex}.sidebar-social[data-astro-cid-wv7whodv] a[data-astro-cid-wv7whodv]{color:var(--text-muted);transition:color var(--transition);justify-content:center;align-items:center;display:inline-flex}.sidebar-social[data-astro-cid-wv7whodv] a[data-astro-cid-wv7whodv]:after{content:none!important;display:none!important}.sidebar-social[data-astro-cid-wv7whodv] a[data-astro-cid-wv7whodv]:hover{color:var(--text-link);text-decoration:none}.sidebar-social[data-astro-cid-wv7whodv] svg[data-astro-cid-wv7whodv]{width:16px;height:16px;display:block}.sidebar-nav[data-astro-cid-wv7whodv] ul[data-astro-cid-wv7whodv]{flex-direction:column;gap:1px;margin:0;padding:0;list-style:none;display:flex}.sidebar-nav[data-astro-cid-wv7whodv] a[data-astro-cid-wv7whodv]{font-family:var(--font-sans);font-size:var(--text-md);color:var(--text-secondary);transition:color var(--transition);padding:3px 0;font-weight:400;line-height:1.4;display:block}.sidebar-nav[data-astro-cid-wv7whodv] a[data-astro-cid-wv7whodv]:hover,.sidebar-nav[data-astro-cid-wv7whodv] a[data-astro-cid-wv7whodv].active{color:var(--text-primary);text-decoration:none}.sidebar-nav[data-astro-cid-wv7whodv] a[data-astro-cid-wv7whodv].active{font-weight:700}.theme-item[data-astro-cid-wv7whodv]{margin-top:5px}.sidebar-meta-link[data-astro-cid-wv7whodv],.sidebar-nav[data-astro-cid-wv7whodv] .sidebar-theme-toggle,.sidebar-nav[data-astro-cid-wv7whodv] button.theme-toggle{transition:color var(--transition);user-select:none;text-decoration:none;color:var(--text-muted)!important;font-family:var(--font-sans)!important;font-size:var(--text-md)!important;text-align:left!important;cursor:pointer!important;width:100%!important;letter-spacing:inherit!important;background:0 0!important;border:none!important;border-radius:0!important;justify-content:flex-start!important;align-items:flex-start!important;margin:0!important;padding:3px 0!important;font-weight:400!important;line-height:1.4!important;display:block!important}.sidebar-nav[data-astro-cid-wv7whodv] .sidebar-theme-toggle .theme-text{text-align:left!important;width:100%!important;line-height:inherit!important;margin:0!important;display:block!important}.sidebar-meta-link[data-astro-cid-wv7whodv]:hover,.sidebar-nav[data-astro-cid-wv7whodv] .sidebar-theme-toggle:hover,.sidebar-nav[data-astro-cid-wv7whodv] button.theme-toggle:hover{text-decoration:none;transform:none;color:var(--text-link)!important}@media (width<=768px){.mobile-header[data-astro-cid-wv7whodv]{z-index:100;background:var(--bg);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;height:50px;padding:0 16px;display:flex;position:sticky;top:0}.mobile-header-left[data-astro-cid-wv7whodv]{align-items:center;gap:10px;display:flex}.mobile-menu-btn[data-astro-cid-wv7whodv]{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);cursor:pointer;justify-content:center;align-items:center;padding:6px;line-height:1;transition:background .15s,border-color .15s;display:flex}.mobile-menu-btn[data-astro-cid-wv7whodv]:hover{background:var(--bg-surface);border-color:var(--border-hover)}.mobile-brand[data-astro-cid-wv7whodv]{align-items:center;gap:8px;text-decoration:none;display:flex}.mobile-avatar[data-astro-cid-wv7whodv]{border:1px solid var(--border);background:var(--bg-surface);object-fit:cover;border-radius:4px;display:block}.mobile-brand-name[data-astro-cid-wv7whodv]{font-family:var(--font-sans);font-size:var(--text-md);color:var(--text-primary);font-weight:700;line-height:1}.mobile-brand[data-astro-cid-wv7whodv]:hover .mobile-brand-name[data-astro-cid-wv7whodv]{color:var(--text-link)}.mobile-header-right[data-astro-cid-wv7whodv]{align-items:center;gap:8px;display:flex}.mobile-theme-btn[data-astro-cid-wv7whodv]{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-secondary);cursor:pointer;justify-content:center;align-items:center;padding:6px;line-height:1;transition:all .15s;display:inline-flex}.mobile-theme-btn[data-astro-cid-wv7whodv]:hover{background:var(--bg-surface);border-color:var(--border-hover);color:var(--text-primary)}.mobile-toc-btn[data-astro-cid-wv7whodv]{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);font-family:var(--font-sans);font-size:var(--text-xs);color:var(--text-secondary);cursor:pointer;align-items:center;gap:5px;padding:5px 10px;font-weight:600;line-height:1;transition:all .15s;display:inline-flex}.mobile-toc-btn[data-astro-cid-wv7whodv]:hover,.mobile-toc-btn[data-astro-cid-wv7whodv][aria-expanded=true]{color:var(--text-primary);border-color:var(--border-hover);background:var(--bg-surface)}.sidebar-backdrop[data-astro-cid-wv7whodv]{backdrop-filter:blur(2px);z-index:998;opacity:0;visibility:hidden;background:#0006;transition:opacity .25s,visibility .25s;display:block;position:fixed;inset:0}.sidebar-backdrop[data-astro-cid-wv7whodv].open{opacity:1;visibility:visible}.sidebar[data-astro-cid-wv7whodv]{background:var(--bg);border-right:1px solid var(--border);z-index:999;flex-direction:column;gap:16px;width:min(280px,85vw);height:100dvh;padding:16px 20px 24px;transition:transform .28s cubic-bezier(.16,1,.3,1);display:flex;position:fixed;top:0;bottom:0;left:0;overflow-y:auto;transform:translate(-100%);box-shadow:4px 0 24px #0000001f}.sidebar[data-astro-cid-wv7whodv].open{transform:translate(0)}.sidebar-drawer-header[data-astro-cid-wv7whodv]{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding-bottom:12px;display:flex}.sidebar-drawer-title[data-astro-cid-wv7whodv]{font-family:var(--font-sans);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-weight:700}.sidebar-drawer-actions[data-astro-cid-wv7whodv]{align-items:center;gap:6px;display:flex}.drawer-theme-btn[data-astro-cid-wv7whodv]{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-secondary);cursor:pointer;justify-content:center;align-items:center;padding:4px;line-height:1;transition:all .15s;display:inline-flex}.drawer-theme-btn[data-astro-cid-wv7whodv]:hover{color:var(--text-primary);border-color:var(--border-hover)}.sidebar-close-btn[data-astro-cid-wv7whodv]{color:var(--text-muted);cursor:pointer;border-radius:var(--radius);background:0 0;border:none;justify-content:center;align-items:center;padding:4px;transition:color .15s,background .15s;display:flex}.sidebar-close-btn[data-astro-cid-wv7whodv]:hover{color:var(--text-primary);background:var(--bg-surface)}.sidebar-identity[data-astro-cid-wv7whodv]{gap:8px}.avatar[data-astro-cid-wv7whodv]{width:56px;height:56px}.sidebar-nav[data-astro-cid-wv7whodv] a[data-astro-cid-wv7whodv],.sidebar-meta-link[data-astro-cid-wv7whodv],.sidebar-nav[data-astro-cid-wv7whodv] .sidebar-theme-toggle,.sidebar-nav[data-astro-cid-wv7whodv] button.theme-toggle{font-size:var(--text-base)!important;padding:6px 0!important;line-height:1.4!important}}
