/* ======================================================
RATING CARD
====================================================== */

.srr-rating-inner{
  position:relative;
  background:linear-gradient(to right,#000000,#414345);
  color:#fff;
  border-radius:20px;
  padding:36px 30px;
  text-align:center;
  overflow:hidden;
}

.srr-rating-inner::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 20% 20%, rgba(73,174,96,0.15), transparent 40%),
    radial-gradient(circle at 80% 80%, rgba(255,193,7,0.08), transparent 40%);
  pointer-events:none;
}

/* ======================================================
INTERACTIVE STARS (TOP BLOCK)
====================================================== */

.srr-stars{
  display:flex;
  justify-content:center;
  gap:6px;
  margin-bottom:10px;
}

.srr-stars .srr-star{
  font-size:34px;
  color:#555;
  cursor:pointer;
  transition:.2s ease;
}

.srr-star.active,
.srr-star.hover{
  color:#ffc107 !important;
  transform:scale(1.1);
}

.srr-locked .srr-star{
  cursor:default;
  transform:none;
}

/* ======================================================
UNIFIED STAR SYSTEM (EVERYWHERE ELSE)
====================================================== */

.srr-stars-display{
  display:inline-flex;
  gap:2px;
  line-height:1;
}

/* BASE STAR */
.srr-stars-display .srr-star{
  font-size:16px;
  color:#e9ecef; /* softer empty color */
  position:relative;
  display:inline-block;
}

/* FULL */
.srr-stars-display .srr-star.filled{
  color:#ffc107;
}

/* HALF */
.srr-stars-display .srr-star.half{
  color:#e9ecef;
}

.srr-stars-display .srr-star.half::before{
  content:"★";
  position:absolute;
  left:0;
  top:0;
  width:50%;
  overflow:hidden;
  color:#ffc107;
}

/* EMPTY */
.srr-stars-display .srr-star.empty{
  color:#e9ecef;
}

/* ======================================================
SIZE VARIANTS
====================================================== */

/* summary (cards, inline) */
.srr-summary .srr-star{
  font-size:20px;
}

/* widget */
.srr-widget-stars .srr-star{
  font-size:28px;
}

/* main block */
.srr-stars .srr-star{
  font-size:34px;
}

/* inline meta override */
.recipe-meta-inline .srr-summary{
  font-size:22px;
}

/* ======================================================
RATING INFO
====================================================== */

.srr-rating-info{
  margin-top:8px;
  font-size:15px;
  color:#d1d1d1;
}

.srr-rating-info strong{
  color:#ffffff;
}

/* ======================================================
CTA BUTTON
====================================================== */

.srr-rating-cta{
  margin-top:18px;
  display:inline-block;
  background:#49ae60;
  padding:12px 22px;
  border-radius:10px;
  font-weight:600;
  cursor:pointer;
  transition:.25s ease;
}

.srr-rating-cta:hover{
  background:#3f9a55;
  transform:translateY(-2px);
}

/* icon spacing */
.srr-rating-cta i{
  margin-right:6px;
  font-size:14px;
  position:relative;
  top:1px;
}

/* ======================================================
SUMMARY (INLINE)
====================================================== */

.srr-summary{
  display:inline-flex;
  align-items:center;
  gap:4px;
  line-height:1;
}

.srr-votes{
  margin-left:6px;
  color:#666;
  font-size:13px;
}

/* ======================================================
WIDGET
====================================================== */

.srr-rating-widget{
  display:flex;
  align-items:center;
  gap:8px;
  margin:10px 0 0;
}

.srr-widget-stars{
  display:flex;
  align-items:center;
}

.srr-widget-votes{
  font-size:18px;
  color:#000;
  font-weight:600;
  cursor:pointer;
}

/* ======================================================
CLICKABLE VOTES (UX)
====================================================== */

.srr-votes,
.srr-widget-votes{
  cursor:pointer;
  position:relative;
  transition:.2s ease;
}

.srr-votes:hover,
.srr-widget-votes:hover{
  color:#49ae60;
}

.srr-votes::after,
.srr-widget-votes::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-2px;
  width:0;
  height:1px;
  background:#49ae60;
  transition:.2s;
}

.srr-votes:hover::after,
.srr-widget-votes:hover::after{
  width:100%;
}

/* ======================================================
MOBILE
====================================================== */

@media (max-width:767px){

  .srr-rating-inner{
    padding:24px 16px;
    border-radius:16px;
  }

  .srr-rating-inner h3{
    font-size:28px;
  }

  .srr-stars .srr-star{
    font-size:32px;
  }

  .srr-rating-info{
    font-size:14px;
  }

  .srr-rating-cta{
    padding:10px 16px;
    font-size:14px;
  }

  .srr-widget-stars .srr-star{
    font-size:26px;
  }

}
