/* ================= APP HEADER ================= */
.app-header {
  position: sticky;
  top: 0;
  z-index: 9999;
  height: 56px;
  background: #ffffff;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 12px;
  box-shadow: 0 2px 6px rgba(0,0,0,.15);
}

.app-back-btn,
.app-search-btn {
  background: none;
  border: none;
  font-size: 18px;
  color: #333;
}

.app-header-title {
  font-size: 16px;
  font-weight: 600;
  color: #111;
  max-width: 65%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* ================= SEARCH ================= */
.app-search-box {
  display: none;
  padding: 10px;
  background: #fff;
  box-shadow: 0 3px 6px rgba(0,0,0,.12);
}

.app-search-box input {
  width: 70%;
  padding: 8px;
  border-radius: 6px;
  border: 1px solid #ccc;
}

.app-search-box button {
  padding: 8px 12px;
  border-radius: 6px;
  border: none;
  background: #0D47A1;
  color: #fff;
}

/* ================= BOTTOM PLAYER ================= */
.js-bottom-player {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  background: linear-gradient(135deg,#111,#222);
  color: #fff;
  display: none;
  align-items: center;
  padding: 10px;
  z-index: 99999;
}

.js-bottom-player.active {
  display: flex;
}

.js-bottom-player img {
  width: 48px;
  height: 48px;
  border-radius: 6px;
  margin-right: 10px;
}

.gp-info {
  flex: 1;
}

#gpTitle {
  font-size: 14px;
  font-weight: bold;
}

#gpSinger {
  font-size: 12px;
  color: #ccc;
}

#gpPlayBtn {
  background: gold;
  color: #000;
  border: none;
  font-size: 18px;
  padding: 8px 14px;
  border-radius: 50%;
}

/* ================= DESKTOP ================= */
.desktop-header {
  display: none;
}

@media (min-width: 768px) {
  .app-header,
  .app-search-box {
    display: none;
  }

  .desktop-header {
    display: block;
    background: #000;
    padding: 10px;
    text-align: center;
  }

  .js-bottom-player {
    max-width: 1040px;
    margin: auto;
    left: 0;
    right: 0;
  }
}

/* Prevent content hidden behind player */
main {
  padding-bottom: 90px;
}
