/* 
 * Consolidated & Enhanced Product Reviews CSS
 * Based on review-enhanced.css (Primary Authority) merged with review.css
 * Matches the new review design with proper fonts and layout
 */

/* Main container and structure styles */
.product-reviews-container {
    /* From review-enhanced.css (takes precedence over review.css margin/font-family) */
    position: relative;
    padding: 3rem 0;
    /* review.css rule for margin: 2em 0; is overridden by padding/positioning */
    /* review.css rule for font-family: inherit; is overridden by specific fonts below */
}

.product-review-width {
    border: 1px solid var(--wild);
    border-radius: 30px;
    padding: 60px;
}

.pr-wrap {
    /* From review-enhanced.css */
    max-width: 900px;
    width: 100%;
    color: #EDE7E3;
    font-family: 'proxima-nova', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
    position: relative;
    padding: 0 20px;
    margin: 3rem auto;
}

.featured-reviews-container {
    /* From review-enhanced.css */
    color: #161616;
}

/* Reviews summary section */
.reviews-summary {
    /* From review-enhanced.css (takes precedence over review.css layout/bg/border) */
    margin-bottom: 3rem;
    padding: 0; /* Overrides review.css padding: 1.5em */
    background: transparent; /* Overrides review.css background: #f9f9f9 */
    border: none; /* Overrides review.css border: 1px solid #eee */
    display: flex;
    flex-direction: column; /* Overrides review.css display: flex; align-items: center; justify-content: space-between; */
    align-items: center;
    justify-content: center;
    text-align: center;
}

/* Removed .average-rating specific styles from review.css as enhanced structure handles this within .reviews-summary */

.average-rating-number {
    /* From review-enhanced.css (takes precedence over review.css font-size/weight/margin) */
    font-family: "Cirka", serif;
    font-size: 4.5rem; /* Overrides review.css font-size: 2em */
    font-weight: normal; /* Overrides review.css font-weight: bold */
    margin: 0; /* Overrides review.css margin-bottom: 0.25em */
    line-height: 1;
    color: #161616;
}

.congregation-message {
    /* From review-enhanced.css */
    font-family: "Cirka", serif;
    font-size: 2rem;
    color: #161616;
    margin: 1.5rem 0 0.5rem;
}

.rating-count {
    /* From review-enhanced.css (takes precedence over review.css font-size/color) */
    font-size: 0.9rem; /* Same as review.css */
    color: #666; /* Overrides review.css color: #777 */
    margin-bottom: 2rem; /* Added by enhanced */
}

/* Stars display */
.stars-display {
    /* From review-enhanced.css (takes precedence over review.css font-size/line-height/margin) */
    font-size: 1.5rem; /* Same as review.css */
    line-height: 1; /* Same as review.css */
    margin: 0.5rem 0; /* Overrides review.css margin-bottom: 0.5em */
    letter-spacing: 0.2rem; /* Added by enhanced */
}

.star {
    /* Brass star — brand color #A89133 */
    color: #A89133;
    margin: 0;
}

.star-full, .star-half {
    color: #A89133;
}

.star-empty {
    color: #A89133;
    opacity: 0.3;
}

.star svg {
    /* From review-enhanced.css */
    width: 24px;
    height: auto;
}

/* Filters and buttons row */
.reviews-filters {
    /* From review-enhanced.css */
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 2rem;
}

.filter-select {
    /* From review-enhanced.css */
    appearance: none;
    background-color: rgba(255, 255, 255, 0.0);
    border: 1px solid #ddd;
    border-radius: 50px;
    padding: 0.75rem 2rem;
    width: 300px;
    font-size: 0.9rem;
    color: #333;
    cursor: pointer;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="12" height="6" viewBox="0 0 12 6"><path fill="%23333" d="M0 0l6 6 6-6z"/></svg>');
    background-repeat: no-repeat;
    background-position: right 1rem center;
}

.write-review-button {
    /* From review-enhanced.css (takes precedence over review.css button styles in summary section) */
    background-color: #000;
    color: white;
    border: none;
    border-radius: 50px !important;
    padding: 0.75rem 1.5rem; /* More specific than review.css padding: 0.5em 1em */
    font-size: 0.9rem;
    cursor: pointer;
    transition: background-color 0.3s;
    text-decoration: none; /* Same as review.css */
    display: inline-block; /* Same as review.css */
}

.write-review-button:hover {
    /* From review-enhanced.css (takes precedence over review.css hover state) */
    background-color: #333; /* Overrides review.css background: #4A423B; */
}

/* Reviews grid for masonry layout */
.reviews-grid {
    /* From review-enhanced.css */
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-auto-rows: auto;
    grid-gap: 1.5rem;
    margin-bottom: 2rem;
}

/* Review items */
.review-item {
    /* From review-enhanced.css (takes precedence over review.css margin/padding/border) */
    background-color: var(--mutednature);
    padding: 1.5rem; /* Overrides review.css padding-bottom: 2em */
    border-radius: 20px;
    margin-bottom: 0; /* Overrides review.css margin-bottom: 2em */
    border: none; /* Overrides review.css border-bottom: 1px solid #eee */
    box-shadow: none;
    position: relative;
}

/* Review header */
.review-header {
    /* From review-enhanced.css */
    display: block;
    margin-bottom: 1rem;
}

.review-meta {
    /* From review-enhanced.css (takes precedence over review.css gap) */
    display: flex;
    flex-wrap: wrap;
    align-items: start; /* Different from review.css align-items: center */
    gap: 1rem; /* Overrides review.css gap: 0.75em */
    flex-direction: row; /* Added by enhanced */
}

.reviewer-name {
    /* From review-enhanced.css */
    margin-right: 0.25rem;
    text-transform: capitalize;
    font-family: 'proxima-nova', sans-serif;
    color: #161616;
}

.verified-badge {
    /* From review-enhanced.css (takes precedence over review.css bg/color/padding/size/radius) */
    background: rgba(255, 255, 255, 0.7); /* Overrides review.css background: #62574D */
    color: #333; /* Overrides review.css color: white */
    padding: 0.2em 0.75em; /* Overrides review.css padding: 0.2em 0.5em */
    font-size: 0.75rem; /* Overrides review.css font-size: 0.8em */
    border-radius: 50px; /* Overrides review.css border-radius: 3px */
    font-weight: normal; /* Added by enhanced */
}

.review-form-container .verified-badge {
    position: absolute;
    top: 0;
    right: 0;
    font-size: .9125rem;
    border: 1px solid #161616;
    color: #161616;
    background: #A89133;
}

.review-date {
    /* From review.css (Unique style) */
    color: #777;
    font-size: 0.9em;
}

.review-rating {
    /* From review-enhanced.css (takes precedence over review.css font-size/line-height) */
    font-size: 1rem; /* Overrides review.css font-size: 1.2em */
    line-height: 1; /* Same as review.css */
    letter-spacing: 0.1rem; /* Added by enhanced */
    margin-bottom: 12px; /* Added by enhanced */
}

/* Review content */
.review-title {
    /* From review-enhanced.css (takes precedence over review.css margin/font-size) */
    font-family: "Cirka", serif;
    margin: 0 0 0.75rem 0; /* Overrides review.css margin-top: 0; margin-bottom: 0.5em */
    font-size: 1.25rem; /* Overrides review.css font-size: 1.1em */
    font-weight: normal;
    color: #161616;
}

.review-text p {
    color: #161616;
    line-height: 140%; /* Overrides review.css line-height: 1.6 */
    font-size: 0.9rem;
}

.review-text p:last-child {
    /* From review.css (Unique style) */
    margin-bottom: 0;
}


/* Load more button */
.load-more-button {
    /* From review-enhanced.css */
    background-color: #62574D;
    color: white;
    border: none;
    padding: 0.75rem 2rem;
    font-size: 0.9rem;
    width: 100%;
    cursor: pointer;
    transition: background-color 0.3s;
    border-radius: 4px;
    text-transform: uppercase;
    letter-spacing: 0.05rem;
}

.load-more-button:hover {
    /* From review-enhanced.css */
    background-color: #4A423B;
}

/* Write review form */
/* Removed .product-review-form-container, .review-form-title from review.css */
.review-form-container {
    /* From review-enhanced.css */
    margin: 2rem 0;
    position: relative;
    /* review.css form container had max-width: 800px; margin: 2em auto; background: #f9f9f9; */
}

/* Removed .product-review-form .form-row, .product-review-form label from review.css */
.write-review-form {
    /* From review-enhanced.css */
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.form-group {
    /* From review-enhanced.css */
    position: relative;
}

.form-group input,
.form-group textarea {
    /* From review-enhanced.css (takes precedence over review.css input/textarea styles) */
    width: 100%; /* Same as review.css */
    padding: 1rem; /* Overrides review.css padding: 0.75em */
    border: 1px solid #ddd; /* Same as review.css */
    border-radius: 4px; /* Added by enhanced */
    background-color: #fff; /* Added by enhanced */
    font-family: 'proxima-nova', sans-serif; /* Added by enhanced */
    font-size: 0.9rem; /* Added by enhanced */
}

.form-group textarea {
    /* From review-enhanced.css */
    min-height: 150px;
    resize: vertical;
}

.product-review-form .required {
    /* From review.css (Unique style) */
    color: #e02b27;
}

/* Star Rating Selection Styles (Form Input) */
.star-rating-select {
    /* From review.css (Unique functionality) */
    display: flex;
    flex-direction: row-reverse;
    justify-content: flex-end;
    /* Added margin for spacing within form group */
    margin-bottom: 0.5em;
    margin-top: 0.25em;
}

.star-rating-select input {
    /* From review.css (Unique functionality) */
    display: none;
}

.star-rating-select label {
    /* From review.css (Unique functionality) */
    cursor: pointer;
    width: 30px;
    height: 30px;
    background: url('../../assets/img/star-empty.svg');
    background-size: 30px;
    /* Resetting label styles potentially inherited */
    display: inline-block;
    margin: 0 2px 0 0;
    font-weight: normal;
}

.star-rating-select label:hover,
.star-rating-select label:hover ~ label,
.star-rating-select input:checked ~ label {
  background-image: url('../../assets/img/star-filled.svg');
}

/* Removed .social-row, .social-row > div, .social-input-wrapper, .social-input-wrapper input from review.css */
.social-fields {
    /* From review-enhanced.css (takes precedence over review.css .social-row) */
    display: flex;
    justify-content: space-between;
    gap: 1rem;
}

.social-field {
    /* From review-enhanced.css */
    position: relative;
    flex: 1;
}

.social-handle-input {
    /* From review-enhanced.css */
    padding-left: 2rem !important; /* Added !important for specificity if needed */
}

.social-prefix {
    /* From review-enhanced.css (takes precedence over review.css .social-prefix) */
    position: absolute; /* Overrides review.css display: inline-block */
    left: 1rem;
    top: 50%;
    transform: translateY(-50%);
    color: #666;
    font-size: 0.9rem;
     /* review.css had padding: 0.75em; background: #f0f0f0; border: 1px solid #ddd; border-right: none; */
}

/* Removed .checkbox-label, .checkbox-label input from review.css */
.consent-checkbox {
    /* From review-enhanced.css */
    display: flex;
    align-items: flex-start; /* Same alignment as review.css .checkbox-label */
    gap: 0.5rem; /* review.css used margin-right on input */
    margin: 1rem 0;
}

.consent-checkbox label {
    color: #574B40;
}

.consent-checkbox input[type="checkbox"] {
    /* From review-enhanced.css */
    margin-top: 0.25rem; /* review.css had margin-top: 0.3em; */
}

/* Removed .submit-review-button, .submit-review-button:hover from review.css */
.review-submit-button {
    /* From review-enhanced.css (takes precedence over review.css button styles) */
    background-color: #62574D; /* Same as review.css */
    color: white; /* Same as review.css */
    border: none; /* Same as review.css */
    padding: 1rem; /* Overrides review.css padding: 0.75em 1.5em */
    font-size: 0.9rem; /* Overrides review.css font-size: 1em */
    cursor: pointer; /* Same as review.css */
    transition: background-color 0.3s; /* Matches review.css transition property */
    border-radius: 4rem; /* Added by enhanced */
    text-transform: uppercase; /* Added by enhanced */
    letter-spacing: 0.05rem; /* Added by enhanced */
    width: 100%; /* Added by enhanced */
    margin-top: 15px;
}

.consent-checkbox a {
    color: #574B40;
    font-family: cirka, serif;
    font-weight: 600;
    text-rendering: geometric-precision;
}

.consent-checkbox a:hover {
    text-decoration: underline;
}

.review-submit-button:hover {
    /* From review-enhanced.css (same hover effect as review.css) */
    background-color: #4A423B;
}

/* No reviews message */
.no-reviews-container {
    /* From review-enhanced.css */
    text-align: center;
    /* This container seems to fulfill the role of review.css .no-reviews */
}

.no-reviews {
    text-align: center;
    font-size: 1rem;
    color: #574B40;
    font-family: 'Cirka';
}

/* Pagination */
.reviews-pagination {
    /* From review-enhanced.css (Identical to review.css) */
    margin-top: 2em;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0.5em;
}

.reviews-pagination a,
.reviews-pagination span {
    /* From review-enhanced.css (Identical to review.css) */
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.5em 0.75em;
    min-width: 2em;
    text-align: center;
    border: 1px solid #ddd;
    text-decoration: none;
    color: #333;
}

.reviews-pagination a:hover {
    /* From review-enhanced.css (Identical to review.css) */
    background: #f5f5f5;
}

.reviews-pagination .current {
    /* From review-enhanced.css (Identical to review.css) */
    background: #62574D;
    color: white;
    border-color: #62574D;
}

.reviews-pagination .disabled {
    /* From review-enhanced.css (Identical to review.css) */
    color: #ccc;
    cursor: not-allowed;
}

.page-dots {
    /* From review-enhanced.css (Identical to review.css) */
    border: none;
}

/* Review notice (for users who already reviewed, etc.) */
.review-notice {
    /* From review-enhanced.css */
    padding: 1em;
    text-align: center;
    border: 1px solid #A65000;
    margin-bottom: 1.5em;
    border-radius: 12px;
    color: #A65000;
    background: #F6F6F6;
}

.review-notice p {
    font-family: "cirka", times, serif;
    font-size: 1.2rem;
}

/* Email verification form */
.email-verification-form {
    padding: 1.5em;
    background: #f7f7f7;
    border: 2px solid #CDC5BF;
    border-radius: 30px;
    max-width: 600px;
    margin: 2em auto;
}

.email-verification-form p {
    color: #574B40;
    padding-bottom: 20px;
    font-size: .8125rem;
    text-align: center;
}

input#verify_email {
    border-radius: 8px;
    font-size: 1rem;
    text-align: center;
}

.verification-success {
    /* From review-enhanced.css */
    padding: 0.75em;
    background: #d4edda;
    color: #155724;
    border: 1px solid #c3e6cb;
    border-radius: 4px;
    margin-bottom: 1em;
}

.verification-error {
    /* From review-enhanced.css */
    padding: 0.75em;
    background: #f8d7da;
    color: #721c24;
    border: 1px solid #f5c6cb;
    border-radius: 4px;
    margin-bottom: 1em;
}

/* Login notice */
.review-login-notice {
    /* From review-enhanced.css (Identical to review.css) */
    padding: 1em;
    background: #f5f5f5;
    border: 1px solid #ddd;
    text-align: center;
    margin-bottom: 1.5em; /* Added by enhanced */
}

.review-login-button {
    /* From review-enhanced.css (Identical to review.css) */
    display: inline-block;
    background: #62574D;
    color: white;
    padding: 0.5em 1.5em;
    margin-top: 0.5em;
    text-decoration: none;
    border-radius: 3px; /* Added by enhanced (matches review.css effective style) */
}

/* Product page integration styles */
.product-reviews-section {
}

.reviews-heading {
    /* From review-enhanced.css (Identical to review.css) */
    margin-bottom: 1.5em;
}

/* Removed .write-review-container from review.css */

/* Star rating specific styles (Product listing display) */
.star-rating {
    /* From review-enhanced.css (Identical color/size/line-height to review.css) */
    display: inline-flex;
    color: #FFD700; /* Retained Gold color for display stars as it's common and likely intended */
    font-size: 1.2em;
    line-height: 1;
}

.product-loop-rating {
    /* From review-enhanced.css (Identical to review.css) */
    margin: 0.5em 0;
}

.product-loop-rating .star-rating {
    /* From review-enhanced.css (Identical to review.css) */
    font-size: 1em;
}

.review-count {
    /* From review-enhanced.css (Identical to review.css) */
    margin-left: 0.5em;
    color: #777;
    font-size: 0.9em;
}

.product-reviews-summary {
    /* From review-enhanced.css (Identical to review.css) */
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 1em 0;
}

.rating-summary {
    /* From review-enhanced.css (Identical to review.css) */
    display: flex;
    align-items: center;
}

.rating-text {
    /* From review-enhanced.css (Identical to review.css) */
    margin-left: 0.5em;
}

.no-reviews-yet {
    /* From review-enhanced.css (Identical to review.css) */
    display: flex;
    align-items: center;
    gap: 1em;
}

/* Form submission messages */
.review-submit-message {
    /* From review-enhanced.css (Identical to review.css) */
    margin-top: 1em;
    padding: 0.75em;
}

.review-submit-message.success {
    /* From review-enhanced.css (Identical to review.css) */
    background: #E6F0DF;
    color: #356018;
    border: 1px solid #356018;
    border-radius: 12px;
    font-family: proxima-nova, sans-serif;
    font-size: .9125rem;
    text-align: center;
}

.review-submit-message.error {
    /* From review-enhanced.css (Identical to review.css) */
    background: #DCC1BB;
    color: #94270E;
    border: 1px solid #94270E;
    border-radius: 12px;
    font-family: proxima-nova, sans-serif;
    font-size: .9125rem;
    text-align: center;
}

/* Rating summary for shortcode */
.product-rating-summary {
    /* From review-enhanced.css */
    display: flex;
    flex-direction: row;
    align-items: center;
    text-align: center;
    margin: .2rem 0;
}

.product-rating-summary .stars-display {
    /* From review-enhanced.css */
    margin: 0.5rem 0;
}

.product-rating-summary .no-ratings {
    /* From review-enhanced.css */
    color: #777;
    font-size: 0.9rem;
}

.star-rating-select label svg path {
  fill: #EDE7E3;
  transition: fill .2s;
}

/* when hovered or checked, fill gold */
.star-rating-select label:hover svg path,
.star-rating-select input:checked ~ label svg path {
  fill: #574B40;
}

/* on hover, light up the hovered star… */
.star-rating-select label:hover svg path,
/* …and every sibling label that comes after it in the DOM */
.star-rating-select label:hover ~ label svg path,
/* same for when a radio is checked */
.star-rating-select input:checked ~ label svg path {
  fill: #574B40;
}


/* Responsive adjustments */
@media (max-width: 768px) {
    .reviews-grid {
        /* From review-enhanced.css */
        grid-template-columns: 1fr;
    }
    
    .reviews-filters {
        /* From review-enhanced.css */
        flex-direction: column;
        gap: 1rem;
    }
    
    .filter-select {
        /* From review-enhanced.css */
        width: 100%;
    }
    
    .review-header {
        /* From review-enhanced.css (Identical to review.css) */
        flex-direction: column;
    }
    
    .review-meta {
        /* From review-enhanced.css (Identical to review.css) */
        margin-bottom: 0.5em;
    }
    
    .reviews-pagination {
        /* From review-enhanced.css (Identical to review.css) */
        flex-wrap: wrap;
    }
    
    .product-reviews-summary {
        /* From review-enhanced.css (Identical to review.css) */
        flex-direction: column;
        align-items: flex-start;
        gap: 1em;
    }

    /* Removed review.css specific responsive rules for .product-review-form-container and .social-row */
}