/* Shared category-first navigation for the city and article drawers. */
.index-topic { border-bottom: 1px solid var(--border-line, rgba(128,128,128,.2)); }
.index-topic > summary { display: flex; align-items: center; justify-content: space-between; gap: 18px; min-height: 60px; padding: 14px 12px; list-style: none; cursor: pointer; color: inherit; font: 600 17px/1.4 Inter, sans-serif; }
.index-topic > summary::-webkit-details-marker { display: none; }
.index-topic > summary::after { content: ''; width: 7px; height: 7px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(-45deg); opacity: .6; transition: transform 260ms ease; margin-right: 5px; }
.index-topic[data-expanded="true"] > summary::after { transform: rotate(45deg); }
.index-topic > summary:hover { background: rgba(128,128,128,.07); }
.index-topic-links { padding: 0 12px; box-sizing: border-box; overflow: hidden; }
.index-topic-links > :last-child { margin-bottom: 16px; }
.index-topic-links > a, .index-topic-links > span { display: block; padding: 11px 10px; min-height: 44px; box-sizing: border-box; color: inherit; font: 400 15px/1.5 Inter, sans-serif; text-decoration: none; overflow-wrap: anywhere; }
.index-topic-links > a:hover { background: rgba(128,128,128,.08); text-decoration: underline; text-underline-offset: 4px; }
.index-topic-links > [aria-current] { border-left: 2px solid currentColor; font-weight: 600; }
.index-topic > summary:focus-visible, .index-topic-links > a:focus-visible { outline: 2px solid currentColor; outline-offset: -2px; }
.fi-drawer { width: min(420px, 94vw); }
#index-panel { width: min(420px, 94vw); }
.fi-body, #index-list { padding: 8px 16px 24px; }

.fi-drawer, #index-panel { transition: transform 340ms cubic-bezier(.22,.75,.22,1); }
.fi-backdrop, .index-backdrop { transition: opacity 300ms ease, visibility 300ms; }
.index-topic > summary, .index-topic-links > a { transition: background-color 160ms ease, color 160ms ease; }
@media (prefers-reduced-motion: reduce) {
  .fi-drawer, #index-panel, .fi-backdrop, .index-backdrop,
  .index-topic > summary, .index-topic > summary::after,
  .index-topic-links > a { transition: none; }
}
