/* Product review helpful voting — isolated add-on */
.sp-page .bnoise-review-helpful {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 10px !important;
    flex-wrap: wrap;
    margin-top: 14px !important;
    padding-top: 14px !important;
    border-top: 1px solid #f0f1f2 !important;
    color: #9a9da3 !important;
    font-size: 11px !important;
}

.sp-page .bnoise-review-helpful-question {
    margin-left: 2px;
    white-space: nowrap;
}

.sp-page .bnoise-review-vote-actions {
    display: inline-flex;
    align-items: center;
    gap: 7px;
}

.sp-page .bnoise-review-vote-btn {
    width: auto !important;
    min-width: 48px;
    height: 34px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    padding: 0 9px !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 10px !important;
    background: #fff !important;
    color: #6f737a !important;
    cursor: pointer;
    transition: border-color .18s ease, background-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.sp-page .bnoise-review-vote-btn:hover:not(:disabled) {
    transform: translateY(-1px);
    box-shadow: 0 6px 14px rgba(0, 0, 0, .045);
}

.sp-page .bnoise-review-vote-btn[data-vote="helpful"]:hover:not(:disabled),
.sp-page .bnoise-review-vote-btn[data-vote="helpful"].is-active {
    border-color: rgba(98, 208, 182, .45) !important;
    background: rgba(98, 208, 182, .08) !important;
    color: #2d9d83 !important;
}

.sp-page .bnoise-review-vote-btn[data-vote="unhelpful"]:hover:not(:disabled),
.sp-page .bnoise-review-vote-btn[data-vote="unhelpful"].is-active {
    border-color: rgba(245, 81, 87, .34) !important;
    background: rgba(245, 81, 87, .07) !important;
    color: #d93f46 !important;
}

.sp-page .bnoise-review-vote-btn.is-active {
    box-shadow: 0 0 0 2px rgba(0, 0, 0, .025);
}

.sp-page .bnoise-review-vote-btn:disabled {
    opacity: .55;
    cursor: wait;
}

.sp-page .bnoise-review-vote-icon {
    width: 17px;
    height: 17px;
    display: inline-flex;
    flex: 0 0 17px;
}

.sp-page .bnoise-review-vote-icon img {
    width: 17px !important;
    height: 17px !important;
    display: block;
}

.sp-page .bnoise-review-vote-count {
    min-width: 10px;
    color: inherit;
    font-size: 10px;
    font-weight: 900;
    line-height: 1;
    font-variant-numeric: tabular-nums;
}

.sp-page .bnoise-review-vote-feedback {
    width: 100%;
    height: 0;
    overflow: hidden;
    opacity: 0;
    text-align: left;
    color: #2d9d83;
    font-size: 10px;
    font-weight: 700;
    transition: opacity .18s ease, height .18s ease;
}

.sp-page .bnoise-review-vote-feedback.is-visible {
    height: 18px;
    opacity: 1;
}

.sp-page .bnoise-review-vote-feedback.is-error {
    color: #d93f46;
}

.sp-page .bnoise-review-helpful.is-loading .bnoise-review-vote-actions {
    opacity: .65;
}

@media (max-width: 640px) {
    .sp-page .bnoise-review-helpful {
        justify-content: flex-start !important;
        gap: 8px !important;
    }

    .sp-page .bnoise-review-helpful-question {
        width: 100%;
        margin: 0 0 2px;
    }

    .sp-page .bnoise-review-vote-btn {
        min-width: 52px;
        height: 36px !important;
    }

    .sp-page .bnoise-review-vote-feedback {
        text-align: right;
    }
}
