
/**
 * @copyright Martin Procházka (c) 2020
 * @license   MIT License
 */

.min-h-auto { min-height: auto !important; }
.text-subtitle { font-size: .6em; }

.small-box .inner { text-align: left; }
.small-box .icon { display: block; }
.small-box .icon > i.watermark {
	transform: none !important;
	font-size: 32px;
	transition: none;
	top: 27px;
}


a.card.card-outline i { font-size: 3rem; display: block; margin: 0 auto; }
a.card.card-outline:not(:hover) { background: rgba(0,0,0, .075); }
a.card.card-outline {
	border-width: 4px;
	border-style: dashed;
	border-color: var(--secondary);
	box-shadow: none;
	font-size: 1.25rem;
	transition: background 75ms;
}

.o-50 { transition: opacity .10s ease-in-out; }
.o-50:not(:hover) { opacity: .5; }

/* Popover */
.popover { max-width: 350px }
.popover .popover-body p:last-child { margin-bottom: 0px; }

/* Full page overlay */
.wrapper > .overlay {
	position: absolute;
	height: 100%;
	left: 0;
	top: 0;
	width: 100%;
	-ms-flex-align: center;
	align-items: center;
	background-color: rgba(255,255,255,.7);
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: center;
	justify-content: center;
	z-index: 1150;
}


/**
 * Navigations
 */
.navbar.navbar-toolbar { max-height: 56px; }
.navbar .navbar-nav .nav-item.active { background-color: rgba(0,0,0, .25); }
.navbar.bg-yellow .navbar-nav .nav-item.active { background-color: #fff; }

.navbar .navbar-collapse .navbar-nav .nav-link { padding: 0.5rem 1rem !important; }

.nav-sidebar .nav-link > .right:nth-child(2),
.nav-sidebar .nav-link > p > .right:nth-child(2) {
	right: 1rem;
}

.navbar .navbar-nav > .user-menu .user-image {
	width: 28px;
	height: 28px;
	margin-right: 0px;
	margin-bottom: -4px;
}

.nav-sidebar:not(.menu-admin) .nav-item > .nav-link { margin-bottom: 0px; }

.nav-treeview > .nav-item > .nav-link { padding-left: 35px; }

/*.list-group .list-group-item:not(.active):hover,*/
.navbar-nav > li:not(.active):hover,
.nav > li > a:not(.active):hover {
	background-color: rgba(0,0,0, .125);
}


/* Dropdowns & Lists */
.dropdown-menu.trackable { width: 26rem; }
.dropdown-menu.trackable .dropdown-item,
.list-group.trackable .list-group-item {
	padding-left: 0px;
	display: flex !important;
	white-space: normal !important;
}
.dropdown-menu.trackable .dropdown-item .content { line-height: 1.15; width: 22rem; }
.dropdown-menu.trackable .dropdown-item .icon,
.list-group.trackable .list-group-item .icon {
	width: 4rem;
	text-align: center;
	align-self: center !important;
	line-height: 1.15;
}


/**
 * Forms
 */
input:read-only { color: var(--secondary) !important; }
textarea[rows="6"] { min-height: 158px; }

.form-group label.control-label,
.custom-control span.control-label { font-weight: normal; }

.form-group.required .control-label,
.custom-control.required .control-label { font-weight: bold; }

.form-group.required .control-label::after,
.custom-control.required .control-label::after {
	top: 0;
	left: 0;
	position: relative;
	display: inline;
	color: var(--red);
	content: "*";
	padding-left: 4px;
}

.input-group-text.day { width: calc(60px + 5vw); }

.custom-file-label::after { display: none; }
.form-control.is-invalid { z-index: 3; }

.form-control.date.flatpickr-input { height: calc(1.8125rem + 4px); }
.form-control.btn-group { height: calc(2.25rem + 3px); }

.select2-container { flex: 1 1 auto; }
.select2-container .select2-selection { height: auto; }
.select2-container .select2-selection--single { padding: .344rem .75rem; }

.modal .input-group .select2-container { max-width: calc(100% - 46px); }

.custom-control-label::before,
.custom-file-label,
.custom-select {
	transition: none;
}

/* Auto fill inputs */
input:-webkit-autofill:is(*,:focus,:active,:hover) {
	filter: none; /* needed for firefox! */
	box-shadow: 0 0 0 100px #fff inset;
	border-color: var(--orange) !important;
}

/* Login page */
.login-box, .register-box { width: 420px; }

.login-box .login-card-body .input-group .input-group-text,
.register-box .register-card-body .input-group .input-group-text {
	border-top-right-radius: 0;
	border-bottom-right-radius: 0;
	border-left: 1px solid #ced4da;
	background-color: #e9ecef;
	overflow: hidden;
}

.login-box .login-card-body .input-group .form-control,
.register-box .register-card-body .input-group .form-control {
	border-right: 1px solid #ced4da;
}

.login-box .login-card-body .input-group .form-control:focus,
.register-box .register-card-body .input-group .form-control:focus {
	border-right-color: #80bdff;
}

.login-box .login-card-body .input-group .form-control.is-invalid,
.register-box .register-card-body .input-group .form-control.is-invalid {
	border-right-color: #dc3545;
}

.login-box .login-card-body .input-group .form-control.is-valid,
.register-box .register-card-body .input-group .form-control.is-valid {
	border-right-color: #28a745;
}


/**
 * Tables
 */
.table th { white-space: nowrap; }

.table .col-action .dropup,
.table .col-action .dropdown {
	display: inline-block;
}

.datagrid .datagrid-filters .select2-container { display: block; }

.datagrid .hidden {
	display: none !important
}

.datagrid table thead tr th {
	font-size: 90%;
	vertical-align: top
}

.datagrid table tbody td {
	vertical-align: middle
}

.datagrid table tbody tr.row-item-detail.toggled {
	display: table-row
}

.datagrid table tbody tr.row-item-detail,
.datagrid table tbody tr.row-item-detail .item-detail-content,
.datagrid table tbody tr.row-item-detail-helper,
.datagrid table thead tr th .datagrid-column-header-additions .column-settings-menu .dropdown-toggle::after,
.datagrid .datagrid-tree .datagrid-tree-item.has-children > .datagrid-tree-item-children {
	display: none
}


/**
 * Colors
 */
.text-indigo:is(a):is(:hover, :focus) { color: #510bc4 !important; }
.text-lightblue:is(a):is(:hover, :focus) { color: #307095 !important; }
.text-navy:is(a):is(:hover, :focus) { color: #003872 !important; }
.text-purple:is(a):is(:hover, :focus) { color: #4c4988 !important; }
.text-fuchsia:is(a):is(:hover, :focus) { color: #c30c9a !important; }
.text-pink:is(a):is(:hover, :focus) { color: #d91a72 !important; }
.text-maroon:is(a):is(:hover, :focus) { color: #ab154c !important; }
.text-orange:is(a):is(:hover, :focus) { color: #e76b00 !important; }
.text-lime:is(a):is(:hover, :focus) { color: #00cd5a !important; }
.text-teal:is(a):is(:hover, :focus) { color: #2ba7a7 !important; }
.text-olive:is(a):is(:hover, :focus) { color: #2e7555 !important; }
.text-gray-dark:is(a):is(:hover, :focus) { color: #1d2124 !important; }


/**
 * Backgrounds
 */
.bg-indigo:is(a, button):is(:hover, :focus) { background-color: #510bc4 !important; }
.bg-lightblue:is(a, button):is(:hover, :focus) { background-color: #307095 !important; }
.bg-navy:is(a, button):is(:hover, :focus) { background-color: #003872 !important; }
.bg-purple:is(a, button):is(:hover, :focus) { background-color: #4c4988 !important; }
.bg-fuchsia:is(a, button):is(:hover, :focus) { background-color: #c30c9a !important; }
.bg-pink:is(a, button):is(:hover, :focus) { background-color: #d91a72 !important; }
.bg-maroon:is(a, button):is(:hover, :focus) { background-color: #ab154c !important; }
.bg-orange:is(a, button):is(:hover, :focus) { background-color: #e76b00 !important; }
.bg-lime:is(a, button):is(:hover, :focus) { background-color: #00cd5a !important; }
.bg-teal:is(a, button):is(:hover, :focus) { background-color: #2ba7a7 !important; }
.bg-olive:is(a, button):is(:hover, :focus) { background-color: #2e7555 !important; }
.bg-gray-dark:is(a, button):is(:hover, :focus) { background-color: #1d2124 !important; }


/**
 * Dark Mode
 */
.dark-mode hr { border-color: rgba(255,255,255, .1); }

.dark-mode .card .overlay,
.dark-mode .info-box .overlay,
.dark-mode .overlay-wrapper
.dark-mode .overlay,
.dark-mode .small-box .overlay,
.dark-mode .wrapper > .overlay {
	background-color: rgba(52,58,64,.7);
}

/* Navbar */
.dark-mode .navbar.navbar-light .nav-item:is(.active) .nav-link { color: rgba(255,255,255,.9); }
.dark-mode .navbar.navbar-light .nav-link { color: rgba(255,255,255,.5); }
.dark-mode .navbar.navbar-light { background: var(--gray-dark); }

/* Dropdown & Lists */
.dark-mode .dropdown-menu .dropdown-item.disabled { color: var(--secondary); }
.dark-mode .dropdown-menu.trackable .dropdown-item:hover,
.dark-mode .list-group.trackable .list-group-item:hover {
	background-color: rgba(0,0,0, .125);
}

/* Popover */
.dark-mode .popover {
	color: var(--light);
	background-color: var(--gray-dark);
}

.dark-mode .popover[x-placement^="top"] .popover-header::before,
.dark-mode .popover[x-placement^="top"] .arrow::after { border-top-color: var(--gray-dark) !important; }
.dark-mode .popover[x-placement^="left"] .popover-header::before,
.dark-mode .popover[x-placement^="left"] .arrow::after { border-left-color: var(--gray-dark) !important; }
.dark-mode .popover[x-placement^="right"] .popover-header::before,
.dark-mode .popover[x-placement^="right"] .arrow::after { border-right-color: var(--gray-dark) !important; }
.dark-mode .popover[x-placement^="bottom"] .popover-header::before,
.dark-mode .popover[x-placement^="bottom"] .arrow::after { border-bottom-color: var(--gray-dark) !important; }

.dark-mode .popover .popover-body { color: var(--light); }
.dark-mode .popover .popover-header {
	background-color: rgba(0,0,0,.1);
	border-color: rgba(0,0,0,.125);
}

/* Forms */
.dark-mode .input-group-text { background-color: rgba(0,0,0, .1); }
.dark-mode input:read-only { background: #2f343a !important; }

.dark-mode input:-webkit-autofill:is(*,:focus,:active,:hover) {
	box-shadow: 0 0 0 100px var(--gray-dark) inset;
}

/* Table primary */
.dark-mode .table-primary,
.dark-mode .table-primary > td,
.dark-mode .table-primary > th {
	background-color: rgba(63, 103, 145, .6);
}

.table-hover .table-primary:hover > td,
.table-hover .table-primary:hover > th {
	background-color: rgba(63, 103, 145, .4);
}

/* Table secondary */
.dark-mode .table-secondary,
.dark-mode .table-secondary > td,
.dark-mode .table-secondary > th {
	background-color: rgba(90, 98, 104, .6);
}

.table-hover .table-secondary:hover > td,
.table-hover .table-secondary:hover > th {
	background-color: rgba(90, 98, 104, .4);
}

/* Table success */
.dark-mode .table-success,
.dark-mode .table-success > td,
.dark-mode .table-success > th {
	background-color: rgba(0, 188, 140, .6);
}

.table-hover .table-success:hover > td,
.table-hover .table-success:hover > th {
	background-color: rgba(0, 188, 140, .4);
}

/* Table info */
.dark-mode .table-info,
.dark-mode .table-info > td,
.dark-mode .table-info > th {
	background-color: rgba(36, 133, 199, .6);
}

.table-hover .table-info:hover > td,
.table-hover .table-info:hover > th {
	background-color: rgba(36, 133, 199, .4);
}

/* Table danger */
.dark-mode .table-danger,
.dark-mode .table-danger > td,
.dark-mode .table-danger > th {
	background-color: rgba(225, 46, 28, .6);
}

.table-hover .table-danger:hover > td,
.table-hover .table-danger:hover > th {
	background-color: rgba(225, 46, 28, .4);
}

/* Table warning */
.dark-mode .table-warning,
.dark-mode .table-warning > td,
.dark-mode .table-warning > th {
	background-color: rgba(212, 134, 11, .6);
}

.table-hover .table-warning:hover > td,
.table-hover .table-warning:hover > th {
	background-color: rgba(212, 134, 11, .4);
}

/* Table light */
.dark-mode .table-light,
.dark-mode .table-light > td,
.dark-mode .table-light > th {
	background-color: rgba(228, 231, 235, .6);
}

.table-hover .table-light:hover > td,
.table-hover .table-light:hover > th {
	background-color: rgba(228, 231, 235, .4);
}

/* Table dark */
.dark-mode .table-dark,
.dark-mode .table-dark > td,
.dark-mode .table-dark > th {
	background-color: rgba(23, 26, 29, .6);
}

.table-hover .table-dark:hover > td,
.table-hover .table-dark:hover > th {
	background-color: rgba(23, 26, 29, .4);
}
