.petbuy-filters {
    background-color: #fff;
    border-radius: 16px;
    border: 1px solid rgba(0, 0, 0, 0.08);
    padding: 20px;
    box-shadow: 0 20px 30px rgba(0, 0, 0, 0.07);
    font-family: "Inter", "Helvetica Neue", Arial, sans-serif;
}

.petbuy-filters__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 18px;
}

.petbuy-filters__title {
    font-size: 1.1rem;
    font-weight: 600;
    margin: 0;
}

.petbuy-filters__reset {
    background: transparent;
    border: 0;
    color: #f87537;
    font-size: 0.85rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    cursor: pointer;
    padding: 0;
}

.petbuy-filters__section {
    margin-bottom: 20px;
}

.petbuy-filters__section-label {
    font-size: 0.8rem;
    font-weight: 600;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    margin-bottom: 12px;
    display: block;
    color: #272727;
}

.petbuy-filters__list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.petbuy-filters__checkbox input {
    margin-right: 8px;
    accent-color: #f87537;
}

.petbuy-filters__checkbox span {
    font-size: 0.95rem;
    color: #2f2f2f;
}

.petbuy-filters__list li {
    display: flex;
}

.petbuy-filters__empty {
    font-size: 0.85rem;
    color: #999;
}

.petbuy-filters__select {
    width: 100%;
    padding: 8px 12px;
    border-radius: 8px;
    border: 1px solid rgba(0, 0, 0, 0.12);
    background: #f9f9f9;
    font-size: 0.95rem;
}

.petbuy-filters__price-inputs {
    display: flex;
    gap: 12px;
}

.petbuy-filters__price-inputs label {
    display: flex;
    flex-direction: column;
    font-size: 0.85rem;
    color: #666;
}

.petbuy-filters__price-inputs input {
    margin-top: 6px;
    border-radius: 8px;
    border: 1px solid rgba(0, 0, 0, 0.12);
    padding: 6px 10px;
    font-size: 0.95rem;
    width: 100%;
    background: #fff;
}

.petbuy-filters__price-inputs span {
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: #999;
}

.price-inputs {
    gap: 8px;
}

.petbuy-slider {
    width: 100%;
    max-width: 278px;
    height: 60px;
    margin: 16px auto;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

.petbuy-slider:not(.petbuy-slider--ready) .petbuy-slider__handle,
.petbuy-slider:not(.petbuy-slider--ready) .petbuy-slider__range {
    opacity: 0;
}

.petbuy-slider__track {
    width: 100%;
    height: 9px;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(248, 117, 55, 0.08), rgba(248, 117, 55, 0.25), rgba(248, 117, 55, 0.08));
    position: absolute;
    left: 0;
    right: 0;
    overflow: visible;
    box-shadow: inset 0 0 0 1px rgba(248, 117, 55, 0.25);
    top: 50%;
    transform: translateY(-50%);
}

.petbuy-slider__range {
    position: absolute;
    top: 0;
    bottom: 0;
    background: linear-gradient(90deg, #f87537, #ffad79);
    border-radius: 999px;
    box-shadow: 0 0 12px rgba(248, 117, 55, 0.6);
    left: 0;
    width: 0;
}

.petbuy-slider__handle {
    position: absolute;
    top: 50%;
    width: 35px;
    height: 35px;
    border-radius: 50%;
    left: 0;
    background-image: url("data:image/svg+xml,%3Csvg width='40' height='41' viewBox='0 0 40 41' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M19.6308 13.253C21.5622 14.016 23.9067 12.2431 24.7126 9.23381C25.3262 6.94147 24.7705 3.06214 22.8001 2.45132C21.7226 2.11743 18.593 3.48797 17.7183 6.47051C16.8432 9.45314 17.6993 12.49 19.6308 13.253Z' fill='%23F87537' fill-opacity='1'/%3E%3Cpath d='M10.3659 16.0151C12.0168 16.0893 13.1738 14.0355 13.3139 11.457C13.406 9.76545 11.9341 6.67808 10.2843 6.62962C9.14712 6.59611 7.31396 8.59606 7.33697 11.1876C7.35929 13.7793 8.71575 15.9408 10.3659 16.0151Z' fill='%23F87537' fill-opacity='1'/%3E%3Cpath d='M14.6727 16.6636C13.4907 17.6488 12.0199 18.1487 10.4914 18.0349C8.85725 17.9132 7.16116 17.6591 5.53209 19.9956C3.52192 22.8791 4.53985 27.2101 7.41942 29.3623C8.23075 29.9686 9.1167 30.348 10.0118 30.5129C10.9816 30.6911 11.9018 31.0949 12.705 31.6881C13.5021 32.2911 14.185 33.0855 14.6977 34.0149C15.1711 34.8734 15.8204 35.642 16.6318 36.2483C19.5113 38.4005 23.5144 37.8223 25.1715 34.6752C26.5144 32.1253 25.6661 30.4768 24.9513 28.8428C24.2832 27.3147 24.1496 25.6156 24.5303 24.0307C25.2039 21.2248 24.0845 18.2835 21.8649 16.6245C19.6452 14.9663 16.7666 14.9188 14.6727 16.6636Z' fill='%23F87537' fill-opacity='1'/%3E%3Cpath d='M27.0058 10.9435C24.7998 12.9103 24.2084 15.9886 25.5771 17.6815C26.9458 19.3743 29.8041 19.1022 31.9617 17.0739C34.1193 15.0457 34.0774 11.315 33.3904 10.3359C32.1339 8.54576 28.686 9.44521 27.0058 10.9435Z' fill='%23F87537' fill-opacity='1'/%3E%3Cpath d='M29.4729 23.479C27.3738 24.5999 26.098 26.5655 26.7858 28.2306C27.4727 29.8964 29.7907 30.4693 31.9622 29.5109C34.1339 28.552 35.1082 25.9134 34.6493 24.7593C33.9837 23.0839 30.8496 22.7439 29.4729 23.479Z' fill='%23F87537' fill-opacity='1'/%3E%3C/svg%3E");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    transform: translate(-50%, -50%);
    background-color: #fff;
    border: unset;
}

.petbuy-slider__handle::before {
    left: 6%;
    top: 30%;
}

.petbuy-slider__handle::after {
    right: 6%;
    top: 70%;
}

.petbuy-slider__handle:active {
    transform: translate(-50%, -50%) scale(1.08);
}

.filter-group {
    transition: max-height 0.25s ease, opacity 0.25s ease;
    overflow: visible;
}

.filter-group__body {
    transition: max-height 0.3s ease, opacity 0.3s ease;
    overflow: visible;
    max-height: 999px;
}

.petbuy-shop-slider {
    position: relative;
    height: 31px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1rem;
}

.petbuy-sort-row {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0.5rem;
    height: 31px;
}

.petbuy-sort-row label {
    font-size: 0.85rem;
    font-weight: 500;
}

.petbuy-slider-toolbar {
    position: relative;
    padding: 0;
    background: transparent;
    border-radius: 0;
    box-shadow: none;
}

.petbuy-filters-toggle,
.petbuy-filters-backdrop,
.petbuy-filters-mobile-head,
.petbuy-filters-close {
    display: none;
}

.petbuy-filters-toggle {
    border: 0;
    border-radius: 999px;
    background: #f87537;
    color: #ffffff;
    padding: 0 16px;
    height: 44px;
    align-items: center;
    justify-content: center;
    gap: 10px;
    font-weight: 600;
    box-shadow: 0 10px 18px rgba(248, 117, 55, 0.28);
}

.petbuy-filters-toggle__icon,
.petbuy-filters-toggle__icon svg {
    display: block;
}

.petbuy-filters-toggle__text {
    line-height: 1;
}

body.petbuy-filters-menu-open {
    overflow: hidden;
}

.petbuy-filters-shell {
    margin-top: 12px;
}

.filter-shell-wrapper {
    background: transparent;
    border: 0;
    border-radius: 0;
    padding: 0;
    box-shadow: none;
}

.filter-shell-wrapper hr {
    margin: 18px 0;
    border-color: rgba(26, 26, 26, 0.08);
}

.filter-group .servizi {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.filter-group > .servizi:first-child a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #1a1a1a;
    text-decoration: none;
    font-weight: 500;
}

.filter-group__body {
    padding-top: 12px;
}

.petbuy-sort-row select {
    min-width: 170px;
}

.petbuy-slider-separator {
    /* Line 4 */
    width: 42px;
    height: 0px;
    left: 239px;
    top: 0px;
    border: 1px solid rgba(234, 234, 234, 0.7);
    transform: rotate(90deg);
}

.petbuy-results-count.opzione-contenuto-b.active {
    display: block;
    width: auto;
}

.product-list-container-js {
    min-height: 240px;
}

.product-list-container-js > [class*="col-"] {
    display: flex;
    justify-content: center;
}

@media (max-width: 991.98px) {
    .petbuy-filters-toggle {
        display: inline-flex;
        align-self: flex-start;
    }

    .petbuy-filters-shell {
        position: relative;
    }

    .petbuy-filters-backdrop {
        position: fixed;
        inset: 0;
        z-index: 9997;
        border: 0;
        background: rgba(26, 26, 26, 0.42);
        opacity: 0;
        pointer-events: none;
        transition: opacity 0.22s ease;
    }

    .petbuy-filters-mobile-head {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        padding-bottom: 14px;
        margin-bottom: 14px;
        border-bottom: 1px solid rgba(26, 26, 26, 0.08);
    }

    .petbuy-filters-mobile-title {
        margin: 0;
        font-size: 1.2rem;
        font-weight: 600;
        color: #1a1a1a;
    }

    .petbuy-filters-close {
        display: inline-flex;
        width: 40px;
        height: 40px;
        align-items: center;
        justify-content: center;
        border: 0;
        border-radius: 999px;
        background: #f8f9fa;
        color: #1a1a1a;
        font-size: 28px;
        line-height: 1;
    }

    .filter-shell-wrapper {
        background: #ffffff;
        border: 1px solid rgba(26, 26, 26, 0.08);
        border-radius: 22px;
        padding: 18px 18px 10px;
        box-shadow: 0 18px 34px rgba(26, 26, 26, 0.06);
    }

    .sidebar-col {
        position: fixed;
        inset: 0;
        z-index: 9998;
        width: 100vw;
        min-width: 100vw;
        max-width: 100vw;
        height: 100dvh;
        flex: 0 0 100vw;
        box-sizing: border-box;
        margin: 0 !important;
        padding: 0;
        transform: translateX(-104%);
        transition: transform 0.24s ease;
        pointer-events: none;
    }

    .filter-shell-wrapper {
        height: 100%;
        width: 100%;
        min-width: 100%;
        max-width: 100%;
        overflow-y: auto;
        padding: 18px 18px 24px;
        border-radius: 0;
    }

    .petbuy-filters-shell.is-filters-open .sidebar-col {
        transform: translateX(0);
        pointer-events: auto;
    }

    .petbuy-filters-shell.is-filters-open .petbuy-filters-backdrop {
        display: block;
        opacity: 1;
        pointer-events: auto;
    }

    .petbuy-slider-section {
        margin-bottom: 20px !important;
    }

    .petbuy-slider-toolbar {
        display: flex;
        flex-direction: column;
        align-items: stretch !important;
        justify-content: flex-start;
        gap: 14px;
    }

    .petbuy-shop-slider {
        width: 100%;
        height: auto;
        flex-direction: column;
        align-items: stretch;
        gap: 10px;
    }

    .petbuy-mode-switch {
        width: 100%;
        max-width: none;
    }

    .petbuy-slider-label {
        width: auto;
        text-align: left;
        font-size: 0.95rem;
    }

    .petbuy-slider-separator {
        display: none;
    }

    .petbuy-sort-row {
        width: 100%;
        justify-content: space-between;
        height: auto;
        padding-top: 2px;
    }

    .petbuy-sort-row label {
        flex: 0 0 auto;
    }

    .petbuy-sort-row .form-select {
        width: 100% !important;
        max-width: 240px;
    }

    .product-list-container-js {
        --bs-gutter-x: 16px;
        --bs-gutter-y: 24px;
    }

    .product-list-container-js > [class*="col-"] {
        justify-content: stretch;
    }

    .product-list-container-js > [class*="col-"] .petbuy-listing-card {
        margin-inline: 0;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    .filter-shell-wrapper {
        padding: 22px 22px 28px;
    }

    .petbuy-slider {
        max-width: none;
    }

    .price-inputs {
        flex-wrap: wrap;
    }
}

.petbuy-listing-card--skeleton {
    pointer-events: none;
}

.petbuy-listing-card__skeleton {
    position: relative;
    overflow: hidden;
    display: block;
    background: linear-gradient(90deg, #f1f3f5 0%, #ffffff 50%, #f1f3f5 100%);
    background-size: 200% 100%;
    animation: petbuySkeletonShimmer 1.15s linear infinite;
    border-radius: 999px;
}

.petbuy-listing-card__skeleton--image {
    width: 100%;
    height: 100%;
    border-radius: 5px 5px 0 0;
}

.petbuy-listing-card__skeleton--rating {
    position: absolute;
    top: 16px;
    left: 18px;
    width: 126px;
    height: 20px;
    z-index: 2;
}

.petbuy-listing-card__skeleton--badge {
    position: absolute;
    top: 4px;
    right: 0;
    width: 122px;
    height: 52px;
    border-radius: 0 5px 0 18px;
    z-index: 2;
}

.petbuy-listing-card__skeleton--title {
    width: 150px;
    height: 24px;
    margin-bottom: 12px;
    border-radius: 10px;
}

.petbuy-listing-card__skeleton--price {
    width: 76px;
    height: 20px;
    border-radius: 10px;
}

.petbuy-listing-card__skeleton--action {
    width: 28px;
    height: 28px;
    flex: 0 0 28px;
}

@media (max-width: 991.98px) {
    .petbuy-listing-card__skeleton--badge {
        width: 102px;
        height: 40px;
    }

    .petbuy-listing-card__skeleton--title {
        width: 180px;
    }

    .petbuy-listing-card__skeleton--action {
        width: 52px;
        height: 52px;
        flex: 0 0 52px;
    }
}

@media (max-width: 575.98px) {
    .petbuy-slider-toolbar {
        gap: 12px;
    }

    .petbuy-sort-row {
        flex-direction: column;
        align-items: stretch;
        gap: 8px;
    }

    .petbuy-sort-row .form-select {
        max-width: none;
    }

    .filter-shell-wrapper {
        padding: 16px 14px 8px;
        border-radius: 0;
    }

    .filter-shell-wrapper hr {
        margin: 14px 0;
    }

    .filter-group > .servizi:first-child a {
        font-size: 0.95rem;
        line-height: 1.25;
    }

    .filter-group__body {
        padding-top: 10px;
    }

    .price-inputs {
        flex-wrap: wrap;
        row-gap: 6px;
        font-size: 0.92rem;
    }

    .petbuy-slider {
        max-width: none;
        margin: 14px auto 10px;
    }

    .petbuy-slider__handle {
        width: 32px;
        height: 32px;
    }

    .rating-filter-container {
        flex-wrap: wrap;
        row-gap: 6px;
    }

    .petbuy-filters__gift-toggle {
        flex-wrap: wrap;
        row-gap: 6px;
    }

    .product-list-container-js {
        --bs-gutter-x: 0;
    }
}

@media (min-width: 992px) {
    .petbuy-filters-toggle,
    .petbuy-filters-backdrop,
    .petbuy-filters-mobile-head {
        display: none !important;
    }

    .sidebar-col {
        position: static;
        transform: none;
        height: auto;
        width: auto;
        pointer-events: auto;
    }
}

@keyframes petbuySkeletonShimmer {
    0% {
        background-position: 200% 0;
    }
    100% {
        background-position: -200% 0;
    }
}

.load-more-btn-js[disabled] {
    opacity: 0.7;
    cursor: not-allowed;
}
.petbuy-mode-switch__thumb {
    position: absolute;
    top: calc(50% - 13.5px);
    left: var(
        --thumb-left,
        calc(
            var(--slider-offset) +
                (var(--switch-cell-width) * var(--switch-index, 0)) +
                ((var(--switch-cell-width) - 40px) / 2)
        )
    );
    width: 40px;
    height: 27px;
    background: #f87537;
    border-radius: 174.194px;
    transform: translateY(0);
    transition: left 0.35s ease;
    box-shadow: 0 6px 12px rgba(248, 117, 55, 0.4);
    pointer-events: none;
}

.petbuy-shop-slider > .petbuy-mode-switch {
    width: 100%;
}

.petbuy-slider-label {
    font-family: 'Poppins', sans-serif;
    font-weight: 500;
    font-size: 18px;
    line-height: 20px;
    color: #807A7A;
    pointer-events: none;
}

.petbuy-shop-slider > .petbuy-mode-switch {
    width: 160px;
    flex: 0 0 160pxs;
}
.petbuy-filters-layout {
    display: flex;
    align-items: flex-start;
    gap: 1.5rem;
    flex-wrap: wrap;
}

.petbuy-filters-main {
    flex: 1 1 0;
    min-width: 0;
}

.petbuy-filters-slider-panel {
    flex: 0 0 auto;
    min-width: 132px;
    display: flex;
    align-items: flex-start;
    justify-content: flex-end;
}

@media (max-width: 768px) {
    .petbuy-filters-layout {
        flex-direction: column;
    }

    .petbuy-filters-slider-panel {
        width: 100%;
        justify-content: flex-start;
    }
}

.petbuy-mode-switch {
    position: relative;
    display: block;
    width: 132px;
    height: 32px;
    --switch-items: 3;
    --switch-index: 0;
    --slider-offset: 6px;
    --thumb-radius: 30px;
    --thumb-area: calc(100% - (var(--slider-offset) * 2));
    --switch-cell-width: calc(var(--thumb-area) / var(--switch-items));
    cursor: grab;
    padding: 0 var(--slider-offset);
    box-sizing: border-box;
    touch-action: pan-y;
    user-select: none;
}

.petbuy-mode-switch.is-dragging {
    cursor: grabbing;
}

.petbuy-mode-switch input {
    opacity: 0;
    width: 0;
    height: 0;
    position: absolute;
    pointer-events: none;
}

.petbuy-mode-switch__track {
    position: absolute;
    inset: 0;
    background-color: #f4f4f5;
    border-radius: 999px;
    border: 1px solid rgba(234, 234, 234, 0.7);
    box-sizing: border-box;
    pointer-events: none;
    transition: background-color 0.25s ease, border-color 0.25s ease;
}

.petbuy-mode-switch__thumb {
    position: absolute;
    top: calc(50% - 13.5px);
    left: var(
        --thumb-left,
        calc(
            var(--slider-offset) +
                (var(--switch-cell-width) * var(--switch-index, 0)) +
                ((var(--switch-cell-width) - 40px) / 2)
        )
    );
    width: 40px;
    height: 27px;
    background: #f87537;
    border-radius: 174.194px;
    transform: translateY(0);
    transition: left 0.35s ease, box-shadow 0.25s ease, transform 0.25s ease;
    box-shadow: 0 6px 12px rgba(248, 117, 55, 0.4);
    pointer-events: none;
}

.petbuy-mode-switch__labels {
    position: absolute;
    inset: 0;
    display: grid;
    grid-template-columns: repeat(var(--switch-items), 1fr);
    text-transform: capitalize;
}

.petbuy-mode-switch__label {
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 14px;
    color: #807a7a;
    cursor: pointer;
    z-index: 2;
    transition: color 0.25s ease, transform 0.2s ease;
    pointer-events: auto;
}

.petbuy-mode-switch:hover .petbuy-mode-switch__track {
    background-color: #fff2eb;
    border-color: rgba(248, 117, 55, 0.25);
}

.petbuy-mode-switch:hover .petbuy-mode-switch__thumb {
    box-shadow: 0 10px 18px rgba(248, 117, 55, 0.32);
}

.petbuy-mode-switch:hover .petbuy-mode-switch__label:not(.is-active) {
    color: #a18d84;
}

.petbuy-mode-switch__label:hover {
    transform: translateY(-1px);
}

.petbuy-mode-switch__label:not(.is-active):hover {
    color: #f87537;
}

.petbuy-mode-switch__label svg {
    width: 20px;
    height: 20px;
    display: block;
}

.petbuy-mode-switch__label.is-active {
    color: #ffffff;
}

.petbuy-mode-switch__label-content {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
}

.petbuy-mode-switch__label-text {
    /* Text remains in the DOM for screen readers but is visually hidden. */
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    border: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
}

.petbuy-mode-switch__label-icon {
    width: 20px;
    height: 20px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

.petbuy-mode-switch__label-icon::before {
    /* Supply --petbuy-mode-switch-icon-mask: url('data:image/svg+xml;utf8,...') to draw a custom icon. */
    content: '';
    position: absolute;
    inset: 0;
    background-color: currentColor;
    mask-image: var(--petbuy-mode-switch-icon-mask, none);
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: contain;
    -webkit-mask-image: var(--petbuy-mode-switch-icon-mask, none);
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
    -webkit-mask-size: contain;
}

.petbuy-mode-switch__label[data-switch-value="ads"] .petbuy-mode-switch__label-icon {
    --petbuy-mode-switch-icon-mask: url("data:image/svg+xml,%3Csvg width=\"13\" height=\"19\" viewBox=\"0 0 13 19\" fill=\"none\" xmlns=\"http%3A//www.w3.org/2000/svg\"%3E%3Cpath d=\"M2.74976 4.58334C2.74976 5.5558 3.13606 6.48843 3.8237 7.17606C4.51133 7.8637 5.44396 8.25001 6.41642 8.25001C7.38888 8.25001 8.32151 7.8637 9.00915 7.17606C9.69678 6.48843 10.0831 5.5558 10.0831 4.58334C10.0831 3.61088 9.69678 2.67825 9.00915 1.99061C8.32151 1.30298 7.38888 0.916672 6.41642 0.916672C5.44396 0.916672 4.51133 1.30298 3.8237 1.99061C3.13606 2.67825 2.74976 3.61088 2.74976 4.58334Z\" stroke=\"white\" stroke-width=\"1.83333\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/%3E%3Cpath d=\"M0.916748 17.4167V15.5833C0.916748 14.6109 1.30306 13.6782 1.99069 12.9906C2.67832 12.303 3.61095 11.9167 4.58341 11.9167H8.25008C9.22254 11.9167 10.1552 12.303 10.8428 12.9906C11.5304 13.6782 11.9167 14.6109 11.9167 15.5833V17.4167\" stroke=\"white\" stroke-width=\"1.83333\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/%3E%3C/svg%3E");
}

.petbuy-mode-switch__label[data-switch-value="mixed"] .petbuy-mode-switch__label-icon {
    --petbuy-mode-switch-icon-mask: url("data:image/svg+xml,%3Csvg width=\"22\" height=\"22\" viewBox=\"0 0 22 22\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"%3E%3Cg clip-path=\"url(%23clip0_652_62)\"%3E%3Cpath d=\"M5.80377 7.33333H16.1979C16.4622 7.3333 16.7234 7.39043 16.9636 7.5008C17.2038 7.61118 17.4173 7.77219 17.5894 7.9728C17.7615 8.17341 17.8883 8.40886 17.9609 8.66303C18.0335 8.9172 18.0503 9.18406 18.0101 9.44533L16.8597 16.918C16.7598 17.5674 16.4307 18.1596 15.932 18.5874C15.4333 19.0151 14.7979 19.2502 14.1409 19.25H7.85985C7.20297 19.25 6.56779 19.0148 6.06926 18.5871C5.57073 18.1593 5.24178 17.5672 5.14193 16.918L3.99152 9.44533C3.95134 9.18406 3.96813 8.9172 4.04075 8.66303C4.11336 8.40886 4.24008 8.17341 4.41222 7.9728C4.58435 7.77219 4.79783 7.61118 5.03802 7.5008C5.27821 7.39043 5.53943 7.3333 5.80377 7.33333Z\" stroke=\"%23C9C9C9\" stroke-width=\"1.83333\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/%3E%3Cpath d=\"M8.25 10.0833V5.5C8.25 4.77065 8.53973 4.07118 9.05546 3.55546C9.57118 3.03973 10.2707 2.75 11 2.75C11.7293 2.75 12.4288 3.03973 12.9445 3.55546C13.4603 4.07118 13.75 4.77065 13.75 5.5V10.0833\" stroke=\"%23C9C9C9\" stroke-width=\"1.83333\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id=\"clip0_652_62\"%3E%3Crect width=\"22\" height=\"22\" fill=\"white\"/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");
}

.petbuy-mode-switch__label[data-switch-value="products"] .petbuy-mode-switch__label-icon {
    --petbuy-mode-switch-icon-mask: url("data:image/svg+xml,%3Csvg width=\"22\" height=\"22\" viewBox=\"0 0 22 22\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"%3E%3Cg clip-path=\"url(%23clip0_652_66)\"%3E%3Cpath d=\"M2.75 19.25H19.25\" stroke=\"%23C9C9C9\" stroke-width=\"1.83333\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/%3E%3Cpath d=\"M2.75 6.41667V7.33333C2.75 8.06268 3.03973 8.76215 3.55546 9.27788C4.07118 9.7936 4.77065 10.0833 5.5 10.0833C6.22935 10.0833 6.92882 9.7936 7.44454 9.27788C7.96027 8.76215 8.25 8.06268 8.25 7.33333M2.75 6.41667H19.25M2.75 6.41667L4.58333 2.75H17.4167L19.25 6.41667M8.25 7.33333V6.41667M8.25 7.33333C8.25 8.06268 8.53973 8.76215 9.05546 9.27788C9.57118 9.7936 10.2707 10.0833 11 10.0833C11.7293 10.0833 12.4288 9.7936 12.9445 9.27788C13.4603 8.76215 13.75 8.06268 13.75 7.33333M13.75 7.33333V6.41667M13.75 7.33333C13.75 8.06268 14.0397 8.76215 14.5555 9.27788C15.0712 9.7936 15.7707 10.0833 16.5 10.0833C17.2293 10.0833 17.9288 9.7936 18.4445 9.27788C18.9603 8.76215 19.25 8.06268 19.25 7.33333V6.41667\" stroke=\"%23C9C9C9\" stroke-width=\"1.83333\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/%3E%3Cpath d=\"M4.58325 19.25V9.94583\" stroke=\"%23C9C9C9\" stroke-width=\"1.83333\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/%3E%3Cpath d=\"M17.4167 19.25V9.94583\" stroke=\"%23C9C9C9\" stroke-width=\"1.83333\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/%3E%3Cpath d=\"M8.25 19.25V15.5833C8.25 15.0971 8.44315 14.6308 8.78697 14.287C9.13079 13.9432 9.5971 13.75 10.0833 13.75H11.9167C12.4029 13.75 12.8692 13.9432 13.213 14.287C13.5568 14.6308 13.75 15.0971 13.75 15.5833V19.25\" stroke=\"%23C9C9C9\" stroke-width=\"1.83333\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id=\"clip0_652_66\"%3E%3Crect width=\"22\" height=\"22\" fill=\"white\"/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");
}

.petbuy-slider-label {
    font-family: 'Poppins', sans-serif;
    font-weight: 500;
    font-size: 1rem;
    color: #807A7A;
    pointer-events: none;
    width: 5rem;
}

.petbuy-mode-switch__label.is-active {
    color: #ffffff;
    z-index: 3;
}

.petbuy-shop-page .petbuy-shop-toolbar__controls {
    display: flex;
    align-items: center;
    gap: 12px;
}

.petbuy-shop-page .petbuy-sort-row label {
    font-family: 'Poppins', sans-serif;
}

.petbuy-shop-page .petbuy-results-count--mobile {
    display: none;
}

.petbuy-shop-page .petbuy-results-panel.active {
    display: block;
}

.petbuy-shop-page .petbuy-results-panel:not(.active) {
    display: none;
}

@media (min-width: 992px) {
    .petbuy-shop-page .petbuy-shop-toolbar {
        justify-content: flex-end !important;
    }

    .petbuy-shop-page .petbuy-shop-toolbar__controls {
        margin-left: 0;
    }

    .petbuy-shop-page .petbuy-results-count--desktop {
        display: block;
    }
}

@media (max-width: 991.98px) {
    .petbuy-shop-page {
        margin-top: 18px;
    }

    .petbuy-shop-page .petbuy-slider-section {
        margin-bottom: 32px !important;
    }

    .petbuy-shop-page .petbuy-shop-toolbar-section {
        position: sticky;
        top: 136px;
        z-index: 120;
        background: #ffffff;
    }

    .petbuy-shop-page .petbuy-slider-section > .container {
        padding-left: 16px;
        padding-right: 15px;
    }

    .petbuy-shop-page .petbuy-shop-toolbar {
        flex-direction: row;
        align-items: center !important;
        justify-content: space-between;
        gap: 12px;
    }

    .petbuy-shop-page .petbuy-results-count--mobile {
        display: block;
        margin: 0;
        flex: 0 1 auto;
    }

    .petbuy-shop-page .petbuy-results-count--desktop {
        display: none !important;
    }

    .petbuy-shop-page .petbuy-results-count .risultati-conteggio-js {
        margin: 0;
        font-family: 'Poppins', sans-serif;
        font-weight: 500;
        font-size: 18px;
        line-height: 20px;
        color: #807a7a !important;
    }

    .petbuy-shop-page .petbuy-sort-row {
        display: none;
    }

    .petbuy-shop-page .petbuy-shop-toolbar__controls {
        flex: 0 0 auto;
        gap: 13px;
        margin-left: auto;
    }

    .petbuy-shop-page .petbuy-shop-slider {
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: center;
        width: 132px;
        height: 31px;
        flex: 0 0 132px;
        gap: 0;
    }

    .petbuy-shop-page .petbuy-shop-slider > .petbuy-mode-switch {
        width: 132px;
        height: 31px;
        flex: 0 0 132px;
        min-height: 31px;
        max-height: 31px;
        overflow: hidden;
    }

    .petbuy-shop-page .petbuy-mode-switch__track {
        border-color: #eaeaea;
        background: #f8f9fa;
    }

    .petbuy-shop-page .petbuy-mode-switch__thumb {
        top: calc(50% - 13px);
        width: 40px;
        height: 26px;
        box-shadow: none;
    }

    .petbuy-shop-page .petbuy-mode-switch__label-icon {
        width: 18px;
        height: 18px;
    }

    .petbuy-shop-page .petbuy-slider-label,
    .petbuy-shop-page .petbuy-slider-separator {
        display: none;
    }

    .petbuy-shop-page .petbuy-filters-toggle {
        display: inline-flex;
        width: 56px;
        height: 40px;
        padding: 0;
        border-radius: 5px;
        box-shadow: none;
        flex: 0 0 56px;
    }

    .petbuy-shop-page .petbuy-filters-toggle__text {
        display: none;
    }

    .petbuy-shop-page .petbuy-filters-shell {
        margin-top: 0;
        padding-left: 16px;
        padding-right: 16px;
    }

    .petbuy-shop-page .petbuy-filters-shell > .row {
        --bs-gutter-x: 0;
    }

    .petbuy-shop-page .sidebar-col {
        position: fixed;
        inset: 0;
        top: 0;
        left: 0;
        z-index: 9998;
        width: 100vw;
        min-width: 100vw;
        max-width: 100vw;
        height: 100dvh;
        flex: 0 0 100vw;
        margin: 0 !important;
        padding: 0;
        box-sizing: border-box;
        transform: translateX(100%);
        transition: transform 0.24s ease;
        pointer-events: none;
    }

    .petbuy-shop-page .petbuy-filters-shell.is-filters-open .sidebar-col {
        transform: translateX(0);
        pointer-events: auto;
    }

    .petbuy-shop-page .filter-shell-wrapper {
        border: 0;
        border-radius: 0;
        box-shadow: none;
        padding: 24px 28px 28px;
    }

    .petbuy-shop-page .filter-shell-wrapper hr {
        margin: 24px 0;
        border-color: #eaeaea;
    }

    .petbuy-shop-page .petbuy-filters-mobile-head {
        padding-bottom: 18px;
        margin-bottom: 24px;
        border-bottom-color: #eaeaea;
    }

    .petbuy-shop-page .petbuy-filters-mobile-title {
        font-family: 'Poppins', sans-serif;
        font-size: 18px;
        font-weight: 500;
    }

    .petbuy-shop-page .petbuy-filters-close {
        width: 36px;
        height: 36px;
        background: #faf9f8;
        font-size: 24px;
    }

    .petbuy-shop-page .filter-group > .servizi:first-child a {
        font-family: 'Poppins', sans-serif;
        font-size: 18px;
        font-weight: 500;
        line-height: 20px;
        gap: 6px;
    }

    .petbuy-shop-page .filter-group__body {
        padding-top: 14px;
    }

    .petbuy-shop-page [data-petbuy-filters-reset] .small {
        font-family: 'Poppins', sans-serif;
        font-size: 14px;
        font-weight: 500;
        color: #f87537;
    }

    .petbuy-shop-page .price-inputs {
        font-family: 'Poppins', sans-serif;
        font-size: 14px;
        line-height: 1;
        color: #87836f;
    }

    .petbuy-shop-page #price-display-min,
    .petbuy-shop-page #price-display-max {
        color: #87836f;
    }

    .petbuy-shop-page .rating-filter-container .star-clickable {
        font-size: 20px;
    }

    .petbuy-shop-page #active-rating-display,
    .petbuy-shop-page .filtro-numero-stelle {
        border-radius: 999px;
        padding: 4px 8px;
        font-family: 'Poppins', sans-serif;
        font-size: 14px;
        font-weight: 500;
    }

    .petbuy-shop-page .petbuy-filters__gift-toggle {
        align-items: center;
        gap: 8px;
    }

    .petbuy-shop-page .petbuy-filters__gift-toggle .form-check-label {
        font-family: 'Poppins', sans-serif;
        font-size: 16px;
        font-weight: 500;
        color: #807a7a;
    }

    .petbuy-shop-page .petbuy-results-col {
        padding: 0;
    }

    .petbuy-shop-page .load-more-btn-js {
        border: 0;
        background: transparent;
        color: #1a1a1a;
        font-family: 'Poppins', sans-serif;
        font-size: 16px;
        font-weight: 500;
        line-height: 1.3125;
        padding: 0;
        box-shadow: none;
    }

    .petbuy-shop-page .load-more-btn-js:hover,
    .petbuy-shop-page .load-more-btn-js:focus {
        color: #f87537;
        background: transparent;
        border-color: transparent;
        box-shadow: none;
    }

    .petbuy-shop-page .product-list-container-js {
        --bs-gutter-x: 0;
        --bs-gutter-y: 0;
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        column-gap: 8px;
        row-gap: 24px;
        min-height: 0;
        margin: 0;
    }

    .petbuy-shop-page .product-list-container-js > [class*="col-"] {
        width: auto;
        max-width: none;
        flex: 0 0 auto;
        padding-left: 0;
        padding-right: 0;
    }

    .petbuy-shop-page .petbuy-load-more-row {
        margin-top: 2px !important;
    }
}

@media (max-width: 575.98px) {
    .petbuy-shop-page .petbuy-slider-section > .container,
    .petbuy-shop-page .petbuy-filters-shell {
        padding-left: 16px;
        padding-right: 16px;
    }

    .petbuy-shop-page .filter-shell-wrapper {
        padding: 20px 24px 24px;
    }
}

.filter-group--collapsed .filter-group__body {
    max-height: 0;
    opacity: 0;
    pointer-events: none;
}

.filter-group--collapsed .frecce {
    transform: rotate(180deg);
}

.petbuy-filters--api { gap: 0; }
.petbuy-filters__categories-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 12px;
}

.petbuy-filters__category-card {
    border: 1px solid rgba(0, 0, 0, 0.08);
    border-radius: 14px;
    overflow: hidden;
    background: #fff;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.petbuy-filters__category-card.is-active {
    border-color: #f87537;
    box-shadow: 0 8px 15px rgba(248, 117, 55, 0.25);
}

.petbuy-filters__category-button {
    display: flex;
    align-items: center;
    width: 100%;
    border: none;
    background: transparent;
    padding: 12px;
    cursor: pointer;
    gap: 10px;
}

.category-item:hover {
    cursor: pointer;
}

.petbuy-filters__gift-toggle {
    cursor: pointer;
}

.petbuy-filters__gift-toggle.is-unavailable,
.category-item.is-unavailable,
.petbuy-filters__subcat-row.is-unavailable {
    opacity: 0.45;
}

.petbuy-filters__gift-toggle input[type="checkbox"] {
    cursor: pointer;
}

.petbuy-filters__subcat-row:hover {
    cursor: pointer;
}

.petbuy-filters__category-image img {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    object-fit: cover;
}

.petbuy-filters__category-name {
    flex: 1;
}

.petbuy-filters__category-count-number {
    font-size: 0.8rem;
    color: #ffffff;
    background: #f87537;
    border-radius: 999px;
    padding: 2px 10px;
    font-weight: 600;
    white-space: nowrap;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    min-width: 2rem;
}

.petbuy-filters__subcat-label {
    flex: 1;
}

.petbuy-filters__subcat-count-number {
    font-size: 0.75rem;
    color: #f87537;
    background: rgba(248, 117, 55, 0.12);
    border-radius: 999px;
    padding: 2px 8px;
    font-weight: 600;
    white-space: nowrap;
    min-width: 2rem;
    text-align: center;
}

.petbuy-filters__category-arrow {
    font-size: 0.8rem;
}

.petbuy-filters__loader,
.petbuy-filters__empty {
    padding: 18px;
    text-align: center;
    color: #666;
}

.petbuy-filters__categories-skeleton {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 12px 8px;
}

.petbuy-filters__category-skeleton {
    height: 2rem;
    border-radius: 999px;
    background: linear-gradient(
        90deg,
        rgba(224, 224, 224, 0.8),
        rgba(245, 245, 245, 0.8),
        rgba(224, 224, 224, 0.8)
    );
    background-size: 200% 100%;
    box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.05);
    animation: skeleton-slide 1.5s ease-in-out infinite;
}

.petbuy-filters__skeleton-line {
    display: none;
}

.petbuy-filters--loading .petbuy-filters__skeleton-line {
    display: block;
    border-radius: 12px;
    margin-top: 12px;
    background: linear-gradient(
        90deg,
        rgba(224, 224, 224, 0.8),
        rgba(245, 245, 245, 0.8),
        rgba(224, 224, 224, 0.8)
    );
    background-size: 200% 100%;
    animation: skeleton-slide 1.5s ease-in-out infinite;
}

.skeleton-line.skeleton-price {
    height: 6rem;
    margin-top: 14px;
}

.skeleton-line.skeleton-rating {
    height: 6rem;
    margin-top: 16px;
}

.skeleton-line.skeleton-gift {
    height: 4rem;
    margin-top: 12px;
}

.petbuy-filters--loading .filter-group:not(:first-child) > .filter-group__body > :not(.petbuy-filters__skeleton-line) {
    display: none;
    visibility: hidden;
    height: 0;
    margin: 0;
    opacity: 0;
    pointer-events: none;
}

.petbuy-filters--loading .filter-group:not(:first-child) > .filter-group__body .petbuy-filters__skeleton-line {
    display: block;
}

.petbuy-filters--loading .rating-filter-container,
.petbuy-filters--loading #rating-filter-wrapper,
.petbuy-filters--loading #active-rating-display {
    display: none;
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
}

@keyframes skeleton-slide {
    0% {
        background-position: 0% 50%;
    }
    50% {
        background-position: 100% 50%;
    }
    100% {
        background-position: 0% 50%;
    }
}

.petbuy-filters__section-label {
    font-size: 0.75rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}
.petbuy-filters__expand {
    border: none;
    background: transparent;
    font-size: 0.9rem;
    color: #f87537;
    cursor: pointer;
    margin-left: auto;
}

.petbuy-filters__sublist .petbuy-filters__subcat + .petbuy-filters__subcat {
    margin-top: 6px;
}

.petbuy-filters__sublist {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.35s ease, transform 0.35s ease, opacity 0.35s ease;
    transform-origin: top left;
    transform: translateX(-10px);
    opacity: 0;
}

.petbuy-filters__sublist.is-visible {
    display: block;
    max-height: 400px;
    transform: translateX(5%);
    opacity: 1;
    margin: 0 0 12px 0;
    padding: 0 12px;
}

.petbuy-filters__subcat {
    padding: 6px 10px;
    margin-bottom: 4px;
    border-radius: 8px;
    font-weight: 500;
    transition: background 0.2s ease, color 0.2s ease;
}

.petbuy-filters__subcat:hover {
    background: #f87537;
    color: #fff;
}

.petbuy-filters__expand {
    margin-left: auto;
    background: transparent;
    border: none;
    color: #f87537;
    font-size: 0.85rem;
    cursor: pointer;
}

.petbuy-filters__expand-placeholder {
    width: 1.25rem;
    display: inline-block;
}

.petbuy-filters__expand span {
    display: inline-block;
    transition: transform 0.3s ease;
}

.petbuy-filters__expand.is-open span {
    transform: rotate(180deg);
}
.petbuy-filters__subcat-row {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 4px 0;
}

.petbuy-filters__subcat-checkbox {
    margin-left: 4px;
}

.rating-filter-container {
    display: flex;
    align-items: center;
    gap: 10px;
}

.rating-filter-container .star-clickable {
    width: 21px;
    height: 20px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: transform 0.15s ease;
    background-image: url("data:image/svg+xml,%3Csvg width='18' height='17' viewBox='0 0 18 17' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8.24103 0.295294C8.478 -0.0984644 9.04886 -0.0984649 9.28583 0.295294L11.8413 4.54157C11.9264 4.68303 12.0653 4.78392 12.2261 4.82117L17.0542 5.93937C17.5019 6.04306 17.6784 6.58598 17.3771 6.93303L14.1283 10.6756C14.0201 10.8003 13.9671 10.9635 13.9813 11.128L14.4098 16.0653C14.4496 16.5232 13.9877 16.8587 13.5646 16.6795L9.00127 14.7462C8.84925 14.6818 8.67761 14.6818 8.52559 14.7462L3.96229 16.6795C3.53914 16.8587 3.0773 16.5232 3.11703 16.0653L3.54553 11.128C3.55981 10.9635 3.50677 10.8003 3.39854 10.6756L0.149767 6.93303C-0.151492 6.58598 0.0249134 6.04306 0.472627 5.93937L5.30075 4.82117C5.46159 4.78392 5.60045 4.68303 5.68558 4.54157L8.24103 0.295294Z' fill='%23c4c4c4'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
    color: transparent;
    text-indent: -9999px;
    line-height: 0;
    position: relative;
}

.rating-filter-container .star-clickable.active {
    background-image: url("data:image/svg+xml,%3Csvg width='18' height='17' viewBox='0 0 18 17' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8.24103 0.295294C8.478 -0.0984644 9.04886 -0.0984649 9.28583 0.295294L11.8413 4.54157C11.9264 4.68303 12.0653 4.78392 12.2261 4.82117L17.0542 5.93937C17.5019 6.04306 17.6784 6.58598 17.3771 6.93303L14.1283 10.6756C14.0201 10.8003 13.9671 10.9635 13.9813 11.128L14.4098 16.0653C14.4496 16.5232 13.9877 16.8587 13.5646 16.6795L9.00127 14.7462C8.84925 14.6818 8.67761 14.6818 8.52559 14.7462L3.96229 16.6795C3.53914 16.8587 3.0773 16.5232 3.11703 16.0653L3.54553 11.128C3.55981 10.9635 3.50677 10.8003 3.39854 10.6756L0.149767 6.93303C-0.151492 6.58598 0.0249134 6.04306 0.472627 5.93937L5.30075 4.82117C5.46159 4.78392 5.60045 4.68303 5.68558 4.54157L8.24103 0.295294Z' fill='%23FF7C00'/%3E%3C/svg%3E");
    transform: rotate(0deg);
}

.rating-filter-container .star-clickable.is-unavailable {
    opacity: 0.35;
    cursor: not-allowed;
}

.rating-filter-container .star-clickable.star-focused {
    position: relative;
}

.star-halo {
    position: absolute;
    top: -12px;
    left: -12px;
    width: 44px;
    height: 44px;
    pointer-events: none;
    z-index: 10;
}

.star-halo__spark {
    position: absolute;
    font-size: 0.55rem;
    line-height: 1;
    color: #f87537;
    text-shadow: 0 0 4px rgba(248, 117, 55, 0.8);
    width: 10px;
    height: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    animation: spark-pop 0.4s cubic-bezier(0.19, 1, 0.22, 1) forwards;
    background-image: url("data:image/svg+xml,%3Csvg width='6' height='6' viewBox='0 0 6 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 1.35234L1.9459 1.37921L3.31886 0L3.89461 1.85897L5.63054 2.73854L4.04051 3.86056L3.74042 5.78332L2.18198 4.61784L0.260581 4.9266L0.887436 3.08428L0 1.35234Z' fill='%23FF7C00'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
    color: transparent;
}
.star-halo__spark--1 { top: 7px; left:9px; transform: rotate(45deg); animation: spark-pop 0.35s forwards; animation-delay: 0s; }
.star-halo__spark--2 { top: 7px; right: 8px; transform: rotate(45deg); animation: spark-pop 0.35s forwards; animation-delay: 0.05s; }
.star-halo__spark--3 { top: 21px; right: 2px; transform: rotate(45deg); animation: spark-pop 0.35s forwards; animation-delay: 0.1s; }
.star-halo__spark--4 { bottom: 2px; right: 16px; transform: rotate(39deg); animation: spark-pop 0.35s forwards; animation-delay: 0.15s; }
.star-halo__spark--5 { bottom: 11px; left: 4px; transform: rotate(35deg); animation: spark-pop 0.35s forwards; animation-delay: 0.2s; }

@keyframes spark-pop {
    0% {
        opacity: 0;
        transform: scale(0.3) translateY(2px);
    }
    60% {
        opacity: 1;
        transform: scale(1.15) translateY(-2px);
    }
    100% {
        opacity: 1;
        transform: scale(1);
    }
}

@keyframes star-colorin {
    0% {
        filter: grayscale(1) brightness(0.4);
        transform: scale(0.92);
    }
    60% {
        filter: none;
        transform: scale(1.05);
    }
    100% {
        filter: none;
        transform: scale(1);
    }
}

.rating-filter-container .star-clickable:hover {
    color: #f87537;
    transform: translateY(-2px);
}

.rating-filter-container .star-clickable.is-unavailable:hover {
    color: transparent;
    transform: none;
}

#active-rating-display {
    font-size: 0.85rem;
    font-weight: 600;
    color: #f87537;
    letter-spacing: 0.05em;
}
