:root{
    --primary: #CC0033;
    --primary-hover: #990026;
    --grey: #999;
    --grey-dark: #333;
    --grey-darker: #111;
}
/* CSS reset*/
html, body{height:100%;}
html, body, h1, h2, h3, h4, h5, h6, p, ol, ul, li, pre, code, address, variable, form, fieldset, blockquote { padding: 0; margin: 0; font-size: 100%; font-weight: normal; }
table { border-collapse: collapse; border-spacing: 0; }
td, th, caption { font-weight: normal; text-align: left; }
img, fieldset { border: 0; }
ol { padding-left: 1.4em; list-style: decimal; }
ul { padding-left: 1.4em; list-style: square; }
ul li{padding: 0.5rem;}
q:before, q:after { content: ''; }

.list-group-item {
    position: relative;
    display: block;
    padding: .5rem 1rem;
    color: #d5d5d5;
    text-decoration: none;
    background-color: transparent;
    border: 1px solid rgba(255, 255, 255, .125);
}
hr {
    margin: 3rem 0;
    color: inherit;
    background-color: currentColor;
    opacity: .25;
}

html, body { margin:0px; padding:0px; }
/*#wrap { float:left; margin:0px 0px 0px 0px; width:100%;}*/
#wrap { padding-bottom: 0; padding-top:0;}
@media only screen and (min-width: 992px) {
	#wrap { height:calc(100vh - 116px);}
}
.wrapper, .container-fluid {
    margin-top: 0;
    margin-bottom: 0;
    padding-bottom: var(--bs-gutter-x,.75rem);
    padding-top: var(--bs-gutter-x,.75rem);
}

body { background-color: #000; border: 0; color: #d5d5d5!important; font-size:1rem!important; line-height:1.25rem!important; font-family: Arial, Helvetica, sans-serif; }
body.students-area {padding-top: 120px; font-size: 1rem;letter-spacing: 0.3px;text-rendering: optimizeLegibility;}
p { margin:0px 0px 10px 0px;}
a, a:visited, a:hover, a:active { color:var(--grey); text-decoration:underline;}
a:hover {color:#fff;}
#ui-datepicker-div { z-index:100;}
.minh-100{min-height:100%;}
.small, small {
    font-size: .675em;
    line-height: 1.2em;
}

.btn-primary {
    color: #fff;
    background-color: var(--primary);
    border-color: var(--primary);
	text-decoration: none!important;
	transition: all 0.3s;
	letter-spacing: initial!important;
}
.btn-primary:hover, .btn-primary:active, input.btn-primary:hover, input.btn-primary:active {
    background-color: var(--primary-hover) !important;
    border-color: var(--primary) !important;
    color: #fff !important;
}
.btn-primary:hover svg, .btn-primary:active svg, input.btn-primary:hover svg, input.btn-primary:active svg {
    color: #fff !important;
}
.btn-secondary, input.btn-secondary {
    color: #fff!important;
    background-color: #000!important;
    border-color: #fff!important;
	text-decoration: none!important;
	transition: all 0.3s;
	letter-spacing: initial!important;
}
.btn-secondary:hover, .btn-secondary:active, input.btn-secondary:hover, input.btn-secondary:active {
    background-color: #fff !important;
    border-color: #fff !important;
    color: #000 !important;
}
.btn-secondary:hover svg, .btn-secondary:active svg, input.btn-secondary:hover svg, input.btn-secondary:active svg {
    color: #000 !important;
}
.toggle-btn {
    background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAyklEQVQ4T42TaxHCQAyENw5wAhLACVUAUkABOCkSwEkdhNmbpHNckzv689L98toIAKjqGcAFwElEFr5ln6ruAMwA7iLyFBM/TPDuQSrxwf6fCKBoX2UMIYGYkg8BLOnVg2RiAEexGaQQq4w9e9klcxGLLAUwgDAcihlYAR1IvZA1sz/+AAaQjXhTQQVoe2Yo3E7UQiT2ijeQdojRtClOfVKvMVyVpU594kZK9zzySWTlcNqZY9tjCsUds00+A57z1e35xzlzJjee8xf0HYp+cOZQUQAAAABJRU5ErkJggg==) no-repeat 39px center!important;
    border: 1px solid #e74c3c;
}
.toggle-btn.active {
    background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAmUlEQVQ4T6WT0RWDMAhFeZs4ipu0mawZpaO4yevBc6hUIWLNd+4NeQDk5sE/PMkZwFvZywKSTxF5iUgH0C4JHGyF97IggFVSqyCFga0CvQSg70Mdwd8QSSr4sGBMcgavAgdvwQCtApvA2uKr1x7Pu++06ItrF5LXPB/CP4M0kKTwYRIDyRAOR9lJTuF0F0hOAJbKopVHOZN9ACS0UgowIx8ZAAAAAElFTkSuQmCC) no-repeat 10px center!important;
    border: 1px solid #2ecc71;
}
/* INPUTS */
input[type="checkbox"] {
    accent-color: var(--grey-dark);
}
.form-control, select, input[type=text]{
    font-size: 1rem;
}
.form-control{
    border-radius: 0.1rem !important;
    padding: 0.175rem 0.75rem;
}
.form-select {line-height: 1rem;border-radius: 0.1rem !important;}

.welcome-text{font-size: 14vw; line-height: 14vw;}
@media only screen and (min-width: 992px) {
	.welcome-text{font-size: 6vw; line-height: 6vw;}
}
.form-control, select, input[type=text], .select2-container--default .select2-selection--single, select.form-control[size]{
    min-width: auto;
}
@media only screen and (max-width: 991px) {
    .mobile-w-100{width:100%!important}
}

/* LOGIN */
#infoBarLogin { width:100%; padding:7px 0px 7px 0px; border-top: 1px solid var(--grey-dark); clear:both;}
.rowLogin label{ width:43%; display:inline;}
.rowLogin#alert { width:100%; background-color:var(--primary); padding:15px 0 5px 0; text-align:center;}
.rowLoginModal#alert p { float:left; width:90%; background-color:var(--primary); padding:15px; text-align:center; margin:5px;}
#student_selected_feeid{    background: var(--grey-darker);border: 1px solid var(--grey-dark);color: var(--grey);font-size: 0.8rem;}
#student_selected_feeid_mobile{    background: var(--grey-darker);border: 1px solid var(--grey-dark);color: var(--grey);font-size: 0.8rem;}

#header { width:100%; position: fixed;top: 0; z-index: 99; display: flex; flex-direction: column;background: #000;height:116px;}
@media only screen and (min-width: 992px) {
	#header { height:116px;}
}
.top-header{display:flex; align-items: center; justify-content: space-between;}
#logo{margin-left: calc(1.5rem * .5);}
#logo a { display:flex; width:200px; height:60px; border:0px; background-image: url('../images/istituto_marangoni_logo.gif'); background-position:left top; background-repeat:no-repeat; background-size: contain;}
@media only screen and (min-width: 992px) {
	#logo a { width:358px; height:70px;}
}
#intranetArgument { float:right; margin:1rem; }
.intranetArgument-text, .intranet-area{
	text-align:right; font-size:0.7rem; text-transform:uppercase; font-weight: 700; color:#fff;
}
@media only screen and (min-width: 992px) {
	.intranetArgument-text, .intranet-area{
		font-size:0.7rem;
	}
}
.intranet-area{
	text-align: left;
    padding: calc(1.5rem * .5);
    border-top: 1px solid var(--grey-dark);
    border-bottom: 1px solid var(--grey-dark);
}
#infoBar { display:flex; width:100%; padding:7px 0px 7px 0px; border-top: 1px solid var(--grey-dark); border-bottom: 1px solid var(--grey-dark); clear:both;display:flex;align-items:flex-start;justify-content:flex-start;flex-direction:column;background:var(--grey-darker);}
@media only screen and (min-width: 992px) {
	#infoBar { flex-direction: row; align-items:center;justify-content: flex-start;}
}


.infoitem { margin:0px; font-size:0.8em; color:var(--grey);letter-spacing: 0.5px;}
@media only screen and (min-width: 992px) {
	.infoitem { margin-right:calc(1.5rem * .5);margin-left:calc(1.5rem * .5); font-size:0.8em; color:var(--grey);letter-spacing: 0.5px;}
    .infoitem.user-name {text-transform: capitalize;}
}
@media only screen and (max-width: 991px) {
	.infoitem.user-name { font-size:1.2rem;text-transform: capitalize;}
}
.welcome-anim::before {
	animation: ruota 2s linear infinite;
	display: inline-block;
}

#logOut { flex:2; text-align:right; margin-right:calc(1.5rem * .5);}
#logOut a{ text-decoration:underline; color:var(--grey); padding:0px; text-align:right; font-size:0.8em; color:var(--grey); }
#leftCol{
	background-color: var(--grey-darker);
}
@media only screen and (min-width: 992px) {
	#leftCol{width:200px;}
}
.offcanvas-header .btn-close {
    padding: .75rem .75rem;
    margin-top: 0;
    margin-right: 0;
    margin-bottom: 0;
}
#rightColBox{
	padding-top: calc(var(--bs-gutter-x)* .5);
	padding-bottom: calc(var(--bs-gutter-x)* .5);
}
@media only screen and (min-width: 992px) {
	#rightColBox{width: calc(100% - 200px);}
}
#sidebar-nav {width: 100%;}
@media only screen and (min-width: 992px) {
	#sidebar-nav {width: 200px;}
}
#sidebar-nav { margin:0px 0px 0px 0px; padding:0px; list-style: none;}
#sidebar-nav li  { margin:0px; padding:0px; overflow: hidden;   }
#sidebar-nav a { transition: all 0.3s; color:var(--grey); font-size:0.8rem; letter-spacing: 0.5px; font-weight:normal; margin:0px; padding:0.5rem; text-decoration:none; background-color:var(--grey-darker); border-bottom: 1px solid var(--grey-dark); border-top: 0; }
#sidebar-nav a:hover{background: var(--grey-dark);}
#sidebar-nav a:last-child{border-bottom:0;}
#sidebar-nav a:visited, #sidebar-nav a:active, #sidebar-nav a:hover { text-decoration:none;}
.collapse.show {
    padding: 0rem;
    background: transparent;
    display: block;
}
.menu-desktop-toggle-btn {
	width: 3rem;
	padding: 0.5rem;
	display: flex;
	justify-content: center;
	align-items: center;
}
a.menu-desktop-toggle-btn[data-toggle=collapse]:hover, a.menu-desktop-toggle-btn[aria-expanded=false]:hover, label[data-toggle=collapse]:hover, label[aria-expanded=false]:hover {
    color: #666 !important;
    border-color: transparent !important;
    background-color: transparent !important;
    border: 0 !important;
}
a.menu-desktop-toggle-btn[data-toggle=collapse], a.menu-desktop-toggle-btn[aria-expanded=false], label[data-toggle=collapse], label[aria-expanded=false] {
    background-color: transparent !important;
    color: #666 !important;
    border-color: transparent !important;
    border: 0 !important;
    cursor: pointer;
    min-height: auto;
}
.menu-desktop-toggle-btn .fa-bars-staggered{
	display: none;
}
.menu-desktop-toggle-btn .fa-xmark{
	display: block;
}
.menu-desktop-toggle-btn.collapsed .fa-bars-staggered{
	display: block;
}
.menu-desktop-toggle-btn.collapsed .fa-xmark{
	display: none;
}
.offcanvas-menu-btn{
	color: #fff;
    font-size: 1rem!important;
}
.offcanvas {
    position: fixed;
    bottom: 0;
    z-index: 1050;
    display: flex;
    flex-direction: column;
    max-width: 100%;
    visibility: hidden;
    background-color: rgba(0,0,0,0.7);
    background-clip: padding-box;
    outline: 0;
    transition: transform .3s ease-in-out;
	backdrop-filter: blur(10px);
}
.offcanvas .btn-close{color: #fff!important;background:none;opacity: 1;}
h1, h2 { font-family: Arial, Helvetica, sans-serif; color:#fff; font-weight:700; letter-spacing: 1px; line-height:30px; margin:0px 0px 30px 0px;text-align:left}
h1, .h1 {font-size:2.5rem;line-height:2.5rem;margin-bottom: 1rem; }
@media only screen and (max-width: 991px) {
    h1, .h1{
        margin-bottom: 3rem; 
        font-size:1.75rem;
        line-height:1.75rem;
    }
}
h2, .h2 {text-transform: initial;margin-bottom: 10px;line-height: 1.50rem;font-size:1.75rem;font-weight: 400;}
@media only screen and (max-width: 991px) {
    h2, .h2 {
        margin-bottom: 10px; 
        font-size:1.45rem;
    }
}
#boxMenuLeft { width:186px; margin:0px 0px 0px 0px; position:absolute;}
ul#menuleft{ float:left; width:186px; margin:0px 0px 0px 0px; padding:0px; list-style: none;	clear: both;}
ul#menuleft li{ float:left; width:186px; margin:0px; padding:0px; overflow: hidden;   }
ul#menuleft a{ float:left; color:#bbbdbe; font-size:1.083em; font-weight:normal; width:176px; margin:0px 0px 2px 0px; padding:5px 5px 5px 10px; text-decoration:none; background-color:var(--grey-darker); }
ul#menuleft a:visited, ul#menuleft a:active, ul#menuleft a:hover{ text-decoration:none;}

.sectionTitleBox {display: flex; align-items: center; justify-content: space-between; width:100%; padding:0.5rem; margin:10px 0px 10px 0px; background-color:var(--grey-darker); font-weight:bold;letter-spacing: 0.8px;}
.sectionAction, .sectionAction a { font-weight:normal; text-decoration:none;}
.sectionAction .btn-primary a {text-decoration: none;} 
.sectionTitle{flex: 2;}

.sectionAction{ margin-left:1rem;}
.sectionAction a {transition: all 0.3s;}
.sectionAction a:hover{text-decoration: underline;}

.section-content{display: flex;justify-content: space-between;flex-direction: column;}
@media only screen and (min-width: 992px) {
	.section-content{flex-direction: row;justify-content: space-between;}
}

legend { float:left; border-bottom:1px dotted var(--primary); color:var(--primary); font-size:1.25em; font-weight:normal; width:100%; padding:3px 0; margin:20px 0 0 0;  } 
legend span { margin:0 5px;}
textarea {width:100%; background-color:#e1e1e1; color:var(--grey-dark); border:0px; font-size:1.05em; line-height:1.25em; font-family: Arial, Helvetica, sans-serif; -moz-border-radius: 3px;
border-radius: 3px;}

/* TABELLA */
table th {font-size: 0.7rem;color:var(--grey);}
table.data { border:0px; width:100%; border-collapse: collapse; border-spacing: 0px; padding: 0px;}
table.data tr { background-color: #000;}
.students-area table.data tr:nth-child(even):hover { background-color: var(--grey-dark);}
.students-area table.data tr:nth-child(odd):hover { background-color: var(--grey-dark);}
table.data tbody tr { background-color: #000;}
table.data td { padding:5px; border:0px; border-bottom:1px solid var(--grey-darker);}
table.data tr.head { background-color:var(--grey-darker);}
table.data tr td { border-right:3px solid var(--grey-darker); border-bottom:1px solid #fff; border-top: 1px solid #fff; font-size: 0.817em; margin-left: 5px;}
table.data tr.head td { border-right:3px solid var(--grey-darker); border-bottom:1px solid #CCC; font-size:1.117em; margin-left:0px;}
table.data tr.finalMark { background-color: var(--grey-dark);}
table.data tr.finalMark td { border-bottom:1px solid var(--grey-darker); font-size:1.167em; font-weight:bold; height:20px;}
table.data td { border-bottom: 0px; }


/* TABELLA QUESTIONARIO */
table.dataQuest { border:0px; width:100%; border-collapse: collapse; border-spacing: 0px; padding: 0px;}
table.dataQuest td { padding:5px; border:0px; border-bottom:1px solid var(--grey-darker);}
table.dataQuest tr.head { background-color:var(--grey-darker);}
table.dataQuest tr.head td { border-right:3px solid var(--grey-darker); border-bottom:1px solid #CCC; font-size:0.917em; margin-left:0px;}
table.dataQuest td { border-bottom: 0px; }
table.dataQuest label { text-transform:lowercase;}

/* TABELLA QUESTIONARIO CHECKBOX E COMMENTI */
table.dataQuestAndComments { border:0px; width:100%; border-collapse: collapse; border-spacing: 0px; padding: 0px;}
table.dataQuestAndComments td { padding:5px; border:0px; border-bottom:1px solid var(--grey-darker);}
table.dataQuestAndComments tr.head { background-color:var(--grey-darker);}
table.dataQuestAndComments tr.head td { border-right:3px solid var(--grey-darker); border-bottom:1px solid #CCC; font-size:0.917em; margin-left:0px;}
table.dataQuestAndComments td { border-bottom: 0px; }
table.dataQuestAndComments label { float:left; text-transform:none; text-align:right; width:85%;}
.checkbox span { width:5%; float:left;}
table.dataQuestAndComments span { margin:0 5px 0 0;}
table.dataQuestAndComments td.checkbox {width:15%; text-align:right; border-bottom:1px solid var(--grey-darker); padding-right:10px;} }

table.dataQuest tr.headQuest td { border-right:3px solid var(--grey-darker); font-size:0.917em; margin-left:0px;}
.row#alert { float:left; width:100%; border:1px solid #cf0000; padding:5px 0 5px 0; margin:10px 0; text-align:center;}


/* FORM */
form { width:100%; display:block;}
fieldset { float:left; width:100%; display:block;}
/*input, select { height:25px;}*/
.button { height:30px; padding-left:5px; padding-right:5px;}

.rowBox { display:block; padding:0.5rem;}
@media only screen and (min-width: 992px) {
	.rowBox { display:block; padding:1rem;}
	.rowBox .row label { width:22%;}
}
.rowBox .row input{ width:100%; height:25px;}
.rowBox .row { display: flex;align-items: flex-start;flex-direction: column;justify-content: flex-start;margin-bottom: 0.5rem;}
@media only screen and (min-width: 992px) {
	.rowBox .row {flex-direction: row;}
}
.rowBox .row label { margin: 0;font-size: 0.7rem;text-align: left;}

@media only screen and (min-width: 992px) {
	.rowBox .row label { flex: 0 1 30vw; margin: 0;font-size: 0.8rem;text-align: right;}
	.rowBox .row p { width: auto;}
}

.rowBoxHalf { display:block; float:left; width:100%;padding:0.5rem;}
@media only screen and (min-width: 992px) {
	.rowBoxHalf { width:50%;padding:1rem;}
}
.rowBoxHalf .row { display: flex;align-items: flex-start;flex-direction: column;justify-content: flex-start;margin-bottom: 0.5rem;}
@media only screen and (min-width: 992px) {
	.rowBoxHalf .row {flex-direction: row;}
}
.rowBoxHalf .row label { margin: 0;font-size: 0.7rem;text-align: left;}
@media only screen and (min-width: 992px) {
	.rowBoxHalf .row label { flex: 0 1 50%; margin: 0;font-size: 0.8rem;text-align: right;}
	.rowBoxHalf .row p { width: auto;flex: 1;}
}


/*.row, .rowLogin { display:block; float:left; width:100%; padding:5px 0px;}*/
.rowBox .row{margin-bottom: 0.5rem;padding-bottom:0.5rem;display: flex;justify-content: flex-start;flex-direction: column;border-bottom: 1px solid var(--grey-darker);}
.rowBox .row p { margin:0px;width: auto;}
.rowBox .row label {margin: 0;}
@media only screen and (min-width: 992px) {
	.rowBox .row{margin-bottom: 0.5rem;padding-bottom:0;display: flex;justify-content: flex-start;flex-direction: row;border-bottom:0;}
	.rowBox .row label { flex:0 1 30vw;}
}

.modalColLeft { float:left; width:80%;}
.modalColRight { float:left; width:18%;}
.rowBoxModal { display:block; float:left; width:100%;}
.rowBoxModal .row label { width:30%;}
.rowBoxModal .row p { float:left; width:65%;}
.rowBoxModal .row input { float:left; width:100%;}
.rowBoxModal .row select { float:left; width:102%;}
.rowBoxModal .row textarea { float:left; width:100%; height:60px;}
.rowBoxModal .row .button { float:left; width:auto; margin:0;}
.rowBoxModal#image { margin:0 10px 0 0;}

.overflowWrapper { height:350px; overflow-y:scroll; margin-right:5px;}

.formNote { font-size:0.917em; color:var(--grey);}

.formButton { text-align:center;}

label { color:var(--grey); text-transform:uppercase; font-size: 0.7rem;}
@media only screen and (min-width: 992px) {
	label {font-size: 0.7rem;}
}
.rowBox label { display:block; float:left; margin:3px 5px 0px 0px; text-align:right;}

span { float:left; margin:3px 5px 0px 0px;}
/*.button { border-radius:4px; color:var(--primary); font-weight:bold;}*/
/*input.button { margin:3px; background-color:#fff; color:var(--primary); font-weight:bold;}*/
/*select { display:block; float:left; margin:0px; padding:1px; border:1px solid #666;}*/
/*
.borderBox { display:block; float:left; width:100%; border:1px solid var(--grey); padding:10px 0px; margin:10px 0px; }
.borderBox p { margin:0; text-align:center;}
.borderBox p label, .borderBox p span { width:auto; float:none; display:inline;}
*/
.borderBox {clear: both;border: 1px solid var(--grey-dark); border-radius: 2px;padding: 1rem;}
.borderBox label{float: none;display: flex;}

/* PROFILO */
.rowBox#image { width:20%;display: flex;}
@media only screen and (min-width: 992px) {
	.rowBox#image {justify-content: flex-end;}
}
#profileImage { display:block; float:left; width:100%;min-width: 100px;max-width: 100px; border-radius: 2px;overflow: hidden;}
#profileImage img { width:100%;}

#name { width:10%;}
#familyName { width:10%;}

/* FOOTER */
#boxFooter, .push {height: 107px; clear:both; padding: 0; width: 100%; background-image: url('../images/bg_footer.png'); background-repeat: repeat-x; background-position:top center;}

#footer {margin: 0px auto; border: 0; width: 960px; height:107px; background-image: url('../images/logo_montana_footer.png'); background-position:right top; background-repeat:no-repeat; }
#footer a {float:left; margin:43px 0px 0px 0px; height:30px; text-decoration: none; color: #cfd1d2; background-image: url('../images/btn_footer.gif'); background-repeat: no-repeat; background-position:13px 0px; padding:17px 0px 0px 53px; }
#footer a:link { text-decoration: none; color: #cfd1d2; }
#footer a:visited { text-decoration: none; color: #cfd1d2; }
#footer a:hover { text-decoration: none; color: #cfd1d2; }
#footer a:active { text-decoration: none; color: #cfd1d2; }
.footerLink {  padding:0px 0px 0px 53px; height:30px;}

fieldset {background-color: #000;}
h3 {
	color: #fff;
	font-size: 1.15rem;
	margin-bottom: .5rem;
	font-family: inherit;
	font-weight: 500;
	line-height: 1.2;
	color: inherit;
    text-transform: initial;
}


/* IM01821 */
/* table.dataTable tbody tr:nth-child(2n), .table tbody tr:nth-child(2n), table tbody tr:nth-child(2n) {
	background-color: #000;
	color: #525252;
}

table.dataTable tbody tr:nth-child(2n+1), .table tbody tr:nth-child(2n+1), table tbody tr:nth-child(2n+1) {
	background-color: #525252;
	color: #000;
} */

table.dataTable tr td {
	background-color: #000;
}
.table{
	--bs-table-bg: transparent;
    --bs-table-accent-bg: transparent;
    --bs-table-striped-color: var(--grey);
    --bs-table-striped-bg: rgba(0, 0, 0, 0.05);
    --bs-table-active-color: var(--grey);
    --bs-table-active-bg: rgba(0, 0, 0, 0.1);
    --bs-table-hover-color: #eee;
    --bs-table-hover-bg: rgba(0, 0, 0, 0.075);
    width: 100%;
    margin-bottom: 1rem;
    color: #fff;
    vertical-align: top;
    border-color: var(--grey-darker);
}
table.dataTable, .table, table {
    border: 1px solid var(--grey-darker);
}
table.dataTable tr td {
    background-color: transparent;
}
table.dataTable tr td, table.dataTable tr th, .table tr td, .table tr th, table tr td, table tr th {
    vertical-align: middle;
    border-right: 1px solid var(--grey-darker);
}
table td {
    border-bottom: var(--grey-darker) !important;
}
table td p {margin-bottom:0;}
table.dataTable tbody tr:last-child, .table tbody tr:last-child, table tbody tr:last-child {
    border-bottom: 1px solid var(--grey-darker);
}
table.dataTable tbody tr:nth-child(even), .table tbody tr:nth-child(even), table tbody tr:nth-child(even) {
    background: transparent;
    transition: all 0.3s;
}
table.dataTable tbody tr:nth-child(odd), .table tbody tr:nth-child(odd), table tbody tr:nth-child(odd) {
    background: rgba(255,255,255,0.1);
    transition: all 0.3s;
}
.table-striped>tbody>tr:nth-of-type(odd) {
    --bs-table-accent-bg: var(--bs-table-striped-bg);
    color: var(--bs-table-striped-color);
}
.table th, .table td {
    border-top: 1px solid var(--grey-darker);
}
table.dataTable tbody tr:nth-child(odd):hover, .table tbody tr:nth-child(odd):hover, table tbody tr:nth-child(odd):hover {
    background: var(--grey-dark);
}
table.dataTable tbody tr:nth-child(even):hover, .table tbody tr:nth-child(even):hover, table tbody tr:nth-child(even):hover {
    background: var(--grey-dark);
}
table.dataTable tbody th, table.dataTable tbody td {
    padding: 1rem 0.5rem !important;
}
@media only screen and (min-width: 992px) {
    table.dataTable tbody th, table.dataTable tbody td {
        padding: 0.8rem 0.35rem !important;
    }
}
.table>:not(:last-child)>:last-child>* {
    border-bottom-color: #fff;
	border-bottom-width: 1px;
}
.table tr.head {background:#000!important;}
.table tr.head td{border-bottom: 1px solid #fff!important;}
.dataTables_info{font-size: 0.7rem;color: var(--grey);}
.dataTables_filter label{margin-bottom: 0.25rem;}
.dataTables_filter input[type=search]{margin-left: 0.5rem;}
.check-group{margin-bottom: 0.75rem;}

@media only screen and (max-width: 991px) {
    .table-responsive tbody td, .table-responsive th {
        #fff-space: nowrap;
    }
    .table-responsive {
        padding-top: 1rem;
        padding-bottom: 1rem;
    }
}
#columnVisibility{
    display: flex;
    align-items: center;
}
@media only screen and (max-width: 991px) {
    #columnVisibility{
        flex-direction: column;
        align-items: flex-start;
        margin-bottom: 1rem;
    }
    #columnVisibility ul {
        flex-direction: row!important;
        padding-left: 0;
    }
    #columnVisibility ul li {
        margin-left: 0!important;
    }
}
#columnVisibility label{
    margin-bottom: 0;
}
#columnVisibility ul{
    list-style: none;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
}
#columnVisibility ul li {
    margin: 0 1rem;
}
@media only screen and (min-width: 992px) {
    #columnVisibility ul{
        flex-direction: row;
        align-items: center;
    }
}
/* DATATABLES */
/* pagination */
.dt-paging.paging_full_numbers .pagination LI {
    padding: 0;
}
.page-item.disabled .page-link {
    color: var(--grey);
    pointer-events: none;
    background-color: var(--grey-dark);
    border-color: var(--grey-darker);
}
.page-item.active .page-link {
    z-index: 3;
    color: #fff;
    background-color: var(--grey-darker);
    border-color: var(--grey-darker);
}
.page-link {
    position: relative;
    display: block;
    color: #fff;
    text-decoration: none;
    background-color: var(--grey-dark);
    border: 1px solid var(--grey-darker);
    transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}
div.dt-container div.dt-info {
    padding-top: .85em;
    font-size: 0.7rem;
    color: var(--grey);
}
table.dataTable.dtr-inline.collapsed>tbody>tr>td.dtr-control:before, table.dataTable.dtr-inline.collapsed>tbody>tr>th.dtr-control:before {
    margin-right: .5em;
    display: inline-block;
    box-sizing: border-box;
    content: "";
    border-top: 5px solid transparent;
    border-left: 10px solid rgba(255, 255, 255, 0.5);
    border-bottom: 5px solid transparent;
    border-right: 0px solid transparent;
}
/* change expand icon on mobile view */
table.dataTable.dtr-inline.collapsed>tbody>tr>td.dtr-control:before, table.dataTable.dtr-inline.collapsed>tbody>tr>th.dtr-control:before {
    margin-right: .5em;
    display: inline-block;
    box-sizing: border-box;
    font-family: 'Font Awesome 6 Free';
    font-size: 1rem;
    content: "\2b"; /* plus icon */
    border-top: 0;
    border-left: 0;
    border-bottom: 0;
    border-right: 0;
}
table.dataTable.dtr-inline.collapsed>tbody>tr.dtr-expanded>td.dtr-control:before, table.dataTable.dtr-inline.collapsed>tbody>tr.dtr-expanded>th.dtr-control:before {
    content: "\f068"; /* minus icon */
    border-top: 0;
    border-left: 0;
    border-bottom: 0;
    border-right: 0;
}
/* */
table.dataTable>tbody>tr.child ul.dtr-details {
    display: inline-block;
    list-style-type: none;
    margin: 0;
    padding: 0;
    width: 100%;
}
table.dataTable>tbody>tr.child ul.dtr-details>li {
    border-bottom: 1px solid var(--grey-dark);
    padding: .5em 0;
}
@media only screen and (max-width: 991px) {
    table {
        font-size: 0.9rem;
        line-height: 0.875rem;
    }
}
table.dataTable thead>tr>th.dt-orderable-asc span.dt-column-order, table.dataTable thead>tr>th.dt-orderable-desc span.dt-column-order, table.dataTable thead>tr>th.dt-ordering-asc span.dt-column-order, table.dataTable thead>tr>th.dt-ordering-desc span.dt-column-order, table.dataTable thead>tr>td.dt-orderable-asc span.dt-column-order, table.dataTable thead>tr>td.dt-orderable-desc span.dt-column-order, table.dataTable thead>tr>td.dt-ordering-asc span.dt-column-order, table.dataTable thead>tr>td.dt-ordering-desc span.dt-column-order {
    position: absolute;
    right: 0px;
    top: 0;
    bottom: 0;
    width: 12px;
}
table.dataTable thead th {
    padding: 0.2rem 0.95rem 0.2rem 0.35rem !important;
}
/* search field */
@media screen and (max-width: 991px) {
    div.dt-container div.dt-length, div.dt-container div.dt-search, div.dt-container div.dt-info, div.dt-container div.dt-paging {
        text-align: center;
        margin-bottom: 2rem;
    }
}
/* correggo colonna che esce dalla pagina in caso di testi molto lunghi */
table.dataTable.nowrap th, table.dataTable.nowrap td {
    white-space: nowrap;
    max-width: 80vw;
    text-overflow: ellipsis;
    overflow: hidden;
}
/* INITIAL PAGE */
.dashboard-card-container{
    display: flex;
    -webkit-column-gap: 1rem;
    -moz-column-gap: 1rem;
    column-gap: 1rem;
    overflow-x: auto;
    margin-right: -0.75rem;
    -ms-overflow-style: none;  /* Internet Explorer 10+ */
    scrollbar-width: none;  /* Firefox */
}
.dashboard-card-container::-webkit-scrollbar { display: none;  /* Safari and Chrome */}
@media only screen and (min-width: 992px) {
    .dashboard-card-container{
        overflow-x: hidden;
        margin-right: 0;
    }
}
.dashboard-card-container .card{
    flex: 1;
    width: 65%;
    min-width: 65%;
}
.dashboard-card-container .card:last-child{
    margin-right: 0.75rem;
}
@media only screen and (min-width: 992px) {
    .dashboard-card-container .card{
        flex: 1;
        width: calc(25% - 1rem);
        min-width: calc(25% - 1rem);
    }
    .dashboard-card-container .card:last-child{
        margin-right: 0;
    }
}
.dashboard-card-container .card.bg-dark{
    background-color: var(--grey-darker) !important;
}
.dashboard-card-container .card .card-body {
    display: flex; flex-direction: column;
}
.dashboard-card-container .card .card-body .card-title{
    min-height: 2rem;
}
.dashboard-card-container .card .card-body .card-text{
    flex:2;
    text-transform: lowercase;
    color: var(--grey);
    margin-bottom: 1rem;
}
/* ACCORDION */
button.accordion {
    background-color: var(--grey-darker)!important;
    color: #eee!important;
    cursor: pointer;
    padding: 18px;
    width: 100%;
    border: none;
    text-align: left;
    outline: none;
    font-size: 1rem!important;
    transition: 0.4s;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 2px;
}
button.accordion.active, button.accordion:hover {
    background-color: var(--grey-dark)!important;
}
button.accordion:after {
    content: '\02795';
    font-size: 13px;
    color: #fff!important;
    float: right;
    margin-left: 5px;
    filter: brightness(400%);
}
/* TABS */
div.tab {
    overflow: hidden;
    border: 1px solid var(--grey-dark)!important;
    background-color: #000!important;
    border-bottom: 0px solid var(--grey-dark)!important;
}
div.tab button {
    background-color: inherit;
    float: left;
    border: none;
    outline: none;
    cursor: pointer;
    padding: 0.5rem!important;
    transition: 0.3s;
    color: var(--grey)!important;
}
div.tab button:hover {
    color: #eee!important;
    background-color: var(--grey-darker) !important;
}
div.tab button.active {
    background-color: var(--grey-dark)!important;
    color: #eee!important;
}
div.panel-custom{
    padding: 1rem!important;
    border: 1px solid var(--grey-dark);
}
.tabcontent {
    display: none;
    padding: 0.5rem!important;
    border: 1px solid var(--grey-dark)!important;
    border-top: none;
}
/* BUTTONS */
.btn{
    font-size: .625rem;
    letter-spacing: 2px!important;
    text-transform: uppercase;
}
.btn-group-lg>.btn, .btn-lg {
    padding: .5rem 1rem;
    font-size: 1.25rem;
    border-radius: .3rem;
}
.btn-primary.disabled, .btn-primary:disabled {
    color: #fff;
    background-color: var(--grey-dark);
    border-color: var(--grey);
    cursor: not-allowed;
}
.btn.disabled, .btn:disabled, fieldset:disabled .btn {
    pointer-events: none;
    opacity: .45;
}
.btn-primary:hover svg {
    color: #fff!important;
}
.btn-primary, input.btn-primary {
    color: #fff !important;
    background-color: var(--primary);
    border-color: var(--primary);
    margin: 0 2px;
}
.btn-primary:not(:disabled):not(.disabled):active, .btn-primary:not(:disabled):not(.disabled).active, .show > .btn-primary.dropdown-toggle {
    color: #fff !important;
    background-color: var(--primary);
    border-color: var(--primary);
    margin: 0 2px;
}
.btn-check:active+.btn-primary, .btn-check:checked+.btn-primary, .btn-primary.active, .btn-primary:active, .show>.btn-primary.dropdown-toggle {
    color: #fff !important;
    background-color: var(--primary);
    border-color: var(--primary);
    margin: 0 2px;
}
.btn-check:focus+.btn-primary, .btn-primary:focus {
    color: #fff;
    background-color: var(--primary-hover);
    border-color: var(--primary);
    box-shadow: none;
}
.btn-secondary.text-success {
    color: #54e96d !important;
    border-color: #54e96d !important;
}
.btn-secondary.text-success:hover {
    color: #000 !important;
    border-color: #54e96d !important;
    background-color: #54e96d !important;
}
.btn-secondary.text-warning {
    color: #ffc107 !important;
    border-color: #ffc107 !important;
}
.btn-secondary.text-warning:hover {
    color: #000 !important;
    border-color: #ffc107 !important;
    background-color: #ffc107 !important;
}
.btn-secondary.text-danger {
    color: #dc3545 !important;
    border-color: #dc3545 !important;
}
.btn-secondary.text-danger:hover {
    color: #000 !important;
    border-color: #dc3545 !important;
    background-color: #dc3545 !important;
}
.btn-secondary.text-primary {
    color: #0d6efd !important;
    border-color: #0d6efd !important;
}
.btn-secondary.text-primary:hover {
    color: #000 !important;
    border-color: #0d6efd !important;
    background-color: #0d6efd !important;
}
@media only screen and (max-width: 991px) {
    .mob-w-100{width: 100%;}
}
@media only screen and (max-width: 991px) {
    [data-tooltip]:before {
        left: 0;
        margin-left: 0;
        width: 93vw;
    }
}

/* CAREER MODAL */
#tee_popup_modal-content{
    height: 80vh !important;
}
#tee_popup_modal-content.modal-content {
    background-color: #000;
    border: 1px solid rgba(255, 255, 255, .2);
}
@media only screen and (max-width: 991px) {
    #tee_popup_modal.modal.show .modal-dialog {
        width: 100%!important;
        margin: 0;
    }
}

::-webkit-scrollbar {
    height: 8px;              /* height of horizontal scrollbar ← You're missing this */
    width: 8px;               /* width of vertical scrollbar */
}