/* Blog library navigation deliberately reuses the compact disclosure language used by informative article pages. */
.blog-index-tools{position:sticky;top:86px;z-index:88;display:block;margin:0 0 30px;padding:0;border:0;background:transparent}
.blog-index-topic-disclosure{position:relative;margin:0;border-top:1px solid var(--border-medium);border-bottom:1px solid var(--border-medium);background:rgb(255 255 255 / 98%);box-shadow:0 8px 20px rgb(11 36 93 / 6%);backdrop-filter:blur(8px)}
.blog-index-topic-disclosure>summary{min-height:58px;display:grid;grid-template-columns:auto minmax(0,1fr) auto 18px;gap:16px;align-items:center;padding:0 20px;cursor:pointer;list-style:none;background:var(--surface-white)}
.blog-index-topic-disclosure>summary::-webkit-details-marker{display:none}
.blog-index-topic-disclosure>summary:hover,.blog-index-topic-disclosure>summary:focus-visible{background:var(--surface-blue-soft);outline:0}
.blog-index-topic-disclosure>summary:focus-visible{box-shadow:inset 0 0 0 2px var(--brand-red)}
.blog-index-topic-kicker{color:var(--brand-red);font-family:var(--font-navigation);font-size:9px;font-weight:750;letter-spacing:.13em;text-transform:uppercase;white-space:nowrap}
.blog-index-topic-disclosure>summary strong{overflow:hidden;color:var(--brand-navy);font-family:var(--font-navigation);font-size:13px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}
.blog-index-topic-count{color:var(--text-muted);font-family:var(--font-navigation);font-size:10px;font-weight:600;letter-spacing:.03em;white-space:nowrap}
.blog-index-topic-disclosure>summary i{position:relative;width:16px;height:16px}
.blog-index-topic-disclosure>summary i::before,.blog-index-topic-disclosure>summary i::after{content:"";position:absolute;top:7px;width:8px;height:1.5px;background:var(--brand-red);transition:transform var(--transition-fast)}
.blog-index-topic-disclosure>summary i::before{left:1px;transform:rotate(45deg)}
.blog-index-topic-disclosure>summary i::after{right:1px;transform:rotate(-45deg)}
.blog-index-topic-disclosure[open]>summary i::before{transform:rotate(-45deg)}
.blog-index-topic-disclosure[open]>summary i::after{transform:rotate(45deg)}
.blog-index-topic-disclosure[open]>summary{border-bottom:1px solid var(--border-light)}
.blog-index-topic-panel{position:absolute;top:calc(100% + 1px);right:0;left:0;z-index:3;display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1.55fr);background:var(--surface-white);border:1px solid var(--border-medium);border-top:0;box-shadow:0 18px 36px rgb(11 36 93 / 12%)}
.blog-index-topic-panel .blog-index-search{position:relative;display:flex;min-width:0;align-items:center;align-self:stretch;border-right:1px solid var(--border-light);background:var(--surface-blue-soft)}
.blog-index-topic-panel .blog-index-search>svg{position:absolute;left:20px;color:var(--brand-navy);font-size:17px;pointer-events:none}
.blog-index-topic-panel .blog-index-search input{width:100%;min-height:100%;height:100%;padding:22px 50px;border:0;border-radius:0;background:transparent;color:var(--text-primary);font:500 14px/1.5 var(--font-body)}
.blog-index-topic-panel .blog-index-search input::placeholder{color:var(--text-muted)}
.blog-index-topic-panel .blog-index-search input:focus{outline:0;box-shadow:inset 0 -2px 0 var(--brand-red)}
.blog-index-topic-panel .blog-index-search button{position:absolute;right:11px;width:32px;height:32px;display:grid;place-items:center;padding:0;border:0;background:transparent;color:var(--text-muted);cursor:pointer}
.blog-index-topic-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-left:0}
.blog-index-topic-list button{min-width:0;min-height:50px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px 14px;border:0;border-right:1px solid var(--border-light);border-bottom:1px solid var(--border-light);background:var(--surface-white);color:var(--brand-navy);font-family:var(--font-navigation);font-size:11.5px;font-weight:650;text-align:left;cursor:pointer}
.blog-index-topic-list button:nth-child(3n){border-right:0}
.blog-index-topic-list button:hover,.blog-index-topic-list button:focus-visible{background:var(--surface-blue-soft);outline:0;color:var(--brand-red)}
.blog-index-topic-list button[data-active="true"]{box-shadow:inset 3px 0 0 var(--brand-red);background:var(--surface-blue-soft)}
.blog-index-topic-list button span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.blog-index-topic-list button small{color:var(--text-muted);font-size:10px;font-weight:650}
.blog-index-clear-filters{grid-column:1/-1;min-height:40px;padding:0 16px;border:0;border-top:1px solid var(--border-light);background:var(--surface-white);color:var(--brand-red);font-family:var(--font-navigation);font-size:10px;font-weight:750;letter-spacing:.08em;text-transform:uppercase;text-align:right;cursor:pointer}
.blog-index-clear-filters:hover,.blog-index-clear-filters:focus-visible{background:var(--surface-blue-soft);outline:0}
.blog-index-result-count{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;margin:-1px!important;padding:0!important;border:0!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important}
@media(max-width:900px){.blog-index-topic-panel{grid-template-columns:1fr}.blog-index-topic-panel .blog-index-search{min-height:56px;border-right:0;border-bottom:1px solid var(--border-light)}.blog-index-topic-panel .blog-index-search input{min-height:56px;padding-top:0;padding-bottom:0}.blog-index-topic-list{grid-template-columns:repeat(2,minmax(0,1fr))}.blog-index-topic-list button:nth-child(3n){border-right:1px solid var(--border-light)}.blog-index-topic-list button:nth-child(2n){border-right:0}}
@media(max-width:700px){.blog-index-tools{top:74px;margin-bottom:24px}.blog-index-topic-disclosure>summary{min-height:52px;grid-template-columns:minmax(0,1fr) auto 16px;gap:11px;padding:0 14px}.blog-index-topic-kicker{display:none}.blog-index-topic-disclosure>summary strong{font-size:12px}.blog-index-topic-count{font-size:9px}.blog-index-topic-panel{max-height:68vh;overflow-y:auto}.blog-index-topic-list{grid-template-columns:1fr}.blog-index-topic-list button,.blog-index-topic-list button:nth-child(2n),.blog-index-topic-list button:nth-child(3n){min-height:46px;border-right:0}.blog-index-topic-panel .blog-index-search>svg{left:16px}.blog-index-topic-panel .blog-index-search input{padding-left:42px;font-size:13px}}
