@import url("mzansimusic.css");

.music-page.freestate-music {
  background:
    radial-gradient(circle at 84% 2%, rgba(211, 162, 36, 0.18) 0%, rgba(211, 162, 36, 0) 34%),
    radial-gradient(circle at 14% 14%, rgba(122, 26, 38, 0.18) 0%, rgba(122, 26, 38, 0) 36%),
    linear-gradient(180deg, #120d0c 0%, #271614 48%, #1b1211 100%);
  color: #fff5ee;
}

.music-page.freestate-music .navbar {
  background:
    linear-gradient(90deg, rgba(35, 18, 16, 0.96), rgba(63, 30, 26, 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 #d3a224;
}

.music-page.freestate-music .navbar h1 {
  letter-spacing: 0.6px;
  text-transform: uppercase;
  text-shadow: 0 0 18px rgba(211, 162, 36, 0.24);
}

.music-page.freestate-music .navbar a {
  border: 1px solid #8f2f3d;
  background: #3f1f1c;
  color: #fff2e7;
}

.music-page.freestate-music .navbar a:hover {
  background: #592925;
  color: #ffdf8a;
  border-color: #d3a224;
}

.music-page.freestate-music .card {
  background:
    linear-gradient(145deg, rgba(45, 24, 21, 0.98), rgba(33, 18, 16, 0.98)),
    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 #7a1a26;
}

.music-page.freestate-music .hero {
  background:
    linear-gradient(120deg, rgba(98, 24, 36, 0.95), rgba(72, 22, 20, 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 #c34d39;
  position: relative;
  overflow: hidden;
}

.music-page.freestate-music .hero::after {
  content: "";
  position: absolute;
  width: 220px;
  height: 220px;
  right: -70px;
  top: -90px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(211, 162, 36, 0.35), rgba(211, 162, 36, 0));
  pointer-events: none;
}

.music-page.freestate-music .hero h2 {
  color: #fff8f3;
}

.music-page.freestate-music .hero p,
.music-page.freestate-music .helper-text,
.music-page.freestate-music .np-artist,
.music-page.freestate-music .status-msg,
.music-page.freestate-music .seek-row,
.music-page.freestate-music .track-text small {
  color: #dfc9bb;
}

.music-page.freestate-music .filter-btn,
.music-page.freestate-music .chip-btn,
.music-page.freestate-music .icon-btn,
.music-page.freestate-music .play-btn,
.music-page.freestate-music .row-like,
.music-page.freestate-music .row-owner-btn,
.music-page.freestate-music .search-input,
.music-page.freestate-music .upload-form input[type="text"],
.music-page.freestate-music .upload-form input[type="file"],
.music-page.freestate-music .pill,
.music-page.freestate-music .recent-btn {
  border-color: #a1484e;
  background: #3d1f1c;
  color: #fff1e8;
}

.music-page.freestate-music .row-owner-btn.delete {
  border-color: #b36a52;
  background: #5a2d24;
  color: #ffd9c8;
}

.music-page.freestate-music .filter-btn.active,
.music-page.freestate-music .filter-btn:hover,
.music-page.freestate-music .chip-btn.active,
.music-page.freestate-music .chip-btn:hover,
.music-page.freestate-music .icon-btn.active,
.music-page.freestate-music .icon-btn:hover,
.music-page.freestate-music .play-btn:hover,
.music-page.freestate-music .row-like:hover,
.music-page.freestate-music .recent-btn:hover {
  background: #5d2a25;
  border-color: #d3a224;
  color: #ffefcc;
}

.music-page.freestate-music .track-row {
  border-color: #8b3a43;
  background: linear-gradient(125deg, #3d1d1c, #47211f);
}

.music-page.freestate-music .track-row.active {
  border-color: #d3a224;
  background: linear-gradient(120deg, #5e2a25, #682d27);
  box-shadow: 0 0 0 rgba(211, 162, 36, 0.2);
  animation: freeStateTrackPulse 2.1s ease-in-out infinite;
}

.music-page.freestate-music .track-row.now-playing .track-cover,
.music-page.freestate-music .np-cover {
  border-color: #d3a224;
}

.music-page.freestate-music.playing .np-cover {
  animation: freeStateCoverGlow 2.6s ease-in-out infinite;
}

.music-page.freestate-music .track-text strong,
.music-page.freestate-music .np-title,
.music-page.freestate-music .music-sidebar h2,
.music-page.freestate-music .music-main h2,
.music-page.freestate-music .music-right h3,
.music-page.freestate-music .list-head h3 {
  color: #fff8f0;
}

.music-page.freestate-music .now-playing-bar {
  background: linear-gradient(90deg, rgba(27, 14, 13, 0.98), rgba(43, 20, 18, 0.98));
  border-top: 1px solid #9d3b44;
}

.music-page.freestate-music .progress,
.music-page.freestate-music #volume {
  accent-color: #d3a224;
}

.music-page.freestate-music .progress {
  border-color: #b45a49;
  background: linear-gradient(to right, #d3a224 0%, #d3a224 var(--progress-pct), #4a2522 var(--progress-pct), #4a2522 100%);
}

.music-page.freestate-music .progress::-webkit-slider-thumb {
  background: #d3a224;
  border-color: #2d1817;
}

.music-page.freestate-music .progress::-moz-range-thumb {
  background: #d3a224;
  border-color: #2d1817;
}

.music-page.freestate-music .icon-btn:focus,
.music-page.freestate-music .play-btn:focus,
.music-page.freestate-music .track-main:focus,
.music-page.freestate-music .recent-btn:focus,
.music-page.freestate-music .filter-btn:focus,
.music-page.freestate-music .row-like:focus,
.music-page.freestate-music .chip-btn:focus,
.music-page.freestate-music .search-input:focus,
.music-page.freestate-music .upload-form input:focus {
  outline: 2px solid #d3a224;
  outline-offset: 2px;
}

@keyframes freeStateTrackPulse {
  0% {
    box-shadow: 0 0 0 0 rgba(211, 162, 36, 0.26);
  }
  50% {
    box-shadow: 0 0 0 6px rgba(211, 162, 36, 0.06);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(211, 162, 36, 0.2);
  }
}

@keyframes freeStateCoverGlow {
  0% {
    box-shadow: 0 0 0 rgba(122, 26, 38, 0.2);
    transform: scale(1);
  }
  50% {
    box-shadow: 0 0 0 7px rgba(122, 26, 38, 0.1);
    transform: scale(1.03);
  }
  100% {
    box-shadow: 0 0 0 rgba(122, 26, 38, 0.2);
    transform: scale(1);
  }
}

@media (max-width: 640px) {
  .music-page.freestate-music .hero h2 {
    font-size: 1.3rem;
  }

  .music-page.freestate-music .hero p {
    font-size: 0.92rem;
  }
}
