/* CSS Variables */
:root {
  --rs-thumb-size: 100px;
  --rs-tab-bg: #eee;
  --rs-tab-color: #333;
  --rs-tab-active-bg: #d22;
  --rs-tab-active-color: #fff;
  --rs-onair-bg: #e00;
  --rs-onair-color: #fff;
  --rs-card-border: #ddd;
  --rs-onair-bg-hover: rgba(224,0,0,0.05);
}

/* Tab strip */
.radio-schedule-tabs .radio-tabs {
  list-style: none;
  display: flex;
  margin: 0 0 1em;
  padding: 0;
}
.radio-schedule-tabs .radio-tabs li {
  flex: 1;
  text-align: center;
  padding: .5em;
  cursor: pointer;
  background: var(--rs-tab-bg);
  color: var(--rs-tab-color);
  transition: background .3s, color .3s;
}
.radio-schedule-tabs .radio-tabs li.active,
.radio-schedule-tabs .radio-tabs li:hover {
  background: var(--rs-tab-active-bg);
  color: var(--rs-tab-active-color);
}

/* Day blocks */
.radio-schedule-tabs .day-blocks {
  display: none;
}
.radio-schedule-tabs .day-blocks.active {
  display: block;
}

/* Show card layout */
.radio-schedule-tabs .show-item {
  display: flex;
  align-items: flex-start;
  background: #fff;
  border: 1px solid var(--rs-card-border);
  border-radius: 6px;
  padding: 1em;
  margin-bottom: 1em;
  transition: border-color .3s, box-shadow .3s;
}
.radio-schedule-tabs .show-item:hover {
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}

/* Thumbnail & details */
.radio-schedule-tabs .show-item .thumb {
  flex: 0 0 var(--rs-thumb-size);
  width: var(--rs-thumb-size);
  height: var(--rs-thumb-size);
  margin-right: 1em;
  overflow: hidden;
}
.radio-schedule-tabs .show-item .thumb img {
  width: 100%;
  height: auto;
}
.radio-schedule-tabs .show-item .details {
  flex: 1;
}

/* Time badge */
.radio-schedule-tabs .show-item .details .time-badge {
  display: inline-block;
  background: var(--rs-tab-color);
  color: #fff;
  font-size: .85em;
  padding: .2em .5em;
  border-radius: 3px;
  margin-right: .5em;
}

/* ON AIR badge */
.radio-schedule-tabs .show-item .details .on-air {
  background: var(--rs-onair-bg);
  color: var(--rs-onair-color);
  padding: .2em .5em;
  font-size: .8em;
  border-radius: 3px;
  margin-left: .5em;
}

/* Live show prominence */
.radio-schedule-tabs .show-item.on-air {
  border: 2px solid var(--rs-onair-bg);
  background: var(--rs-onair-bg-hover);
}
.radio-schedule-tabs .show-item.on-air .details .on-air {
  font-weight: 700;
  font-size: .9em;
  padding: .3em .6em;
}

/* ===== Mobile Dropdown Styling ===== */

/* Hide dropdown by default */
.radio-schedule-select {
  display: none;
  width: 100%;
  padding: 0.5em;
  font-size: 1rem;
  margin-bottom: 1em;
  border: 1px solid var(--rs-card-border);
  border-radius: 6px;
  background: #fff;
  color: var(--rs-tab-color);
  cursor: pointer;
}

/* Show dropdown and hide tabs on small screens */
@media (max-width: 480px) {
  .radio-schedule-tabs .radio-tabs {
    display: none;
  }

  .radio-schedule-select {
    display: block;
  }
}
