/* Shared category rail: controls above, soft edges and native touch scrolling. */
.catalog-toolbar > .category-scroll, .menu-toolbar > .category-scroll { display: block; width: 100%; min-width: 0; flex: 1 1 100%; }
.category-scroll-top { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 38px; margin-bottom: 10px; }
.category-selection { color: var(--muted); font-size: 12px; letter-spacing: .015em; }
.category-scroll-controls { display: flex; align-items: center; justify-content: flex-end; gap: 7px; margin-left: auto; }
.category-scroll .category-scroll-arrow { width: 36px; height: 36px; flex-basis: 36px; border-radius: 50%; background: #fff; border-color: #e5ded5; box-shadow: 0 2px 8px #3c241a04; transition: background .2s ease, border-color .2s ease, opacity .2s ease, transform .2s ease; }
.category-scroll .category-scroll-arrow:hover:not(:disabled) { background: #f0e8df; border-color: #d4bca9; transform: translateY(-1px); }
.category-scroll .category-scroll-arrow:active:not(:disabled) { transform: scale(.95); }
.category-scroll .category-scroll-arrow:disabled { opacity: .25; }
.category-scroll .tabs { display: flex; position: relative; flex-wrap: nowrap; width: 100%; max-width: 100%; gap: 8px; margin: 0; padding: 5px 3px 9px; overflow-x: auto; overscroll-behavior-x: contain; scrollbar-width: none; -webkit-mask-image: linear-gradient(to right,transparent,#000 26px,#000 calc(100% - 26px),transparent); mask-image: linear-gradient(to right,transparent,#000 26px,#000 calc(100% - 26px),transparent); }
.category-scroll[data-at-start="true"] .tabs { -webkit-mask-image: linear-gradient(to right,#000,#000 calc(100% - 26px),transparent); mask-image: linear-gradient(to right,#000,#000 calc(100% - 26px),transparent); }
.category-scroll[data-at-end="true"] .tabs { -webkit-mask-image: linear-gradient(to right,transparent,#000 26px,#000); mask-image: linear-gradient(to right,transparent,#000 26px,#000); }
.category-scroll[data-at-start="true"][data-at-end="true"] .tabs { -webkit-mask-image: none; mask-image: none; }
.category-scroll .tabs::-webkit-scrollbar { display: none; width: 0; height: 0; }
.category-scroll .tab { flex: 0 0 auto; border-radius: 999px; white-space: nowrap; transition: color .2s ease, background-color .2s ease, border-color .2s ease, box-shadow .2s ease; }
.category-scroll .tab:hover:not([aria-pressed="true"]) { border-color: #cdb9a9; background: #f3eae1; }
.category-scroll .tab[aria-pressed="true"] { box-shadow: 0 3px 9px #241c1914; }
.product-card > .deposit-note { display: flex; align-items: center; gap: 5px; width: fit-content; max-width: calc(100% - 20px); margin: 6px 10px 0; padding: 4px 7px; background: #f1e8dc; border-radius: 5px; color: #745942; font-size: 10.5px; line-height: 1.5; }
.product-card > .deposit-note + .product-detail { margin-top: 10px; }
.pricing-tax-breakdown { margin: 16px 0 4px; padding: 13px 0 0; border-top: 1px dashed #ded6cc; }
.pricing-tax-breakdown .total-line { font-size: 12px; color: #66594f; margin: 7px 0; }
.pricing-tax-breakdown .tax-included-caption { margin: 6px 0 0; font-size: 10px; color: #8b7a6b; line-height: 1.5; }
.cart-quote-error { margin: 10px 0; color: var(--red); font-size: 12px; line-height: 1.6; }
.cart-quote-error button { text-decoration: underline; text-underline-offset: 3px; font-weight: 600; margin-left: 4px; }
@media(max-width:760px) {
  .category-scroll-top { margin-bottom: 8px; min-height: 34px; }
  .category-scroll .category-scroll-arrow { width: 34px; height: 34px; flex-basis: 34px; }
  .category-selection { font-size: 11px; }
  .category-scroll .tabs { gap: 7px; }
  #home-shop .product-card > .deposit-note { margin-inline: 7px; max-width: calc(100% - 14px); font-size: 10px; }
}
@media(prefers-reduced-motion:reduce) {
  .category-scroll :is(.tab,.category-scroll-arrow) { transition: none; }
}

/* Delivery rules: neighbourhood-based courier, delivery time and weekly cargo. */
.fulfillment-summary{display:flex;gap:14px;align-items:flex-start;margin-top:18px;padding:16px 18px;border:1px solid var(--line);border-radius:14px;background:var(--cream)}
.fulfillment-summary>.icon{width:22px;height:22px;flex-shrink:0;color:var(--red);margin-top:2px}
.fulfillment-summary strong{display:block;font-size:15px;color:var(--ink)}
.fulfillment-summary small{display:block;font-size:13px;line-height:1.6;margin-top:4px;color:var(--muted)}
.fulfillment-note{font-size:13px;line-height:1.7;color:var(--muted);margin:14px 0 0}
.fulfillment-note .icon{width:16px;height:16px;vertical-align:-3px;color:var(--red)}
.fulfillment-warning{margin-top:14px;padding:14px 16px;border-radius:12px;background:var(--blush);color:var(--red-dark);font-size:13px;line-height:1.6}
.fulfillment-warning p{margin:0 0 12px}
.fulfillment-warning .btn{width:100%;justify-content:center}
.delivery-when{border:0;padding:0;margin:20px 0 0;display:grid;gap:10px}
.delivery-when legend{font-size:13px;font-weight:600;color:var(--ink);margin-bottom:10px}
.when-option{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;border:1px solid var(--line);border-radius:12px;cursor:pointer;background:var(--paper)}
.when-option:has(input:checked){border-color:var(--red);background:var(--blush)}
.when-option.is-disabled{opacity:.55;cursor:not-allowed}
.when-option input{margin-top:3px;accent-color:var(--red)}
.when-option strong{display:block;font-size:14px;color:var(--ink)}
.when-option small{display:block;font-size:12.5px;margin-top:3px;color:var(--muted);line-height:1.5}
.when-fields{margin-top:6px}
.review-plan,.tracking-plan{display:flex;gap:10px;align-items:center;font-size:14px;color:var(--ink);background:var(--cream);border:1px solid var(--line);border-radius:12px;padding:12px 14px;margin:0 0 18px}
.review-plan .icon,.tracking-plan .icon{width:18px;height:18px;color:var(--red);flex-shrink:0}
.stock-label.local-only{white-space:nowrap}
