/* =========================================================
   1. GLOBAL BOX FIX
========================================================= */

* {
  box-sizing: border-box;
}

/* =========================================================
   2. WP AUTO IMAGE SIZING FIX
========================================================= */

img:is([sizes="auto" i],[sizes^="auto," i]) {
  contain-intrinsic-size: 3000px 1500px;
}

/* =========================================================
   3. EMOJI RESET
========================================================= */

img.wp-smiley,
img.emoji {
  display: inline !important;
  border: none !important;
  box-shadow: none !important;
  height: 1em !important;
  width: 1em !important;
  margin: 0 0.07em !important;
  vertical-align: -0.1em !important;
  background: none !important;
  padding: 0 !important;
}

/* =========================================================
   4. BLOCK BUTTON / FILE STYLES
========================================================= */

.wp-block-button__link {
  color: #fff;
  background-color: #32373c;
  border-radius: 9999px;
  box-shadow: none;
  text-decoration: none;
  padding: calc(.667em + 2px) calc(1.333em + 2px);
  font-size: 1.125em;
}

.wp-block-file__button {
  background: #32373c;
  color: #fff;
  text-decoration: none;
}

/* =========================================================
   5. FEATURED IMAGE
========================================================= */

.featured-image {
  display: flex;
  justify-content: center;
  padding: 30px 0;
}

.featured-image img {
  width: 50%;
  max-width: 250px;
  height: auto;
  border-radius: 6px;
}

/* =========================================================
   6. AUDIO PLAYER
========================================================= */

.audio-player {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  gap: 10px;
}

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

/* =========================================================
   7. DOWNLOAD BUTTON
========================================================= */

.btn-download {
  display: inline-block;
  padding: 10px 18px;
  background: #0073aa;
  color: #fff;
  text-decoration: none;
  border-radius: 4px;
  font-weight: 500;
}

.btn-download:hover {
  background: #005a87;
}

/* =========================================================
   8. MP3 META (UNIFIED SYSTEM)
========================================================= */

.mp3-meta-lines {
  margin: 15px 0;
}

.mp3-meta-lines > div {
  padding: 8px 0;
  border-bottom: 1px solid #ddd;
  display: flex;
}

.mp3-meta-lines > div div:first-child {
  flex: 0 0 150px;
  font-weight: bold;
}

.mp3-meta-lines > div div:last-child {
  flex: 1;
}

/* =========================================================
   9. OLD TABLE SUPPORT (IF STILL USED)
========================================================= */

.mp3-metadata-table {
  width: 100%;
  border-collapse: collapse;
  border: 1px solid #ddd;
}

.mp3-metadata-table td {
  padding: 8px 15px;
  border-bottom: 1px solid #e0e0e0;
}

.mp3-metadata-table tr:last-child td {
  border-bottom: none;
}

/* =========================================================
   10. SONG TABLE
========================================================= */

table.song-tbl td,
table.song-tbl th {
  border-bottom: 2px solid #000;
  padding: 8px;
}

/* =========================================================
   11. THUMBNAIL WRAP
========================================================= */

.nv-thumb-wrap {
  display: flex;
  justify-content: center;
  padding: 0;
}

/* =========================================================
   12. SEARCH BLOCK FIX
========================================================= */

.wp-block-search__inside-wrapper {
  width: 100% !important;
  padding: 0 !important;
  display: flex !important;
  gap: 0 !important;
}

.wp-block-search__inside-wrapper input {
  border: 1px solid grey !important;
  padding: 6px;
}

.wp-block-search__button {
  margin-left: 10px;
}

/* =========================================================
   13. CUSTOM WRAPPER
========================================================= */

.custom-single-wrapper h1 {
  font-size: 32px;
  text-align: center;
}

/* =========================================================
   14. RESPONSIVE
========================================================= */

@media (max-width: 768px) {

  .custom-single-wrapper h1 {
    font-size: 28px;
  }

  .audio-player audio {
    width: 90%;
  }

  .audio-player {
    width: 90%;
    padding: 10px;
  }

  .featured-image {
    padding: 20px 0;
  }

  .featured-image img {
    width: 90%;
  }

  table.song-tbl td,
  table.song-tbl th {
    font-size: 14px;
    padding: 6px;
  }
}

#secondary .widget,
.nv-sidebar-wrap .widget {
  margin-bottom: 20px;
  padding: 15px;
  border: 1px solid #e5e5e5;
  background: #fff;
  border-radius: 6px;
}

#secondary ul,
.nv-sidebar-wrap ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

#secondary ul li,
.nv-sidebar-wrap ul li {
  padding: 10px 0;
  border-bottom: 1px solid #e0e0e0;
}

#secondary ul li:last-child,
.nv-sidebar-wrap ul li:last-child {
  border-bottom: none;
}

#secondary ul li a,
.nv-sidebar-wrap ul li a {
  text-decoration: none;
  color: #222;
  display: block;
}

#secondary ul li a:hover {
  color: #0073aa;
}