:root {
	--root-primary-color: #072241 !important;
	--root-secondary-color: #32c0cb !important;
	--root-success-color: #1fab6a !important;
	--root-danger-color: #f61f01 !important;
	--root-warning-color: #e1ce1e !important;
	--root-info-color: #ffbc00 !important;
	--root-light-color: #7a93b6 !important;
	/* b98d70 */
	--root-dark-color: #082116 !important;
	--root-review-color: #fe266a !important;
	--root-approve-color: #3268ff !important;
	--root-print-color: #875ebe !important;
	--root-print-label: #13b26a !important;

	--root-white-color: #ffffff !important;

	--root-primary-color-rgba: rgb(from var(--root-primary-color) r g b / 0.05);
	--root-secondary-color-rgba: rgb(from var(--root-secondary-color) r g b / 0.05);
	--root-success-color-rgba: rgb(from var(--root-success-color) r g b / 0.05);
	--root-danger-color-rgba: rgb(from var(--root-danger-color) r g b / 0.05);
	--root-warning-color-rgba: rgb(from var(--root-warning-color) r g b / 0.05);
	--root-info-color-rgba: rgb(from var(--root-info-color) r g b / 0.05);
	--root-light-color-rgba: rgb(from var(--root-light-color) r g b / 0.05);
	--root-dark-color-rgba: rgb(from var(--root-light-color) r g b / 0.05);

	/* Premium button variables */
	--btn-shadow: 0 4px 15px rgba(0, 0, 0, 0.15);
	--btn-shadow-hover: 0 8px 25px rgba(0, 0, 0, 0.25);
	--btn-inner-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.3);
	--btn-border-radius: 8px;
	--btn-font-weight: 600;
	--btn-transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	--btn-transform: translateY(-2px);
}

.pagination>.active>a,
.pagination>.active>a:focus,
.pagination>.active>a:hover,
.pagination>.active>span,
.pagination>.active>span:focus,
.pagination>.active>span:hover {
	color: var(--root-white-color) !important;
	background-color: var(--root-primary-color) !important;
	border-color: var(--root-primary-color) !important;
}

.dataTables_length {
	display: inline-flex !important;
	float: right !important;
}

.dataTables_filter {
	display: inline-flex !important;
	float: right !important;
}

.hidden {
	display: none !important;
}

.content .groups h4 {
	text-align: start;
}

.form-control-feedback {
	line-height: 34px !important;
}

.system_logo_display {
	vertical-align: middle;
	width: 150px;
	display: block;
	text-align: center;
	margin: 0 auto;
	margin-bottom: 20px;
}

.skin-blue .main-header li.user-header {
	background-color: var(--root-secondary-color);
}

.navbar-nav>.user-menu>.dropdown-menu>.user-footer {
	text-align: center;
}

.skin-blue .main-header .navbar {
	display: flex;
}

.navbar-static-top {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.navbar-custom-menu {
	margin-left: auto;
}

.skin-blue .main-header .navbar .nav>li>a {
	line-height: 50px !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	vertical-align: middle !important;
}

.skin-blue .main-header a:hover,
a:active,
a:focus {
	border-bottom: 0px !important;
}

.navbar-nav>.user-menu>.dropdown-menu>.user-footer .btn-default {
	margin-bottom: 5px;
}

.dataTables_scrollHeadInner {
	min-width: 100%;
	width: 100% !important;
}

div.dataTables_scrollHead table.table-bordered {
	border-bottom-width: 0;
	width: 100% !important;
}

div.dataTables_scrollBody table {
	width: 100% !important;
}

.form-control[readonly],
fieldset[disabled] .form-control {
	background-color: #00000029 !important;
	opacity: 1;
	border-radius: var(--form-control-radius) !important;
	font-weight: 500 !important;
	letter-spacing: 0.01em !important;
	transition: var(--form-control-transition) !important;
	box-shadow: var(--form-control-shadow) !important;
	padding: 0.5rem 0.5rem !important;
	font-size: 1.3rem !important;
	outline: none !important;
	position: relative !important;
	border: 1px solid var(--form-control-border) !important;
}

/* Fixed Header Styles */
.main-header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	width: 100%;
	z-index: 1035;
}

/* Body padding to account for fixed header */
body {
	padding-top: 0;
}

/* Sidebar adjustments for fixed header */
.main-sidebar {
	top: 0;
	height: 100vh;
}

li.header {
	display: none !important;
}

.strength_meter div {
	width: 8%;
	background: #e6e6e6;
	height: 43px;
	text-align: center !important;
	color: #000;
	line-height: 43px;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
	padding-right: 12px;
	border-radius: 5px;
	line-height: 43px !important;
	vertical-align: middle !important;
}

/* Content wrapper adjustments */
.content-wrapper {
	margin-top: 50px;
	margin-left: 230px;
	min-height: calc(100vh - 50px);
}

.skin-blue .main-header .logo {
	border-bottom: 0px solid var(--root-primary-color) !important;
	border-right: 0px solid var(--root-primary-color) !important;
}

.date_time_display {
	pointer-events: none;
}


#date_time_mobile {
	display: inline-flex;
	white-space: pre-line;
	/* text-align: center; */
	pointer-events: none;
	/* padding-top: 10px; */
}

#date_time_html {
	display: inline-flex;
	white-space: pre-line;
	/* text-align: center; */
	/* padding-top: 10px; */
	line-height: 50px !important;
}

label {
	font-size: 15px;
	margin-bottom: 5px;
	display: block;
}

/* Mobile responsiveness */
@media (min-width: 200px) and (max-width: 767px) {
	.navbar-static-top {
		width: 10% !important;
		float: right !important;
	}

	.navbar-custom-menu {
		display: none;
	}

	.navbar-custom-menu_mobile {
		display: block;
	}

	.skin-blue .main-header .logo {
		width: 90% !important;
	}

	.skin-blue .main-header .navbar {
		width: calc(100% - 300px);
	}

	.main-header {
		position: fixed !important;
		display: flex !important;
	}

	.content-wrapper,
	.right-side,
	.main-footer {
		margin-left: 0;
	}

	.main-sidebar {
		top: -50px;
		height: 100vh;
	}
}

@media (min-width: 768px) {
	.navbar-custom-menu {
		display: block;
		/* padding-right: 230px; */
	}

	.navbar-custom-menu_mobile {
		display: none;
	}

	.main-header {
		position: fixed;
		z-index: 1035;
		display: flex;
	}

	.skin-blue .main-header .logo {
		width: 264px !important;
	}

	.sidebar-mini.sidebar-collapse .main-header .logo>.logo-lg {
		display: block !important;
	}

	.skin-blue .main-header .navbar {
		display: block;
		margin-left: 0px;
		width: calc(100% - 150px);
		height: 50px;
	}

	/* .main-sidebar {
        transform: translateX(-100%);
        transition: transform 0.3s ease;
    }

    .main-sidebar.active {
        transform: translateX(0);
    } */

	/* .content-wrapper {
        margin-top: 50px;
        margin-left: 0;
        min-height: calc(100vh - 50px);
    } */
	.sidebar-toggle {
		display: block;
	}

	.main-sidebar {
		/* top: 50px; */
		height: 100vh;
	}
}

@media (min-width: 768px) and (max-width: 1179px) {
	.sidebar-toggle {
		display: block;
	}

	.navbar-custom-menu {
		display: block;
		float: right !important;
		/* padding-right: 230px; */
	}

	.main-header .navbar-custom-menu a {
		position: relative;
		display: block;
		padding: 10px 10px 15px 15px !important;
	}

	.small-box {
		min-height: 150px !important;
	}

	.small-box>.inner {
		padding: 10px;
		height: 100px;
	}

	/* .small-box > .small-box-footer {
         bottom: 120px; 
    } */
}

@media (min-width: 1180px) {
	.skin-blue .main-header .logo {
		width: 264px !important;
	}

	.skin-blue .main-header .navbar {
		display: flex;
		/* width: 80%; */
		width: calc(100% - 0px);
		margin-left: 0px;
		height: 50px;
	}

	.navbar-custom-menu {
		display: block;
		padding-right: 0px;
	}
}

@media (max-width: 1200px) {
	.small-box {
		min-height: 150px;
	}

	.small-box>.inner {
		padding: 10px;
		height: 100px;
	}

	/* .small-box > .small-box-footer {
         bottom: 120px; 
    } */
}

@media (min-width: 1200px) {
	.skin-blue .main-header .logo {
		width: 264px !important;
	}

	.small-box {
		min-height: 150px;
	}

	/* .small-box > .small-box-footer {
        bottom: 120px;
    } */
	.small-box>.inner {
		padding: 10px;
		height: 100px;
	}
}

@media (min-width: 1400px) {
	.skin-blue .main-header .logo {
		width: 264px !important;
	}
}

/* Global font improvements - MUCH LARGER FOR READABILITY */
body {
	font-size: 20px !important;
	line-height: 1.7 !important;
	font-weight: 400 !important;
	-webkit-font-smoothing: antialiased !important;
	-moz-osx-font-smoothing: grayscale !important;
}

/* Improve readability for all text */
body,
p,
span,
div,
td,
th {
	font-size: 1.25rem !important;
	line-height: 1.6 !important;
}

.logo-lg {
	font-size: 2.25rem !important;
	line-height: 50px !important;
}

/* Headers */
h1 {
	font-size: 2.25rem !important;
	font-weight: 700 !important;
}

h2 {
	font-size: 1.875rem !important;
	font-weight: 700 !important;
}

h3 {
	font-size: 1.5rem !important;
	font-weight: 600 !important;
}

h4 {
	font-size: 1.25rem !important;
	font-weight: 600 !important;
}

h5 {
	font-size: 1.125rem !important;
	font-weight: 600 !important;
}

h6 {
	font-size: 1rem !important;
	font-weight: 600 !important;
}

/* Small text elements */
small,
.small {
	font-size: 1.1rem !important;
}

/* Lists */
ul,
ol {
	font-size: 1.25rem !important;
	line-height: 1.7 !important;
}

li {
	font-size: 1.25rem !important;
	line-height: 1.6 !important;
	margin-bottom: 0.5rem !important;
}

/* Links */
a {
	font-size: 1.25rem !important;
	font-weight: 500 !important;
}

/* Table cells */
th,
td {
	font-size: 1.2rem !important;
	padding: 1rem !important;
}

/* Code blocks */
code {
	font-size: 1.1rem !important;
}

pre {
	font-size: 1.2rem !important;
	line-height: 1.6 !important;
}

/* Blockquotes */
blockquote {
	font-size: 1.4rem !important;
	line-height: 1.7 !important;
}

/* Premium button base styles */
.btn {
	font-weight: var(--btn-font-weight) !important;
	border-radius: var(--btn-border-radius) !important;
	box-shadow: var(--btn-shadow) !important;
	transition: var(--btn-transition) !important;
	text-transform: none !important;
	letter-spacing: 0.02em !important;
	position: relative !important;
	overflow: hidden !important;
	outline: none !important;
}

.btn::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 0;
	height: 0;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.15);
	transform: translate(-50%, -50%);
	transition: width 0.6s, height 0.6s;
}

.btn:active::before {
	width: 300px;
	height: 300px;
}

/* Premium button variations */
.btn-primary {
	background: linear-gradient(135deg,
			var(--root-primary-color) 0%,
			var(--root-primary-color) 50%,
			var(--root-primary-color) 100%) !important;
	border: 1px solid var(--root-primary-color) !important;
	color: #fff !important;
	box-shadow: var(--btn-shadow), var(--btn-inner-shadow) !important;
}

.btn-primary:active,
.btn-primary:focus {
	color: #fff !important;
}

.btn-primary:hover {
	background: linear-gradient(135deg,
			var(--root-primary-color) 0%,
			var(--root-primary-color) 50%,
			var(--root-primary-color) 100%) !important;
	transform: var(--btn-transform) !important;
	box-shadow: var(--btn-shadow-hover), var(--btn-inner-shadow) !important;
	color: #fff !important;
}

.btn-secondary {
	background: linear-gradient(135deg,
			var(--root-secondary-color) 0%,
			var(--root-secondary-color) 50%,
			var(--root-secondary-color) 100%) !important;
	border: 1px solid var(--root-secondary-color) !important;
	color: var(--root-primary-color) !important;
	box-shadow: var(--btn-shadow), var(--btn-inner-shadow) !important;
}

.btn-secondary:active,
.btn-secondary:focus {
	color: var(--root-primary-color) !important;
}

.btn-secondary:hover {
	background: linear-gradient(135deg,
			var(--root-secondary-color) 0%,
			var(--root-secondary-color) 50%,
			var(--root-secondary-color) 100%) !important;
	transform: var(--btn-transform) !important;
	box-shadow: var(--btn-shadow-hover), var(--btn-inner-shadow) !important;
	color: var(--root-primary-color) !important;
}

.btn-success {
	background: linear-gradient(135deg,
			var(--root-success-color) 0%,
			var(--root-success-color) 50%,
			var(--root-success-color) 100%) !important;
	border: 1px solid var(--root-success-color) !important;
	color: #fff !important;
	box-shadow: var(--btn-shadow), var(--btn-inner-shadow) !important;
}

.btn-success:active,
.btn-success:focus {
	color: #fff !important;
}

.btn-success:hover {
	background: linear-gradient(135deg,
			var(--root-success-color) 0%,
			var(--root-success-color) 50%,
			var(--root-success-color) 100%) !important;
	transform: var(--btn-transform) !important;
	box-shadow: var(--btn-shadow-hover), var(--btn-inner-shadow) !important;
	color: #fff !important;
}

.btn-danger {
	background: linear-gradient(135deg,
			var(--root-danger-color) 0%,
			var(--root-danger-color) 50%,
			var(--root-danger-color) 100%) !important;
	border: 1px solid var(--root-danger-color) !important;
	color: #fff !important;
	box-shadow: var(--btn-shadow), var(--btn-inner-shadow) !important;
}

.btn-danger:active,
.btn-danger:focus {
	color: #fff !important;
}

.btn-danger:hover {
	background: linear-gradient(135deg,
			var(--root-danger-color) 0%,
			var(--root-danger-color) 50%,
			var(--root-danger-color) 100%) !important;
	transform: var(--btn-transform) !important;
	box-shadow: var(--btn-shadow-hover), var(--btn-inner-shadow) !important;
	color: #fff !important;
}

.btn-warning {
	background: linear-gradient(135deg,
			var(--root-warning-color) 0%,
			var(--root-warning-color) 50%,
			var(--root-warning-color) 100%) !important;
	border: 1px solid var(--root-warning-color) !important;
	color: #212529 !important;
	box-shadow: var(--btn-shadow), var(--btn-inner-shadow) !important;
}

.btn-warning:active,
.btn-warning:focus {
	color: #212529 !important;
}

.btn-warning:hover {
	background: linear-gradient(135deg,
			var(--root-warning-color) 0%,
			var(--root-warning-color) 50%,
			var(--root-warning-color) 100%) !important;
	transform: var(--btn-transform) !important;
	box-shadow: var(--btn-shadow-hover), var(--btn-inner-shadow) !important;
	color: #212529 !important;
}

.btn-info {
	background: linear-gradient(135deg,
			var(--root-info-color) 0%,
			var(--root-info-color) 50%,
			var(--root-info-color) 100%) !important;
	border: 1px solid var(--root-info-color) !important;
	color: var(--root-primary-color) !important;
	box-shadow: var(--btn-shadow), var(--btn-inner-shadow) !important;
}

.btn-info:active,
.btn-info:focus {
	color: var(--root-primary-color) !important;
}

.btn-info:hover {
	background: linear-gradient(135deg,
			var(--root-info-color) 0%,
			var(--root-info-color) 50%,
			var(--root-info-color) 100%) !important;
	transform: var(--btn-transform) !important;
	box-shadow: var(--btn-shadow-hover), var(--btn-inner-shadow) !important;
	color: var(--root-primary-color) !important;
}

.btn-light {
	background: linear-gradient(135deg,
			var(--root-light-color) 0%,
			var(--root-light-color) 50%,
			var(--root-light-color) 100%) !important;
	border: 1px solid #dee2e6 !important;
	color: var(--root-white-color) !important;
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08), var(--btn-inner-shadow) !important;
}

.btn-light:active,
.btn-light:focus {
	color: var(--root-white-color) !important;
}

.btn-light:hover {
	background: linear-gradient(135deg,
			var(--root-light-color) 0%,
			var(--root-light-color) 50%,
			var(--root-light-color) 100%) !important;
	transform: var(--btn-transform) !important;
	box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15), var(--btn-inner-shadow) !important;
	color: var(--root-white-color) !important;
}

.btn-dark {
	background: linear-gradient(135deg,
			var(--root-dark-color) 0%,
			var(--root-dark-color) 50%,
			var(--root-dark-color) 100%) !important;
	border: 1px solid var(--root-dark-color) !important;
	color: #fff !important;
	box-shadow: var(--btn-shadow), var(--btn-inner-shadow) !important;
}

.btn-dark:active,
.btn-dark:focus {
	color: #fff !important;
}

.btn-default {
	background: linear-gradient(135deg,
			var(--root-secondary-color) 0%,
			var(--root-secondary-color) 50%,
			var(--root-secondary-color) 100%) !important;
	border: 1px solid var(--root-secondary-color) !important;
	color: var(--root-primary-color) !important;
	box-shadow: var(--btn-shadow), var(--btn-inner-shadow) !important;
}

.btn-default:focus,
.btn-default:active {
	color: var(--root-primary-color) !important;
}

.btn-dark:hover {
	background: linear-gradient(135deg,
			var(--root-dark-color) 0%,
			var(--root-dark-color) 50%,
			var(--root-dark-color) 100%) !important;
	transform: var(--btn-transform) !important;
	box-shadow: var(--btn-shadow-hover), var(--btn-inner-shadow) !important;
	color: #fff !important;
}

.btn-review {
	background: linear-gradient(135deg,
			var(--root-review-color) 0%,
			var(--root-review-color) 50%,
			var(--root-review-color) 100%) !important;
	border: 1px solid var(--root-review-color) !important;
	color: #fff !important;
	box-shadow: var(--btn-shadow), var(--btn-inner-shadow) !important;
}

.btn-review:active,
.btn-review:focus {
	color: #fff !important;
}

.btn-review:hover {
	background: linear-gradient(135deg,
			var(--root-review-color) 0%,
			var(--root-review-color) 50%,
			var(--root-review-color) 100%) !important;
	transform: var(--btn-transform) !important;
	box-shadow: var(--btn-shadow-hover), var(--btn-inner-shadow) !important;
	color: #fff !important;
}

.btn-approve {
	background: linear-gradient(135deg,
			var(--root-approve-color) 0%,
			var(--root-approve-color) 50%,
			var(--root-approve-color) 100%) !important;
	border: 1px solid var(--root-approve-color) !important;
	color: #fff !important;
	box-shadow: var(--btn-shadow), var(--btn-inner-shadow) !important;
}

.btn-approve:active,
.btn-approve:focus {
	color: #fff !important;
}

.btn-approve:hover {
	background: linear-gradient(135deg,
			var(--root-approve-color) 0%,
			var(--root-approve-color) 50%,
			var(--root-approve-color) 100%) !important;
	transform: var(--btn-transform) !important;
	box-shadow: var(--btn-shadow-hover), var(--btn-inner-shadow) !important;
	color: #fff !important;
}

.btn-print {
	background: linear-gradient(135deg,
			var(--root-print-color) 0%,
			var(--root-print-color) 50%,
			var(--root-print-color) 100%) !important;
	border: 1px solid var(--root-print-color) !important;
	color: #fff !important;
	box-shadow: var(--btn-shadow), var(--btn-inner-shadow) !important;
}

.btn-print:active,
.btn-print:focus {
	color: #fff !important;
}

.btn-print:hover {
	background: linear-gradient(135deg,
			var(--root-print-color) 0%,
			var(--root-print-color) 50%,
			var(--root-print-color) 100%) !important;
	transform: var(--btn-transform) !important;
	box-shadow: var(--btn-shadow-hover), var(--btn-inner-shadow) !important;
	color: #fff !important;
}

.btn-print-label {
	background: linear-gradient(135deg,
			var(--root-print-label) 0%,
			var(--root-print-label) 50%,
			var(--root-print-label) 100%) !important;
	border: 1px solid var(--root-print-label) !important;
	color: #fff !important;
	box-shadow: var(--btn-shadow), var(--btn-inner-shadow) !important;
}

.btn-print-label:active,
.btn-print-label:focus {
	color: #fff !important;
}

.btn-print-label:hover {
	background: linear-gradient(135deg,
			var(--root-print-label) 0%,
			var(--root-print-label) 50%,
			var(--root-print-label) 100%) !important;
	transform: var(--btn-transform) !important;
	box-shadow: var(--btn-shadow-hover), var(--btn-inner-shadow) !important;
	color: #fff !important;
}

/* Premium outline buttons */
.btn-outline-primary {
	background: var(--root-primary-color-rgba) !important;
	border: 2px solid var(--root-primary-color) !important;
	color: var(--root-primary-color) !important;
	font-weight: 600 !important;
	backdrop-filter: blur(10px) !important;
	position: relative !important;
	box-shadow: 0 4px 15px rgba(7, 34, 65, 0.15) !important;
}

.btn-outline-primary:active,
.btn-outline-primary:focus {
	color: var(--root-primary-color) !important;
}

.btn-outline-primary:hover {
	background: var(--root-primary-color) !important;
	transform: var(--btn-transform) !important;
	box-shadow: 0 8px 25px rgba(7, 34, 65, 0.3) !important;
	color: #fff !important;
}

.btn-outline-secondary {
	background: var(--root-secondary-color-rgba) !important;
	border: 2px solid var(--root-secondary-color) !important;
	color: var(--root-secondary-color) !important;
	font-weight: 600 !important;
	backdrop-filter: blur(10px) !important;
	box-shadow: 0 4px 15px rgba(50, 192, 203, 0.15) !important;
}

.btn-outline-secondary:active,
.btn-outline-secondary:focus {
	color: var(--root-secondary-color) !important;
}

.btn-outline-secondary:hover {
	background: var(--root-secondary-color) !important;
	transform: var(--btn-transform) !important;
	box-shadow: 0 8px 25px rgba(50, 192, 203, 0.3) !important;
	color: #fff !important;
}

.btn-outline-success {
	background: var(--root-success-color-rgba) !important;
	border: 2px solid var(--root-success-color) !important;
	color: var(--root-success-color) !important;
	font-weight: 600 !important;
	backdrop-filter: blur(10px) !important;
	box-shadow: 0 4px 15px rgba(40, 167, 69, 0.15) !important;
}

.btn-outline-success:active,
.btn-outline-success:focus {
	color: var(--root-success-color) !important;
}

.btn-outline-success:hover {
	background: var(--root-success-color) !important;
	transform: var(--btn-transform) !important;
	box-shadow: 0 8px 25px rgba(40, 167, 69, 0.3) !important;
	color: #fff !important;
}

.btn-outline-danger {
	background: var(--root-danger-color-rgba) !important;
	border: 2px solid var(--root-danger-color) !important;
	color: var(--root-danger-color) !important;
	font-weight: 600 !important;
	backdrop-filter: blur(10px) !important;
	box-shadow: 0 4px 15px rgba(220, 53, 69, 0.15) !important;
}

.btn-outline-danger:active,
.btn-outline-danger:focus {
	color: var(--root-danger-color) !important;
}

.btn-outline-danger:hover {
	background: var(--root-danger-color) !important;
	transform: var(--btn-transform) !important;
	box-shadow: 0 8px 25px rgba(220, 53, 69, 0.3) !important;
	color: #fff !important;
}

.btn-outline-warning {
	background: var(--root-warning-color-rgba) !important;
	border: 2px solid var(--root-warning-color) !important;
	color: var(--root-primary-color) !important;
	font-weight: 600 !important;
	backdrop-filter: blur(10px) !important;
	box-shadow: 0 4px 15px rgba(255, 193, 7, 0.15) !important;
}

.btn-outline-warning:active,
.btn-outline-warning:focus {
	color: var(--root-primary-color) !important;
}

.btn-outline-warning:hover {
	background: var(--root-warning-color) !important;
	transform: var(--btn-transform) !important;
	box-shadow: 0 8px 25px rgba(255, 193, 7, 0.3) !important;
	color: #212529 !important;
}

.btn-outline-info {
	background: var(--root-info-color-rgba) !important;
	border: 2px solid var(--root-info-color) !important;
	color: var(--root-info-color) !important;
	font-weight: 600 !important;
	backdrop-filter: blur(10px) !important;
	box-shadow: 0 4px 15px rgba(23, 162, 184, 0.15) !important;
}

.btn-outline-info:active,
.btn-outline-info:focus {
	color: var(--root-info-color) !important;
}

.btn-outline-info:hover {
	background: var(--root-info-color) !important;
	transform: var(--btn-transform) !important;
	box-shadow: 0 8px 25px rgba(23, 162, 184, 0.3) !important;
	color: #fff !important;
}

.btn-outline-light {
	background: var(--root-light-color-rgba) !important;
	border: 2px solid var(--root-light-color) !important;
	color: var(--root-light-color) !important;
	font-weight: 600 !important;
	backdrop-filter: blur(10px) !important;
	box-shadow: 0 4px 15px rgba(248, 249, 250, 0.15) !important;
}

.btn-outline-light:active,
.btn-outline-light:focus {
	color: var(--root-light-color) !important;
}

.btn-outline-light:hover {
	background: var(--root-light-color) !important;
	transform: var(--btn-transform) !important;
	box-shadow: 0 8px 25px rgba(248, 249, 250, 0.3) !important;
	color: #212529 !important;
}

.btn-outline-dark {
	background: var(--root-dark-color-rgba) !important;
	border: 2px solid var(--root-dark-color) !important;
	color: var(--root-dark-color) !important;
	font-weight: 600 !important;
	backdrop-filter: blur(10px) !important;
	box-shadow: 0 4px 15px rgba(52, 58, 64, 0.15) !important;
}

.btn-outline-dark:active,
.btn-outline-dark:focus {
	color: var(--root-dark-color) !important;
}

.btn-outline-dark:hover {
	background: var(--root-dark-color) !important;
	transform: var(--btn-transform) !important;
	box-shadow: 0 8px 25px rgba(52, 58, 64, 0.3) !important;
	color: #fff !important;
}

/* Premium gradient buttons */
.btn-gradient-primary {
	background: linear-gradient(135deg,
			var(--root-primary-color) 0%,
			var(--root-secondary-color) 50%,
			#3ec8d3 100%) !important;
	border: none !important;
	color: #fff !important;
	box-shadow: 0 4px 20px rgba(7, 34, 65, 0.3), var(--btn-inner-shadow) !important;
	font-weight: 600 !important;
}

.btn-gradient-primary:hover {
	background: linear-gradient(135deg, #051630 0%, #29a9b4 50%, #3ec8d3 100%) !important;
	transform: var(--btn-transform) !important;
	box-shadow: 0 8px 30px rgba(7, 34, 65, 0.4), var(--btn-inner-shadow) !important;
}

.btn-gradient-secondary {
	background: linear-gradient(135deg, var(--root-secondary-color) 0%, #3ec8d3 50%, #4dd4e0 100%) !important;
	border: none !important;
	color: #fff !important;
	box-shadow: 0 4px 20px rgba(50, 192, 203, 0.3), var(--btn-inner-shadow) !important;
	font-weight: 600 !important;
}

.btn-gradient-secondary:hover {
	background: linear-gradient(135deg, #29a9b4 0%, #3ec8d3 50%, #4dd4e0 100%) !important;
	transform: var(--btn-transform) !important;
	box-shadow: 0 8px 30px rgba(50, 192, 203, 0.4), var(--btn-inner-shadow) !important;
}

/* Premium glass morphism buttons */
.btn-glass {
	background: rgba(255, 255, 255, 0.1) !important;
	backdrop-filter: blur(20px) !important;
	border: 1px solid rgba(255, 255, 255, 0.2) !important;
	color: #fff !important;
	box-shadow: 0 8px 32px 0 rgba(31, 38, 135, 0.37) !important;
	font-weight: 600 !important;
}

.btn-glass:hover {
	background: rgba(255, 255, 255, 0.2) !important;
	transform: var(--btn-transform) !important;
	box-shadow: 0 12px 40px 0 rgba(31, 38, 135, 0.45) !important;
}

/* Premium soft buttons */
.btn-soft-primary {
	background: linear-gradient(135deg,
			rgba(7, 34, 65, 0.15) 0%,
			rgba(7, 34, 65, 0.1) 50%,
			rgba(7, 34, 65, 0.15) 100%) !important;
	border: 1px solid rgba(7, 34, 65, 0.2) !important;
	color: var(--root-primary-color) !important;
	font-weight: 600 !important;
	backdrop-filter: blur(10px) !important;
}

.btn-soft-primary:hover {
	background: linear-gradient(135deg,
			rgba(7, 34, 65, 0.25) 0%,
			rgba(7, 34, 65, 0.2) 50%,
			rgba(7, 34, 65, 0.25) 100%) !important;
	transform: var(--btn-transform) !important;
	box-shadow: 0 6px 20px rgba(7, 34, 65, 0.15) !important;
}

.btn-soft-secondary {
	background: linear-gradient(135deg,
			rgba(50, 192, 203, 0.15) 0%,
			rgba(50, 192, 203, 0.1) 50%,
			rgba(50, 192, 203, 0.15) 100%) !important;
	border: 1px solid rgba(50, 192, 203, 0.2) !important;
	color: var(--root-secondary-color) !important;
	font-weight: 600 !important;
	backdrop-filter: blur(10px) !important;
}

.btn-soft-secondary:hover {
	background: linear-gradient(135deg,
			rgba(50, 192, 203, 0.25) 0%,
			rgba(50, 192, 203, 0.2) 50%,
			rgba(50, 192, 203, 0.25) 100%) !important;
	transform: var(--btn-transform) !important;
	box-shadow: 0 6px 20px rgba(50, 192, 203, 0.15) !important;
}

/* Premium neon glow effect */
.btn-neon-primary {
	background: var(--root-primary-color) !important;
	border: 2px solid var(--root-primary-color) !important;
	color: #fff !important;
	position: relative !important;
	box-shadow: 0 0 10px var(--root-primary-color), 0 0 20px var(--root-primary-color),
		0 0 30px var(--root-primary-color) !important;
}

.btn-neon-primary:hover {
	color: #fff !important;
	box-shadow: 0 0 20px var(--root-primary-color), 0 0 30px var(--root-primary-color),
		0 0 40px var(--root-primary-color) !important;
	transform: var(--btn-transform) !important;
}

.btn-neon-secondary {
	background: var(--root-secondary-color) !important;
	border: 2px solid var(--root-secondary-color) !important;
	color: #fff !important;
	position: relative !important;
	box-shadow: 0 0 10px var(--root-secondary-color), 0 0 20px var(--root-secondary-color),
		0 0 30px var(--root-secondary-color) !important;
}

.btn-neon-secondary:hover {
	color: #fff !important;
	box-shadow: 0 0 20px var(--root-secondary-color), 0 0 30px var(--root-secondary-color),
		0 0 40px var(--root-secondary-color) !important;
	transform: var(--btn-transform) !important;
}

/* Button size variations with premium touch - MUCH LARGER */
.btn {
	font-size: 1.3rem !important;
	/* padding: 0.9rem 1.8rem !important; */
	padding: 6px 12px !important;
	margin: 2px 2px !important;
}

.btn-sm {
	padding: 0.7rem 1.4rem !important;
	font-size: 1.2rem !important;
	border-radius: 6px !important;
}

.btn-lg {
	padding: 1.1rem 2.5rem !important;
	font-size: 1.4rem !important;
	border-radius: 10px !important;
}

.btn-xl {
	padding: 1.4rem 3rem !important;
	font-size: 1.5rem !important;
	border-radius: 12px !important;
	box-shadow: 0 8px 30px rgba(0, 0, 0, 0.2) !important;
}

.btn-xl:hover {
	box-shadow: 0 12px 40px rgba(0, 0, 0, 0.3) !important;
}

/* Button Group Styles with Proper Spacing */
.btn-group {
	display: inline-flex !important;
	flex-wrap: wrap !important;
	gap: 0.5rem !important;
}

.btn-group .btn {
	border-radius: var(--btn-border-radius) !important;
	border: 1px solid transparent !important;
	flex: 0 0 auto !important;
	margin: 0 !important;
}

.btn-group .btn:not(:last-child) {
	margin-right: 0.5rem !important;
}

/* Bootstrap-style button groups (if you need them connected) */
.btn-group.connected {
	gap: 0 !important;
}

.btn-group.connected .btn {
	border-radius: 0 !important;
	border-right: none !important;
	margin-right: 0 !important;
}

.btn-group.connected .btn:first-child {
	border-top-left-radius: var(--btn-border-radius) !important;
	border-bottom-left-radius: var(--btn-border-radius) !important;
}

.btn-group.connected .btn:last-child {
	border-top-right-radius: var(--btn-border-radius) !important;
	border-bottom-right-radius: var(--btn-border-radius) !important;
	border-right: 1px solid var(--btn-border-color, rgba(0, 0, 0, 0.2)) !important;
}

.btn-group.connected .btn:focus {
	z-index: 1 !important;
}

/* Vertical button groups */
.btn-group-vertical {
	flex-direction: column !important;
	gap: 0.5rem !important;
}

.btn-group-vertical .btn {
	width: 100% !important;
	margin: 0 !important;
}

.btn-group-vertical.connected .btn {
	border-radius: 0 !important;
	border-bottom: none !important;
	margin-bottom: 0 !important;
}

.btn-group-vertical.connected .btn:first-child {
	border-top-left-radius: var(--btn-border-radius) !important;
	border-top-right-radius: var(--btn-border-radius) !important;
}

.btn-group-vertical.connected .btn:last-child {
	border-bottom-left-radius: var(--btn-border-radius) !important;
	border-bottom-right-radius: var(--btn-border-radius) !important;
	border-bottom: 1px solid var(--btn-border-color, rgba(0, 0, 0, 0.2)) !important;
}

/* Button toolbar */
.btn-toolbar {
	display: flex !important;
	flex-wrap: wrap !important;
	justify-content: flex-start !important;
	gap: 0.75rem !important;
}

.btn-toolbar .input-group {
	flex-shrink: 0 !important;
}

/* Loading state for buttons */
.btn-loading {
	position: relative !important;
	color: transparent !important;
	pointer-events: none !important;
}

.btn-loading::after {
	content: '';
	position: absolute;
	width: 20px;
	height: 20px;
	top: 50%;
	left: 50%;
	margin-left: -10px;
	margin-top: -10px;
	border: 2px solid transparent;
	border-top-color: currentColor;
	border-radius: 50%;
	animation: btn-spin 1s linear infinite;
}

@keyframes btn-spin {
	0% {
		transform: rotate(0deg);
	}

	100% {
		transform: rotate(360deg);
	}
}

/* Icon button styles */
.btn-icon {
	display: inline-flex !important;
	align-items: center !important;
	gap: 0.5rem !important;
}

.btn-icon-only {
	padding: 0.75rem !important;
	border-radius: 50% !important;
	width: 48px !important;
	height: 48px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
}

/* Disabled state */
.btn:disabled {
	opacity: 0.6 !important;
	cursor: not-allowed !important;
	transform: none !important;
	box-shadow: var(--btn-shadow) !important;
}

.btn:disabled:hover {
	transform: none !important;
	box-shadow: var(--btn-shadow) !important;
}

/* Premium Form Controls */
:root {
	--form-control-bg: #ffffff !important;
	--form-control-border: #e0e0e0 !important;
	--form-control-border-focus: var(--root-secondary-color) !important;
	--form-control-border-hover: #c0c0c0 !important;
	--form-control-text: #333333 !important;
	--form-control-placeholder: #999999 !important;
	--form-control-shadow: 0 2px 8px rgba(0, 0, 0, 0.08) !important;
	--form-control-shadow-focus: 0 4px 20px rgba(50, 192, 203, 0.15) !important;
	--form-control-radius: 8px !important;
	--form-control-transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

/* Base form control styles - MUCH LARGER */
.form-control,
.form-select {
	background-color: var(--form-control-bg) !important;
	border: 1px solid var(--form-control-border) !important;
	color: var(--form-control-text) !important;
	border-radius: var(--form-control-radius) !important;
	font-weight: 500 !important;
	letter-spacing: 0.01em !important;
	transition: var(--form-control-transition) !important;
	box-shadow: var(--form-control-shadow) !important;
	padding: 0.5rem 0.5rem !important;
	font-size: 1.3rem !important;
	outline: none !important;
	position: relative !important;
}

.form-control:focus,
.form-select:focus {
	border-color: var(--form-control-border-focus) !important;
	box-shadow: var(--form-control-shadow-focus), 0 0 0 3px rgba(50, 192, 203, 0.1) !important;
	background-color: #ffffff !important;
	transform: translateY(-1px) !important;
}

.form-control:hover:not(:focus),
.form-select:hover:not(:focus) {
	border-color: var(--form-control-border-hover) !important;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12) !important;
}

/* Premium floating labels */
.form-floating {
	position: relative !important;
}

.form-floating>.form-control {
	height: 4.5rem !important;
	padding: 1.3rem 1.3rem !important;
}

.form-floating>label {
	position: absolute !important;
	top: 50% !important;
	left: 1.3rem !important;
	transform: translateY(-50%) !important;
	color: var(--form-control-placeholder) !important;
	font-weight: 500 !important;
	font-size: 1.3rem !important;
	transition: var(--form-control-transition) !important;
	pointer-events: none !important;
	background: linear-gradient(to bottom, transparent 50%, #ffffff 50%) !important;
	padding: 0 0.25rem !important;
}

.form-floating>.form-control:focus+label,
.form-floating>.form-control:not(:placeholder-shown)+label {
	transform: translateY(-1.75rem) scale(0.85) !important;
	color: var(--root-secondary-color) !important;
	font-weight: 600 !important;
	background: #ffffff !important;
	padding: 0 0.5rem !important;
}

/* Enhanced select styles */
.form-select {
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='%23333' stroke='%23333' d='m7.247 11.14 2.817-2.817a.725.725 0 0 0 0-1.022L7.247 4.483a.75.75 0 1 0-1.061 1.061L8.707 7.5 6.186 9.957a.75.75 0 0 0 1.061 1.061z' transform='rotate(90 8 8)'/%3e%3c/svg%3e") !important;
	background-repeat: no-repeat !important;
	background-position: right 0.8rem center !important;
	background-size: 18px 14px !important;
	padding: 0.5rem 0.5rem 0.5rem 0.5rem !important;
	cursor: pointer !important;
	appearance: none !important;
	line-height: 1.4 !important;
	height: auto !important;
	min-height: 3.5rem !important;
	font-size: 1.3rem !important;
	width: auto !important;
	min-width: 300px !important;
	max-width: none !important;
	box-sizing: border-box !important;
	white-space: nowrap !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
	flex: 1 1 auto !important;
}

/* Alternative wider select for long text */
.form-select.wide {
	min-width: 500px !important;
	width: auto !important;
}

/* Full width select */
.form-select.full-width {
	width: 100% !important;
	min-width: 100% !important;
	max-width: 100% !important;
}

.form-select:hover {
	background-color: #ffffff !important;
}

.form-select option {
	font-size: 1.3rem !important;
	padding: 0.5rem !important;
	line-height: 1.4 !important;
}

/* Ensure select text is visible in all browsers */
.form-select::-ms-expand {
	display: none !important;
}

.form-select::-moz-focus-inner {
	border: 0 !important;
}

.form-select:focus {
	outline: none !important;
	border-color: var(--form-control-border-focus) !important;
	box-shadow: var(--form-control-shadow-focus), 0 0 0 3px rgba(50, 192, 203, 0.1) !important;
	background-color: #ffffff !important;
	transform: translateY(-1px) !important;
}

/* Premium input groups */
.input-group {
	position: relative !important;
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: stretch !important;
	width: 100% !important;
	border-radius: var(--form-control-radius) !important;
	overflow: hidden !important;
	box-shadow: var(--form-control-shadow) !important;
	transition: var(--form-control-transition) !important;
}

.input-group:hover {
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12) !important;
}

.input-group:focus-within {
	box-shadow: var(--form-control-shadow-focus) !important;
}

.input-group .form-control,
.input-group .form-select {
	position: relative !important;
	flex: 1 1 auto !important;
	width: 1% !important;
	min-width: 0 !important;
	border: none !important;
	box-shadow: none !important;
	z-index: 1 !important;
}

.input-group-text {
	background: linear-gradient(135deg, #f8f9fa 0%, #ffffff 100%) !important;
	border: 1px solid var(--form-control-border) !important;
	color: var(--root-primary-color) !important;
	font-weight: 600 !important;
	letter-spacing: 0.01em !important;
	padding: 0.5rem 0.5rem !important;
	font-size: 1.3rem !important;
	display: flex !important;
	align-items: center !important;
	white-space: nowrap !important;
}

.input-group .btn {
	border: none !important;
	box-shadow: none !important;
	border-radius: 0 !important;
	position: relative !important;
	z-index: 2 !important;
}

/* Premium checkboxes */
.form-check {
	padding-left: 1.75rem !important;
	margin-bottom: 0.75rem !important;
}

.form-check-input {
	width: 1.25rem !important;
	height: 1.25rem !important;
	background-color: var(--form-control-bg) !important;
	border: 2px solid var(--form-control-border) !important;
	border-radius: 6px !important;
	transition: var(--form-control-transition) !important;
	cursor: pointer !important;
	box-shadow: var(--form-control-shadow) !important;
	margin-top: 0.125rem !important;
}

.form-check-input:hover {
	border-color: var(--root-secondary-color) !important;
	box-shadow: 0 2px 8px rgba(50, 192, 203, 0.2) !important;
}

.form-check-input:checked {
	background-color: var(--root-primary-color) !important;
	border-color: var(--root-primary-color) !important;
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='white' d='M6.293 9.707a1 1 0 0 1-1.414 0l-2-2a1 1 0 1 1 1.414-1.414L5.586 8l5.293-5.293a1 1 0 1 1 1.414 1.414z'/%3e%3c/svg%3e") !important;
	background-size: 0.8rem !important;
	box-shadow: 0 2px 8px rgba(7, 34, 65, 0.3) !important;
	transform: scale(1.1) !important;
}

.form-check-input:checked:hover {
	transform: scale(1.15) !important;
}

.form-check-input:focus {
	border-color: var(--form-control-border-focus) !important;
	box-shadow: 0 0 0 3px rgba(50, 192, 203, 0.15) !important;
}

.form-check-label {
	color: var(--form-control-text) !important;
	font-weight: 500 !important;
	font-size: 1rem !important;
	margin-left: 0.5rem !important;
	cursor: pointer !important;
}

/* Premium radio buttons */
.form-check-input[type='radio'] {
	border-radius: 50% !important;
	width: 1.25rem !important;
	height: 1.25rem !important;
}

.form-check-input[type='radio']:checked {
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='white'/%3e%3c/svg%3e") !important;
}

/* Premium switch toggles */
.form-switch {
	padding-left: 3rem !important;
}

.form-switch .form-check-input {
	width: 2.5rem !important;
	height: 1.25rem !important;
	background: linear-gradient(135deg, #e0e0e0 0%, #f0f0f0 100%) !important;
	border: none !important;
	position: relative !important;
	cursor: pointer !important;
	box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.1) !important;
}

.form-switch .form-check-input:hover {
	background: linear-gradient(135deg, #d0d0d0 0%, #e8e8e8 100%) !important;
}

.form-switch .form-check-input:checked {
	background: linear-gradient(135deg, var(--root-secondary-color) 0%, #3ec8d3 100%) !important;
	box-shadow: 0 2px 8px rgba(50, 192, 203, 0.3), inset 0 1px 2px rgba(0, 0, 0, 0.1) !important;
}

.form-switch .form-check-input::before {
	content: '' !important;
	position: absolute !important;
	height: 1rem !important;
	width: 1rem !important;
	left: 0.125rem !important;
	bottom: 0.125rem !important;
	background-color: white !important;
	border-radius: 50% !important;
	transition: var(--form-control-transition) !important;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2) !important;
}

.form-switch .form-check-input:checked::before {
	transform: translateX(1.25rem) !important;
	background-color: white !important;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3) !important;
}

/* Premium range sliders */
.form-range {
	width: 100% !important;
	height: 1.5rem !important;
	padding: 0 !important;
	background-color: transparent !important;
	appearance: none !important;
}

.form-range:focus {
	outline: none !important;
}

.form-range::-webkit-slider-track {
	width: 100% !important;
	height: 0.5rem !important;
	color: transparent !important;
	cursor: pointer !important;
	background-color: #e0e0e0 !important;
	border-color: transparent !important;
	border-radius: 1rem !important;
	box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1) !important;
}

.form-range::-webkit-slider-thumb {
	width: 1.5rem !important;
	height: 1.5rem !important;
	margin-top: -0.5rem !important;
	background: linear-gradient(135deg, var(--root-primary-color) 0%, var(--root-secondary-color) 100%) !important;
	border: 3px solid white !important;
	border-radius: 50% !important;
	cursor: pointer !important;
	appearance: none !important;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2) !important;
	transition: var(--form-control-transition) !important;
}

.form-range::-webkit-slider-thumb:hover {
	transform: scale(1.2) !important;
	box-shadow: 0 4px 12px rgba(7, 34, 65, 0.3) !important;
}

.form-range::-moz-range-track {
	width: 100% !important;
	height: 0.5rem !important;
	color: transparent !important;
	cursor: pointer !important;
	background-color: #e0e0e0 !important;
	border-color: transparent !important;
	border-radius: 1rem !important;
	box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1) !important;
}

.form-range::-moz-range-thumb {
	width: 1.5rem !important;
	height: 1.5rem !important;
	background: linear-gradient(135deg, var(--root-primary-color) 0%, var(--root-secondary-color) 100%) !important;
	border: 3px solid white !important;
	border-radius: 50% !important;
	cursor: pointer !important;
	border-color: transparent !important;
	appearance: none !important;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2) !important;
	transition: var(--form-control-transition) !important;
}

.form-range::-moz-range-thumb:hover {
	transform: scale(1.2) !important;
	box-shadow: 0 4px 12px rgba(7, 34, 65, 0.3) !important;
}

/* Premium file inputs */
.form-control[type='file'] {
	padding: 0.75rem 1rem !important;
	background: linear-gradient(135deg, #f8f9fa 0%, #ffffff 100%) !important;
}

.form-control[type='file']::file-selector-button {
	background: linear-gradient(135deg, var(--root-primary-color) 0%, #0a2952 100%) !important;
	border: none !important;
	color: white !important;
	font-weight: 600 !important;
	padding: 0.5rem 1rem !important;
	margin-right: 1rem !important;
	border-radius: 6px !important;
	cursor: pointer !important;
	transition: var(--form-control-transition) !important;
	box-shadow: 0 2px 8px rgba(7, 34, 65, 0.2) !important;
}

.form-control[type='file']::file-selector-button:hover {
	background: linear-gradient(135deg, #051630 0%, #072241 100%) !important;
	transform: translateY(-1px) !important;
	box-shadow: 0 4px 12px rgba(7, 34, 65, 0.3) !important;
}

/* Premium textareas */
textarea.form-control {
	resize: vertical !important;
	min-height: 100px !important;
	font-family: inherit !important;
	line-height: 1.5 !important;
}

/* Form validation styles */
.form-control.is-valid {
	border-color: var(--root-success-color) !important;
	background-image: none !important;
	box-shadow: 0 0 0 2px rgba(40, 167, 69, 0.1) !important;
}

.form-control.is-invalid {
	border-color: var(--root-danger-color) !important;
	background-image: none !important;
	box-shadow: 0 0 0 2px rgba(220, 53, 69, 0.1) !important;
}

.valid-feedback,
.invalid-feedback {
	font-weight: 500 !important;
	font-size: 1.2rem !important;
	margin-top: 0.5rem !important;
	display: flex !important;
	align-items: center !important;
	gap: 0.5rem !important;
}

.valid-feedback::before {
	/* content: '✓' !important; */
	color: var(--root-success-color) !important;
	font-weight: 700 !important;
}

.invalid-feedback::before {
	/* content: '✗' !important; */
	color: var(--root-danger-color) !important;
	font-weight: 700 !important;
}

/* Premium form labels - MUCH LARGER */
.form-label {
	color: var(--root-primary-color) !important;
	font-weight: 600 !important;
	font-size: 1.4rem !important;
	margin-bottom: 0.75rem !important;
	letter-spacing: 0.01em !important;
	text-transform: none !important;
}

/* Form help text - MUCH LARGER */
.form-text {
	color: #666666 !important;
	font-size: 1.2rem !important;
	margin-top: 0.5rem !important;
	font-style: italic !important;
}

/* Disabled form controls */
.form-control:disabled,
.form-select:disabled {
	background-color: #f8f9fa !important;
	opacity: 0.7 !important;
	cursor: not-allowed !important;
	transform: none !important;
}

.form-control:disabled:hover,
.form-select:disabled:hover {
	border-color: var(--form-control-border) !important;
	box-shadow: var(--form-control-shadow) !important;
}

/* Premium form layouts */
.row.g-3 .form-control,
.row.g-3 .form-select {
	margin-bottom: 0.5rem !important;
}

.card .form-control,
.card .form-select {
	background-color: rgba(255, 255, 255, 0.9) !important;
	backdrop-filter: blur(10px) !important;
}

/* Dark theme support */
@media (prefers-color-scheme: dark) {
	:root {
		--form-control-bg: #2a2a2a !important;
		--form-control-border: #444444 !important;
		--form-control-text: #ffffff !important;
		--form-control-placeholder: #cccccc !important;
	}

	.form-control,
	.form-select {
		background-color: var(--form-control-bg) !important;
		color: var(--form-control-text) !important;
	}

	.input-group-text {
		background: linear-gradient(135deg, #333333 0%, #444444 100%) !important;
		color: #ffffff !important;
	}
}

/* Animation for form focus */
@keyframes formFocusPulse {
	0% {
		box-shadow: 0 0 0 3px rgba(50, 192, 203, 0.1);
	}

	50% {
		box-shadow: 0 0 0 6px rgba(50, 192, 203, 0.05);
	}

	100% {
		box-shadow: 0 0 0 3px rgba(50, 192, 203, 0.1);
	}
}

.form-control:focus,
.form-select:focus {
	animation: formFocusPulse 1.5s ease-in-out !important;
}

/* Input group addons with buttons */
.input-group .btn {
	border: 1px solid var(--form-control-border) !important;
	border-left: none !important;
}

.input-group .btn:first-child {
	border-left: 1px solid var(--form-control-border) !important;
	border-right: none !important;
}

/* Form control sizes - MUCH LARGER */
.form-control-sm {
	padding: 0.8rem 1rem !important;
	font-size: 1.2rem !important;
	border-radius: 6px !important;
}

.form-control-lg {
	padding: 1.2rem 1.6rem !important;
	font-size: 1.4rem !important;
	border-radius: 10px !important;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1) !important;
}

/* Sidebar Icon Styles */
.sidebar-icon {
	width: 18px !important;
	height: 18px !important;
	margin-right: 5px !important;
	transition: var(--btn-transition) !important;
	display: inline-block !important;
	vertical-align: middle !important;
}

/* Default state - Secondary color */
.sidebar-icon {
	filter: invert(65%) sepia(35%) saturate(1478%) hue-rotate(143deg) brightness(98%) contrast(92%) !important;
	transition: filter 0.3s ease !important;
	-webkit-filter: invert(65%) sepia(35%) saturate(1478%) hue-rotate(143deg) brightness(98%) contrast(92%) !important;
	-webkit-transition: filter 0.3s ease !important;
	-moz-transition: filter 0.3s ease !important;
	-ms-transition: filter 0.3s ease !important;
	-o-transition: filter 0.3s ease !important;
}

/* Hover state - Primary color */
.skin-blue .sidebar a:hover .sidebar-icon {
	filter: invert(7%) sepia(49%) saturate(3015%) hue-rotate(179deg) brightness(95%) contrast(91%) !important;
	-webkit-filter: invert(7%) sepia(49%) saturate(3015%) hue-rotate(179deg) brightness(95%) contrast(91%) !important;
	transform: scale(1.1) !important;
	-webkit-transform: scale(1.1) !important;
	-moz-transform: scale(1.1) !important;
	-ms-transform: scale(1.1) !important;
	-o-transform: scale(1.1) !important;
}

.sidebar-menu {
	color: white !important;
}

.sidebar-menu>li>a {
	padding: 5px 5px 5px 5px !important;
}

.skin-blue .sidebar-menu>li.active>a .sidebar-icon {
	filter: invert(7%) sepia(49%) saturate(3015%) hue-rotate(179deg) brightness(95%) contrast(91%) !important;
	-webkit-filter: invert(7%) sepia(49%) saturate(3015%) hue-rotate(179deg) brightness(95%) contrast(91%) !important;
	transform: scale(1.1) !important;
	-webkit-transform: scale(1.1) !important;
	-moz-transform: scale(1.1) !important;
	-ms-transform: scale(1.1) !important;
	-o-transform: scale(1.1) !important;
}

/* Custom icon sizes for different needs */
.sidebar-icon-sm {
	width: 16px !important;
	height: 16px !important;
}

.sidebar-icon-lg {
	width: 20px !important;
	height: 20px !important;
}

.sidebar-icon-xl {
	width: 28px !important;
	height: 28px !important;
}

.skin-blue .sidebar-menu>li.active>a {
	box-shadow: var(--btn-shadow-hover), var(--btn-inner-shadow), inset 0 0 20px rgba(255, 255, 255, 0.3),
		0 0 15px rgba(255, 255, 255, 0.2) !important;
	filter: brightness(1.1) !important;
	-webkit-filter: brightness(1.1) !important;
	color: var(--root-primary-color) !important;
}

.skin-blue .sidebar-menu>li>a::after {
	content: '';
	position: absolute;
	top: 0;
	left: -100%;
	/* width: 60%; */
	height: 100%;
	background: linear-gradient(120deg,
			transparent 0%,
			transparent 25%,
			rgba(255, 255, 255, 0.1) 40%,
			rgba(255, 255, 255, 0.35) 50%,
			rgba(255, 255, 255, 0.1) 60%,
			transparent 75%,
			transparent 100%) !important;
	filter: blur(2px) !important;
	transform: skewX(-20deg);
	pointer-events: none;
	border-radius: inherit;
	filter: blur(1px);
}

.skin-blue .sidebar-menu>li>a:hover::after {
	animation: premiumShine 0.85s cubic-bezier(0.4, 0, 0.2, 1) forwards;
	-webkit-animation: premiumShine 0.85s cubic-bezier(0.4, 0, 0.2, 1) forwards;
}

.skin-blue .sidebar-menu>li>a:hover {
	color: var(--root-primary-color) !important;
	animation: premiumGlowDark 1.2s ease-in-out !important;
	-webkit-animation: premiumGlowDark 1.2s ease-in-out !important;
}

/* tree menu */
.sidebar-menu .treeview-menu>li>a {
	padding: 5px 5px 5px 3px !important;
}

.skin-blue .treeview-menu>li>a {
	color: #fff !important;
}

.skin-blue .treeview-menu>li.active>a {
	box-shadow: var(--btn-shadow-hover), var(--btn-inner-shadow), inset 0 0 20px rgba(255, 255, 255, 0.3),
		0 0 15px rgba(255, 255, 255, 0.2) !important;
	filter: brightness(1.1) !important;
	-webkit-filter: brightness(1.1) !important;
	color: var(--root-primary-color) !important;
}

.skin-blue .treeview-menu>li>a::after {
	content: '';
	position: absolute;
	top: 0;
	left: -100%;
	/* width: 60%; */
	height: 100%;
	background: linear-gradient(120deg,
			transparent 0%,
			transparent 25%,
			rgba(255, 255, 255, 0.1) 40%,
			rgba(255, 255, 255, 0.35) 50%,
			rgba(255, 255, 255, 0.1) 60%,
			transparent 75%,
			transparent 100%) !important;
	filter: blur(2px) !important;
	transform: skewX(-20deg);
	pointer-events: none;
	border-radius: inherit;
	filter: blur(1px);
}

.skin-blue .treeview-menu>li>a:hover::after {
	animation: premiumShine 0.85s cubic-bezier(0.4, 0, 0.2, 1) forwards;
	-webkit-animation: premiumShine 0.85s cubic-bezier(0.4, 0, 0.2, 1) forwards;
}

.skin-blue .treeview-menu>li>a:hover {
	color: var(--root-primary-color) !important;
	animation: premiumGlowDark 1.2s ease-in-out !important;
	-webkit-animation: premiumGlowDark 1.2s ease-in-out !important;
}

.skin-blue .treeview-menu>li:hover>a,
.skin-blue .treeview-menu>li.active>a {
	color: #fff;
	background: var(--root-secondary-color);
	border-left-color: #fff;
}

.skin-blue .sidebar-menu>li>a,
.skin-blue .treeview-menu>li>a {
	border-left: 3px solid transparent;
}

.skin-blue .treeview-menu>li.active>a .sidebar-icon {
	filter: invert(7%) sepia(49%) saturate(3015%) hue-rotate(179deg) brightness(95%) contrast(91%) !important;
	-webkit-filter: invert(7%) sepia(49%) saturate(3015%) hue-rotate(179deg) brightness(95%) contrast(91%) !important;
	transform: scale(1.1) !important;
	-webkit-transform: scale(1.1) !important;
	-moz-transform: scale(1.1) !important;
	-ms-transform: scale(1.1) !important;
	-o-transform: scale(1.1) !important;
}


/* Premium Combined Shine + Glow Effect - Base */
.btn::after {
	content: '';
	position: absolute;
	top: 0;
	left: -100%;
	width: 60%;
	height: 100%;
	background: linear-gradient(120deg,
			transparent 0%,
			transparent 25%,
			rgba(255, 255, 255, 0.15) 40%,
			rgba(255, 255, 255, 0.5) 50%,
			rgba(255, 255, 255, 0.15) 60%,
			transparent 75%,
			transparent 100%);
	transform: skewX(-20deg);
	pointer-events: none;
	border-radius: inherit;
	filter: blur(1px);
}

.btn:hover::after {
	animation: premiumShine 0.85s cubic-bezier(0.4, 0, 0.2, 1) forwards;
}

.btn:hover {
	animation: premiumGlow 1.2s ease-in-out;
}

@keyframes premiumShine {
	0% {
		left: -100%;
		opacity: 0;
	}

	15% {
		opacity: 1;
	}

	65% {
		left: 150%;
		opacity: 1;
	}

	100% {
		left: 150%;
		opacity: 0;
	}
}

@keyframes premiumGlow {
	0% {
		box-shadow: var(--btn-shadow), var(--btn-inner-shadow), inset 0 0 0 rgba(255, 255, 255, 0),
			0 0 0 rgba(255, 255, 255, 0);
		filter: brightness(1);
	}

	40% {
		box-shadow: var(--btn-shadow-hover), var(--btn-inner-shadow), inset 0 0 20px rgba(255, 255, 255, 0.3),
			0 0 15px rgba(255, 255, 255, 0.2);
		filter: brightness(1.1);
	}

	100% {
		box-shadow: var(--btn-shadow), var(--btn-inner-shadow), inset 0 0 0 rgba(255, 255, 255, 0),
			0 0 0 rgba(255, 255, 255, 0);
		filter: brightness(1);
	}
}

/* Enhanced shine for DARK buttons */
.btn-primary::after,
.btn-dark::after,
.btn-danger::after,
.btn-secondary::after {
	background: linear-gradient(120deg,
			transparent 0%,
			transparent 25%,
			rgba(255, 255, 255, 0.1) 40%,
			rgba(255, 255, 255, 0.35) 50%,
			rgba(255, 255, 255, 0.1) 60%,
			transparent 75%,
			transparent 100%) !important;
	filter: blur(2px) !important;
}

.btn-primary:hover,
.btn-dark:hover,
.btn-danger:hover,
.btn-secondary:hover {
	animation: premiumGlowDark 1.2s ease-in-out !important;
	-webkit-animation: premiumGlowDark 1.2s ease-in-out !important;
}

@keyframes premiumGlowDark {
	0% {
		box-shadow: var(--btn-shadow), var(--btn-inner-shadow), inset 0 0 0 rgba(255, 255, 255, 0),
			0 0 0 rgba(255, 255, 255, 0);
		filter: brightness(1);
	}

	40% {
		box-shadow: var(--btn-shadow-hover), var(--btn-inner-shadow), inset 0 0 25px rgba(255, 255, 255, 0.2),
			0 0 20px rgba(255, 255, 255, 0.15);
		filter: brightness(1.25);
	}

	100% {
		box-shadow: var(--btn-shadow), var(--btn-inner-shadow), inset 0 0 0 rgba(255, 255, 255, 0),
			0 0 0 rgba(255, 255, 255, 0);
		filter: brightness(1);
	}
}

/* Enhanced shine for LIGHT buttons */
.btn-light::after,
.btn-warning::after,
.btn-info::after {
	background: linear-gradient(120deg,
			transparent 0%,
			transparent 25%,
			rgba(255, 255, 255, 0.3) 40%,
			rgba(255, 255, 255, 0.9) 50%,
			rgba(255, 255, 255, 0.3) 60%,
			transparent 75%,
			transparent 100%) !important;
}

.btn-light:hover,
.btn-warning:hover,
.btn-info:hover {
	animation: premiumGlowLight 1.2s ease-in-out !important;
}

@keyframes premiumGlowLight {
	0% {
		box-shadow: var(--btn-shadow), var(--btn-inner-shadow), inset 0 0 0 rgba(255, 255, 255, 0),
			0 0 0 rgba(255, 255, 255, 0);
		filter: brightness(1);
	}

	40% {
		box-shadow: var(--btn-shadow-hover), var(--btn-inner-shadow), inset 0 0 30px rgba(255, 255, 255, 0.7),
			0 0 25px rgba(255, 255, 255, 0.5);
		filter: brightness(1.08);
	}

	100% {
		box-shadow: var(--btn-shadow), var(--btn-inner-shadow), inset 0 0 0 rgba(255, 255, 255, 0),
			0 0 0 rgba(255, 255, 255, 0);
		filter: brightness(1);
	}
}

/* Success button - medium brightness */
.btn-success::after {
	background: linear-gradient(120deg,
			transparent 0%,
			transparent 25%,
			rgba(255, 255, 255, 0.15) 40%,
			rgba(255, 255, 255, 0.5) 50%,
			rgba(255, 255, 255, 0.15) 60%,
			transparent 75%,
			transparent 100%) !important;
}

.btn-success:hover {
	animation: premiumGlow 1.2s ease-in-out !important;
}

/* Default button */
.btn-default::after {
	background: linear-gradient(120deg,
			transparent 0%,
			transparent 25%,
			rgba(255, 255, 255, 0.2) 40%,
			rgba(255, 255, 255, 0.6) 50%,
			rgba(255, 255, 255, 0.2) 60%,
			transparent 75%,
			transparent 100%) !important;
}

.btn-default:hover {
	animation: premiumGlowLight 1.2s ease-in-out !important;
}

div.dataTables_wrapper div.dataTables_filter input {
	background-color: var(--form-control-bg) !important;
	border: 1px solid var(--form-control-border) !important;
	color: var(--form-control-text) !important;
	border-radius: var(--form-control-radius) !important;
	font-weight: 500 !important;
	letter-spacing: 0.01em !important;
	transition: var(--form-control-transition) !important;
	box-shadow: var(--form-control-shadow) !important;
	padding: 0.5rem 0.5rem !important;
	font-size: 1.3rem !important;
	outline: none !important;
	position: relative !important;
}

div.dataTables_wrapper div.dataTables_length select {
	background-color: var(--form-control-bg) !important;
	border: 1px solid var(--form-control-border) !important;
	color: var(--form-control-text) !important;
	border-radius: var(--form-control-radius) !important;
	font-weight: 500 !important;
	letter-spacing: 0.01em !important;
	transition: var(--form-control-transition) !important;
	box-shadow: var(--form-control-shadow) !important;
	padding: 0.5rem 0.5rem !important;
	font-size: 1.3rem !important;
	outline: none !important;
	position: relative !important;
}

.datetimepicker td,
.datetimepicker th {
	text-align: center !important;
	width: 40px !important;
	height: 40px !important;
	border-radius: 4px !important;
	border: none !important;
	-webkit-border-radius: 4px !important;
	-moz-border-radius: 4px !important;
	-ms-border-radius: 4px !important;
	-o-border-radius: 4px !important;

	padding: 10px !important;
}

.datetimepicker table {
	width: auto !important;
	min-width: 250px !important;
}

.form-control[disabled],
fieldset[disabled] .form-control {
	background-color: #eee !important;
	opacity: 1;
}

/* Absolute Center Spinner */
.loading {
	position: fixed;
	z-index: 999;
	height: 2em;
	width: 2em;
	overflow: show;
	margin: auto;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	display: none;
}

/* Transparent Overlay */
.loading:before {
	content: '';
	display: block;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.3);
}

/* :not(:required) hides these rules from IE9 and below */
.loading:not(:required) {
	/* hide "loading..." text */
	font: 0/0 a;
	color: transparent;
	text-shadow: none;
	background-color: transparent;
	border: 0;
}

.loading:not(:required):after {
	content: '';
	display: block;
	font-size: 10px;
	width: 1em;
	height: 1em;
	margin-top: -0.5em;
	-webkit-animation: spinner 1500ms infinite linear;
	-moz-animation: spinner 1500ms infinite linear;
	-ms-animation: spinner 1500ms infinite linear;
	-o-animation: spinner 1500ms infinite linear;
	animation: spinner 1500ms infinite linear;
	border-radius: 0.5em;
	-webkit-box-shadow: rgba(0, 0, 0, 0.75) 1.5em 0 0 0, rgba(0, 0, 0, 0.75) 1.1em 1.1em 0 0, rgba(0, 0, 0, 0.75) 0 1.5em 0 0, rgba(0, 0, 0, 0.75) -1.1em 1.1em 0 0, rgba(0, 0, 0, 0.5) -1.5em 0 0 0, rgba(0, 0, 0, 0.5) -1.1em -1.1em 0 0, rgba(0, 0, 0, 0.75) 0 -1.5em 0 0, rgba(0, 0, 0, 0.75) 1.1em -1.1em 0 0;
	box-shadow: rgba(0, 0, 0, 0.75) 1.5em 0 0 0, rgba(0, 0, 0, 0.75) 1.1em 1.1em 0 0, rgba(0, 0, 0, 0.75) 0 1.5em 0 0, rgba(0, 0, 0, 0.75) -1.1em 1.1em 0 0, rgba(0, 0, 0, 0.75) -1.5em 0 0 0, rgba(0, 0, 0, 0.75) -1.1em -1.1em 0 0, rgba(0, 0, 0, 0.75) 0 -1.5em 0 0, rgba(0, 0, 0, 0.75) 1.1em -1.1em 0 0;
}

/* Animation */

@-webkit-keyframes spinner {
	0% {
		-webkit-transform: rotate(0deg);
		-moz-transform: rotate(0deg);
		-ms-transform: rotate(0deg);
		-o-transform: rotate(0deg);
		transform: rotate(0deg);
	}

	100% {
		-webkit-transform: rotate(360deg);
		-moz-transform: rotate(360deg);
		-ms-transform: rotate(360deg);
		-o-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}

@-moz-keyframes spinner {
	0% {
		-webkit-transform: rotate(0deg);
		-moz-transform: rotate(0deg);
		-ms-transform: rotate(0deg);
		-o-transform: rotate(0deg);
		transform: rotate(0deg);
	}

	100% {
		-webkit-transform: rotate(360deg);
		-moz-transform: rotate(360deg);
		-ms-transform: rotate(360deg);
		-o-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}

@-o-keyframes spinner {
	0% {
		-webkit-transform: rotate(0deg);
		-moz-transform: rotate(0deg);
		-ms-transform: rotate(0deg);
		-o-transform: rotate(0deg);
		transform: rotate(0deg);
	}

	100% {
		-webkit-transform: rotate(360deg);
		-moz-transform: rotate(360deg);
		-ms-transform: rotate(360deg);
		-o-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}

@keyframes spinner {
	0% {
		-webkit-transform: rotate(0deg);
		-moz-transform: rotate(0deg);
		-ms-transform: rotate(0deg);
		-o-transform: rotate(0deg);
		transform: rotate(0deg);
	}

	100% {
		-webkit-transform: rotate(360deg);
		-moz-transform: rotate(360deg);
		-ms-transform: rotate(360deg);
		-o-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}

.switch-field {
	font-family: "Lucida Grande", Tahoma, Verdana, sans-serif;
	padding-bottom: 20px;
	overflow: hidden;
}

.switch-title {
	margin-bottom: 6px;
}

.switch-field input {
	position: absolute !important;
	clip: rect(0, 0, 0, 0);
	height: 1px;
	width: 1px;
	border: 0;
	overflow: hidden;
}

.switch-field label {
	float: left;
}

.switch-field label {
	display: inline-block;
	width: 60px;
	background-color: #e4e4e4;
	color: rgba(0, 0, 0, 0.6);
	font-size: 14px;
	font-weight: normal;
	text-align: center;
	text-shadow: none;
	padding: 6px 14px;
	border: 1px solid rgba(0, 0, 0, 0.2);
	-webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.3), 0 1px rgba(255, 255, 255, 0.1);
	box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.3), 0 1px rgba(255, 255, 255, 0.1);
	-webkit-transition: all 0.1s ease-in-out;
	-moz-transition: all 0.1s ease-in-out;
	-ms-transition: all 0.1s ease-in-out;
	-o-transition: all 0.1s ease-in-out;
	transition: all 0.1s ease-in-out;
}

.switch-field label:hover {
	cursor: pointer;
}

.switch-field input:checked+label {
	background-color: var(--root-primary-color);
	-webkit-box-shadow: none;
	box-shadow: none;
	color: white;
	font-weight: bold;
}

.switch-field label:first-of-type {
	border-radius: 4px 0 0 4px;
}

.switch-field label:last-of-type {
	border-radius: 0 4px 4px 0;
}

.is_error_label {
	color: darkred;
}

.displaynone {
	display: none !important;
}

.datepicker table tr td.disabled {
	background-color: lightgray !important;
}



#fade-wrapper {
	display: none;
	position: fixed;
	height: 100vh;
	width: 100vw;
	background: rgba(0, 0, 0, 0.5);
}

.select2-container {
	font-size: 14px !important;
	border-color: var(--form-control-border-hover) !important;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12) !important;
	background-color: var(--form-control-bg) !important;
	border: 1px solid var(--form-control-border) !important;
	color: var(--form-control-text) !important;
	border-radius: var(--form-control-radius) !important;
	font-weight: 500 !important;
	letter-spacing: 0.01em !important;
	transition: var(--form-control-transition) !important;
	box-shadow: var(--form-control-shadow) !important;
	padding: 0.5rem 0.5rem !important;
	font-size: 1.3rem !important;
	outline: none !important;
	/* position: relative !important; */
	/* height: 34px !important; */
	width: 100%;
	width: 100% !important;
}

.select2-container .select2-selection--single {
	/* line-height: 1.6 !important; */
	border: 0px !important;
	width: 100%;
	width: 100% !important;
}

.select2-container .select2-selection--multiple {
	height: auto !important;
	border: 0px !important;
	width: 100%;
	width: 100% !important;
}

.checkbox_group {
	display: inline-flex;
}


.mt-0 {
	margin-top: 0 !important;
}

.mt-1 {
	margin-top: 0.25rem !important;
}

.mt-2 {
	margin-top: 0.5rem !important;
}

.mt-3 {
	margin-top: 1rem !important;
}

.mt-4 {
	margin-top: 1.5rem !important;
}

.mt-5 {
	margin-top: 3rem !important;
}

.mt-auto {
	margin-top: auto !important;
}

.me-0 {
	margin-right: 0 !important;
}

.me-1 {
	margin-right: 0.25rem !important;
}

.me-2 {
	margin-right: 0.5rem !important;
}

.me-3 {
	margin-right: 1rem !important;
}

.me-4 {
	margin-right: 1.5rem !important;
}

.me-5 {
	margin-right: 3rem !important;
}

.me-auto {
	margin-right: auto !important;
}

.mb-0 {
	margin-bottom: 0 !important;
}

.mb-1 {
	margin-bottom: 0.25rem !important;
}

.mb-2 {
	margin-bottom: 0.5rem !important;
}

.mb-3 {
	margin-bottom: 1rem !important;
}

.mb-4 {
	margin-bottom: 1.5rem !important;
}

.mb-5 {
	margin-bottom: 3rem !important;
}

.mb-auto {
	margin-bottom: auto !important;
}

.ms-0 {
	margin-left: 0 !important;
}

.ms-1 {
	margin-left: 0.25rem !important;
}

.ms-2 {
	margin-left: 0.5rem !important;
}

.ms-3 {
	margin-left: 1rem !important;
}

.ms-4 {
	margin-left: 1.5rem !important;
}

.ms-5 {
	margin-left: 3rem !important;
}

.ms-auto {
	margin-left: auto !important;
}

.p-0 {
	padding: 0 !important;
}

.p-1 {
	padding: 0.25rem !important;
}

.p-2 {
	padding: 0.5rem !important;
}

.p-3 {
	padding: 1rem !important;
}

.p-4 {
	padding: 1.5rem !important;
}

.p-5 {
	padding: 3rem !important;
}

.px-0 {
	padding-right: 0 !important;
	padding-left: 0 !important;
}

.px-1 {
	padding-right: 0.25rem !important;
	padding-left: 0.25rem !important;
}

.px-2 {
	padding-right: 0.5rem !important;
	padding-left: 0.5rem !important;
}

.px-3 {
	padding-right: 1rem !important;
	padding-left: 1rem !important;
}

.px-4 {
	padding-right: 1.5rem !important;
	padding-left: 1.5rem !important;
}

.px-5 {
	padding-right: 3rem !important;
	padding-left: 3rem !important;
}

.py-0 {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}

.py-1 {
	padding-top: 0.25rem !important;
	padding-bottom: 0.25rem !important;
}

.py-2 {
	padding-top: 0.5rem !important;
	padding-bottom: 0.5rem !important;
}

.py-3 {
	padding-top: 1rem !important;
	padding-bottom: 1rem !important;
}

.py-4 {
	padding-top: 1.5rem !important;
	padding-bottom: 1.5rem !important;
}

.py-5 {
	padding-top: 3rem !important;
	padding-bottom: 3rem !important;
}

.pt-0 {
	padding-top: 0 !important;
}

.pt-1 {
	padding-top: 0.25rem !important;
}

.pt-2 {
	padding-top: 0.5rem !important;
}

.pt-3 {
	padding-top: 1rem !important;
}

.pt-4 {
	padding-top: 1.5rem !important;
}

.pt-5 {
	padding-top: 3rem !important;
}

.pe-0 {
	padding-right: 0 !important;
}

.pe-1 {
	padding-right: 0.25rem !important;
}

.pe-2 {
	padding-right: 0.5rem !important;
}

.pe-3 {
	padding-right: 1rem !important;
}

.pe-4 {
	padding-right: 1.5rem !important;
}

.pe-5 {
	padding-right: 3rem !important;
}

.pb-0 {
	padding-bottom: 0 !important;
}

.pb-1 {
	padding-bottom: 0.25rem !important;
}

.pb-2 {
	padding-bottom: 0.5rem !important;
}

.pb-3 {
	padding-bottom: 1rem !important;
}

.pb-4 {
	padding-bottom: 1.5rem !important;
}

.pb-5 {
	padding-bottom: 3rem !important;
}

.ps-0 {
	padding-left: 0 !important;
}

.ps-1 {
	padding-left: 0.25rem !important;
}

.ps-2 {
	padding-left: 0.5rem !important;
}

.ps-3 {
	padding-left: 1rem !important;
}

.ps-4 {
	padding-left: 1.5rem !important;
}

.ps-5 {
	padding-left: 3rem !important;
}

.small-box:hover {
	text-decoration: none;
	color: #000000 !important;
}

.bg-green-lims:hover {
	color: var(--root-secondary-color) !important
}

.bg-purple-lims:hover {
	color: var(--root-primary-color) !important;
}

.has-error {
	color: #dd4b39 !important;
}

.pull-arrow {
	line-height: 1.3 !important;
	font-size: 2rem !important;
}

.float-right {
	float: right !important;
}

.show {
	opacity: 1 !important;
}

.timeline-badge {
	color: var(--root-primary-color) !important;
}

.badge {
	margin-bottom: 2px;
}

/*
--root-primary-color: #072241 !important;
--root-secondary-color: #32c0cb !important;
--root-success-color: #1fab6a !important;
--root-danger-color: #f61f01 !important;
--root-warning-color: #e1ce1e !important;
--root-info-color: #ffbc00 !important;
--root-light-color: #7a93b6 !important;*/

/* .bg-primary {
    color: var(--root-secondary-color) !important;
    background-color: var(--root-primary-color) !important;
}

.bg-secondary {
    color: var(--root-primary-color) !important;
    background-color: var(--root-secondary-color) !important;
}

.bg-success {
    color: var(--root-primary-color) !important;
    background-color: var(--root-success-color) !important;
}

.bg-info {
    color: var(--root-primary-color) !important;
    background-color: var(--root-info-color) !important;
}

.bg-warning {
    color: var(--root-primary-color) !important;
    background-color: var(--root-warning-color)!important;
}

.bg-danger {
    color: var(--root-primary-color) !important;
    background-color: var(--root-danger-color)!important;
} */


.readonly-input {
	pointer-events: none;
	/* Optional: Add styling to make it look read-only */
	background-color: #e9ecef;
	cursor: not-allowed;

}

.datepicker table tr td.disabled {
	background-color: transparent !important;
	color: #ff151575 !important;
	font-weight: normal !important;
}

.datepicker.dropdown-menu td {
	color: green !important;
	font-weight: bold !important;
}

/* Style for TODAY'S date (e.g., a yellow/orange outline or text color) */
.datepicker table tr td.today,
.datepicker table tr td.highlighted {
	background-color: #1fab6aa3 !important;
	/* Very light yellow background */
	border-color: #1faa69 !important;
	/* Orange border */
	color: #ffffff !important;
	/* Dark text */
}

/* Style for the SELECTED date (e.g., a solid blue background) */
.datepicker table tr td.active,
.datepicker table tr td.active.today {
	background-color: #072241 !important;
	color: white !important;
	/* White text */
	/* When today is selected, the .active class takes precedence over .today */
}

.ui-datatable table {
	table-layout: auto !important;
}

.datepicker table {
	width: 100% !important;
}


.datepicker table tr td.day,
.datepicker table tr th.day {
	height: 35px !important;
	width: 35px !important;
}

.datepicker table tr td,
.datepicker table tr th {
	text-align: center;
	width: 50px;
	height: 30px;
	border-radius: 4px;
	border: none;
}

.datepicker table tr td span,
.datepicker table tr th span {
	width: 50px !important;
	height: 50px !important;
	vertical-align: middle !important;
	line-height: 50px !important;
}

.pagination>li>a i {
	line-height: 1.42857143 !important;
}