/* FoodFestival UI · purchase block and sticky bar on the product page.
   !important is used only where the theme's Custom CSS setting uses it (#product button, .ui-size__btn).
   After that Custom CSS is cleaned up (see README), those !important can be removed. */
#product,#sku-sticky-buy{--ff-buy:#A33F0C;--ff-buy-hover:#8A3700;--ff-buy-tint:#FFF4EC;--ff-sale:#C0262D;--ff-choice:#3660BC;--ff-ink:#22283A;--ff-muted:#5A6477;font-family:Roboto,Arial,sans-serif;color:var(--ff-ink)}
#product .sku__settings{font-size:16px;line-height:24px}
#product .sku__settings .ui-label{font-size:14px;line-height:20px}
#product .sku__settings .ui-size__btn{background:#fff!important;border:1px solid #7A8599;color:var(--ff-ink);min-height:44px;min-width:52px;padding:0 16px;border-radius:999px;font-size:15px;line-height:20px;font-weight:500;font-variant-numeric:tabular-nums;display:flex;align-items:center;justify-content:center}
/* Selected pack = purchase accent (tint), not a second colour in the block. Overrides the theme's #8A3700!important. */
#product .sku__settings .ui-size__input:checked~.ui-size__btn{background:var(--ff-buy-tint)!important;border:2px solid var(--ff-buy);padding:0 15px;color:var(--ff-buy-hover);font-weight:700}
#product .sku__settings .ui-size__input:disabled~.ui-size__btn{background:#F6F7FA!important;border:1px dashed #CDD4E0;color:var(--ff-muted);text-decoration:line-through;cursor:not-allowed}
#product .sku__settings .ui-size__input:focus-visible~.ui-size__btn{outline:3px solid var(--ff-choice);outline-offset:3px}
#product #button-cart,#sku-sticky-buy #button-cart-sticky{background:var(--ff-buy)!important;color:#fff;text-transform:none;letter-spacing:0;font-weight:500;border-radius:999px;min-height:48px;font-size:16px;line-height:20px;white-space:normal}
#product #button-cart:hover,#sku-sticky-buy #button-cart-sticky:hover{background:var(--ff-buy-hover)!important}
#product #button-cart:disabled,#sku-sticky-buy #button-cart-sticky:disabled{background:#EEF1F6!important;color:var(--ff-muted);cursor:not-allowed}
/* Loading keeps the purchase colour; the theme sets disabled + loading text at the same time */
#product #button-cart.ff-loading:disabled,#sku-sticky-buy #button-cart-sticky.ff-loading:disabled{background:var(--ff-buy)!important;color:#fff;opacity:.85;cursor:progress}
#product .sku__action .jq-number{min-height:48px;border-color:#7A8599;border-radius:999px}
#product .sku__action input[name=quantity]{font-size:16px;font-variant-numeric:tabular-nums;min-height:44px}
#product .sku__price{font-size:28px;line-height:36px;font-weight:700;font-variant-numeric:tabular-nums;margin-bottom:8px}
#product .sku__price:has(u),#sku-sticky-buy .sku-sticky-buy__price:has(.sku-sticky-buy__price-old){color:var(--ff-sale)}
#sku-sticky-buy .sku-sticky-buy__price-old{color:var(--ff-muted)}
#product .sku__price u,#sku-sticky-buy .sku-sticky-buy__price-old{color:var(--ff-muted);font-weight:400;font-size:14px;text-decoration:line-through}
#product .sku__action .btn--dashed{color:var(--ff-choice);font-size:14px}
#product .ff-purchase-summary,#sku-sticky-buy .ff-purchase-summary{font-size:14px;line-height:20px;margin:6px 0;color:var(--ff-muted);overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
#product .ff-purchase-price-label,#sku-sticky-buy .ff-purchase-price-label{display:block;font-size:13px;line-height:18px;color:var(--ff-muted)}
#sku-sticky-buy .ff-purchase-change{background:transparent;border:0;padding:6px 0;color:var(--ff-choice);font-size:14px;line-height:20px;text-decoration:underline;min-height:32px}
#sku-sticky-buy .ff-purchase-change:disabled{opacity:.5}
#sku-sticky-buy .sku-sticky-buy__meta{flex:1;min-width:0}
#sku-sticky-buy .sku-sticky-buy__price{flex-wrap:wrap;font-size:22px;line-height:28px;font-variant-numeric:tabular-nums}
#sku-sticky-buy .sku-sticky-buy__btn{max-width:45%;flex-shrink:0}
#product :focus-visible,#sku-sticky-buy :focus-visible{outline:3px solid var(--ff-choice);outline-offset:3px}
#product .sku__type,#product .sku__action{scroll-margin-top:160px}
@media(max-width:991px){#sku-sticky-buy .sku-sticky-buy__inner{align-items:center;gap:12px}#sku-sticky-buy .sku-sticky-buy__btn{min-width:120px;padding:10px 14px}#sku-sticky-buy .sku-sticky-buy__title{font-size:13px;line-height:18px}#product .sku__price{font-size:26px;line-height:32px}}
/* Desktop: keep the decision and action in one readable, centred group. */
@media(min-width:992px){
  #sku-sticky-buy{padding:0 24px}
  #sku-sticky-buy .sku-sticky-buy__inner{max-width:960px;margin:0 auto;padding:12px 20px;gap:24px}
  #sku-sticky-buy .sku-sticky-buy__meta{display:grid;grid-template-columns:minmax(0,1fr) minmax(160px,auto);grid-template-rows:auto auto;column-gap:32px;align-items:center}
  #sku-sticky-buy .sku-sticky-buy__title{grid-column:1;grid-row:1;font-size:14px;line-height:20px}
  #sku-sticky-buy .ff-purchase-summary{grid-column:1;grid-row:2;margin:4px 0 0}
  #sku-sticky-buy .ff-purchase-price-label{grid-column:2;grid-row:1;align-self:start}
  #sku-sticky-buy .sku-sticky-buy__price{grid-column:2;grid-row:2;align-self:start}
  #sku-sticky-buy .ff-purchase-change{grid-column:1;grid-row:3;justify-self:start;padding:2px 0;min-height:24px}
  #sku-sticky-buy .sku-sticky-buy__btn{min-width:156px;max-width:200px}
}

/* Server-rendered containers (OCMOD) */
#product .ff-purchase-summary:empty{display:none}
/* Phone bar: two compact lines — "0,5 кг × 2 · Змінити", then total — with the button on the right */
@media(max-width:991px){
  #sku-sticky-buy .sku-sticky-buy__title{display:none}
  #sku-sticky-buy .sku-sticky-buy__meta{display:grid;grid-template-columns:minmax(0,auto) auto;justify-content:start;align-items:center;column-gap:8px;row-gap:0}
  #sku-sticky-buy .ff-purchase-summary{grid-column:1;grid-row:1;margin:0;font-size:13px;line-height:18px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  #sku-sticky-buy .ff-purchase-change{grid-column:2;grid-row:1;min-height:24px;padding:0;font-size:13px;line-height:18px}
  #sku-sticky-buy .ff-purchase-price-label{grid-column:1/-1;grid-row:2;margin-top:2px;font-size:12px;line-height:16px}
  #sku-sticky-buy .sku-sticky-buy__price{grid-column:1/-1;grid-row:3;font-size:20px;line-height:24px}
}
