/* Stores module — store bar, availability badges, cart availability panel. Colours and fonts are
   the shop's (ZIIC_Store_Identity prints the --ziic-* custom properties after this file); each
   var() falls back to the neutral default, so the file is neutral wherever that block is missing. */

.mds-bar{background:var(--ziic-ink, #1d2327);color:var(--ziic-paper, #f6f7f7);font-family:var(--ziic-font-body, system-ui,-apple-system,"Segoe UI",Roboto,sans-serif);padding:8px 16px;position:relative;z-index:1000}
.mds-bar__inner{display:flex;align-items:center;gap:14px;flex-wrap:wrap;position:relative;max-width:1200px;margin:0 auto}

/* location pill (opens the panel) */
.mds-store{display:inline-flex;align-items:center;gap:10px;min-height:44px;
  background:rgba(var(--ziic-paper-rgb, 246,247,247),.06);color:var(--ziic-paper, #f6f7f7);border:1px solid rgba(var(--ziic-accent-rgb, 53,130,196),.5);
  border-radius:999px;padding:6px 14px 6px 12px;cursor:pointer;font-family:inherit;text-align:left;
  transition:background .2s ease,border-color .2s ease,box-shadow .2s ease,transform .15s cubic-bezier(.34,1.56,.64,1)}
.mds-store:hover{background:rgba(var(--ziic-paper-rgb, 246,247,247),.12);border-color:var(--ziic-accent, #3582c4);transform:translateY(-1px);box-shadow:0 6px 18px rgba(var(--ziic-accent-rgb, 53,130,196),.16)}
.mds-store:active{transform:translateY(0) scale(.98)}
.mds-store:focus-visible{outline:2px solid var(--ziic-accent, #3582c4);outline-offset:2px}
.mds-store__pin{display:flex;color:var(--ziic-accent, #3582c4)}
.mds-store__pin svg{width:20px;height:20px}
.mds-store__meta{display:flex;flex-direction:column;line-height:1.15}
.mds-store__label{font-size:10px;letter-spacing:1.4px;text-transform:uppercase;color:var(--ziic-accent, #3582c4);opacity:.9}
.mds-store__name{font-family:var(--ziic-font-display, system-ui,-apple-system,"Segoe UI",Roboto,sans-serif);font-weight:600;font-size:15px;letter-spacing:.4px;text-transform:uppercase;color:var(--ziic-paper, #f6f7f7)}
.mds-store__chev{width:18px;height:18px;color:var(--ziic-accent, #3582c4);transition:transform .25s cubic-bezier(.34,1.56,.64,1)}
.mds-store[aria-expanded="true"] .mds-store__chev{transform:rotate(180deg)}
.mds-bar__aside{margin-left:auto;font-size:12px;letter-spacing:1px;text-transform:uppercase;color:rgba(var(--ziic-paper-rgb, 246,247,247),.6)}

/* dropdown panel — light frosted-glass material, grows from the pill */
.mds-store__panel{position:absolute;top:calc(100% + 12px);left:0;z-index:70;
  width:min(380px,calc(100vw - 32px));color:var(--ziic-ink, #1d2327);border-radius:18px;padding:9px;
  background:rgba(var(--ziic-glass-rgb, 255,255,255),.96);
  -webkit-backdrop-filter:blur(24px) saturate(180%);backdrop-filter:blur(24px) saturate(180%);
  border:1px solid rgba(255,255,255,.55);
  box-shadow:0 1px 1px rgba(0,0,0,.04),0 10px 24px rgba(var(--ziic-shade-rgb, 0,0,0),.12),0 28px 60px rgba(var(--ziic-shade-rgb, 0,0,0),.2);
  transform-origin:top left;opacity:0;transform:scale(.96) translateY(-6px);
  transition:opacity .2s ease,transform .24s cubic-bezier(.34,1.4,.5,1)}
.mds-store__panel.is-open{opacity:1;transform:scale(1) translateY(0)}
.mds-store__panel[hidden]{display:none}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  .mds-store__panel{background:var(--ziic-paper, #f6f7f7)}
}
.mds-store__panel-head{font-size:10.5px;letter-spacing:1.6px;text-transform:uppercase;color:var(--ziic-accent-text, #50575e);padding:9px 12px 8px;font-weight:600}

/* fulfilment mode: show only the active context in the pill */
.mds-bar:not(.mds-bar--delivery) .mds-dl{display:none}
.mds-bar--delivery .mds-pk{display:none}

/* Pickup | Delivery segmented toggle (top of the panel) */
.mds-fulfil{display:flex;gap:4px;background:rgba(var(--ziic-shade-rgb, 0,0,0),.06);border-radius:12px;padding:4px;margin:2px 2px 8px}
.mds-fulfil__opt{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:0;background:none;
  cursor:pointer;font-family:var(--ziic-font-body, system-ui,-apple-system,"Segoe UI",Roboto,sans-serif);font-size:13px;font-weight:600;color:var(--ziic-text-muted, #50575e);padding:9px 10px;border-radius:9px;
  transition:background .18s ease,color .18s ease,box-shadow .18s ease}
.mds-fulfil__opt:focus-visible{outline:2px solid var(--ziic-accent, #3582c4);outline-offset:2px}
.mds-fulfil__ic{display:flex}
.mds-fulfil__ic svg{width:17px;height:17px}
.mds-fulfil__opt.is-active{background:#fff;color:var(--ziic-ink, #1d2327);box-shadow:0 2px 8px rgba(var(--ziic-shade-rgb, 0,0,0),.12)}
.mds-fulfil__opt.is-active .mds-fulfil__ic{color:var(--ziic-primary, #2271b1)}
.mds-fulfil-panel[hidden]{display:none}

/* delivery postcode field */
.mds-pc{display:flex;gap:8px;padding:4px 6px 2px}
.mds-pc__input{flex:1;min-width:0;height:44px;border:1px solid var(--ziic-border-input, #c3c4c7);border-radius:11px;background:#fff;padding:0 14px;
  font-family:var(--ziic-font-body, system-ui,-apple-system,"Segoe UI",Roboto,sans-serif);font-size:15px;color:var(--ziic-ink, #1d2327);letter-spacing:2px}
.mds-pc__input::placeholder{letter-spacing:.3px;color:var(--ziic-placeholder, #8c8f94)}
.mds-pc__input:focus{outline:none;border-color:var(--ziic-accent, #3582c4);box-shadow:0 0 0 3px rgba(var(--ziic-accent-rgb, 53,130,196),.2)}
.mds-pc__save{flex:0 0 auto;height:44px;padding:0 18px;border:0;border-radius:11px;background:var(--ziic-primary, #2271b1);color:#fff;
  font-family:var(--ziic-font-body, system-ui,-apple-system,"Segoe UI",Roboto,sans-serif);font-weight:600;font-size:13px;letter-spacing:.5px;cursor:pointer;transition:background .18s ease}
.mds-pc__save:hover{background:var(--ziic-primary-hover, #135e96)}
.mds-pc__note{margin:10px 12px 4px;font-size:12.5px;color:var(--ziic-text-soft, #646970)}

.mds-store__opt{display:flex;align-items:flex-start;gap:12px;padding:12px;border-radius:12px;position:relative;
  text-decoration:none;color:var(--ziic-ink, #1d2327);cursor:pointer;transition:background .16s ease,transform .12s ease}
.mds-store__opt:hover{background:rgba(var(--ziic-accent-rgb, 53,130,196),.12)}
.mds-store__opt:active{transform:scale(.99)}
.mds-store__opt:focus{outline:2px solid var(--ziic-accent, #3582c4);outline-offset:-2px}
.mds-store__opt-pin{display:flex;color:rgba(var(--ziic-ink-rgb, 29,35,39),.32);margin-top:1px}          /* muted pin (alternatives) */
.mds-store__opt-pin svg{width:19px;height:19px}
.mds-store__opt.is-current .mds-store__opt-pin{color:var(--ziic-accent, #3582c4)}                       /* single accent */
.mds-store__opt-main{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}
.mds-store__opt-name{font-family:var(--ziic-font-display, system-ui,-apple-system,"Segoe UI",Roboto,sans-serif);font-weight:600;font-size:15px;letter-spacing:.3px;text-transform:uppercase;line-height:1.12}
.mds-store__opt-sub{font-size:12px;color:var(--ziic-text-muted, #50575e);line-height:1.35}
.mds-store__check{width:20px;height:20px;color:var(--ziic-accent, #3582c4);flex-shrink:0;margin-top:2px;opacity:0;transition:opacity .2s ease}
.mds-store__opt.is-current .mds-store__check{opacity:1}

/* hero (current) row */
.mds-store__opt.is-hero{background:rgba(var(--ziic-accent-rgb, 53,130,196),.1);padding-top:13px;padding-bottom:13px}
.mds-store__opt.is-hero .mds-store__opt-pin svg{width:21px;height:21px}
.mds-store__opt.is-hero .mds-store__opt-name{font-size:16.5px}
.mds-store__eyebrow{font-family:var(--ziic-font-body, system-ui,-apple-system,"Segoe UI",Roboto,sans-serif);font-size:9.5px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--ziic-accent-text, #50575e);margin-bottom:1px}

/* live open/closed status (filled by mds.js from data-open/close) */
.mds-store__status{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:600;letter-spacing:.2px;color:var(--ziic-text-faint, #787c82);margin-top:3px}
.mds-store__status::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0}
.mds-store__status.is-open{color:var(--ziic-success, #008a20)}
.mds-store__status.is-closed{color:var(--ziic-text-faint, #787c82)}

.mds-store__divider{height:1px;background:linear-gradient(90deg,transparent,rgba(var(--ziic-shade-rgb, 0,0,0),.12),transparent);margin:5px 12px}

/* choreographed row reveal (hero first, then alternatives) */
@keyframes mds-row-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.mds-store__panel.is-open .mds-store__opt{animation:mds-row-in .3s cubic-bezier(.22,1,.36,1) both}
.mds-store__panel.is-open .mds-store__opt:nth-child(2){animation-delay:.02s}
.mds-store__panel.is-open .mds-store__opt:nth-child(4){animation-delay:.06s}
.mds-store__panel.is-open .mds-store__opt:nth-child(5){animation-delay:.1s}
.mds-store__panel.is-open .mds-store__opt:nth-child(6){animation-delay:.14s}

.mds-nudge{font-size:12px;color:rgba(var(--ziic-paper-rgb, 246,247,247),.9)}
.mds-nudge__x{background:none;border:0;color:var(--ziic-accent, #3582c4);cursor:pointer;font-size:15px;line-height:1;padding:0 2px}

@media (prefers-reduced-motion:reduce){
  .mds-store,.mds-store__chev,.mds-store__opt,.mds-store__check,.mds-store__panel{transition:none}
  .mds-store:hover,.mds-store:active{transform:none;box-shadow:none}
  .mds-store__panel{opacity:1;transform:none}
  .mds-store__panel.is-open .mds-store__opt{animation:none}
}

/* availability status (filled client-side by mds.js) — a light, glanceable status
   dot + text, not a heavy filled pill */
.mds-badge{position:relative;display:block;padding:1px 0 1px 19px;margin:12px 0;max-width:440px;
  background:none;border:0;border-radius:0;font-family:var(--ziic-font-body, system-ui,-apple-system,"Segoe UI",Roboto,sans-serif)}
.mds-badge::before{content:"";position:absolute;left:0;top:5px;width:9px;height:9px;border-radius:50%}
.mds-badge--in::before{background:var(--ziic-success, #008a20);animation:mds-pulse 2s infinite}
.mds-badge--delivery::before{background:var(--ziic-success, #008a20);animation:mds-pulse 2s infinite}
.mds-badge--out::before{background:var(--ziic-warning, #996800)}  /* warning, not error: "not at this store" is a nudge to delivery */
.mds-badge__main{display:block;font-size:14px;font-weight:600;letter-spacing:.1px;color:var(--ziic-ink, #1d2327)}
.mds-badge__alt{display:block;font-size:12.5px;font-weight:400;color:var(--ziic-text-soft, #646970);margin-top:2px}
@keyframes mds-pulse{0%{box-shadow:0 0 0 0 rgba(var(--ziic-success-rgb, 0,138,32),.45)}70%{box-shadow:0 0 0 7px rgba(var(--ziic-success-rgb, 0,138,32),0)}100%{box-shadow:0 0 0 0 rgba(var(--ziic-success-rgb, 0,138,32),0)}}
@media (prefers-reduced-motion:reduce){.mds-badge--in::before{animation:none}}
.mds-atc-hint{color:var(--ziic-primary, #2271b1);font-size:12.5px;margin:6px 0}

/* cart / checkout availability panel */
/* Cart availability — calm, unified: one restrained card, one clickable store list. */
.mds-cart{border:1px solid var(--ziic-border, #dcdcde);background:var(--ziic-surface, #f6f7f7);border-radius:14px;padding:18px 20px;margin:0 0 24px;
  color:var(--ziic-ink, #1d2327);font-family:var(--ziic-font-body, system-ui,-apple-system,"Segoe UI",Roboto,sans-serif);box-shadow:0 6px 18px rgba(var(--ziic-shade-rgb, 0,0,0),.05)}
.mds-cart__head{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 14px}
.mds-cart__lead{font-size:14px}
.mds-cart__lead strong{font-family:var(--ziic-font-display, system-ui,-apple-system,"Segoe UI",Roboto,sans-serif);font-weight:600;text-transform:uppercase;letter-spacing:.03em;font-size:16px}
.mds-cart__avail{font-size:13px;font-weight:600}
.mds-cart__avail.is-ok{color:var(--ziic-success, #008a20)}
.mds-cart__avail.is-part{color:var(--ziic-warning, #996800)}
.mds-cart__avail.is-none{color:var(--ziic-primary, #2271b1)}
.mds-cart__gaps{list-style:none;margin:14px 0 0;padding:0;font-size:13.5px}
.mds-cart__gaps li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:9px 0;border-top:1px solid rgba(var(--ziic-shade-rgb, 0,0,0),.08)}
.mds-cart__gap-name{color:var(--ziic-text, #3c434a)}
.mds-cart__remove{color:var(--ziic-primary, #2271b1);text-decoration:none;font-weight:600;font-size:12.5px;white-space:nowrap}
.mds-cart__remove:hover{text-decoration:underline}
.mds-cart__stores{margin-top:16px}
.mds-cart__stores-label{display:block;font-size:11px;font-weight:600;letter-spacing:1.4px;text-transform:uppercase;color:var(--ziic-label, #787c82);margin-bottom:9px}
.mds-cart__store-list{display:flex;flex-direction:column;gap:8px}
.mds-store-opt{display:flex;align-items:center;gap:12px;padding:11px 15px;border-radius:11px;border:1px solid var(--ziic-border, #dcdcde);
  background:#fff;text-decoration:none;color:var(--ziic-ink, #1d2327);transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}
a.mds-store-opt:hover{border-color:var(--ziic-accent, #3582c4);box-shadow:0 6px 16px rgba(var(--ziic-shade-rgb, 0,0,0),.08);transform:translateY(-1px)}
.mds-store-opt__name{font-weight:600;font-size:14px;flex:1 1 auto}
.mds-store-opt__count{font-size:12.5px;font-weight:600;color:var(--ziic-text-muted, #50575e);font-variant-numeric:tabular-nums}
.mds-store-opt__note{font-size:10.5px;font-weight:600;letter-spacing:.6px;text-transform:uppercase;padding:3px 9px;border-radius:20px;white-space:nowrap}
.mds-store-opt.is-current{background:var(--ziic-surface-current, #f0f0f1);border-color:transparent}
.mds-store-opt.is-current .mds-store-opt__note{background:rgba(var(--ziic-shade-rgb, 0,0,0),.09);color:var(--ziic-text-muted, #50575e)}
.mds-store-opt.is-best{border-color:var(--ziic-success, #008a20);box-shadow:0 4px 14px rgba(var(--ziic-success-rgb, 0,138,32),.12)}
.mds-store-opt.is-best .mds-store-opt__count{color:var(--ziic-success, #008a20)}
.mds-store-opt.is-best .mds-store-opt__note{background:var(--ziic-success, #008a20);color:#fff}
