.kv-flags-on #search-results-header .search-results-title,
.kv-flags-on #search-results-header .search-results-query {
    display: none;
}

.kv-flags-on #search-results-header .search-results-perex {
    margin: 0 0 32px;
}

.kv-flags-on #search-results-header .search-results-perex p {
    margin: 0;

    font-size: 13px;
    line-height: 18.2px;
    color: #A6A6A6;
}

@media (max-width: 767px) {
    .type-search.kv-flags-on:not(.kv-list-2col) #content #search-products-container.products-block {
        grid-template-columns: minmax(0, 1fr);
        row-gap: 16px;
    }

    .type-search.kv-flags-on:not(.kv-list-2col) #search-products-container .product a.image > img {
        aspect-ratio: 4 / 3;
    }

    .kv-flags-on #search-results-load-more .btn.loadMore__button {
        width: 100%;
    }
}

.kv-flags-on .search-results-section .search-results-section-title {
    margin: 0 0 19px;

    font-size: var(--size-h4);
    line-height: 1.1;
}

.kv-flags-on #search-results-load-more.loadMore {
    margin: 32px 0 29px;

    text-align: left;
}

.kv-flags-on #search-results-load-more .btn.loadMore__button {
    padding: 13px 100px;

    font-size: var(--size-smaller);
    font-weight: 700;
    line-height: 1;
    color: #AB2D7B;
}

.kv-flags-on #search-results-load-more .btn.loadMore__button:hover {
    color: #FFF;
}

.search-overlay .search-overlay__content {
    border-radius: 16px;
    box-shadow: 0 24px 48px -12px rgba(18, 18, 18, 0.25), 0 0 0 1px #F1E4EC;
}

.search-overlay .search-overlay__header {
    border-bottom: 1px solid #F1E4EC;
}

.search-overlay .search-overlay__input {
    height: 44px;
    padding: 5px 50px 5px 20px;

    border: 1px solid #E6D3DE;
    border-radius: 50px;
    background-color: #FFF;
    color: var(--color-text);
    font-size: 16px;
    line-height: 26px;
}

.search-overlay .search-overlay__input:focus,
.search-overlay .search-overlay__input:focus-visible {
    border-color: var(--color-primary);
    outline: none;
}

.search-overlay .search-overlay__submit {
    width: 44px;
    height: 44px;
}

.search-overlay .search-overlay__close {
    color: var(--color-text-muted);
}

.search-overlay .search-overlay__section-title {
    border-bottom: 1px solid #F1E4EC;
    color: var(--color-text);
    font-size: 16px;
    font-weight: 700;
}

.search-overlay__products .search-overlay__product {
    border-radius: 8px;
}

.search-overlay__products .search-overlay__product-link {
    border: 1px solid #D9D9D9;
    border-radius: 8px;
    background-color: #FFF;
    transition: border-color 0.2s ease, background-color 0.2s ease;
}

.search-overlay__products .search-overlay__product-link:hover {
    border-color: #CC6FA7;
    background-color: #FDF5FA;
}

.search-overlay__products .search-overlay__product-link:focus-visible {
    background-color: #FDF5FA;
    outline: 2px solid var(--color-primary);
    outline-offset: -2px;
}

.search-overlay__products .search-overlay__product-link > .flags.flags-default {
    top: 6px;
    left: 6px;
}

.search-overlay__products .search-overlay__product-link > .flags.flags-default > .flag {
    padding: 3px 8px;

    border-radius: 999px;
    font-weight: 700;
    line-height: 1.3;
}

.search-overlay__products .search-overlay__product-link:has(.flags.flags-default) {
    padding-top: 32px;
}

.search-overlay__products .search-overlay__product-image {
    background-color: #FFF;
}

.search-overlay__products .search-overlay__product-image img {
    object-fit: contain;
}

.search-overlay__products .search-overlay__product-title {
    color: #D6345A;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.2;
}


.search-overlay__products .search-overlay__product-title .changable {
    display: block;

    margin-top: 6px;

    color: #B0213F;
    font-size: 12px;
    font-weight: 600;
    line-height: 15px;
}

.search-overlay__products .search-overlay__product-title .changable span {
    color: var(--color-text);
    font-weight: 800;
}

.search-overlay__products .search-overlay__product-price {
    color: #1F1F1F;
    font-size: 16px;
    font-weight: 700;
}

.search-overlay__products .search-overlay__product-add-btn {
    background: var(--color-primary);
}

.search-overlay__products .search-overlay__product-add-btn:hover {
    background: #96105F;
}

.search-overlay mark {
    padding: 0;

    background-color: transparent;
    color: var(--color-primary);
    font-weight: 800;
}

.search-overlay__categories .search-overlay__category-link,
.search-overlay__articles .search-overlay__article-link,
.search-overlay__brands .search-overlay__brand-link {
    border: 1px solid #D9D9D9;
    border-radius: 8px;
    background-color: #FFF;
    color: var(--color-text);
    font-weight: 600;
    transition: border-color 0.2s ease, background-color 0.2s ease;
}

.search-overlay__categories .search-overlay__category-link:hover,
.search-overlay__articles .search-overlay__article-link:hover,
.search-overlay__brands .search-overlay__brand-link:hover {
    border-color: #CC6FA7;
    background-color: #FDF5FA;
}

.search-overlay .search-overlay__show-all-link {
    padding: 10px 16px;

    border: 1px solid var(--color-primary);
    border-radius: 50px;
    color: var(--color-primary);
    font-size: 13px;
    font-weight: 700;
}

.search-overlay .search-overlay__show-all-link:hover {
    background-color: var(--color-primary);
    color: #FFF;
}

/* ---- Výsledkovka: filtry jako v kategorii redesignu (šedý box, rozbalovací pole) ---- */

.kv-flags-on #kv-search-toolbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 24px;

    margin: 0 0 18px;
}

.kv-flags-on #kv-search-toolbar #search-results-count {
    flex: 1 1 auto;

    margin: 0;

    font-size: 13px;
    line-height: 18.2px;
    color: #A6A6A6;
}

.kv-flags-on #kv-search-toolbar #search-filters {
    margin: 0;
    padding: 0;

    background: none;
}

.kv-flags-on #kv-search-toolbar .search-filter-checkbox {
    display: inline-flex;
    align-items: center;
    gap: 10px;

    min-height: 44px;
    margin: 0;

    font-size: 14px;
    color: #121212;
    cursor: pointer;
}

.kv-flags-on #kv-search-toolbar #filter-in-stock {
    position: static;
    width: 18px;
    height: 18px;
    margin: 0;

    clip: auto;
    border: 1px solid #D9D9D9;
    border-radius: 4px;
    background: #FFF center / 12px 10px no-repeat;
    appearance: none;
    -webkit-appearance: none;
    cursor: pointer;
}

.kv-flags-on #kv-search-toolbar #filter-in-stock:checked {
    border-color: #AB2D7B;
    background-color: #AB2D7B;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 10'%3E%3Cpath fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M1 5.2 4.4 8.6 11 1.6'/%3E%3C/svg%3E");
}

.kv-flags-on #search-results-header .search-results-perex:not(:has(#search-results-count)) {
    display: none;
}

.kv-flags-on #revelor-filters-container .revelor-filters {
    display: flex;
    flex-direction: column;
    gap: 18px;

    margin: 0 0 18px;
}

.kv-flags-on #revelor-filters-container .revelor-filters__bar {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 20px 18px;
    align-items: start;

    padding: 20px 24px 24px;

    border-radius: 10px;
    background-color: #F4F4F4;
}

.kv-flags-on #revelor-filters-container .revelor-filters__active {
    order: 1;

    margin: 0;
}

.kv-flags-on #revelor-filters-container .revelor-filters__section {
    display: block;

    min-width: 0;
}

.kv-flags-on #revelor-filters-container .kv-filter-label {
    display: block;

    margin-bottom: 6px;

    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 14px;
    font-weight: 700;
    line-height: 19.6px;
    color: #121212;
}

.kv-flags-on #revelor-filters-container .revelor-filters__heading {
    display: flex;
    align-items: center;
    gap: 10px;

    width: 100%;
    min-height: 44px;
    padding: 8px 13px;

    border: 1px solid #D9D9D9;
    border-radius: 8px;
    background: #FFF;
    font-family: inherit;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.3;
    color: #A6A6A6;
    text-align: left;
    transition: border-color 0.2s ease;
}

.kv-flags-on #revelor-filters-container .revelor-filters__heading:hover {
    border-color: #CC6FA7;
    background: #FFF;
}

.kv-flags-on #revelor-filters-container .revelor-filters__section--open .revelor-filters__heading {
    border-color: #96105F;
    color: #121212;
}

.kv-flags-on #revelor-filters-container .revelor-filters__section.is-chosen .revelor-filters__heading {
    border-color: #AB2D7B;
    color: #121212;
    font-weight: 500;
}

.kv-flags-on #revelor-filters-container .kv-filter-title,
.kv-flags-on #revelor-filters-container .revelor-filters__heading-count {
    display: none;
}

.kv-flags-on #revelor-filters-container .kv-filter-value {
    flex: 1 1 auto;

    min-width: 0;

    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.kv-flags-on #revelor-filters-container .revelor-filters__heading-arrow {
    flex: 0 0 auto;

    width: 10px;
    height: 10px;

    border-right: 2px solid #A6A6A6;
    border-bottom: 2px solid #A6A6A6;
    font-size: 0;
    transform: translateY(-3px) rotate(45deg);
    transition: transform 0.2s ease;
}

.kv-flags-on #revelor-filters-container .revelor-filters__section--open .revelor-filters__heading-arrow {
    transform: translateY(2px) rotate(-135deg);
}

.kv-flags-on #revelor-filters-container .revelor-filters__dropdown {
    top: calc(100% + 6px);
    z-index: 14;
    min-width: 100%;
    max-width: 360px;
    padding: 6px;

    border: 1px solid #D9D9D9;
    border-radius: 10px;
    box-shadow: 0 14px 34px rgba(18, 18, 18, 0.13);
}

.kv-flags-on #revelor-filters-container .revelor-filters__list {
    max-height: 320px;
    padding: 0;
}

.kv-flags-on #revelor-filters-container .revelor-filters__item {
    margin: 0;
}

.kv-flags-on #revelor-filters-container .revelor-filters__label {
    gap: 10px;

    min-height: 44px;
    padding: 6px 8px;

    border-radius: 6px;
    font-size: 14px;
    color: #121212;
}

.kv-flags-on #revelor-filters-container .revelor-filters__label:hover {
    background: #FDF5FA;
    color: #121212;
}

/* Jádro checkbox vrací do hry přes !important (filters.css, kvůli Shoptetímu
   schovávání); vlastní vzhled jako v kategorii proto musí přebít stejně. */
.kv-flags-on #revelor-filters-container .revelor-filters__checkbox {
    width: 18px !important;
    height: 18px !important;

    border: 1px solid #D9D9D9;
    border-radius: 4px;
    background: #FFF center / 12px 10px no-repeat;
    appearance: none !important;
    -webkit-appearance: none !important;
}

.kv-flags-on #revelor-filters-container .revelor-filters__checkbox:checked {
    border-color: #AB2D7B;
    background-color: #AB2D7B;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 10'%3E%3Cpath fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M1 5.2 4.4 8.6 11 1.6'/%3E%3C/svg%3E");
}

.kv-flags-on #revelor-filters-container .revelor-filters__count {
    font-size: 12px;
    color: #A6A6A6;
}

.kv-flags-on #revelor-filters-container .revelor-filters__section--price .revelor-filters__dropdown {
    min-width: 280px;
    padding: 12px;
}

.kv-flags-on #revelor-filters-container .revelor-filters__price-input {
    flex: 1 1 0;

    width: auto;
    min-width: 0;
    height: 44px;
    padding: 8px 10px;

    border: 1px solid #D9D9D9;
    border-radius: 8px;
    font-size: 14px;
}

.kv-flags-on #revelor-filters-container .revelor-filters__price-input:focus {
    border-color: #96105F;
    box-shadow: none;
}

.kv-flags-on #revelor-filters-container .revelor-filters__price-btn {
    height: 44px;
    padding: 0 16px;

    border-radius: 8px;
    background: #AB2D7B;
    font-size: 13px;
    font-weight: 700;
}

.kv-flags-on #revelor-filters-container .revelor-filters__price-btn:hover {
    background: #96105F;
}

.kv-flags-on #revelor-filters-container .revelor-filters__chip {
    gap: 7px;

    min-height: 44px;
    padding: 6px 16px;

    border: 1px solid #D9D9D9;
    border-radius: 50px;
    background: #FFF;
    font-size: 13px;
    line-height: 18.2px;
    color: #121212;
}

.kv-flags-on #revelor-filters-container .revelor-filters__chip:hover {
    border-color: #CC6FA7;
    background: #FFF;
}

.kv-flags-on #revelor-filters-container .revelor-filters__chip--clear {
    border-color: transparent;
    color: #AB2D7B;
}

.kv-flags-on #search-sorting.listSorting {
    position: relative;

    margin: 0;
}

.kv-flags-on #search-sorting.listSorting::before {
    content: "";

    display: inline-block;
    width: 17px;
    height: 17px;
    margin-right: 4px;

    background-color: #AB2D7B;
    vertical-align: middle;
    mask: url("https://www.parfumeshop.hu/user/documents/upload/kodovani/sorting.svg") center / contain no-repeat;
    -webkit-mask: url("https://www.parfumeshop.hu/user/documents/upload/kodovani/sorting.svg") center / contain no-repeat;
}

.kv-flags-on #search-sorting .listSorting__trigger {
    display: inline-flex;
    align-items: center;
    gap: 8px;

    min-height: 44px;
    padding: 0 4px;

    border: none;
    background: none;
    font-family: inherit;
    font-size: 14px;
    font-weight: 700;
    color: #121212;
    vertical-align: middle;
}

.kv-flags-on #search-sorting .listSorting__trigger[data-kv-label]::before {
    content: attr(data-kv-label);

    font-weight: 400;
}

@media (max-width: 1199px) {
    .kv-flags-on #revelor-filters-container .revelor-filters__bar {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 16px 14px;

        padding: 16px 18px 18px;
    }
}

@media (max-width: 767px) {
    .kv-flags-on #revelor-filters-container .revelor-filters__bar {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;

        padding: 14px;
    }

    .kv-flags-on #revelor-filters-container .kv-filter-label {
        display: none;
    }

    .kv-flags-on #revelor-filters-container .revelor-filters__section:not(.is-chosen) .kv-filter-title {
        display: block;
        flex: 1 1 auto;

        min-width: 0;

        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        color: #121212;
    }

    .kv-flags-on #revelor-filters-container .revelor-filters__section:not(.is-chosen) .kv-filter-value {
        display: none;
    }

    .kv-flags-on #revelor-filters-container .revelor-filters__dropdown {
        max-width: 100%;

        border-radius: 10px;
    }
}

/* ---- Výsledkovka: lišta .myfilters ze šablony (3. kolo) ----
   Lištu kreslí per-shop JS v markupu šablony, styly jsou šablony (filters.scss).
   Filtry, počet a řazení jádra zůstávají v DOMu jako zdroj pravdy, jen skryté. */

.kv-flags-on:has(.myfilters[data-rvlr-mirror]) #revelor-filters-container,
.kv-flags-on:has(.myfilters[data-rvlr-mirror]) #kv-search-toolbar {
    display: none;
}

/* ---- Našeptávač: tlačítko košíku jako „U košaricu“ na kartě šablony ---- */

.kv-flags-on .search-overlay__products .search-overlay__product-add-btn[data-kv-label] {
    width: auto;
    height: auto;
    min-height: 40px;
    padding: 10px 12px;

    border: 1px solid #259B63;
    border-radius: 15px;
    background: #259B63;
    color: #FFF;
    font-family: inherit;
    font-size: 13px;
    font-weight: 800;
    line-height: 1.1;
    text-transform: uppercase;
    transition: 0.3s ease-out;
}

.kv-flags-on .search-overlay__products .search-overlay__product-add-btn[data-kv-label]:hover {
    border-color: #259B63;
    background: #1E8454;
    color: #FFF;
    transform: none;
}

.kv-flags-on .search-overlay__products .search-overlay__product-add-btn[data-kv-label] svg {
    display: none;
}

.kv-flags-on .search-overlay__products .search-overlay__product:has(.search-overlay__product-add-btn[data-kv-label]) .search-overlay__product-link {
    padding-bottom: 56px;
}
