/* ============================================================
   Страница каталога /catalog/parts/ — вкладки «по типу / по бренду»
   ============================================================ */
.cat-tabs { display: flex; gap: 14px; margin-top: 34px; }
.cat-tab {
    flex: 1 1 0; height: 74px; padding: 0 24px; border: 0; border-radius: 10px;
    font-size: 22px; font-weight: 700; letter-spacing: -0.01em; cursor: pointer;
    transition: all .15s; background: #F4F4F6; color: #47484F;
    box-shadow: inset 0 0 0 1px #E4E4E9;
}
.cat-tab.active { background: #D31E23; color: #ffffff; box-shadow: 0 10px 24px rgba(211,30,35,0.28); }

.cat-panel { display: none; }
.cat-panel.active { display: block; }

/* Типы запчастей */
.cat-types-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; margin-top: 34px; }
.cat-type-card { border: 1px solid #ECECEF; border-radius: 16px; padding: 30px 32px; background: #fff; }
.cat-type-head { display: flex; align-items: center; gap: 16px; }
.cat-type-head svg { flex: 0 0 auto; }
.cat-type-name { font-size: 23px; font-weight: 700; color: #060713; }
.cat-type-name:hover { color: #D31E23; }
.cat-type-count { margin-left: auto; font-size: 14px; color: #9A9BA3; }
.cat-type-subs { margin-top: 20px; display: grid; grid-template-columns: 1fr 1fr; gap: 11px 28px; }
.cat-type-subs a { font-size: 15px; color: #34353D; line-height: 1.35; }
.cat-type-subs a:hover { color: #D31E23; }

/* Бренды */
.cat-brands-grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 20px; margin-top: 34px; }
.cat-brand-card {
    display: flex; flex-direction: column; align-items: center; justify-content: center;
    gap: 14px; min-height: 90px; border: 1px solid #ECECEF; border-radius: 14px;
    padding: 26px 16px 20px; background: #fff; text-align: center; transition: all .15s;
}
.cat-brand-card:hover { border-color: #D31E23; box-shadow: 0 12px 28px rgba(6,7,19,0.08); }
.cat-brand-name { font-size: 15px; font-weight: 600; line-height: 1.3; color: #060713; }

@media (max-width: 900px) {
    .cat-types-grid { grid-template-columns: 1fr; }
    .cat-brands-grid { grid-template-columns: repeat(3, 1fr); }
    .cat-tab { font-size: 16px; }
}

/* ============================================================
   Переключатели подразделов (страницы раздела /catalog/parts/<тип>/)
   ============================================================ */
.pt-tabs { margin-bottom: 28px; }
.pt-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }
.pt-tab {
    display: flex; align-items: center; justify-content: center;
    min-height: 56px; padding: 6px 14px; border: 0; border-radius: 8px;
    font-family: inherit; font-size: 16px; font-weight: 700; letter-spacing: -0.01em; line-height: 1.15;
    text-align: center; cursor: pointer; transition: all .15s;
    text-decoration: none;
    background: #F4F4F6; color: #47484F;
    box-shadow: inset 0 0 0 1px #E4E4E9;
}
.pt-tab:hover { background: #EAEAEE; color: #060713; }
.pt-tab.active { background: #D31E23; color: #ffffff; box-shadow: 0 8px 18px rgba(211,30,35,0.26); }
.pt-tab.active:hover { background: #BC1B1F; color: #ffffff; }
.pt-tab.pt-more { background: #ffffff; color: #D31E23; box-shadow: inset 0 0 0 1px #D31E23; }
.pt-tab.pt-more:hover { background: #FDF1F1; color: #A9171B; }
.pt-hide { display: none; }
.pt-grid.expanded .pt-hide { display: flex; }

@media (max-width: 900px) {
    .pt-grid { grid-template-columns: repeat(2, 1fr); }
}
