/* BBLW squish — лёгкое «растягивание по высоте» при наведении, сжатие при клике */

:root {
    --bblw-squish-y-hover: 1.1;
    --bblw-squish-y-active: 0.92;
    --bblw-squish-card-y-hover: 1.06;
    --bblw-squish-shadow-hover: 3px 5px 0 var(--bblw-ink, #0a0a0a);
    --bblw-squish-shadow-active: 1px 1px 0 var(--bblw-ink, #0a0a0a);
}

.bblw-squish,
.bblw-site-body button:not(:disabled):not([data-bblw-no-squish]),
.bblw-site-body input[type="submit"]:not(:disabled):not([data-bblw-no-squish]),
.bblw-site-body a.button-link:not([data-bblw-no-squish]),
.bblw-site-body a.link-button:not([data-bblw-no-squish]),
.bblw-site-body a.reset-filters-button:not([data-bblw-no-squish]),
.bblw-site-body .bblw-site-nav a:not([data-bblw-no-squish]),
.bblw-site-body .carousel-nav:not([data-bblw-no-squish]),
.bblw-site-body .bblw-tile:not([data-bblw-no-squish]),
.bblw-site-body .random-carousel-card:not([data-bblw-no-squish]),
.bblw-site-body .card-grid .card:not([data-bblw-no-squish]),
.bblw-site-body a.card:not([data-bblw-no-squish]),
.bblw-site-body .bblw-app-footer-btn:not([data-bblw-no-squish]),
.bblw-site-body .bblw-app-footer-link:not([data-bblw-no-squish]),
.bblw-site-body .filters-dropdown > summary:not([data-bblw-no-squish]),
.bblw-site-body .bblw-identity__avatar:not([data-bblw-no-squish]),
.bblw-site-body .bblw-identity__brand-pad:not([data-bblw-no-squish]),
.bblw-site-body .bblw-identity__profile:not([data-bblw-no-squish]),
.bblw-site-body .bblw-chip:not([data-bblw-no-squish]),
.bblw-site-body .category-chip:not([data-bblw-no-squish]),
.bblw-site-body .location-chip:not([data-bblw-no-squish]),
.bblw-site-body .badge:not([data-bblw-no-squish]),
.bblw-site-body a.chip-link:not([data-bblw-no-squish]),
body.auth-pixel-page button:not(:disabled):not([data-bblw-no-squish]),
body.auth-pixel-page input[type="submit"]:not(:disabled):not([data-bblw-no-squish]) {
    transform-origin: center bottom;
    transition:
        transform 0.12s ease,
        box-shadow 0.12s ease,
        filter 0.12s ease;
}

.bblw-site-body button:not(:disabled):not([data-bblw-no-squish]):hover,
.bblw-site-body button:not(:disabled):not([data-bblw-no-squish]):focus-visible,
.bblw-site-body input[type="submit"]:not(:disabled):not([data-bblw-no-squish]):hover,
.bblw-site-body input[type="submit"]:not(:disabled):not([data-bblw-no-squish]):focus-visible,
.bblw-site-body a.button-link:not([data-bblw-no-squish]):hover,
.bblw-site-body a.button-link:not([data-bblw-no-squish]):focus-visible,
.bblw-site-body a.link-button:not([data-bblw-no-squish]):hover,
.bblw-site-body a.link-button:not([data-bblw-no-squish]):focus-visible,
.bblw-site-body a.reset-filters-button:not([data-bblw-no-squish]):hover,
.bblw-site-body a.reset-filters-button:not([data-bblw-no-squish]):focus-visible,
.bblw-site-body .bblw-site-nav a:not([data-bblw-no-squish]):hover,
.bblw-site-body .bblw-site-nav a:not([data-bblw-no-squish]):focus-visible,
.bblw-site-body .carousel-nav:not([data-bblw-no-squish]):hover,
.bblw-site-body .carousel-nav:not([data-bblw-no-squish]):focus-visible,
.bblw-site-body .bblw-tile:not([data-bblw-no-squish]):hover,
.bblw-site-body .bblw-tile:not([data-bblw-no-squish]):focus-visible,
.bblw-site-body .bblw-app-footer-btn:not([data-bblw-no-squish]):hover,
.bblw-site-body .bblw-app-footer-btn:not([data-bblw-no-squish]):focus-visible,
.bblw-site-body .bblw-app-footer-link:not([data-bblw-no-squish]):hover,
.bblw-site-body .bblw-app-footer-link:not([data-bblw-no-squish]):focus-visible,
.bblw-site-body .filters-dropdown > summary:not([data-bblw-no-squish]):hover,
.bblw-site-body .filters-dropdown > summary:not([data-bblw-no-squish]):focus-visible,
.bblw-site-body .bblw-identity__avatar:not([data-bblw-no-squish]):hover,
.bblw-site-body .bblw-identity__avatar:not([data-bblw-no-squish]):focus-visible,
.bblw-site-body .bblw-identity__brand-pad:not([data-bblw-no-squish]):hover,
.bblw-site-body .bblw-identity__brand-pad:not([data-bblw-no-squish]):focus-visible,
.bblw-site-body .bblw-identity__profile:not([data-bblw-no-squish]):hover,
.bblw-site-body .bblw-identity__profile:not([data-bblw-no-squish]):focus-visible,
.bblw-site-body .bblw-chip:not([data-bblw-no-squish]):hover,
.bblw-site-body .bblw-chip:not([data-bblw-no-squish]):focus-visible,
.bblw-site-body .category-chip:not([data-bblw-no-squish]):hover,
.bblw-site-body .category-chip:not([data-bblw-no-squish]):focus-visible,
.bblw-site-body .location-chip:not([data-bblw-no-squish]):hover,
.bblw-site-body .location-chip:not([data-bblw-no-squish]):focus-visible,
.bblw-site-body .badge:not([data-bblw-no-squish]):hover,
.bblw-site-body .badge:not([data-bblw-no-squish]):focus-visible,
.bblw-site-body a.chip-link:not([data-bblw-no-squish]):hover,
.bblw-site-body a.chip-link:not([data-bblw-no-squish]):focus-visible,
body.auth-pixel-page button:not(:disabled):not([data-bblw-no-squish]):hover,
body.auth-pixel-page button:not(:disabled):not([data-bblw-no-squish]):focus-visible,
body.auth-pixel-page input[type="submit"]:not(:disabled):not([data-bblw-no-squish]):hover,
body.auth-pixel-page input[type="submit"]:not([data-bblw-no-squish]):focus-visible {
    transform: scaleY(var(--bblw-squish-y-hover));
    box-shadow: var(--bblw-squish-shadow-hover) !important;
}

.bblw-site-body .random-carousel-card:not([data-bblw-no-squish]):hover,
.bblw-site-body .random-carousel-card:not([data-bblw-no-squish]):focus-visible,
.bblw-site-body .card-grid .card:not([data-bblw-no-squish]):hover,
.bblw-site-body .card-grid .card:not([data-bblw-no-squish]):focus-visible {
    transform: scaleY(var(--bblw-squish-card-y-hover));
    box-shadow: var(--bblw-squish-shadow-hover) !important;
    z-index: 5;
    position: relative;
}

.bblw-site-body .random-carousel-card.is-opening,
.bblw-site-body .card-grid .card.is-opening {
    transform: scaleY(var(--bblw-squish-card-y-hover));
    box-shadow: var(--bblw-squish-shadow-hover) !important;
}

/* Плитки лаунчера — сохраняем bevel */
.bblw-tile:not([data-bblw-no-squish]):hover,
.bblw-tile:not([data-bblw-no-squish]):focus-visible {
    filter: brightness(1.06);
    box-shadow:
        inset 0 -4px 0 rgba(0, 0, 0, 0.22),
        inset 0 3px 0 rgba(255, 255, 255, 0.25),
        4px 6px 0 #0a0a0a !important;
}

.bblw-tile:not([data-bblw-no-squish]):active {
    transform: scaleY(var(--bblw-squish-y-active)) translate(2px, 2px) !important;
    box-shadow:
        inset 0 -2px 0 rgba(0, 0, 0, 0.3),
        2px 2px 0 #0a0a0a !important;
}

.bblw-site-body button:not(:disabled):not([data-bblw-no-squish]):active,
.bblw-site-body input[type="submit"]:not(:disabled):not([data-bblw-no-squish]):active,
.bblw-site-body a.button-link:not([data-bblw-no-squish]):active,
.bblw-site-body a.link-button:not([data-bblw-no-squish]):active,
.bblw-site-body a.reset-filters-button:not([data-bblw-no-squish]):active,
.bblw-site-body .bblw-site-nav a:not([data-bblw-no-squish]):active,
.bblw-site-body .carousel-nav:not([data-bblw-no-squish]):active,
.bblw-site-body .bblw-app-footer-btn:not([data-bblw-no-squish]):active,
.bblw-site-body .bblw-app-footer-link:not([data-bblw-no-squish]):active,
.bblw-site-body .filters-dropdown > summary:not([data-bblw-no-squish]):active,
.bblw-site-body .bblw-identity__avatar:not([data-bblw-no-squish]):active,
.bblw-site-body .bblw-identity__brand-pad:not([data-bblw-no-squish]):active,
.bblw-site-body .bblw-identity__profile:not([data-bblw-no-squish]):active,
.bblw-site-body .bblw-chip:not([data-bblw-no-squish]):active,
.bblw-site-body .category-chip:not([data-bblw-no-squish]):active,
.bblw-site-body .location-chip:not([data-bblw-no-squish]):active,
.bblw-site-body .badge:not([data-bblw-no-squish]):active,
.bblw-site-body a.chip-link:not([data-bblw-no-squish]):active,
.bblw-site-body .random-carousel-card:not([data-bblw-no-squish]):active,
.bblw-site-body .card-grid .card:not([data-bblw-no-squish]):active,
body.auth-pixel-page button:not(:disabled):not([data-bblw-no-squish]):active,
body.auth-pixel-page input[type="submit"]:not(:disabled):not([data-bblw-no-squish]):active {
    transform: scaleY(var(--bblw-squish-y-active)) translate(2px, 2px) !important;
    box-shadow: var(--bblw-squish-shadow-active) !important;
}

/* Зоны карты */
.catalog-hub__map .room-zone {
    transform-box: fill-box;
    transform-origin: center bottom;
    transition:
        fill 0.12s ease,
        transform 0.12s ease,
        opacity 0.12s ease;
}

.catalog-hub__map .room-zone:hover,
.catalog-hub__map .room-zone:focus-visible {
    fill: #ffea00;
    transform: scaleY(1.08);
}

@media (prefers-reduced-motion: reduce) {
    .bblw-squish,
    .bblw-site-body button,
    .bblw-site-body a.button-link,
    .bblw-site-body .random-carousel-card,
    .bblw-site-body .category-chip,
    .bblw-site-body .location-chip,
    .bblw-site-body .badge,
    .catalog-hub__map .room-zone {
        transition: none !important;
    }

    .bblw-site-body button:hover,
    .bblw-site-body a.button-link:hover,
    .bblw-site-body .random-carousel-card:hover,
    .bblw-site-body .category-chip:hover,
    .bblw-site-body .location-chip:hover,
    .bblw-site-body .badge:hover,
    .catalog-hub__map .room-zone:hover {
        transform: none !important;
    }
}
