/**
* rNMS
*
*   This file is part of rNMS.
*
* @package    rNMS
* @subpackage webUI
* @author     Raymond Rudman <raymondrudman@outlook.com>
* @copyright  (C) 2019 Raymond Rudman, (C) 2018 rNMS Limited
*
*/

html {
	scroll-behavior: smooth;
}

body {
	margin: 0;
	padding: 0;
	height: 100%;
	overflow: hidden;
}

*:active, *:focus {
	outline: 0 !important;
	box-shadow: unset !important;
}

a, a:hover a:active, a:focus {
	text-decoration: none !important;
}

:root {
    --blue: #428bca;
    --indigo: #6610f2;
    --purple: #6f42c1;
    --pink: #e83e8c;
    --red: #d2322d;
    --orange: #fd7e14;
    --yellow: #ffc107;
    --green: #5cb85c;
    --teal: #20c997;
    --cyan: #17a2b8;
    --white: #fff;
    --gray: #6c757d;
    --gray-dark: #343a40;
    --primary: #428bca;
    --secondary: #6c757d;
    --success: #5cb85c;
    --info: #17a2b8;
    --warning: #ffc107;
    --danger: #d2322d;
    --light: #f8f9fa;
    --dark: #343a40;
}

@font-face {
	font-family: 'LCD'; 
	src: url('../fonts/digital.ttf'); 
}

.particles {
	position: absolute;
	display: block;
	top: 0;
	left: 0;
	z-index: 0;
}

.bg-blue, .btn-primary {
	background-color: #428bca;
	border-color: #357ebd;
}

.bg-green, .btn-success {
	background-color: #5cb85c;
}

.bg-red, .btn-danger {
	background-color: #d2322d;
}

.bg-blue:hover, .btn-primary:hover {
	color: #fff;
    background-color: #3276b1;
    border-color: #285e8e;
}

.bg-green:hover, .btn-success:hover {
	color: #fff;
    background-color: #47a447;
    border-color: #398439;
}

.bg-red:hover, .btn-danger:hover {
	color: #fff;
	background-color: #d2322d;
    border-color: #ac2925;
}

.loaderOverlay {
	height: 100%;
    width: 100%;
    display: flex;
    position: fixed;
    align-items: center;
    justify-content: center;
    background: #0c0c0c;
	z-index: 100;
}

.loaderOverlay .spinner-border {
	width: 3rem;
	height: 3rem;
	color: #ed1c24 !important;
}

.nav-mobile-button {
	float: left;
	position: absolute;
    left: 20px;
    top: 18px;
    font-size: xx-large;
    color: white;
}

.navigation-bar {
	top: 0 !important;
	width: 100% !important;
	position: fixed !important;
	background-color: #272727;
	z-index: 100;
	display: inline-block;
	box-shadow: 0px 0px 20px 0px black;
}

.navigation-details {
	height: 60px;
	margin: 5px 15px 5px 15px;
	color: white;
	display: inline-flex;
}

.navigation-user-details {
	display: inline-block;
	margin-right: 50px;
	font-variant: all-petite-caps;
    font-size: 15px;
	line-height: 21px;
	white-space: nowrap;
}

.navigation-user-details span {
	color: #cccccc;
}

.navigation-user-details .system-name {
	color: white;
}

.navigation-branch-details {
	display: inline-flex;
	margin-right: 50px;
	font-variant: all-petite-caps;
    font-size: 15px;
	line-height: 21px;
	white-space: nowrap;
}

.navigation-details div {
	display: inline-block;
}

.navigation-branch-details span {
	color: #cccccc;
}

.navigation-bar .navigation-logo {
	margin-right: 50px;
	height: inherit;
}

.navigation-bar .navigation-logo img {
	height: 100%;
}

.navigation-links-bar {
	height: 25px;
	background-color: #555;
	border-bottom: thin inset #333;
	display: table;
    width: 100%;
    position: absolute;
}

.navigation-links-bar ul {
	margin: 0;
    padding: 0;
    list-style-type: none;
}

.navigation-links-bar li {
	color: #ccc;
	border-right: thin inset #333;
    font-size: 13px;
    text-decoration: none;
    font-weight: 600;
	position: relative;
    display: inline;
    float: left;
	font-family: 'Open Sans', Sans-Serif;
	padding: 3px 0px 3px 0px;
}

.navigation-links-bar a, .navigation-link-dropdown-menu a {
	padding: 3px 15px 3px 15px;
	font-weight: 100;
	color: #ccc;
}

.navigation-links-bar a .fa, .navigation-link-dropdown-menu a .fa {
	margin-right: 2px;
}

.navigation-links-bar li:hover {
	color: white;
	background-color: black;
}

.navigation-links-bar li .arrow {
	margin-right: 5px;
}

.navigation-link-dropdown {
	position: relative;
	display: inline-block;
}

.navigation-link-dropdown-menu {
	position: absolute;
	z-index: 100000;
	background-color: #555;
	white-space: nowrap;
	max-height: 0;
	overflow: hidden;
	transition: 0.5s ease;
	min-width: -webkit-fill-available;
}

.navigation-link-dropdown:hover .navigation-link-dropdown-menu {
	display: block;
	max-height: 1000px;
	transition: 1s ease;
}

.navigation-link-dropdown-menu li {
	border: 0;
	width: 100%;
}

.navigation-link-dropdown-menu li a {
	width: 100%;
}

.nav-mobile-button {
	display: none;
}

@media(max-width: 1000px) {
	.navigation-branch-details {
		display: none !important;
	}
}

@media(max-width: 1115px) {
	.navigation-charts {
		display: none;
	}
}

@media(max-width: 850px) {
	.navigation-logo {
		margin-left: 50px;
	}
	
	.navigation-links-bar {
		display:none;
	}
	
	.navigation-links-bar {
		height: auto !important;
	}
	
	.navigation-links-bar ul li {
		width: 100% !important;
		background-color: #555;
	}
	
	.navigation-link-dropdown-menu {
		position: relative !important;
		max-height: 1000px;
	}
	
	.navigation-link-dropdown:hover .navigation-link-dropdown-menu ul li {
		background-color: black !important;
	}
	
	.nav-mobile-button {
		display: block;
	}
	
	.wrapper {
		height: calc(100% - 70px) !important;
	}
}

@media (max-width: 600px) {
	.navigation-logo {
		margin-right: 0px !important;
	}
	
	.navigation-user-details {
		display: none !important;
	}
}

@media (max-width: 370px) {
	.navigation-bar {
		text-align: left;
	}
}

.navigation-buttons {
    float: right;
    position: absolute;
    right: 20px;
    top: 22px;
    font-size: 20px;
    color: white;
}

.navigation-buttons a {
	color: white;
}

.navigation-button {
	padding: 5px 6px 5px 10px;
	border-radius: 10px;
	margin-left: 3px;
}

.navigation-button:hover, .navigation-buttons a:focus{
	background-color: white;
	color: black;
}

.navOnlineServices-text {
	font-size: 15px !important;
}

.notification {
	font-size:12px;
    width:15px;
    line-height: 15px;
    text-align: center;
    color:#fff;
    z-index: 2;
    border-radius: 3px;
    position: absolute;
    left: 25px;
}

.notif-icon .fa {
	width: 40px;
	height: 40px;
	position: relative;
	justify-content: center;
	align-items: center;
	display: flex;
}

.wrapper {
	height: calc(100% - 95px);
    bottom: 0;
    position: absolute;
    width: 100%;
	padding: 20px;
	overflow: auto;
}

.header {
	margin-bottom: 15px;
	display: inline-flex;
    align-items: center;
}

.header-title {
    font-size: 26px;
}

.header-actions {
	right: 10px;
    position: absolute;
}

.header-actions button {
	margin-right: 15px
}

.header .btn i {
	margin-right: 10px;
}

.header-hr {
	margin-top: 0;
    margin-bottom: 20px;
}

table {
	font-size: 13px;
}

table th {
	font-size: 14px;
}

td.dt-nowrap { 
	white-space: nowrap
}

.action-button {
	font-size: 10px;
    padding: 5px;
	margin-right: 5px;
}

.modal-dialog {
	max-width: 75vh;
}

.modal .close {
	color: #fff;
	opacity: .9;
}

.modal-title {
	font-size: 16px;
}

.modal-content {
    border: 1px solid rgba(0, 0, 0, 0.48);
    border-radius: 7px;
    overflow: hidden;
}

.modal-loader {
	position: absolute;
    display: inline-flex;
    margin: -1rem;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}

.modal-loader .spinner-border {
	width: 3rem;
	height: 3rem;
}

.graph-loader {
	position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}

.graph-loader .spinner-border {
	width: 3rem;
	height: 3rem;
}

.row-loader {
	position: absolute;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 99.4%;
}

.row-loader .spinner-border {
	width: 3rem;
	height: 3rem;
}

.badge .spinner {
	display: contents;
}

.badge .spinner-border {
	width: 0.8rem;
	height: 0.8rem;
}

.tab-content {
	padding: 15px 6px 0px 8px;
}

.form-table {
	width: 100%;
}

.form-table td {
	padding-bottom: 10px;
}

.form-td-name {
	text-align: right;
	padding-right: 20px;
	font-size: 15px;
	font-weight: bold;
}

.form-td-input {
	width: 70%;
}

td .badge {
	padding: 0.4em .4em;
}

form span.req{
	display:inline;
	float:none;
	color:red !important;
	font-weight:bold;
	margin:0;
	padding:0;
	font-size: 19px;
}

.modal form {
	margin-bottom: 0;
}

.modal form input {
	font-size: 14px;
}

.modal form .input-group-append button {
	font-size: 14px;
}

.modal-footer {
	padding-top: 25px;
}

.nav-tabs {
	font-size: 14px;
}

.details-header {
	border: 1px solid #ddd;
    border-radius: 5px;
    padding: 8px;
	background: #f9f9f9;
	display: inline-flex;
	align-items: center;
    width: 100%;
	margin-bottom: 15px;
}

.details-header .details-title {
	font-size: 18px;
    font-weight: bold;
}

.details-header .details-header-actions {
	right: 15px;
    position: absolute;
}

.details-header .details-header-actions button {
	margin-right: 15px;
}

.details-header .details-header-actions .btn i {
	margin-right: 10px;
}

.card-header {
	display: inline-flex;
    align-items: center;
	padding: 7px 10px 7px 10px;
}

.card-header-buttons {
	right: 8px;
    position: absolute;
}

.card-header-buttons button i{
	margin-right: 2px;
}

.card-body {
	padding: 0;
	margin: 0;
}

.details-table {
	margin-bottom: 0;
}

.details-table td {
	padding: 7px;
}

.card-border {
	border: 1px solid #ff8100;
}

.select2-container, .select2-container--below {
    width: 100% !important;
}

.dataAccounts {
	margin: 0px 5px -1px 5px;
    border-bottom: 1px solid #ff8100;
	font-size: 14px;
}

.dataAccounts .row-item {
	margin: 4px 0 0 0;
}

.dataAccounts .attribute {
	border: 2px solid black;
    border-radius: 3px;
    padding: 0 5px 0 5px;
	font-size: 11.5px;
}

.nowrap {
	white-space: nowrap;
}

.btn.btn-xs {
    padding: 3px 5px 3px 5px;
    font-size: 11px	
}

.dataAccounts .actions {
    float: right;
}

.device-stats-lcd-card {
	border: 1px solid #ddd;
	margin-bottom: 0;
}

.device-stats-lcd {
	text-align: center;
	font-size: 16px;
	table-layout: fixed ;
	width: 100%;
}

.device-stats-lcd td {
	border: 1px solid #ddd;
	width: 25%;
}

.device-stats-lcd td span {
	font-family: lcd;
	font-size: 30px;
	font-weight: bold;
	display: block;
	margin: 10px 0 3px 0;
	color: #C03329;
}

.phone-buttons {
	border-radius: 9px;
    padding: 7px;
    color: #ff7878;
    background: #353535;
    border: 1px solid black;
}

.hidden {
	display: none;
}

::-webkit-input-placeholder { /* WebKit browsers */
    text-transform: none;
}
:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
    text-transform: none;
}
::-moz-placeholder { /* Mozilla Firefox 19+ */
    text-transform: none;
}
:-ms-input-placeholder { /* Internet Explorer 10+ */
    text-transform: none;
}
::placeholder { /* Recent browsers */
    text-transform: none;
}

::-webkit-scrollbar {
    width: 10px;
}
 
::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 6px rgba(185, 185, 185, 0.52);
	border-radius: 20px;
}
 
::-webkit-scrollbar-thumb {
  background-color: darkgrey;
  outline: 1px solid slategrey;
  border-radius: 20px;
}

/* DASHBOARD */
.dashboard-counters {
	margin-top: -3px;
}

.dashboard-counters .counter {
	height: 130px;
	margin: 3px 0 3px 0;
}

.dashboard-counters .row {
	height: 100%;
}

.dashboard-counters .icon {
	text-align: center;
	font-size: 40px;
	position: relative;
    align-items: center;
    justify-content: center;
	display: inline-flex;
	height: 100%;
	width: 100%;
	color: #4040409e;
}

.dashboard-counters .category {
	margin-top: 15px;
    font-size: 23px;
    color: white;
    font-family: monospace;
    font-variant: all-petite-caps;
	text-align: right;
    margin-right: 30px;
	line-height: 17px;
	overflow-wrap: normal;
}

.dashboard-counters .value {
    font-size: 30px;
    color: #f5f5f5;
    font-family: monospace;
	text-align: right;
    margin-right: 30px;
	position: absolute;
    right: 15px !important;
    bottom: 23px;
}

.dashboard-counters .spinner-border {
	color: white !important;
	width: 2.5rem;
    height: 2.5rem;
    vertical-align: text-bottom;
    border-width: .20em;
}

.dashboard-wrapper {
	background-color: #191919;
	color: #d4d4d4;
}

.dashboard-wrapper hr {
	border-top: 1px solid rgb(49, 49, 49);
}

.form-control {
	border-color: #4a4a4a!important;
	height: inherit!important;
	padding: .15rem .5rem;
	display: initial;
}

.select2-selection {
	border-color: #4a4a4a!important;
	padding: 0;
}

.table td, .table th {
    padding: 0.5rem;
    vertical-align: middle;
    border-top: 1px solid #dee2e6;
}

.dataTables_length select {
	min-width: 60px;
}

.td-actions {
	width: 1% !important;
	white-space: nowrap;
	text-align: center;
}

.bg-success, .btn-success, .badge-success {
	background-color: #31ce36 !important;
}

.bg-danger, .btn-danger, .badge-danger {
	background-color: #f25961 !important;
}

.bg-warning, .btn-warning, .badge-warning {
	background-color: #ffad46 !important;
}

.bg-info, .btn-info, .badge-info {
	background-color: #48abf7 !important;
}

.bg-dark, .btn-dark, .badge-dark {
	background-color: #343a40 !important;
}

.bg-light, .btn-light, .badge-light {
	background-color: #f8f9fa !important;
}

.bg-primary, .btn-primary, .badge-primary {
	background-color: #1572e8 !important;
}

.bg-secondary, .btn-secondary, .badge-secondary {
	background-color: #6861ce !important;
}