/* =========================
   Fluent Forms — RahFilm
========================= */

.rf-fluent,
.rf-fluent *{
  font-family: 'Doran', sans-serif !important;
  box-sizing: border-box;
}

/* form wrapper */
.rf-fluent{
  width: 100%;
}

/* labels */
.rf-fluent .ff-el-form-label label{
  color: rgba(255,255,255,.92);
  font-size: 14px;
  font-weight: 600;
  margin-bottom: 10px;
  display: block;
}

/* inputs */
.rf-fluent input[type=text],
.rf-fluent input[type=email],
.rf-fluent input[type=url],
.rf-fluent input[type=number],
.rf-fluent input[type=tel],
.rf-fluent input[type=date],
.rf-fluent textarea,
.rf-fluent select{
  width: 100%;
  background: rgba(255,255,255,.04) !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  border-radius: 18px !important;
  color: #fff !important;
  padding: 14px 16px !important;
  min-height: 54px;
  transition: .18s ease;
  font-size: 15px;
}

/* textarea */
.rf-fluent textarea{
  min-height: 140px;
  resize: vertical;
}

/* focus */
.rf-fluent input:focus,
.rf-fluent textarea:focus,
.rf-fluent select:focus{
  border-color: rgba(255,255,255,.24) !important;
  background: rgba(255,255,255,.06) !important;
  outline: none !important;
  box-shadow: none !important;
}

/* placeholder */
.rf-fluent ::placeholder{
  color: rgba(255,255,255,.42);
}

/* sections */
.rf-fluent .ff_t_section_break{
  margin: 40px 0 18px;
  padding-bottom: 14px;
  border-bottom: 1px solid rgba(255,255,255,.08);
}

.rf-fluent .ff_t_section_break h3{
  font-size: 26px;
  color: #fff;
  margin-bottom: 8px;
}

/* descriptions */
.rf-fluent .ff-el-input--content,
.rf-fluent .ff-el-help-message{
  color: rgba(255,255,255,.55);
  font-size: 13px;
  margin-top: 8px;
}

/* repeater */
.rf-fluent .ff_repeater_item{
  background: rgba(255,255,255,.03);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 22px;
  padding: 20px;
  margin-bottom: 20px;
}

/* add button */
.rf-fluent .ff-btn-add,
.rf-fluent .ff_repeater_add{
  background: rgba(255,255,255,.06) !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  color: #fff !important;
  border-radius: 14px !important;
  padding: 10px 14px !important;
}

/* remove button */
.rf-fluent .ff-btn-remove{
  border-radius: 12px !important;
}

/* submit button */
.rf-fluent .ff-btn-submit{
  width: 100%;
  min-height: 56px;
  border-radius: 18px !important;
  border: none !important;
  font-family: 'Doran', sans-serif !important;
  font-size: 15px;
  font-weight: 700;
  background: linear-gradient(
    135deg,
    rgba(255,106,61,.95),
    rgba(110,231,255,.55)
  ) !important;
  color: #0b1220 !important;
  transition: .18s ease;
}

.rf-fluent .ff-btn-submit:hover{
  transform: translateY(-1px);
}

/* checkboxes & radios */
.rf-fluent input[type=checkbox],
.rf-fluent input[type=radio]{
  accent-color: #ff6a3d;
}

/* spacing */
.rf-fluent .ff-el-group{
  margin-bottom: 22px;
}
/* =========================
   Submit Layout
========================= */

.rf-submitLayout{
  display:grid;
  gap:24px;
  align-items:start;
}

@media(min-width:980px){

  .rf-submitLayout{
    grid-template-columns:
      minmax(0,2fr)
      minmax(320px,1fr);
  }

}

/* =========================
   Fluent Select Styling
========================= */

.rf-fluent select{
  appearance:none;
  -webkit-appearance:none;
  -moz-appearance:none;

  background:
    rgba(255,255,255,.04)
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' viewBox='0 0 24 24'%3E%3Cpath d='M7 10l5 5 5-5' stroke='white' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E")
    no-repeat left 16px center !important;

  background-size:18px !important;

  padding-left:46px !important;
}

/* dropdown list */
.rf-fluent select option{
  background:#111827;
  color:#fff;
}

/* choices.js */
.rf-fluent .choices{
  margin-bottom:0;
}

.rf-fluent .choices__inner{
  background:rgba(255,255,255,.04) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  border-radius:18px !important;
  min-height:54px;
  padding:10px 14px !important;
  color:#fff !important;
}

/* =========================
   Fluent Grid Fix
========================= */

.rf-fluent .ff-t-cell{
  padding:0 10px;
}

.rf-fluent .ff-t-container{
  margin-left:-10px;
  margin-right:-10px;
}

.rf-fluent .ff-column-container{
  display:flex;
  flex-wrap:wrap;
}

.rf-fluent .ff-column{
  width:100%;
}

@media(min-width:768px){

  .rf-fluent .ff-column.ff-column-1{
    width:100%;
  }

  .rf-fluent .ff-column.ff-column-2{
    width:50%;
  }

  .rf-fluent .ff-column.ff-column-3{
    width:33.333%;
  }

}
.rf-fluent .choices__list--dropdown,
.rf-fluent .choices__list[aria-expanded]{
  background:#111827 !important;
  border:1px solid rgba(255,255,255,.10) !important;
  border-radius:18px !important;
  overflow:hidden;
  color:#fff;
}

.rf-fluent .choices__item--selectable{
  padding:12px 14px !important;
}

.rf-fluent .choices__item--selectable.is-highlighted{
  background:rgba(255,255,255,.08) !important;
}

/* =========================
   Fluent Accordion Sections
========================= */

.rf-fluent .rf-acc-section{
  border-radius:22px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.035);
  overflow:hidden;
  margin:0 0 18px;
}

.rf-fluent .rf-acc-head{
  width:100%;
  min-height:62px;
  padding:0 18px;
  border:0;
  background:rgba(255,255,255,.045);
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  cursor:pointer;
  font-family:'Doran', sans-serif !important;
  font-size:17px;
  font-weight:900;
  text-align:right;
}

.rf-fluent .rf-acc-head::before{
  content:"+";
  width:32px;
  height:32px;
  border-radius:12px;
  display:grid;
  place-items:center;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.10);
  color:rgba(255,255,255,.86);
  flex:0 0 auto;
  transition:transform .2s ease, background .2s ease;
}

.rf-fluent .rf-acc-section.is-open .rf-acc-head::before{
  content:"–";
  background:linear-gradient(135deg, rgba(255,106,61,.95), rgba(110,231,255,.55));
  color:#07101a;
}

.rf-fluent .rf-acc-body{
  display:none;
  padding:20px 18px 4px;
}

.rf-fluent .rf-acc-section.is-open .rf-acc-body{
  display:block;
}

/* Section Break اصلی Fluent داخل accordion مخفی شود */
.rf-fluent .rf-acc-body > .ff_t_section_break:first-child{
  display:none;
}

/* زیرگروه‌های عوامل کمی جمع‌وجورتر */
.rf-fluent .rf-acc-section.is-sub{
  margin:12px 0;
  border-radius:18px;
  background:rgba(255,255,255,.025);
}

.rf-fluent .rf-acc-section.is-sub .rf-acc-head{
  min-height:52px;
  font-size:15px;
}

.rf-fluent .rf-acc-section.is-sub .rf-acc-body{
  padding:16px 14px 2px;
}



/* Crew rows inside "لیست عوامل" */

.rf-fluent .rf-crewRow{
  display:grid;
  gap:14px;
  align-items:start;
  padding:16px;
  margin-bottom:14px;
  border-radius:20px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.035);
}

.rf-fluent .rf-crewRow__label{
  color:#fff;
  font-family:'Doran', sans-serif !important;
  font-size:16px;
  font-weight:900;
  white-space:nowrap;
}

.rf-fluent .rf-crewRow__fields{
  display:grid;
  gap:14px;
}

.rf-fluent .rf-crewRow__fields .ff-el-group{
  margin-bottom:0;
}

@media(min-width:900px){
  .rf-fluent .rf-crewRow{
    grid-template-columns:150px minmax(0, 1fr);
  }

  .rf-fluent .rf-crewRow__fields{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}

/* =========================
   RahFilm Fluent Final Fixes
========================= */

/* کم‌کردن فاصله داخل بخش‌ها */
.rf-fluent .rf-acc-body{
  padding:16px 18px 6px !important;
}

/* فاصله کمتر بین عنوان لیست عوامل و ردیف اول */
.rf-fluent .rf-crewRow:first-of-type{
  margin-top:0 !important;
}

/* ردیف عوامل */
.rf-fluent .rf-crewRow{
  display:grid;
  gap:12px;
  align-items:center;
  padding:14px 16px !important;
  margin-bottom:12px !important;
  border-radius:20px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.035);
}

/* عنوان نقش */
.rf-fluent .rf-crewRow__label{
  color:#fff;
  font-family:'Doran', sans-serif !important;
  font-size:15px;
  font-weight:900;
  white-space:nowrap;
}

/* فیلدهای عوامل کنار هم */
.rf-fluent .rf-crewRow__fields{
  display:grid;
  gap:12px;
}

.rf-fluent .rf-crewRow__fields .ff-el-group{
  margin-bottom:0 !important;
}

@media(min-width:900px){
  .rf-fluent .rf-crewRow{
    grid-template-columns:140px minmax(0, 1fr);
  }

  .rf-fluent .rf-crewRow__fields{
    grid-template-columns:repeat(2, minmax(0, 1fr));
    align-items:start;
  }
}

/* حذف فاصله‌های اضافی Fluent */
.rf-fluent .ff-el-section-break{
  margin-top:0 !important;
}

.rf-fluent .ff-el-group{
  margin-bottom:16px !important;
}


/* Native select */
.rf-fluent select{
  max-height:54px !important;
  overflow:hidden !important;
  background-color:rgba(255,255,255,.04) !important;
}

/* Select option menu */
.rf-fluent select option{
  background:#111827 !important;
  color:#fff !important;
  padding:12px !important;
}

/* Choices dropdown */
.rf-fluent .choices__list--dropdown,
.rf-fluent .choices__list[aria-expanded]{
  background:#111827 !important;
  border:1px solid rgba(255,255,255,.12) !important;
  border-radius:18px !important;
  box-shadow:0 18px 40px rgba(0,0,0,.35);
  overflow:hidden !important;
}

.rf-fluent .choices__list--dropdown .choices__list{
  max-height:240px !important;
  overflow-y:auto !important;
}

/* scrollbar */
.rf-fluent .choices__list--dropdown .choices__list::-webkit-scrollbar{
  width:8px;
}

.rf-fluent .choices__list--dropdown .choices__list::-webkit-scrollbar-track{
  background:rgba(255,255,255,.04);
  border-radius:999px;
}

.rf-fluent .choices__list--dropdown .choices__list::-webkit-scrollbar-thumb{
  background:rgba(255,255,255,.20);
  border-radius:999px;
}

.rf-fluent .choices__item--selectable{
  padding:12px 14px !important;
  color:#fff !important;
  font-family:'Doran', sans-serif !important;
}

.rf-fluent .choices__item--selectable.is-highlighted{
  background:rgba(255,255,255,.08) !important;
}

/* checkbox chips */
.rf-fluent .ff-el-form-check{
  display:inline-flex !important;
  align-items:center;
  margin:0 8px 8px 0 !important;
}

.rf-fluent .ff-el-form-check label{
  display:inline-flex !important;
  align-items:center;
  gap:8px;
  padding:10px 14px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.045);
  color:#fff;
  cursor:pointer;
}

.rf-fluent .ff-el-form-check input{
  accent-color:#ff6a3d;
}

/* =========================
   Crew Row FINAL FIX
========================= */

.rf-fluent .rf-crewRow{
  display:grid !important;
  grid-template-columns:130px minmax(0,1fr) !important;
  align-items:center !important;
  gap:18px !important;

  padding:14px 18px !important;
  margin-bottom:12px !important;

  border-radius:22px !important;
  border:1px solid rgba(255,255,255,.10) !important;
  background:rgba(255,255,255,.035) !important;
}

/* عنوان سمت راست */
.rf-fluent .rf-crewRow__label{
  margin:0 !important;
  padding:0 !important;

  color:#fff !important;
  font-size:15px !important;
  font-weight:900 !important;
  line-height:1.2 !important;

  white-space:nowrap !important;
}

/* کانتینر فیلدها */
.rf-fluent .rf-crewRow__fields{
  display:grid !important;
  grid-template-columns:repeat(2, minmax(0,1fr)) !important;
  gap:12px !important;
  align-items:start !important;
}

/* خود فیلدهای Fluent */
.rf-fluent .rf-crewRow__fields .ff-el-group{
  margin:0 !important;
  width:100% !important;
}

/* حذف فاصله‌های اضافی */
.rf-fluent .rf-crewRow__fields .ff-el-form-control{
  margin-bottom:0 !important;
}

/* تیتر بالای input */
.rf-fluent .rf-crewRow__fields .ff-el-input--label{
  margin-bottom:6px !important;
}

/* INPUT */
.rf-fluent .rf-crewRow input{
  height:54px !important;
}

/* موبایل */
@media(max-width:768px){

  .rf-fluent .rf-crewRow{
    grid-template-columns:1fr !important;
    gap:12px !important;
  }

  .rf-fluent .rf-crewRow__fields{
    grid-template-columns:1fr !important;
  }

}

.rf-fluent .rf-crewRow{
  display:grid !important;
  grid-template-columns:130px minmax(0,1fr) !important;
  gap:16px !important;
  align-items:start !important;
  padding:14px 18px !important;
  margin:0 0 12px !important;
  border-radius:22px !important;
  border:1px solid rgba(255,255,255,.10) !important;
  background:rgba(255,255,255,.035) !important;
}

.rf-fluent .rf-crewRow__label{
  color:#fff !important;
  font-size:15px !important;
  font-weight:900 !important;
  line-height:54px !important;
  white-space:nowrap !important;
}

.rf-fluent .rf-crewRow__fields{
  display:grid !important;
  grid-template-columns:repeat(2, minmax(0,1fr)) !important;
  gap:12px !important;
  align-items:start !important;
}

.rf-fluent .rf-crewRow__fields .ff-el-group{
  margin:0 !important;
  width:100% !important;
}

@media(max-width:768px){
  .rf-fluent .rf-crewRow{
    grid-template-columns:1fr !important;
  }

  .rf-fluent .rf-crewRow__fields{
    grid-template-columns:1fr !important;
  }

  .rf-fluent .rf-crewRow__label{
    line-height:1.4 !important;
  }
}

/* =========================
   Fluent Original Columns Restore
========================= */

.rf-fluent .ff-t-container{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:0 !important;
  margin-left:-10px !important;
  margin-right:-10px !important;
}

.rf-fluent .ff-t-cell{
  padding-left:10px !important;
  padding-right:10px !important;
  box-sizing:border-box !important;
}

.rf-fluent .ff-t-column-1{
  width:100% !important;
}

.rf-fluent .ff-t-column-2{
  width:50% !important;
}

.rf-fluent .ff-t-column-3{
  width:33.333% !important;
}

.rf-fluent .ff-t-column-4{
  width:25% !important;
}

@media(max-width:768px){
  .rf-fluent .ff-t-column-1,
  .rf-fluent .ff-t-column-2,
  .rf-fluent .ff-t-column-3,
  .rf-fluent .ff-t-column-4{
    width:100% !important;
  }
}

.rf-fluent .rf-submitOutside{
  margin-top:28px !important;
  display:block !important;
}

.rf-fluent .rf-submitOutside .ff-btn-submit,
.rf-fluent .rf-submitOutside button[type="submit"],
.rf-fluent .rf-submitOutside input[type="submit"]{
  width:100% !important;
  min-height:56px !important;
}