.content{counter-reset:section}.content :where(h2){counter-increment:section;font-size:var(--heading-section);font-weight:600;color:var(--accent);margin:3.5rem 0 .875rem;line-height:1.4;display:flex;align-items:center;gap:.625rem;scroll-margin-top:var(--scroll-offset, 5.75rem)}.content :where(h2):before{content:counter(section,decimal-leading-zero);color:var(--ink-sub);font-weight:400;font-size:var(--text-xs)}.content .heading-link{position:relative;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:var(--icon-button-size);height:var(--icon-button-size);border:1px solid transparent;border-radius:var(--radius);background:transparent;cursor:pointer;color:var(--ink)}.content .heading-link:after{content:"";position:absolute;left:0;right:3px;bottom:-3px;height:1px;background:currentColor;opacity:0;transition:opacity .15s}.content .heading-link:hover:after{opacity:1}.content .heading-link:hover{background:var(--surface-subtle)}.content .heading-link.copied{color:var(--success)}.content .heading-link-icon{width:var(--icon-size);height:var(--icon-size)}.content :where(h2):after{content:"";flex:1;height:0;border-top:1px solid var(--rule);margin-left:.25rem}.content :where(h3),.content :where(h4){color:var(--ink);font-weight:700;line-height:1.55;letter-spacing:0;scroll-margin-top:var(--scroll-offset, 5.75rem)}.content :where(h3){margin:2rem 0 .75rem;font-size:var(--text-md)}.content :where(h4){margin:1.5rem 0 .625rem;font-size:var(--text-sm)}.content :where(p){font-size:var(--text-md);line-height:1.95;color:var(--ink);margin:0 0 .875rem;max-width:80ch}.content :where(p strong){color:var(--ink);font-weight:700}.content :where(:not(pre)>code){font-family:inherit;font-size:var(--text-sm);color:var(--code-inline);background:var(--code-inline-bg);padding:1px .3125rem;border:1px solid var(--border)}.content :where(ul),.content :where(ol){padding-left:0;margin:0 0 .875rem;font-size:var(--text-md);line-height:1.95;color:var(--ink);list-style:none}.content :where(ol){counter-reset:ol-counter}.content :where(li){padding-left:1em}.content :where(ul>li):before{content:"•";display:inline-block;width:1em;margin-left:-1em}.content :where(ol>li){counter-increment:ol-counter;padding-left:1.5em}.content :where(ol>li):before{content:counter(ol-counter) ".";display:inline-block;width:1em;margin-left:-1.5em;margin-right:.5em}.content :where(li+li){margin-top:.25rem}.content :where(pre){margin:1.125rem 0;border:1px solid var(--border);padding:1rem 1.25rem;font-size:var(--text-sm);line-height:1.7;overflow-x:auto}.content :where(pre code){font-family:inherit;background:none;border:none;padding:0}.content .mermaid-block-wrapper pre.mermaid-raw{margin:0;border:0;padding:1rem 1.25rem}.content :where(blockquote){margin:1.125rem 0;padding:.5rem 0 .5rem 1rem;border-left:3px solid var(--border)}.content :where(blockquote p){margin:0;font-size:var(--text-sm);line-height:1.9;color:var(--ink-sub)}.content :where(blockquote p+p){margin-top:.625rem}.content :where(hr){border:none;border-top:1px solid var(--rule);margin:2rem 0}.callout{--callout-accent: var(--callout-note);margin:1.125rem 0;padding:.875rem;background:var(--callout-bg);border:1px solid var(--border);border-left:2px solid var(--callout-accent)}.callout.warning{--callout-accent: var(--callout-warning)}.callout.caution{--callout-accent: var(--callout-caution)}.callout .callout-label{display:flex;align-items:center;gap:.375rem;font-size:var(--text-sm);font-weight:600;letter-spacing:.08em;color:var(--callout-accent);margin-bottom:.375rem}.callout .callout-icon{width:.875rem;height:.875rem;flex-shrink:0}.callout .callout-body p{margin:0;font-size:var(--text-sm);line-height:1.9;color:var(--ink)}.callout .callout-body p+p{margin-top:.625rem}.code-block-wrapper{position:relative;margin:1.125rem 0;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;background:var(--code-bg)}.code-block-wrapper .code-block-header{display:flex;align-items:center;gap:.5rem;height:2.5rem;padding:0 .75rem;background:var(--surface);border-bottom:1px solid var(--border);border-top-left-radius:.3125rem;border-top-right-radius:.3125rem;font-family:var(--font-mono);font-size:var(--text-xs);line-height:1;color:var(--ink)}.code-block-wrapper .code-block-actions{display:flex;align-items:center;gap:.5rem;margin-left:auto}.code-block-wrapper .code-lang{color:var(--ink);text-transform:uppercase;letter-spacing:.05em}.code-block-wrapper .code-lang-empty{visibility:hidden}.code-block-wrapper .code-wrap-toggle,.code-block-wrapper .code-copy{appearance:none;width:1rem;height:1rem;padding:.375rem;box-sizing:content-box;border:none;background:none;color:var(--ink);font:inherit;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:color .15s ease}.code-block-wrapper.is-wrapped .code-wrap-toggle{color:var(--accent)}.code-block-wrapper pre,.code-block-wrapper>pre.astro-code{margin:0!important;border:0!important;border-radius:0!important}.code-block-wrapper.is-wrapped pre,.code-block-wrapper.is-wrapped>pre.astro-code{white-space:pre-wrap!important;word-break:break-all}.code-block-wrapper .code-copy.is-copied{color:var(--success)}@media(max-width:480px){.code-block-wrapper .code-block-header{padding:.25rem .875rem;font-size:var(--text-2xs)}.code-block-wrapper .code-copy{padding:.1875rem 0}}.code-block-wrapper[data-collapsible] .collapse-label-fold,.code-block-wrapper[data-collapsible].is-expanded .collapse-label-expand{display:none}.code-block-wrapper[data-collapsible].is-expanded .collapse-label-fold{display:inline}.code-block-wrapper[data-collapsible]:not(.is-expanded) pre{max-height:var(--code-collapse-height);overflow:hidden}.code-collapse-toggle{position:relative;appearance:none;display:flex;align-items:center;justify-content:center;width:100%;padding:.5rem;border:none;border-top:1px solid var(--border);background:var(--surface);color:var(--ink);font-family:var(--font-mono);font-size:var(--text-xs);line-height:1;cursor:pointer;transition:color .15s ease}.code-collapse-toggle:hover{color:var(--accent)}.code-block-wrapper[data-collapsible]:not(.is-expanded) .code-collapse-toggle:before{content:"";position:absolute;bottom:100%;left:0;right:0;height:3rem;background:linear-gradient(to bottom,transparent,var(--code-bg));pointer-events:none}@media(max-width:480px){.code-collapse-toggle{font-size:var(--text-2xs);padding:.375rem}}.code-group{margin:1.125rem 0;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;background:var(--code-bg)}.code-group>pre{margin:0!important;border:0!important;border-radius:0!important}.code-group>pre:not(:first-of-type){display:none}.code-group.is-wrapped>pre{white-space:pre-wrap!important;word-break:break-all}.code-group-tabs{display:flex;align-items:center;gap:0;height:2.5rem;padding:0 .75rem;background:var(--surface);border-bottom:1px solid var(--border);font-family:var(--font-mono);font-size:var(--text-xs);line-height:1;color:var(--ink);overflow-x:auto}.code-group-tab{appearance:none;border:none;background:none;color:var(--ink-dim);font:inherit;padding:0 .75rem;height:100%;cursor:pointer;white-space:nowrap;border-bottom:2px solid transparent;transition:color .15s ease,border-color .15s ease}.code-group-tab:hover{color:var(--ink)}.code-group-tab.is-active{color:var(--accent);border-bottom-color:var(--accent)}.code-group-actions{display:flex;align-items:center;gap:.5rem;margin-left:auto}.code-group-actions .code-group-copy,.code-group-actions .code-group-wrap-toggle{appearance:none;width:1rem;height:1rem;padding:.375rem;box-sizing:content-box;border:none;background:none;color:var(--ink);font:inherit;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:color .15s ease}.code-group-actions .code-group-copy.is-copied{color:var(--success)}.code-group.is-wrapped .code-group-wrap-toggle{color:var(--accent)}@media(max-width:480px){.code-group-tabs{padding:0 .5rem;font-size:var(--text-2xs)}.code-group-tab{padding:0 .5rem}}.content-tabs{margin:1.125rem 0}.content-tabs-bar{display:flex;align-items:stretch;gap:0;padding:0;position:relative;z-index:1;margin-bottom:-2px}.content-tabs-tab{appearance:none;background:none;color:var(--ink-dim);font-family:inherit;font-weight:700;font-size:var(--text-md);line-height:1.55;letter-spacing:0;padding:.375rem .75rem;cursor:pointer;white-space:nowrap;border:2px solid transparent;border-radius:var(--radius) var(--radius) 0 0;position:relative;transition:color .15s ease}.content-tabs-tab:hover{color:var(--ink)}.content-tabs-tab.is-active{color:var(--ink);border-color:var(--border);border-bottom:2px solid var(--accent);background:var(--bg);z-index:1}.content-tab-panel-area{border:2px solid var(--border);border-radius:0 var(--radius) var(--radius) var(--radius)}.content-tabs>.content-tab-panel:not(:first-child){display:none}.content-tab-panel{padding:1.5rem 1rem}.content-tab-panel>:first-child{margin-top:0!important}.content-tab-panel>:last-child{margin-bottom:0!important}@media(max-width:480px){.content-tabs-tab{padding:.25rem .5rem}.content-tab-panel{padding:.75rem .875rem}}.mermaid-block-wrapper{margin:1.5rem 0;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;background:var(--code-bg)}.mermaid-block-wrapper .code-block-header{display:flex;align-items:center;gap:.5rem;height:2.5rem;padding:0 .75rem;background:var(--surface);border-bottom:1px solid var(--border);font-family:var(--font-mono);font-size:var(--text-xs);line-height:1;color:var(--ink)}.mermaid-block-wrapper .code-lang{color:var(--ink);letter-spacing:.03em}.mermaid-block-wrapper .code-block-actions{display:flex;align-items:center;gap:.25rem;margin-left:auto}.mermaid-block-wrapper .code-copy,.mermaid-block-wrapper .mermaid-view-toggle{appearance:none;width:1rem;height:1rem;padding:.375rem;box-sizing:content-box;border:none;background:none;color:var(--ink);font:inherit;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:color .15s ease}.mermaid-block-wrapper.is-raw .mermaid-view-toggle{color:var(--accent)}.mermaid-block-wrapper .code-copy.is-copied{color:var(--success)}.mermaid{display:flex;justify-content:center;align-items:center;margin:0;padding:1.25rem;background:var(--code-bg);min-height:10rem;overflow-x:auto;font-family:var(--font-mono);font-size:var(--text-sm);color:var(--ink)}.mermaid svg{max-width:100%;height:auto}.mermaid-raw{margin:0;padding:1rem 1.25rem;background:var(--code-bg);overflow-x:auto;font-family:var(--font-mono);font-size:var(--text-sm);line-height:1.7;color:var(--ink);white-space:pre}.mermaid-raw code{font-family:inherit}.mermaid-block-wrapper .mermaid-raw,.mermaid-block-wrapper .mermaid[hidden],.mermaid-block-wrapper .mermaid-raw[hidden],.mermaid-block-wrapper.is-raw .mermaid{display:none}.mermaid-block-wrapper.is-raw .mermaid-raw{display:block}:root[data-theme=snow] .mermaid svg{color:#333!important}:root[data-theme=snow] .mermaid svg .label text,:root[data-theme=snow] .mermaid svg .label tspan,:root[data-theme=snow] .mermaid svg .text-inner-tspan,:root[data-theme=snow] .mermaid svg .text-outer-tspan,:root[data-theme=snow] .mermaid svg .cluster-label text{fill:#333!important;color:#333!important}:root[data-theme=snow] .mermaid svg .node rect,:root[data-theme=snow] .mermaid svg .node circle,:root[data-theme=snow] .mermaid svg .node ellipse,:root[data-theme=snow] .mermaid svg .node polygon,:root[data-theme=snow] .mermaid svg .node path{fill:#e8e8e8!important;stroke:#999!important}:root[data-theme=snow] .mermaid svg .edgePath .path,:root[data-theme=snow] .mermaid svg .flowchart-link{stroke:#888!important}:root[data-theme=snow] .mermaid svg .marker,:root[data-theme=snow] .mermaid svg .marker.cross{fill:#888!important;stroke:#888!important}:root[data-theme=snow] .mermaid svg .arrowMarkerPath{fill:#888!important;stroke:#888!important}:root[data-theme=snow] .mermaid svg .edgeLabel .label text,:root[data-theme=snow] .mermaid svg .edgeLabel .label tspan{fill:#555!important}:root[data-theme=snow] .mermaid svg rect.background{fill:transparent!important}:root[data-theme=snow] .mermaid svg .cluster rect{fill:#f0f0f0!important;stroke:#bbb!important}:root[data-theme=snow] .mermaid svg .actor{fill:#e8e8e8!important;stroke:#999!important}:root[data-theme=snow] .mermaid svg .actor-line{stroke:#bbb!important}:root[data-theme=snow] .mermaid svg text.actor,:root[data-theme=snow] .mermaid svg .messageText{fill:#333!important}:root[data-theme=snow] .mermaid svg .messageLine0,:root[data-theme=snow] .mermaid svg .messageLine1{stroke:#888!important}:root[data-theme=snow] .mermaid svg .note{fill:#f0f0f0!important;stroke:#999!important}:root[data-theme=snow] .mermaid svg .noteText{fill:#333!important}:root[data-theme=snow] .mermaid svg .activation0,:root[data-theme=snow] .mermaid svg .activation1,:root[data-theme=snow] .mermaid svg .activation2{fill:#e0e0e0!important;stroke:#999!important}:root[data-theme=snow] .mermaid svg .loopText tspan{fill:#555!important}:root[data-theme=snow] .mermaid svg .loopLine{stroke:#bbb!important}:root[data-theme=snow] .mermaid svg .labelBox{fill:#e8e8e8!important;stroke:#999!important}:root[data-theme=snow] .mermaid svg .labelText{fill:#333!important}:root[data-theme=snow] .mermaid svg .er.entityBox{fill:#e8e8e8!important;stroke:#999!important}:root[data-theme=snow] .mermaid svg .er.entityLabel{fill:#333!important}:root[data-theme=snow] .mermaid svg .er.relationshipLine{stroke:#888!important}:root[data-theme=snow] .mermaid svg .er.relationshipLabel{fill:#555!important}:root[data-theme=snow] .mermaid svg .er.attributeBoxOdd{fill:#f0f0f0!important}:root[data-theme=snow] .mermaid svg .er.attributeBoxEven{fill:#e8e8e8!important}:root[data-theme=snow] .mermaid svg .stateGroup .composit{fill:#f5f5f5!important}:root[data-theme=snow] .mermaid svg .stateGroup rect.state-title-box{fill:#e0e0e0!important}:root[data-theme=snow] .mermaid svg .state-note{fill:#f0f0f0!important;stroke:#999!important}:root[data-theme=snow] .mermaid svg .transition{stroke:#888!important}:root[data-theme=snow] .mermaid svg .statediagram-state rect{fill:#e8e8e8!important;stroke:#999!important}:root[data-theme=snow] .mermaid svg .pieTitleText{fill:#333!important}:root[data-theme=snow] .mermaid svg .slice{stroke:#fff!important}:root[data-theme=snow] .mermaid svg .legend text{fill:#333!important}.table-wrap{margin:1.125rem 0;overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius);max-width:100%}.table-wrap>table{width:100%;border-collapse:collapse;font-size:var(--text-sm);line-height:1.7;color:var(--ink)}.table-wrap>table th,.table-wrap>table td{padding:.75rem .875rem;text-align:left;vertical-align:top;white-space:nowrap;border-bottom:1px solid var(--border);border-right:1px solid var(--border)}.table-wrap>table tbody td{background:var(--surface-subtle)}.table-wrap>table thead th{color:var(--ink);font-weight:700;font-size:var(--text-md);background:var(--surface);border-bottom:1px solid var(--border);white-space:nowrap}.table-wrap>table th:last-child,.table-wrap>table td:last-child{border-right:none}.table-wrap>table tbody tr:last-child td{border-bottom:none}@media(max-width:860px){.table-wrap>table{font-size:var(--text-xs)}.table-wrap>table th,.table-wrap>table td{padding:.625rem}.table-wrap>table thead th{font-size:var(--text-sm)}}.tweet-card{display:flex;flex-direction:column;gap:.75rem;padding:1rem 1.25rem;margin:1.125rem 0;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-subtle);text-decoration:none;color:inherit;transition:border-color .15s ease,background .15s ease;overflow:hidden}.tweet-card:hover{border-color:var(--accent);background:var(--surface)}.tweet-card__reply-to{font-size:var(--text-2xs);color:var(--ink-dim);line-height:1.4}.tweet-card__header{display:flex;align-items:flex-start;gap:.625rem}.tweet-card__avatar{flex-shrink:0;width:2.5rem;height:2.5rem;border-radius:50%}.tweet-card__author{display:flex;flex-direction:column;min-width:0;flex:1}.tweet-card__name{font-size:var(--text-sm);font-weight:600;color:var(--ink);line-height:1.4;display:flex;align-items:center;gap:.25rem}.tweet-card__verified{flex-shrink:0;color:var(--twitter-blue)}.tweet-card__handle{font-size:var(--text-xs);color:var(--ink-dim);line-height:1.4}.tweet-card__body{display:flex;flex-direction:column;gap:.75rem}.tweet-card__text{font-size:var(--text-xs);color:var(--ink);line-height:1.7;white-space:pre-wrap;margin:0;word-break:break-word;max-width:none}.tweet-card__media{display:grid;gap:2px;border-radius:var(--radius);overflow:hidden}.tweet-card__media--single{grid-template-columns:1fr}.tweet-card__media--double{grid-template-columns:1fr 1fr;aspect-ratio:16 / 9}.tweet-card__media--triple{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;aspect-ratio:16 / 9}.tweet-card__media--triple .tweet-card__media-item:first-child{grid-row:1 / 3}.tweet-card__media--quad{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;aspect-ratio:16 / 9}.tweet-card__media-item{overflow:hidden;position:relative}.tweet-card__media-item img{width:100%;height:100%;object-fit:cover;display:block}.tweet-card__media--single .tweet-card__media-item img{height:auto;object-fit:contain;max-height:32rem;border-radius:var(--radius)}.tweet-card__media-video{display:flex;align-items:center;justify-content:center}.tweet-card__play-icon{position:absolute;color:var(--overlay-icon);filter:drop-shadow(var(--shadow-overlay))}.tweet-card__quote{border:1px solid var(--border);border-radius:var(--radius);padding:.75rem;display:flex;flex-direction:column;gap:.5rem}.tweet-card__quote-header{display:flex;align-items:center;gap:.375rem}.tweet-card__quote-avatar{flex-shrink:0;width:1.25rem;height:1.25rem;border-radius:50%}.tweet-card__quote-name{font-size:var(--text-xs);font-weight:600;color:var(--ink);line-height:1.4;display:flex;align-items:center;gap:.1875rem}.tweet-card__quote-name .tweet-card__verified{width:14px;height:14px}.tweet-card__quote-handle{font-size:var(--text-2xs);color:var(--ink-dim);line-height:1.4}.tweet-card__quote-text{font-size:var(--text-2xs);color:var(--ink);line-height:1.7;white-space:pre-wrap;margin:0;word-break:break-word;max-width:none}.tweet-card__quote .tweet-card__media{border-radius:calc(var(--radius) - 2px)}.tweet-card__footer{display:flex;align-items:center;gap:1rem;border-top:1px solid var(--border);padding-top:.625rem}.tweet-card__date{font-size:var(--text-2xs);color:var(--ink-dim);line-height:1.4}.tweet-card__stat{display:inline-flex;align-items:center;gap:.25rem;font-size:var(--text-2xs);color:var(--ink-dim);line-height:1.4}.tweet-card__stat--like svg{color:var(--twitter-like)}.tweet-card__stat--reply svg{color:var(--twitter-blue)}.url-card{display:flex;align-items:flex-start;gap:.75rem;padding:.875rem 1rem;margin:1.125rem 0;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-subtle);text-decoration:none;color:inherit;transition:border-color .15s ease,background .15s ease;overflow:hidden}.url-card:hover{border-color:var(--accent);background:var(--surface)}.url-card__favicon{flex-shrink:0;width:1.25rem;height:1.25rem;margin-top:.125rem;border-radius:2px}.url-card__body{display:flex;flex-direction:column;gap:.125rem;min-width:0;padding-top:.0625rem}.url-card__title{font-size:var(--text-sm);font-weight:600;color:var(--ink);line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.url-card__desc{font-size:var(--text-xs);color:var(--ink-sub);line-height:1.5;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;white-space:normal}.url-card__url{font-size:var(--text-2xs);color:var(--ink-dim);line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-decoration:underline;text-underline-offset:.1875rem;text-decoration-color:var(--border)}.url-card:hover .url-card__url{text-decoration-color:var(--ink-dim)}.page[data-astro-cid-zm77yjld]{max-width:68.75rem;margin:0 auto;padding:4rem 2.5rem 6.25rem}.article[data-astro-cid-zm77yjld]{display:grid;grid-template-columns:minmax(0,1fr) 13.75rem;grid-template-areas:"hero toc" "content toc";column-gap:3.75rem;align-items:start}.hero[data-astro-cid-zm77yjld]{grid-area:hero}.content[data-astro-cid-zm77yjld]{grid-area:content;min-width:0;margin-top:2.5rem}.content[data-astro-cid-zm77yjld]>:first-child{margin-top:0}aside[data-astro-cid-zm77yjld].toc{grid-area:toc}.badge[data-astro-cid-zm77yjld]{font-size:var(--text-xs);color:var(--ink-dim);margin-bottom:1rem;display:block}h1[data-astro-cid-zm77yjld].title{font-weight:600;font-size:var(--text-xl);line-height:1.6;margin:0 0 1.125rem;color:var(--ink);letter-spacing:0}.lead[data-astro-cid-zm77yjld]{font-size:var(--text-sm);color:var(--ink-sub);max-width:76ch;margin:0 0 1.25rem;line-height:1.9}.meta[data-astro-cid-zm77yjld]{font-size:var(--text-xs);color:var(--ink-sub);display:flex;flex-direction:column;gap:.5rem;padding-top:.875rem;padding-bottom:.875rem;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}.meta-item[data-astro-cid-zm77yjld]{display:grid;grid-template-columns:.875rem 11ch 1fr;align-items:center;column-gap:.5rem}.meta-icon[data-astro-cid-zm77yjld]{width:var(--icon-size);height:var(--icon-size);color:var(--ink)}.meta-label[data-astro-cid-zm77yjld]{white-space:nowrap}.meta-value[data-astro-cid-zm77yjld]{min-width:0;color:var(--ink)}.meta-value[data-astro-cid-zm77yjld].tags{color:var(--tag)}aside[data-astro-cid-zm77yjld].toc{position:sticky;top:var(--toc-offset, 5.25rem);align-self:start}.toc-title[data-astro-cid-zm77yjld]{font-size:var(--text-2xs);color:var(--accent);margin:0 0 .75rem;padding-bottom:.5rem;border-bottom:1px solid var(--border);letter-spacing:.06em}.toc-title[data-astro-cid-zm77yjld]:after{content:"";flex:1;height:0;border-top:1px solid var(--rule);margin-left:.25rem}.toc-list[data-astro-cid-zm77yjld]{list-style:none;padding:0;margin:0}.toc-list[data-astro-cid-zm77yjld] li[data-astro-cid-zm77yjld]{display:grid;grid-template-columns:1.25rem 1fr;gap:.375rem;align-items:baseline;padding:.25rem 0;font-size:var(--text-xs);color:var(--ink-sub);cursor:pointer;line-height:1.6}.toc-list[data-astro-cid-zm77yjld] li[data-astro-cid-zm77yjld] .num[data-astro-cid-zm77yjld]{font-size:var(--text-2xs)}.toc-list[data-astro-cid-zm77yjld] li[data-astro-cid-zm77yjld]:hover{color:var(--ink)}.toc-list[data-astro-cid-zm77yjld] li[data-astro-cid-zm77yjld].active{color:var(--ink);font-weight:600}.toc-list[data-astro-cid-zm77yjld] li[data-astro-cid-zm77yjld].active .num[data-astro-cid-zm77yjld]{color:var(--accent)}@media(min-width:1380px){.page[data-astro-cid-zm77yjld]{margin-left:calc(50% - 25.625rem)}}@media(max-width:1379px){.page[data-astro-cid-zm77yjld]{max-width:48.75rem;padding:2.5rem 1.5rem 5rem}.article[data-astro-cid-zm77yjld]{grid-template-columns:1fr;grid-template-areas:"hero" "toc" "content";row-gap:0}aside[data-astro-cid-zm77yjld].toc{position:static;margin-top:3rem}.content[data-astro-cid-zm77yjld]{margin-top:0}.toc-title[data-astro-cid-zm77yjld]{font-size:var(--heading-section);font-weight:600;color:var(--accent);border-bottom:none;padding-bottom:0;margin:0 0 .875rem;display:flex;align-items:center;gap:.625rem}.toc-title[data-astro-cid-zm77yjld]:before{content:"00";color:var(--ink-sub);font-weight:400;font-size:var(--text-xs)}.toc-list[data-astro-cid-zm77yjld]{padding-left:calc(1ch + .3125rem);border-left:2px solid var(--border)}.toc-list[data-astro-cid-zm77yjld] li[data-astro-cid-zm77yjld]{color:var(--ink);font-size:var(--text-md);line-height:1.4;display:flex;align-items:center;gap:.625rem;grid-template-columns:none;padding:.375rem 0}.toc-list[data-astro-cid-zm77yjld] li[data-astro-cid-zm77yjld] .num[data-astro-cid-zm77yjld]{color:var(--ink);font-size:var(--text-xs);font-weight:400}.toc-list[data-astro-cid-zm77yjld] li[data-astro-cid-zm77yjld] .toc-text[data-astro-cid-zm77yjld]{text-decoration:underline;text-underline-offset:.25rem}.toc-list[data-astro-cid-zm77yjld] li[data-astro-cid-zm77yjld]:hover,.toc-list[data-astro-cid-zm77yjld] li[data-astro-cid-zm77yjld]:active{color:var(--highlight)}}
