/* MAPPATURA CLASSI UNIFICATE
   Questo file applica lo stile definito nelle variabili :root
   Versione ottimizzata con selettori universali
*/

body, h1, h2, h3, h4, h5, h6 {
    font-family: var(--brand-font-family);
}

/* icheckbox overrides */
input[class*="flat-red-"] > .iCheck-helper,
input[class*="flat-red-"],
.icheckbox_flat-red, .iradio_flat-red{
    background-image: var(--brand-checkbox-img) !important;
}

/* Sfondi Principali */
[class*="background-color-"],
.background-color-generic {
    background-color: var(--brand-bg-main);
}

/* Colore Font Secondario (Accento/Evidenza) */
[class*="font-color2-"],
[class*="-color"],
.font-color-accent {
    color: var(--brand-text-accent);
}

/* Colore Font Primario (Titoli, testo base) */
[class*="font-color-"],
[class*="title-"],
[class*="subtitle-"],
[class*="text-"],
.font-color-generic {
    color: var(--brand-text-title);
}

.diretta.ciclo-unico-titolo{
    color:var(--brand-text-main);
}

.diretta.event-title{
    color:var(--event-title);
}
.diretta.title-info-registrazione{
    color:var(--event-title);
}

.diretta.event-speaker{
    color:var(--event-speaker);
}

/* Paragrafo */
[class*="p-"],
.p-generic {
    line-height: 22px;
    /*letter-spacing: 0.05em;*/
    font-size: 18px;
    color: var(--brand-text-main) !important;
}

[class*="diretta p-"]
{
    font-size: 14px;
    color: var(--brand-text-main) !important;
    text-align: left;
    text-transform: none;
    letter-spacing: normal;
    line-height: 18px;
}

/* Checkbox Custom */
[class*="custom-checkbox-color-"],
.custom-checkbox-generic {
    /*border: 2px solid var(--brand-secondary);*/
    border: 1px solid var(--brand-primary);
    background-color: var(--brand-bg-alt);
}

/* Checkbox Checked State */
.custom-checkbox-wrapper input[type="checkbox"]:checked + [class*="custom-checkbox-color-"],
.custom-checkbox-wrapper input[type="radio"]:checked + [class*="custom-checkbox-color-"],
.custom-checkbox-wrapper input[type="checkbox"]:checked + .custom-checkbox-generic
{
    background-color: var(--brand-secondary);
    border-color: var(--brand-secondary);
}

.checkbox-sofia-checked {
    color: var(--brand-secondary);
}


/* Privacy Text */
p[class*="privacy-"],
[class*="privacy-custom-"],
[class*="p-nonsei-"],
.p-nonsei-generic,
[class*="p-nonsei-"] a,
.p-nonsei-generic a,
.privacy-text-generic {
    color: var(--brand-text-privacy) !important;
    font-size: 14px;
}
p[class*="privacy-"],
[class*="privacy-custom-"]{
    font-size: 12px;
}


/* Privacy Check/Highlight */
p[class*="privacy-check-"],
[class*="p-nonsei-"] b#nome_link,
.privacy-highlight-generic {
    color: var(--brand-text-privacy-check);
}

/* Modali Titoli */
[class*="modal-title-"],
.modal-title-generic {
    color: var(--brand-secondary);
}

/* Modali Close Button Background */
[class*="modal-header-close-bkgr-"],
.modal-close-generic {
    background-color: var(--brand-secondary);
}

/* Bottoni Standard */
[class*="btn-"]/*:not([class*="btn-la-"])*/,
[class*="btn-la-"],
.btn-generic {
    background-color: var(--brand-btn-bg);
    color: var(--brand-btn-text);
}

/* Bottoni Secondari (es. btn-la) */
/*[class*="btn-la-"],*/
.btn-secondary-generic {
    background-color: var(--brand-btn-secondary-bg);
    color: var(--brand-btn-text);
}

/* Footer */
[class*="footer-"],
.footer-generic {
    background-color: var(--brand-footer-bg);
    color: #FFF;
}

/* Link nei paragrafi */
[class*="p-"] a,
.link-generic {
    color: var(--brand-link-color);
}

/* Alert Box */
[class*="alert-"],
.alert-generic {
    background-color: var(--brand-alert-bg) !important;
    border-bottom: 0;
    color: #FFF;
}

/* Input Codice */
[class*="codice-"],
.codice-generic {
    border-radius: 10px;
    border-color: var(--brand-border-color);
    color: var(--brand-text-privacy);
}

/* Countdown e Box Informativi */
[class*="countdown-"],
[class*="cd-"],
.box-info-generic {
    background: var(--brand-bg-alt) !important;
    color: var(--brand-text-privacy) !important;
    font-family: var(--brand-font-family);
    padding: 15px;
}
[class*="countdown-logo"]{
    background: var(--brand-bg-container) !important;
}

/* Separatori HR */
hr[class*="R"],
hr[class*="M"],
hr[class*="F"],
hr.generic {
    border-top: 2px solid var(--brand-bg-alt);
}

/* --- ESITI SOFIA --- */
/* OK */
[class*="esito-cf-sofia-frontend-ok-"],
[class*="esito-ok-"],
.esito-ok-generic {
    background-color: var(--brand-status-ok);
    color: white;
}

/* KO */
[class*="esito-cf-sofia-frontend-ko-"],
[class*="esito-ko-"],
.esito-ko-generic {
    background-color: var(--brand-status-ko);
    color: white;
}

/* WAITING */
[class*="esito-cf-sofia-frontend-waiting-"],
[class*="esito-waiting-"],
.esito-waiting-generic {
    background-color: var(--brand-status-wait);
    color: var(--brand-status-wait-text);
    font-weight: 700;
}