.jc-catalog { max-width: 76rem; margin: 0 auto; overflow-wrap: anywhere; }
.jc-catalog .jc-reference { color: #465563; font-size: .95rem; }
.jc-catalog .jc-search { padding: 1.25rem; background: #eef4f7; border-radius: .6rem; }
.jc-catalog .jc-search label { display: block; font-weight: 700; margin-bottom: .5rem; }
.jc-catalog .jc-search-controls { display: flex; gap: .6rem; flex-wrap: wrap; }
.jc-catalog .jc-search input { min-width: 0; flex: 1 1 15rem; }
.jc-catalog .jc-search button { cursor: pointer; }
.jc-catalog .jc-tree { list-style: none; padding-left: 1rem; margin: .5rem 0; border-left: 1px solid #b7c8d0; }
.jc-catalog > .jc-tree { padding-left: 0; border-left: 0; }
.jc-catalog .jc-tree li { margin: .45rem 0; }
.jc-catalog .jc-tree summary { cursor: pointer; padding: .5rem; background: #f3f6f7; border-radius: .35rem; font-weight: 600; }
.jc-catalog .jc-branch { padding: .45rem 0 .45rem 1rem; }
.jc-catalog .jc-code { color: #465563; font-size: .85em; font-variant-numeric: tabular-nums; white-space: nowrap; }
.jc-catalog .jc-breadcrumb ol { display: flex; flex-wrap: wrap; list-style: none; padding: 0; gap: .3rem; }
.jc-catalog .jc-breadcrumb li:not(:last-child)::after { content: "›"; margin: 0 .3rem; }
.jc-catalog .jc-results li { margin-bottom: 1rem; }
.jc-catalog .jc-results small { display: block; color: #465563; }
.jc-catalog .jc-pagination { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem; margin: 1.5rem 0; }
.jc-catalog a:focus-visible, .jc-catalog summary:focus-visible, .jc-catalog input:focus-visible, .jc-catalog button:focus-visible { outline: 3px solid #005ea8; outline-offset: 3px; }
@media (max-width: 480px) {
    .jc-catalog .jc-search-controls > * { width: 100%; }
    .jc-catalog .jc-tree, .jc-catalog .jc-branch { padding-left: .65rem; }
}
