/*
  Global
*/
/* Scrollbars: Works on Firefox */
* {
	scrollbar-width: thin;
	scrollbar-color: #495c68 rgb(233, 233, 233);
}

/* Scrollbars: Works on Chrome, Edge, and Safari */
* ::-webkit-scrollbar {
	width: 10px;
}

*::-webkit-scrollbar-track {
	background: rgb(233, 233, 233);
}

*::-webkit-scrollbar-thumb {
	background-color: #495c68;
	border-radius: 20px;
	border: 2px solid #495c68;
}

:root {
	--nav-bg-color: #1a1a1a;
}

main {
	top: 60px !important;
	position: relative;
	padding: 2rem;
	left: 250px;
	width: calc(99.5vw - 250px);
	transition: all 0.5s ease;
	height: 90vh;
	overflow-y: auto;
}

main.login {
	left: 0px;
	width: 100%;
}

/* Navigation (TOP/SIDE)*/
.navbar {
	background-color: var(--nav-bg-color);
	border-bottom: 1px solid black;
}

.sidebar {
	background-color: var(--nav-bg-color);
}

.page-header {
	margin-bottom: 2em;

	h1,
	h2 {
		font-weight: 700;
		margin: 0;
		font-size: 2em;
	}

	p {
		font-weight: 300;
		font-size: 1.1em;
		margin: 0;
	}
}

.page-action-btns {
	display: flex;
	justify-content: start;
	align-items: center;
	height: fit-content;
	margin-top: 1em;
	margin-bottom: 1em;

	button,
	span {
		font-size: 1em !important;
		font-weight: 500;
	}
}

.dt-top {
	margin-bottom: 1em;

	.dt-search {
		label {
			margin-right: 0.5em;
		}
	}

	.dt-length {
		label {
			margin-left: 0.5em;
		}
	}
}

.dt-bot {
	margin-top: 1em;
}

.stats-container-wrapper {
	display: flex;
	justify-content: center;
	gap: 1em;
	flex-wrap: nowrap;
	padding: 1em;
}

.pkv_table tbody tr td {
	padding-right: 1.25rem;
}

/* Overrides */
.card {
	background-color: #29333d;
}

.card-header {
	width: 100%;
	display: flex;
	justify-content: space-between;
	padding: 1em;

	h4 {
		font-weight: 700;
	}
}

td {
	font-size: 14px;
}

/* th {
    background-color: #000000 !important;
} */

/* 

* {
  font-family: "Ubuntu", sans-serif;
  color: #fff;
} */

/* h1 {
    font-size: 1.8em;
} */

/* Links */
a {
	text-decoration: none;
	color: #fff;
}

/* The Icons */
i {
	padding-right: 0.4em;
}
#app_title {
	font-size: 1em;
}

#logo_img {
	height: 1.75em;
	width: auto;
}

#map {
	margin: 1em;
	height: 400px;
	width: 50%;
}

.leaflet-popup-content {
	color: #000;
}

#side_navbar {
	/* width: 10vw; */
	/* width: fit-content; */
	padding: 1rem;
	width: 235px;
	min-height: 100vh;
	/* max-height: 100vmax; */
	overflow: initial;
	font-size: 1em;
	border-right: 1px solid #000;
	background-color: rgba(0, 0, 0, 0.3);
}

#side_navbar > ul > li > a {
	border-radius: 10px;
}

#side_navbar > ul > li > a:hover {
	border-radius: 10px;
	background-color: rgba(95, 95, 95, 0.315);
	color: rgb(228, 228, 228);
}

#top_header {
	background-color: rgba(0, 0, 0, 0.3);
	max-height: 4rem;

	/* height: fit-content; */
}

@media (max-width: 991px) {
	/* Main Menu - Mobile */
	#navbarNavDarkDropdown {
		z-index: 10;
		width: 50vw;
	}
}

@media (min-width: 991px) {
	#navbarNavDarkDropdown {
		display: none;
		visibility: hidden;
	}
}

/* #profileDropdown {
    z-index: 10;
} */

.dropdown-menu {
	margin: 5em;
	font-size: 0.9rem;
}

/* table {
    font-size: .80em;
} */

/* Datatable DTR Control */
/* table.dataTable.dtr-inline.collapsed>tbody>tr>td.dtr-control:before, table.dataTable.dtr-inline.collapsed>tbody>tr>th.dtr-control:before{
    background-color: #3a3a3a;
} */

.horizontal-scrollable {
	width: auto;
	overflow-x: auto;
}

/* Client Notes Scrollable Section */
.vertical-scrollable {
	height: 40vh;
	overflow-y: auto;
}

/* Client Notes Background */
.bg-notes {
	background-color: #444e58;
	box-shadow: inset 0px 0px 10px 2px rgba(0, 0, 0, 0.5);
}

#network-chart-container {
	min-width: 320px;
	/* max-width: 800px; */
	margin: 0 auto;
	height: 1000px;
	background-color: #30373f;
	color: #fff;
}

/*
  Bootstrap Select Overrides
*/
.bootstrap-select .no-results {
	padding: 3px;
	background: #272b30;
	margin: 0 5px;
	white-space: nowrap;
}

input.form-control,
select.form-control,
input.form-control:focus,
.input-group > .form-select {
	background-color: #272b30 !important;
	color: #fff;
	border-color: #000;
}

.black-border {
	border: 0.1rem solid #000;
}

/* @media (min-width: 990px){
    #navbarNavDarkDropdown {
        visibility: hidden;
    }
} */

/* Custom CSS */

.card {
	background-color: var(--bs-body-bg);
    border: none !important;
}

.card-header {
	background-color: var(--bs-body-bg);

	.status-badge-lg {
		margin-left: 0.5em;
	}
}

.card-header .tab-pane {
	padding: 1em;
}

#user-profile-card-header {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.row-details {
	display: flex;
	justify-content: center;
	gap: 1em;
	padding: 1em;
}

.row-details-block {
	background-color: rgba(49, 55, 61, 0.609);
	padding: 1.5em 1em;
	border-radius: 10px;

	h5 {
		font-weight: 600;
		margin: 0 0.5em;
	}

	table {
		margin: 0 0.5em;
        padding: 1em;

        .dt-top {
            .dt-length {
                margin-left: .5em !important;
            }
        }

		td {
			font-size: 1em;
		}

		.td-cat-label {
			font-weight: 500;
			padding: 0 1.5em 0 0;
		}
	}

	.details-block-action-btns {
		text-align: center;
		margin-top: 1em;
	}

	.no-data-placeholder {
		padding: 1em;
		text-align: center;

		h5 {
			color: var(--bs-secondary);
		}
	}
}

.block-center-1 {
    width: 100%;
}

.block-left-3,
.block-center-3,
.block-right-3 {
	width: 30%;
	flex-grow: 1;
}

.block-left-2,
.block-right-2 {
	width: 45%;
	flex-grow: 1;
}

@media (max-width: 1024px) {
	#side_navbar {
		font-size: 1em;
		width: 20vw;
	}
}

@media (max-width: 991px) {
	#side_navbar {
		visibility: hidden;
		/* width: 0px; */
	}

	#gravatar_img {
		visibility: collapse;
		width: 45px;
	}

	/* #profile_dd {
    visibility: hidden;
    width: 0%;
  } */

	/* #profile_dd {
    visibility: collapse;
    width: 50px;
  } */

	/* .dataTables_filter { display: inline; }

  .dataTables_paginate { display: none; } */
}

@media (max-width: 600px) {
	#side_navbar {
		visibility: hidden;
		width: 0px;
	}
}

@media (width < 1300px) {
	main {
		left: 0 !important;
		width: 100% !important;
	}

	.page-header {
		h1,
		h2 {
			font-weight: 700;
			margin: 0;
			font-size: 1.5em;
		}

		p {
			font-weight: 300;
			font-size: 0.9em;
			margin: 0;
		}
	}

	.page-action-btns {
		flex-direction: column;
		justify-content: end;
		align-items: end;
		gap: 0.5em;
		font-size: 0.9em;
	}

	.dt-top {
		display: flex !important;
		flex-direction: column;
		width: fit-content !important;
		align-items: end;
		margin-top: 1em;
		margin-bottom: 1em;
		margin-left: auto;

		label {
			font-size: 0.8em;
		}

		.col-12 {
			width: fit-content;
			margin: 0;
		}

		.dt-length {
			select {
				font-size: 0.7em;
			}

			label {
				margin-left: 0.5em;
			}
		}

		.dt-search {
			input {
				font-size: 0.7em;
			}

			label {
				margin-right: 0.5em;
			}
		}
	}

	.stats-container-wrapper {
		flex-direction: column;
	}

    .card-header {
        h4 {
            font-size: 1.3em;
            display: block;
        }
    }


	.row-details {
		flex-direction: column;

		.block-left-3,
		.block-center-3,
		.block-right-3,
		.block-left-2,
		.block-right-2 {
			width: 100%;
		}

        .row-details-block {
            h5 {
                font-size: 1em;
            }
            table {
                td {
                    font-size: .8em;
                }
            }

            button {
                font-size: .8em;
            }
        }
	}
}

@media print {
	* {
		color: rgb(0, 0, 0);
		font-size: small;
	}
}

/* Asset Page */
.alert-on-top {
	position: fixed;
	left: 0;
	margin: auto;
	right: 0;
	text-align: center;
	width: 50%;
	align-items: center;
	z-index: 999;
}

/* Datatables Overrides */
.dataTables_length > select {
	background-color: aqua;
}

/* MultiSelect Styling */
.multiselect-dropdown {
	display: inline-block;
	padding: 2px 5px 0px 5px;
	width: 100%;
	/* border-radius: 4px; */
	border: solid 1px #4f4f4f;
	background-color: #212529;
	position: relative;
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
	background-repeat: no-repeat;
	background-position: right 0.75rem center;
	background-size: 16px 12px;
}
.multiselect-dropdown span.optext,
.multiselect-dropdown span.placeholder {
	margin-right: 0.5em;
	margin-bottom: 2px;
	padding: 1px 0;
	border-radius: 4px;
	display: inline-block;
	color: #fff;
}
.multiselect-dropdown span.optext {
	background-color: #000000;
	padding: 1px 0.75em;
	font-size: 14px;
}
.multiselect-dropdown span.optext .optdel {
	float: right;
	margin: 0 -6px 1px 5px;
	font-size: 0.7em;
	margin-top: 2px;
	cursor: pointer;
	color: #ffffff;
}
.multiselect-dropdown span.optext .optdel:hover {
	color: #c66;
}
.multiselect-dropdown span.placeholder {
	color: #212529;
}
.multiselect-dropdown-list-wrapper {
	box-shadow: gray 0 3px 8px;
	z-index: 100;
	padding: 2px;
	/* border-radius: 4px; */
	border: solid 1px #ced4da;
	display: none;
	margin: -1px;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	background: #212529;
}
.multiselect-dropdown-list-wrapper .multiselect-dropdown-search {
	margin-bottom: 5px;
}
.multiselect-dropdown-list {
	padding: 2px;
	height: 20rem;
	font-size: 14px;
	overflow-y: auto;
	overflow-x: hidden;
}

.multiselect-dropdown-list > div {
	align-items: center;
}

.multiselect-dropdown-list::-webkit-scrollbar {
	width: 6px;
}
.multiselect-dropdown-list::-webkit-scrollbar-thumb {
	background-color: #bec4ca;
	border-radius: 3px;
}

.multiselect-dropdown-list div {
	padding: 4px;
}
.multiselect-dropdown-list input {
	height: 1.15em;
	width: 1.15em;
	margin-right: 0.35em;
}
.multiselect-dropdown-list div.checked input {
	background-color: #1a1a1a !important;
	border-color: #1a1a1a !important;
}
.multiselect-dropdown-list div:hover {
	background-color: #434343;
}
.multiselect-dropdown span.maxselected {
	width: 100%;
}
.multiselect-dropdown-all-selector {
	border-bottom: solid 1px #999;
}
