.cat-floor { scroll-margin-top: 20px; }
.catalog-enhanced .cat-floor:not(.catalog-open) > .cat-subs { display: none; }
.cat-floor-head { gap: 12px; }
.cat-floor-num { margin-right: 0; background: #e60012; }
.catalog-floor-toggle,.catalog-items-toggle {
    font: inherit; cursor: pointer; border: 1px solid #f1d7dc;
    background: #fff7f8; color: #b50920; border-radius: 6px;
    padding: 8px 12px; min-height: 40px; flex-shrink: 0;
}
.catalog-items-toggle { margin-top: 12px; font-size: 12px; background: #fff; }
.catalog-enhanced .cat-sub:not(.catalog-items-open) .cat-item-chip:nth-child(n+7) { display: none; }
.catalog-enhanced .catalog-searching .cat-sub .cat-item-chip:nth-child(n+7) { display: inline-flex; }
.catalog-searching .catalog-items-toggle { display: none; }
.catalog-searching .catalog-floor-toggle { visibility: hidden; }
.cat-subs { grid-template-columns: repeat(2,minmax(0,1fr)); }
.cat-sub { padding: 20px; }
.cat-sub h3 { font-size: 15px; line-height: 1.6; }
.cat-items { gap: 8px; }
.cat-item-chip { display: inline-flex; align-items: center; min-height: 36px; box-sizing: border-box; line-height: 1.5; overflow-wrap: anywhere; }
.catalog-index a.catalog-active { color: #c40018; background: #fff1f3; box-shadow: inset 3px 0 #e60012; font-weight: bold; }
.cat-idx-num { color: inherit; }
.catalog-index a[hidden],.cat-floor[hidden],.cat-sub[hidden] { display: none !important; }
.catalog-floor-toggle:focus-visible,.catalog-items-toggle:focus-visible,.cat-item-chip:focus-visible,.cat-idx-item:focus-visible { outline: 2px solid #e60012; outline-offset: 3px; }
@media(max-width:900px) {
    .catalog-index { position: sticky; top: 0; z-index: 20; border-radius: 0; }
    .catalog-index .idx-head { display:none; }
    #catalog-index { display: flex; overflow-x: auto; overscroll-behavior-x: contain; }
    .catalog-index a.cat-idx-item { flex-shrink: 0; min-height: 44px; padding: 8px 14px; box-sizing: border-box; white-space: nowrap; }
    .catalog-index a.catalog-active { box-shadow: inset 0 -3px #e60012; }
    .cat-idx-num { min-width: auto; margin-right: 6px; }
    .cat-floor { scroll-margin-top: 65px; }
    .cat-subs { grid-template-columns: 1fr; }
    .cat-floor-head { padding: 14px 12px; gap: 10px; }
    .cat-floor-titles h2 { font-size: 17px; }
    .cat-sub { padding: 16px; }
    .cat-item-chip { min-height: 42px; }
    .catalog-floor-toggle { font-size: 12px; padding: 8px; }
}
