.store-locator-rating-modal-errors-wrapper,
.store-locator-rating-modal-success-wrapper {
  display: none !important;
}

/* Success message styling - hidden by default */
.store-locator-rating-modal-success-wrapper {
  text-align: center;
  padding: 2rem 1rem;
  min-height: 200px;
  display: none !important; /* Force hidden by default */
  align-items: center;
  justify-content: center;
  flex-direction: column;
}

/* When success message is shown */
.store-locator-rating-modal-success-wrapper.success-message {
  display: flex !important;
}

.store-locator-rating-modal-success-wrapper span {
  font-size: 1.5rem;
  font-weight: 600;
  color: #333;
  margin-bottom: 1rem;
}

/* Error message styling */
.store-locator-rating-modal-errors-wrapper {
  padding: 1rem;
  background-color: #f8d7da;
  border: 1px solid #f5c6cb;
  border-radius: 4px;
  margin-bottom: 1rem;
}

.store-locator-rating-modal-errors-wrapper span {
  font-weight: 600;
  color: #721c24;
}

.store-locator-rating-modal-errors {
  margin: 0.5rem 0 0 0;
  padding-left: 1.5rem;
}

.store-locator-rating-modal-errors li {
  color: #721c24;
  margin-bottom: 0.25rem;
}

.store-locator-rating-star-radios input[type="radio"] {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
  min-height: 5px;
  margin: 0;
}

.store-locator-rating-star-radios input[type="radio"]:focus + label {
  outline: 2px solid #000;
  outline-offset: 2px;
}

.store-locator-rating-star-radios .fieldset-wrapper div {
  display: flex;
}

.store-locator-rating-star-radios label {
  display: inline-block;
  margin: 0 4px;
  font-size: 2rem;
  color: #ccc;
  cursor: pointer !important;
  transition: color 0.1s ease;
  line-height: 1;
  overflow: visible;
}

/* Style stars when wrapper has highlighted class */
.store-locator-rating-star-radios .form-element-radio.highlighted label,
.store-locator-rating-star-radios .form-item.highlighted label,
.store-locator-rating-star-radios .js-form-item.highlighted label,
.store-locator-rating-star-radios [class*="form-item"].highlighted label {
  color: black;
}

/* Style stars when wrapper has selected class */
.store-locator-rating-star-radios .form-element-radio.selected label,
.store-locator-rating-star-radios .form-item.selected label,
.store-locator-rating-star-radios .js-form-item.selected label,
.store-locator-rating-star-radios [class*="form-item"].selected label {
  color: black;
}

/* Ensure form controls don't get cut off */
.ck-store-locator-rating-form .ckc-form-control {
  width: initial;
  overflow: visible;
}

/* Fix any potential overflow issues */
.store-locator-rating-star-radios {
  overflow: visible;
}

.store-locator-rating-star-radios .form-element-radio,
.store-locator-rating-star-radios .form-item,
.store-locator-rating-star-radios .js-form-item,
.store-locator-rating-star-radios [class*="form-item"] {
  overflow: visible;
  cursor: pointer !important;
}

/* Ensure stars are fully visible */
.store-locator-rating-star-radios label span {
  display: inline-block;
  overflow: visible;
}
.store-locator-rating-title {
  font-size: 2.125rem;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: normal;
  margin-bottom: .5rem !important;
}

.store-locator-rating-star-radios .fieldset-wrapper {
  margin-bottom: 1rem !important;
  margin-top: .5rem !important;
}
#store-locator-rating-modal .c-modal__content {
  padding: 0 1rem;
}