/* Mighty BioLabs notification component. Single source of truth.
   Info: navy/blue; success: green; warning: gold; urgent: red.
   The scoped root prevents catalogue, product, and admin CSS from changing the palette. */
body .mbl-announcement-card-wrap:is([data-site-announcement],[data-notification-preview]){
  position:relative!important;
  z-index:50!important;
  width:100%!important;
  margin:0!important;
  padding:22px 24px!important;
  box-sizing:border-box!important;
  border-top:1px solid #dbe3ed!important;
  border-bottom:1px solid #dbe3ed!important;
  background:
    radial-gradient(circle at 12% 0,rgba(198,157,58,.10),transparent 25rem),
    linear-gradient(180deg,#f5f7fa 0%,#edf2f7 100%)!important;
  animation:mblAnnouncementWrapEnter .42s cubic-bezier(.2,.75,.2,1) both;
}
body .mbl-announcement-card-wrap:is([data-site-announcement],[data-notification-preview]).is-leaving{
  pointer-events:none!important;
  animation:mblAnnouncementWrapLeave .22s ease forwards!important;
}
body .mbl-announcement-card-wrap:is([data-site-announcement],[data-notification-preview]) .mbl-announcement-card{
  --mbl-notice-accent:#e1bb5b;
  --mbl-notice-bg-a:#061b3d;
  --mbl-notice-bg-b:#0a376d;
  --mbl-notice-ink:#fff;
  --mbl-notice-copy:#dbe8f7;
  --mbl-notice-action:#fff;
  --mbl-notice-action-ink:#082d5d;
  position:relative!important;
  isolation:isolate!important;
  display:grid!important;
  grid-template-columns:74px minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:22px!important;
  width:min(100%,1240px)!important;
  min-height:142px!important;
  margin:0 auto!important;
  padding:26px 66px 26px 28px!important;
  border:1px solid color-mix(in srgb,var(--mbl-notice-accent) 52%,transparent)!important;
  border-radius:24px!important;
  background:
    linear-gradient(112deg,rgba(255,255,255,.045),transparent 38%),
    linear-gradient(135deg,var(--mbl-notice-bg-a),var(--mbl-notice-bg-b))!important;
  color:var(--mbl-notice-ink)!important;
  box-shadow:
    0 22px 52px rgba(6,28,61,.22),
    inset 0 1px 0 rgba(255,255,255,.12)!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}
body .mbl-announcement-card-wrap:is([data-site-announcement],[data-notification-preview]) .mbl-announcement-card::before{
  content:"";
  position:absolute;
  z-index:0;
  top:0;
  bottom:0;
  left:0;
  width:5px;
  background:var(--mbl-notice-accent);
  box-shadow:0 0 22px color-mix(in srgb,var(--mbl-notice-accent) 60%,transparent);
  pointer-events:none;
}
body .mbl-announcement-card-wrap:is([data-site-announcement],[data-notification-preview]) .mbl-announcement-card::after{
  content:"";
  position:absolute;
  z-index:0;
  top:-132px;
  right:-80px;
  width:320px;
  height:320px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:50%;
  box-shadow:
    0 0 0 38px rgba(255,255,255,.025),
    0 0 0 82px rgba(255,255,255,.018);
  pointer-events:none;
}
body .mbl-announcement-card-wrap:is([data-site-announcement],[data-notification-preview]) .mbl-announcement-card.is-success{
  --mbl-notice-accent:#58d59c;
  --mbl-notice-bg-a:#07392c;
  --mbl-notice-bg-b:#086147;
  --mbl-notice-copy:#d9f4e8;
  --mbl-notice-action-ink:#07513b;
}
body .mbl-announcement-card-wrap:is([data-site-announcement],[data-notification-preview]) .mbl-announcement-card.is-warning{
  --mbl-notice-accent:#f0c55c;
  --mbl-notice-bg-a:#4b3205;
  --mbl-notice-bg-b:#805b0c;
  --mbl-notice-copy:#fff1ca;
  --mbl-notice-action-ink:#694704;
}
body .mbl-announcement-card-wrap:is([data-site-announcement],[data-notification-preview]) .mbl-announcement-card.is-urgent{
  --mbl-notice-accent:#ff8d98;
  --mbl-notice-bg-a:#641523;
  --mbl-notice-bg-b:#a52131;
  --mbl-notice-copy:#ffe3e6;
  --mbl-notice-action-ink:#861c2a;
}
body .mbl-announcement-card-wrap:is([data-site-announcement],[data-notification-preview]) .mbl-announcement-card__icon{
  position:relative!important;
  z-index:1!important;
  display:grid!important;
  place-items:center!important;
  width:72px!important;
  height:72px!important;
  margin:0!important;
  border:1px solid rgba(255,255,255,.25)!important;
  border-radius:21px!important;
  background:
    radial-gradient(circle at 35% 28%,rgba(255,255,255,.25),transparent 38%),
    color-mix(in srgb,var(--mbl-notice-accent) 22%,transparent)!important;
  color:#fff!important;
  box-shadow:
    0 14px 30px rgba(0,0,0,.18),
    inset 0 1px 0 rgba(255,255,255,.16)!important;
  font-size:1.55rem!important;
  font-weight:950!important;
  line-height:1!important;
}
body .mbl-announcement-card-wrap:is([data-site-announcement],[data-notification-preview]) .mbl-announcement-card__icon::after{
  content:"";
  position:absolute;
  inset:-6px;
  z-index:-1;
  border:1px solid color-mix(in srgb,var(--mbl-notice-accent) 34%,transparent);
  border-radius:26px;
}
body .mbl-announcement-card-wrap:is([data-site-announcement],[data-notification-preview]) .mbl-announcement-card__content{
  position:relative!important;
  z-index:1!important;
  min-width:0!important;
}
body .mbl-announcement-card-wrap:is([data-site-announcement],[data-notification-preview]) .mbl-announcement-card__eyebrow{
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  width:max-content!important;
  max-width:100%!important;
  min-height:27px!important;
  margin:0 0 8px!important;
  padding:5px 10px!important;
  border:1px solid rgba(255,255,255,.17)!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.09)!important;
  color:#fff!important;
  font-size:.64rem!important;
  font-weight:900!important;
  letter-spacing:.12em!important;
  line-height:1.2!important;
  text-transform:uppercase!important;
  white-space:normal!important;
}
body .mbl-announcement-card-wrap:is([data-site-announcement],[data-notification-preview]) .mbl-announcement-card__eyebrow i{
  display:block!important;
  width:7px!important;
  height:7px!important;
  flex:0 0 7px!important;
  border-radius:50%!important;
  background:var(--mbl-notice-accent)!important;
  box-shadow:0 0 0 5px color-mix(in srgb,var(--mbl-notice-accent) 15%,transparent)!important;
  animation:mblAnnouncementSignal 2.4s ease-in-out infinite;
}
body .mbl-announcement-card-wrap:is([data-site-announcement],[data-notification-preview]) .mbl-announcement-card h2{
  margin:0!important;
  color:#fff!important;
  font-size:clamp(1.25rem,2vw,1.65rem)!important;
  font-weight:900!important;
  line-height:1.14!important;
  letter-spacing:-.025em!important;
  overflow-wrap:anywhere!important;
}
body .mbl-announcement-card-wrap:is([data-site-announcement],[data-notification-preview]) .mbl-announcement-card p{
  max-width:820px!important;
  margin:8px 0 0!important;
  color:var(--mbl-notice-copy)!important;
  font-size:.92rem!important;
  font-weight:550!important;
  line-height:1.58!important;
  opacity:1!important;
  overflow-wrap:anywhere!important;
}
body .mbl-announcement-card-wrap:is([data-site-announcement],[data-notification-preview]) .mbl-announcement-card__action{
  position:relative!important;
  z-index:1!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:9px!important;
  min-width:150px!important;
  max-width:250px!important;
  min-height:50px!important;
  margin:0!important;
  padding:12px 19px!important;
  border:1px solid rgba(255,255,255,.8)!important;
  border-radius:13px!important;
  background:var(--mbl-notice-action)!important;
  color:var(--mbl-notice-action-ink)!important;
  box-shadow:0 12px 28px rgba(0,0,0,.20)!important;
  font-size:.8rem!important;
  font-weight:950!important;
  line-height:1.2!important;
  text-align:center!important;
  text-decoration:none!important;
  white-space:normal!important;
  transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease!important;
}
body .mbl-announcement-card-wrap:is([data-site-announcement],[data-notification-preview]) .mbl-announcement-card__action span{
  color:inherit!important;
  transition:transform .18s ease!important;
}
body .mbl-announcement-card-wrap:is([data-site-announcement],[data-notification-preview]) .mbl-announcement-card__action:hover,
body .mbl-announcement-card-wrap:is([data-site-announcement],[data-notification-preview]) .mbl-announcement-card__action:focus-visible{
  border-color:#fff!important;
  background:#fff!important;
  color:var(--mbl-notice-action-ink)!important;
  box-shadow:0 16px 34px rgba(0,0,0,.28)!important;
  transform:translateY(-2px)!important;
}
body .mbl-announcement-card-wrap:is([data-site-announcement],[data-notification-preview]) .mbl-announcement-card__action:hover span,
body .mbl-announcement-card-wrap:is([data-site-announcement],[data-notification-preview]) .mbl-announcement-card__action:focus-visible span{transform:translateX(3px)!important}
body .mbl-announcement-card-wrap:is([data-site-announcement],[data-notification-preview]) .mbl-announcement-card__close{
  position:absolute!important;
  z-index:3!important;
  top:14px!important;
  right:14px!important;
  display:grid!important;
  place-items:center!important;
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  margin:0!important;
  padding:0!important;
  border:1px solid rgba(255,255,255,.18)!important;
  border-radius:12px!important;
  background:rgba(255,255,255,.08)!important;
  color:#fff!important;
  box-shadow:none!important;
  font-family:Arial,sans-serif!important;
  font-size:25px!important;
  font-weight:400!important;
  line-height:1!important;
  cursor:pointer!important;
  transition:background-color .18s ease,border-color .18s ease,transform .18s ease!important;
}
body .mbl-announcement-card-wrap:is([data-site-announcement],[data-notification-preview]) .mbl-announcement-card__close:hover{
  border-color:rgba(255,255,255,.34)!important;
  background:rgba(255,255,255,.16)!important;
  transform:rotate(4deg)!important;
}
body .mbl-announcement-card-wrap:is([data-site-announcement],[data-notification-preview]) .mbl-announcement-card__close:focus-visible,
body .mbl-announcement-card-wrap:is([data-site-announcement],[data-notification-preview]) .mbl-announcement-card__action:focus-visible{
  outline:3px solid color-mix(in srgb,var(--mbl-notice-accent) 55%,#fff)!important;
  outline-offset:3px!important;
}
body .mbl-announcement-card-wrap:is([data-site-announcement],[data-notification-preview]) .mbl-announcement-card.is-urgent::before{animation:mblUrgentAccent 2.2s ease-in-out infinite}
@keyframes mblAnnouncementWrapEnter{
  from{opacity:0;transform:translateY(-12px)}
  to{opacity:1;transform:translateY(0)}
}
@keyframes mblAnnouncementWrapLeave{
  from{opacity:1;max-height:240px;transform:translateY(0)}
  to{opacity:0;max-height:0;padding-top:0;padding-bottom:0;transform:translateY(-8px)}
}
@keyframes mblAnnouncementSignal{
  0%,100%{box-shadow:0 0 0 4px color-mix(in srgb,var(--mbl-notice-accent) 12%,transparent)}
  50%{box-shadow:0 0 0 7px color-mix(in srgb,var(--mbl-notice-accent) 20%,transparent)}
}
@keyframes mblUrgentAccent{
  0%,100%{opacity:.78}
  50%{opacity:1}
}
@media(max-width:860px){
body .mbl-announcement-card-wrap:is([data-site-announcement],[data-notification-preview]){padding:16px!important}
body .mbl-announcement-card-wrap:is([data-site-announcement],[data-notification-preview]) .mbl-announcement-card{
    grid-template-columns:62px minmax(0,1fr)!important;
    gap:18px!important;
    min-height:0!important;
    padding:22px 54px 22px 22px!important;
    border-radius:20px!important;
  }
body .mbl-announcement-card-wrap:is([data-site-announcement],[data-notification-preview]) .mbl-announcement-card__icon{
    width:60px!important;
    height:60px!important;
    border-radius:18px!important;
  }
body .mbl-announcement-card-wrap:is([data-site-announcement],[data-notification-preview]) .mbl-announcement-card__icon::after{border-radius:23px!important}
body .mbl-announcement-card-wrap:is([data-site-announcement],[data-notification-preview]) .mbl-announcement-card__action{
    grid-column:2!important;
    justify-self:start!important;
    min-width:170px!important;
    max-width:100%!important;
  }
}
@media(max-width:540px){
body .mbl-announcement-card-wrap:is([data-site-announcement],[data-notification-preview]){padding:12px!important}
body .mbl-announcement-card-wrap:is([data-site-announcement],[data-notification-preview]) .mbl-announcement-card{
    grid-template-columns:52px minmax(0,1fr)!important;
    gap:14px!important;
    padding:18px 46px 18px 18px!important;
    border-radius:18px!important;
  }
body .mbl-announcement-card-wrap:is([data-site-announcement],[data-notification-preview]) .mbl-announcement-card__icon{
    align-self:start!important;
    width:50px!important;
    height:50px!important;
    border-radius:15px!important;
    font-size:1.2rem!important;
  }
body .mbl-announcement-card-wrap:is([data-site-announcement],[data-notification-preview]) .mbl-announcement-card__icon::after{inset:-4px!important;border-radius:19px!important}
body .mbl-announcement-card-wrap:is([data-site-announcement],[data-notification-preview]) .mbl-announcement-card__eyebrow{
    margin-bottom:7px!important;
    padding:4px 8px!important;
    font-size:.58rem!important;
  }
body .mbl-announcement-card-wrap:is([data-site-announcement],[data-notification-preview]) .mbl-announcement-card h2{font-size:1.16rem!important}
body .mbl-announcement-card-wrap:is([data-site-announcement],[data-notification-preview]) .mbl-announcement-card p{font-size:.84rem!important}
body .mbl-announcement-card-wrap:is([data-site-announcement],[data-notification-preview]) .mbl-announcement-card__action{
    grid-column:1/-1!important;
    justify-self:stretch!important;
    width:100%!important;
    min-width:0!important;
    margin-top:2px!important;
  }
body .mbl-announcement-card-wrap:is([data-site-announcement],[data-notification-preview]) .mbl-announcement-card__close{
    top:10px!important;
    right:10px!important;
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
    border-radius:10px!important;
  }
}
@media(prefers-reduced-motion:reduce){
body .mbl-announcement-card-wrap:is([data-site-announcement],[data-notification-preview]),
body .mbl-announcement-card-wrap:is([data-site-announcement],[data-notification-preview]).is-leaving,
body .mbl-announcement-card-wrap:is([data-site-announcement],[data-notification-preview]) .mbl-announcement-card__eyebrow i,
body .mbl-announcement-card-wrap:is([data-site-announcement],[data-notification-preview]) .mbl-announcement-card.is-urgent::before{animation:none!important}
body .mbl-announcement-card-wrap:is([data-site-announcement],[data-notification-preview]) .mbl-announcement-card__action,
body .mbl-announcement-card-wrap:is([data-site-announcement],[data-notification-preview]) .mbl-announcement-card__action span,
body .mbl-announcement-card-wrap:is([data-site-announcement],[data-notification-preview]) .mbl-announcement-card__close{transition:none!important}
}
/* The Admin preview uses the exact storefront card without its outer page band. */
body .mbl-announcement-card-wrap[data-notification-preview]{
  width:100%!important;margin:0!important;padding:0!important;
  border:0!important;background:transparent!important;animation:none!important;
}
body .mbl-announcement-card-wrap[data-notification-preview] .mbl-announcement-card{
  width:100%!important;max-width:100%!important;min-height:110px!important;
}
body .mbl-announcement-card-wrap[data-notification-preview] .mbl-announcement-card__close{
  cursor:default!important;pointer-events:none!important;
}

/* Preserve the existing compact product-detail placement without changing colors. */
body[data-product-market] .mbl-announcement-card-wrap[data-site-announcement]{padding:10px 16px!important}
body[data-product-market] .mbl-announcement-card-wrap[data-site-announcement] .mbl-announcement-card{grid-template-columns:42px minmax(0,1fr) auto!important;gap:13px!important;min-height:0!important;padding:13px 50px 13px 15px!important;border-radius:16px!important}
body[data-product-market] .mbl-announcement-card-wrap[data-site-announcement] .mbl-announcement-card__icon{width:42px!important;height:42px!important;border-radius:12px!important}
body[data-product-market] .mbl-announcement-card-wrap[data-site-announcement] .mbl-announcement-card h2{font-size:1rem!important}
body[data-product-market] .mbl-announcement-card-wrap[data-site-announcement] .mbl-announcement-card p{margin-top:3px!important;font-size:.82rem!important;line-height:1.4!important}
body[data-product-market] .mbl-announcement-card-wrap[data-site-announcement] .mbl-announcement-card__action{min-height:38px!important;padding:0 14px!important}
@media(max-width:760px){
 body[data-product-market] .mbl-announcement-card-wrap[data-site-announcement] .mbl-announcement-card{grid-template-columns:38px minmax(0,1fr)!important;padding:13px 42px 13px 13px!important}
 body[data-product-market] .mbl-announcement-card-wrap[data-site-announcement] .mbl-announcement-card__action{grid-column:1/-1!important;width:100%!important}
}
