/*
Theme Name: Radio Zamar Rebrand
Description: Independent app-inspired Radio Zamar website theme.
Version: 1.0.0
Template: twentytwentyfive
Text Domain: radiozamar-rebrand
*/

:root {
  --rz-navy: #10132b;
  --rz-plum: #282441;
  --rz-gold: #e9bd54;
  --rz-cream: #f7f0e0;
}

/* Radio Zamar — Live Player */
.rz-live-player {
  max-width: 760px;
  margin: 0 auto;
  padding: 24px 24px 32px;
  text-align: center;
}

.rz-live-player > p:first-child {
  font-size: 1.1rem;
  line-height: 1.6;
  margin-bottom: 28px;
}

.rz-now-playing-label {
  color: var(--rz-gold);
  font-size: 0.85rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  margin-bottom: 10px;
}

#rz-now-playing {
  color: var(--rz-cream);
  font-size: clamp(1.15rem, 2.5vw, 1.65rem);
  font-weight: 600;
  line-height: 1.4;
  min-height: 2em;
  overflow-wrap: anywhere;
  margin-bottom: 28px;
}

.rz-live-player audio {
  display: block;
  width: 100%;
  max-width: 650px;
  margin: 0 auto;
  border-radius: 40px;
}

@media (max-width: 600px) {
  .rz-live-player {
    padding: 20px 12px 28px;
  }

  .rz-live-player > p:first-child {
    font-size: 1rem;
  }

  #rz-now-playing {
    font-size: 1.2rem;
  }
}

/* Radio Zamar — Official Weekly Schedule */
.rz-program-schedule {
  padding: 48px 24px 64px;
}

.rz-schedule {
  width: 100%;
  max-width: 950px;
  margin: 32px auto;
}

.rz-schedule-days {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  margin-bottom: 30px;
}

.rz-schedule-day {
  border: 1px solid #e9bd54;
  border-radius: 8px;
  background: #282441;
  color: #f7f0e0;
  padding: 12px 16px;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
}

.rz-schedule-day.is-active {
  background: #e9bd54;
  color: #10132b;
}

.rz-schedule-day:focus-visible {
  outline: 2px solid #e9bd54;
  outline-offset: 3px;
}

.rz-schedule-list {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.rz-schedule-item {
  display: grid;
  grid-template-columns: 155px minmax(0, 1fr);
  align-items: center;
  column-gap: 24px;
  padding: 16px 20px;
  border-radius: 8px;
  background: rgba(255,255,255,0.06);
}

.rz-schedule-item:nth-child(even) {
  background: rgba(255,255,255,0.10);
}

.rz-schedule-time {
  color: #e9bd54;
  font-size: 15px;
  font-weight: 700;
  white-space: nowrap;
}

.rz-schedule-title {
  color: #f7f0e0;
  font-size: 17px;
  line-height: 1.5;
  overflow-wrap: anywhere;
}

@media (max-width: 600px) {
  .rz-program-schedule {
    padding: 32px 12px;
  }

  .rz-schedule-day {
    flex: 1 1 85px;
    padding: 10px 8px;
    font-size: 12px;
  }

  .rz-schedule-item {
    grid-template-columns: 1fr;
    row-gap: 5px;
    padding: 14px;
  }
}

/* Radio Zamar — Podcast Gallery */
.rz-podcast-section {
  padding: 56px 24px 72px;
}

.rz-podcast-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
  max-width: 1100px;
  margin: 36px auto 0;
  align-items: stretch;
}

.rz-podcast-card {
  background: #ffffff;
  color: #10132b;
  border: 1px solid rgba(16,19,43,.10);
  border-radius: 16px;
  padding: 28px;
  box-shadow: 0 6px 24px rgba(16,19,43,.08);
}

.rz-podcast-card h3 {
  color: #10132b;
  font-size: 1.35rem;
  line-height: 1.35;
  margin: 0 0 14px;
}

.rz-podcast-subtitle {
  color: #75551d;
  font-weight: 600;
}

.rz-podcast-description {
  font-size: 1rem;
  line-height: 1.6;
  color: #39364b;
}

.rz-podcast-latest {
  color: #75551d;
  font-size: .85rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.rz-podcast-episode {
  font-weight: 600;
  line-height: 1.5;
}

.rz-podcast-link {
  display: inline-block;
  padding: 11px 18px;
  border-radius: 8px;
  background: #10132b;
  color: #ffffff !important;
  font-weight: 600;
  text-decoration: none;
}

.rz-podcast-link:hover,
.rz-podcast-link:focus-visible {
  background: #282441;
  color: #e9bd54 !important;
}

@media (max-width: 700px) {
  .rz-podcast-section {
    padding: 36px 14px 48px;
  }

  .rz-podcast-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .rz-podcast-card {
    padding: 22px;
  }
}

.rz-podcast-card {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.rz-podcast-cover {
  display: block;
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  border-radius: 12px;
}

.rz-podcast-card-body {
  display: flex;
  flex-direction: column;
  gap: 12px;
  height: 100%;
}

.rz-podcast-link {
  margin-top: auto;
}


/* Radio Zamar Sticky Schedule Days */
#rz-schedule-days {
  position: sticky;
  top: 0;
  z-index: 50;
  background: #10132b;
  padding: 12px 8px;
}
body.admin-bar #rz-schedule-days {
  top: 32px;
}
@media (max-width: 782px) {
  body.admin-bar #rz-schedule-days {
    top: 46px;
  }
}


/* Radio Zamar Compact Schedule Styling */
.rz-schedule-preview{padding:28px 20px!important}
.rz-schedule-preview h2{margin:0 0 8px}
.rz-preview-list{display:grid;gap:8px;margin:18px 0}
.rz-preview-item{display:grid;grid-template-columns:minmax(95px,150px) 1fr;gap:16px;align-items:center;background:#282441;border-radius:10px;padding:14px 18px}
.rz-preview-time{color:#e9bd54;font-weight:700}
.rz-preview-title{color:#f7f0e0;overflow-wrap:anywhere}
.rz-schedule-preview a{color:#e9bd54}
@media(max-width:600px){.rz-preview-item{grid-template-columns:100px minmax(0,1fr);gap:10px;padding:12px}.rz-schedule-preview{padding:22px 12px!important}}


/* Radio Zamar Homepage Two Column Layout */
.rz-home-media-columns{width:calc(100% - 32px);max-width:1320px!important;margin:20px auto!important;gap:20px;align-items:stretch}
.rz-home-media-columns>.wp-block-column{min-width:0;flex-basis:0;flex-grow:1}
.rz-home-media-columns .wp-block-group.alignwide{max-width:none!important;width:100%;box-sizing:border-box}
.rz-home-media-columns .rz-schedule-preview,.rz-home-media-columns .has-plum-background-color{height:100%;box-sizing:border-box;padding:24px!important;border-radius:14px}
.rz-home-media-columns .rz-live-player audio{max-width:100%}
.rz-home-media-columns .rz-preview-item{grid-template-columns:minmax(100px,145px) minmax(0,1fr);gap:12px}
@media(max-width:781px){.rz-home-media-columns{display:flex;flex-direction:column;gap:12px;width:calc(100% - 24px)}.rz-home-media-columns>.rz-home-radio-column{order:1}.rz-home-media-columns>.rz-home-schedule-column{order:2}.rz-home-media-columns .rz-schedule-preview,.rz-home-media-columns .has-plum-background-color{padding:20px 14px!important}.rz-home-media-columns .rz-preview-item{grid-template-columns:100px minmax(0,1fr)}}

/* RZ Featured Podcasts Grid */
.rz-featured-podcasts .rz-podcast-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important;max-width:1320px!important;margin:20px auto!important}

/* RZ Featured Responsive */
@media(max-width:900px){.rz-featured-podcasts .rz-podcast-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:600px){.rz-featured-podcasts .rz-podcast-grid{grid-template-columns:1fr!important;gap:12px!important}}

/* RZ Featured Compact Cards */
.rz-featured-podcasts .rz-podcast-cover{height:190px!important;object-fit:contain!important}
.rz-featured-podcasts .rz-podcast-description{display:none!important}
.rz-featured-podcasts .rz-podcast-card{padding:16px!important;gap:10px!important}
.rz-featured-podcasts .rz-podcast-card-body{gap:10px!important}

/* RZ Match Schedule Player Height */
.rz-home-media-columns{
  align-items:stretch;
}

.rz-home-media-columns > .wp-block-column{
  display:flex;
}

.rz-home-media-columns > .wp-block-column > *{
  width:100%;
}

.rz-home-media-columns .rz-schedule-preview,
.rz-home-media-columns .has-plum-background-color{
  min-height:400px;
}

.rz-home-media-columns .rz-schedule-preview{
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
}

.rz-home-media-columns .rz-preview-list{
  flex:1;
  overflow-y:auto;
}

.rz-home-media-columns .rz-preview-item{
  padding:12px 16px;
}

@media(max-width:781px){
  .rz-home-media-columns .rz-schedule-preview,
  .rz-home-media-columns .has-plum-background-color{
    min-height:auto;
  }

  .rz-home-media-columns .rz-preview-list{
    overflow:visible;
  }
}

/* RZ Now Next Panel */
.rz-home-media-columns>.rz-home-radio-column{
  flex-direction:column;
  background:#282441;
  border-radius:14px;
  overflow:hidden;
}
.rz-home-radio-column .has-plum-background-color{
  height:auto!important;
  background:transparent!important;
  padding-bottom:10px!important;
}
.rz-now-next{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  padding:12px 20px 20px;
  box-sizing:border-box;
}
.rz-now-next-card{
  display:flex;
  flex-direction:column;
  gap:8px;
  background:#37324f;
  color:#f7f0e0;
  border-radius:10px;
  padding:14px;
  min-width:0;
}
.rz-now-next-card strong{color:#e9bd54;font-size:13px}
.rz-now-next-card span{overflow-wrap:anywhere}
@media(max-width:520px){
  .rz-now-next{grid-template-columns:1fr;padding:10px 14px 16px}
}

/* RZ Compact App Strip */
.rz-app-compact{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:20px 26px;
  border-radius:14px;
}
.rz-app-compact-copy{flex:1;min-width:220px}
.rz-app-compact-copy h3{margin:0 0 5px;font-size:20px}
.rz-app-compact-copy p{margin:0;font-size:14px}
.rz-app-compact .wp-block-buttons{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  flex-shrink:0;
}
.rz-app-compact .wp-block-button__link{
  font-size:14px;
  padding:12px 18px;
  white-space:nowrap;
}
@media(max-width:760px){
  .rz-app-compact{
    flex-direction:column;
    align-items:stretch;
    padding:18px;
    gap:14px;
  }
  .rz-app-compact-copy{min-width:0}
  .rz-app-compact .wp-block-buttons{
    justify-content:flex-start;
  }
}

/* RZ Sticky Player Styles */
.rz-sticky-player[hidden]{display:none!important}
.rz-sticky-player{
  position:fixed;
  bottom:0;
  left:0;
  right:0;
  z-index:9999;
  display:flex;
  align-items:center;
  gap:16px;
  padding:12px 24px;
  background:#10132b;
  color:#f7f0e0;
  border-top:2px solid #e9bd54;
  box-shadow:0 -4px 20px #0004;
}
.rz-sticky-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}
.rz-sticky-info strong{color:#e9bd54;font-size:12px}
.rz-sticky-info span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rz-sticky-player button{
  cursor:pointer;
  border:0;
  border-radius:50%;
  min-width:42px;
  min-height:42px;
  background:#e9bd54;
  color:#10132b;
  font-size:19px;
}
#rz-sticky-close{background:#37324f;color:#f7f0e0}
@media(max-width:520px){
  .rz-sticky-player{padding:10px 12px;gap:10px}
  .rz-sticky-info strong{font-size:11px}
  .rz-sticky-info span{font-size:12px}
}

/* RZ Sticky Player Content Clearance */
body:has(#rz-sticky-player:not([hidden])){padding-bottom:85px}
@media(max-width:520px){body:has(#rz-sticky-player:not([hidden])){padding-bottom:90px}}

/* RZ Featured Mobile Spacing Fix */
@media(max-width:600px){
.rz-featured-podcasts .rz-podcast-card{height:auto!important;min-height:0!important;gap:8px!important;padding:14px!important}
.rz-featured-podcasts .rz-podcast-card-body{gap:8px!important}
.rz-featured-podcasts .rz-podcast-cover{height:150px!important;object-fit:contain!important}
}

/* RZ Featured Natural Height Fix */
@media(max-width:600px){
.rz-featured-podcasts .rz-podcast-card-body{height:auto!important;flex:0 0 auto!important}
.rz-featured-podcasts .rz-podcast-link{margin-top:8px!important}
.rz-featured-podcasts .rz-podcast-card h3{margin-bottom:4px!important}
}
/* RZ App Download Final Hover */
@media(min-width:761px){
.rz-app-compact{justify-content:flex-start!important;gap:28px;max-width:1100px!important}
.rz-app-compact-copy{flex:0 1 390px!important}
}
.rz-app-compact .wp-block-button__link{transition:background-color .2s ease,color .2s ease,transform .2s ease}
.rz-app-compact .wp-block-button__link:hover,
.rz-app-compact .wp-block-button__link:focus-visible{
background:#e9bd54!important;color:#10132b!important;transform:translateY(-2px)
}

/* RZ App Strip Width Match */
@media(min-width:761px){
.rz-app-compact{max-width:1320px!important;width:calc(100% - 48px)!important;margin-left:auto!important;margin-right:auto!important;box-sizing:border-box}
}

/* RZ Navigation Hover Colors */
.wp-block-navigation .wp-block-navigation-item__content{padding:9px 12px;border-radius:7px;transition:background-color .2s ease,color .2s ease}
.wp-block-navigation .wp-block-navigation-item:nth-child(odd)>.wp-block-navigation-item__content:hover,
.wp-block-navigation .wp-block-navigation-item:nth-child(odd)>.wp-block-navigation-item__content:focus-visible{background:#e9bd54!important;color:#10132b!important}
.wp-block-navigation .wp-block-navigation-item:nth-child(even)>.wp-block-navigation-item__content:hover,
.wp-block-navigation .wp-block-navigation-item:nth-child(even)>.wp-block-navigation-item__content:focus-visible{background:#10132b!important;color:#e9bd54!important;outline:1px solid #e9bd54}
.wp-block-navigation .current-menu-item>.wp-block-navigation-item__content{text-decoration:underline;text-decoration-color:#e9bd54;text-underline-offset:5px}

/* RZ Temporary Menu Visibility */
.wp-block-navigation-item:has(> a[href="/radio/"]){display:none!important}

.wp-block-navigation-item:has(> a[href="/emissions/"]){display:none!important}
.wp-block-navigation-item:has(> a[href="/priere/"]){display:none!important}
.wp-block-navigation-item:has(> a[href="/don/"]){display:none!important}

/* RZ Expandable Header Player Styles */
#rz-header-player-toggle {
  background: #e9bd54;
  color: #10132b;
  border: 0;
  border-radius: 50%;
  width: 48px;
  height: 48px;
  min-width: 48px;
  font-size: 22px;
  font-weight: bold;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

#rz-header-player-toggle:hover,
#rz-header-player-toggle:focus-visible {
  background: #f7d580;
}

#rz-header-player-panel[hidden] {
  display: none !important;
}

#rz-header-player-panel {
  position: fixed;
  left: 20px;
  top: 105px;
  z-index: 9999;
  box-sizing: border-box;
  width: min(360px, calc(100vw - 40px));
  padding: 20px;
  border: 1px solid #e9bd54;
  border-radius: 14px;
  background: #282441;
  color: #f7f0e0;
  box-shadow: 0 12px 30px rgba(0,0,0,.3);
}

.rz-header-player-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.rz-header-player-top strong {
  color: #e9bd54;
  font-size: 18px;
}

#rz-header-player-title {
  color: #f7f0e0;
  margin: 16px 0;
  line-height: 1.5;
}

#rz-header-player-minimize,
#rz-header-player-play {
  background: #e9bd54;
  color: #10132b;
  border: 0;
  border-radius: 8px;
  padding: 10px 14px;
  font-weight: 700;
  cursor: pointer;
}

#rz-header-player-minimize {
  padding: 5px 12px;
  font-size: 20px;
}

@media (max-width: 600px) {
  #rz-header-player-panel {
    left: 12px;
    top: 90px;
    width: calc(100vw - 24px);
  }
}

/* RZ Header Player Position Refinement */
#rz-header-player-panel {
  left: auto;
  right: 24px;
  top: 290px;
  width: min(340px, calc(100vw - 48px));
}
@media (max-width: 600px) {
  #rz-header-player-panel {
    left: auto;
    right: 12px;
    top: 220px;
    width: calc(100vw - 24px);
  }
}

/* RZ Header Expander Layout */
#rz-header-player-panel {
  position: static;
  box-sizing: border-box;
  margin: 0 24px 12px auto;
  width: min(360px, calc(100% - 48px));
  box-shadow: 0 8px 20px rgba(0,0,0,.18);
}
@media (max-width: 600px) {
  #rz-header-player-panel {
    margin: 0 12px 12px auto;
    width: calc(100% - 24px);
  }
}

/* RZ Hide Expanded Player */
#rz-header-player-panel { display: none !important; }

/* RZ Sticky Header */
header.wp-block-template-part { position: sticky; top: 0; z-index: 1000; }
body.admin-bar header.wp-block-template-part { top: 32px; }
@media (max-width: 782px) { body.admin-bar header.wp-block-template-part { top: 46px; } }

main.rz-page-content[hidden] { display: none !important; }

/* RZ Dedicated Podcasts Compact Grid */
body .rz-page-content .rz-podcast-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;max-width:1320px}
body .rz-page-content .rz-podcast-card{padding:16px;gap:10px}
body .rz-page-content .rz-podcast-cover{height:190px;object-fit:contain}
body .rz-page-content .rz-podcast-card-body{gap:10px}
body .rz-page-content .rz-podcast-description{display:none}
@media(max-width:900px){body .rz-page-content .rz-podcast-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){body .rz-page-content .rz-podcast-grid{grid-template-columns:1fr}}
