.wc-otp-verification{ margin: 12px 0; padding: 12px; background: rgba(0,0,0,0.03); border-radius: 8px; text-align:center; }
.wc-otp-instructions{ margin: 0 0 8px; font-weight: 600; }
.wc-otp-inputs{ display:flex; justify-content:center; gap:8px; margin-bottom:8px; }
.wc-otp-inputs input[type="text"] { width: 10%; }
.wc-otp-digit{ width:42px; height:52px; text-align:center; font-size:22px; border:1px solid #dcdcdc; border-radius:8px; }
.wc-otp-actions{ display:flex; justify-content:center; gap:12px; align-items:center; font-size:14px; }
.wc-otp-actions .wc-otp-resend{ cursor:pointer; }
.wc-otp-msg{ display:inline-block; margin-left:8px; font-weight:600; }
.wc-otp-msg.is-success{ color:#1a7f37; }
.wc-otp-msg.is-error{ color:#b91c1c; }
.wc-otp-msg.is-warning{ color:#a16207; }

@keyframes wc-otp-shake { 10%, 90% { transform: translateX(-1px); } 20%, 80% { transform: translateX(2px);} 30%, 50%, 70% { transform: translateX(-4px);} 40%, 60% { transform: translateX(4px);} }
.wc-otp-shake{ animation: wc-otp-shake 0.45s; }


/* --- Visibility polish for messages (Flatsome lightbox friendly) --- */
.woocommerce-error.wc-otp-inline-error,
.wc-otp-msg.is-error,
.wc-otp-msg.is-warning,
.wc-otp-msg.is-success {
  display: block;
  margin: 12px 0 16px !important;
  padding: 12px 14px !important;
  border-radius: 10px;
  line-height: 1.35;
  font-size: 0.9em;
  font-weight: 600;
}

/* Red error */
.woocommerce-error.wc-otp-inline-error,
.wc-otp-msg.is-error {
  background: #ffe6e6 !important;
  border: 1px solid #e11d48 !important; /* rose-600 */
  color: #7f1027 !important;
  box-shadow: 0 2px 8px rgba(225,29,72,.12);
}

/* Warning */
.wc-otp-msg.is-warning {
  background: #fff4d6 !important;
  border: 1px solid #d97706 !important;
  color: #7a4a03 !important;
  box-shadow: 0 2px 8px rgba(217,119,6,.12);
}

/* Success */
.wc-otp-msg.is-success {
  background: #e6f6ea !important;
  border: 1px solid #16a34a !important;
  color: #14532d !important;
  box-shadow: 0 2px 8px rgba(22,163,74,.12);
}

/* Make list bullets hidden and text compact */
.woocommerce-error.wc-otp-inline-error {
  list-style: none;
}
.woocommerce-error.wc-otp-inline-error li {
  margin: 0;
}

/* Increase contrast in Flatsome modal/lightbox */
.mfp-content .woocommerce-error.wc-otp-inline-error,
.mfp-content .wc-otp-msg {
  max-width: 100%;
}

/* Improve OTP inputs spacing when message present */
.wc-otp-verification + .wc-otp-msg,
.woocommerce-error.wc-otp-inline-error + .wc-otp-verification {
  margin-top: 8px;
}

/* Resend link as subtle button */
.wc-otp-actions .wc-otp-resend {
  display:inline-block;
  padding: 6px 10px;
  border: 1px solid rgba(0,0,0,.12);
  border-radius: 8px;
  background: #fafafa;
  transition: all .15s ease-in-out;
}
.wc-otp-actions .wc-otp-resend[aria-disabled="true"] {
  opacity: .6;
  cursor: not-allowed;
}
.wc-otp-actions .wc-otp-resend:hover {
  transform: translateY(-1px);
  box-shadow: 0 2px 6px rgba(0,0,0,.08);
}

.wc-otp-hp-wrap{ position:absolute !important; left:-9999px !important; top:auto !important; width:1px !important; height:1px !important; overflow:hidden !important; }
