.filter-bar{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:12px}.article-categories{display:flex;flex-wrap:wrap;gap:8px;max-width:68%}.article-categories a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 16px;border-radius:24px;font-size:14px;line-height:1.6;color:var(--ink)}.article-categories a[aria-current]{background:var(--blue);color:#fff}.article-categories a:hover{background:var(--pale);color:var(--blue)}.article-categories a[aria-current]:hover{background:var(--blue);color:#fff}.article-search{width:min(340px,100%);flex-shrink:0}.article-search .search-input{max-width:none;padding:0 0 0 14px;gap:8px}.article-search input{min-width:0;padding:10px 0}.article-search button{min-height:44px;padding:8px 14px;color:var(--blue);font-size:14px;white-space:nowrap}.article-search-term{margin:20px 0;color:var(--text);overflow-wrap:anywhere}.article-row{display:grid;grid-template-columns:100px minmax(0,1fr) auto;gap:28px;align-items:start;padding:30px 0;border-bottom:1px solid var(--line)}.article-row>.category-label{justify-self:start;max-width:100%;white-space:normal;overflow-wrap:anywhere}.article-row h2{font-size:20px;line-height:1.65;font-weight:500;margin:0 0 8px;overflow-wrap:anywhere}.article-row h2 a:hover{color:var(--blue)}.article-row p{font-size:15px;line-height:1.9;overflow-wrap:anywhere}.article-row>.text-link{min-height:44px;white-space:nowrap}.article-date,.article-meta{display:block;color:var(--muted);font-size:13px;margin-top:10px}.pagination{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:30px}.pagination a,.pagination span{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:8px 12px;border:1px solid var(--line);border-radius:6px;font-size:14px}.pagination [aria-current]{color:#fff;background:var(--blue);border-color:var(--blue)}.pagination [aria-disabled]{color:var(--muted);background:var(--pale)}.pagination a:hover{border-color:var(--blue);color:var(--blue)}.article-empty{text-align:center;padding:56px 24px;border:1px solid var(--line);border-radius:8px;background:var(--pale)}.article-empty p{margin:12px 0 24px}.article-empty h1,.article-empty h2{font-size:24px;font-weight:500}.reading-layout{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:64px;align-items:start}.reading{min-width:0}.reading>h1{font-size:36px;line-height:1.55;font-weight:500;letter-spacing:-.02em;margin:18px 0;overflow-wrap:anywhere}.reading .article-meta{margin:0 0 28px}.article-body{font-size:16px;line-height:1.95;color:var(--ink);overflow-wrap:anywhere;min-height:100px}.article-body>*+*{margin-top:20px}.article-body p{color:inherit;font-size:inherit;line-height:inherit}.article-body h2{font-size:26px;font-weight:500;line-height:1.6;margin:36px 0 16px}.article-body h3{font-size:22px;font-weight:500;line-height:1.6;margin:28px 0 12px}.article-body h4,.article-body h5,.article-body h6{font-size:18px;font-weight:500;margin:24px 0 12px}.article-body [id]{scroll-margin-top:calc(var(--header-height) + 24px)}.article-body a{color:var(--blue);text-decoration:underline;text-underline-offset:3px}.article-body ul,.article-body ol{padding-left:26px;list-style:revert}.article-body li+li{margin-top:8px}.article-body strong,.article-body b{font-weight:600}.article-body img{max-width:100%;height:auto;display:block;border-radius:6px}.article-body pre{max-width:100%;overflow:auto;padding:18px;border-radius:6px;background:var(--pale);border:1px solid var(--line);font-size:14px;line-height:1.7;white-space:pre}.article-body code{font-family:ui-monospace,monospace}.article-body blockquote{border-left:3px solid var(--blue);padding:12px 20px;background:var(--pale)}.article-body hr{border:0;border-top:1px solid var(--line);margin:28px 0}.article-table-wrap{max-width:100%;overflow:auto}.article-body table{border-collapse:collapse;min-width:100%;font-size:14px}.article-body th,.article-body td{padding:12px;border:1px solid var(--line);text-align:left;vertical-align:top}.article-body th{background:var(--pale);font-weight:500}.desktop-toc{position:sticky;top:calc(var(--header-height) + 24px);border-left:1px solid var(--line);padding-left:24px;max-height:calc(100vh - var(--header-height) - 48px);overflow:auto}.desktop-toc h2{font-size:16px;font-weight:500;margin-bottom:14px}.desktop-toc a{display:block;padding:8px 0;font-size:14px;line-height:1.7;color:var(--text);overflow-wrap:anywhere}.desktop-toc .toc-h3{padding-left:12px}.desktop-toc a:hover{color:var(--blue)}.mobile-toc{display:none}.reading-callout{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px;background:var(--pale);border-radius:8px;margin:40px 0 24px}.reading-callout h2{font-size:20px;font-weight:500;line-height:1.6}.reading-callout p{font-size:14px;margin-top:6px}.reading-callout .button{flex-shrink:0}.back-articles{margin-top:0}.reading-layout.no-toc{grid-template-columns:minmax(0,780px);justify-content:center}
@media(max-width:1100px){.filter-bar{flex-wrap:wrap}.article-categories{max-width:100%}.reading-layout{gap:36px;grid-template-columns:minmax(0,1fr) 190px}}
@media(max-width:760px){.filter-bar{gap:16px}.article-categories{gap:6px}.article-categories a{font-size:13px;padding:8px 12px}.article-search{width:100%}.article-search button{font-size:13px}.article-row{grid-template-columns:minmax(0,1fr);gap:10px;padding:24px 0}.article-row h2{font-size:19px;line-height:1.7}.article-row p{font-size:14px}.article-row>.text-link{justify-self:start}.article-empty{padding:36px 20px}.article-empty h1,.article-empty h2{font-size:22px}.reading-layout,.reading-layout.no-toc{display:block}.desktop-toc{display:none}.reading>h1{font-size:28px;line-height:1.6;margin:16px 0 18px}.article-body{line-height:2}.article-body h2{font-size:22px;line-height:1.6;margin-top:30px}.article-body h3{font-size:20px}.mobile-toc{display:block;border:1px solid var(--line);border-radius:6px;margin:24px 0;background:var(--pale)}.mobile-toc summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;padding:10px 16px;font-size:14px;font-weight:500;cursor:pointer}.mobile-toc summary .icon{font-size:10px}.mobile-toc nav{padding:0 16px 14px}.mobile-toc a{display:block;font-size:14px;line-height:1.8;padding:8px 0;color:var(--blue);overflow-wrap:anywhere}.reading-callout{display:block;padding:24px}.reading-callout .button{margin-top:16px}.reading-callout h2{font-size:18px}.back-articles{width:100%}}

.article-search label{display:block;font-size:13px;color:var(--text);margin-bottom:6px}
