
/* Grid */
.mro-reviews-grid{display:grid;gap:16px;margin:12px 0}
.mro-reviews-grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.mro-reviews-grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.mro-reviews-grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:900px){.mro-reviews-grid.cols-3,.mro-reviews-grid.cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.mro-reviews-grid{grid-template-columns:1fr}}
.mro-review-card{border:1px solid #e5e7eb;border-radius:10px;padding:14px;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.04)}
.mro-review-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:14px}
.mro-review-author{font-weight:600}
.mro-review-rating{color:#111}
.mro-review-image img{display:block;max-width:100%;height:auto;border-radius:8px;margin:8px 0}
.mro-review-content{font-size:14px;line-height:1.5;color:#333}
.mro-review-meta{font-size:12px;color:#666;margin-top:8px}
.mro-pagination{display:flex;gap:8px;margin:12px 0}
.mro-pagination a{padding:6px 10px;border:1px solid #e5e7eb;border-radius:6px;text-decoration:none}
.mro-pagination a.current{background:#111;color:#fff;border-color:#111}

/* Stars */
.mro-stars{display:inline-flex;align-items:center;gap:.45rem}
.text-center{text-align:center}
.text-right{text-align:right}
.mro-star{color:var(--mro-star-color,#FFC107);font-size:1.05em;line-height:1}
.mro-star.empty{opacity:.25}
.mro-stars-text{font-weight:600}

/* Landing & write form */
.mro-review-landing{max-width:800px;margin:0 auto;padding:10px}
.mro-write-review-wrap{border:1px solid #e5e7eb;border-radius:10px;padding:16px;margin:16px 0;background:#fff}
.mro-write-review{margin:0 0 8px;font-size:18px}
.mro-rating-select{display:inline-flex;flex-direction:row-reverse;gap:6px;margin-left:8px}
.mro-rating-select input{display:none}
.mro-rating-select label{cursor:pointer;font-size:20px;color:#ccc}
.mro-rating-select input:checked ~ label,
.mro-rating-select label:hover,
.mro-rating-select label:hover ~ label{color:var(--mro-star-color,#FFC107)}
.comment-form-comment textarea{width:100%}


/* Collapsible write review */
.mro-write-review-wrap{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;margin:20px 0}
.mro-write-toggle{background:var(--mro-star-color,#FFC107);border:0;border-radius:999px;padding:10px 18px;font-weight:700;color:#111;cursor:pointer;box-shadow:0 1px 2px rgba(0,0,0,.1)}
.mro-write-toggle:hover{filter:brightness(.95)}
.mro-write-panel{max-width:760px;width:100%;text-align:left}
.mro-write-review{margin:0 0 8px;font-size:20px;text-align:center}
/* Center rating stars and make them clickable for guests */
.mro-rating-select{display:inline-flex;flex-direction:row-reverse;gap:6px;margin-left:8px}
.mro-rating-select input{display:none}
.mro-rating-select label{cursor:pointer;font-size:22px;color:#ccc}
.mro-rating-select input:checked ~ label,
.mro-rating-select label:hover,
.mro-rating-select label:hover ~ label{color:var(--mro-star-color,#FFC107)}
.comment-form-comment textarea{width:100%}
/* Align comment form fields nicely */
.mro-write-panel .comment-respond{border:1px solid #e5e7eb;border-radius:10px;background:#fff;padding:16px}
.mro-write-panel input[type="text"],
.mro-write-panel input[type="email"],
.mro-write-panel textarea{width:100%}
.mro-write-panel .form-submit input[type="submit"]{background:var(--mro-star-color,#FFC107);border:0;border-radius:8px;color:#111;font-weight:700;padding:10px 14px;cursor:pointer}


/* --- Allhart AI Reviews 2.2.5 UI fixes --- */
.mro-reviews-grid { margin-left:auto; margin-right:auto; }
.mro-write-review-wrap { text-align:center; }
.mro-write-panel { max-width: 720px; margin: 1rem auto; }

.mro-rating-select input[type="radio"]{
  position:absolute;
  opacity:0;
  width:0;height:0;
}
.mro-rating-select label{
  cursor:pointer;
  display:inline-block;
  line-height:1;
}
/* --- end UI fixes --- */


/* --- Allhart AI Reviews 2.2.6 Masonry + Fade-in --- */
.mro-reviews-grid{
  column-count: 3;
  column-gap: 1rem;
}
@media (max-width: 1024px){
  .mro-reviews-grid{ column-count: 2; }
}
@media (max-width: 640px){
  .mro-reviews-grid{ column-count: 1; }
}
.mro-review-card{
  break-inside: avoid;
  margin: 0 0 1rem;
  display: inline-block;
  width: 100%;
  opacity: 1;
  transform: translateY(0);
  will-change: transform, opacity;
}
.mro-fade-in{
  animation: mroFade 420ms ease forwards;
}
@keyframes mroFade{
  from{ opacity: 0; transform: translateY(8px); }
  to{ opacity: 1; transform: translateY(0); }
}
/* --- end 2.2.6 --- */

/* Star color variable wiring */
:root{ --mro-star-color: #FFC107; }
.mro-star.filled,
.acr-star.filled,
.asr-star.filled { color: var(--mro-star-color); }

/* Force WooCommerce star widgets to use the configured star color (catalog safety net) */
.woocommerce .star-rating,
.woocommerce ul.products li.product .star-rating,
.woocommerce .star-rating::before,
.woocommerce .star-rating span::before {
  color: var(--mro-star-color) !important;
}
/* Some themes expose a CSS var for star color; set it if present */
:root{
  --wc-star-rating-rated-color: var(--mro-star-color) !important;
  --wc-star-rating-color: var(--mro-star-color) !important;
}
