/* v0.9.67 — continuous page lock, one date marker per visible row. */
[data-te-classic] .te-upcoming-next { display:none !important; }

[data-te-classic] .te-upcoming-date {
  isolation:isolate;
  overflow:visible !important;
}

[data-te-classic] .te-upcoming-date-current {
  position:relative;
  z-index:2;
  transform-origin:top left;
  will-change:opacity,transform;
}

[data-te-classic] .te-upcoming-date-current.is-leaving {
  opacity:0;
  transform:translateY(-5px) scale(.76);
  transition:opacity .1s ease-out,transform .1s ease-out !important;
}

[data-te-classic] .te-upcoming-date-current.is-entering {
  animation:te-upcoming-date-enter .3s cubic-bezier(.18,.78,.24,1) both !important;
}

@keyframes te-upcoming-date-enter {
  from { opacity:.18; transform:translateY(8px) scale(.72); filter:saturate(.35); }
  to { opacity:1; transform:translateY(0) scale(1); filter:saturate(1); }
}

[data-te-classic] .te-upcoming-rail-marker {
  position:absolute;
  top:22px;
  left:0;
  z-index:1;
  display:flex;
  width:100%;
  max-width:78px;
  flex-direction:column;
  align-items:flex-start;
  color:#bda993;
  opacity:.62;
  pointer-events:none;
  transform:translateY(var(--te-upcoming-marker-y, 0));
  transform-origin:top left;
  will-change:transform,opacity;
}

[data-te-classic] .te-upcoming-rail-marker > span {
  display:block;
  width:100%;
  max-width:78px !important;
  margin:0 !important;
  color:inherit !important;
  font-size:clamp(9px,.78vw,12px) !important;
  font-weight:800;
  letter-spacing:.06em;
  line-height:1.12 !important;
}

[data-te-classic] .te-upcoming-rail-marker .te-upcoming-week-range {
  margin:5px 0 !important;
  color:inherit !important;
  font-size:clamp(20px,1.9vw,27px) !important;
  line-height:.78 !important;
}

[data-te-classic] .te-upcoming-rail-marker .te-upcoming-week-range > i { color:inherit !important; }
[data-te-classic] .te-upcoming-rail-marker[hidden] { display:none !important; }

/* The full city is authoritative; the organiser may yield or wrap after it. */
#ajax-content-wrap .container.main-content [data-te-classic] .te-upcoming-day-cards .te-card-filter-tags,
#main [data-te-classic] .te-upcoming-day-cards .te-card-filter-tags,
[data-te-classic] .te-upcoming-day-cards .te-card-filter-tags {
  display:flex !important;
  flex-wrap:wrap !important;
  align-content:flex-start !important;
  overflow:visible !important;
}

#ajax-content-wrap .container.main-content [data-te-classic] .te-upcoming-day-cards .te-filter-tag[data-te-tag="city"],
#main [data-te-classic] .te-upcoming-day-cards .te-filter-tag[data-te-tag="city"],
[data-te-classic] .te-upcoming-day-cards .te-filter-tag[data-te-tag="city"] {
  flex:0 0 auto !important;
  width:max-content !important;
  min-width:0 !important;
  max-width:100% !important;
  overflow:visible !important;
  text-overflow:clip !important;
  white-space:nowrap !important;
}

@media (max-width:620px) {
  [data-te-classic] .te-upcoming-rail-marker { max-width:54px; }
  [data-te-classic] .te-upcoming-rail-marker > span { max-width:54px !important; font-size:9px !important; }
  [data-te-classic] .te-upcoming-rail-marker .te-upcoming-week-range { font-size:18px !important; }
}

@media (prefers-reduced-motion:reduce) {
  [data-te-classic] .te-upcoming-date-current.is-leaving { transition:none !important; }
  [data-te-classic] .te-upcoming-date-current.is-entering { animation:none !important; }
}

/* Only the Eventi Trapani page keeps the theme header out of the viewport
   after leaving the top; Salient may otherwise reveal it on upward scroll. */
body.te-agenda-header-static.te-agenda-away-from-top #header-outer,
body.te-agenda-header-static.te-agenda-away-from-top #header-space + #header-outer {
  transform:translate3d(0,-110%,0) !important;
  transition:none !important;
  pointer-events:none !important;
}
