/* CL-PC1-L1-ANTS-STAND-4101 (правки владельца 07.10 по demo R62.6.11): плотность, раскладка и видимость на телефоне.
   Дизайн V9 (цвета, шрифты, скругления) не меняется. Файл подключён ПОСЛЕДНИМ в <head>, после встроенного блока V9,
   поэтому правила с тем же весом выигрывают; где V9 пишет !important, здесь тоже !important с префиксом "body". */

/* ── общие (все ширины) ── */
.checkout-addr-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.checkout-addr-grid__wide { grid-column: 1 / -1; }
.checkout-ontg[hidden], .pay-choice[hidden] { display: none; }
.checkout-ontg { margin-top: 8px; }
.sm-hdrsum { display: none; }

/* R62.6.13 п.3: фильтр цены — один ползунок «от–до» на всех ширинах (на ПК раньше оставались блоки-кнопки) */
body .catalog__price-filter { display: none !important; }
.pr { display: block; margin: 0 auto 10px; padding: 6px 12px 4px; background: #fffaf8; border: 1px solid #e2c9c8; border-radius: 12px; }
.pr__head { display: flex; align-items: baseline; gap: 8px; font-size: 12px; color: #594146; }
.pr__title { font-weight: 600; white-space: nowrap; }
.pr__out { flex: 1; font-weight: 500; color: #493039; }
.pr__reset { min-height: 32px; padding: 0 2px; font-size: 12px; text-decoration: underline; color: #68434d; background: none; }
.pr__reset[hidden] { display: none; }
.pr__track { position: relative; height: 32px; margin: 0; }
.pr__rail, .pr__fill { position: absolute; top: 14px; height: 4px; border-radius: 2px; }
.pr__rail { left: 0; right: 0; background: #e8d5d2; }
.pr__fill { background: #CF818A; }
.pr__in { position: absolute; left: -12px; top: 0; width: calc(100% + 24px); height: 32px; margin: 0; padding: 0; background: none; pointer-events: none; -webkit-appearance: none; appearance: none; }
.pr__in::-webkit-slider-runnable-track { height: 32px; background: transparent; }
.pr__in::-moz-range-track { height: 32px; background: transparent; }
.pr__in::-webkit-slider-thumb { -webkit-appearance: none; appearance: none; pointer-events: auto; width: 24px; height: 24px; margin-top: 4px; border-radius: 50%; background: #fff; border: 2px solid #CF818A; box-shadow: 0 1px 4px rgba(26, 23, 20, .25); cursor: pointer; }
.pr__in::-moz-range-thumb { pointer-events: auto; width: 20px; height: 20px; border-radius: 50%; background: #fff; border: 2px solid #CF818A; box-shadow: 0 1px 4px rgba(26, 23, 20, .25); cursor: pointer; }
.pr__in:focus-visible::-webkit-slider-thumb { outline: 3px solid #734b3b; outline-offset: 2px; }
.pr__ticks { position: relative; height: 16px; margin: 0; font-size: 10px; line-height: 1; color: #6f675f; }
.pr__tick { position: absolute; top: 4px; transform: translateX(-50%); }
.pr__tick::before { content: ""; position: absolute; left: 50%; top: -6px; width: 1px; height: 4px; background: #c9aeb0; }
@media (min-width: 768px) {
  .pr { max-width: 560px; margin-bottom: 16px; padding: 8px 18px 6px; }
  .pr__head { font-size: 13px; }
  .pr__ticks { font-size: 11px; }
}

/* п.8: способ оплаты в форме, над кнопкой «Оплатить N ₽» */
.pay-choice { display: flex; gap: 6px; padding: 3px; background: #f5f1ea; border-radius: 12px; margin: 0 0 8px; }
.pay-choice__opt { position: relative; flex: 1 1 0; display: flex; min-width: 0; }
.pay-choice__opt:first-child { flex-grow: 2; }
.pay-choice__opt input { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: pointer; }
.pay-choice__opt span {
  flex: 1; display: flex; align-items: center; justify-content: center; text-align: center; min-height: 40px; padding: 4px 8px;
  border: 1px solid transparent; border-radius: 10px; font-size: 13px; font-weight: 600; line-height: 1.2; color: #6f675f;
}
.pay-choice__opt input:checked + span { background: #fff; color: #1a1714; border-color: #e1b9bf; box-shadow: 0 1px 3px rgba(26, 23, 20, 0.08); }
.pay-choice__opt input:focus-visible + span { outline: 3px solid #734b3b; outline-offset: 2px; }

@media (max-width: 767px) {
  /* ── п.1 всё компактнее ── */
  body { font-size: 15px; line-height: 1.5; }
  body .hero { margin: 8px 10px 0 !important; border-radius: 16px; }
  body .hero__image { height: 200px !important; min-height: 0 !important; }
  body .hero__text { padding: 14px 16px 14px !important; }
  body .hero__eyebrow { font-size: 11px; margin-bottom: 4px; }
  body .hero__title { font-size: 28px !important; line-height: 1.1; margin-bottom: 6px; }
  body .hero__desc { font-size: 14px; line-height: 1.45; margin-bottom: 0; }
  body .collections { padding: 10px 10px !important; }
  body .collections__header { margin-bottom: 8px !important; padding: 0 !important; }
  body .collections__title { font-size: 19px !important; }
  body .collections__grid { gap: 6px !important; }
  body .collections__tile .collections__img { height: 150px !important; }
  body .collections__label-main { font-size: 12px !important; }
  body .collections__label-sub { font-size: 11px !important; }
  body .collections__overlay { padding: 8px 10px !important; }
  body .catalog { padding-top: 10px !important; padding-bottom: 12px !important; }
  body .section-title { font-size: 21px !important; }
  body .section-header, body .collections__header { margin-bottom: 8px !important; }
  body .about { margin: 8px 10px !important; border-radius: 16px; }
  body .about__image { height: 150px; }
  body .about__content { padding: 14px 14px !important; }
  body .about__title { font-size: 22px; margin-bottom: 6px; }
  body .about__text { font-size: 14px; line-height: 1.45; margin-bottom: 8px; }
  body .req, body #req { padding-top: 10px !important; padding-bottom: 10px !important; }
  body .rp__head { padding: 12px 14px !important; }
  body .rp__title { font-size: 20px; }
  body .rp__lead { font-size: 13px; margin-top: 2px; }
  body .trust { padding-top: 10px !important; padding-bottom: 10px !important; }
  body .trust__grid { gap: 10px !important; }
  body .trust-card__title { font-size: 16px; margin-bottom: 4px !important; }
  body .trust-card__text { font-size: 13px; line-height: 1.4 !important; }
  body .trust-card__icon { margin-bottom: 4px !important; }
  body .faq { width: calc(100% - 20px); padding: 12px 14px !important; margin-top: 8px !important; margin-bottom: 8px !important; }
  body .faq__question { padding: 10px 0 !important; font-size: 14px !important; }
  body .cta { padding: 16px 0; margin-top: 8px !important; margin-bottom: 8px !important; }
  body .cta__title { font-size: 22px; }
  body .cta__desc { font-size: 13px; margin-bottom: 10px; }
  body .cart-sidebar__header { padding: 10px 14px; }
  body .cart-sidebar__title { font-size: 20px !important; }
  body .cart-sidebar__items { padding: 4px 14px; }
  body .cart-sidebar__footer { padding: 10px 14px 12px; }
  body .cart-item__img { width: 64px; height: 64px; }

  /* ── п.2 категории: одна строка, горизонтальная прокрутка, у обрезанного края градиент ── */
  body .catalog .container { padding: 0 10px; }
  body .catalog__tabs {
    display: flex; flex-wrap: nowrap; justify-content: flex-start; gap: 6px; margin: 0 -10px 8px !important; padding: 0 10px;
    overflow-x: auto; scrollbar-width: none; -webkit-overflow-scrolling: touch; scroll-snap-type: x proximity;
  }
  body .catalog__tabs::-webkit-scrollbar { display: none; }
  body .catalog__tab { flex: 0 0 auto; min-height: 40px; padding: 8px 14px !important; font-size: 13px; letter-spacing: .04em; white-space: nowrap; scroll-snap-align: center; }
  body .catalog__tabs.has-more-r { -webkit-mask-image: linear-gradient(to right, #000 calc(100% - 28px), transparent); mask-image: linear-gradient(to right, #000 calc(100% - 28px), transparent); }
  body .catalog__tabs.has-more-l { -webkit-mask-image: linear-gradient(to left, #000 calc(100% - 28px), transparent); mask-image: linear-gradient(to left, #000 calc(100% - 28px), transparent); }
  body .catalog__tabs.has-more-l.has-more-r { -webkit-mask-image: linear-gradient(to right, transparent, #000 28px, #000 calc(100% - 28px), transparent); mask-image: linear-gradient(to right, transparent, #000 28px, #000 calc(100% - 28px), transparent); }

  /* карточки товара плотнее (размеры S/M/L/XL остаются с областью нажатия 44x44) */
  body .catalog__grid { gap: 8px 6px !important; margin: 0 -10px; }
  body .product-card { padding: 4px 4px 8px !important; }
  body .product-card__image-wrap { aspect-ratio: 1 / 1 !important; }
  body .product-card__shot { margin: 2px 0 0; font-size: 10px; line-height: 1.2; }
  body .product-card__name { margin: 0; line-height: 1.25; }
  body .product-card__price { margin: 0; }
  body .product-card__buy-btn { margin-top: 4px !important; min-height: 40px; }

  /* ── п.4 корзина: число и сумма в шапке + небольшая НЕПОДВИЖНАЯ «Оформить» ── */
  #cartBtn { position: relative; }
  #cartBtn.sm-has-items .sm-hdrsum {
    display: block; position: absolute; left: 50%; bottom: 1px; transform: translateX(-50%);
    font-size: 10px; line-height: 1; font-weight: 600; white-space: nowrap; color: #493039;
  }
  .sm-go { display: block; position: fixed; left: 10px; bottom: calc(10px + env(safe-area-inset-bottom, 0px)); z-index: 240; visibility: hidden; opacity: 0; }
  .sm-go.is-on { visibility: visible; opacity: 1; }
  .sm-go__btn { min-height: 40px; padding: 0 18px; border-radius: 20px; background: #CF818A; color: #fff; border: 0; font: inherit; font-size: 13px; font-weight: 600; box-shadow: 0 2px 8px rgba(26, 23, 20, .22); }

  /* ── п.5 карточка товара целиком на одном экране ── */
  body .pmodal__inner { max-height: 100dvh; border-radius: 14px 14px 0 0; }
  body .pmodal__gallery { aspect-ratio: auto !important; height: min(32vh, 250px); }
  body .pmodal__info { padding: 10px 16px calc(12px + env(safe-area-inset-bottom, 0px)) !important; gap: 4px !important; }
  body .pmodal__cat { font-size: 10px; letter-spacing: .14em; }
  body .pmodal__name { font-size: 19px !important; }
  body .pmodal__price { font-size: 19px; }
  body .pmodal__desc { font-size: 13px; line-height: 1.4; }
  body .pmodal__specs { margin-top: 0; }
  body .pmodal__specs td { padding: 3px 0; font-size: 12px; }
  body .pmodal__cart-btn { min-height: 42px !important; padding: 9px 16px; margin-top: 4px; font-size: 12px; }
  body .pmodal__cart-btn--outline { margin-top: 4px; }
  body .quick-order { margin-top: 6px; padding: 10px; }

  /* ── п.6 подвал: 2 колонки, плотно ── */
  body .footer { padding: 14px 10px calc(40px + env(safe-area-inset-bottom, 0px)) !important; border-radius: 16px 16px 0 0; }
  body .footer__top { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 6px 14px !important; padding: 0 0 8px !important; }
  body .footer__brand { grid-column: 1 / -1; padding: 0 0 4px !important; margin: 0 !important; border: 0 !important; }
  body .footer__logo { font-size: 22px !important; }
  body .footer__logo-sub { margin-top: 2px !important; margin-bottom: 4px; font-size: 10px !important; }
  body .footer__about { max-width: none; margin-top: 2px !important; font-size: 12px !important; line-height: 1.35 !important; }
  body .footer__col { border: 0 !important; padding: 0 !important; }
  body .footer__col-toggle { display: flex; padding: 0 0 2px !important; pointer-events: none; }
  body .footer__col-chevron { display: none !important; }
  body .footer__col-title { margin-bottom: 0 !important; font-size: 10.5px !important; }
  body .footer__col-body, body .footer__col.open .footer__col-body { display: flex !important; flex-direction: column; padding: 0 !important; gap: 0 !important; }
  body .footer .footer__link { min-height: 0; padding: 3px 0 !important; font-size: 12px !important; line-height: 1.3 !important; display: block; }
  body .footer__hours { margin: 0 !important; font-size: 12px !important; line-height: 1.35 !important; }
  body .footer__bottom { padding: 6px 0 0 !important; gap: 3px !important; border-top: 1px solid rgba(255, 255, 255, .1); }
  body .footer__bottom span, body .footer__requisites { font-size: 10.5px !important; line-height: 1.35 !important; }
  body .footer__bottom-links { display: flex !important; flex-direction: row !important; flex-wrap: wrap; justify-content: center; gap: 0 10px !important; }
  body .footer .footer__bottom-links a { min-height: 0; display: inline !important; padding: 2px 0; font-size: 10.5px !important; line-height: 1.4; }

  /* ── п.7 оформление: плотнее; дата+время и дом/кв./этаж — в одну строку (HTML: .checkout-addr-grid) ── */
  body .checkout-modal { max-height: 96dvh; }
  body .checkout-modal__header { padding: 8px 14px !important; }
  body .checkout-modal__title { font-size: 19px !important; }
  body .checkout-modal__back { min-height: 40px; padding: 4px 10px; font-size: 13px; }
  body .checkout-modal__body { padding: 10px 14px 12px !important; }
  .checkout-payment-note { font-size: 12px; line-height: 1.4; margin-bottom: 8px; }
  .checkout-form { gap: 9px; }
  .checkout-field { gap: 3px; }
  .checkout-label { font-size: 10.5px; letter-spacing: .08em; }
  .checkout-input { padding: 8px 12px; }
  .checkout-section-label { margin: 0 0 -4px; font-size: 10.5px; }
  .checkout-row:not(#checkoutRecipientFields) { grid-template-columns: 1fr 1fr !important; gap: 8px; }
  .checkout-row .checkout-input { padding-left: 10px; padding-right: 10px; }
  .checkout-row .checkout-select { padding-right: 30px; }
  .checkout-row .time-clock-icon { display: none; }
  .checkout-addr-grid { gap: 8px; }
  .checkout-fulfillment__options { gap: 18px; }
  .checkout-fulfillment__option { min-height: 36px; }
  .checkout-recipient-toggle { min-height: 32px; font-size: 13px; }
  .checkout-textarea { min-height: 48px; }
  .checkout-hint { font-size: 12px; }
  .checkout-consent { margin: 8px 0 6px; padding: 8px 10px; }
  .checkout-consent__label { font-size: 12px; line-height: 1.4; }
  .checkout-consent__links { flex-direction: row; flex-wrap: wrap; gap: 0 14px; margin-left: 0; }
  body #checkoutPayNow, body #checkoutSubmit { min-height: 44px; padding-top: 8px; padding-bottom: 8px; margin-top: 0; }
  body #checkoutSubmit { margin-top: 6px; }
  .checkout-order-summary { padding: 8px 12px; margin-bottom: 8px; font-size: 13px; line-height: 1.45; }
  body .checkout-actions { padding: 8px 14px calc(8px + env(safe-area-inset-bottom, 0px)) !important; }
  .checkout-actions .checkout-payment__note { margin: 4px 0; font-size: 11.5px; line-height: 1.3; }
  .sm-steps { margin: 0 0 8px; }
  .sm-steps__item { padding: 6px 0 4px; }
  .sm-next { margin-top: 6px; }
  .sm-back { margin: 0 0 6px; }
  #manualOrderFallback { font-size: 12px; line-height: 1.35; }
  #manualOrderFallback p { margin: 0 0 4px; }

  /* блок оплаты после создания заказа: переключатель в один ряд */
  .pay-method { margin-top: 10px; }
  .pay-method__toggle { flex-direction: row !important; gap: 4px; margin-bottom: 6px; }
  .pay-method__option { width: auto !important; font-size: 12.5px; padding: 6px 8px; }
  .pay-method__hint { margin-bottom: 8px; }
}

/* ── R62.6.13 (ошибки demo R62.6.12, список Board 07.10): телефон ── */
@media (max-width: 767px) {
  /* п.4 шапка: подпись «Флористическая студия · Москва» убрана (в подвале она есть), логотип в одну строку */
  body .logo__sub { display: none; }
  /* логотип стоит по центру свободной полосы между бургером (44) и тремя значками (3×44+2×2): иначе «S» уходит под значок поиска */
  body .logo { width: auto; max-width: none; padding: 0; left: calc(60px + (100% - 212px) / 2); }
  body .logo__name { font-size: clamp(12px, calc((100vw - 214px) / 8.8), 20px); letter-spacing: 0.08em; line-height: 1.2; white-space: nowrap; }

  /* п.1 цели нажатия ≥ 44 px: бургер, поиск, кабинет, корзина */
  body .burger { min-width: 44px; min-height: 44px; padding: 11px; justify-content: center; align-items: center; }
  body .header__actions { gap: 2px; }
  body .icon-btn { box-sizing: border-box; min-width: 44px; min-height: 44px; padding: 13px; display: inline-flex; align-items: center; justify-content: center; }

  /* п.1 размеры S/M/L/XL в карточках: реальные кнопки 44×44, зазор между ними — прозрачная рамка */
  body .product-card__sizes { gap: 0; margin-bottom: 4px; flex-wrap: nowrap; }
  body .product-card__size { box-sizing: border-box; min-width: 44px; min-height: 44px; padding: 0; display: inline-flex; align-items: center; justify-content: center; border: 4px solid transparent !important; background-clip: padding-box; }

  /* п.1 кнопки «Назад»: боковая панель «По поводу», «← Назад» в оформлении и «Мои заказы» */
  body .occ-sidebar__back, body .cat-sidebar__close { min-width: 44px; min-height: 44px; justify-content: center; }
  body .checkout-modal__back { min-height: 44px !important; }
  /* та же планка 44 px для остальных нажимаемых мест, которые замер показал ниже нормы: вкладки категорий, «В корзину», вопросы FAQ, кнопки карточки товара */
  body .catalog__tab { min-height: 44px; }
  body .product-card__buy-btn { min-height: 44px; }
  body .faq__question { min-height: 44px; }
  body .pmodal__cart-btn { min-height: 44px !important; }

  /* п.5 баннер: на первом экране виден каталог — картинка ниже, заголовок в 2 строки, описание скрыто */
  body .hero { margin: 6px 10px 0 !important; }
  body .hero__image { height: 120px !important; }
  body .hero__text { padding: 10px 16px 12px !important; }
  body .hero__eyebrow { font-size: 10px; margin-bottom: 2px; }
  body .hero__title { font-size: 22px !important; line-height: 1.15; margin-bottom: 0; }
  body .hero__title br { display: none; }
  body .hero__desc { display: none; }
}
