/* [Programs] Schedule Table widget styles.
   Scoped under .mnny-program-schedule to prevent Elementor's default th, td
   and heading resets from overriding the schedule-table values in theme.css.
   All values are exact copies from the prototype (global.css). */

/* ── Section wrapper ───────────────────────────────────────── */
.mnny-program-schedule > section {
    background: var(--color-accent-light);
}

/* ── Section header (left-aligned — no text-center) ───────── */
.mnny-program-schedule .section-header {
    margin-bottom: var(--space-16);
}

.mnny-program-schedule .section-header .label {
    display: block;
    margin-bottom: var(--space-3);
}

.mnny-program-schedule .section-header h2 {
    margin-bottom: var(--space-4);
    color: var(--color-text-primary);
    font-size: clamp(1.75rem, 3vw, var(--text-4xl));
    font-weight: var(--weight-semibold);
}

/* ── Scroll wrapper ────────────────────────────────────────── */
.mnny-program-schedule__scroll {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

/* ── Table ─────────────────────────────────────────────────── */
.mnny-program-schedule .schedule-table {
    width: 100%;
    border-collapse: collapse;
    background: white;
    border-radius: var(--radius-xl);
    overflow: hidden;
    border: 1px solid var(--color-border);
}

/* ── Header row ────────────────────────────────────────────── */
.mnny-program-schedule .schedule-table th {
    background: var(--color-secondary-light);
    color: var(--color-secondary-dark);
    font-size: var(--text-xs);
    font-weight: var(--weight-semibold);
    letter-spacing: 0.08em;
    text-transform: uppercase;
    text-align: left;
    padding: var(--space-3) var(--space-5);
    /* Reset Elementor th overrides */
    border: none;
}

/* ── Body cells ────────────────────────────────────────────── */
.mnny-program-schedule .schedule-table td {
    padding: var(--space-4) var(--space-5);
    font-size: var(--text-sm);
    border-top: 1px solid var(--color-border);
    color: var(--color-text-primary);
    /* Reset Elementor td overrides */
    vertical-align: middle;
}

.mnny-program-schedule .schedule-table tr:hover td {
    background: var(--color-secondary-surface);
}

/* ── Day tag pill ──────────────────────────────────────────── */
.mnny-program-schedule .day-tag {
    display: inline-block;
    padding: var(--space-1) var(--space-3);
    background: var(--color-secondary-light);
    color: var(--color-secondary-dark);
    border-radius: var(--radius-full);
    font-size: var(--text-xs);
    font-weight: var(--weight-semibold);
    white-space: nowrap;
}

/* ── Program link ──────────────────────────────────────────── */
.mnny-program-schedule .table-program-link {
    font-weight: var(--weight-semibold);
    color: var(--color-text-primary);
    text-decoration: none;
    border-bottom: 1px solid var(--color-border);
    transition: color var(--duration-fast) var(--ease-out),
                border-color var(--duration-fast) var(--ease-out);
}

.mnny-program-schedule .table-program-link:hover {
    color: var(--color-secondary-dark);
    border-color: var(--color-secondary);
}

.mnny-program-schedule .table-program-link--detail {
    color: var(--color-secondary-dark);
    border-color: transparent;
}

.mnny-program-schedule .table-program-link--detail:hover {
    border-color: var(--color-secondary);
}

/* Strip Elementor widget container padding. */
.elementor-widget-mnny_program_schedule > .elementor-widget-container {
    padding: 0 !important;
}
