/* Review Listing */
.product-reviews__heading {
    text-align: center;
}

.star-icon {
    width: 20px;
    height: 20px;
    fill: #E5D68C;
}

.star-icon.outline {
    vertical-align: -0.125em;
}

.product-reviews__header {
    display: grid;
    grid-template-columns: auto auto;
    grid-gap: 1rem;
    align-items: center;
    border-bottom: 1px solid #000;
    padding-bottom: 1rem;
    font-size: 18px;
}

.product-reviews__count {
    justify-self: end;
}

.product-reviews__add_review,
.product-reviews__see_reviews {
    cursor: pointer;
    align-self: flex-end;
    grid-column: span 2;
}

.product-reviews__see_reviews {
    display: none;
}

.product-reviews__list {
    margin-top: 3rem;
}

.product-review-item {
    display: grid;
    grid-template-columns: 100px 1fr;
    grid-gap: 1rem;
    margin-bottom: 2rem;
}

.product-review-item__profile-image {
    width: 70px;
    height: 70px;
    border-radius: 50%;
}

.product-review-item__reviewer-name {
    word-break: break-word;
}

.product-review-item__verified {
    font-size: 0.75rem;
}

.product-review-item__header {
    text-align: center;
}

.product-review-item__body {
    display: grid;
    grid-template-columns: auto;
}

.product-review-item__rating {
    margin-bottom: 10px;
}

.product-review-item__for-product {
    display: none;
    margin-bottom: 5px;
}

.recent-product-reviews .product-review-item__for-product {
    display: block;
}

#reviews .product-review-item__title {
    font-weight: bold;
    font-size: 1.25rem;
    margin-top: 0.5rem !important;
    margin-bottom: 0;
}

.product-review-item__reply-date {
    grid-column: span 2;
    margin: 0;

}

.product-review-item__attachment {
    width: 100px;
    height: 100px !important;
    object-fit: cover;
    cursor: pointer;
}

.product-review-item__reply-header {
    display: grid;
    grid-template-columns: auto 1fr fit-content(100%);
    grid-gap: 1rem;
    margin-top: 0.5rem;
}

.product-review-item__reply-profile-image {
    border-radius: 50%;
}

.product-review-pagination {
    text-align: center;
}

.product-review-pagination__link {
    margin-left: 8px;
}

.current-page {
    margin-left: 8px;
}

/* limit to 3 lines of the review on smaller screens */
.product-review-item__content {
    display: -webkit-box;
    -webkit-line-clamp: 3; /* Limit to 3 lines */
    -webkit-box-orient: vertical;
    overflow: hidden;
    max-height: 4.5em;
}

.product-review-item__read_more {
    display: inline;
    margin-bottom: 0.5rem;
}

.product-review-item__read_less {
    display: none;
    margin-bottom: 0.5rem;
}

.product-review-item__content.expanded {
    -webkit-line-clamp: unset; /* Show all lines when expanded */
    max-height: none;
}

@media only screen and (min-width: 30em) {

    /* hide read more on bigger screens */
    .product-review-item__read_more,
    .product-review-item__read_less {
        display: none;
    }

    .product-review-item__content {
        max-height: none;
        -webkit-line-clamp: unset;
        overflow: auto;
    }

    .product-reviews__header {
        grid-template-columns: auto 1fr fit-content(100%);
    }

    .product-reviews__count {
        justify-self: start;
    }

    .product-reviews__add_review,
    .product-reviews__see_reviews {
        grid-column: span 1;
    }

    .product-review-item {
        grid-gap: 2rem;
    }

    .product-review-item__body {
        grid-template-columns: auto auto;
        grid-template-rows: min-content;
    }

    .product-review-item__date {
        justify-self: end;
    }

    .product-review-item__title {
        grid-column: span 2;
    }

    .product-review-item__content {
        grid-column: span 2;
    }

    .product-review-item__attachments {
        grid-column: span 2;
    }

    .product-review-item__attachment {
        width: 150px;
        height: 150px !important;
    }

    .product-review-item__reply {
        grid-column: span 2;
    }

    .product-review-item__reply-date {
        grid-column: span 1;
    }
}

/* Review Form */
.product-review-form__wrapper,
.product-review-form__confirmation,
.product-review-form__error {
    display: none;
}

.product-review-form__confirmation,
.product-review-form__error {
    text-align: center;
}

.product-review-form__wrapper {
    width: 100%;
    max-width: 500px;
    min-height: 500px;
    padding: 0 1rem 4rem 1rem;
}

.product-review-form__heading {
    margin-top: 0;
    text-align: center;
}

#rogershood-review-form .form-row.checkbox label {
    display: inline-block;
    margin-left: 10px;
}

#rogershood-review-form .form-row:not(.checkbox) label {
    font-weight: bold;
}

#rogershood-review-form input[type="text"],
#rogershood-review-form textarea {
    width: 100%;
    padding: 8px;
    border: 1px solid #ccc;
    border-radius: 4px;
    box-sizing: border-box;
}

.product-rating__label {
    display: inline !important;
    position: relative;
    color: grey;
    padding: 0 0.25rem;
    transition: color 0.15s;
    font-size: 1.5rem;
}

/* Ratings Input */
/* Position the invisible input on top of the label */
.product-rating__input {
    position: absolute;
    opacity: 0;
    inset: 0;
    width: 100%;
    height: 100%;
    cursor: pointer;
    /* CSS reset */
    margin: 0;
}

/* Add an outline when the input is focused via the keyboard */
.product-rating__label:has(input:focus-visible) {
    outline-offset: 1px;
    outline: black solid 2px;
}

/* Color Adjustments when the input is checked, hovered, or active */
/* checked */
.product-rating__label:is(:has(> input:checked), :has(~ label > input:checked)) {
    color: #E5D68C;
}

/* hover */
.product-rating__label:is(:has(> input:hover), :has(~ label > input:hover)) {
    color: #E5D68C;
}

.product-rating__label:has(input:active):has(input:active) {
    color: #E5D68C;
}

#rogershood-review-form input[type="submit"] {
    cursor: pointer;
}

.basicLightbox__placeholder .modal {
    text-align: center;
}


