.wvc-brand-image {
    display: block;
    width: min(94px, 100%);
    height: 72px;
    object-fit: contain;
}

.wvc-makes {
    gap: var(--wvc-gap, 18px);
}

.wvc-make-card {
    position: relative;
    max-width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 14px;
    min-height: 184px;
    padding: 24px 20px 20px;
    border-color: #e6e8eb;
    border-radius: 12px;
    box-shadow: 0 2px 10px rgba(28, 39, 49, .035);
    text-align: center;
}

.wvc-make-card:hover {
    border-color: #83c320;
    box-shadow: 0 7px 20px rgba(28, 39, 49, .1);
}

.wvc-make-logo {
    display: grid;
    place-items: center;
    width: min(132px, 100%);
    height: 96px;
    overflow: hidden;
}

.wvc-make-logo .wvc-brand-image {
    width: min(126px, 100%);
    height: 92px;
}

.wvc-brand-placeholder {
    display: grid;
    place-items: center;
    width: 64px;
    height: 52px;
    border-radius: 10px;
    background: #f3f5f7;
    filter: grayscale(1);
    font-size: 30px;
}

.wvc-make-name {
    min-width: 0;
    color: #2d3338;
    font-size: 19px;
    line-height: 1.25;
}

.wvc-make-name strong {
    font: inherit;
    font-weight: 700;
}

.wvc-make-arrow {
    color: #687078;
    font-size: 30px;
    font-weight: 300;
    line-height: 1;
}

.wvc-title-image {
    width: 180px;
    height: 100px;
    border-radius: 10px;
    object-fit: contain;
    background: #f7f8f9;
}

.wvc-model-card {
    grid-template-columns: 104px minmax(0, 1fr) auto;
}

.wvc-model-image {
    width: 106px;
    height: 72px;
    border-radius: 7px;
    object-fit: contain;
    background: #f7f8f9;
}

.wvc-model-image-fallback { opacity: .72; }

.wvc-product-heading {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 16px;
    margin: 28px 0 16px;
    padding-bottom: 10px;
    border-bottom: 2px solid #e4e7ea;
}

.wvc-product-heading h2,
.wvc-product-heading p { margin: 0; }

.wcat-make-table td { vertical-align: middle; }
.wcat-image-preview { display: inline-flex; width: 76px; min-height: 54px; margin-right: 10px; vertical-align: middle; }
.wcat-image-preview img { width: 76px; height: 54px; object-fit: contain; border: 1px solid #dcdcde; border-radius: 4px; background: #fff; }
.wcat-remove-image { margin-left: 8px; }
.wcat-auto-save-status { display: inline-block; min-width: 76px; margin-left: 10px; color: #646970; font-size: 12px; }
.wcat-auto-save-status.is-saved { color: #16803b; }
.wcat-auto-save-status.is-error { color: #b32d2e; }
.wcat-model-table th:first-child { width: 38%; }
.wcat-model-table th:nth-child(2) { width: 110px; }

@media (max-width: 1100px) {
    .wvc-makes { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 700px) {
    .wvc-makes { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .wvc-make-card { min-height: 154px; padding: 16px 10px; }
    .wvc-make-logo { width: 100px; height: 72px; }
    .wvc-make-logo .wvc-brand-image { width: 96px; height: 68px; }
    .wvc-make-name { font-size: 16px; }
    .wvc-title-image { width: 105px; height: 64px; }
    .wvc-model-card { grid-template-columns: 78px minmax(0, 1fr) auto; }
    .wvc-model-image { width: 70px; height: 50px; }
    .wvc-product-heading { align-items: start; flex-direction: column; }
}

@media (max-width: 430px) {
    .wvc-makes { grid-template-columns: 1fr; }
}

/* --- W Catalog: вградени решетки (шорткодове) --- */
.wvc-catalog.wvc-inline {
    position: static;
    left: auto;
    width: auto;
    max-width: 100%;
    margin: 0 0 34px;
    transform: none;
}

/* Решетката се подрежда според ширината на контейнера, а не на екрана. */
.wvc-catalog .wvc-grid.wvc-cols {
    grid-template-columns: repeat(auto-fill, minmax(max(var(--wvc-card-min, 190px), calc((100% - (var(--wvc-cols, 4) - 1) * var(--wvc-gap, 18px)) / var(--wvc-cols, 4))), 1fr));
}

.wvc-section-heading {
    margin: 0 0 22px;
}

.wvc-section-heading h2 {
    margin: 0 0 6px;
    font-size: 28px;
    line-height: 1.2;
}

.wvc-section-heading p {
    margin: 0;
    color: #68717a;
    font-size: 16px;
}

.wvc-cat-icon {
    display: grid;
    place-items: center;
    width: min(126px, 100%);
    height: 92px;
    border-radius: 12px;
    background: linear-gradient(145deg, #f9fafb, #edf1f4);
    font-size: 46px;
    line-height: 1;
}

.wvc-cat-image {
    display: block;
    width: min(126px, 100%);
    height: 92px;
    object-fit: contain;
}

.wvc-make-card .wvc-make-count {
    display: block;
    margin-top: 2px;
    color: #737b83;
    font-size: 14px;
    font-weight: 400;
}

.wvc-empty-note {
    margin: 12px 0 0;
    color: #68717a;
}

@media (max-width: 700px) {
    .wvc-section-heading h2 { font-size: 23px; }
}

/* --- W Catalog: каталог по вид част --- */
.wvc-parts-flow .wvc-model-list {
    grid-template-columns: repeat(auto-fill, minmax(min(100%, 260px), 1fr));
}

.wvc-parts-flow .wvc-model-card {
    grid-template-columns: 92px minmax(0, 1fr) auto;
    min-height: 92px;
}

.wvc-parts-flow .wvc-model-image {
    width: 88px;
    height: 62px;
}

.wvc-engine-filter {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 9px;
    margin: 0 0 24px;
}

.wvc-engine-filter > span {
    font-weight: 700;
}

.wvc-engine-chip {
    padding: 8px 14px;
    border: 1px solid #dfe3e7;
    border-radius: 20px;
    background: #fff;
    color: #343a40 !important;
    font-size: 14px;
    text-decoration: none !important;
    transition: .15s;
}

.wvc-engine-chip:hover {
    border-color: var(--wvc-orange, #83c320);
}

.wvc-engine-chip.is-active {
    border-color: var(--wvc-orange, #83c320);
    background: var(--wvc-orange, #83c320);
    color: #fff !important;
}



/* Картите се смаляват според контейнера, а не според ширината на екрана. */
@container wvc-catalog (max-width: 620px) {
    .wvc-make-card { min-height: 150px; padding: 16px 12px 14px; gap: 10px; }
    .wvc-make-logo { height: 74px; }
    .wvc-make-name { font-size: 16px; }
}

.wvc-catalog .wvc-grid,
.wvc-catalog .wvc-model-list { container-type: inline-size; container-name: wvc-catalog; }
