/* ===== Topmart – sezónní dostupnost (ODSTRANIT PO 1. 1. 2026) ===== */
:root{
  --tm-blue:#00386C;
  --tm-blue-dark:#002a4f;
  --tm-ink:#0c1a2b;
  --tm-accent:#FFB84D;
}

.tm-availability-note{
  display:block;
  position:relative;
  margin:16px 0 16px;
  padding:18px 18px 18px 60px;
  border:1px solid rgba(0,56,108,.15);
  border-radius:12px;
  background:linear-gradient(180deg,#fff 0%,#F7FAFE 100%);
  box-shadow:0 8px 24px rgba(0,56,108,.08);
  color:var(--tm-ink);
  text-decoration:none !important;
  overflow:hidden;
  will-change:transform, box-shadow;
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.tm-availability-note::before{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:3px;
  background:linear-gradient(90deg, var(--tm-blue) 0%, #4a90e2 50%, var(--tm-blue) 100%);
  background-size:200% 100%;
  animation:tmStripe 4s linear infinite;
}
@keyframes tmStripe{
  0%{ background-position:0% 0; }
  100%{ background-position:200% 0; }
}
.tm-availability-note::after{
  content:"";
  position:absolute;
  right:16px; top:50%;
  width:10px; height:10px;
  border-right:2px solid var(--tm-blue);
  border-bottom:2px solid var(--tm-blue);
  transform:translateY(-50%) rotate(-45deg);
  opacity:.9;
  transition:transform .25s ease, opacity .25s ease;
}
.tm-availability-note:hover,
.tm-availability-note:focus{
  border-color:rgba(0,56,108,.28);
  box-shadow:0 12px 30px rgba(0,56,108,.12);
  transform:translateY(-1px);
}
.tm-availability-note:hover::after,
.tm-availability-note:focus::after{
  transform:translate(2px,-50%) rotate(-45deg);
  opacity:1;
}

.tm-availability-note__icon{
  position:absolute;
  left:16px; top:50%;
  transform:translateY(-50%);
  width:30px; height:30px;
  border-radius:50%;
  background:var(--tm-accent);
  color:var(--tm-blue);
  display:grid; place-items:center;
  box-shadow:0 0 0 0 rgba(255,184,77,.45);
  animation:tmPulse 2.2s ease-out infinite;
}
@keyframes tmPulse{
  0% { box-shadow:0 0 0 0 rgba(255,184,77,.45); }
  70%{ box-shadow:0 0 0 12px rgba(255,184,77,0); }
  100%{ box-shadow:0 0 0 0 rgba(255,184,77,0); }
}
.tm-availability-note__icon svg{ width:16px; height:16px; display:block; }

.tm-availability-note__title{
  font-weight:800;
  font-size:16px;
  letter-spacing:.2px;
  color:var(--tm-blue);
  margin:0 0 10px 0;
}
.tm-availability-note__text{
  font-size:14.5px;
  line-height:1.6;
  margin:0;
  color:var(--tm-ink);
}

.tm-availability-note__link{
  display:block;
  color:inherit !important;
  text-decoration:none !important;
  outline:none;
}
.tm-availability-note__link:focus{
  outline:2px solid var(--tm-blue);
  outline-offset:3px;
}

/* Schováme doručovací řádek jen v detailu – viz JS, kde přidáme třídy na scope */
.availability-value.tm-hide-delivery .delivery-time { display:none !important; }
.tm-detail-scope .delivery-in-detail,
.tm-detail-scope .delivery-time-label,
.tm-detail-scope a.shipping-options { display:none !important; }

/* Mobil */
@media (max-width:600px){
  .tm-availability-note{
    margin:14px 0 14px;
    padding:16px 14px 16px 56px;
    border-radius:10px;
  }
  .tm-availability-note__title{ font-size:15px; margin-bottom:8px; }
  .tm-availability-note__text{ font-size:13.5px; line-height:1.5; }
  .tm-availability-note__icon{ width:28px; height:28px; left:14px; }
}