*{
        margin:0;
        padding:0;
}

.overlay{
        position: fixed;
        top:0;
        left:0;
        width:100%;
        height:100%;
        background-color: rgba(0,0,0,0.2);
        z-index: 90;
}

/* start header-top */
        .header-top {
                /* position: sticky;
                top: 0; */
                z-index: 1020;
                display: flex;
                justify-content: space-between;
                align-items: center;
                background-color: #fff;
                padding: 2px 4px;
                box-shadow: 0 1px 1px rgba(0,0,0,0.75);

                flex-wrap: nowrap;
                overflow-x: auto; /* fallback mobile */
        }

        /* BLOCCO SINISTRO */
        .top-menu-left {
                display: flex;
                align-items: center;
                flex-wrap: nowrap;
                min-width: 500px; /* IMPORTANTISSIMO */
        }

        .logo {
                padding: 0 47px;
                border-right: 1px solid #333;
                min-width: 200px;
                flex-shrink: 0;
        }

        .logo img {
                width: 150px;
                max-width: 100%;
        }

        /* HAMBURGER */
        .hamburger {
                border-right: 1px solid #333;
                min-width: 50px;
                flex-shrink: 0;
        }

        /* DASHBOARD LINK */
        .top-menu-left > div:last-child {
                padding-inline: 20px;
                border-right: 1px solid #333;
                display: flex;
                align-items: center;
                height: 50px;
                cursor: pointer;
                min-width: 120px;
                flex-shrink: 0;
        }

        /* BLOCCO DESTRO UTENTE */
        .user_menu {
                min-width: 250px;
                flex-shrink: 0;
        }

        .user_menu ul {
                padding: 0 50px;
                margin: 0;
                list-style: none;
                display: flex;
                gap: 10px;
                align-items: center;
                flex-wrap: nowrap;
        }

/* end header-top */

.upperbar{
        display: flex;
        justify-content: space-between;
        align-items: center;
}
.container-pulsanti{
        display: flex;
        gap: 20px;
        align-items:center;
}

.bottone_blu{
        padding:20px 5px;
        background-color:#033ba1;
        text-decoration:none;
        color:#fff;
        border:2px solid black;
        max-height:70px;
}
.bottone_bianco{
        background-color:#fff;
        text-decoration:none;
        color:#000;
        border:2px solid black;
        max-height:70px;
        cursor: pointer;
}

.help_popup{
        display: flex;
        width: 25px;
        height: 25px;
        background: orange;
        font-size: 13px;
        align-items: center;
        justify-content: center;
        color: #fff;
        border-radius: 5px;
}

.bottone_filtra{
        margin: auto 0;
        background-color:#00ff00;
        padding: 20px 5px;
}
.bottone_reset{
        margin: auto 0;
        background-color:#aa3b31;
        padding: 20px 5px;
        text-align:center;
}
.bottone_reset a{
        color:#fff;
        text-decoration:none;
}

/* NAVBAR */
.hamburger{
        cursor: pointer;
        padding-inline: 20px;
        user-select:none;
}
/* END NAVBAR */

/* layout-wrapper */
.layout-wrapper{
        display:flex;
        height:100%;
}
/* end layout-wrapper */

/* SIDEBAR */
.sidebar{
        height:100vh;
        width:250px;
        border-right:2px solid #000;
        transition: width 0.3s ease, opacity 0.2s ease;
        overflow: hidden;
        flex-shrink: 0;
}

.sidebar.collapsed{
        width: 0;
        min-width:0;
        opacity: 0;
        pointer-events: none;
}

.sidebar ul{
        list-style: none;
        padding:0;
}

.sidebar .first_list li span{
        display: block;
        width: 100%;
        padding-left: 20px;
        padding-block: 5px;
        background-color: #033ba1;
        color:#fff;
}
.sidebar.hidden {
        opacity: 0;
        transform: translateX(-100%);
        pointer-events: none;
}
/* END SIDEBAR */

/* APP */
.main-content{
        flex:1;
        overflow-y: auto;
        display: flex;
        flex-direction: column;
        background-color: #eee;
        min-width: 400px;
}
.main-content main {
        padding:20px;
}

.bottone_blu:hover{
        cursor:pointer;
}

/* END APP */

/* UTENTI */

.utente_section{
        background: lightcyan;
        border: 1px solid black;
        padding: 2px;
        margin-block: 20px; 
}

.utente_block{
        background: #fff;
        padding: 10px 20px;
        margin-block: 10px;
}

.flex_gap{
        display: flex;
        gap: 10px;
        align-items: center;
}

/* END UTENTI */

/* ERRORI */
.is-invalid {
        border: 2px solid #dc3545;
}

/* .invalid-feedback {
        color: #dc3545;
        display: block;
        margin-top: 4px;
} */
/* END ERRORI */
/* NEWSLETTER */
.fc-event,
.fc-event * {
	cursor: pointer !important;
}
/* END NEWSLETTER */
/* EVENTI */
.container_create_event{
        padding:0px 300px;
}
/* filter */
.filter-form{
        padding: 30px 10px;
        margin-block: 20px;
        background-color: #fff;
}

.form-row{
        display: flex;
        flex-wrap: wrap;
        gap: 15px;
}

.form-group{
        display: flex;
        flex-direction: column;
        width: 13%;
        min-width: 150px;
}

.form-group-filter{
        display: flex;
        flex-direction: row;
        width: 26%;
        min-width: 150px;
}

.form-group label {
        margin-bottom: 5px;
        font-weight: bold;
}

.form-group input {
        padding: 8px;
        border: 1px solid #ccc;
        border-radius: 4px;
}

.form-group select {
        padding: 8px;
        border: 1px solid #ccc;
        border-radius: 4px;
}



/* end filter */

/* nav */

.nav_create_event{
        margin-block:15px;
        display: flex;
        list-style-type: none;
        justify-content: space-around;
        width: 100%;
        padding: 0;

}

.nav_create_event .nav_section{
        color:#fff;
        flex-grow: 1;
        text-align: center;
        padding:20px 0;
        background-color: #aa3b31;
        cursor: pointer;
        transition: background-color 0.3s ease-in-out;
}

.nav_create_event .nav_section:hover,
.nav_create_event .nav_section.active{
        background-color: #db7d76;
        padding: 20px 0;
}
/* endnav */


/* general event form */

.line{
        margin-block: 20px;
}

.flex_class{
        display: flex;
}

.flex_class label.block{
        display: block;
        width: 260px;
}

.flex_class input.block{
        display: block;
        width: 300px;
}

input.block_full{
        display: block;
        width: 100%;
}

.flex_class label.block_two{
        display: block;
        width: 180px;
}

.flex_class select.block_two{
        display: block;
        width: 300px;
}

.one{
        align-items: center;
        gap:10px;
}

.gap{
        gap:70px;
        flex-wrap: wrap;
}

.tasto_aggiungi{
        text-align: center;
        padding:15px;
        background-color: #033ba1;
        color:white;
        border:4px solid #fff;
        cursor:pointer;
}
/* end general event form */

/* step 1 */
.form_scientific_responsible{
        padding:20px;
        margin-bottom: 5px;
        border:2px solid #aa3b31;
}
/* end step 1 */

/*step 3*/

/* #evento_provider{
        width:200px;
} */

.odd{
        background-color: #f6f6f6;
}
.even{
        background-color: #fff;
}

.target{
        margin-top: 30px;
}

.target_list{
        padding:0;
        margin:0;
        list-style: none;
}

.target .target_list .list{
        margin-bottom: 20px;
}

.target .target_list .destinatario{
        font-weight: bold;
        font-size: 20px;
        cursor: pointer;
        padding-block: 10px;
}

.target .target_list .destinatario:hover{
        background-color: #b3b3b3;
        transition: background-color 0.2s ease-in-out;
}

.container_calcolo_quota{
        padding-bottom: 10px;
        display: flex;
        justify-content: space-between;
}

#evento_obiettivo_formativo{
        width:100%;

}

#evento_obiettivo_formativo option{
        white-space:normal;
        overflow-wrap:break-word;
}

.discipline{
        margin-bottom: 20px;
}

.gruppo_target{
        margin-block:5px;
        border:2px solid red;
        padding:20px;
        background-color: #ccc;
}

.discipline_list{
        max-height: 200px;
        background-color: #fff;
        overflow-y: scroll;
        margin-bottom:10px;
}

.disciplina_container label{
        width:95%;
}

.disciplina_container label:hover{
        background-color: #b3b3b3;
        cursor:pointer;
}

.show{
        display: block;
}
.hidden{
        display: none;
}
/*end step 3*/

/* END EVENTI */

/* NEWSLETTER */
.calendar_container {
        width: 950px;
        margin: 30px auto;
        
}

/* END NEWSLETTER */

/*-------------------- MOBILE ---------------------- */
@media only screen and (max-width: 600px) {
        /* main container */
        .container-main{
                padding:0;
        }
        /* end main container */
        
        /* event page */
        
        /* nav */
        .nav_create_event{
                display: flex;
                list-style-type: none;
                flex-wrap: wrap;
                padding:0;
                margin:0;
        }
        .nav_create_event .nav_section{
                text-align: center;
                width: 50%;
                padding:20px 0;
        }
        .nav_create_event .nav_section:hover,
        .nav_create_event .nav_section.active{
                text-align: center;
                background-color: #db7d76;
                padding:20px 0;
        }
        /* endnav */
        

        /* form event container */
        .event-container{
                padding-top:20px;
        }
        /* end form event container */
        
        /* step 1 */
        
        /* end step 1 */
        /* end event page */
}