/* v290 Customer Store Status Fixed Bar
   True fixed, always-visible customer operating status. JS measures height and offsets page content.
   No truncation for happy-hour/customer messages. Desktop, tablet, mobile, and PWA safe.
*/
:root{--store-status-height-v290:0px;}
body.has-store-status-v290{padding-top:var(--store-status-height-v290,72px)!important;}
body.has-store-status-v290 .store-status-v290{transform:translateZ(0);}
.store-status-v290{
  --status-ink:#111827;
  --status-muted:#64748b;
  --status-border:rgba(15,23,42,.10);
  --status-bg:rgba(255,255,255,.96);
  --status-shadow:0 12px 34px rgba(15,23,42,.12);
  position:fixed;
  top:0;
  left:0;
  right:0;
  z-index:5000;
  width:100%;
  margin:0;
  padding:calc(7px + env(safe-area-inset-top,0px)) 12px 7px;
  color:var(--status-ink);
  background:linear-gradient(180deg,rgba(255,250,244,.98),rgba(255,255,255,.94));
  border-bottom:1px solid rgba(15,23,42,.08);
  backdrop-filter:saturate(150%) blur(16px);
  -webkit-backdrop-filter:saturate(150%) blur(16px);
}
.store-status-v290.is-closed{background:linear-gradient(180deg,rgba(255,247,247,.98),rgba(255,255,255,.95));}
.store-status-inner-v290{
  max-width:1220px;
  margin:0 auto;
  display:grid;
  gap:6px;
  border:1px solid var(--status-border);
  border-radius:24px;
  background:var(--status-bg);
  box-shadow:var(--status-shadow);
  padding:8px 10px;
}
.store-status-main-v290{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(340px,1.3fr);align-items:center;gap:10px;min-width:0;}
.store-status-lead-v290{display:flex;align-items:center;gap:10px;min-width:0;padding-left:4px;}
.store-status-dot-v290{width:11px;height:11px;border-radius:999px;background:#dc2626;box-shadow:0 0 0 5px rgba(220,38,38,.12);flex:0 0 auto;}
.store-status-v290.is-open .store-status-dot-v290{background:#16a34a;box-shadow:0 0 0 5px rgba(22,163,74,.13);}
.store-status-copy-v290{min-width:0;display:grid;gap:1px;}
.store-status-copy-v290 strong{font-size:.95rem;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.store-status-copy-v290 span{font-size:.82rem;line-height:1.18;color:var(--status-muted);white-space:normal;overflow:visible;}
.store-status-services-v290{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0;overflow:hidden;}
.store-status-chip-v290{display:inline-flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;max-width:100%;border:1px solid rgba(15,23,42,.08);border-radius:999px;background:#f8fafc;padding:7px 10px;white-space:nowrap;}
.store-status-chip-v290.available{background:#f0fdf4;border-color:rgba(22,163,74,.22);}
.store-status-chip-v290.unavailable{background:#fff7ed;border-color:rgba(249,115,22,.22);}
.store-status-chip-v290 b{font-size:.82rem;line-height:1;}
.store-status-chip-v290 em{font-style:normal;color:var(--status-muted);font-size:.76rem;line-height:1;}
.store-status-happy-v290{display:flex;align-items:flex-start;gap:7px;border-radius:18px;background:#fff7ed;color:#7c2d12;border:1px solid rgba(249,115,22,.16);padding:7px 10px;white-space:normal;overflow:visible;line-height:1.25;}
.store-status-happy-v290.upcoming{background:#f8fafc;color:#475569;border-color:rgba(15,23,42,.08);}
.store-status-happy-v290 b{font-size:.8rem;line-height:1.2;flex:0 0 auto;}
.store-status-happy-v290 em{font-style:normal;font-size:.8rem;line-height:1.25;overflow:visible;text-overflow:clip;white-space:normal;}

@media (min-width:1180px){
  .store-status-inner-v290{border-radius:999px;}
  .store-status-happy-v290{border-radius:999px;}
}
@media (max-width:980px){
  .store-status-v290{padding:calc(6px + env(safe-area-inset-top,0px)) 10px 6px;}
  .store-status-inner-v290{border-radius:22px;gap:7px;padding:9px 10px;}
  .store-status-main-v290{grid-template-columns:1fr;gap:7px;}
  .store-status-lead-v290{padding-left:2px;}
  .store-status-copy-v290 strong{font-size:.92rem;}
  .store-status-copy-v290 span{font-size:.8rem;}
  .store-status-services-v290{justify-content:flex-start;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding-bottom:1px;}
  .store-status-services-v290::-webkit-scrollbar{display:none;}
  .store-status-chip-v290{flex:0 0 auto;min-width:max-content;padding:7px 10px;}
  .store-status-happy-v290{border-radius:16px;}
  .store-status-happy-v290 b{white-space:nowrap;}
}
@media (max-width:520px){
  body.has-store-status-v290{padding-top:var(--store-status-height-v290,126px)!important;}
  .store-status-v290{padding:calc(5px + env(safe-area-inset-top,0px)) 8px 5px;}
  .store-status-inner-v290{border-radius:18px;padding:8px;box-shadow:0 10px 26px rgba(15,23,42,.10);}
  .store-status-happy-v290{gap:6px;}
  .store-status-happy-v290{display:grid;grid-template-columns:auto 1fr;}
  .store-status-happy-v290 b{grid-column:2;}
  .store-status-happy-v290 em{grid-column:2;font-size:.78rem;}
}
@media print{
  body.has-store-status-v290{padding-top:0!important;}
  .store-status-v290{position:static;box-shadow:none;background:#fff;border:1px solid #e5e7eb;margin:0 0 12px;padding:8px;}
  .store-status-inner-v290{box-shadow:none;border-radius:12px;}
}

/* v290 hardening: anchored links and browser/PWA safe top offset. */
html{scroll-padding-top:var(--store-status-height-v290,0px);}
body.has-store-status-v290 main,
body.has-store-status-v290 .customer-shell-v115,
body.has-store-status-v290 .customer-shell,
body.has-store-status-v290 .page-shell{scroll-margin-top:var(--store-status-height-v290,0px);}
@media (max-width:380px){
  .store-status-copy-v290 strong{font-size:.86rem;}
  .store-status-copy-v290 span,.store-status-happy-v290 em{font-size:.74rem;}
  .store-status-chip-v290{padding:6px 8px;}
}
