/* BUYAMTO phone dock + calmer phone screen (≤ 849px). Uses the theme's --by-* tokens (dark mode follows). */
.by-dock, .by-search { display: none; }

@media (max-width: 849px) {
	:root { --by-dock-h: 64px; --by-dock-space: calc(var(--by-dock-h) + 18px + env(safe-area-inset-bottom, 0px)); }
	body.by-has-dock { padding-bottom: var(--by-dock-space); }

	/* The dock */
	.by-dock { display: block; position: fixed; left: 0; right: 0; bottom: 0; z-index: 9990; padding: 0 max(10px, env(safe-area-inset-left, 0px)) calc(8px + env(safe-area-inset-bottom, 0px)) max(10px, env(safe-area-inset-right, 0px)); pointer-events: none; }
	.by-dock__bar { pointer-events: auto; max-width: 520px; margin: 0 auto; height: var(--by-dock-h); display: grid; grid-auto-flow: column; grid-auto-columns: 1fr; background: color-mix(in srgb, var(--by-bg, #FAFAF8) 84%, transparent); backdrop-filter: blur(18px) saturate(1.2); -webkit-backdrop-filter: blur(18px) saturate(1.2); border: 1px solid var(--by-line, #E7E2D9); border-radius: 22px; box-shadow: 0 1px 2px rgba(26,24,21,.05), 0 18px 40px -22px rgba(26,24,21,.45); }
	.by-dock__i { position: relative; display: grid; place-items: center; align-content: center; gap: 2px; margin: 0; padding: 0; min-height: 0; border: 0; background: none; color: var(--by-ink-soft, #4B463F) !important; text-decoration: none !important; font: inherit; font-size: .68rem; font-weight: 700; letter-spacing: 0; text-transform: none; line-height: 1.1; cursor: pointer; -webkit-tap-highlight-color: transparent; }
	.by-dock__i svg { width: 22px; height: 22px; transition: transform .15s; }
	.by-dock__i:active svg { transform: scale(.9); }
	.by-dock__i[aria-current="page"] { color: var(--by-ink, #1A1815) !important; }
	.by-dock__i[aria-current="page"]::before { content: ""; position: absolute; top: 7px; width: 4px; height: 4px; border-radius: 50%; background: var(--by-orange, #C94F0A); }
	.by-dock__n { position: absolute; top: 7px; left: calc(50% + 4px); min-width: 18px; height: 18px; padding: 0 5px; border-radius: 9px; background: var(--by-orange, #C94F0A); color: #fff; font-size: .66rem; font-weight: 800; display: grid; place-items: center; transform: scale(0); transition: transform .2s; }
	.by-dock__n.is-on { transform: scale(1); }
	.by-dock__i:focus-visible { outline: 2px solid var(--by-teal, #0E7C86); outline-offset: -4px; border-radius: 16px; }

	/* Search sheet */
	.by-search { display: block; position: fixed; inset: 0; z-index: 100020; }
	.by-search[hidden] { display: none; }
	.by-search__scrim { position: absolute; inset: 0; background: rgba(10,9,8,.45); }
	.by-search__sheet { position: absolute; left: 0; right: 0; bottom: 0; background: var(--by-bg, #FAFAF8); border-radius: 26px 26px 0 0; padding: 10px max(16px, env(safe-area-inset-left, 0px)) calc(22px + env(safe-area-inset-bottom, 0px)) max(16px, env(safe-area-inset-right, 0px)); animation: bySheet .22s cubic-bezier(.22,.61,.36,1); }
	@keyframes bySheet { from { transform: translateY(100%); } to { transform: none; } }
	.by-search__grab { display: block; width: 42px; height: 5px; border-radius: 3px; background: var(--by-line, #E7E2D9); margin: 0 auto 12px; }
	.by-search__form { display: flex; align-items: center; gap: 10px; min-height: 52px; padding: 0 6px 0 16px; border: 1.5px solid var(--by-line, #E7E2D9); border-radius: 999px; background: var(--by-surface, #fff); color: var(--by-ink-soft, #4B463F); margin: 0; }
	.by-search__form:focus-within { border-color: var(--by-teal, #0E7C86); }
	.by-search__form input[type="search"] { flex: 1; min-width: 0; height: 48px; margin: 0; border: 0 !important; box-shadow: none !important; background: none !important; color: var(--by-ink, #1A1815); font-size: 16px; padding: 0; }
	.by-search__x { width: 40px; height: 40px; min-height: 0; margin: 0; padding: 0; border-radius: 50%; border: 0; background: var(--by-warm, #F1EDE6); color: var(--by-ink, #1A1815); font-size: 1rem; line-height: 1; }
	.by-search__l { margin: 18px 0 8px; font-size: .7rem; letter-spacing: .14em; text-transform: uppercase; color: var(--by-ink-soft, #4B463F); font-weight: 700; }
	.by-search__chips { display: flex; flex-wrap: wrap; gap: 8px; }
	.by-search__chips a { display: inline-flex; align-items: center; min-height: 40px; padding: 0 14px; border-radius: 999px; border: 1.5px solid var(--by-line, #E7E2D9); background: var(--by-surface, #fff); color: var(--by-ink, #1A1815) !important; text-decoration: none !important; font-weight: 700; font-size: .9rem; }
	html.by-search-open { overflow: hidden; }

	/* Slimmer header: search + cart live in the dock now */
	body.by-has-dock .header-bottom, body.by-has-dock .header-main .mobile-nav .cart-item, body.by-has-dock .header-main .nav-right .cart-item, body.by-has-dock #header .header-search-form { display: none !important; }

	/* Calmer: one layer at a time, all above the dock */
	body.by-has-dock #top-link, body.by-has-dock .back-to-top { display: none !important; }
	body.by-has-dock .bpulse { bottom: var(--by-dock-space) !important; }
	body.by-has-dock .sticky-add-to-cart--active, body.by-has-dock .sticky-add-to-cart-wrapper .sticky-add-to-cart--active { bottom: var(--by-dock-space) !important; }
	body.by-has-dock [class*="bchat-launcher"], body.by-has-dock .bchat-btn, body.by-has-dock #bchat-launcher { bottom: calc(var(--by-dock-space) + 6px) !important; }

	/* Cookie choices: a slim card above the dock instead of a third of the screen */
	body.by-has-dock .by-cc { bottom: var(--by-dock-space); left: 10px; right: 10px; }
	body.by-has-dock .by-cc__inner { padding: 12px 14px; gap: 10px; flex-wrap: wrap; border-radius: 20px; }
	body.by-has-dock .by-cc__icon { display: none; }
	body.by-has-dock .by-cc__text p:not(.by-cc__title) { font-size: .82rem; line-height: 1.4; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
	body.by-has-dock .by-cc__text .by-cc__title { font-size: .92rem; }
	body.by-has-dock .by-cc__buttons { width: 100%; display: grid; grid-template-columns: auto 1fr 1fr; gap: 6px; }
	body.by-has-dock .by-cc__btn { min-height: 40px; padding: 0 10px; font-size: .84rem; }
}
@media (max-width: 849px) {
	/* Slide-up cart */
	.by-cartsheet .by-search__sheet { max-height: 84vh; overflow: auto; }
	.by-cartsheet__head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 8px; }
	.by-cartsheet__head h2 { margin: 0; font-size: 1.35rem; letter-spacing: -.02em; }
	.by-cartsheet__wait { color: var(--by-ink-soft, #4B463F); }
	.by-cartsheet ul.cart_list, .by-cartsheet ul.product_list_widget { margin: 0; padding: 0; list-style: none; display: grid; gap: 8px; }
	.by-cartsheet li.mini_cart_item { position: relative; display: grid !important; grid-template-columns: 56px 1fr; gap: 4px 12px; align-items: center; padding: 8px 40px 8px 8px !important; margin: 0; background: var(--by-surface, #fff); border-radius: 16px; min-height: 0; }
	.by-cartsheet li.mini_cart_item img { grid-row: span 2; width: 56px !important; height: 56px !important; border-radius: 12px; object-fit: cover; margin: 0 !important; float: none !important; }
	.by-cartsheet li.mini_cart_item a:not(.remove) { color: var(--by-ink, #1A1815) !important; font-weight: 700; font-size: .92rem; line-height: 1.25; display: contents; }
	.by-cartsheet li.mini_cart_item .quantity { grid-column: 2; font-size: .84rem; color: var(--by-ink-soft, #4B463F); margin: 0; }
	.by-cartsheet li.mini_cart_item dl.variation { grid-column: 2; margin: 0; font-size: .78rem; }
	.by-cartsheet li.mini_cart_item a.remove { position: absolute !important; right: 10px; top: 50%; transform: translateY(-50%); left: auto !important; width: 28px; height: 28px; line-height: 26px; border-radius: 50%; border: 1px solid var(--by-line, #E7E2D9) !important; color: var(--by-ink-soft, #4B463F) !important; text-align: center; }
	.by-cartsheet .woocommerce-mini-cart__total { display: flex; justify-content: space-between; margin: 14px 0 0; padding: 12px 2px 0; border-top: 1px solid var(--by-line, #E7E2D9); font-size: 1rem; }
	.by-cartsheet .woocommerce-mini-cart__buttons { display: grid; grid-template-columns: 1fr 1.4fr; gap: 8px; margin: 14px 0 0; }
	.by-cartsheet .woocommerce-mini-cart__buttons .button { margin: 0 !important; min-height: 50px; border-radius: 999px; display: flex; align-items: center; justify-content: center; text-transform: none; letter-spacing: 0; font-weight: 800; }
	.by-cartsheet .woocommerce-mini-cart__buttons .checkout { background: var(--by-orange, #C94F0A) !important; color: #fff !important; border-color: var(--by-orange, #C94F0A) !important; }
	.by-cartsheet .woocommerce-mini-cart__empty-message { color: var(--by-ink-soft, #4B463F); }
}
@media (max-width: 849px) and (prefers-reduced-motion: reduce) {
	.by-search__sheet { animation: none; }
	.by-dock__i svg, .by-dock__n { transition: none; }
}
@media (max-width: 849px) {
	.by-cartsheet li.mini_cart_item { display: block !important; padding: 10px 44px 10px 10px !important; }
	.by-cartsheet li.mini_cart_item a:not(.remove) { display: flex !important; align-items: center; gap: 12px; font-size: .9rem; }
	.by-cartsheet li.mini_cart_item a:not(.remove) img { flex: none; grid-row: auto; }
	.by-cartsheet li.mini_cart_item .quantity, .by-cartsheet li.mini_cart_item dl.variation { display: block; margin: 4px 0 0 68px !important; }
}
@media (max-width: 849px) { .by-cartsheet li.mini_cart_item a:not(.remove) img { position: static !important; left: auto !important; top: auto !important; margin: 0 !important; } .by-cartsheet li.mini_cart_item { padding-left: 10px !important; } }

/* Live search results (2026-11-05) */
@media (max-width: 849px) {
	.by-search__sheet { max-height: 88vh; overflow: auto; }
	.by-search__live { margin-top: 10px; }
	.by-search__status { font-size: .9rem; color: var(--by-ink-soft, #4B463F); min-height: 0; }
	.by-search__status:empty { display: none; }
	.by-search__chips--cats { margin: 4px 0 10px; }
	.by-search__results { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; }
	.by-search__results li { margin: 0; }
	.by-res { display: flex; align-items: center; gap: 12px; padding: 8px; border-radius: 16px; background: var(--by-surface, #fff); color: var(--by-ink, #1A1815) !important; text-decoration: none !important; }
	.by-search__results li[aria-selected="true"] .by-res, .by-res:active { outline: 2px solid var(--by-teal, #0E7C86); }
	.by-res img, .by-res__ph { flex: none; width: 52px; height: 52px; border-radius: 12px; object-fit: cover; background: var(--by-warm, #F1EDE6); }
	.by-res__t { flex: 1; min-width: 0; display: grid; gap: 1px; }
	.by-res__t b { font-size: .95rem; }
	.by-res__t small { font-size: .78rem; color: var(--by-ink-soft, #4B463F); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
	.by-res__out { color: #B32D2E !important; font-weight: 700; }
	.by-res__p { flex: none; font-weight: 800; font-size: .92rem; }
	.by-search__all { display: block; margin: 12px 0 0; padding: 12px 0; text-align: center; font-weight: 800; color: var(--by-teal-dark, #0A6068) !important; text-decoration: none !important; }
	html[data-theme="dark"] .by-search__all { color: #7FD3DA !important; }
	.by-search__all[hidden], .by-search__results[hidden], [data-by-quick][hidden] { display: none; }
}
