/** Shopify CDN: Minification failed

Line 124:3 Unexpected "/"

**/
/* Переопределение основного селектора CPB */
#product-builder .cpb-theme-provider.aloha .cpb-layout:not(.cpb-is-admin) :not(.cpb-preview-arrows-item):not(.lnr) {
  font-family: var(--text-font-family) !important;
  box-sizing: border-box !important;
}


#product-builder .cpb-theme-provider.aloha h1.cpb-product-title {
  font-family: var(--heading-font-family) !important;
  font-weight: var(--heading-font-weight) !important;
  font-style: var(--heading-font-style) !important;
  letter-spacing: var(--heading-letter-spacing) !important;
  text-transform: var(--heading-text-transform) !important;
  font-size: var(--text-h1) !important;
  line-height: 1.5 !important;
  margin: 1rem 0 1rem 0 !important;
  color: rgb(var(--text-color)) !important;
  
  display:none;
}



/* Переопределение margin-top для preview wrapper */
#product-builder .cpb-theme-provider.aloha .cpb-preview-wrapper {
  margin-top: 0 !important; 
}

/* Для заголовков панелей */
#product-builder .cpb-theme-provider.aloha .cpb-panel-title {
  font-family: var(--heading-font-family) !important;
  font-weight: var(--heading-font-weight) !important;
  font-style: var(--heading-font-style) !important;
  letter-spacing: var(--heading-letter-spacing) !important;
  text-transform: var(--heading-text-transform) !important;
  font-size: var(--text-h4) !important;
  line-height: 1.6 !important;
  color: rgb(144,42,42) !important;
  /* color: rgb(var(--text-color)) !important; */

  font-size: x-large !important;
  text-align: center !important;
  padding-bottom: 20px !important;
}

/* Для первого заголовка */
#product-builder .cpb-theme-provider.aloha .cpb-panel-wrapper:first-of-type .cpb-panel-title {
  font-size: x-large !important;
  text-align: center !important;
  padding-bottom: 20px !important;
  
}

/* Скрываем заголовки категорий */
#product-builder .cpb-theme-provider.aloha .cpb-category-title,
#product-builder .cpb-theme-provider.aloha .cpb-category-title__inner {
  display: none !important;
}

/* Убираем границы для checkbox */
#product-builder .cpb-theme-provider .checkbox {
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
}

#product-builder .cpb-theme-provider.aloha .cpb-category {
  margin: 0px 0px !important;
}

/* Для всех параграфов в CPB */
#product-builder .cpb-theme-provider.aloha p {
  font: var(--text-font-style) var(--text-font-weight) var(--text-base) / 1.65 var(--text-font-family) !important; 
}

/* Для описаний панелей */
#product-builder .cpb-theme-provider.aloha .cpb-panel-description,
#product-builder .cpb-theme-provider.aloha .cpb-panel-description p {
  font: var(--text-font-style) var(--text-font-weight) var(--text-base) / 1.65 var(--text-font-family) !important;
}

/* Для контента категорий */
#product-builder .cpb-theme-provider.aloha .cpb-category-content,
#product-builder .cpb-theme-provider.aloha .cpb-category-desc {
  font: var(--text-font-style) var(--text-font-weight) var(--text-base) / 1.65 var(--text-font-family) !important;
}

/* Для текстовых полей */
#product-builder .cpb-theme-provider.aloha textarea {
  font: var(--text-font-style) var(--text-font-weight) var(--text-base) / 1.65 var(--text-font-family) !important;
}

/* Для кнопок */
#product-builder .cpb-theme-provider.aloha .cpb-actions-btn,
#product-builder .cpb-theme-provider.aloha .cpb-add-to-cart-button {
  font: var(--button-font) !important;
  letter-spacing: var(--button-letter-spacing) !important;
  text-transform: var(--button-text-transform) !important;
}

/* Для цен */
#product-builder .cpb-theme-provider.aloha .cpb-product-price {
  font-size: var(--text-lg) !important;
  font-weight: normal !important;
  color: rgb(var(--text-color)) !important;
}

/* Для placeholder текстов */
#product-builder .cpb-theme-provider.aloha textarea::placeholder {
  font: var(--text-font-style) var(--text-font-weight) var(--text-base) / 1.65 var(--text-font-family) !important;
  color: rgb(var(--text-color) / 0.6) !important;
}
/* 
/* Стиль для разделителей между панелями */
#product-builder .cpb-theme-provider.aloha .cpb-panel-wrapper {
  border-bottom: none !important;
  padding-bottom: 15px;
  margin-bottom: 15px;
} */

/* Увеличиваем отступы для последней панели с чекбоксами */
#product-builder .cpb-theme-provider.aloha .cpb-panel-wrapper:last-of-type {
  margin-bottom: 40px !important;
  padding-bottom: 30px !important;
}

/* Для текстовых полей в контейнерах с несколькими категориями */
#product-builder .cpb-theme-provider.aloha .cpb-panel-categories-container:has(.cpb-category ~ .cpb-category) .cpb-category {
    margin-bottom: 20px !important;
}

/* Убираем margin-bottom для последнего текстового поля */
#product-builder .cpb-theme-provider.aloha .cpb-panel-categories-container:has(.cpb-category ~ .cpb-category) .cpb-category:last-of-type {
    margin-bottom: 0 !important;
}

/* Для кнопки добавления в корзину чтобы она выглядела как на предыдущем экране */
.product-form__buttons .button.personalize-it--js {
  font-size: var(--text-sm) !important;
  line-height: 1.65 !important;
  margin: 0 !important;
}

/* Добавляем отступ для контейнера с кнопками */
#product-builder .cpb-theme-provider.aloha .cpb-product-actions {
  padding-left: 0px !important;
}

/* Для полей текстового ввода */
#product-builder .cpb-option-type-inputLong textarea {
  background: rgb(239, 239, 239);
  height: 60px;
  min-height: 60px;
  resize: vertical;
  overflow: auto;
}

/* Для счетчика символов */
#product-builder .cpb-option-insert-character {
  margin-top: 1px;
  background: rgb(239, 239, 239) !important;
}

/* Дополнительно для мобильных, а то рамок не видно у текстбокса */
@media (max-width: 768px) {
  #product-builder .cpb-option-type-inputLong textarea {
    background: rgb(255,255,255) !important;
  }
  #product-builder .cpb-option-insert-character {
  background: rgb(255,255,255) !important;
}
}


/* Сокрытие половины с картинкой */
#product-builder .cpb-layout .cpb-preview-container {
  display: none;
}


/* Центрирование и уменьшение контейнера с полями */
#product-builder .cpb-panels-container {
  max-width: 70% !important;
  flex-basis: 100% !important;
  width: 100% !important;
  margin: 0 auto !important;
  padding: 0 20px !important;
}

/* центрировать внутри родительского контейнера */
#product-builder .cpb-layout {
  justify-content: center !important;
  align-items: center !important;
}


/* Дополнительно для мобильных */
@media (max-width: 768px) {
  #product-builder .cpb-panels-container {
    max-width: 100% !important;
    padding: 0 0 !important;
  }
}

#product-builder .cpb-checkbox-label-text {
  white-space: normal !important;
  word-wrap: break-word !important;
  word-break: break-word !important;
  display: block !important;
  line-height: 1.4 !important;
}

#product-builder .cpb-category-content {
  min-height: auto !important;
  height: auto !important;
}

#product-builder .cpb-category-options-container.checkbox {
  width: 100% !important;
  min-height: auto !important;
  height: auto !important;
}

#product-builder .cpb-checkbox-group {
  min-height: auto !important;
  height: auto !important;
}

@media(max-width:768px) {

  #product-builder .cpb-checkbox  {
  align-items: flex-start !important;
  min-height: auto !important;
  height: auto !important;
  width: 80vw !important;
}

}

#product-builder .cpb-checkbox  {
  align-items: flex-start !important;
  min-height: auto !important;
  height: auto !important;
  width: 100% !important;
}

#product-builder .cpb-checkbox label {
  min-height: auto !important;
  height: auto !important;
  padding-top: 4px !important;
  padding-bottom: 4px !important;
}

/* Убедитесь, что контейнер категории также адаптируется */
#product-builder .cpb-category {
  min-height: auto !important;
  height: auto !important;
}

@media(max-width: 768px) {
  #product-builder .cpb-theme-provider.aloha .cpb-panel-description {
  margin-bottom: 0px !important;
  }

  #product-builder .cpb-theme-provider.aloha .cpb-panel-title {
    padding-bottom: 5px !important;
  }
  

}








/* ДАЛЬШЕ ИЗМЕНЕНИЯ ДЛЯ ОКНА ОШИБКИ */

/* Полная перезапись стилей модального окна ошибки */
.swal2-container.swal2-center.swal2-backdrop-show {
  background: rgba(0, 0, 0, 0.7) !important;
  backdrop-filter: blur(8px) !important;
  z-index: 10000 !important;
  padding: 20px !important;
}

.swal2-popup.swal2-modal.swal2-icon-warning.swal2-show {
  background: #ffffff !important;
  border-radius: 20px !important;
  box-shadow: 0 25px 50px rgba(0, 0, 0, 0.15) !important;
  padding: 32px !important;
  max-width: 520px !important;
  width: 90vw !important;
  font-family: 'Nunito', sans-serif !important;
  border: 1px solid #f0f0f0 !important;
  display: grid !important;
  grid-template-rows: auto 1fr auto !important;
  gap: 0 !important;
  max-height: 85vh !important;
}

/* Заголовок */
.swal2-title {
  color: #1a1a1a !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  margin: 0 0 16px 0 !important;
  padding: 0 !important;
  text-align: center !important;
  display: block !important;
  letter-spacing: -0.02em !important;
}

/* Контент */
.swal2-html-container {
  color: #4a5568 !important;
  font-size: 15px !important;
  line-height: 1.5 !important;
  margin: 0 0 16px 0 !important;
  padding: 0 !important;
  text-align: center !important;
  display: block !important;
  font-weight: 400 !important;
}

/* Контейнер для списка с ограничением высоты и скроллом */
.swal2-html-container {
  position: relative !important;
}

.swal2-html-container ul {
  margin: 20px 0 0 0 !important;
  padding: 0 !important;
  list-style: none !important;
  text-align: left !important;
  max-height: 300px !important;
}

/* Кастомный скроллбар для Webkit браузеров */
.swal2-html-container ul::-webkit-scrollbar {
  width: 6px !important;
}

.swal2-html-container ul::-webkit-scrollbar-track {
  background: #f7fafc !important;
  border-radius: 3px !important;
}

.swal2-html-container ul::-webkit-scrollbar-thumb {
  background: #cbd5e0 !important;
  border-radius: 3px !important;
}

.swal2-html-container ul::-webkit-scrollbar-thumb:hover {
  background: #a0aec0 !important;
}

/* Элементы списка */
.swal2-html-container li {
  margin-bottom: 8px !important;
  color: #2d3748 !important;
  font-size: 14px !important;
  line-height: 1.4 !important;
  list-style: none !important;
  padding: 10px 14px !important;
  background: rgba(255, 191, 191, 0.15) !important;
  border-radius: 8px !important;
  border-left: 3px solid rgb(142, 44 , 44) !important;
  transition: all 0.2s ease !important;
  position: relative !important;
}

.swal2-html-container li:last-child {
  margin-bottom: 0 !important;
}

.swal2-html-container li:hover {
  background: rgba(255, 191, 191, 0.25) !important;
}

/* Убираем все маркеры и нумерацию */
.swal2-html-container ul,
.swal2-html-container ol,
.swal2-html-container li {
  list-style: none !important;
  counter-reset: none !important;
}

.swal2-html-container li::before {
  display: none !important;
  content: "" !important;
}

/* Иконка предупреждения - скрыта */
.swal2-icon.swal2-warning {
  display: none !important;
}

/* Контейнер кнопок с разделителем */
.swal2-actions {
  margin: 24px 0 0 0 !important;
  padding: 20px 0 0 0 !important;
  justify-content: center !important;
  border-top: 1px solid #e2e8f0 !important;
  position: relative !important;
  display: flex !important;
  gap: 12px !important;
  flex-shrink: 0 !important;
}

/* Кнопка на всю ширину */
.swal2-confirm.swal2-styled {
  background: linear-gradient(135deg,rgb(144, 42, 42),rgb(136, 41, 41)) !important;
  border: none !important;
  border-radius: 10px !important;
  color: white !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  padding: 14px 28px !important;
  margin: 0 !important;
  width: 100% !important;
  max-width: none !important;
  transition: all 0.3s ease !important;
  box-shadow: 0 4px 12px rgba(29, 168, 52, 0.25) !important;
  display: inline-block !important;
  letter-spacing: 0.02em !important;
  position: relative !important;
  overflow: hidden !important;
  cursor: pointer !important;
}

.swal2-confirm.swal2-styled::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: -100% !important;
  width: 100% !important;
  height: 100% !important;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent) !important;
  transition: left 0.5s ease !important;
}

.swal2-confirm.swal2-styled:hover {
  background: linear-gradient(135deg,rgb(122, 35, 35), rgb(104, 31, 31)) !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 6px 16px rgba(24, 139, 44, 0.25) !important;
}

.swal2-confirm.swal2-styled:hover::before {
  left: 100% !important;
}

.swal2-confirm.swal2-styled:active {
  transform: translateY(0) !important;
  box-shadow: 0 2px 6px rgba(220, 38, 38, 0.4) !important;
}

/* Адаптивность для мобильных устройств */
@media (max-width: 480px) {
  .swal2-container.swal2-center.swal2-backdrop-show {
    padding: 16px !important;
  }
  
  .swal2-popup.swal2-modal.swal2-icon-warning.swal2-show {
    padding: 24px 20px 20px !important;
    margin: 0 !important;
    width: 100% !important;
    border-radius: 16px !important;
    max-height: 80vh !important;
  }
  
  .swal2-title {
    font-size: 18px !important;
    margin-bottom: 12px !important;
  }
  
  .swal2-html-container {
    font-size: 14px !important;
    margin-bottom: 12px !important;
  }
  
  .swal2-html-container ul {
    max-height: 250px !important;
    margin-top: 16px !important;
  }
  
  .swal2-html-container li {
    font-size: 13px !important;
    padding: 8px 12px !important;
    margin-bottom: 6px !important;
  }
  
  .swal2-actions {
    margin-top: 20px !important;
    padding-top: 16px !important;
  }
  
  .swal2-confirm.swal2-styled {
    font-size: 14px !important;
    padding: 12px 20px !important;
    border-radius: 8px !important;
  }
}

/* Для очень высоких списков на десктопе */
@media (min-width: 768px) {
  .swal2-html-container ul {
    max-height: 350px !important;
  }
}

/* Анимация появления */
@keyframes customModalIn {
  0% {
    opacity: 0;
    transform: scale(0.9) translateY(-10px);
  }
  100% {
    opacity: 1;
    transform: scale(1) translateY(0);
  }
}

.swal2-popup.swal2-modal.swal2-icon-warning.swal2-show {
  animation: customModalIn 0.3s ease-out !important;
}

/* Дополнительные улучшения */
.swal2-popup {
  display: grid !important;
  grid-template-rows: auto 1fr auto !important;
  position: relative !important;
  gap: 0 !important;
}

/* Убираем стандартные отступы SweetAlert */
div:where(.swal2-container) div:where(.swal2-popup) {
  padding: 0 !important;
  gap: 0 !important;
}

/* Улучшаем читаемость текста */
.swal2-html-container br {
  margin-bottom: 8px !important;
  display: block !important;
  content: "" !important;
}

/* Убираем любые псевдоэлементы */
.swal2-html-container ul li::after,
.swal2-html-container ul li::before {
  content: none !important; 
  display: none !important;
}

.swal2-html-container ul li {
  margin-left: 5px !important;
  margin-right: 5px !important;
}

/* Индикатор скролла для длинных списков */
.swal2-html-container ul:after {
  content: '' !important;
  position: sticky !important;
  bottom: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 20px !important;
  background: linear-gradient(transparent, rgba(255,255,255,0.9)) !important;
  pointer-events: none !important;
  opacity: 0 !important;
  transition: opacity 0.3s ease !important;
}

.error-title {
    color: rgb(142, 44, 44) !important;
    font-weight: bold !important;
}

.swal2-html-container ul.scrollable:after {
  opacity: 1 !important;
}
/* КОНЕЦ ИЗМЕНЕНИЙ ДЛЯ ОКНА ОШИБКИ */