.faq-list{flex-direction:column;gap:12px;display:flex}.faq-q{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-l);transition:border-color .2s,box-shadow .2s,background-color .2s}.faq-q:hover{border-color:var(--border-strong)}.faq-q[open]{border-color:var(--accent);box-shadow:var(--glow)}.faq-q>summary{cursor:pointer;border-radius:var(--radius-l);justify-content:space-between;align-items:center;gap:16px;min-height:64px;padding:14px 20px 14px 24px;list-style:none;display:flex}.faq-q>summary::-webkit-details-marker{display:none}.faq-q>summary::marker{content:""}.faq-q>summary>:is(h3,h4){min-width:0;font:650 20px/1.35 var(--font-display);color:var(--heading);text-shadow:var(--head-glow);flex:1;margin:0;transition:color .2s}.faq-q>summary:after{content:"";background:var(--accent-soft);border:1px solid var(--border);box-sizing:border-box;--chev:var(--accent);background-image:linear-gradient(var(--chev), var(--chev)), linear-gradient(var(--chev), var(--chev));background-position:50%;background-repeat:no-repeat;background-size:10px 2px,2px 10px;border-radius:50%;flex:none;width:32px;height:32px;transition:transform .3s cubic-bezier(.2,.8,.2,1),background-color .2s,border-color .2s}.faq-q[open]:not([data-closing])>summary:after{border-color:var(--accent);transform:rotate(45deg)}.faq-q>summary:hover>:is(h3,h4){color:var(--accent)}.faq-q>summary:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.faq-a{color:var(--text);flex-direction:column;gap:12px;padding:0 24px 22px;line-height:1.65;display:flex}.faq-a>*{margin:0}.faq-a>:first-child{border-top:1px solid var(--border);padding-top:14px}@media (width<=600px){.faq-q>summary{min-height:60px;padding:12px 14px 12px 16px}.faq-a{padding:0 16px 18px}}@media (prefers-reduced-motion:reduce){.faq-q,.faq-q>summary>:is(h3,h4),.faq-q>summary:after{transition:none}}@media print{.faq-q:not([open])>.faq-a{display:flex}.faq-q>summary:after{display:none}}.answer{background:var(--accent-soft);border-radius:var(--radius-m);flex-direction:column;gap:10px;padding:26px 28px;display:flex}.answer p{color:var(--text);font-size:18px;line-height:1.65}.callout{border:1px solid var(--border-strong);background:var(--surface);border-radius:var(--radius-m);flex-direction:column;gap:8px;padding:22px 24px;display:flex}.callout-title{font:600 13px/1.2 var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}.tags{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.meta-row{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px 24px;font-size:15px;line-height:1.6;display:flex}.meta-row a{color:var(--accent)}.meta-author{align-items:center;gap:10px;display:inline-flex}.avatar{border:1px solid var(--border);background:var(--surface-2);width:36px;height:36px;color:var(--heading);font:600 13px/1 var(--font-display);border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.crumbs ol{font:500 13px/1.6 var(--font-mono);color:var(--muted);flex-wrap:wrap;gap:0;margin:0;padding:0;list-style:none;display:flex}.crumbs span{padding:4px 0;display:inline-block}.crumbs li+li:before{content:"/";margin:0 .6em}.crumbs a{color:var(--muted);padding:4px 0;display:inline-block}.card-title{font:650 22px/1.3 var(--font-display);color:var(--heading)}.crumbs a:hover{color:var(--accent)}.article-wrap{max-width:1360px;margin:0 auto;padding:0 48px}.article-grid{grid-template-columns:240px minmax(0,720px);align-items:start;gap:40px;display:grid}.article-grid>.article{grid-column:2;min-width:0}.article-grid>.toc-side{grid-area:1/1}.article-grid>.rail{display:none}.rail-compact{flex-wrap:wrap;align-items:center;gap:8px;padding-bottom:8px;display:flex}@media (width>=1360px){.rail-compact{display:none}.article-grid>.rail{display:flex}.article-grid{grid-template-columns:240px minmax(0,720px) 224px}.article-grid>.toc-side{grid-row:auto}.article-grid>.rail{top:var(--anchor-offset);grid-area:1/3;position:sticky}}@media (width<=959px){.article-wrap{--anchor-offset:130px;padding:0 24px}.article-grid{grid-template-columns:minmax(0,1fr);gap:32px}.article-grid>.toc-side{display:none}.article-grid>.article{grid-column:1}}.toc{font-size:14px;line-height:1.4}.toc-side{top:var(--anchor-offset);max-height:calc(100vh - var(--anchor-offset) - 24px);overscroll-behavior:contain;padding-right:4px;position:sticky;overflow-y:auto}.toc ol{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.toc ol ol{margin-top:2px}.toc a{color:var(--muted);border-left:2px solid var(--border);padding:6px 0 6px 14px;text-decoration:none;display:block}.toc ol ol a{padding-left:28px;font-size:13.5px}.toc a:hover{color:var(--heading)}.toc a[aria-current]{color:var(--accent);border-left-color:var(--accent);font-weight:600}.toc-title{margin-bottom:8px;display:block}@media (width<=959px) and (scripting:none){.article-grid>.toc-side{border:1px solid var(--border);border-radius:var(--radius-m);background:var(--surface);max-height:none;padding:16px 18px;display:block;position:static;overflow:visible}}@media (width<=959px){.article-grid>.toc-side[data-static]{border:1px solid var(--border);border-radius:var(--radius-m);background:var(--surface);max-height:60vh;padding:16px 18px;display:block;position:static}}.toc-side ol ol{display:none}.toc-side li.open>ol,.toc-side li:focus-within>ol{display:flex}@media (scripting:none){.toc-side ol ol{display:flex}}.toc-bar{display:none}.toc-bar+.article-grid{margin-top:32px}@media (width<=959px){.toc-bar:not([hidden]){z-index:30;box-sizing:border-box;background:var(--bg);border:0;border-block:1px solid var(--border);width:calc(100% + 48px);height:50px;font:600 14px/1.3 var(--font-body);color:var(--heading);text-align:left;cursor:pointer;align-items:center;gap:6px;margin:0 -24px;padding:0 24px;display:flex;position:sticky;top:65px}}@media (width<=959px) and (scripting:enabled){@supports selector(:popover-open){.toc-bar[hidden]{visibility:hidden;box-sizing:border-box;width:calc(100% + 48px);height:50px;margin:0 -24px;display:flex;position:sticky;top:65px}.toc-bar+.article-grid{margin-top:64px}}}.toc-bar:after{content:"▾";content:"▾" / "";color:var(--accent);margin-left:auto;padding-left:8px;font-size:18px}.toc-bar-k{color:var(--muted);flex:none;font-weight:500}.toc-bar-v{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.toc-pop{overscroll-behavior:contain;background:var(--surface);width:auto;max-height:calc(100dvh - 135px);color:var(--text);border:1px solid var(--border-strong);border-radius:var(--radius-m);margin:0;padding:14px 16px 16px;position:fixed;inset:119px 12px auto;overflow-y:auto}.toc-pop::backdrop{background:0 0}@supports selector(:popover-open){.toc-pop:not(:popover-open){display:none}}@supports not selector(:popover-open){.toc-pop{display:none}}.progress{z-index:40;background:0 0;height:3px;margin-bottom:-3px;display:none;position:sticky;top:89px}.progress span{background:var(--brand-gradient);width:100%;height:3px;box-shadow:var(--glow);transform-origin:0;display:block;transform:scaleX(0)}@supports (animation-timeline:scroll()){@media (prefers-reduced-motion:no-preference){.progress{display:block}.progress span{animation:linear both read-progress scroll(root)}}}@keyframes read-progress{to{transform:scaleX(1)}}@media (width<=1199px){.progress{top:65px}}.article-body{max-width:720px;font-size:19px;line-height:1.75}.article-body.prose>*+*{margin-top:24px}.article-body.prose>h2{margin-top:123px}.article-body.prose>h3{margin-top:99px}.article-body.prose>h4{margin-top:83px}.article-body.prose>h5,.article-body.prose>h6{margin-top:75px}.article-body.prose>:is(h2,h3,h4,h5,h6)+*{margin-top:20px}.article-body.prose>:first-child{margin-top:0}.article-body>p,.article-body li{color:var(--text)}.article-body p>a:only-child,.article-body p:has(>a>img)>a{padding:3px 0;display:inline-block}.article-body strong{color:var(--strong);font-weight:650}.article-body ul,.article-body ol{flex-direction:column;gap:8px;padding-left:24px;display:flex}.article-body ol{padding-left:2.25em}.article-body li>ul,.article-body li>ol{margin:8px 0 0}.article-body img{border-radius:var(--radius-m);max-width:100%;height:auto}.article-body img:not([width]){aspect-ratio:16/9;object-fit:contain;background:var(--surface-2);width:100%}.article-body.prose>:is(p,figure,div,picture):has(img){margin-block:45px}.article-body.prose>:is(p,figure,div,picture):has(img)+:not(h2,h3,h4,h5,h6){margin-top:0}.article-body figure.fig{margin-inline:0}.article-body figure.fig figcaption{color:var(--muted);text-align:center;margin-top:.6em;font-size:14px;line-height:1.5}.article-body hr{border:0;border-top:1px solid var(--border);width:100%;margin:48px 0}.article-body :not(pre)>code{font:400 .85em/1.4 var(--font-mono);background:var(--inset);border:1px solid var(--border);border-radius:4px;padding:1px 6px}.article-body pre{border:1px solid var(--border);border-radius:var(--radius-m);font:400 14px/1.6 var(--font-mono);padding:18px 20px;overflow-x:auto;background:var(--inset)!important}.article-body pre,.article-body pre code,.article-body pre span{color:var(--text)!important}.article-body.prose>blockquote{margin-top:40px;margin-bottom:16px;padding:0}.article-body blockquote:before{content:"“" / "";font:700 64px/.6 var(--font-display);color:var(--accent);margin-bottom:8px;display:block}.article-body blockquote p{font:600 28px/1.35 var(--font-display);letter-spacing:-.01em;color:var(--heading);text-shadow:var(--head-glow)}.article-body blockquote p+p{margin-top:16px}.article-body .table-box{border:1px solid var(--border);border-radius:var(--radius-m);background:var(--surface);margin-top:74px;margin-bottom:50px;overflow-x:auto}.article-body table{border-collapse:collapse;width:100%;min-width:560px;font-size:16px;line-height:1.55}.article-body caption{text-align:left;font:650 18px/1.35 var(--font-display);color:var(--heading);padding:14px 18px 4px}.article-body th,.article-body td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:14px 18px}.article-body th{font:600 12px/1.2 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);background:var(--surface-2)}.article-body tr:last-child td{border-bottom:0}.anchor{text-shadow:none;font:500 .7em/1 var(--font-mono);color:var(--accent);opacity:0;border-radius:4px;padding:0 .45em;text-decoration:none;transition:opacity .15s,color .15s;display:inline}:is(h2,h3):has(>.anchor){overflow-wrap:break-word}.anchor:before{content:"⁠#";content:"⁠#" / ""}:is(h2,h3):hover>.anchor,.anchor:focus-visible,.anchor:hover{opacity:1}.anchor:hover{color:var(--heading)}@media (hover:none){.anchor{opacity:1}}@media (prefers-reduced-motion:reduce){.anchor{transition:none}}.section-nav{font:500 14px/1.4 var(--font-body);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:0 24px;display:flex}.section-nav a{min-height:44px;color:var(--accent);align-items:center;gap:8px;text-decoration:none;display:inline-flex}.section-nav a:hover{color:var(--heading);text-decoration:underline}.sn-top:before{content:"↑";content:"↑" / ""}.sn-next{text-align:right;margin-left:auto}.sn-next:after{content:"→";content:"→" / ""}.article-body.prose>.section-nav{margin-top:32px}.article-body.prose>.section-nav+h2{margin-top:83px}body#top{scroll-margin-top:0}@media (width<=760px){.article-body{font-size:18px}.article-body blockquote p{font-size:23px}.article-body ul{padding-left:20px}}.gl-letter{margin:32px 0 12px;font-size:28px}.rail{flex-direction:column;gap:12px;display:flex}.rail .btn{text-align:center;justify-content:center}.sources{flex-direction:column;gap:8px;margin:0;padding-left:24px;font-size:16px;line-height:1.6;display:flex}.author-box{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-m);align-items:center;gap:20px;padding:24px 28px;display:flex}.author-box .avatar{width:72px;height:72px;font-size:22px}.author-box p{color:var(--muted);margin-top:4px;font-size:16px;line-height:1.6}@media (width<=560px){.author-box{flex-direction:column;align-items:flex-start}}
