/* RRRH Schedule Widget — Frontend Styles
   Color palette: Warm Black / Saddle Brown / Aged Gold / Forest Green */

.rrrh-schedule-wrap { font-family: inherit; max-width: 900px; }

/* Tabs */
.rrrh-schedule-tabs { display: flex; flex-wrap: wrap; gap: 4px; margin-bottom: 0; }
.rrrh-tab {
    background: #2a1f0e; color: #a07840; border: 1px solid #5a3e1b;
    padding: 8px 14px; cursor: pointer; border-radius: 4px 4px 0 0;
    font-size: 13px; font-weight: 700; letter-spacing: .5px; text-transform: uppercase;
    transition: background .2s, color .2s;
}
.rrrh-tab:hover  { background: #3d2b10; color: #c8943c; }
.rrrh-tab.active { background: #8B6914; color: #fff; border-color: #8B6914; }

/* Day panel */
.rrrh-schedule-day { display: none; background: #1a1208; border: 1px solid #5a3e1b; border-radius: 0 6px 6px 6px; padding: 16px; }
.rrrh-schedule-day.active { display: block; }
.rrrh-no-shows { color: #7a6040; font-style: italic; text-align: center; padding: 24px; }

/* Slot */
.rrrh-schedule-slot {
    display: flex; align-items: center; gap: 12px;
    background: #231808; border: 1px solid #3d2b10;
    border-radius: 6px; padding: 12px; margin-bottom: 8px;
    transition: border-color .2s;
}
.rrrh-schedule-slot.is-live { border-color: #4a7c40; background: #1a2a14; }
.rrrh-schedule-slot:last-child { margin-bottom: 0; }

.rrrh-slot-image { width: 56px; height: 56px; flex-shrink: 0; }
.rrrh-slot-image img {
    width: 56px; height: 56px; border-radius: 50%;
    object-fit: contain; aspect-ratio: 1/1;
    border: 2px solid #5a3e1b; background: #0d0d0f;
    image-rendering: -webkit-optimize-contrast;
}

.rrrh-slot-info { flex: 1; min-width: 0; }
.rrrh-live-badge { display: inline-block; background: #3a6a28; color: #90d070; font-size: 11px; font-weight: 700; padding: 2px 8px; border-radius: 12px; margin-bottom: 4px; letter-spacing: .5px; }
.rrrh-slot-time { color: #8B6914; font-size: 12px; font-weight: 600; }
.rrrh-slot-show { color: #e8d5a0; font-size: 15px; font-weight: 700; margin: 2px 0; }
.rrrh-slot-dj   { color: #9a7850; font-size: 13px; }

.rrrh-slot-link {
    flex-shrink: 0; color: #8B6914; font-size: 12px; font-weight: 600;
    text-decoration: none; border: 1px solid #5a3e1b; padding: 4px 10px;
    border-radius: 4px; transition: background .2s;
}
.rrrh-slot-link:hover { background: #3d2b10; color: #c8943c; }

/* Now/Next widget */
.rrrh-now-next { display: flex; gap: 16px; }
.rrrh-now, .rrrh-next { flex: 1; background: #1a1208; border: 1px solid #5a3e1b; border-radius: 8px; padding: 16px; text-align: center; }
.rrrh-now { border-color: #4a7c40; }
.rrrh-now-next .rrrh-label { display: block; font-size: 11px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; color: #8B6914; margin-bottom: 8px; }
.rrrh-now-next img { width: 72px; height: 72px; border-radius: 50%; object-fit: contain; aspect-ratio: 1/1; border: 2px solid #5a3e1b; background: #0d0d0f; margin: 0 auto 8px; display: block; image-rendering: -webkit-optimize-contrast; }
.rrrh-now-next .rrrh-show-name { color: #e8d5a0; font-size: 15px; font-weight: 700; }
.rrrh-now-next .rrrh-dj-name   { color: #9a7850; font-size: 13px; margin-top: 4px; }

/* Up Next only */
.rrrh-up-next { background: #1a1208; border: 1px solid #5a3e1b; border-radius: 8px; padding: 16px; display: inline-flex; align-items: center; gap: 12px; }
.rrrh-up-next .rrrh-label { font-size: 11px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; color: #8B6914; white-space: nowrap; }
.rrrh-up-next img { width: 48px; height: 48px; border-radius: 50%; object-fit: contain; aspect-ratio: 1/1; border: 2px solid #5a3e1b; background: #0d0d0f; image-rendering: -webkit-optimize-contrast; }
.rrrh-up-next .rrrh-show-name { color: #e8d5a0; font-size: 14px; font-weight: 700; }
.rrrh-up-next .rrrh-dj-name   { color: #9a7850; font-size: 12px; }
.rrrh-up-next .rrrh-next-day  { color: #8B6914; font-size: 12px; }

@media (max-width: 600px) {
    .rrrh-now-next { flex-direction: column; }
    .rrrh-schedule-tabs .rrrh-tab { font-size: 11px; padding: 6px 10px; }
}
