#dashboard{
	display: flex;
	height: 100vh;
	width: 100vw;
	position: relative;
}

/* ===================== DASHBOARD MODAL SIDEBAR ===================== */
#dashboard #dashboard-modal-sidebar-container{
	position: fixed;
	z-index: 9;
	top: 0;
	left: 0;
	height: 100vh;
	width: 100vw;
	display: flex;
	visibility: hidden;
	opacity: 0;
}
#dashboard #dashboard-modal-sidebar-container .modal-cover{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: black;
	opacity: 0;
	visibility: hidden;
}
#dashboard #dashboard-modal-sidebar-container .modal-sidebar{
	position: relative;
	display: flex;
	flex-direction: column;
	margin-left: auto;
	background: white;
	background: #212121;
	width: 40vw;
	overflow-y: scroll;
	transform: translateX(40vw);
}
#dashboard #dashboard-modal-sidebar-container .modal-sidebar .modal-sidebar-body{
	display: flex;
	flex-direction: column;
	color: white;
	padding: 2vw;
}
#dashboard #dashboard-modal-sidebar-container .modal-sidebar .modal-sidebar-body header{
	display: flex;
	padding: 0.5vw 0;
}
#dashboard #dashboard-modal-sidebar-container .modal-sidebar .modal-sidebar-body header button{
	margin-left: auto;
	background: none;
	border: none;
	color: white;
	cursor: pointer;
	font-size: 0.7vw;
}
#dashboard #dashboard-modal-sidebar-container .modal-sidebar .modal-sidebar-body header h1{
	font-size: 1.2vw;
	margin: 0;
}
#dashboard #dashboard-modal-sidebar-container .modal-sidebar .modal-sidebar-body small{
	font-size: 0.7vw;
	line-height: 1vw;
	color: grey;
}
#dashboard #dashboard-modal-sidebar-container .modal-sidebar .modal-sidebar-body form{
	margin-top: 2vw;
	display: flex;
	flex-direction: column;
	gap: 1vw;
}
#dashboard #dashboard-modal-sidebar-container .modal-sidebar .modal-sidebar-body form .form-row{
	display: flex;
	gap: 1vw;
}
#dashboard #dashboard-modal-sidebar-container .modal-sidebar .modal-sidebar-body form .form-row.context-separator{
	border-top: 2px dashed #313338;
	padding-top: 1vw;
}
#dashboard #dashboard-modal-sidebar-container .modal-sidebar .modal-sidebar-body form .form-row .form-group{
	display: flex;
	flex-direction: column;
	gap: 0.5vw;
	width: 100%;
}
#dashboard #dashboard-modal-sidebar-container .modal-sidebar .modal-sidebar-body form .form-row .form-group button{
	font-size: 0.7vw;
	padding: 0.5vw;
	border: 2px dashed #313338;
	border-radius: 0.5vw;
	background: transparent;
	color: white;
	cursor: pointer;
}
#dashboard #dashboard-modal-sidebar-container .modal-sidebar .modal-sidebar-body form .form-row .form-group button:hover{
	border-style: solid;
}
#dashboard #dashboard-modal-sidebar-container .modal-sidebar .modal-sidebar-body form .form-row .form-group label{
	font-weight: bold;
}
#dashboard #dashboard-modal-sidebar-container .modal-sidebar .modal-sidebar-body form .form-row .form-group input{
	font-size: 0.7vw;
	padding: 0.5vw;
	border: 2px solid #313338;
	border-radius: 0.5vw;
	background: transparent;
	color: white;
	-moz-appearance: textfield;
}
#dashboard #dashboard-modal-sidebar-container .modal-sidebar .modal-sidebar-body form .form-row .form-group input::-webkit-outer-spin-button,
#dashboard #dashboard-modal-sidebar-container .modal-sidebar .modal-sidebar-body form .form-row .form-group input::-webkit-inner-spin-button{
	-webkit-appearance: none;
	appearance: none;
	margin: 0;
}
#dashboard #dashboard-modal-sidebar-container .modal-sidebar .modal-sidebar-body form .form-row .form-group input:disabled{
	color: grey;
	background: #292929;
	border-color: #292929;
}
#dashboard #dashboard-modal-sidebar-container .modal-sidebar .modal-sidebar-body form .form-row .form-group select{
	font-size: 0.7vw;
	padding: 0.5vw;
	border: 2px solid #313338;
	border-radius: 0.5vw;
	background: transparent;
	color: white;
}
#dashboard #dashboard-modal-sidebar-container .modal-sidebar .modal-sidebar-body form .form-row .form-group input:focus{
	outline: none;
	border-color: grey;
}
#dashboard #dashboard-modal-sidebar-container .modal-sidebar .modal-sidebar-body form .form-row .form-group .button-input-group{
	display: flex;
	gap: 1vw;
	border: 2px solid #313338;
	border-radius: 0.5vw;
}
#dashboard #dashboard-modal-sidebar-container .modal-sidebar .modal-sidebar-body form .form-row .form-group .button-input-group select,
#dashboard #dashboard-modal-sidebar-container .modal-sidebar .modal-sidebar-body form .form-row .form-group .button-input-group input{
	width: 100%;
	border: none;
}
#dashboard #dashboard-modal-sidebar-container .modal-sidebar .modal-sidebar-body form .form-row .form-group .button-input-group button{
	margin-left: auto;
	padding: 0.5vw 1vw;
	border: none;
}
#dashboard #dashboard-modal-sidebar-container .modal-sidebar .modal-sidebar-footer{
	margin-top: auto;
	display: flex;
	gap: 1vw;
	padding: 1vw;
	border-top: 1px solid #363636;
}
#dashboard #dashboard-modal-sidebar-container .modal-sidebar .modal-sidebar-footer .footer-trailing{
	margin-left: auto;
}
#dashboard #dashboard-modal-sidebar-container .modal-sidebar .modal-sidebar-footer button{
	font-size: 0.8vw;
	padding: 0.4vw 1vw;
	border: none;
	border-radius: 0.5vw;
	background: #363636;
	color: white;
	cursor: pointer;
}
#dashboard #dashboard-modal-sidebar-container .modal-sidebar .modal-sidebar-footer button.primary-button{
	background: darkgrey;
	color: black;
}
#dashboard #dashboard-modal-sidebar-container .modal-sidebar .modal-sidebar-footer button:hover{
	opacity: .7;
}
#dashboard .modal-slide-in{
	visibility: visible !important;
	opacity: 1 !important;
}
#dashboard .modal-slide-in .modal-cover{
	visibility: visible !important;
	opacity: 0.5 !important;
}
#dashboard .modal-slide-in .modal-sidebar{
	transform: translateX(0) !important;
}
/* ===================== DASHBOARD MODAL SIDEBAR ===================== */

/* ===================== DASHBOARD SIDEBAR ===================== */
#dashboard #dashboard-sidebar{
	display: flex;
	flex-direction: column;
	width: 16vw;
	height: 100vh;
	background: #212121;
	border-right: 1px solid #363636;
}
#dashboard #dashboard-sidebar .sidebar-header{
	display: flex;
	align-items: center;
	padding: 1vw;
	border-bottom: 1px solid #363636;
}
#dashboard #dashboard-sidebar .sidebar-header img{
	height: 1vw;
}
#dashboard #dashboard-sidebar .sidebar-body{
	display: flex;
	flex-direction: column;
	padding: 1vw;
	gap: 0.2vw;
}
#dashboard #dashboard-sidebar .sidebar-footer{
	margin-top: auto;
	display: flex;
	flex-direction: column;
	padding: 1vw;
	border-top: 1px solid #363636;
}
#dashboard #dashboard-sidebar a{
	display: flex;
	align-items: center;
	gap: 0.5vw;
	color: white;
	text-decoration: none;
	font-size: 0.8vw;
	padding: 0.4vw;
	border-radius: 0.5vw;
}
#dashboard #dashboard-sidebar a:hover{
	background: #363636;
}
#dashboard #dashboard-sidebar a.acitve-sidebar-menu{
	background: #363636;
}
#dashboard #dashboard-sidebar a i{
	width: 1vw;
}
/* ===================== DASHBOARD SIDEBAR ===================== */

/* ===================== DASHBOARD CONTENT ===================== */
#dashboard #dashboard-content{
	display: flex;
	flex-direction: column;
	width: 84vw;
	height: 100vh;
	background: #191919;
	color: white;
	position: relative;
}
#dashboard #dashboard-content nav{
	display: flex;
	align-items: center;
	padding: 1vw;
	border-bottom: 1px solid #363636;
}
#dashboard #dashboard-content nav h4{
	margin: 0;
	font-size: 0.8vw;
}
#dashboard #dashboard-content nav .navbar-trailing{
	margin-left: auto;
	display: flex;
	gap: 1vw;
	height: 1vw;
}
#dashboard #dashboard-content nav .navbar-trailing button{
	display: flex;
	align-items: center;
	justify-content: center;
	height: 1vw;
	font-size: 0.7vw;
	padding: 0 0.5vw;
	border: none;
	border-radius: 0.2vw;
	background: transparent;
	color: white;
	cursor: pointer;
}
#dashboard #dashboard-content nav .navbar-trailing button:hover{
	opacity: .7;
}
#dashboard #dashboard-content header{
	display: flex;
	align-items: center;
	padding: 1vw;
	border-bottom: 1px solid #363636;
	height: 2.5vw;
	gap: 0.8vw;
}
#dashboard #dashboard-content header .header-trailing{
	margin-left: auto;
	display: flex;
	gap: 1vw;
}
#dashboard #dashboard-content header button{
	font-size: 0.7vw;
	padding: 0.4vw 1vw;
	border: none;
	border-radius: 0.4vw;
	background: #363636;
	color: whitesmoke;
	cursor: pointer;
}
#dashboard #dashboard-content header button:hover{
	color: grey;
}
#dashboard #dashboard-content header button.secondary-tool{
	background: transparent;
	color: grey;
	border: 1px solid grey;
}
#dashboard #dashboard-content header button.secondary-tool:hover{
	border-color: white;
}
#dashboard #dashboard-content header button.secondary-tool b{
	color: whitesmoke;
}
#dashboard #dashboard-content header select,
#dashboard #dashboard-content header input{
	font-size: 0.7vw;
	padding: 0.5vw;
	border: 2px solid #313338;
	border-radius: 0.5vw;
	background: transparent;
	color: white;
	-moz-appearance: textfield;
}
#dashboard #dashboard-content .content-body{
	display: flex;
	flex-direction: column;
}
#dashboard #dashboard-content .content-body .report-container{
	display: flex;
	height: auto;
	background: grey;
	height: calc(100vh - 7.2vw);
}
#dashboard #dashboard-content .content-body .report-container iframe{
	width: 100%;
	height: 100%;
}
#dashboard #dashboard-content .content-body-plain{
	display: flex;
	flex-direction: column;
	height: calc(100vh - 7.5vw);
	overflow-y: scroll;
}
#dashboard #dashboard-content .content-body-tabular{
	display: flex;
	flex-direction: column;
	height: calc(100vh - 14.5vw);
	overflow-y: scroll;
}
#dashboard #dashboard-content .content-body-tabs{
	display: flex;
	gap: 1vw;
	border-bottom: 1px solid #363636;
}
#dashboard #dashboard-content .content-body-tabs a{
	display: flex;
	align-items: center;
	justify-content: center;
	height: 1vw;
	padding: 1vw;
	text-decoration: none;
	color: whitesmoke;
	border-bottom: 2px solid transparent;
}
#dashboard #dashboard-content .content-body-tabs a:hover{
	border-color: whitesmoke;
}
#dashboard #dashboard-content .content-body-tabs a.active-content-tab{
	border-color: whitesmoke;
}
#dashboard #dashboard-content table{
	border-collapse: collapse;
}
#dashboard #dashboard-content table tr{
	border-top: 1px solid #363636;
	border-bottom: 1px solid #363636;
}
#dashboard #dashboard-content table tr:hover{
	background: #363636;
}
#dashboard #dashboard-content table tr.border-topless-row{
	border-top: none;
}
#dashboard #dashboard-content table tr th, #dashboard #dashboard-content table tr td{
	padding: 0.7vw 1vw;
	font-size: 0.7vw;
	border-left: 1px solid #363636;
	border-right: 1px solid #363636;
}
#dashboard #dashboard-content table tr th{
	padding: 1vw 0.7vw;
	text-align: left;
}
#dashboard #dashboard-content table tr td{
	cursor: pointer;
}
#dashboard #dashboard-content table .table-leading-cell{
	border-left: none;
}
#dashboard #dashboard-content table .table-trailing-cell{
	border-right: none;
}
#dashboard #dashboard-content footer{
	display: flex;
	width: calc(100% - 2vw);
	padding: 1vw;
	position: absolute;
	bottom: 0;
	left: 0;
	background: #191919;
	border-top: 1px solid #363636;
}
#dashboard #dashboard-content footer button{
	padding: 0.4vw 2vw;
	font-size: 0.8vw;
	border: none;
	border-radius: 0.4vw;
	background: #363636;
	color: whitesmoke;
	cursor: pointer;
}
#dashboard #dashboard-content footer button:hover{
	color: grey;
}
#dashboard #dashboard-content footer button:disabled{
	color: darkgrey;
}
#dashboard #dashboard-content footer .footer-leading{
	display: flex;
	align-items: center;
	gap: 1vw;
}
#dashboard #dashboard-content footer .footer-leading .footer-leading-search-field{
	padding: calc(0.4vw - 1px) 0.4vw;
	border-radius: 0.5vw;
	display: flex;
	align-items: center;
	gap: 0.5vw;
	border: 1px solid #313338;
}
#dashboard #dashboard-content footer .footer-leading i{
	color: grey;
}
#dashboard #dashboard-content footer .footer-leading select{
	border: 1px solid #363636;
	padding: 0 0.8vw;
	background: transparent;
	color: whitesmoke;
	border-radius: 0.5vw;
	height: 100%;
}
#dashboard #dashboard-content footer .footer-leading input{
	padding: 0;
	border: none;
	background: transparent;
	color: white;
	font-size: 0.8vw;
}
#dashboard #dashboard-content footer .footer-leading input:focus{
	outline: none;
}
#dashboard #dashboard-content footer .footer-trailing{
	margin-left: auto;
	display: flex;
	align-items: center;
	gap: 1vw;
}
#dashboard #dashboard-content footer .footer-trailing .footer-trailing-pagination{
	display: flex;
	align-items: center;
	gap: 0.5vw;
}
#dashboard #dashboard-content footer .footer-trailing .footer-trailing-pagination .pagination-control-button{
	padding: 0.4vw 0.8vw;
}
#dashboard #dashboard-content footer .footer-trailing .footer-trailing-pagination .pagination-page-button{
	padding: 0.4vw 0.8vw;
	background: #212121;
}
#dashboard #dashboard-content footer .footer-trailing .footer-trailing-pagination .pagination-page-button:hover,
#dashboard #dashboard-content footer .footer-trailing .footer-trailing-pagination .pagination-page-button.active-page{
	background: #363636;
	color: whitesmoke;
}
#dashboard #dashboard-content .body-section{
	display: flex;
	flex-direction: column;
	padding: 1.5vw 1vw;
	border-bottom: 1px solid #363636;
}
#dashboard #dashboard-content .body-section h3{
	margin: 0;
	margin-bottom: 0.5vw;
}
#dashboard #dashboard-content .body-section small{
	color: grey;
}
#dashboard #dashboard-content .body-section .section-grid-net{
	margin-top: 1.5vw;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	grid-column-gap: 1.5vw;
	grid-row-gap: 1.5vw;
}
#dashboard #dashboard-content .body-section .section-grid-net .input-group{
	display: flex;
	flex-direction: column;
	gap: 0.5vw;
}
#dashboard #dashboard-content .body-section .section-grid-net .input-group label{
	font-size: 0.7vw;
	color: whitesmoke;
}
#dashboard #dashboard-content .body-section .section-grid-net .input-group input, #dashboard #dashboard-content .body-section .section-grid-net .input-group select{
	border: 1px solid #363636;
	padding: 0.5vw 0.8vw;
	background: transparent;
	color: whitesmoke;
	border-radius: 0.5vw;
}
#dashboard #dashboard-content .body-section .section-grid-net .input-group input:focus{
	outline: none;
	border-color: grey;
}
#dashboard #dashboard-content .body-section .section-grid-net .input-group input:disabled{
	opacity: .7;
}
#dashboard #dashboard-content .content-body-plain form{
	display: flex;
	flex-direction: column;
}
#dashboard #dashboard-content .content-body-plain form .form-section{
	display: flex;
	flex-direction: column;
	gap: 1vw;
	padding: 1vw;
	border-bottom: 1px solid #363636;
}
#dashboard #dashboard-content .content-body-plain form .form-section .form-group{
	display: flex;
	gap: 5vw;
	align-items: center;
}
#dashboard #dashboard-content .content-body-plain form .form-section .form-group .form-group-details{
	width: 100%;
	display: flex;
	flex-direction: column;
	gap: 0.4vw;
}
#dashboard #dashboard-content .content-body-plain form .form-section .form-group .form-group-details label{
	font-size: 0.8vw;
}
#dashboard #dashboard-content .content-body-plain form .form-section .form-group .form-group-details small{
	color: darkgrey;
	font-size: 0.7vw;
}
#dashboard #dashboard-content .content-body-plain form .form-section .form-group .form-group-input{
	width: 100%;
	display: flex;
	gap: 0.5vw;
}
#dashboard #dashboard-content .content-body-plain form .form-section .form-group .form-group-input input{
	width: 100%;
	border: 1px solid #363636;
	padding: 0.5vw 0.8vw;
	background: transparent;
	color: whitesmoke;
	border-radius: 0.5vw;
}
#dashboard #dashboard-content .content-body-plain form .form-section .form-group .form-group-input button{
	width: fit-content;
	border: none;
	padding: 0.5vw 0.8vw;
	background: #363636;
	color: whitesmoke;
	border-radius: 0.5vw;
	cursor: pointer;
}
#dashboard #dashboard-content .content-body-plain form .form-section .form-group .form-group-input .form-group-switch-input{
	display: flex;
	align-items: center;
	background: whitesmoke;
	height: 1.8vw;
	width: 3.5vw;
	padding: 0 0.1vw;
	border-radius: 100px;
	cursor: pointer;
}
#dashboard #dashboard-content .content-body-plain form .form-section .form-group .form-group-input .form-group-switch-input span{
	display: block;
	height: 1.6vw;
	width: 1.6vw;
	background: black;
	border-radius: 100px;
}
#dashboard #dashboard-content .content-body-plain form .form-section .form-group .form-group-input .form-group-switch-input.switched-on{
	background: #363636;
}
#dashboard #dashboard-content .content-body-plain form .form-section .form-group .form-group-input .form-group-switch-input.switched-on span{
	transform: translateX(1.9vw);
	background: whitesmoke;
}
#dashboard #dashboard-content .content-body-plain form .form-section .form-group .form-group-input .form-group-switch-input input{
	display: none;
}
#dashboard #dashboard-content .content-body-tabular .content-cards-grid{
	display: flex;
	height: 100%;
}
#dashboard #dashboard-content .content-body-tabular .content-cards-grid .column-separator{
	border-left: 1px solid #363636;
	height: 100%;
}
#dashboard #dashboard-content .content-body-tabular .content-cards-grid .row-separator{
	border-top: 1px solid grey;
}
#dashboard #dashboard-content .content-body-tabular .content-cards-grid .content-column{
	width: 100%;
	height: 100%;
	display: flex;
	flex-direction: column;
	overflow-y: scroll;
}
#dashboard #dashboard-content .content-body-tabular .content-cards-grid .content-column .content-column-section{
	display: flex;
	flex-direction: column;
	height: calc((100vh - 16.5vw) / 2);
	width: calc(100% - 2vw);
	padding: 1vw;
	overflow-y: scroll;
}
#dashboard #dashboard-content .content-body-tabular .content-cards-grid .content-column .content-column-section .chart-container{
	display: flex;
	height: 100%;
}
/* ===================== DASHBOARD CONTENT ===================== */

/* ===================== ERROR GENERAL ===================== */
#error-general{
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 1vw;
	width: 100vw;
	height: 100vh;
	background: #212121;
	color: whitesmoke;
}
#error-general h1{
	color: grey;
	font-size: 4vw;
	margin: 0;
}
#error-general span{
	font-size: 1vw;
	color: whitesmoke;
}
#error-general button{
	display: flex;
	align-items: center;
	padding: 1vw 3vw;
	gap: 1vw;
	font-size: 1vw;
	border: none;
	border-radius: 0.5vw;
	background: #363636;
	color: whitesmoke;
}
/* ===================== ERROR GENERAL ===================== */