/* STCR2 Black Friday progress bar v2.1.3 */
[data-stcr2-bf][hidden]{display:none!important}
.stcr2-bf-progress,.stcr2-bf-pop{--bf-accent:#baff38;--bf-bg:#121515;--bf-txt:#f5f7ef;--bf-muted:#a2aaa2;--bf-line:#303831}

/* Inline bar */
.stcr2-bf-progress{background:var(--bf-bg);color:var(--bf-txt);border:1px solid var(--bf-line);border-radius:15px;padding:22px;margin:16px 0 24px;font-family:inherit;box-sizing:border-box}
.stcr2-bf-progress *{box-sizing:border-box}
.stcr2-bf-head{display:flex;justify-content:space-between;gap:12px;align-items:center}
.stcr2-bf-eyebrow{font-size:11px;letter-spacing:.12em;font-weight:750;color:var(--bf-accent)}
.stcr2-bf-heading{color:var(--bf-txt);font-size:clamp(22px,3vw,30px);font-weight:800;margin:6px 0 14px;line-height:1.15}
.stcr2-bf-pill{white-space:nowrap;color:var(--bf-accent);background:#273222;border:1px solid #4c6337;padding:6px 10px;border-radius:30px;font-size:11px;font-weight:750}
/* Pack slots + discount lines (shared by bar and popup).
   Lines are flex items with the same gap as the pills: pill | gap | line | gap | pill. */
.stcr2-bf-track,.stcr2-bf-pop-track{display:flex;align-items:center;gap:5px;padding-bottom:40px}
.stcr2-bf-seg,.stcr2-bf-pop-seg{display:block;flex:1 1 0;min-width:0;height:14px;border-radius:4px;background:#333a35;transition:background .3s,box-shadow .3s}
.stcr2-bf-seg.is-active,.stcr2-bf-pop-seg.is-active{background:var(--bf-accent)}
.stcr2-bf-seg.is-next,.stcr2-bf-pop-seg.is-next{box-shadow:inset 0 0 0 2px var(--bf-accent);animation:stcr2-bf-next 1.6s ease-in-out infinite}
.stcr2-bf-line,.stcr2-bf-pop-line{display:block;flex:none;position:relative;font-style:normal;width:2px;height:22px;border-radius:1px;background:#5b6659}
.stcr2-bf-line.is-reached,.stcr2-bf-pop-line.is-reached{background:var(--bf-txt)}
.stcr2-bf-mark,.stcr2-bf-pop-mark{position:absolute;left:0;top:calc(100% + 5px);display:flex;flex-direction:column;align-items:flex-start;white-space:nowrap;line-height:1.15;color:var(--bf-muted)}
.stcr2-bf-mark b{font-size:clamp(14px,2vw,17px);font-weight:800;color:#bdc5bb}
.stcr2-bf-mark small{font-size:11px}
.is-reached>.stcr2-bf-mark b,.is-reached>.stcr2-bf-pop-mark b{color:var(--bf-accent)}
.is-next>.stcr2-bf-mark b,.is-next>.stcr2-bf-pop-mark b{color:var(--bf-txt)}
.is-next>.stcr2-bf-mark small::after{content:" · next"}
@keyframes stcr2-bf-next{0%,100%{box-shadow:inset 0 0 0 2px rgba(186,255,56,.95)}50%{box-shadow:inset 0 0 0 2px rgba(186,255,56,.25)}}
.stcr2-bf-message{font-size:15px;line-height:1.5;margin:14px 0 8px;color:var(--bf-txt)}
.stcr2-bf-message strong{color:var(--bf-accent)}
.stcr2-bf-note{font-size:11px;line-height:1.5;color:var(--bf-muted);margin:0}

/* Slim variant: product + shop pages */
.stcr2-bf-progress.is-slim{padding:14px 16px;margin:12px 0 18px}
.stcr2-bf-progress.is-slim .stcr2-bf-heading{font-size:clamp(17px,2.2vw,21px);margin:4px 0 10px}
.stcr2-bf-progress.is-slim .stcr2-bf-seg{height:11px}
.stcr2-bf-progress.is-slim .stcr2-bf-line{height:19px}
.stcr2-bf-progress.is-slim .stcr2-bf-track{padding-bottom:36px}
.stcr2-bf-progress.is-slim .stcr2-bf-message{font-size:13px;margin:10px 0 0}

/* Product page: excluded pack */
.stcr2-bf-excluded{font-size:13px;color:#5d635e;border-left:3px solid #c9cfc7;padding:4px 10px;margin:10px 0 16px}

/* Bottom-right popup */
.stcr2-bf-pop{position:fixed;right:20px;bottom:20px;z-index:9990;display:block;width:340px;max-width:calc(100vw - 40px);background:var(--bf-bg);color:var(--bf-txt);border:1px solid var(--bf-line);border-radius:14px;box-shadow:0 10px 30px rgba(0,0,0,.35);font-family:inherit;animation:stcr2-bf-in .35s ease-out}
.stcr2-bf-pop *{box-sizing:border-box}
.stcr2-bf-pop-link{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:12px;padding:14px 16px 12px;color:inherit!important;text-decoration:none!important}
.stcr2-bf-pop-badge{flex:none;display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--bf-accent);color:#18220a;font-weight:800;font-size:15px}
.stcr2-bf-pop-text{display:flex;flex-direction:column;gap:2px;min-width:0;padding-right:22px;font-size:12px;line-height:1.35;color:var(--bf-muted)}
.stcr2-bf-pop-text strong{color:var(--bf-txt);font-size:14px;font-weight:800}
.stcr2-bf-pop-progress{display:block;grid-column:1/-1;width:100%;margin-top:14px}
.stcr2-bf-pop-track{gap:3px;padding-bottom:16px}
.stcr2-bf-pop-seg{height:8px;border-radius:3px}
.stcr2-bf-pop-line{width:1px;height:14px}
.stcr2-bf-pop-mark{top:calc(100% + 2px)}
.stcr2-bf-pop-mark b{font-size:11px;font-weight:800;color:#bdc5bb}
.stcr2-bf-pop-mark small{display:none}
.stcr2-bf-pop-close{position:absolute;top:4px;right:4px;background:none;border:0;color:var(--bf-muted);font-size:20px;line-height:1;padding:8px 10px;cursor:pointer}
.stcr2-bf-pop-close:hover,.stcr2-bf-pop-close:focus-visible{color:var(--bf-txt)}
.stcr2-bf-pop.is-bump{animation:stcr2-bf-bump .6s ease-out}
.stcr2-bf-pop.is-bump .stcr2-bf-pop-badge{animation:stcr2-bf-glow 1.2s ease-out}
@keyframes stcr2-bf-in{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@keyframes stcr2-bf-bump{0%{transform:scale(1)}35%{transform:scale(1.06)}100%{transform:scale(1)}}
@keyframes stcr2-bf-glow{0%{box-shadow:0 0 0 0 rgba(186,255,56,.7)}100%{box-shadow:0 0 0 16px rgba(186,255,56,0)}}

@media (max-width:480px){
  .stcr2-bf-progress{padding:15px}
  .stcr2-bf-head{align-items:flex-start}
  .stcr2-bf-pill{font-size:9px;padding:5px 7px}
  .stcr2-bf-seg{height:12px}
  .stcr2-bf-mark small{font-size:10px}
  .is-next>.stcr2-bf-mark small::after{content:""}
  .stcr2-bf-pop{left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));width:auto;max-width:none}
}
@media (prefers-reduced-motion:reduce){
  .stcr2-bf-pop,.stcr2-bf-pop.is-bump,.stcr2-bf-pop.is-bump .stcr2-bf-pop-badge{animation:none}
  .stcr2-bf-seg,.stcr2-bf-pop-seg{transition:none;animation:none}
}

/* "You save £X" note under the cart / checkout Total */
.stcr2-bf-save-note{display:block;margin-top:3px;color:#2f7d0a;font-weight:400;line-height:1.4}
.stcr2-bf-save-note b{font-weight:700}

/* Minimised popup: small badge bottom-right, click to reopen */
.stcr2-bf-mini{position:fixed;right:20px;bottom:20px;z-index:9990;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;width:64px;height:64px;padding:0;border:2px solid #121515;border-radius:50%;background:#baff38;color:#18220a;font-family:inherit;line-height:1;cursor:pointer;box-shadow:0 8px 24px rgba(0,0,0,.35);animation:stcr2-bf-in .3s ease-out;transition:transform .15s}
.stcr2-bf-mini:hover,.stcr2-bf-mini:focus-visible{transform:scale(1.07);outline:none;box-shadow:0 0 0 3px rgba(186,255,56,.45),0 8px 24px rgba(0,0,0,.35)}
.stcr2-bf-mini b{font-size:17px;font-weight:800;letter-spacing:-.02em}
.stcr2-bf-mini-top,.stcr2-bf-mini-bot{font-size:8.5px;font-weight:800;letter-spacing:.08em}
.stcr2-bf-mini-top{margin-bottom:2px}.stcr2-bf-mini-bot{margin-top:2px}
@media (max-width:480px){.stcr2-bf-mini{right:14px;bottom:calc(14px + env(safe-area-inset-bottom,0px));width:58px;height:58px}}
@media (prefers-reduced-motion:reduce){.stcr2-bf-mini{animation:none;transition:none}}
