.product-review-number {
    padding: 10px;
}

.product-review-number-title {
    font-size: 20px;
    font-weight: 500;
    margin-bottom: 14px
}

.product-review-summary {
    align-items: center;
    display: flex;
    margin-bottom: .75rem
}

.product-review-summary-value span {
    color: #000;
    font-size: 40px;
    font-weight: 500;
    margin-inline-end:8px}

.product-review-summary-rating {
    align-items: center;
}

.product-review-summary-rating p {
    font-size: 14px;
    margin-inline-start:4px;margin-bottom: 0!important
}

.product-review-progress {
    display: flex;
    flex-direction: column;
    gap: .25rem
}

.product-review-progress-bar {
    align-items: center;
    display: flex;
    gap: .75rem;
    justify-content: space-between;
    transition: background-color .2s ease;
    width: 100%
}

.product-review-progress-bar.clickable {
    border-radius: .25rem;
    cursor: pointer;
    padding: .25rem
}

.product-review-progress-bar.clickable:hover {
    background-color: rgba(var(--primary-color-rgb,13,110,253),.05)
}

.product-review-progress-bar.clickable:focus {
    outline: 2px solid rgba(var(--primary-color-rgb,13,110,253),.5);
    outline-offset: 2px
}

.product-review-progress-bar-value {
    width: 100%
}

.product-review-progress-bar-title {
    flex-shrink: 0;
    min-width: 50px
}

.product-review-progress-bar-percent {
    flex-shrink: 0;
    width: 50px
}

.product-review-item:last-child {
    border-bottom: none!important
}

.product-review-item.current-customer-review {
    background-color: rgba(var(--primary-color-rgb,13,110,253),.05);
    border: 1px solid rgba(var(--primary-color-rgb,13,110,253),.15);
    border-radius: .375rem;
    margin-bottom: 1rem;
    padding: 1rem;
    position: relative
}

.product-review-item.current-customer-review:before {
    background-color: var(--primary-color,#0d6efd);
    border-radius: .375rem 0 0 .375rem;
    content: "";
    height: 100%;
    inset-inline-start: 0;
    position: absolute;
    top: 0;
    width: 4px
}

.product-review-item__actions .delete-review-btn {
    background: none!important;
    border: none!important;
    color: #dc3545!important;
    line-height: 1;
    opacity: .7;
    padding: .25rem!important;
    transition: opacity .2s ease
}

.product-review-item__actions .delete-review-btn:hover {
    background: none!important;
    color: #dc3545!important;
    opacity: 1
}

.product-review-item__actions .delete-review-btn.loading {
    opacity: .4;
    pointer-events: none
}

.product-review-item__actions .delete-review-btn svg {
    height: 1rem;
    width: 1rem
}

.product-review-item__reply {
    padding: 0 1.5rem
}

.product-review-item__reply>div:before {
    border-bottom: 10px solid #f5f5f5;
    border-inline-end:10px solid transparent;border-inline-start:10px solid transparent;content: "";
    inset-inline-start: 10px;
    position: absolute;
    top: -10px
}

@media(min-width: 767px) {
    .product-review-item__reply {
        padding-inline-start:6.5rem
    }
}

.product-review-container .pagination {
    justify-content: center
}

.product-review-container .loading-spinner {
    align-items: center;
    background: hsla(0,0%,100%,.5);
    display: flex;
    height: 100%;
    inset-inline-start: 0;
    justify-content: center;
    position: absolute;
    top: 0;
    width: 100%
}

.product-review-container .loading-spinner:after {
    animation: lds-dual-ring .5s linear infinite;
    border-color: var(--primary-color) transparent var(--primary-color) transparent;
    border-radius: 50%;
    border-style: solid;
    border-width: 1px;
    content: " ";
    display: block;
    height: 40px;
    width: 40px
}

@keyframes lds-dual-ring {
    0% {
        transform: rotate(0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

.product-review-container .progress {
    border-radius: 5px;
    height: .6rem
}

.product-review-container .progress .progress-bar {
    background-color: #ffb21d
}

.product-review-container .image-upload-info svg {
    height: 1rem;
    margin-bottom: 0;
    width: 1rem
}

.product-review-container .lg-outer .lg-thumb {
    margin: auto
}

.product-review-container .btn-primary {
    background-color: var(--primary-color);
    border-color: var(--primary-color);
    color: #fff;
    padding: .5rem .75rem
}

.product-review-container .btn-primary:hover {
    background-color: var(--primary-color);
    border-color: var(--primary-color);
    color: var(--text-color)
}

.product-review-container .btn-primary.disabled,.product-review-container .btn-primary.focus,.product-review-container .btn-primary:disabled,.product-review-container .btn-primary:focus,.product-review-container .btn-primary:not(:disabled):not(.disabled).active,.product-review-container .btn-primary:not(:disabled):not(.disabled):active,.product-review-container .show>.btn-primary.dropdown-toggle {
    background-color: var(--primary-color);
    border-color: var(--primary-color);
    color: #fff
}

.product-review-container .form-rating-stars {
    float: inline-start
}

.product-review-container .form-rating-stars>label {
    color: #999;
    cursor: pointer;
    float: inline-end;
    line-height: 1
}

.product-review-container .form-rating-stars>label svg {
    height: 1rem;
    margin-bottom: 0;
    width: 1rem
}

.product-review-container .form-rating-stars .btn-check {
    display: none
}

.product-review-container .form-rating-stars:not(:checked)>label:hover,.product-review-container .form-rating-stars:not(:checked)>label:hover~label,.product-review-container .form-rating-stars>input:checked+label:hover,.product-review-container .form-rating-stars>input:checked~label,.product-review-container .form-rating-stars>input:checked~label:hover,.product-review-container .form-rating-stars>input:checked~label:hover~label,.product-review-container .form-rating-stars>label:hover~input:checked~label {
    color: #fab528
}

.product-review-container .image-viewer__item {
    background-color: #eee;
    border: 1px solid #c4c6cf;
    height: 70px;
    margin-inline-end:2px;margin-top: 5px;
    position: relative;
    text-align: initial;
    transition: all .3s cubic-bezier(.46,.03,.52,.96);
    width: 70px
}

.product-review-container .image-viewer__item img {
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    width: 100%
}

.product-review-container .image-upload__uploader-container {
    display: inline-block
}

.product-review-container .image-upload__uploader-container:hover {
    cursor: pointer
}

.product-review-container .image-upload__uploader-container .image-upload__uploader {
    align-items: center;
    border: 1px dashed #c4c6cf;
    display: flex;
    flex-direction: column;
    height: 70px;
    justify-content: center;
    position: relative;
    width: 70px
}

.product-review-container .image-upload__uploader-container .image-upload__uploader:hover {
    background: #d9edf7
}

.product-review-container .image-upload__uploader-container .image-upload__uploader:hover .image-upload__file-input {
    cursor: pointer
}

.product-review-container .image-upload__icon {
    color: #333;
    font-size: 20px;
    margin-bottom: 8px
}

.product-review-container .image-upload__text {
    color: #333;
    font-size: 9px;
    padding: 0 3px;
    text-align: center
}

.product-review-container .image-upload__file-input {
    height: 100%;
    inset-inline-start: 0;
    opacity: 0;
    position: absolute;
    top: 0;
    width: 100%
}

.product-review-container .image-viewer__item {
    display: inline-block
}

.product-review-container .image-viewer__list {
    display: block;
    width: 100%
}

.product-review-container .image-viewer__icon-remove {
    background: #848484;
    border-radius: 50%;
    cursor: pointer;
    height: 20px;
    inset-inline-end: 3px;
    line-height: 20px;
    position: absolute;
    text-align: center;
    top: 3px;
    width: 20px;
    z-index: 1
}

.product-review-container .image-viewer__icon-remove svg {
    color: #fff;
    height: 10px;
    margin-bottom: 0;
    width: 10px
}

.product-review-container .product-review-controls .review-control-buttons .review-control-btn.btn {
    background-color: #fff!important;
    border: 1px solid #d1d5db!important;
    border-radius: 8px!important;
    color: #6b7280!important;
    font-size: 14px;
    font-weight: 500;
    padding: 8px 16px!important;
    transition: all .2s ease
}

.product-review-container .product-review-controls .review-control-buttons .review-control-btn.btn:hover {
    background-color: #f9fafb;
    border-color: #9ca3af
}

.product-review-container .product-review-controls .review-control-buttons .review-control-btn.btn.active {
    background-color: #3b82f6;
    border-color: #3b82f6;
    color: #fff
}

.product-review-container .product-review-controls .review-control-buttons .review-control-btn.btn.active:hover {
    background-color: #2563eb;
    border-color: #2563eb
}

.product-review-container .product-review-controls .review-clear-btn {
    background-color: #fff!important;
    border: 1px solid #ef4444!important;
    border-radius: 8px!important;
    color: #ef4444!important;
    font-size: 14px;
    font-weight: 500;
    padding: 8px 16px!important;
    transition: all .2s ease
}

.product-review-container .product-review-controls .review-clear-btn:hover {
    background-color: #ef4444;
    color: #fff
}

.product-review-container-filter-container .review-search-input,.product-review-container-search-container .review-search-input,.product-review-container-sort-container .review-search-input {
    padding-inline-end:2.5rem}

.product-review-container-filter-container .review-sort-select,.product-review-container-filter-container .review-star-filter,.product-review-container-search-container .review-sort-select,.product-review-container-search-container .review-star-filter,.product-review-container-sort-container .review-sort-select,.product-review-container-sort-container .review-star-filter {
    cursor: pointer
}

.review-warning-alert {
    align-items: flex-start!important;
    background-color: #fff3cd!important;
    border: 1px solid #ffeaa7!important;
    border-left: 4px solid #ffc107!important;
    border-radius: 8px!important;
    box-shadow: 0 2px 4px rgba(0,0,0,.1)!important;
    color: #856404!important;
    display: flex!important;
    font-size: 14px!important;
    gap: 12px!important;
    line-height: 1.5!important;
    margin-bottom: 1.5rem!important;
    padding: 16px 20px!important
}

.review-warning-alert .warning-icon {
    align-items: center;
    background-color: #ffc107;
    border-radius: 50%;
    display: flex;
    flex-shrink: 0;
    height: 24px;
    justify-content: center;
    margin-top: 2px;
    width: 24px
}

.review-warning-alert .warning-icon svg {
    color: #fff;
    height: 14px;
    width: 14px
}

.review-warning-alert .warning-content {
    flex: 1
}

.review-warning-alert .warning-content .warning-title {
    color: #856404;
    font-weight: 600;
    margin-bottom: 4px
}

.review-warning-alert .warning-content .warning-message {
    margin-bottom: 0
}

.review-warning-alert .warning-content .warning-actions {
    margin-top: 12px
}

.review-warning-alert .warning-content .warning-actions .btn {
    align-items: center;
    border-color: #ffc107;
    border-radius: 6px;
    color: #856404;
    display: inline-flex;
    font-size: 13px;
    font-weight: 500;
    gap: 4px;
    padding: 6px 12px;
    text-decoration: none;
    transition: all .2s ease
}

.review-warning-alert .warning-content .warning-actions .btn:hover {
    background-color: #ffc107;
    border-color: #ffc107;
    color: #fff
}

.review-warning-alert .warning-content .warning-actions .btn svg {
    height: 14px;
    width: 14px
}

@media(max-width: 576px) {
    .review-warning-alert {
        font-size:13px!important;
        gap: 10px!important;
        padding: 12px 16px!important
    }

    .review-warning-alert .warning-icon {
        height: 20px;
        width: 20px
    }

    .review-warning-alert .warning-icon svg {
        height: 12px;
        width: 12px
    }

    .review-warning-alert .warning-content .warning-actions {
        margin-top: 10px
    }

    .review-warning-alert .warning-content .warning-actions .btn {
        font-size: 12px;
        justify-content: center;
        padding: 5px 10px;
        width: 100%
    }

    .review-warning-alert .warning-content .warning-actions .btn svg {
        height: 12px;
        width: 12px
    }
}

.review-info-alert {
    align-items: flex-start!important;
    background-color: #d1ecf1!important;
    border: 1px solid #bee5eb!important;
    border-left: 4px solid #17a2b8!important;
    border-radius: 8px!important;
    box-shadow: 0 2px 4px rgba(0,0,0,.05)!important;
    color: #0c5460!important;
    display: flex!important;
    font-size: 14px!important;
    gap: 12px!important;
    line-height: 1.5!important;
    margin-bottom: 1.5rem!important;
    padding: 16px 20px!important
}

.review-info-alert .info-icon {
    align-items: center;
    background-color: #17a2b8;
    border-radius: 50%;
    display: flex;
    flex-shrink: 0;
    height: 24px;
    justify-content: center;
    margin-top: 2px;
    width: 24px
}

.review-info-alert .info-icon svg {
    color: #fff;
    height: 14px;
    width: 14px
}

.review-info-alert .info-content {
    flex: 1
}

.review-info-alert .info-content .info-title {
    color: #0c5460;
    font-weight: 600;
    margin-bottom: 4px
}

.review-info-alert .info-content .info-message {
    color: #0c5460;
    margin-bottom: 0
}

.review-info-alert .info-content .info-actions {
    margin-top: 12px
}

.review-info-alert .info-content .info-actions .btn {
    align-items: center;
    border-color: #17a2b8;
    border-radius: 6px;
    color: #0c5460;
    display: inline-flex;
    font-size: 13px;
    font-weight: 500;
    gap: 4px;
    padding: 6px 12px;
    text-decoration: none;
    transition: all .2s ease
}

.review-info-alert .info-content .info-actions .btn:hover {
    background-color: #17a2b8;
    border-color: #17a2b8;
    color: #fff
}

.review-info-alert .info-content .info-actions .btn svg {
    height: 14px;
    width: 14px
}

@media(max-width: 576px) {
    .review-info-alert {
        font-size:13px!important;
        gap: 10px!important;
        padding: 12px 16px!important
    }

    .review-info-alert .info-icon {
        height: 20px;
        width: 20px
    }

    .review-info-alert .info-icon svg {
        height: 12px;
        width: 12px
    }

    .review-info-alert .info-content .info-actions {
        margin-top: 10px
    }

    .review-info-alert .info-content .info-actions .btn {
        font-size: 12px;
        justify-content: center;
        padding: 5px 10px;
        width: 100%
    }

    .review-info-alert .info-content .info-actions .btn svg {
        height: 12px;
        width: 12px
    }
}
@media (max-width: 991px), (min-width: 1400px) {
    .product-review-summary-rating {
        display: flex;
    }
}