.unlocked-indicator {
  display: flex;
  align-items: center;
  margin: 2rem 0;
  color: var(--pb-unlocked-indicator-color);      /* Line + text color */
  font-family: inherit;
  font-size: 1rem;
  text-align:center;
}

/* Mobile override rule */
@media (max-width: 600px) {
  .unlocked-indicator {
    font-size: 9px;
  }
}

.unlocked-indicator::before,
.unlocked-indicator::after {
  content: "";
  flex: 1 1 auto;
  min-width: 20px;
  height: 1px;
  background: currentColor;                  /* Uses the same color as the text */
}

.unlocked-indicator span {
  display: inline-block;
  padding: 0 1rem;                           /* Space between text and lines */
  word-break: break-word; 
}

/* Show Unlock Count on the Front-end */
.pb-frontend-unlock-count {
  color: var(--pb-frontend-unlock-color, #0074C2);
  margin-bottom: 1em;
  text-align: center;
  font-family: inherit;
  font-size: 1.2em;
  font-style: italic;
}

/* --- Coupon layout --- */
.pb-coupon-wrap {
  margin: 12px 0 14px;
  text-align: center;
}

.pb-coupon-label {
  display: block;
  margin-bottom: 6px;
  font-weight: 800;
}

.pb-coupon-row {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.pb-coupon-input {
  height: 38px;
  padding: 0 12px;
  min-width: 220px;
  border: 1px solid #d0d7de;
  border-radius: 8px;
  background: #fff;
  outline: none;
  transition: box-shadow .15s ease, border-color .15s ease;
}
.pb-coupon-input:focus {
  border-color: #0074C2;
  box-shadow: 0 0 0 3px rgba(13,110,253,.15);
}

.pb-coupon-apply {
  height: 38px;
  padding: 0 14px;
  border: 1px solid #0074C2;
  border-radius: 8px;
  background: #0074C2;
  color: #fff;
  font-weight: 600;
  cursor: pointer;
  transition: filter .15s ease, transform .02s ease;
}
.pb-coupon-apply:hover { filter: brightness(1.05); }
.pb-coupon-apply:active { transform: translateY(1px); }
.pb-coupon-apply:disabled { opacity: .65; cursor: not-allowed; }

.pb-coupon-hint {
  margin-top: 6px;
  font-size: 12px;
  line-height: 1.2;
}
.pb-coupon-msg { font-weight: 600; }
.pb-coupon-msg.success { color: #198754; }
.pb-coupon-msg.error   { color: #dc3545; }