.nhis-catalog-page { margin: 0; background: #2c2c2c; color: #c6c6c6; font-family: Arial, "Microsoft YaHei", sans-serif; }
[data-theme="light"] .nhis-catalog-page,
.nhis-catalog-page[data-theme="light"] { background: #fff; color: #222; }
.nhis-catalog {
    max-width: 1380px;
    margin: 0 auto;
    padding: 48px 32px 64px;
    color: inherit;
    letter-spacing: 0;
}
.nhis-catalog-header { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding-bottom: 28px; border-bottom: 1px solid #8884; }
.nhis-catalog h1 { font-size: 32px; margin: 0 0 8px; }
.nhis-catalog-header p { margin: 0; font-size: 14px; opacity: .7; }
.nhis-catalog-layout { display: grid; grid-template-columns: 190px minmax(0, 1fr); gap: 36px; padding-top: 28px; }
.nhis-catalog-nav { position: sticky; top: 96px; align-self: start; display: grid; gap: 4px; }
.nhis-catalog-nav a { display: flex; justify-content: space-between; gap: 12px; padding: 10px 8px; }
.nhis-catalog a { color: inherit; text-decoration: none; }
.nhis-catalog a:hover { background: #8881; }
.nhis-catalog a:focus-visible { outline: 2px solid currentColor; outline-offset: -2px; }
.nhis-catalog-nav span, .nhis-catalog h2 span { opacity: .55; font-size: 13px; font-weight: normal; }
.nhis-catalog-group { margin-bottom: 36px; scroll-margin-top: 100px; }
.nhis-catalog h2 { display: flex; align-items: center; gap: 12px; font-size: 18px; margin: 0 0 12px; }
.nhis-catalog ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 24px; list-style: none; padding: 0; margin: 0; }
.nhis-catalog li { min-width: 0; border-bottom: 1px solid #8883; }
.nhis-catalog li a { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 15px 8px; min-height: 58px; box-sizing: border-box; font-size: 14px; line-height: 1.6; }
.nhis-catalog li span { overflow-wrap: anywhere; }
.nhis-catalog li i { flex-shrink: 0; opacity: .45; font-size: 12px; }
@media (max-width: 800px) {
    .nhis-catalog { padding: 32px 20px 40px; }
    .nhis-catalog-header { align-items: stretch; flex-direction: column; }
    .nhis-catalog-layout { grid-template-columns: 1fr; gap: 24px; }
    .nhis-catalog-nav { position: static; grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .nhis-catalog ul { grid-template-columns: 1fr; }
}
