/* Корзина «адрес первым» (сборка site-order-first-screen, таск 03, 29.10.2026; вид — макет B Павла,
   .autopilot/2026-10-29-site-order-first-screen--wip/mockup/5-…, 6-…): блок «Куда привезти» над шкалой подарков, строка
   прогресса с полоской над кнопкой оформления и условия доставки под ней. Цвета — токены сайта (style.css: --navy,
   --yellow, --red) и уже принятые в корзине оттенки; новых нет. Скрытие — атрибутом hidden (order.css прячет [hidden]
   с !important), своих display у скрываемых узлов нет. Анимация полоски — только без «Уменьшить движение». */
.page-order .cart-where,.page-order .cart-pickup{display:grid;gap:8px;margin:0 0 12px;padding:12px;border-radius:14px;background:#fff;box-shadow:inset 0 0 0 1px rgba(9,42,97,.12);color:var(--navy)}
.page-order .cart-where-title{margin:0;font:800 11px/1.2 Manrope,Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:rgba(9,42,97,.6)}
.page-order .cart-where-fields{position:relative;min-width:0}
.page-order .cart-where .order-field{position:relative;display:block}
.page-order .cart-where-pin{position:absolute;left:14px;top:50%;width:18px;height:18px;margin-top:-9px;fill:none;stroke:rgba(9,42,97,.55);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
.page-order .cart-where .order-field input{min-height:46px;padding:10px 14px 10px 42px;border:0;border-radius:12px;box-shadow:inset 0 0 0 1.5px rgba(9,42,97,.22);font:600 15px/1.2 Manrope,Arial,sans-serif;color:var(--navy)}
.page-order .cart-where.is-known .order-field input{font-weight:700;padding-right:96px}
.page-order .cart-where .order-field input[aria-invalid=true]{box-shadow:inset 0 0 0 2px #a61d20}
.page-order .cart-where-edit{position:absolute;top:0;right:4px;height:46px;min-height:46px;padding:0 10px;border:0;background:transparent;font:700 14px/1 Manrope,Arial,sans-serif;color:#1c7a43;cursor:pointer}
.page-order .cart-where .order-small-note{margin:6px 0 0;font-size:12px;line-height:1.4}
.page-order .cart-where .field-error{margin:6px 0 0;font-size:13px}
/* Блок расчёта (assets/delivery/delivery-quote-ui.mjs) в «Куда привезти» — без своей рамки: подсказка до адреса, отказ
   словами гостя, «Время доставки» района. Район, кафе и условия рисует корзина. */
.page-order .cart-where .delivery-quote{margin:6px 0 0;padding:0;border:0;background:none;font-size:13px}
.page-order .cart-where .delivery-quote-status.is-hint{font:600 13px/1.4 Manrope,Arial,sans-serif;color:rgba(9,42,97,.72)}
.page-order .cart-where .delivery-quote-details{margin:2px 0 0;font-size:13px}
.page-order .cart-where-zone{margin:0;font:800 14px/1.3 Manrope,Arial,sans-serif;color:var(--navy);overflow-wrap:anywhere}
.page-order .cart-where-tags{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0}
.page-order .cart-where-tags:not(:has(>:not([hidden]))){display:none}
.page-order .cart-where-cafe{display:inline-flex;align-items:center;padding:4px 10px;border-radius:99px;background:rgba(255,211,63,.35);font:700 12px/1.2 Manrope,Arial,sans-serif;color:var(--navy)}
/* Слепая приёмка F2: «куда возим» до адреса, «в этот район не возим» (слова главной) и «когда привезут» — строками блока. */
.page-order .cart-where-zones{margin:0;font:600 12px/1.4 Manrope,Arial,sans-serif;color:rgba(9,42,97,.72);overflow-wrap:anywhere}
.page-order .cart-where-closed{margin:0;font:700 13px/1.35 Manrope,Arial,sans-serif;color:#a61d20}
.page-order .cart-where-hours{display:flex;align-items:flex-start;gap:6px;margin:0;font:600 13px/1.35 Manrope,Arial,sans-serif;color:var(--navy)}
@media(max-width:400px){.page-order .cart-where-hours{font-size:12px}} /* «Привезём как можно скорее или ко времени» — одной строкой на 360–400 px */
.page-order .cart-where-clock{flex:none;width:16px;height:16px;margin-top:1px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
/* Зона за кафе вне приёма сайта: причину говорит корзина (#cart-where-closed) — строка блока расчёта с той же причиной или
   с «Добавьте ещё …» и его условия зоны не видны: слова не двоятся, цены зоны, куда не возим, не обещаны. Кнопка «Проверить
   заказ» ссылается на строку блока (aria-describedby) — описание читается и у скрытой. */
.page-order .cart-where.is-closed .delivery-quote-status,.page-order .cart-where.is-closed .delivery-quote-details{display:none}
/* pick-1 (30.10.2026, жалоба Павла на переход «Заберу сам» в конце корзины): «Заберу сам из кафе» у адреса, «заберите сами»
   в строке про минимум и «Вернуться к доставке» — маленькие текстовые ссылки, не плитки (по сути кнопки: меняют способ
   получения). Там, куда не возим (.is-away), «Заберу сам из кафе» — главный путь: жёлтая, как была. */
.page-order .cart-where-link{min-height:24px;padding:2px 0;border:0;border-radius:0;background:none;color:var(--navy);font:700 13px/1.3 Manrope,Arial,sans-serif;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.page-order .cart-where-link:hover{border-color:transparent;background:none;color:#1c7a43}
.page-order .cart-where-pickup{margin-left:auto}
.page-order .cart-where.is-away .cart-where-pickup,.page-order .cart-where.is-away .cart-where-pickup:hover{min-height:36px;margin-left:0;padding:0 14px;border-radius:999px;background:var(--yellow);color:var(--navy);font-weight:800;text-decoration:none}
/* Самовывоз — выбор кафе в корзине (#cart-pickup, рисует order.js renderPickup): кнопки кафе с адресом, выбранное — синим;
   ниже «Маршрут и часы» выбранного кафе и «Вернуться к доставке». */
.page-order .cart-pickup-cafes{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:6px}
.page-order .cart-pickup-cafe{display:flex;flex-direction:column;align-items:flex-start;gap:3px;min-height:56px;padding:10px 12px;border:1.5px solid rgba(9,42,97,.22);border-radius:12px;background:#fff;color:var(--navy);text-align:left;font:800 15px/1.2 Manrope,Arial,sans-serif;cursor:pointer}
.page-order .cart-pickup-cafe span{font:600 12px/1.35 Manrope,Arial,sans-serif;opacity:.8}
.page-order .cart-pickup-cafe[aria-pressed=true],.page-order .cart-pickup-cafe[aria-pressed=true]:hover{border-color:var(--navy);background:var(--navy);color:#fff}
.page-order .cart-pickup-links{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 12px;margin:0}
.page-order .cart-pickup-links a{display:inline-flex;align-items:center;min-height:24px;font:700 13px/1.3 Manrope,Arial,sans-serif;color:var(--navy);text-decoration:underline;text-underline-offset:3px}
/* «Или заберите сами — без минимума» — маленькой строкой сразу под строкой прогресса (сумму называет она, pick-2). */
.page-order .cart-pickup-offer{margin:2px 0 6px;font:600 12px/1.4 Manrope,Arial,sans-serif;color:rgba(9,42,97,.78)}
.page-order .cart-pickup-offer .cart-where-link{display:inline;min-height:0;padding:0;font:inherit;font-weight:800;vertical-align:baseline}

/* Строка прогресса над кнопкой: «До минимума ещё N ₽» → «До бесплатной доставки ещё N ₽» → «Доставка бесплатно». */
.page-order .cart-progress{display:grid;gap:6px;margin:10px 0 2px}
.page-order .cart-progress p{margin:0;font:800 14px/1.3 Manrope,Arial,sans-serif;color:var(--navy)}
.page-order .cart-progress em{font-style:normal;color:var(--red);white-space:nowrap}
.page-order .cart-progress-bar{display:block;height:6px;border-radius:99px;background:rgba(9,42,97,.1);overflow:hidden}
.page-order .cart-progress-bar i{display:block;height:100%;width:100%;border-radius:inherit;background:var(--yellow);transform-origin:0 50%;transform:scaleX(var(--p,0))}
.page-order .cart-progress[data-kind=done] .cart-progress-bar i{background:#1c7a43}
@media(prefers-reduced-motion:no-preference){.page-order .cart-progress-bar i{transition:transform .5s cubic-bezier(.16,1,.3,1)}}
.page-order .cart-delivery-note.has-terms{margin:4px 0 12px;font:600 12px/1.4 Manrope,Arial,sans-serif;color:rgba(9,42,97,.7)}
/* Режим оплаты: «Адрес увидит менеджер кафе» под полем — только для экранного диктора (на неё ссылается aria-describedby
   поля); под полем — подсказка «По адресу покажем…», как на макете. Без оплаты слова прототипа остаются видны. */
html.omnom-order-send .page-order .cart-where #address-note{position:absolute;width:1px;height:1px;margin:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.page-order .cart-terms-part{white-space:nowrap}
