.article-shell{margin-top:32px}.article-breadcrumb{color:var(--muted);overflow-wrap:anywhere;gap:12px;margin:0 0 20px 268px;font-size:13px;display:flex}.article-breadcrumb a{flex-shrink:0}.article-shell a:where(:not(.icon-link)){color:var(--accent);text-underline-offset:4px}.article-shell a:hover{text-decoration:underline}.article-grid{grid-template-columns:240px minmax(0,1fr) 240px;align-items:start;gap:28px;display:grid}.article-author{grid-area:1/1}.article-author,.article-toc{max-height:calc(100dvh - 48px);position:sticky;top:24px;overflow-y:auto}.article-grid main{grid-area:1/2;min-width:0}.article-paper{--article-padding:36px;padding:var(--article-padding)}.article-pagination{margin:calc(-1 * var(--article-padding)) calc(-1 * var(--article-padding)) 28px;border-bottom:1px solid var(--line);background:var(--page);border-radius:7px 7px 0 0;grid-template-columns:repeat(3,minmax(0,1fr));display:grid;overflow:hidden}.article-pagination>*{overflow-wrap:anywhere;flex-direction:column;justify-content:center;gap:6px;min-width:0;padding:18px 20px;font-size:13px;display:flex}.article-pagination>*+*{border-left:1px solid var(--line)}.article-pagination .article-previous{text-align:right}.article-pagination .article-index{white-space:nowrap;align-items:center;min-width:92px;padding-inline:16px;font-weight:700}.article-pagination a:hover{background:color-mix(in srgb, var(--accent) 7%, var(--panel));text-decoration:none}.article-pagination a:focus-visible{outline-offset:-4px}.article-pagination-label{color:var(--muted);font-size:12px}.article-pagination-title{white-space:nowrap;text-overflow:ellipsis;font-weight:700;display:block;overflow:hidden}.article-pagination-empty{color:var(--muted)}.article-heading h1{letter-spacing:-.025em;overflow-wrap:anywhere;margin:0 0 16px;font-size:clamp(26px,2.1vw,34px);font-weight:800;line-height:1.5}.article-meta{color:var(--muted);flex-wrap:wrap;gap:8px 16px;font-size:13px;display:flex}.article-meta time{font-family:IBM Plex Mono,monospace}.article-tags{margin-top:20px}.article-tags .tag{align-items:center;min-height:44px;padding:5px 14px;text-decoration:none;display:inline-flex}.article-heading{margin-bottom:32px}.article-toc{grid-area:1/3;padding:20px 16px}.article-toc h2{margin-bottom:16px;font-size:18px;font-weight:800}.toc ol{margin:0;padding:0;list-style:none}.toc li+li{margin-top:0}.toc a{color:var(--muted);overflow-wrap:anywhere;padding:2px 0 2px 12px;font-size:13px;text-decoration:none;display:block;position:relative}.toc a:before{content:"";background:var(--line);width:1px;height:16px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.toc a[aria-current]{color:var(--accent);font-weight:700}.toc a[aria-current]:before{background:var(--accent)}.toc .toc-nested a{padding-left:24px;font-size:12px}.mobile-toc{display:none}.article-body{overflow-wrap:anywhere;font-size:17px;line-height:1.65}.article-body>:first-child{margin-top:0}.article-body p,.article-body ul,.article-body ol{margin-block:20px}.article-body ul,.article-body ol{padding-left:1.5em}.article-body ul{list-style:outside}.article-body ol{list-style:decimal}.article-body li::marker{color:var(--accent)}.article-body h2,.article-body h3{scroll-margin-top:32px;font-weight:800;line-height:1.55}.article-body h2{border-left:4px solid var(--accent);margin:40px 0 20px;padding-left:14px;font-size:24px}.article-body h3{margin:28px 0 16px;font-size:20px}.article-body a{text-decoration:underline}.article-body strong{font-weight:750}.article-body img{border-radius:5px;width:100%;height:auto;margin-block:28px}.article-body figure{margin-block:28px}.article-body figure img{margin:0}.article-body figcaption{color:var(--muted);margin-top:8px;font-size:13px}.article-body blockquote{border-left:3px solid var(--accent);color:var(--muted);background:var(--page);border-radius:0 5px 5px 0;margin-block:24px;padding:4px 20px}.article-body aside{--callout-color:#2563eb;--callout-title:var(--callout-color);--callout-icon:"〇";border:1px solid color-mix(in srgb, var(--callout-color) 35%, var(--panel));border-left:4px solid var(--callout-color);background:color-mix(in srgb, var(--callout-color) 7%, var(--panel));border-radius:5px;margin-block:24px;padding:16px 20px}.article-body aside[data-color=red]{--callout-color:#b91c1c;--callout-icon:"×"}.article-body aside[data-color=yellow]{--callout-color:#eab308;--callout-title:#854d0e;--callout-icon:"！"}.article-body aside[data-color=green]{--callout-color:#166534;--callout-icon:"✓"}:root[data-theme=dark] .article-body aside{--callout-color:#93c5fd}:root[data-theme=dark] .article-body aside[data-color=red]{--callout-color:#fca5a5}:root[data-theme=dark] .article-body aside[data-color=yellow]{--callout-color:#fde047;--callout-title:var(--callout-color)}:root[data-theme=dark] .article-body aside[data-color=green]{--callout-color:#86efac}.article-body aside strong{color:var(--callout-title)}.article-body aside>strong:first-child{align-items:center;gap:.5em;display:flex}.article-body aside>strong:first-child:before{content:var(--callout-icon) / "";text-align:center;flex:0 0 1em;font-size:1.2em;line-height:1}.article-body aside[data-color=red]>strong:first-child:before{transform:translateY(-.1em)scale(1.5)}.article-body aside p{margin:8px 0}.article-body :not(pre)>code{background:var(--page);border-radius:4px;padding:2px 5px;font-family:IBM Plex Mono,monospace;font-size:.85em}.code-block{color:#edf5f7;background:#0d1117;border:1px solid #304550;border-radius:5px;min-width:0;margin-block:24px;overflow:hidden}.code-toolbar{background:#182934;border-bottom:1px solid #304550;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:4px 14px;font-family:IBM Plex Mono,monospace;font-size:12px;display:grid}.code-toolbar button{cursor:pointer;border-radius:4px;grid-column:3;min-height:44px;padding:10px 8px}.code-toolbar button:hover{background:#304550}.copy-status{color:#f9fafb;background:#4b5563;border-radius:4px;justify-self:start;padding:3px 8px;font:12px Noto Sans JP,sans-serif}.copy-status:empty{display:none}.article-body pre code{font-family:inherit}.article-body pre{overflow-wrap:normal;white-space:pre;tab-size:4;max-width:100%;margin:0;padding:20px;font-family:IBM Plex Mono,monospace;font-size:13px;line-height:1.8;overflow-x:auto}.table-scroll{border:1px solid var(--line);border-radius:5px;max-width:100%;margin-block:24px;overflow-x:auto}.article-body table{border-collapse:collapse;width:100%;font-size:14px}.article-body th,.article-body td{text-align:left;border-bottom:1px solid var(--line);min-width:100px;padding:12px 16px}.article-body th{background:var(--page);font-weight:700}.article-body tr:last-child td{border-bottom:0}.article-end{border-top:1px solid var(--line);margin-top:40px;padding-top:20px;font-size:14px;font-weight:700}.article-end a{padding-block:10px;display:inline-block}.draft-notice{margin:calc(-1 * var(--article-padding)) calc(-1 * var(--article-padding)) 28px;padding:24px var(--article-padding);border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--accent) 6%, var(--panel));overflow-wrap:anywhere;color:var(--muted);border-radius:7px 7px 0 0;font-size:13px}.draft-notice-heading{color:var(--accent);flex-wrap:wrap;align-items:center;gap:8px 12px;margin-bottom:12px;font-weight:700;display:flex}.draft-badge{border:1px solid;border-radius:4px;padding:3px 10px}.draft-notice .draft-notice-title{color:var(--ink);margin-bottom:6px;font-size:16px;font-weight:700}@media (width<=1199px){.article-shell{margin-top:20px}.article-breadcrumb{margin-left:0;font-size:12px}.article-grid{grid-template-columns:minmax(0,1fr);gap:24px}.article-grid main{grid-area:1/1}.article-author{grid-area:2/1;max-height:none;position:static;overflow:visible}.article-toc{display:none}.article-paper{--article-padding:20px;padding-block:24px}.article-pagination{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:-24px;margin-bottom:24px}.draft-notice{margin-top:-24px;margin-bottom:24px;padding-block:20px}.article-pagination>*{padding:14px 12px;font-size:12px}.article-pagination .article-index{display:none}.article-heading h1{font-size:26px}.article-meta{gap:8px 12px;font-size:12px}.article-heading{margin-bottom:24px}.mobile-toc{margin-bottom:28px;display:block}.mobile-toc summary{cursor:pointer;align-items:center;gap:12px;min-height:44px;padding:8px 16px;font-size:18px;font-weight:800;list-style:none;display:flex}.mobile-toc summary::-webkit-details-marker{display:none}.mobile-toc summary span{color:var(--muted);font-size:13px;font-weight:400}.mobile-toc .toc-chevron{margin-left:auto;font-size:20px}.mobile-toc[open] .toc-chevron{transform:rotate(180deg)}.mobile-toc .toc{padding:0 16px 8px}.article-body{font-size:16px}.article-body h2{margin-top:32px;font-size:21px}.article-body h3{font-size:18px}.article-body pre{padding:16px;font-size:12px}.article-body blockquote,.article-body aside{padding-inline:14px}}@media (width>=600px) and (width<=1199px){.article-shell{max-width:800px}.article-paper{--article-padding:36px;padding-block:36px}.article-pagination,.draft-notice{margin-top:-36px}}
