/*
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
*/

/* === Forza layout a 2 colonne dentro ogni cella giorno === */
.corsi-orari-table td.tcol-day > .day-cell {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)); /* 2 colonne */
  gap: 8px;
  align-items: center;
}

.day-cell :only-child {
	display: grid;
    grid-template-columns: repeat(2, 1fr);
}

.t-col-sale{
	display: grid;
    grid-template-columns: repeat(2, 1fr);
	font-size:12px;
}

/* Sala A sempre a sinistra */
.sala-a {
    grid-column: 1;
}

/* Sala B sempre a destra */
.sala-b {
    grid-column: 2;
}


/* I blocchi sala (sia <div> che <a>) non devono essere width:100% */
.corsi-orari-table td.tcol-day > .day-cell > .sala-block {
  display: block !important;
  width: auto !important;        /* batte eventuale width:100% del tema */
  max-width: none !important;
  margin: 0 !important;
  box-sizing: border-box;
  border: 1px solid #444; /* Bordo più scuro */
  border-radius: 0px;
  padding: 6px;
  text-decoration: none;
  color: inherit; /* Mantiene il colore del testo della sala */
/*   overflow:scroll; */
}

/* Opzionale: su schermi grandi metti 2 colonne (mantenuto per consistenza) */
@media (min-width: 1400px) {
  .corsi-orari-table td.tcol-day > .day-cell {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Opzionale: su mobile una colonna sola */
@media (max-width: 575.98px) {
  .corsi-orari-table td.tcol-day > .day-cell {
    grid-template-columns: 1fr;
  }
}


/* ===============================
    STILE ORARIO CORSI MULTISALA
    =============================== */

.corsi-orari-table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  text-align: center;
  font-family: var(--e-global-typography-primary-font-family, sans-serif);
  color: #DDD; /* Testo generale chiaro */
  background-color: #1F1F1F; /* Sfondo generale scuro per la tabella */
}

.corsi-orari-table th,
.corsi-orari-table td {
  border: 1px solid #444; /* Bordi chiari ma non troppo invasivi */
  padding: 0.2em;
  vertical-align: top;
}

.corsi-orari-table thead th {
  background: #2A2A2A; /* Sfondo intestazione scuro */
  color: #FFF; /* Testo intestazione bianco */
  font-weight: 700;
  font-size: 0.95em;
  text-transform: uppercase;
}

/* ---------- Celle Orario ---------- */
.tcol-time{
 width:80px;
}

/* ---------- Blocco orario ---------- */
.corsi-orari-table th.tcol-time, thead th.tcol-day
  {
  background: #E32285 ; /* Viola leggermente smorzato per tema scuro */
  color: #FFF;
  font-weight: 600;
}

/* ---------- Celle giorno ---------- */
.corsi-orari-table td {
  background: #252525; /* Sfondo celle leggermente più chiaro del generale */
padding:4px;
}

/* ---------- Divisione sale ---------- */
.corsi-orari-table .day-cell {
  display: flex;
  flex-direction: column;
  gap: 4px;
  height: 100%;
}


.corsi-orari-table .sala-block {
  flex: 1;
  border-radius: 4px;
  padding: 4px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  font-size: 0.7em;
  box-shadow: 0 1px 2px rgba(0,0,0,0.5); /* Ombra più evidente su sfondo scuro */
}

.corsi-orari-table .sala-A {
  background-color: #5C2D4A; /* Tonalità scura del rosa/viola */
  border-top: 4px solid #E20074; /* Rosa accesso (mantenuto come accento) */
  color: #FFF; /* Testo bianco sulla sala */
}

.corsi-orari-table .sala-B {
  background-color: #2D5C30; /* Tonalità scura del verde */
  border-top: 4px solid #47B74B; /* Verde scuro (mantenuto come accento) */
  color: #FFF; /* Testo bianco sulla sala */
}

/* DIV Corso */
.slot{
justify-items: flex-start;}

/* ---------- Titolo corso ---------- */

.slot-title {
  font-weight: 600 !important;
  color: #000 !important; /* Titolo corso nero */
  text-decoration: none;
  text-transform:uppercase;
  text-align: start;
}

.corsi-orari-table .slot-title a:hover {
  text-decoration: underline;
}

/* ---------- Orario ---------- */
.corsi-orari-table .slot-time {
  font-size: 1em;
  color: #2E2E2E; /* Orario grigio chiaro */
}

/* ---------- Etichetta sala ---------- */
.corsi-orari-table .sala-label {
  display: block;
  font-weight: 700;
  font-size: 0.75em;
  text-transform: uppercase;
  color: #2E2E2E; /* Etichetta sala grigio chiaro */
}

/* ---------- Celle vuote ---------- */
.corsi-orari-empty {
  color: rgba(255,255,255,0.4); /* Testo vuoto traslucido chiaro */
  font-size: 0.9em;
  display: block;
  padding: 6px 0;
}


.sala-block:hover{
  background-color: #e32285; /* Un viola/magenta chiaro e brillante al passaggio */
  color: #000; /* Testo nero sul blocco hover chiaro */
}
.sala-A:hover .slot-title,
.sala-B:hover .slot-title,
.sala-block:hover .slot-time,
.sala-block:hover .sala-label {
    color: #000 !important; /* Assicura che anche gli elementi interni diventino scuri al passaggio */
}


/* ---------- Responsive ---------- */
@media (max-width: 768px) {
  .corsi-orari-table th,
  .corsi-orari-table td {
    font-size: 0.8em;
    padding: 0.3em;
  }
  .corsi-orari-table .sala-block {
    font-size: 0.75em;
  }
	.corsi-orari-box {
		overflow-x:scroll;
}
	.corsi-orari-table{
     width:600px}
	.tcol-time{
     display:none}
}

/* ===============================================
   STILE ORARIO CORSO SINGOLO (tema scuro)
   =============================================== */

.orari-corso-singolo-box {
    margin-top: 20px;
    margin-bottom: 20px;
}

.orari-corso-singolo-title {
    color: #FFF; /* Testo chiaro */
    font-size: 1.5em;
    border-bottom: 2px solid #E32285; /* Linea viola per consistenza */
    padding-bottom: 5px;
    margin-bottom: 15px;
}

.orari-corso-singolo-table {
    width: 100%;
    border-collapse: collapse;
    text-align: left;
    font-family: var(--e-global-typography-primary-font-family, sans-serif);
}

.orari-corso-singolo-table th,
.orari-corso-singolo-table td {
    border: 1px solid #444; /* Bordi scuri ma visibili */
    padding: 10px;
}

.orari-corso-singolo-table thead th {
    background: #2A2A2A; /* Sfondo intestazione scuro */
    color: #FFF; /* Testo bianco */
    font-weight: 700;
    text-transform: uppercase;
    font-size: 0.9em;
}

.orari-corso-singolo-table tbody tr {
    background-color: #252525; /* Sfondo righe scuro */
    color: #DDD; /* Testo chiaro */
}

.orari-corso-singolo-table tbody tr:nth-child(even) {
    background-color: #1F1F1F; /* Sfondo alternato leggermente più scuro */
}

.orari-corso-singolo-table tbody tr:hover {
    background-color: #3A3A3A; /* Effetto hover sottile */
}

/* Colore specifico per la colonna Giorno */
.orari-corso-singolo-table tbody tr td:first-child {
    font-weight: 600;
    color: #E32285; /* Colore d'accento viola */
}


/* Colore Corsi */
/* esempi */
.course-pilates  { background-color:#d5f5e3; } /* verde chiaro */
.course-yoga     { background-color:#f9d5e5; } /* rosa chiaro */
.course-zumba    { background-color:#fcf3cf; }
.course-spinning { background-color:#d6eaf8; }

/* palette generica per corsi non mappati */
.course-color-1 { background-color:#e8f8f5; }
.course-color-2 { background-color:#fdebd0; }
.course-color-3 { background-color:#f5eef8; }
.course-color-4 { background-color:#f2d7d5; }
.course-color-5 { background-color:#d4e6f1; }
.course-color-6 { background-color:#d5f5e3; }

.course-badge {
    display: inline-block;
    padding: 2px 6px;
    border-radius: 3px;
    font-size: 0.7rem;
    font-weight: 600;
    text-transform: uppercase;
    margin-right: 6px;
    line-height: 1.2;
}

.course-badge-new {
    background-color: #e53935; /* rosso */
    color: #ffffff;
	transform: rotate(-15deg);
	margin:0px 0px 5px 0px;
	width: 40px;
}

/* Icona online */
.course-online-icon {
    font-size: 0.9em;
    margin-left: 0.3em;
    vertical-align: middle;
}


.text-border{
/*       -webkit-text-stroke: 2px #fff;
      color:transparent; */
}
