/* ==========================================================
   ROOMA Cart: модалка "Индивидуальный заказ менеджеру"
   (анимация как у выбора города, но локально)
   ========================================================== */

/* ================================
   Форма отправки: двухколоночная сетка
   ================================ */

/* ===== Жёсткий reset для полей внутри модалки, чтобы перебить тему ===== */
#rooma-custom-order-modal input[type="text"],
#rooma-custom-order-modal input[type="email"],
#rooma-custom-order-modal input[type="tel"],
#rooma-custom-order-modal select,
#rooma-custom-order-modal .co-input,
#rooma-custom-order-modal .co-select {
  -webkit-appearance: none !important;
  appearance: none !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  outline: none !important;
  margin: 0 !important;
}

.rooma-cart .co-form {
  margin-top: 8px;
}

.rooma-cart .co-row {
  display: grid;
  grid-template-columns: 1fr 2fr;   /* подпись слева, поле справа */
  align-items: center;
  gap: 0px;
  padding: 24px 0px;
  border-top: 1px solid #E5E5E5 !important;
  
}



.rooma-cart .co-cell--label {
  font-size: 14px;
  line-height: 1.3;
  color: #111;
}

.rooma-cart .co-cell--control {
  display: block;
}

/* Инпуты/селекты справа: один стиль */
.rooma-cart .co-input,
.rooma-cart .co-select {
  -webkit-appearance: none !important;
  appearance: none !important;
  width: 100% !important;
  
  border: 0 !important;                 /* в макете без рамок */
  background: transparent !important;
  
  border-radius: 0px !important;
  font-size: 14px !important;
  color: #111 !important;
  text-align: right !important;
  text-align-last: right !important;     /* селекты в Chrome */
  outline: none !important;
  box-shadow: none !important;
}

/* подчёркивание по фокусу (как у city-picker — минимализм) */
#rooma-custom-order-modal .co-input:focus,
#rooma-custom-order-modal .co-select:focus {
  box-shadow: none !important;
}

/* вариант ошибки для строки (вешается классом на .co-row) */
#rooma-custom-order-modal .co-row.is-error .co-input,
#rooma-custom-order-modal .co-row.is-error .co-select {
  box-shadow: inset 0 -1px 0 #c62828 !important;
}

/* placeholder */
.rooma-cart .co-input::placeholder {
  color: rgba(0,0,0,0.45);
}

/* строка с селектом "Как с вами связаться" — плюсик справа */
.rooma-cart .co-contact-wrap {
  position: relative;
}
.rooma-cart .co-contact-wrap::after {
  content: "+";
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  font-size: 18px;
  line-height: 1;
  color: #111;
  pointer-events: none;
}
#rooma-custom-order-modal .co-select {
  padding-right: 20px !important; /* чтобы плюс не наезжал на текст */
}

/* строка с согласием ПДн (checkbox на две колонки) */
.rooma-cart .co-row--consent {
  grid-template-columns: 1fr;
  gap: 0px;
  padding-top: 22px;
  background-color: transparent !important;
  border-top: 1px solid #E5E5E5;
}

.rooma-cart .co-checkbox {
  width: 18px;
  height: 18px;
}

.rooma-cart .co-consent-label {
  font-size: 14px;
  color: rgba(0,0,0,0.8);
  line-height: 1.35;
}

/* placeholder */
#rooma-custom-order-modal .co-input::placeholder { color: rgba(0,0,0,0.45) !important; }

/* WebKit-автозаполнение */
#rooma-custom-order-modal input:-webkit-autofill {
  -webkit-box-shadow: 0 0 0 1000px #fff inset !important;
  -webkit-text-fill-color: #111 !important;
}

/* кнопка отправки */
.rooma-cart .co-submit-btn {
  margin-top: 24px;
  width: 100%;
}

/* Сообщение статуса отправки */
#rooma-custom-order-modal .co-message {
  margin-top: 12px;
  font-size: 14px;
  line-height: 1.35;
  color: #111;
}
#rooma-custom-order-modal .co-message.is-error { color: #c62828; }
#rooma-custom-order-modal .co-message.is-success { color: #1b5e20; }

/* ================================
   Адаптация под мобильные
   ================================ */
@media (max-width: 764px) {
  .rooma-cart .co-row {
    grid-template-columns: 1fr 1fr;  /* подпись слева, поле справа даже на мобилке */
    gap: 0px;
    padding: 20px 0;
    border-top: 1px solid rgba(0,0,0,0.12);
  }
  .rooma-cart .co-input,
  .rooma-cart .co-select {
    text-align: left;
    text-align-last: left;
  }
  #rooma-custom-order-modal .co-input,
  #rooma-custom-order-modal .co-select { padding-right: 20px !important; }
  .rooma-cart .co-contact-wrap::after {
    right: 4px;
  }
  .rooma-cart .co-row--consent {
    grid-template-columns: auto 1fr;
  }
}


#rooma-custom-order-modal .co-row {
  border-top: 1px solid #E5E5E5 !important;
}

#rooma-custom-order-modal input[type="text"],
#rooma-custom-order-modal input[type="email"],
#rooma-custom-order-modal input[type="tel"],
#rooma-custom-order-modal select {
  padding: 0 !important;
}

html.rooma-co-lock,
body.rooma-co-lock {
  overflow: hidden !important;
  touch-action: none;
}

/* Обёртка для select с иконкой */
.co-method-wrap {
  position: relative;
}

/* Иконка "+" справа */
.co-method-icon {
  position: absolute;
  right: 0px;
  top: 50%;
  transform: translateY(-50%);
  width: 10px;
  height: 10px;
  pointer-events: none;
  opacity: 0.45;
}

/* наведение — легкий ховер */
.co-select:focus + .co-method-icon,
.co-select:hover + .co-method-icon {
  opacity: 0.8;
}

/* Чекбокс + текст — небольшой зазор */
#rooma-custom-order-modal .co-consent {
  display: inline-flex;
  align-items: baseline;
  gap: 8px;
}