/* Добавьте это в ваш style.css */
@supports (-webkit-touch-callout: none) {
/* Специфичные стили для iOS */
  body {
    -webkit-text-size-adjust: 100%;
  }

  select, button {
    -webkit-appearance: none;
  }
}

/* Для элементов управления аудио на iOS */
  .ios #audio-player {
  -webkit-appearance: none;
  height: 44px !important;
  }

  .ios .player-box {
  padding-bottom: env(safe-area-inset-bottom);
  }

  /* Фикс для статус-бара на новых iPhone */
  @supports (padding-top: env(safe-area-inset-top)) {
  body {
    padding-top: env(safe-area-inset-top);
    padding-left: env(safe-area-inset-left);
    padding-right: env(safe-area-inset-right);
  }
}

/* Улучшаем рендеринг в Safari */
@media (-webkit-min-device-pixel-ratio: 0) {
  select, button, .track-info {
    transform: translateZ(0);
  }
}

/* Устройства (до 1080px) */
@media (max-width: 1080px) {
  body {
transform: scale(1.2);
  }



/* Мобильные телефоны (до 768px) */
@media (max-width: 768px) {
  body {
    padding: 10px;
    font-size: 16px;
  }

  .container {
    padding: 15px;
    border-radius: 8px;
  }

  .player-box {
    padding: 15px;
  }

  .player-buttons {
    flex-wrap: nowrap;
  }

  #radio-logo {
    max-width: 280px;
    margin-top: 10px;
    /* display: block; */
  }

   .player-controls {
    width: 100%;
  }

   .player-controls audio {
    max-width: 100%;
  }
  /* Увеличиваем кнопки и элементы управления */
  button, select {
    padding: 12px 20px;
    font-size: 14px;
    margin: 8px 0;
    width: 100%;
  }

  /* Адаптируем аудиоплеер */
  #audio-player {
    width: 100%;
    height: 60px;
    margin-top: 15px;
  }

  /* Увеличиваем логотип */
  #stream-logo {
    max-width: 300px;
    max-height: 150px;
    margin: 15px auto;
  }

  /* Улучшаем отображение информации о треке */
  .track-info {
    padding: 15px;
    margin: 15px 0;
  }

   /* Адаптируем историю треков */
  .track-history {
    gap: 10px;
    /*flex-direction: column;*/
  }

  /* Адаптируем кнопки "поделиться" */
  .share-buttons {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }

  .share-buttons a, .share-buttons button {
    flex: 1 1 45%;
    margin: 5px;
    text-align: center;
    font-size: 16px;
    padding: 10px 5px;
  }

  .status-info {
    font-size: 10px!important;
    line-height: 50%;
   }
 .station-select {
    width: 100%;
  }

  .station-select select {
    max-width: 100%;
  }

  /* Заголовки */
  h1 {
    font-size: 24px;
  }

  h2 {
    font-size: 20px;
  }

  h3 {
    font-size: 18px;
  }
}

/* Усиленный мобильный media-запрос */
@media (max-width: 768px), (hover: none) and (pointer: coarse) {
  body {
    padding: 8px;
  }

  #stream-select {
    font-size: 16px;
    padding: 12px 20px;
    background-image: none;
  }

  #audio-player {
    width: 100%;
    height: 40px;
  }

  /* Увеличиваем зоны клика */
  button, .share-buttons a {
    min-height: auto;
    padding: 12px 10px;
  }
}


/* Мобильные телефоны (до 600px) */
@media (max-width: 600px) {
  body {
    padding: 10px;
  }

 #radio-logo {
    max-width: 240px;
    margin-top: 15px;
    display: block;
  }

.listeners-stats {
  margin-top: -65px;
}

/* Увеличиваем логотип */
  #stream-logo {
    max-width: 300px;
    max-height: 150px;
    margin: 15px auto;
  }

  /* Улучшаем отображение информации о треке */
  .track-info {
    padding: 15px;
    margin: 15px 0;
  }

  .track-info div {
    font-size: 16px;
  }

.now-playing {
    flex-grow: 1;
    position: absolute;
    margin-left: 100px ;
    margin-top: -6px;
    line-height: 115%;
    font-size: 14px;
  }

  #stream-logo {
    max-width: 200px;
    max-height: 100px;
    margin: 1px auto;
    position: absolute;
  }

  .station-text {
    flex-grow: 1;
    margin-left: 210px;
    margin-bottom: 20px;
    margin-top: 0px;
  }

  .player-controls-wrapper {
    flex-direction: column;
    align-items: stretch;
    gap: 15px;
  }

  .player-controls {
    width: 100%;
  }

  .player-controls audio {
    max-width: 100%;
  }

  .station-select {
    width: 100%;
  }

  .station-select select {
    max-width: 100%;
  }

  .player-buttons {
    justify-content: space-between;
  }

  .player-btn {
    flex-grow: 1;
    text-align: center;
  }

  .station-info-block,
  .track-info-block {
    flex-direction: column;
    align-items: flex-start;
  }

  .station-logo {
    width: 300px;
    height: 150px;
  }

  .track-cover {
    width: 80px;
    height: 80px;
  }

  .status-info {
    font-size: 10px!important;
    line-height: 50%;
   }
}


/* Мобильные телефоны (до 500px) */
@media (max-width: 500px) {
#radio-logo {
    max-width: 150px;
    margin-top: 12px;
    display: block;
  }
  .listeners-stats {
    font-size: 12px;
    margin-top: -55px;
  }
  .player-buttons {
    display: none;
  }
  .track-info div {
    font-size: 14px;
  }
  .station-select {
    width: 100%;
  }

  .station-select select {
    max-width: 100%;
  }

  .now-playing {
    flex-grow: 1;
    position: absolute;
    margin-left: 100px;
    margin-top:10px;
    line-height: 75%;
    font-size: 14px;
  }
  .status-info {
  font-size: 10px!important;
  line-height: 50%;
 }
}


/* ТЕСТ - добавь в самый конец CSS */
/*@media (max-width: 768px) {
  body::before { content: "768px ACTIVE"; background: green; color: white; padding: 5px; position: fixed; top: 0; left: 0; z-index: 9999; }
}

@media (max-width: 600px) {
  body::before { content: "600px ACTIVE"; background: blue; color: white; padding: 5px; position: fixed; top: 0; left: 0; z-index: 9999; }
}

@media (max-width: 500px) {
  body::before { content: "500px ACTIVE"; background: red; color: white; padding: 5px; position: fixed; top: 0; left: 0; z-index: 9999; }
}*/