.article-banner-wrap[data-astro-cid-zm77yjld]{width:100%;margin-top:1.5rem;margin-bottom:0;border-radius:var(--radius);overflow:hidden;border:1px solid var(--line);background:var(--line)}.article-banner[data-astro-cid-zm77yjld]{width:100%;height:auto;max-height:none;object-fit:contain;display:block}.article-grid[data-astro-cid-zm77yjld]{display:block}.article-grid--sidebar[data-astro-cid-zm77yjld]{display:flex;flex-direction:column;gap:2.5rem}.article-sidebar[data-astro-cid-zm77yjld]{display:none;flex-direction:column;gap:2rem}.article-header[data-astro-cid-zm77yjld]{width:100%}@media(min-width:960px){.article-grid--sidebar[data-astro-cid-zm77yjld]{display:grid;grid-template-columns:1fr 220px;grid-template-rows:auto auto 1fr;gap:0 2.5rem;align-items:start}.article-grid--sidebar[data-astro-cid-zm77yjld] .article-header[data-astro-cid-zm77yjld]{grid-row:1;grid-column:1}.article-grid--sidebar[data-astro-cid-zm77yjld] .article-banner-wrap[data-astro-cid-zm77yjld]{grid-row:2;grid-column:1}.article-grid--sidebar[data-astro-cid-zm77yjld] .body[data-astro-cid-zm77yjld]{grid-row:3;grid-column:1}.article-grid--sidebar[data-astro-cid-zm77yjld] .article-sidebar[data-astro-cid-zm77yjld]{grid-row:2 / -1;grid-column:2;display:flex;align-self:start}.article-grid--sidebar[data-astro-cid-zm77yjld]:not(.article-grid--has-banner){grid-template-rows:auto 1fr}.article-grid--sidebar[data-astro-cid-zm77yjld]:not(.article-grid--has-banner) .body[data-astro-cid-zm77yjld]{grid-row:2}.article-grid--sidebar[data-astro-cid-zm77yjld]:not(.article-grid--has-banner) .article-sidebar[data-astro-cid-zm77yjld]{grid-row:2 / -1}}.article-authors[data-astro-cid-zm77yjld]{display:flex;flex-wrap:wrap;gap:1rem;margin-top:1rem}.article-author[data-astro-cid-zm77yjld]{display:flex;align-items:center;gap:.75rem}.article-author-avatar[data-astro-cid-zm77yjld]{width:40px;height:40px;border-radius:50%;object-fit:cover;flex-shrink:0}.article-author-avatar--placeholder[data-astro-cid-zm77yjld]{background:color-mix(in srgb,var(--line) 60%,transparent)}.article-author-name[data-astro-cid-zm77yjld]{display:block;font-weight:600;font-size:.95rem}.article-author-role[data-astro-cid-zm77yjld]{display:block;font-size:.85rem;color:var(--text-soft)}.article-description[data-astro-cid-zm77yjld]{color:var(--text-soft);margin:.5rem 0 0}h1[data-astro-cid-zm77yjld]{font-family:Space Grotesk,Manrope,sans-serif;font-size:clamp(2rem,1.5rem + 2vw,3.2rem);line-height:1.06;margin:.7rem 0}header[data-astro-cid-zm77yjld] p[data-astro-cid-zm77yjld]{color:var(--text-soft)}.body[data-astro-cid-zm77yjld]{margin-top:1.4rem;background:var(--bg);color:var(--text);border-radius:var(--radius);padding:clamp(2rem,2rem + 1vw,4rem) 0}.body[data-astro-cid-zm77yjld] h2,.body[data-astro-cid-zm77yjld] h3{font-family:Space Grotesk,Manrope,sans-serif;margin-top:1.5rem;color:var(--text)}.body[data-astro-cid-zm77yjld] p,.body[data-astro-cid-zm77yjld] li{color:var(--text)}.body[data-astro-cid-zm77yjld] a{color:var(--accent-strong)}.body[data-astro-cid-zm77yjld] a:hover{color:var(--accent)}.body[data-astro-cid-zm77yjld] table{width:100%;border-collapse:separate;border-spacing:0;border:1px solid var(--line);border-radius:var(--radius-sm);overflow:hidden;margin:1.5rem 0;font-size:.92rem;line-height:1.55}.body[data-astro-cid-zm77yjld] thead{background:color-mix(in srgb,var(--line) 22%,transparent)}.body[data-astro-cid-zm77yjld] th{padding:.85rem 1rem;font-weight:700;text-align:left;color:var(--text);border-bottom:1.5px solid var(--line)}.body[data-astro-cid-zm77yjld] td{padding:.75rem 1rem;color:var(--text-soft);border-bottom:1px solid color-mix(in srgb,var(--line) 50%,transparent)}.body[data-astro-cid-zm77yjld] tr:last-child td{border-bottom:none}.body[data-astro-cid-zm77yjld] tbody tr:hover{background:color-mix(in srgb,var(--line) 10%,transparent)}.body[data-astro-cid-zm77yjld] hr{border:none;border-top:1px solid var(--line);margin:2.5rem 0}.body[data-astro-cid-zm77yjld] code{border-radius:6px}.body[data-astro-cid-zm77yjld] pre{background:var(--code-bg);color:var(--code-text);border-radius:12px;padding:1.2rem;overflow:auto}.body[data-astro-cid-zm77yjld] pre [data-line]{padding:0 1rem}.body[data-astro-cid-zm77yjld] code[data-line-numbers]{counter-reset:line}.body[data-astro-cid-zm77yjld] code[data-line-numbers] [data-line]:before{counter-increment:line;content:counter(line);display:inline-block;width:2rem;margin-right:1.5rem;text-align:right;color:var(--text-soft);user-select:none}.body[data-astro-cid-zm77yjld] code[data-line-numbers-max-digits="2"] [data-line]:before{width:2.5rem}.body[data-astro-cid-zm77yjld] code[data-line-numbers-max-digits="3"] [data-line]:before{width:3rem}.body[data-astro-cid-zm77yjld] code[data-line-numbers-max-digits="4"] [data-line]:before{width:3.5rem}.body-white[data-astro-cid-zm77yjld]{background:var(--bg);color:var(--text)}.body-white[data-astro-cid-zm77yjld] h2,.body-white[data-astro-cid-zm77yjld] h3,.body-white[data-astro-cid-zm77yjld] p,.body-white[data-astro-cid-zm77yjld] li,.body-white[data-astro-cid-zm77yjld] a{color:var(--text)}.body-white[data-astro-cid-zm77yjld] a:hover{color:var(--accent)}html[data-theme=dark] .body-white[data-astro-cid-zm77yjld]{background:var(--bg);color:var(--text)}html[data-theme=dark] .body-white[data-astro-cid-zm77yjld] h2,html[data-theme=dark] .body-white[data-astro-cid-zm77yjld] h3{color:var(--text)}html[data-theme=dark] .body-white[data-astro-cid-zm77yjld] p,html[data-theme=dark] .body-white[data-astro-cid-zm77yjld] li,html[data-theme=dark] .body-white[data-astro-cid-zm77yjld] a{color:#aaa;line-height:1.8rem}.body-link-highlight[data-astro-cid-zm77yjld] a{color:var(--accent-strong);text-decoration:none;background-image:linear-gradient(90deg,color-mix(in srgb,var(--accent-warm) 48%,transparent),color-mix(in srgb,var(--accent) 34%,transparent));background-repeat:no-repeat;background-size:100% .18em;background-position:0 91%;border-radius:2px;transition:color .18s ease,background-size .18s ease,background-position .18s ease,background-image .18s ease}.body-link-highlight[data-astro-cid-zm77yjld] a:hover,.body-link-highlight[data-astro-cid-zm77yjld] a:focus-visible{color:var(--accent);background-image:linear-gradient(90deg,color-mix(in srgb,var(--accent-warm) 78%,transparent),color-mix(in srgb,var(--accent) 56%,transparent));background-size:100% .44em;background-position:0 96%}.body-link-highlight[data-astro-cid-zm77yjld] a:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 70%,transparent);outline-offset:3px}html[data-theme=dark] .body-link-highlight[data-astro-cid-zm77yjld] a{color:var(--accent-warm);background-image:linear-gradient(90deg,color-mix(in srgb,var(--accent) 38%,transparent),color-mix(in srgb,var(--accent-warm) 24%,transparent))}html[data-theme=dark] .body-link-highlight[data-astro-cid-zm77yjld] a:hover,html[data-theme=dark] .body-link-highlight[data-astro-cid-zm77yjld] a:focus-visible{color:#ffd08a;background-image:linear-gradient(90deg,color-mix(in srgb,var(--accent) 68%,transparent),color-mix(in srgb,var(--accent-warm) 46%,transparent))}.article-image-expander{position:relative;display:block;width:fit-content;max-width:100%;margin:1.5rem 0}.article-image-expander>img,.article-image-expander>picture,.article-image-expander>a,.article-image-expander>a>img,.article-image-expander>a>picture{display:block;max-width:100%}.article-image-expander__button{position:absolute;top:.75rem;right:.75rem;z-index:2;display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;padding:0;border:1px solid color-mix(in srgb,white 28%,transparent);border-radius:8px;background:#0a0a0ab8;color:#fff;box-shadow:0 10px 30px #00000047;cursor:pointer;opacity:0;transform:translateY(-2px);transition:opacity .16s ease,transform .16s ease,background .16s ease}.article-image-expander:hover .article-image-expander__button,.article-image-expander:focus-within .article-image-expander__button{opacity:1;transform:translateY(0)}.article-image-expander__button:hover,.article-image-expander__button:focus-visible{background:#0a0a0ae0}.article-image-expander__button:focus-visible,.article-image-modal__control:focus-visible{outline:2px solid var(--accent);outline-offset:3px}body.article-image-modal-open{overflow:hidden}.article-image-modal[hidden]{display:none}.article-image-modal{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:clamp(1rem,3vw,3rem);background:#000000db}.article-image-modal__toolbar{position:fixed;top:max(1rem,env(safe-area-inset-top));left:50%;z-index:1001;display:flex;align-items:center;gap:.25rem;padding:.35rem;border:1px solid color-mix(in srgb,white 22%,transparent);border-radius:8px;background:#0a0a0acc;box-shadow:0 16px 40px #00000052;transform:translate(-50%)}.article-image-modal__control{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;padding:0;border:0;border-radius:6px;background:transparent;color:#fff;cursor:pointer}.article-image-modal__control:hover,.article-image-modal__control:focus-visible{background:#ffffff1f}.article-image-modal__control:disabled{color:#ffffff57;cursor:not-allowed}.article-image-modal__control:disabled:hover{background:transparent}.article-image-modal__surface{display:flex;flex-direction:column;align-items:center;gap:.85rem;width:min(100%,1400px);height:100%;max-height:100%;min-height:0;padding-top:3.75rem}.article-image-modal__viewport{display:flex;align-items:flex-start;justify-content:center;width:100%;min-height:0;overflow:auto;overscroll-behavior:contain}.article-image-modal__image{max-width:100%;max-height:calc(100vh - 7.5rem);width:auto;height:auto;border-radius:8px;background:var(--bg);object-fit:contain;transition:width .14s ease,max-width .14s ease,max-height .14s ease}.article-image-modal.is-zoomed .article-image-modal__image{max-width:none;max-height:none}.article-image-modal__caption{max-width:min(100%,900px);margin:0;color:#ffffffd1;font-size:.95rem;line-height:1.5;text-align:center}@media(hover:none){.article-image-expander__button{opacity:1;transform:none}}@media(max-width:640px){.article-image-expander__button{top:.5rem;right:.5rem}.article-image-modal{padding:.75rem}.article-image-modal__toolbar{top:max(.75rem,env(safe-area-inset-top))}.article-image-modal__control{width:2.35rem;height:2.35rem}.article-image-modal__surface{padding-top:3.25rem}.article-image-modal__image{max-height:calc(100vh - 6.5rem)}}
