/* Шрифт заголовков */
@import url('https://fonts.googleapis.com/css2?family=PT+Serif:ital@1&display=swap');
.draft-font { font-family:"PT Serif",Georgia,"Times New Roman",Times,serif; font-style:italic; }

/* Анимация появления */
@keyframes fadeIn { from{opacity:0;transform:translateY(-20px);} to{opacity:1;transform:translateY(0);} }
.fade-in { animation:fadeIn .8s ease-out forwards; }

/* Скроллбар */
body { scrollbar-width:thin; scrollbar-color:rgba(100,100,100,.5) transparent; }
body::-webkit-scrollbar      { width:8px;height:8px; }
body::-webkit-scrollbar-thumb{ background:rgba(100,100,100,.5);border-radius:4px; }

/* ---------- CHECKBOX ---------- */
.styled-checkbox{
  appearance:none;-webkit-appearance:none;-moz-appearance:none;
  width:1.25rem;height:1.25rem;border:2px solid #9ca3af;border-radius:0.25rem;
  background:#fff;cursor:pointer;position:relative;transition:.15s;
}
.styled-checkbox:checked      { background:#6366f1;border-color:#6366f1; }
.styled-checkbox:checked::after{
  content:'';position:absolute;left:4px;top:1px;width:5px;height:10px;
  border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg);
}
.checkbox-wrapper{user-select:none;}

/* ---------- BUTTON-OPTIONS ---------- */
.option-btn{
  padding:0.5rem 0.75rem;font-size:.875rem;line-height:1.25rem;
  border:1px solid #d1d5db;border-radius:0.5rem;background:#fff;color:#374151;
  cursor:pointer;transition:background-color .15s,border-color .15s;
}
.option-btn:not(.disabled):hover{border-color:#6366f1;}
.option-btn.active   {background:#6366f1;border-color:#6366f1;color:#fff;}
.option-btn.disabled{opacity:.35;cursor:not-allowed;}

/* ---------- БЛОК-ОВЛЕЙ (для групп pump/mix) ---------- */
.blocked { position:relative; }
.blocked::after{
  content:'';position:absolute;inset:0;background:rgba(255,255,255,.55);
  border-radius:0.5rem;pointer-events:none;
}
.blocked::before{
  content:'??';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
  font-size:1.25rem;color:#6b7280;pointer-events:none;
}

/* ---------- Оформление стандартных <select> (оставшиеся) ---------- */
.custom-select{
  appearance:none;-webkit-appearance:none;-moz-appearance:none;width:100%;
  padding:0.5rem 2.5rem 0.5rem 0.75rem;line-height:1.5rem;border:1px solid #d1d5db;
  border-radius:0.5rem;background:#fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' stroke-width='2' stroke='%23666' fill='none' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e") no-repeat right .75rem center/1rem;
  transition:.15s;
}
.custom-select:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px rgb(99 102 241 / .35);}
.custom-select:disabled{cursor:not-allowed;opacity:.6;}

/* ---------- Фон-слайды на весь экран ---------- */
#bgSlider {
  position: fixed;
  inset: 0;
  overflow: hidden;
  z-index: -10;
}
#bgSlider .bg-slide {
  position: absolute;
  top: 0; 
  left: 0;
  width: 100vw;   /* ширина — вся ширина экрана */
  height: 100vh;  /* высота — вся высота экрана */
  object-fit: cover;              /* масштабируем и обрезаем картинку, сохраняя пропорции */
  object-position: center center; /* центрируем содержимое */
  opacity: 0; 
  transition: opacity 1.2s ease-in-out;
}
#bgSlider .bg-slide.active {
  opacity: 1;
}

