/* Toni dei calendari (aziendale, dipendenti, ferie e permessi, rate).
   I colori degli eventi arrivano dai feed (CalendarPalette, Ruby): pieni con
   il testo bianco sopra a 4.5:1 e oltre, uguali nei due temi. Qui solo cio'
   che dipende dal tema:
     .ric-cal-dot        pallino di legenda col colore di un evento
     .ric-cal-tone-text  testo nel colore di un evento (--ric-cal-tone)
     .ric-avail*         semaforo di disponibilita' nelle modali di assegnazione
   Il resto del tema scuro di FullCalendar sta in ric_dark.css. */

.ric-cal-tone-text { color: var(--ric-cal-tone, var(--bs-body-color)); }

/* Semaforo: riga del dipendente, badge di stato e pallino della legenda.
   Testo scuro della stessa famiglia sul fondo tenue (>= 4.5:1). */
.ric-avail { --ric-avail-bg: #e7f3ec; --ric-avail-text: #1f6b46; --ric-avail-dot: #1f6b46; }
.ric-avail--yellow { --ric-avail-bg: #fbf5dc; --ric-avail-text: #6e5a0c; --ric-avail-dot: #80690f; }
.ric-avail--red    { --ric-avail-bg: #fdeceb; --ric-avail-text: #b42318; --ric-avail-dot: #b42318; }
.ric-avail--purple { --ric-avail-bg: #f1ecfb; --ric-avail-text: #6b45c2; --ric-avail-dot: #6b45c2; }
.ric-avail--orange { --ric-avail-bg: #fdf0e6; --ric-avail-text: #9a4708; --ric-avail-dot: #b0520c; }
.ric-avail--grey   { --ric-avail-bg: #f1f2f4; --ric-avail-text: #5b626b; --ric-avail-dot: #5b626b; }
.ric-avail-row { background: var(--ric-avail-bg); }
.ric-avail-badge { background: var(--ric-avail-bg); color: var(--ric-avail-text); }
/* [data-bs-theme] davanti: ric_dark.css colora ogni .bullet di grigio. */
.ric-avail-dot,
[data-bs-theme] .bullet.ric-avail-dot { background-color: var(--ric-avail-dot); }

[data-bs-theme="dark"] .ric-avail { --ric-avail-bg: var(--ric-tone-success-soft, #19392a); --ric-avail-text: var(--ric-tone-success, #84d8ab); }
[data-bs-theme="dark"] .ric-avail--yellow { --ric-avail-bg: var(--ric-tone-gold-soft, #352c17); --ric-avail-text: var(--ric-tone-gold, #e0c766); }
[data-bs-theme="dark"] .ric-avail--red    { --ric-avail-bg: var(--ric-tone-danger-soft, #3a1f24); --ric-avail-text: var(--ric-tone-danger, #f3a097); }
[data-bs-theme="dark"] .ric-avail--purple { --ric-avail-bg: var(--ric-tone-violet-soft, #2a2140); --ric-avail-text: var(--ric-tone-violet, #c3b2ea); }
[data-bs-theme="dark"] .ric-avail--orange { --ric-avail-bg: #3a2616; --ric-avail-text: #f5a660; }
[data-bs-theme="dark"] .ric-avail--grey   { --ric-avail-bg: var(--ric-dark-raised, #29252b); --ric-avail-text: var(--ric-dark-muted, #b9aab2); }

/* Tema scuro: i toni pieni su fondo scuro restano sotto 3:1, quindi i
   pallini prendono un filo chiaro (stesso colore dell'evento dentro) e il
   testo colorato si schiarisce verso il bianco mantenendo la tinta. */
[data-bs-theme="dark"] :is(.ric-cal-dot, .ric-avail-dot, .bullet.bullet-dot[style*="background"]) {
    box-shadow: 0 0 0 1px rgba(242, 234, 238, .7);
}
[data-bs-theme="dark"] .ric-cal-tone-text {
    color: color-mix(in srgb, var(--ric-cal-tone, #f2eaee) 45%, #ffffff);
}
