/* Import Fonts */
@import url('https://fonts.googleapis.com/css?family=Roboto:300,400,500,600,700&display=swap');

/* Global Font */
body, html {
    /*font-family: "Helvetica Neue", -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;*/
	font-family: 'Roboto', sans-serif;
}
:root {

	/* Text */
	--color-text: #DDDDDD;
	--color-text-secondary: #9D9D9D;
	--color-text-warning: #ea9461;
	--color-heading: #648dab;

	/* Hyperlinks */
	--color-link: #4DAAFC;
	--color-link-hover: #4DAAFC;

	/* Bootstrap Colors */
	--color-primary: #0078D4;
	--color-secondary: #616161;
	--color-success: #27AE60;
	--color-danger: #F85149;
	--color-warning: #FFA500;
	--color-info: #0078D4;
	--color-light: #F8F8F8;
	--color-dark: #181818;

	/* Special */
	--color-accent: #0078D4;
	--color-chart-accent: #27AE60;
	--color-positive-indicator: #4CAF50;
	--color-negative-indicator: #F85149;
	--color-neutral-indicator: #95A5A6;
	--color-hover: #2B2B2B;
	--color-orange: #ea9461;
	--color-nav-hover-bg: #2B2B2B;
	--color-nav-active-bg: #0078D4;
	--color-nav-active-text: #FFFFFF;

	/* Grayscale */
	--color-white: #fff;
	--color-light-gray: #bbb;
	--color-gray: #777;
	--color-dark-gray: #444;
	--color-black: #000;

	/* Background */
	--color-bg: #161616;
	--color-bg-secondary: #1F1F1F;

	/* UI Panels */
	--color-ui-panel: #262626;
	--color-ui-panel-border: #454545;

	/* Forms */
	--color-form-text: #CCCCCC;
	--color-form-bg: #202020;
	--color-form-border: #3C3C3C;
}
html, body {
    height: 100%;
}

body {
    color: var(--color-text);
    background-color: var(--color-bg);
}

#content {
    min-height: 100dvh;
    min-width: 0;
    padding: calc(var(--bs-gutter-x, 1.5rem) * 0.5) 0;
}
#navigation-sidebar {
    height: 100vh;
    height: 100dvh;
    position: fixed;
    top: 0;
    left: 0;
    width: 280px;
    transform: translateX(-100%);
    transition: transform 0.3s ease;
    z-index: 1050;
    background-color: var(--color-ui-panel);
    border-right: 1px solid var(--color-ui-panel-border);
    overflow-y: auto;
    overflow-x: hidden;
}

.sidebar-gutter-padding {
    padding: calc(var(--bs-gutter-x, 1.5rem) * 0.5);
}
#navigation-sidebar.show {
    transform: translateX(0);
}
@media (min-width: 1400px) {
    /* #navigation-sidebar {
        transform: translateX(0);
        position: static;
        height: 100vh;
        height: 100dvh;
    } */
    #navigation-sidebar {
        transform: none;
    }
    #content {
        margin-left: 280px;
    }
    #toggle-btn, #close-btn {
        display: none;
    }
}

/* Toggle Button */
#toggle-btn {
    margin-left: calc(var(--bs-gutter-x, 1.5rem) * 0.5);
    margin-bottom: calc(var(--bs-gutter-x, 1.5rem) * 0.5);
}

#close-btn {
    margin-bottom: calc(var(--bs-gutter-x, 1.5rem) * 0.5);
}

/* Navigation over helpdesk/feedback bubble on mobile */
@media (max-width: 1399px) {
    #navigation-sidebar {
        z-index: 9999999999;
    }
}

/* Horizontal divider */
#navigation-sidebar .horizontal-divider {
    border-bottom: 1px solid var(--color-ui-panel-border);
    margin: 1rem -1rem;
    width: auto;
}

/* Add a left border to each collapse nav-link (fold out menu style) */
#navigation-sidebar .primary-link {
    color: var(--color-text-secondary);
    font-size: 1.1rem;
    font-weight: 400;
    text-decoration: none;
    /* margin: 0; */
    padding: 0.5rem 0.5rem;
}
#sidebarMenu .nav-item:not(:first-of-type) .primary-link, #sidebarFooter .primary-link:not(:first-of-type) {
    /* padding: 0.5rem 0; */
}
#navigation-sidebar .primary-link--static {
    cursor: pointer;
    margin: 0;
    padding: 0.5rem 0.5rem;
}
#navigation-sidebar .primary-link--static * {
    cursor: pointer;
}
#navigation-sidebar .primary-link--static .form-check.form-switch {
    padding-left: 1.5em;
}
#navigation-sidebar .primary-link--static .form-check.form-switch .form-check-input {
    margin-left: -1.5em;
    margin-top: 0.27rem;
    transform: scale(0.85);
    transform-origin: left center;
}
#navigation-sidebar .primary-link i.fa {
    margin-right: 0.5rem;
}

/* Add a left border to each collapse nav-link (fold out menu style) */
#sidebarMenu .secondary-link {
    border-left: 3px solid var(--color-ui-panel-border);
    color: var(--color-text-secondary);
    font-size: 1.0rem;
    font-weight: 400;
    text-decoration: none;
    padding-left: 1rem;
}
#sidebarMenu .secondary-link.active {
    border-left: 3px solid var(--color-nav-active-bg);
    color: var(--color-nav-active-text);
}

/* Collapse margins */
#sidebarMenu .nav {
    margin-left: 0;
    padding-left: 18px;
    /* margin-top: 0.5rem; */
}

#sidebarMenu .nav.flex-column {
    margin-bottom: 1rem;
}

/* No menu animation */
/*#sidebarMenu .collapsing {
    transition: none !important;
}*/

/* Submenu chevron arrow styles */
.nav-chevron {
    transition: transform 0.3s ease;
    font-size: 0.75rem;
    opacity: 0.6;
}

.nav-chevron.rotated {
    transform: rotate(180deg);
}

/* Hovers */
#navigation-sidebar .primary-link:hover {
    background-color: var(--color-nav-hover-bg);
    text-decoration: none;
    border-radius: 4px;
}
#navigation-sidebar .secondary-link:hover {
    background-color: var(--color-nav-hover-bg);
    text-decoration: none;
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
}

/* Active */
#navigation-sidebar .primary-link.active/*,
#navigation-sidebar .primary-link.text-purple*/ {
    background-color: var(--color-nav-active-bg);
    color: var(--color-nav-active-text);
    border-radius: 4px;
    font-weight: 600;
}
#navigation-sidebar .secondary-link.active {
    background-color: var(--color-nav-active-bg);
    color: var(--color-nav-active-text);
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
    font-weight: 600;
}

.badge.text-bg-primary { background-color: var(--color-primary) !important; }
.badge.text-bg-secondary { background-color: var(--color-secondary) !important; }
.badge.text-bg-success { background-color: var(--color-success) !important; }
.badge.text-bg-danger { background-color: var(--color-danger) !important; }
.badge.text-bg-warning { background-color: var(--color-warning) !important; }
.badge.text-bg-info { background-color: var(--color-info) !important; }
.badge.text-bg-light { background-color: var(--color-light) !important; }
.badge.text-bg-dark { background-color: var(--color-dark) !important; }/* Buttons */
.btn {
/*  text-transform: uppercase;*/
  
  /*padding-right: 1.5rem !important;
  padding-left: 1.5rem !important;
  border-radius: 50rem !important;*/
  text-decoration: none !important;
}

/* Bootstrap button styles */
.btn-primary {
  color: var(--color-white) !important;
  background-color: var(--color-primary) !important;
  border-color: var(--color-primary) !important;
}
.btn-primary.btn.active {
  color: var(--color-primary) !important;
  background-color: var(--color-white) !important;
  border-color: var(--color-white) !important;
}
.btn-secondary {
  color: var(--color-white) !important;
  background-color: var(--color-secondary) !important;
  border-color: var(--color-secondary) !important;
}
.btn-success {
  color: var(--color-white) !important;
  background-color: var(--color-success) !important;
  border-color: var(--color-success) !important;
}
.btn-danger {
  color: var(--color-white) !important;
  background-color: var(--color-danger) !important;
  border-color: var(--color-danger) !important;
}
.btn-warning {
  color: var(--color-black) !important;
  background-color: var(--color-warning) !important;
  border-color: var(--color-warning) !important;
}
.btn-info {
  color: var(--color-black) !important;
  background-color: var(--color-info) !important;
  border-color: var(--color-info) !important;
}
.btn-light {
  color: var(--color-black) !important;
  background-color: var(--color-light) !important;
  border-color: var(--color-light) !important;
}
.btn-dark {
  color: var(--color-white) !important;
  background-color: var(--color-dark) !important;
  border-color: var(--color-dark) !important;
}

/* Hover, active, focus */
.btn:hover, .btn:active, .btn:focus {
  opacity: 0.8 !important;
}

/* Disabled buttons */
.btn.disabled, .btn:disabled, fieldset:disabled .btn {
  opacity: 0.4 !important;
  cursor: not-allowed !important;
  pointer-events: all !important;
}/* Colors */
.light-gray { color: var(--color-light-gray) }
.gray { color: var(--color-gray) }

/* Background Color */
.bg-light-gray { background-color: var(--color-light-gray) }
.bg-gray { background-color: var(--color-gray) }
.bg-dark-gray { background-color: var(--color-dark-gray) }

/* Special */
.accent { color: var(--color-accent); }
.chart-accent { color: var(--color-chart-accent); }
.positive-indicator { color: var(--color-positive-indicator); }
.negative-indicator { color: var(--color-negative-indicator); }
.neutral-indicator { color: var(--color-neutral-indicator); }
.hover { color: var(--color-hover); }

/* Chart colors */
.d-background {
    background-color: rgba(0, 160, 240, 0.25) !important;
}
.w-background {
    background-color: rgba(240, 192, 0, 0.25) !important;
}
.m-background {
    background-color: rgba(128, 0, 240, 0.25) !important;
}
.ltf-background {
    background-color: rgb(25, 25, 25) !important;
}
.mtf-background {
    background-color: rgb(44, 44, 44) !important;
}
.htf-background {
    background-color: rgb(63, 63, 63) !important;
}input, textarea, select {
  color: var(--color-white) !important;
  background-color: var(--color-form-bg) !important;
  border-color: var(--color-form-border) !important;
  border-radius: 3px !important;
}

/* Placeholder text color */
input::placeholder,
textarea::placeholder {
  color: var(--color-gray) !important;
}

label {
  color: var(--color-light-gray) !important;
}

/*input:focus, textarea:focus, select:focus {
	color: var(--color-form-text) !important;
  background-color: var(--color-form-bg) !important;
  border-color: var(--color-form-border) !important;
}*/

/*input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus {
  -webkit-text-fill-color: var(--color-light) !important;
  -webkit-box-shadow: 0 0 0px 1000px var(--color-bg) inset !important;
  transition: background-color 5000s ease-in-out 0s;
}*/

/*input:disabled {
  color: var(--color-dark) !important;
  background-color: var(--color-bg) !important;
}*/


/*input:-webkit-autofill,
textarea:-webkit-autofill,
select:-webkit-autofill {
    -webkit-box-shadow: 0 0 0 1000px var(--color-bg) inset !important;
    color: var(--color-text) !important;
}*/

/* No focus glow */
/*input:focus {
    outline: none;
    border: 1px solid var(--color-primary) !important;
}*/
#custom-modal {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width :100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.7);
	cursor:pointer;
	z-index: 10000;
}

#custom-modal .table-cell {
	display: table-cell;
	vertical-align: middle;
	padding-left: 15px;
	padding-right: 15px;
	height:100%;
	width:100%;
}

#custom-modal .inside {
	width:100%;
	height:100%;
	display: flex;
	align-items: center;
	justify-content: center;
}

#custom-modal .body {
	position: relative;
	background-color: var(--color-bg-secondary);
	padding: 10px 20px 15px 20px;
	width: auto;
	cursor: auto;
	border-radius:10px;

	max-height: 90vh;
	overflow-y: auto !important;
	overflow-x: hidden !important;
}

#custom-modal .body .title {
	/*color: var(--color-yellow);*/
}

/* Big screens */
@media (min-width: 992px) {
	#custom-modal .body {
		max-width: 70%;
	}
}

/* Small screens */
@media (max-width: 991px) {
	#custom-modal .body {
		max-width: 100%;
		margin-left:10px;
		margin-right:10px;
	}
}

/*#custom-modal .title {
	position: absolute;
	top: 10px;
	left: 20px;
	font-size: 20px;
}*/

#custom-modal .close {
	position: absolute;
	top: 6px;
	right: 6px;
	font-size: 20px;
	cursor: pointer;
	padding-left:6px;
	padding-right:6px;
}
#custom-modal .close:hover i {
	color: var(--color-yellow) !important;
}

body.disable-scroll {
	overflow-y: hidden !important;
}/* Nice shadow */
.shadow {
	box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.5) !important;
}.ui-panel {
    position: relative;
    margin: 0;
    padding: 15px;
    background-color: var(--color-ui-panel);
    border: 1px solid var(--color-ui-panel-border);
    height: 100%;
}

/* Match vertical panel spacing to horizontal Bootstrap gutter spacing */
.panel-gap-top {
    margin-top: calc(var(--bs-gutter-x, 1.5rem) * 0.5);
}

/* Balanced panel spacing: center gap equals outer edge gap */
.panel-row-tight {
    --panel-tight-gutter: calc(var(--bs-gutter-x, 1.5rem) * 0.5);
    margin-left: calc(var(--panel-tight-gutter) * -0.5);
    margin-right: calc(var(--panel-tight-gutter) * -0.5);
}

.panel-row-tight > [class*="col"] {
    padding-left: calc(var(--panel-tight-gutter) * 0.5);
    padding-right: calc(var(--panel-tight-gutter) * 0.5);
}
/* Headings */
h1, h2, h3, h4, h5, h6 {
	font-family: 'Roboto', sans-serif;
	font-weight: 700;
	color: var(--color-heading);
}

/* Regular */
p {
	font-family: 'Roboto', sans-serif;
	font-weight: 400;
}

/* Light */
.text-small {
	font-family: 'Roboto', sans-serif;
	font-weight: 300;
}

/* Links */
a:link {
	color: var(--color-link);
	text-decoration: none;
}
a:visited {
	color: var(--color-link);
}
a:active {
	color: var(--color-link);
}
a:focus {
	color: var(--color-link);
}
a:hover {
	color: var(--color-link-hover);
	text-decoration: underline;
}
