/* SDF Prize Section — clean, minimal, RTL */

/* If the font is loaded in your theme, this will use it. */
.sdf-prize-wrap{
  font-family: PeydaWebSDFBold, PeydaWeb, Peyda, IRANSans, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  display:flex;
  justify-content:center;
  padding: 24px 12px;
}

.sdf-prize-card{
  width: min(560px, 100%);
  border-radius: 18px;
  box-shadow: 0 10px 30px rgba(0,0,0,.06);
  border: 1px solid rgba(0,0,0,.06);
  padding: 22px 20px 18px;
}

.sdf-prize-head{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  margin-bottom: 14px;
  justify-content: center;
}

.sdf-prize-title{
  display:flex;
  align-items:center;
  gap: 10px;
  color:#fff;
  font-size: 18px;
}

.sdf-prize-title__arrow{
  font-size: 18px;
  opacity:.9;
}

.sdf-step{
  transition: opacity .25s ease, transform .25s ease;
}
.sdf-step[hidden]{ display:none !important; }

.sdf-code-inputs{
    direction:ltr;
  display:flex;
  gap: 10px;
  justify-content:center;
  padding: 10px 0 4px;
}

.sdf-digit, .sdf-otp-digit{
  width: 56px;
  height: 48px;
  border-radius: 10px;
  border: 1px solid rgba(17,24,39,.12);
  background: #f9fafb;
  text-align:center;
  font-size: 18px;
  outline: none;
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease, background .18s ease;
}

.sdf-digit:focus, .sdf-otp-digit:focus{
  border-color: rgba(0, 81, 243,.55);
  box-shadow: 0 0 0 4px rgba(0, 81, 243,.14);
  background: #fff;
  transform: translateY(-1px);
}

.sdf-under{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap: 10px;
  margin-top: 10px;
}

.sdf-btn{
  border: 0;
  border-radius: 8px;
  padding: 12px 14px;
  font-size: 14px;
  cursor: pointer;
  transition: transform .12s ease, box-shadow .18s ease, opacity .18s ease;
  user-select:none;
}

.sdf-btn:active{ transform: translateY(1px); }
.sdf-btn[disabled]{ opacity:.55; cursor:not-allowed; }

.sdf-btn--primary{
  background-color: #0051f3!important;
  color: #fff;
  box-shadow: 0 8px 16px rgba(17,24,39,.14);
  border:none!important;
  border-radius:8px;
  border-radius: 8px !important;
}
.sdf-btn--primary:hover{ box-shadow: 0 10px 20px rgba(17,24,39,.18); }

.sdf-btn--ghost{
    border:none!important;
  background-color: #0051f3!important;
  border: 1px solid rgba(17,24,39,.14);
  color:#fff;
}

.sdf-btn--full{ width: 100%; }

.sdf-hint{
  min-height: 18px;
  font-size: 12.5px;
  line-height: 1.6;
}
.sdf-hint--error{ color:#b91c1c; }
.sdf-hint--ok{ color:#166534;
text-align:center!important;}

.sdf-timer-row{
  margin-top: 14px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap: 10px;
}

.sdf-timer-badge{
  width: 30px;
  height: 30px;
  border-radius: 999px;
  border: 2px solid #0051f3;
  color:#0051f3;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size: 12px;
  background: #fff;
}

.sdf-timer-text{
  font-size: 13px;
  color:#fff;
}

.sdf-form{
  margin-top: 10px;
  display:flex;
  flex-direction:column;
  gap: 12px;
  
}

.sdf-field{
  display:flex;
  flex-direction:column;
  gap: 10px;
}

.sdf-label{
  font-size: 13px;
  color:#fff;
  opacity:.95;
}

.sdf-input{
  height: 46px;
  border-radius: 8px!important;
  border: 1px solid rgba(17,24,39,.12);
  background: #f9fafb;
  padding: 0 12px;
  outline:none;
  font-size: 14px;
  transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
.sdf-input:focus{
  background: #fff;
  border-color: rgba(0, 81, 243,.55);
  box-shadow: 0 0 0 4px rgba(0, 81, 243,.14);
}

.sdf-field-msg{
  font-size: 12px;
  color:#b91c1c;
  margin-top:10px;
}

.sdf-otp-title{
  margin-top: 6px;
  text-align:center;
  font-size: 14px;
  color:#fff;
  opacity:.9;
}

.sdf-otp-inputs{
    direction:ltr;
  margin-top: 14px;
  display:flex;
  justify-content:center;
  gap: 10px;
}

.sdf-otp-actions{
  margin-top: 14px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap: 10px;
}

.sdf-resend-meta{
  margin-right: 6px;
  font-size: 12px;
  opacity: .85;
  direction: ltr;
  unicode-bidi: embed;
}

@media (max-width: 480px){
  .sdf-digit, .sdf-otp-digit{ width: 48px; height: 46px; }
  .sdf-prize-card{ padding: 18px 14px 14px; border-radius: 16px; }
}

/* Desktop: force single line (no wrap) */
@media (min-width: 720px){
  .sdf-step--info .sdf-form{
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    align-items:flex-start !important;
    justify-content:center;
    gap:12px;
    width:min(920px, 100%);
    margin:0 auto;
  }

  /* لیبل‌ها در دسکتاپ مخفی */
  .sdf-step--info .sdf-label{ display:none !important; }

  /* فیلدها یک خط + فضای ثابت برای پیام */
  .sdf-step--info .sdf-field{
    flex:1 1 320px;
    min-width:220px;
    margin:0;
    position:relative;
    padding-bottom:20px;     /* رزرو فضا برای پیام */
    overflow:visible;
    align-items:stretch;
  }

  /* پیام زیر هر فیلد بدون تکان دادن ردیف */
  .sdf-step--info .sdf-field-msg{
    position:absolute;
    right:0;
    left:0;
    bottom:0;
    display:block;           /* لازم نیست !important */
    min-height:18px;
    margin:0;
    line-height:1.4;
    text-align:right;
  }

  /* پیام کلی فرم */
  .sdf-step--info [data-slot="info-error"]{
    display:block;
    text-align:center;
    margin-top:10px;
  }

  /* دکمه */
  .sdf-step--info .sdf-btn--full{
    flex:0 0 auto;
    width:auto !important;
    height:46px;
    padding:0 22px;
    white-space:nowrap;
    align-self:flex-start;
  }
}
