@import url("mzansimusic.css");

.music-page.gauteng-music {
  background:
    radial-gradient(circle at 86% 2%, rgba(255, 77, 77, 0.18) 0%, rgba(255, 77, 77, 0) 32%),
    radial-gradient(circle at 10% 8%, rgba(0, 194, 203, 0.17) 0%, rgba(0, 194, 203, 0) 36%),
    radial-gradient(circle at 52% 100%, rgba(255, 170, 0, 0.12) 0%, rgba(255, 170, 0, 0) 38%),
    linear-gradient(180deg, #0b1018 0%, #131f2e 45%, #0f1824 100%);
  color: #eef7ff;
}

.music-page.gauteng-music .navbar {
  background:
    linear-gradient(90deg, rgba(10, 18, 29, 0.96), rgba(19, 32, 51, 0.95)),
    repeating-linear-gradient(
      -45deg,
      rgba(255, 255, 255, 0.05) 0,
      rgba(255, 255, 255, 0.05) 10px,
      rgba(0, 0, 0, 0.09) 10px,
      rgba(0, 0, 0, 0.09) 20px
    );
  border-bottom: 1px solid #1eb8d0;
}

.music-page.gauteng-music .navbar h1 {
  letter-spacing: 0.7px;
  text-transform: uppercase;
  text-shadow: 0 0 18px rgba(0, 194, 203, 0.25);
}

.music-page.gauteng-music .navbar a {
  border: 1px solid #2f6fb5;
  background: rgba(33, 56, 85, 0.8);
  color: #e9f8ff;
}

.music-page.gauteng-music .navbar a:hover {
  background: rgba(49, 78, 116, 0.95);
  color: #ffd7ad;
  border-color: #ff7e3d;
}

.music-page.gauteng-music .card {
  background:
    linear-gradient(145deg, rgba(17, 30, 46, 0.92), rgba(14, 24, 38, 0.92)),
    repeating-linear-gradient(
      45deg,
      rgba(255, 255, 255, 0.012) 0,
      rgba(255, 255, 255, 0.012) 12px,
      rgba(0, 0, 0, 0.035) 12px,
      rgba(0, 0, 0, 0.035) 24px
    );
  border: 1px solid rgba(56, 109, 168, 0.85);
  backdrop-filter: blur(3px);
}

.music-page.gauteng-music .hero {
  background:
    linear-gradient(120deg, rgba(32, 61, 96, 0.95), rgba(43, 44, 86, 0.95)),
    repeating-linear-gradient(
      120deg,
      rgba(255, 255, 255, 0.06) 0,
      rgba(255, 255, 255, 0.06) 9px,
      rgba(0, 0, 0, 0.05) 9px,
      rgba(0, 0, 0, 0.05) 18px
    );
  border: 1px solid #42a0d1;
  position: relative;
  overflow: hidden;
}

.music-page.gauteng-music .hero::after {
  content: "";
  position: absolute;
  width: 240px;
  height: 240px;
  right: -80px;
  top: -95px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 126, 61, 0.35), rgba(255, 126, 61, 0));
  pointer-events: none;
}

.music-page.gauteng-music .hero h2 {
  color: #f6fcff;
}

.music-page.gauteng-music .hero p,
.music-page.gauteng-music .helper-text,
.music-page.gauteng-music .np-artist,
.music-page.gauteng-music .status-msg,
.music-page.gauteng-music .seek-row,
.music-page.gauteng-music .track-text small {
  color: #bfd3e8;
}

.music-page.gauteng-music .filter-btn,
.music-page.gauteng-music .chip-btn,
.music-page.gauteng-music .icon-btn,
.music-page.gauteng-music .play-btn,
.music-page.gauteng-music .row-like,
.music-page.gauteng-music .row-owner-btn,
.music-page.gauteng-music .search-input,
.music-page.gauteng-music .upload-form input[type="text"],
.music-page.gauteng-music .upload-form input[type="file"],
.music-page.gauteng-music .pill,
.music-page.gauteng-music .recent-btn {
  border-color: #3f6e9b;
  background: rgba(27, 45, 67, 0.88);
  color: #def4ff;
}

.music-page.gauteng-music .row-owner-btn.delete {
  border-color: #a56161;
  background: #4a2828;
  color: #ffd1d1;
}

.music-page.gauteng-music .filter-btn.active,
.music-page.gauteng-music .filter-btn:hover,
.music-page.gauteng-music .chip-btn.active,
.music-page.gauteng-music .chip-btn:hover,
.music-page.gauteng-music .icon-btn.active,
.music-page.gauteng-music .icon-btn:hover,
.music-page.gauteng-music .play-btn:hover,
.music-page.gauteng-music .row-like:hover,
.music-page.gauteng-music .recent-btn:hover {
  background: rgba(40, 68, 100, 0.96);
  border-color: #ff9b45;
  color: #fff2de;
}

.music-page.gauteng-music .track-row {
  border-color: #3a5d83;
  background: linear-gradient(125deg, rgba(22, 38, 57, 0.96), rgba(28, 47, 70, 0.96));
}

.music-page.gauteng-music .track-row.active {
  border-color: #ff9b45;
  background: linear-gradient(120deg, rgba(44, 72, 105, 0.98), rgba(50, 83, 119, 0.98));
  box-shadow: 0 0 0 rgba(255, 155, 69, 0.2);
  animation: gautengTrackPulse 2.1s ease-in-out infinite;
}

.music-page.gauteng-music .track-row.now-playing .track-cover,
.music-page.gauteng-music .np-cover {
  border-color: #39b6c8;
}

.music-page.gauteng-music.playing .np-cover {
  animation: gautengCoverGlow 2.6s ease-in-out infinite;
}

.music-page.gauteng-music .track-text strong,
.music-page.gauteng-music .np-title,
.music-page.gauteng-music .music-sidebar h2,
.music-page.gauteng-music .music-main h2,
.music-page.gauteng-music .music-right h3,
.music-page.gauteng-music .list-head h3 {
  color: #f3fbff;
}

.music-page.gauteng-music .now-playing-bar {
  background: linear-gradient(90deg, rgba(11, 19, 30, 0.98), rgba(15, 29, 44, 0.98));
  border-top: 1px solid #2f6fa6;
}

.music-page.gauteng-music .progress,
.music-page.gauteng-music #volume {
  accent-color: #ff9b45;
}

.music-page.gauteng-music .progress {
  border-color: #4a7da8;
  background: linear-gradient(to right, #ff9b45 0%, #ff9b45 var(--progress-pct), #253d55 var(--progress-pct), #253d55 100%);
}

.music-page.gauteng-music .progress::-webkit-slider-thumb {
  background: #ff9b45;
  border-color: #112232;
}

.music-page.gauteng-music .progress::-moz-range-thumb {
  background: #ff9b45;
  border-color: #112232;
}

.music-page.gauteng-music .icon-btn:focus,
.music-page.gauteng-music .play-btn:focus,
.music-page.gauteng-music .track-main:focus,
.music-page.gauteng-music .recent-btn:focus,
.music-page.gauteng-music .filter-btn:focus,
.music-page.gauteng-music .row-like:focus,
.music-page.gauteng-music .chip-btn:focus,
.music-page.gauteng-music .search-input:focus,
.music-page.gauteng-music .upload-form input:focus {
  outline: 2px solid #00c2cb;
  outline-offset: 2px;
}

@keyframes gautengTrackPulse {
  0% {
    box-shadow: 0 0 0 0 rgba(255, 155, 69, 0.26);
  }
  50% {
    box-shadow: 0 0 0 6px rgba(255, 155, 69, 0.07);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(255, 155, 69, 0.2);
  }
}

@keyframes gautengCoverGlow {
  0% {
    box-shadow: 0 0 0 rgba(0, 194, 203, 0.2);
    transform: scale(1);
  }
  50% {
    box-shadow: 0 0 0 7px rgba(0, 194, 203, 0.09);
    transform: scale(1.03);
  }
  100% {
    box-shadow: 0 0 0 rgba(0, 194, 203, 0.2);
    transform: scale(1);
  }
}

@media (max-width: 640px) {
  .music-page.gauteng-music .hero h2 {
    font-size: 1.3rem;
  }

  .music-page.gauteng-music .hero p {
    font-size: 0.92rem;
  }
}
