/* CL-PC1-L1-ANTS-STAND-4171 (R62.6.14): оформление заказа -- два экрана, чёткие рамки, высокий контраст; корзина на телефоне.
   Подключён ПОСЛЕДНИМ в <head>. Все правила формы начинаются с #checkoutModal.co2 (вес выше, чем у V9 и storefront-compact.css),
   где V9 пишет !important -- здесь тоже. Цвета: чернила #2b2420 на белом (≥ 12:1), рамки полей #6f5f57 (≥ 5:1), главная кнопка #a8434f с белым текстом (≥ 5,9:1). */

.co-hide { display: none !important; }

/* ── окно ── */
#checkoutModal.co2 {
  /* 4233 (R62.6.16): палитра витрины V9 -- нежно-розовый #CF8289 (основной), #B96D75 (нажатие), светло-розовый фон выбранного, текст #1A1714.
     Серых и бордовых поверхностей нет: линии и подписи -- пыльно-розовые/тёпло-коричневые, контраст линий ≥ 3:1, подписей ≥ 4.5:1. */
  --co-ink: #1a1714; --co-mute: #6b4f55; --co-line: #a9858b; --co-soft: #fbeef0; --co-card: #fff;
  --co-accent: #cf8289; --co-accent-d: #b96d75; --co-err: #9b233b; --co-gap: 14px; --co-rose-line: #ecd3d6;
  --co-tick: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5.2 10.4l3.2 3.2 6.4-6.8' fill='none' stroke='%231a1714' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  --co-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M7 4.5l5.5 5.5L7 15.5' fill='none' stroke='%236b4f55' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  max-width: 560px; color: var(--co-ink);
}
@media (max-width: 560px) {
  #checkoutModal.co2 { max-height: calc(100dvh - 8px); }
  #checkoutModal.co2.checkout-modal--success { max-height: 100dvh; }
}
#checkoutModal.co2 .checkout-modal__header { padding: 10px 16px !important; }
#checkoutModal.co2 .checkout-modal__title { font-size: 20px !important; }
#checkoutModal.co2 .checkout-modal__body { padding: 14px 16px 16px !important; }
@media (min-width: 768px) {
  #checkoutModal.co2 .checkout-modal__header { padding: 16px 28px !important; }
  #checkoutModal.co2 .checkout-modal__body { padding: 20px 28px 20px !important; }
  #checkoutModal.co2 .checkout-modal__title { font-size: 24px !important; }
}
/* шапка-объяснение «Оплатите сейчас картой или по СБП…» убрана с глаз: то же сказано в вариантах оплаты на шаге 2 */
#checkoutModal.co2 .checkout-payment-note { display: none; }
#checkoutModal.co2 .checkout-section-label { display: none; }
#checkoutModal.co2 .checkout-form { gap: var(--co-gap); }
#checkoutModal.co2 .checkout-form[hidden] { display: none; }

/* ── степпер ── */
#checkoutModal.co2 .co-steps { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin: 0; padding: 0; list-style: none; }
#checkoutModal.co2 .co-steps li { margin: 0; }
#checkoutModal.co2 .co-steps__i {
  width: 100%; min-height: 44px; display: flex; align-items: center; gap: 10px; padding: 0 2px; margin: 0;
  border: 0; border-bottom: 3px solid var(--co-rose-line); background: none; color: var(--co-mute);
  font: inherit; font-size: 15px; font-weight: 600; text-align: left; cursor: default;
}
#checkoutModal.co2 button.co-steps__i { cursor: pointer; }
#checkoutModal.co2 .co-steps__i.is-current { border-bottom-color: var(--co-accent); color: var(--co-ink); }
#checkoutModal.co2 .co-steps__i.is-done { border-bottom-color: var(--co-accent-d); color: var(--co-ink); }
#checkoutModal.co2 .co-steps__n {
  width: 24px; height: 24px; flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center;
  border: 1.5px solid currentColor; border-radius: 50%; font-size: 13px; line-height: 1;
}
#checkoutModal.co2 .co-steps__i.is-current .co-steps__n { background: var(--co-accent); border-color: var(--co-accent); color: var(--co-ink); }
#checkoutModal.co2 .co-steps__i.is-done .co-steps__n { background: var(--co-accent-d); border-color: var(--co-accent-d); color: var(--co-ink); }

.co-step { display: flex; flex-direction: column; gap: var(--co-gap); min-width: 0; }
#checkoutModal.co2 .co-h { margin: 0; font-family: var(--font-serif, inherit); font-size: 22px; font-weight: 500; letter-spacing: 0; text-transform: none; outline: none; }

/* ── подписи и поля: без прописных, чёткая рамка ── */
#checkoutModal.co2 .checkout-label,
#checkoutModal.co2 .checkout-fulfillment__legend {
  font-size: 14px; font-weight: 600; letter-spacing: 0; text-transform: none; color: var(--co-ink); line-height: 1.3;
}
#checkoutModal.co2 .checkout-req { color: var(--co-err); }
#checkoutModal.co2 .checkout-field { gap: 6px; }
#checkoutModal.co2 .checkout-input {
  min-height: 48px; padding: 10px 14px; border: 1.5px solid var(--co-line); border-radius: 10px; background: #fff;
  color: var(--co-ink); font-size: 16px; box-sizing: border-box;
}
#checkoutModal.co2 .checkout-input::placeholder { color: #7d6469; opacity: 1; }
#checkoutModal.co2 .checkout-input:focus { border-color: var(--co-accent-d); outline: 3px solid rgba(207, 130, 137, .45); outline-offset: 0; }
#checkoutModal.co2 .checkout-input[aria-invalid="true"] { border: 2px solid var(--co-err); background: #fff7f8; }
#checkoutModal.co2 .checkout-textarea { min-height: 76px; }
#checkoutModal.co2 .checkout-select { background-position: right 14px center; padding-right: 38px; }
#checkoutModal.co2 .checkout-field-error { margin: 2px 0 0; color: var(--co-err); font-size: 14px; font-weight: 600; line-height: 1.35; }
#checkoutModal.co2 .checkout-hint { text-align: left; font-size: 14px; color: var(--co-mute); }
#checkoutModal.co2 .checkout-hint.error { color: var(--co-err); font-weight: 600; }

/* заголовок группы над карточками: fieldset-flex рисует legend поверх рамки, поэтому группы -- обычные блоки с отступами */
#checkoutModal.co2 fieldset.sc, #checkoutModal.co2 fieldset.checkout-fulfillment { display: block; margin: 0; padding: 0; border: 0; min-width: 0; }
#checkoutModal.co2 fieldset.sc > legend, #checkoutModal.co2 fieldset.checkout-fulfillment > legend { display: block; width: 100%; margin: 0 0 8px; padding: 0; }
#checkoutModal.co2 fieldset.sc > * + *, #checkoutModal.co2 fieldset.checkout-fulfillment > * + * { margin-top: 8px; }

/* ── канал связи: три карточки ── */
#checkoutModal.co2 .sc { gap: 8px; }
#checkoutModal.co2 .sc__tabs { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
#checkoutModal.co2 .sc__tab {
  flex-direction: column; justify-content: center; gap: 4px; min-height: 68px; padding: 8px 4px; text-align: center;
  border: 1.5px solid var(--co-line); border-radius: 12px; background: var(--co-card); color: var(--co-ink); font-size: 14px; font-weight: 600; line-height: 1.2;
}
#checkoutModal.co2 .sc__tab svg { flex: 0 0 auto; color: var(--co-mute); }
#checkoutModal.co2 .sc__tab { position: relative; }
#checkoutModal.co2 .sc__tab.is-on, #checkoutModal.co2 .sc__tab:has(input:checked) { border: 2px solid var(--co-accent); background: var(--co-soft); padding: 7.5px 3.5px; }
#checkoutModal.co2 .sc__tab.is-on svg, #checkoutModal.co2 .sc__tab:has(input:checked) svg { color: var(--co-accent-d); }
/* значок галочки: выбор виден не только цветом (ui-ux-pro-max color-not-only) */
#checkoutModal.co2 .sc__tab:has(input:checked)::after, #checkoutModal.co2 .checkout-fulfillment__option:has(input:checked)::after {
  content: ""; position: absolute; top: 5px; right: 5px; width: 18px; height: 18px; border-radius: 50%;
  background: var(--co-tick) center / 100% no-repeat, var(--co-accent);
}
#checkoutModal.co2 .sc__tab:focus-within { outline: 0; }
#checkoutModal.co2 .sc__tab:has(input:focus-visible) { outline: 3px solid var(--co-ink); outline-offset: 2px; }
#checkoutModal.co2 .sc__tab, #checkoutModal.co2 .checkout-fulfillment__option, #checkoutModal.co2 .pay-choice__opt span { transition: background-color .12s ease-out, border-color .12s ease-out; }
#checkoutModal.co2 .sc__tab:active, #checkoutModal.co2 .checkout-fulfillment__option:active, #checkoutModal.co2 .pay-choice__opt:active span { transform: scale(.985); }
@media (prefers-reduced-motion: reduce) { #checkoutModal.co2 .sc__tab, #checkoutModal.co2 .checkout-fulfillment__option, #checkoutModal.co2 .pay-choice__opt span { transition: none; } #checkoutModal.co2 .sc__tab:active, #checkoutModal.co2 .checkout-fulfillment__option:active, #checkoutModal.co2 .pay-choice__opt:active span { transform: none; } }
#checkoutModal.co2 .sc__note { font-size: 13px; line-height: 1.4; color: var(--co-mute); }
#checkoutModal.co2 .sc__field { display: flex; flex-direction: column; gap: 6px; }
#checkoutModal.co2 .sc__field[hidden] { display: none; }
#checkoutModal.co2 .sc__opt { font-weight: 400; color: var(--co-mute); }
#checkoutModal.co2 .sc__hint { margin: 0; font-size: 13px; color: var(--co-mute); }
#checkoutModal.co2 .sc__email .checkout-label { margin-top: 0; }
#checkoutModal.co2 .es-list li { min-height: 44px; font-size: 15px; }
#checkoutModal.co2 .es-hint { font-size: 14px; color: var(--co-ink); }
#checkoutModal.co2 .es-hint__btn { min-height: 44px; color: var(--co-accent-d); font-weight: 700; }

/* ── способ получения: две карточки ── */
#checkoutModal.co2 .checkout-fulfillment { gap: 8px; }
#checkoutModal.co2 .checkout-fulfillment__options { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
#checkoutModal.co2 .checkout-fulfillment__option {
  position: relative; justify-content: center; min-height: 48px; padding: 0 10px; border: 1.5px solid var(--co-line); border-radius: 12px;
  background: var(--co-card); font-size: 16px; font-weight: 600; text-align: center;
}
#checkoutModal.co2 .checkout-fulfillment__option input { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: pointer; }
#checkoutModal.co2 .checkout-fulfillment__option:has(input:checked) { border: 2px solid var(--co-accent); background: var(--co-soft); }
#checkoutModal.co2 .checkout-fulfillment__option:has(input:focus-visible) { outline: 3px solid var(--co-ink); outline-offset: 2px; }
#checkoutModal.co2 .co-nw { white-space: nowrap; }
#checkoutModal.co2 .checkout-pickup-note { margin: 0; font-size: 14px; color: var(--co-ink); }

/* ── адрес одной строкой, дом и квартира в строку, дата и время в строку ── */
#checkoutModal.co2 .checkout-delivery-fields { display: flex; flex-direction: column; gap: 10px; }
/* 4341: при «Самовывоз» блок адреса скрыт (hidden ставит index.html); без этого правила display:flex выше его перебивал */
#checkoutModal.co2 .checkout-delivery-fields[hidden] { display: none; }
#checkoutModal.co2 .checkout-addr-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
#checkoutModal.co2 .checkout-addr-grid > div { min-width: 0; display: flex; flex-direction: column; gap: 6px; }
#checkoutModal.co2 .co-more { grid-column: 1 / -1; }
/* «Этаж и домофон» -- необязательное: спокойная ссылка со стрелкой, не красная */
#checkoutModal.co2 .co-more > summary { min-height: 44px; display: flex; align-items: center; gap: 6px; cursor: pointer; color: var(--co-mute); font-size: 14px; font-weight: 500; list-style: none; text-decoration: underline; text-decoration-color: var(--co-rose-line); text-underline-offset: 4px; }
#checkoutModal.co2 .co-more > summary::-webkit-details-marker { display: none; }
#checkoutModal.co2 .co-more > summary::after { content: ""; width: 16px; height: 16px; background: var(--co-chevron) center / 100% no-repeat; transition: transform .15s ease-out; }
#checkoutModal.co2 .co-more[open] > summary::after { transform: rotate(90deg); }
#checkoutModal.co2 .co-more > summary:hover { color: var(--co-ink); }
#checkoutModal.co2 .co-more > summary:focus-visible { outline: 3px solid var(--co-ink); outline-offset: 2px; border-radius: 4px; }
#checkoutModal.co2 .co-more__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; padding-bottom: 4px; }
#checkoutModal.co2 .co-more__grid > div { min-width: 0; display: flex; flex-direction: column; gap: 6px; }
#checkoutModal.co2 .checkout-row:not(#checkoutRecipientFields) { display: grid; grid-template-columns: 1fr 1fr !important; gap: 10px; }
#checkoutModal.co2 .checkout-row .checkout-input { padding-left: 12px; padding-right: 12px; }
#checkoutModal.co2 .checkout-row .checkout-select { padding-right: 34px; }
#checkoutModal.co2 .time-clock-icon { display: none; }
#checkoutModal.co2 .checkout-hint#checkoutZoneAutoHint { font-size: 13px; }

/* ── галочки: получатель, частный дом, согласия ── */
#checkoutModal.co2 .checkout-recipient-toggle { min-height: 44px; align-items: center; gap: 12px; font-size: 15px; font-weight: 600; color: var(--co-ink); }
#checkoutModal.co2 .checkout-recipient-toggle input { width: 24px; height: 24px; margin: 0; accent-color: var(--co-accent); }
#checkoutModal.co2 #checkoutRecipientFields { display: grid; grid-template-columns: 1fr; gap: 10px; padding: 12px; border: 1.5px solid var(--co-line); border-radius: 12px; background: var(--co-soft); }
#checkoutModal.co2 #checkoutRecipientFields[hidden] { display: none; }
@media (min-width: 560px) { #checkoutModal.co2 #checkoutRecipientFields { grid-template-columns: 1fr 1fr; } }

/* ── необязательное: открытка и пожелания ── */
#checkoutModal.co2 .co-opt { border: 1.5px solid var(--co-line); border-radius: 12px; background: var(--co-card); }
#checkoutModal.co2 .co-opt > summary { min-height: 52px; display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 6px 14px; cursor: pointer; list-style: none; touch-action: manipulation; }
#checkoutModal.co2 .co-opt > summary::-webkit-details-marker { display: none; }
#checkoutModal.co2 .co-opt > summary::after { content: ""; flex: none; width: 16px; height: 16px; background: var(--co-chevron) center / 100% no-repeat; transition: transform .15s ease-out; }
#checkoutModal.co2 .co-opt[open] > summary::after { transform: rotate(90deg); }
#checkoutModal.co2 .co-opt > summary:focus-visible { outline: 3px solid var(--co-ink); outline-offset: 2px; border-radius: 10px; }
#checkoutModal.co2 .co-opt__t { font-size: 15px; font-weight: 600; line-height: 1.3; }
#checkoutModal.co2 .co-opt__s { font-size: 13px; font-weight: 400; color: var(--co-mute); white-space: nowrap; }
#checkoutModal.co2 .co-ex { margin: 4px 0 0; font-size: 13px; line-height: 1.35; color: var(--co-mute); }
@media (prefers-reduced-motion: reduce) { #checkoutModal.co2 .co-opt > summary::after { transition: none; } }
#checkoutModal.co2 .co-opt[open] > summary { border-bottom: 1px solid var(--co-rose-line); }
#checkoutModal.co2 .co-opt > .checkout-field { padding: 12px 14px 0; }
#checkoutModal.co2 .co-opt > .checkout-field:last-child { padding-bottom: 14px; }

/* ── шаг 2: кто и куда, сумма, варианты оплаты ── */
#checkoutModal.co2 .co-who { display: grid; grid-template-columns: minmax(0, 1fr) auto; column-gap: 10px; align-items: start; padding: 8px 12px 10px; border: 1.5px solid var(--co-rose-line); border-radius: 12px; background: #fdf6f7; font-size: 14px; line-height: 1.4; }
#checkoutModal.co2 .co-who__t { display: contents; }
#checkoutModal.co2 .co-who__t > div { grid-column: 1 / -1; min-width: 0; overflow-wrap: anywhere; }
#checkoutModal.co2 .co-who__t > .co-who__n { grid-column: 1; grid-row: 1; align-self: center; font-weight: 700; }
#checkoutModal.co2 .co-who__m { color: var(--co-mute); }
#checkoutModal.co2 .co-back { grid-column: 2; grid-row: 1; align-self: center; min-height: 44px; padding: 0 14px; border: 1.5px solid var(--co-line); border-radius: 10px; background: #fff; color: var(--co-ink); font: inherit; font-size: 14px; font-weight: 600; cursor: pointer; }
#checkoutModal.co2 .checkout-order-summary { margin: 0; padding: 12px 14px; border: 1.5px solid var(--co-rose-line); border-radius: 12px; background: #fff; font-size: 14px; line-height: 1.5; }
#checkoutModal.co2 .checkout-order-summary { background: #fdf6f7 !important; border-color: var(--co-rose-line) !important; }
#checkoutModal.co2 .checkout-order-summary strong { display: block; margin: 0 0 4px; font-family: inherit; font-size: 15px; font-weight: 700; }
#checkoutModal.co2 .checkout-order-summary ul { margin: 0; padding: 0; list-style: none; }
/* 4353: итог из трёх строк перед оплатой + строка с ценой под адресом */
#checkoutModal.co2 .co-sum { margin: 8px 0 0; padding: 0; }
#checkoutModal.co2 .co-sum__row { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; padding: 3px 0; }
#checkoutModal.co2 .co-sum__row dt { margin: 0; }
#checkoutModal.co2 .co-sum__row dd { margin: 0; text-align: right; font-weight: 600; }
#checkoutModal.co2 .co-sum__row--total { margin-top: 6px; padding-top: 8px; border-top: 1px solid var(--co-rose-line); }
#checkoutModal.co2 .co-sum__row--total dt { font-weight: 700; }
#checkoutModal.co2 .co-sum__row--total dd { font-size: 22px; font-weight: 800; line-height: 1.15; }
#checkoutModal.co2 .checkout-hint#checkoutZoneAutoHint.is-quote { font-size: 15px; font-weight: 700; color: var(--co-ink); }
#checkoutModal.co2 .checkout-order-summary p { margin: 6px 0 0; padding-top: 6px; border-top: 1px solid var(--co-rose-line); font-size: 17px; font-weight: 700; }
#checkoutModal.co2[data-co-step="1"] .checkout-order-summary { display: none; }
#checkoutModal.co2 .co-step--1 { order: 0; }
#checkoutModal.co2 .co-step--2a { order: 1; }
#checkoutModal.co2 .checkout-order-summary { order: 2; }
#checkoutModal.co2 .co-step--2 { order: 3; }
#checkoutModal.co2 .checkout-modal__body { padding-bottom: 20px !important; }

#checkoutModal.co2 .pay-choice { display: grid; grid-template-columns: 1fr; gap: 8px; padding: 0; margin: 0; background: none; border-radius: 0; }
#checkoutModal.co2 .pay-choice[hidden] { display: grid; }
#checkoutModal.co2 .pay-choice__opt { flex: none; display: block; position: relative; }
#checkoutModal.co2 .pay-choice__opt:first-child { flex-grow: 0; }
#checkoutModal.co2 .pay-choice__opt input { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: pointer; z-index: 1; }
#checkoutModal.co2 .pay-choice__opt span {
  display: flex; flex-direction: column; align-items: flex-start; justify-content: center; gap: 1px; min-height: 56px; padding: 8px 14px 8px 46px; position: relative;
  border: 1.5px solid var(--co-line); border-radius: 12px; background: var(--co-card); color: var(--co-ink); font-size: 16px; font-weight: 700; text-align: left; line-height: 1.25;
}
#checkoutModal.co2 .pay-choice__opt span::before { content: ""; position: absolute; left: 14px; top: 50%; width: 20px; height: 20px; margin-top: -10px; border: 2px solid var(--co-line); border-radius: 50%; background: #fff; box-sizing: border-box; }
#checkoutModal.co2 .pay-choice__opt .po__t { font-size: 16px; font-weight: 700; }
#checkoutModal.co2 .pay-choice__opt .po__d { display: block; font-size: 13px; font-weight: 400; color: var(--co-mute); line-height: 1.3; }
#checkoutModal.co2 .pay-choice__opt input:checked + span { border: 2px solid var(--co-accent); background: var(--co-soft); padding-left: 45.5px; box-shadow: none; }
#checkoutModal.co2 .pay-choice__opt input:checked + span::before { border-color: var(--co-accent); background: var(--co-tick) center / 100% no-repeat, var(--co-accent); }
#checkoutModal.co2 .pay-choice__opt input:focus-visible + span { outline: 3px solid var(--co-ink); outline-offset: 2px; }
#checkoutModal.co2 .pay-choice[data-online="off"] .pay-choice__opt:not(.pay-choice__opt--later) { display: none; }

/* согласие: одна строка с галочкой, ссылки мелко */
#checkoutModal.co2 .checkout-consent { margin: 0; padding: 0; border: 0; background: none; }
#checkoutModal.co2 .checkout-consent__label { align-items: center; gap: 12px; min-height: 44px; font-size: 14px; line-height: 1.35; color: var(--co-ink); }
#checkoutModal.co2 .checkout-consent__label input { width: 24px; height: 24px; margin: 0; accent-color: var(--co-accent); }
#checkoutModal.co2 #consentPersonalData[aria-invalid="true"] { outline: 3px solid var(--co-err); outline-offset: 2px; }
#checkoutModal.co2 .checkout-consent__links { margin: 2px 0 0 36px; display: flex; flex-wrap: wrap; gap: 0 14px; font-size: 12px; line-height: 1.5; color: var(--co-mute); }
#checkoutModal.co2 .checkout-consent__links a { display: inline; min-height: 0; padding: 0; margin: 0; color: var(--co-mute); text-decoration: underline; }
#checkoutModal.co2 .checkout-consent__label a { display: inline; min-height: 0; padding: 0; margin: 0; color: var(--co-ink); text-decoration: underline; }
/* то же сообщение не показываем дважды: ошибка согласия уже стоит у галочки */
#checkoutModal.co2 .co-step--2:has(#consentPersonalDataError:not([hidden])) #checkoutHint { display: none; }
#checkoutModal.co2 .ccl-sep { display: none; }
#checkoutModal.co2 .checkout-consent__error { margin: 4px 0 0; font-size: 14px; }
#checkoutModal.co2 .checkout-consent__label:nth-of-type(2) { min-height: 36px; font-size: 13px; color: var(--co-mute); }

/* помощь и служебная строка */
#checkoutModal.co2 .co-help > summary { min-height: 44px; display: flex; align-items: center; font-size: 13px; color: var(--co-mute); cursor: pointer; }
#checkoutModal.co2 .co-help #manualOrderFallback { display: flex; flex-direction: column; gap: 8px; margin: 0; font-size: 13px; text-align: left; }
#checkoutModal.co2 .co-help #manualOrderFallback p { margin: 0; }
#checkoutModal.co2 #checkoutHint { display: block; margin: 0; }

/* ── нижняя панель: одна главная кнопка, всегда нажимается ── */
#checkoutModal.co2 .checkout-actions { padding: 10px 16px calc(10px + env(safe-area-inset-bottom, 0px)) !important; border-top: 1.5px solid var(--co-rose-line); background: #fff; }
@media (min-width: 768px) { #checkoutModal.co2 .checkout-actions { padding: 14px 28px calc(14px + env(safe-area-inset-bottom, 0px)) !important; } }
#checkoutModal.co2 .co-next-err { margin: 0 0 8px; font-size: 14px; }
#checkoutModal.co2 #coNext, #checkoutModal.co2 #checkoutPayNow, #checkoutModal.co2 #checkoutSubmit {
  width: 100%; min-height: 54px; margin: 0; padding: 10px 16px; border-radius: 12px; font-family: inherit; font-size: 17px; font-weight: 700; line-height: 1.2; letter-spacing: 0; text-transform: none; cursor: pointer;
}
#checkoutModal.co2 #coNext, #checkoutModal.co2 #checkoutPayNow, #checkoutModal.co2 #checkoutSubmit {
  background: var(--co-accent) !important; border: 1.5px solid var(--co-accent) !important; color: var(--co-ink) !important;
}
#checkoutModal.co2 #coNext:active, #checkoutModal.co2 #checkoutPayNow:active:not(:disabled), #checkoutModal.co2 #checkoutSubmit:active:not(:disabled) { transform: scale(.985); }
#checkoutModal.co2 #coNext:hover, #checkoutModal.co2 #checkoutPayNow:hover:not(:disabled), #checkoutModal.co2 #checkoutSubmit:hover:not(:disabled) { background: var(--co-accent-d) !important; border-color: var(--co-accent-d) !important; }
#checkoutModal.co2 #coNext:focus-visible, #checkoutModal.co2 #checkoutPayNow:focus-visible, #checkoutModal.co2 #checkoutSubmit:focus-visible { outline: 3px solid var(--co-ink); outline-offset: 3px; }
/* на время отправки и при доставке «по запросу» кнопка честно выключена, но читается: бледно-розовая, не серая */
#checkoutModal.co2 #checkoutPayNow:disabled, #checkoutModal.co2 #checkoutSubmit:disabled { opacity: 1; background: #f1d9dc !important; border-color: #f1d9dc !important; color: var(--co-mute) !important; cursor: not-allowed; }
#checkoutModal.co2 .checkout-actions .checkout-payment__note { margin: 6px 0 0; font-size: 13px; line-height: 1.3; text-align: center; color: var(--co-mute); }

/* ── 4234: «Получать статус в Telegram» после оформления -- главная крупная кнопка экрана (розовая, тёмный текст 6,1:1, ≥ 56 px) ── */
/* кнопка без класса .btn: общий слой витрины `body .btn:not(.btn--outline)… {background:#B34F5D!important; color:#fff!important}` на неё не действует */
.checkout-success__actions .cs-btn-tg {
  display: flex; align-items: center; justify-content: center; width: 100%; min-height: 56px; margin: 0; padding: 10px 16px; border-radius: 12px; font-family: inherit; font-size: 17px; font-weight: 700; line-height: 1.2;
  letter-spacing: 0; text-transform: none; cursor: pointer; background: #cf8289 !important; border: 1.5px solid #cf8289 !important; color: #1a1714 !important;
}
/* «Закрыть» на этом экране -- спокойная ссылка (витринный слой делал её бордовой кнопкой с белым текстом) */
body .checkout-success__actions > .btn.cs-btn-close.cs-btn-close:not(.btn--outline):not(.btn--soft):not(.btn--dark):not(:disabled) {
  background: none !important; border: 0 !important; color: #6b4f55 !important; font-weight: 400 !important; text-decoration: underline !important; text-underline-offset: 4px; min-height: 44px;
}
body .checkout-success__actions > .btn.cs-btn-close.cs-btn-close:not(.btn--outline):not(.btn--soft):not(.btn--dark):not(:disabled):hover { color: #1a1714 !important; background: none !important; border: 0 !important; }
.checkout-success__actions .cs-btn-tg:hover:not(:disabled) { background: #b96d75 !important; border-color: #b96d75 !important; }
.checkout-success__actions .cs-btn-tg:active:not(:disabled) { transform: scale(.985); }
.checkout-success__actions .cs-btn-tg:focus-visible { outline: 3px solid #1a1714; outline-offset: 3px; }
.checkout-success__actions .cs-btn-tg:disabled { opacity: 1; background: #f1d9dc !important; border-color: #f1d9dc !important; color: #6b4f55 !important; cursor: default; }
.checkout-success__actions > div > p[role="status"] { margin: 8px 0 0; font-size: 14px; line-height: 1.35; color: #6b4f55; text-align: center; }
@media (prefers-reduced-motion: reduce) { .checkout-success__actions .cs-btn-tg:active:not(:disabled) { transform: none; } }

/* ═════════ корзина на телефоне ═════════ */
.sm-go__sum { display: none; }
@media (max-width: 767px) {
  /* полоса внизу на всю ширину: число и сумма слева, «Оформить» справа; страница получает отступ снизу (html.sm-has-bar), поэтому ничего не перекрыто */
  body .sm-go {
    left: 0; right: 0; bottom: 0; z-index: 240; display: flex; align-items: center; justify-content: space-between; gap: 10px;
    padding: 8px 12px calc(8px + env(safe-area-inset-bottom, 0px)); background: #fff; border-top: 1.5px solid #cbbfb6; box-shadow: 0 -4px 14px rgba(26, 23, 20, .1);
  }
  body .sm-go__sum { display: flex; flex-direction: column; min-width: 0; color: #2b2420; line-height: 1.2; }
  body .sm-go__n { font-size: 13px; font-weight: 400; color: #5e534c; }
  body .sm-go__t { font-size: 19px; font-weight: 700; }
  body .sm-go__btn { flex: 0 0 auto; min-width: 150px; min-height: 48px; padding: 0 22px; border-radius: 12px; background: #cf8289; color: #1a1714; font-size: 16px; font-weight: 700; box-shadow: none; }
  html.sm-has-bar body { padding-bottom: calc(72px + env(safe-area-inset-bottom, 0px)); }
  html.sm-has-bar .scroll-fab { bottom: calc(82px + env(safe-area-inset-bottom, 0px)); }
  /* затемнение корзины не перехватывает нажатия, пока шторка закрыта */
  .cart-overlay:not(.active) { pointer-events: none !important; }
}

/* ═════════ «Заказать в 1 клик» ═════════ */
.quick-order #quickSubmit { min-height: 52px; font-size: 16px; font-weight: 700; }
.quick-order .checkout-label { font-size: 14px; font-weight: 600; letter-spacing: 0; text-transform: none; color: #2b2420; }
.quick-order .checkout-input { min-height: 48px; border: 1.5px solid #6f5f57; border-radius: 10px; font-size: 16px; }
.quick-order .checkout-input[aria-invalid="true"] { border: 2px solid #9b233b; background: #fff7f8; }
.quick-order #quickConsent[aria-invalid="true"] { outline: 3px solid #9b233b; outline-offset: 2px; }
.quick-order .checkout-consent__label input { width: 24px; height: 24px; margin: 0; accent-color: #cf8289; }
.quick-order .checkout-consent { border: 0; background: none; padding: 0; }
.quick-order .checkout-consent__label { min-height: 44px; align-items: center; gap: 12px; font-size: 14px; line-height: 1.35; }
.quick-order .checkout-hint.error { color: #9b233b; font-weight: 600; font-size: 14px; text-align: left; }
.quick-order #quickSubmit:disabled { background: #f1d9dc !important; border-color: #f1d9dc !important; color: #6b4f55 !important; }
body .quick-order #quickSubmit { background: #cf8289 !important; border-color: #cf8289 !important; color: #1a1714 !important; }
body .quick-order #quickSubmit:hover:not(:disabled) { background: #b96d75 !important; border-color: #b96d75 !important; }
