@import url('https://fonts.googleapis.com/css?family=Open+Sans&display=swap');
@import url('https://fonts.googleapis.com/css?family=Ubuntu&display=swap');

* { 
	font-family: 'Ubuntu';
}
  
/* Remove the navbar's default margin-bottom and rounded borders */
.navbar {
	margin-bottom: 0;
	border-radius: 0;
	background-color: #555555;
}

.navbar-inverse .navbar-nav li a {
    color: white;
}

/* Set height of the grid so .sidenav can be 100% (adjust as needed) */
.row.content { 
	height: 450px
}

/* Set gray background color and 100% height */
.sidenav {
	padding-top: 20px;
	background-color: #f1f1f1;
	height: 100%;
}

/* Set black background color, white text and some padding */
footer {
	background-image: linear-gradient(to top, black, rgba(0,0,0,0));
    background-color: transparent;
	padding: 10px 0 0 0;
	/*background-color: #555;*/
	color: white;
	/*padding: 15px;*/
}

/* On small screens, set height to 'auto' for sidenav and grid */
@media screen and (max-width: 767px) {
	.sidenav {
		height: auto;
		padding: 15px;
	}
	
	.row.content {
		height:auto;
	} 
}

/* ################################################ */
/* APP */

h1 {
     margin: 0;
}

h1, h2, h3 { 
	font-family: 'Open Sans';
}
  
.app-page-content {
	display: block;
	clear: both;
	max-width: 960px;
	width: 100%;
	margin: auto auto 80px auto;
	text-align: center;
	overflow: hidden;
}

.app_redirect_form {
	display: none !important;
	opacity: 0 !important;
	visibility: hidden !important;	
}

.app_box {
	padding: 20px; 
	max-width: 960px; 
	width: 100%; 
	background-color: #F7F7F7; 
	margin: 20px auto; 
	border-radius: 2px; 
	box-shadow: 0px 2px 10px 5px rgba(0, 0, 0, 0.3);
	border-bottom: 0px solid transparent;
}

.centered {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
}

.center_horizontally {
	position: absolute;
	left: 50%;
	transform: translate(-50%, 0);
	-ms-transform: translate(-50%, 0);
	-webkit-transform: translate(-50%, 0);
}

.center_vertically {
	position: absolute;
	top: 50%;
	transform: translate(0, -50%);
	-ms-transform: translate(0, -50%);
	-webkit-transform: translate(0, -50%);
}

.full_width {
	width: 100%;
}

.full_width_important {
	width: 100% !important;
}

.full_height {
	height: 100%;
}

.align_top {
	position: absolute;
	top: 0;
}

.align_bottom {
	position: absolute;
	bottom: 0;
}

.cursor_pointer {
	cursor: pointer;
}

.cursor_alias {
	cursor: alias;
}

.float_left {
	float: left !important;
}

.float_right {
	float: right !important;
}

.float_none {
	float: none !important;
}

.clear_both, .float_clear {
	clear: both;
}

.text_bold {
	font-weight: bold;
}

.move_to_top {
	display: none;
	position: fixed;
	right: 25px;
	bottom: 25px;
	width: 35px;
    height: 35px;
    padding-top: 7px;
	color: white;
	background-color: #0077cc;
	border: 1px solid #0369b2;
	border-radius: 5px;
	text-align: center;
}
.move_to_top:hover {
	background-color: #168fe5;
}

/* ################################################ */
/* ANIMATIONS */
@keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }
@keyframes gradient { 0% { background-position: 0% 50%; } 50% { background-position: 100% 50%; } 100% { background-position: 0% 50%; } }

/* ################################################ */
/* TOP MENU */
.dropdown:hover .dropdown-content {
	display: block;
}

.dropdown-content {
	display: none;
	position: absolute;
	padding: 10px;
	background-color: #5a5a5a;
	min-width: 160px;
	box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
	z-index: 1;
}

.dropdown-content a {
	color: white;
    line-height: 1.5em;
    display: block;
    padding: 10px;
}

.navbar-lang {
	width: 32px;
	height: 32px;
	margin-top: 9px;
	cursor: pointer;
}

#page_backdrop {
	display: block;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-position: cover;
    background-repeat: no-repeat;
    background-position: center center;
	z-index: -1000;
}

.list_above_box {
	display: block; 
	float: left; 
	border: 1px solid #CCCCCC; 
	padding: 10px; 
	border-radius: 5px; 
	background-color: #F7F7F7; 
	text-align: left;
}

#top_menu_user_logo {
	width: 30px;
	height: 30px;
	margin-left: 10px;
	cursor: pointer;
}

.navbar-brand { 
	padding-top: 10px;
}

/* ################################################ */
/* DATA TABLES */

.app_data_table {
	padding: 20px;
	max-width: 960px;
	width: 100% !important;
	background-color: #F7F7F7;
	margin: 20px auto !important;
	border-radius: 2px;
	box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
	border-bottom: 0px solid transparent !important;
	font-size: 13px;
}


.dataTables_wrapper {
	margin: 20px auto !important;
}

.dt-buttons {
	margin-left: 20px !important;
}

.app_data_table .app_data_table_button {
	
}

.app_data_table_button_top_button {
	float: right;
	margin-left: 10px;
}

.app_data_table th:nth-child(2), .app_data_table td:nth-child(2) {
	width: 100px !important;
}

.data_table_footer_search {
	max-width: 79px;
}

.app_data_table th {
	font-size: 12px !important;
    padding: 5px !important;
	text-align: center !important;
}


/* ################################################ */
/* APP FORM BOX */

.app_form_box {
	padding: 20px;
	max-width: 960px;
	width: 100% !important;
	background-color: #F7F7F7;
	margin: 20px auto !important;
	border-radius: 2px;
	box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
	border-bottom: 0px solid transparent !important;
	text-align: left;
}

.app_form_box_button {
	float: right;
    margin-right: 20px;
	margin-bottom: 10px;
}

.app_form_box_button_spacer {
	width: 40px;
	height: 10px;
}

.app_form_box .row {
	padding-top: 5px !important;
	clear: both;
}

/*
.app_form_box .row .form-group:nth-child(even) {
	float: right !important;
}

.app_form_box .row .form-group:nth-child(odd) {
	float: left !important;
}
*/

.app_form_box .form-group {
	padding-top: 10px !important;
	padding-right: 20px !important;
}

.app_form_box label {
	/* width: 80%; */
	display: block;
}

.app_form_box select {
	height: 34px;
	width: 60% !important;
}

.app_form_box textarea {
	height: 100px;
	width: 60% !important;
}

.app_form_box input[type=text], .app_form_box input[type=password], .app_form_box input[type=email] {
	height: 34px;
	width: 60%;
}

.app_form_box input[type=number] {
	height: 34px;
	width: 20%;
}

.app_form_box input[type=checkbox] {
	margin-right: 10px !important;
}

.app_form_box textarea {
	width: 60%;
	height: 120px;
}

.app_form_box .checkbox {
	margin-top: 5px !important;
}

.app_form_box .checkbox label {
	font-weight: 700 !important;
}

.app_form_box .erroneous {
	border: 1px solid red;
}

.app_form_box .view_edit_image_file {
	display: none; 
	opacity: 0;
}

.app_form_box .view_edit_image_id {
	display: none; 
	opacity: 0;
}

.app_form_box .view_edit_image_upload {
	position: absolute; 
	display: none;
	top: 5px; 
	left: 5px; 
	background-color: rgba(255, 255, 255, 0.75); 
	border-radius: 3px;
	cursor: pointer;
}
.app_form_box .view_edit_image_upload:hover {
	background-color: white;
}

.app_form_box .view_edit_image_clear {
	position: absolute; 
	display: none;
	top: 5px; 
	right: 5px; 
	background-color: rgba(255, 255, 255, 0.75); 
	border-radius: 3px;
	cursor: pointer;
}
.app_form_box .view_edit_image_clear:hover {
	background-color: white;
}

.app_form_box .view_edit_image_container {
	position: relative; 
	width: 300px; 
	height: 300px; 
	overflow: hidden;
}

.app_form_box .remote_value_clear {
	display: none;
}

.app_form_box .progress-wrp {
	position: absolute; 
	display: none;
	top: 0px; 
	left: 50px;
	right: 50px; 
	border: 1px solid #0099CC;
	padding: 1px;
	height: 30px;
	border-radius: 3px;
	margin: 5px;
	text-align: left;
	background: #fff;
	box-shadow: inset 1px 3px 6px rgba(0, 0, 0, 0.12);
}

.app_form_box .progress-wrp .progress-bar {
	height: 100%;
	border-radius: 3px;
	background-color: #30afff;
	width: 0;
	box-shadow: inset 1px 1px 10px rgba(0, 0, 0, 0.11);
}

.app_form_box .progress-wrp .status {
	top: 3px;
	left: 50%;
	position: absolute;
	display: inline-block;
	color: #000000;
}

.app_form_box .view_edit_date_time, .app_form_box .view_edit_time {
	max-width: 130px; 
	padding-left: 5px;
}

.view_edit_combo_button {
	display: block !important;
	width: 100% !important;
	text-align: left;
    line-height: 1.5em;
    overflow: hidden;
}

.view_edit_combo .btn-group {
	display: block !important;
	width: 60% !important;
}

.foreign_field_data {
	cursor: alias;
	display: inline-block;
}

/* ################################################ */
/* DOCUMENT BROWSER */

#document_browser {
	margin: 20px auto !important;
	background-color: #F7F7F7;
	border-radius: 2px;
	box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
	border-bottom: 0px solid transparent !important;
}

#document_browser_modal_close {
	float: right;
	cursor: pointer;
}

#document_browser_files {
	padding: 20px;
	max-width: 960px;
	width: 100% !important;
	background-color: #F7F7F7;
	margin-bottom: 80px;
    margin-top: 20px;
	border-radius: 2px;
	box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
	border-bottom: 0px solid transparent !important;
	text-align: left;
	clear: both;
}

#document_browser_modal #document_browser_files {
	max-width: initial;
	margin-bottom: 10px;
}

.document_browser_file {
	display: inline-block;
    position: relative;
    width: 320px;
    height: 85px;
    margin: 15px;
	background-color: white;
    box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
	cursor: pointer;
    overflow: hidden;
}

.document_browser_file:hover{
	background-color: #fff5b6;
}

#document_browser_files .selected {
	box-shadow: 0px 2px 2px red;
}

.document_browser_file_preview {
	display: block;
    position: absolute;
    bottom: 5px;
    right: 5px;
    width: 32px;
    height: 32px;
}

.document_browser_file_delete {
	display: block;
    position: absolute;
    bottom: 5px;
    right: 50px;
    width: 32px;
    height: 32px;
	border-radius: 3px;
}

.document_browser_file_delete:hover {
	background-color: red;
}

.document_browser_file_icon {
	display: block;
    position: absolute;
    width: 75px;
    height: 75px;
    top: 5px;
    left: 5px;
}

.document_browser_file_title {
	display: block;
    position: absolute;
    top: 5px;
    width: 230px;
    left: 85px;
    height: 3em;
    color: black;
    font-size: 14px;
}

.document_browser_file_size {
	display: block;
    position: absolute;
    bottom: 10px;
    left: 85px;
    width: 190px;
    color: black;
}

.document_browser_file_overlay {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0px;
	left: 0px;
}

.document_browser_tab { 
	width: 14%;
	padding: 10px 5px;
	text-align: center;
	cursor: pointer;
}
.document_browser_tab:hover { 
	background-color: rgba(0, 0, 255, 0.1);
}

.document_browser_tab_selected { 
	background-color: rgba(0, 0, 255, 0.5);
}

#document_browser_select {
	display: none;
	float: right;
}

#document_browser_modal {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.5);
}

#document_browser_modal_box {
	position: fixed;
	width: 80%;
	left: 50%;
	top: 50px;
	margin-left: -40%;
	padding: 20px;
	background-color: white;
	border-radius: 10px;
}

/* ################################################ */
/* UPLOAD PROGRESS */

#document_browser_upload_box_container {
	display: none;
	position: fixed;
	width: 100%;
    height: 100%;
	left: 0px;
	top: 0px;
	background-color: rgba(0, 0, 0, 0.3);
}

#document_browser_upload_box {
	position: fixed;
	width: 400px;
	height: 200px;
	left: 50%;
	top: 10%;
	margin-left: -200px;
	padding: 20px;
	background-color: white;
	border-radius: 10px;
	box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.4);
	text-align: center;
}

#document_browser_upload_box_close {
	position: absolute;
	top: 10px;
	right: 10px;
	cursor: pointer;
}

#document_browser_upload_box_close:hover {
	background-color: rgba(255, 255, 0, 0.2);
}

#document_browser_upload_box_file {
	display: inline-block;
	width: 250px;
	overflow: hidden;
}

#progress-wrp {
	display: none;
	border: 1px solid #0099CC;
	padding: 1px;
	position: relative;
	height: 30px;
	border-radius: 3px;
	margin: 10px;
	text-align: left;
	background: #fff;
	box-shadow: inset 1px 3px 6px rgba(0, 0, 0, 0.12);
}

#progress-wrp .progress-bar {
	height: 100%;
	border-radius: 3px;
	background-color: #30afff;
	width: 0;
	box-shadow: inset 1px 1px 10px rgba(0, 0, 0, 0.11);
}

#progress-wrp .status {
	top: 3px;
	left: 50%;
	position: absolute;
	display: inline-block;
	color: #000000;
}

.document_preview {
	max-height: 300px;
}

/* ################################################ */
/* COLORS SELECT */

.COLOR_BLACK       { background-color: #000000; color: white; }
.COLOR_WHITE       { background-color: #FFFFFF; color: black; }
.COLOR_BLUE        { background-color: #0000FF; color: white; }
.COLOR_RED         { background-color: #FF0000; color: black; }
.COLOR_GREEN       { background-color: #00FF00; color: black; }
.COLOR_PURPLE      { background-color: #FF00FF; color: white; }
.COLOR_YELLOW      { background-color: #FFFF00; color: black; }
.COLOR_BROWN       { background-color: #800000; color: white; }
.COLOR_GREY        { background-color: #808080; color: black; }
.COLOR_GREY_LIGHT  { background-color: #CCCCCC; color: black; }
.COLOR_TRANSPARENT { background-color: rgba(0, 0, 0, 0); color: black; }


/* ################################################ */
/* PRINTABLE LAYERS */

#printable_layers_container {
	width: 100%;
	margin-top: 20px;
	margin-bottom: 20px;
	overflow: hidden;
}

#printable_layers_layers_box {
	position: relative;
	width: 30%;
	float: right;
	padding: 0 5px 0 5px;
	background-color: white;
	border: 1px solid #CCCCCC;
	border-radius: 5px;
	overflow: hidden;
}

#printable_layers_layers_box img {
	width: 28px;
	cursor: pointer;
}

#printable_layers_properties_box {
	width: 30%;
	float: right;
	margin-top: 10px;
	padding: 0 5px 0 5px;
	background-color: white;
	border: 1px solid #CCCCCC;
	border-radius: 5px;
	overflow: hidden;
}

#printable_layers_design_box {
	display: block;
	position: relative;
	float: left;
	width: 68%;
	height: 662px;
	overflow: auto;
    margin-right: 10px;
	background-color: white;
	border: 1px solid #CCCCCC;
	border-radius: 5px;
}

#printable_layers_design_box .design_box_layer_base {
	border: 1px dashed black !important;
}

#printable_layers_design_box .selected {
	border: 2px dashed red;
}

#printable_layers_design_box .design_box_layer {
	display: block;
	position: absolute;
	background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
	text-align: left;
	overflow: hidden;
}

#printable_layers_design_box .design_box_layer:hover {
	border: 1px dashed orange;
}

#printable_layers_layers_box_list {
	padding-bottom: 5px;
}

#printable_layers_layers_box_list .selected {
	background-color: #68d4f2;
	border: 1px solid #58c4d2;
	border-radius: 3px;
}

.printable_layers_layers_box_row {
	position: relative;
	width: 100%;
	height: 30px;
	overflow: hidden;
	cursor: pointer;
}

.printable_layers_layers_box_row_title {
	display: block;
    position: absolute;
    left: 5px;
    top: 3px;
}

.printable_layers_layers_box_row_buttons {
	float: right;
}

#printable_layers_properties_box_table {
	width: 100%;
	border: none;
	padding: 10px;
}

#printable_layers_properties_box_table td {
	width: 115px;
	overflow: hidden;
}

.printable_layers_properties_box_row {
	width: 100%;
	padding: 5px 0 5px 0;
	/* border-bottom: 1px solid gray;*/
	overflow: hidden;
}

.printable_layers_properties_box_column_left {
	width: 50%;
	padding-top: 6px;
	padding-right: 5px;
	text-align: right;
	float: left;
	font-size: 11px;
	overflow: hidden;
}

.printable_layers_properties_box_column_right {
	width: 50%;
	text-align: left;
	float: right;
	overflow: hidden;
}

.printable_layers_properties_box_column_right input, .printable_layers_properties_box_column_right select {
	width: 100% !important;
}

#printable_layer_background_document_id_image {
	width: 100px;
    height: 30px;
    border: 1px solid #DDDDDD;
	cursor: pointer;
}

/* Calendar */
.appointment_calendar {
	width: 100%;
	max-width: 960px;
	height: 400px;	
	padding: 20px;
	background-color: #F7F7F7;
    margin: 20px auto !important;
    border-radius: 2px;
    box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
    border-bottom: 0px solid transparent !important;
	vertical-align: top;
	/* white-space: nowrap; */
	overflow: scroll;
}

.appointment_calendar_table {
	border-collapse: collapse;
	table-layout: fixed;
}

.appointment_calendar_table, .appointment_calendar_table th, .appointment_calendar_table td {
  border: 1px solid #DDDDDD;
  text-align: center;
  padding: 0px; 
  margin: 0px;
}

.appointment_calendar_table tr:first-child {
	background-color: #337ab7;
	color: white;
	font-weight: bold;
}

.appointment_calendar_table td:first-child {
	background-color: #337ab7;
	color: white;
	font-weight: bold;
}

.appointment_calendar_table_cell {
	width: 200px;
}

.appointment_calendar_entry {
	padding: 3px 5px;
	cursor: pointer;
}

.appointment_calendar_table td .visitor {
	background-color: #fecb1c;
	color: black;
}

.appointment_calendar_table td .visitor:hover{
	background-color: #e5b927;
}

.appointment_calendar_table td .exhibitor {
	background-color: #dc002d;
	color: white;
}

.appointment_calendar_table td .exhibitor:hover {
	background-color: #c6314f;
}

/* NOTIFICATIONS */

#notifications_box {
	position: relative; 
	max-width: 960px; 
	color: white; 
	background-color: red; 
	padding: 20px; 
	width: 100% !important; 
	margin: 20px auto !important; 
	border-radius: 2px; 
	box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3); 
	border-bottom: 0px solid transparent !important; 
	font-size: 13px; 
	text-align: left;
}

#notifications_header {
	font-size: 20px; 
	cursor: pointer;
}

#notifications_content {
	display: none;
}

.notifications_section_header {
	font-size: 18px;
	cursor: pointer;
}

.notifications_section_content {
	display: none;	
}

/* LEAGUE TABLE */
.league_table {
	margin-top: 20px; 
	background-color: #ffcb05;
	padding: 20px 5px 5px 5px;
	border-radius: 5px;
}

.league_header {
	padding-bottom: 20px;
	text-align: center;
}

.league_header_icon_name {
	text-align: center;
}

.league_image {
	height: 40px;
}

.league_title {
	padding-left: 20px;
	font-size: 18px;
}

.league_description {
	font-size: 14px;
}

.league_table_table {
	width: 100%;
}

.league_table_table td {
	border: 4px solid #ffcb05;
}

.league_table_table td {
	padding: 5px;
	text-align: center;
}

.league_table_table td:nth-child(2) {
	text-align: left;
}

.league_table_table td:nth-child(3) {
	font-weight: bold;
}

.league_table_table tr:nth-child(even) td {
	background-color: #efefef;
}

.league_table_table tr:nth-child(odd) td {
	background-color: #dedddd;
}

.league_table_table tr:first-child td {
	background-color: #efb70a;
}

.league_table_table .current_company td {
	background-color: #ff9838 !important;
	font-weight: bold;
}

/* LEAGUE MATCHES */
.league_matches {
	margin-top: 20px; 
	background-color: #ffcb05;
	padding: 20px 5px 5px 5px;
	border-radius: 5px;
}

.league_matches_table {
	width: 100%;
}

.league_matches_table .league_match_day_header_cell {
	padding: 5px;
	text-align: center;
	background-color: #efb70a;
	font-weight: bold;
}

.league_matches_table .winner {
	font-weight: bold;
}

.league_matches_table .league_match_row td {
	padding: 5px;
}

.league_matches_table .league_match_row {
	background-color: white;
}

.league_matches_table .league_match_row_even td {
	background-color: #efefef;
}

.league_matches_table .league_match_row_odd td {
	background-color: #dedddd;
}

.league_matches_table .league_match_row td:nth-child(1) {
	text-align: right;
}

.league_matches_table .league_match_row td:nth-child(2), .league_matches_table .league_match_row td:nth-child(3) {
	text-align: center;
	width: 80px; 
}

.league_matches_table .league_match_row td:nth-child(4) {
	text-align: left;
}

.league_matches_table .current_company {
	color: red;
	font-weight: bold;
}