/* Compact greetings rotator integrated into the fixed radio player. */
.sticky-player {
  width: min(1180px, calc(100vw - 24px));
}

.sticky-player-inner {
  grid-template-columns: 48px minmax(180px, 1fr) minmax(300px, 1.45fr) 110px 52px;
}

.sticky-greeting-ticker {
  min-width: 0;
  height: 50px;
  display: grid;
  grid-template-columns: auto minmax(0,1fr);
  align-items: center;
  gap: 10px;
  padding: 5px 12px;
  border: 1px solid rgba(240,189,114,.18);
  border-radius: 13px;
  background: linear-gradient(135deg, rgba(240,189,114,.075), rgba(73,199,189,.055));
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
  overflow: hidden;
  transition: border-color .18s ease, background .18s ease, transform .18s ease;
}
.sticky-greeting-ticker:hover {
  border-color: rgba(240,189,114,.36);
  background: linear-gradient(135deg, rgba(240,189,114,.11), rgba(73,199,189,.075));
}
.sticky-greeting-ticker:focus-visible {
  outline: 2px solid #49c7bd;
  outline-offset: 2px;
}
.sticky-greeting-label {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  white-space: nowrap;
  color: #f0bd72;
  font-size: 10px;
  line-height: 1;
  font-weight: 900;
  letter-spacing: .075em;
  text-transform: uppercase;
}
.sticky-greeting-label i { font-size: 15px; color: #ee8f6c; }
.sticky-greeting-window {
  min-width: 0;
  height: 39px;
  display: block;
  overflow: hidden;
  position: relative;
}
.sticky-greeting-slide {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
  opacity: 1;
  transform: translateY(0);
  transition: opacity .26s ease, transform .26s ease;
}
.sticky-greeting-slide.is-changing {
  opacity: 0;
  transform: translateY(-9px);
}
.sticky-greeting-slide strong,
.sticky-greeting-slide span,
.sticky-greeting-slide small {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.sticky-greeting-slide strong {
  color: #f3e6c5;
  font-size: 11px;
  line-height: 1.15;
}
.sticky-greeting-slide span {
  margin-top: 2px;
  color: #c8d8dc;
  font-size: 11px;
  line-height: 1.18;
}
.sticky-greeting-slide small {
  margin-top: 2px;
  color: #6fcfc5;
  font-size: 9px;
  line-height: 1.05;
}

/* Greetings belong only to the main Radio "Zabytaya kasseta" channel. */
body.secondary-mode .sticky-greeting-ticker { display: none !important; }
body.secondary-mode .sticky-player-inner {
  grid-template-columns: 48px minmax(0,1fr) 125px 52px;
}

@media (max-width: 980px) and (min-width: 701px) {
  .sticky-player-inner {
    grid-template-columns: 48px minmax(150px, .9fr) minmax(250px, 1.2fr) 52px;
  }
  .sticky-mini-spectrum { display: none; }
  body.secondary-mode .sticky-player-inner {
    grid-template-columns: 48px minmax(0,1fr) 52px;
  }
}

@media (max-width: 700px) {
  body { padding-bottom: 126px; }
  .sticky-player { width: calc(100vw - 16px); }
  .sticky-player-inner {
    grid-template-columns: 42px minmax(0,1fr) 46px;
    grid-template-rows: auto auto;
    row-gap: 7px;
    padding: 7px 8px 8px;
  }
  .sticky-greeting-ticker {
    grid-column: 1 / -1;
    grid-row: 1;
    height: 39px;
    padding: 4px 9px;
    border-radius: 11px;
    grid-template-columns: auto minmax(0,1fr);
  }
  .sticky-greeting-window { height: 30px; }
  .sticky-greeting-label { font-size: 9px; }
  .sticky-greeting-slide strong { font-size: 10px; }
  .sticky-greeting-slide span { font-size: 10px; }
  .sticky-greeting-slide small { display: none; }
  .sticky-player-cover { grid-column: 1; grid-row: 2; }
  .sticky-player-meta { grid-column: 2; grid-row: 2; }
  .sticky-play { grid-column: 3; grid-row: 2; }
  .sticky-mini-spectrum { display: none; }

  body.secondary-mode { padding-bottom: 82px; }
  body.secondary-mode .sticky-player-inner {
    grid-template-columns: 42px minmax(0,1fr) 46px;
    grid-template-rows: auto;
  }
  body.secondary-mode .sticky-player-cover,
  body.secondary-mode .sticky-player-meta,
  body.secondary-mode .sticky-play { grid-row: 1; }
}
