/*
Theme Name: child_theme
Theme URI: https://elementor.com/hello-theme/?utm_source=wp-themes&utm_campaign=theme-uri&utm_medium=wp-dash
Description: A plain-vanilla & lightweight theme for Elementor page builder
Author: Elementor Team
Author URI: https://elementor.com/?utm_source=wp-themes&utm_campaign=author-uri&utm_medium=wp-dash
Template: hello-elementor
Version: 2.4.1
*/

.corsi-orari-title{
font-family: var(--e-global-typography-primary-font-family), Sans-serif;
font-weight: 600;
/* color: var(--e-global-color-primary); */
color: #50474B;
}

.slot-title a {
color:#50474B !important,
font-weight: 600 !important;
}

/* ================================================================
 Tabella orari corsi (shortcode [acf_orari_corsi layout="table"])
 ================================================================ */
.corsi-orari-box {
margin: 1.5em 0;
}

/* ---------- Tabella ---------- */
.corsi-orari-table {
width: 100%;
border-collapse: collapse;
table-layout: fixed; /* Celle tutte uguali */
font-family: var(--e-global-typography-primary-font-family), Sans-serif;
font-weight: var(--e-global-typography-text-font-weight);
color: #7A7A7A;
text-align: center;
}

.corsi-orari-table th,
.corsi-orari-table td {
border: 1px solid rgba(0, 0, 0, 0.08);
padding: 0.7em 0.4em;
width: calc(100% / 7);
text-align: center;
vertical-align: middle;
line-height: 1.4;
word-break: break-word;
}

/* ---------- Intestazioni ---------- */
.corsi-orari-table thead th {
background: var(--e-global-color-36f5db5); /* puoi sostituire con un tuo colore se serve */
font-weight: 600;
color: #7A7A7A;
}

/* ---------- Celle vuote ---------- */
.corsi-orari-table td:empty::before {
content: "—";
color: rgba(0,0,0,0.2);
}

/* ---------- Abbreviazioni (L M M G V S D) ---------- */
.corsi-orari-table abbr {
text-decoration: none;
cursor: default;
}

/* MOBILE - alternanza righe tabella orari */
.corsi-orari-mobile-weekly .corsi-orari-day ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.corsi-orari-mobile-weekly .corsi-orari-item {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 12px 10px;
    border-bottom: 1px solid #e6e6e6;
}

/* righe alternate rosa chiaro */
.corsi-orari-mobile-weekly .corsi-orari-item:nth-child(odd) {
background-color: rgba(232, 48, 123, 0.05);
}
/* alternanza righe DESKTOP */
.corsi-orari-table.timetable tbody tr:nth-child(odd) {
    background-color: rgba(232, 48, 123, 0.05);
}

.corsi-orari-table.timetable tbody tr:nth-child(even) {
    background-color: transparent;
}


.corsi-orari-mobile-weekly .corsi-orari-item:nth-child(even) {
}

/* opzionale: larghezza fissa colonna orario */
.corsi-orari-mobile-weekly .corsi-orari-ora {
    min-width: 68px;
    font-weight: 600;
}

/* opzionale: link corso */
.corsi-orari-mobile-weekly .corsi-orari-corso a {
    color: inherit;
    text-decoration: none;
}





/* Layout mobile per orari settimana */
.corsi-orari-mobile-weekly {
    display: none;
}

@media (max-width: 768px) {

    /* Nascondi la tabella originale solo in mobile */
    .corsi-orari-box.weekly .corsi-orari-table.timetable {
        display: none;
    }

    .corsi-orari-mobile-weekly {
        display: block;
        font-family: var(--e-global-typography-primary-font-family), Sans-serif;
        font-size: 0.9em;
        color: #7A7A7A;
        margin-top: 10px;
    }

    .corsi-orari-mobile-weekly .corsi-orari-day {
        margin-bottom: 1.5rem;
        padding-top: 0.5rem;
        border-top: 1px solid #e0e0e0;
    }

    .corsi-orari-mobile-weekly .corsi-orari-day h3 {
        margin: 0 0 0.5rem;
        font-size: 1rem;
        font-weight: 700;
        text-align: left;
    }

    .corsi-orari-mobile-weekly ul {
        list-style: none;
        margin: 0;
        padding: 0;
    }

    .corsi-orari-mobile-weekly li.corsi-orari-item {
        display: flex;
        align-items: flex-start;
        justify-content: flex-start;
        padding: 0.35rem 0.5rem;
    }

    .corsi-orari-mobile-weekly .corsi-orari-ora {
        font-weight: 700;
        min-width: 70px;
        margin-right: 0.75rem;
        white-space: nowrap;
        text-align: left;
    }

    .corsi-orari-mobile-weekly .corsi-orari-corso {
        flex: 1;
        text-align: left;
    }

    .corsi-orari-mobile-weekly .corsi-orari-corso a {
        font-weight: 600;
        text-decoration: none;
    }
}

/* Forza tutto il contenuto orari singolo in bianco */
.corsi-orari-single,
.corsi-orari-single * {
  color: #fff !important;
}

/* opzionale: bordi tabella più visibili su sfondo scuro */
.corsi-orari-single .corsi-orari-table th,
.corsi-orari-single .corsi-orari-table td {
  border-color: rgba(255,255,255,0.2) !important;
}

/* opzionale: header tabella trasparente */
.corsi-orari-single .corsi-orari-table thead th {
  background: transparent !important;
}