/* width */
::-webkit-scrollbar {
	width: 10px;
}

/* Track */
::-webkit-scrollbar-track {
	background: #f0f3f5;
}

/* Handle */
::-webkit-scrollbar-thumb {
	background: #888;
}

/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
	background: #257260;
}

/* scrollbar table */
.scrollbar-custom::-webkit-scrollbar {
	height: 14px !important;
}

.scrollbar-custom {
	overflow-x: scroll;
	transform: rotateX(180deg);
}

.scrollbar-custom > table {
	white-space: nowrap;
	transform: rotateX(180deg);
}

/**
 * Align
 */
.align-center {
	text-align: center !important;
}

.align-left {
	text-align: left !important;
}

.align-right {
	text-align: right !important;
}

/**
 * End align
 */

/**
 * Padding style
 */

.pr-25px {
	padding-right: 25px;
}

.pt-0px {
	padding-top: 0px;
}

.pl-15px {
	padding-left: 15px;
}

.pr-15px {
	padding-right: 15px;
}

.p-0px {
	padding: 0px;
}

.pb-15px {
	padding-bottom: 15px;
}

.pl-0px {
	padding-left: 0px;
}

.pr-0px {
	padding-right: 0px;
}

.px-3rem {
	padding-left: 0.3rem;
	padding-right: 0.3rem;
}

/**
 * End padding style
 */

/**
 * Margin style
 */

.mt-5px {
	margin-top: 5px;
}

.mt-15px {
	margin-top: 15px;
}

.mb-0px {
	margin-bottom: 0px;
}

.mb-30px {
	margin-bottom: 30px;
}

/**
 * End margin style
 */

/**
 * Template
 */

.fs-12px {
	font-size: 12px;
}

.i-checks {
	font-size: 12px;
	margin-bottom: 0px;
}

.tittle-header {
	padding-bottom: 15px;
	margin-top: 15px;
	color: #000000;
	margin-bottom: 15px;
	width: 100%;
	border-bottom: 1px solid #dddddd;
}

.pagination {
	font-size: 11px;
}

.ui-select-bootstrap .ui-select-match .btn-default {
	height: 28px;
	font-size: 11px;
}

.ui-select-toggle {
	padding-top: 5px;
}

.ui-select-bootstrap .ui-select-choices-row > span {
	font-size: 11px;
}

.ui-select-search {
	font-size: 11px;
	height: 28px;
}

.sidebar .nav-item a {
	font-size: 11px;
}

.angka {
	text-align: center;
}

.angka-custom {
	text-align: center;
}

.badge-table {
	font-size: 11px;
}

.input-group-sm {
	height: 28px;
}

.input-group-sm .input-group-text {
	font-size: 11px;
}

.rp {
	text-align: right;
}

.required::after {
	content: "*";
	color: red;
}

.steps-indicator li.current a:before {
	background-color: #31b5f5 !important;
}

body {
	background-color: #f6f7f7;
}

.app-header.navbar .navbar-brand {
	padding: 0px;
	padding-right: 0px;
	border-right: 1px solid #f0f3f5;
	position: relative;
	height: 93px;
	font-size: 20px;
	border-bottom: none;
	background-color: #ffff;
	width: 200px;
	text-align: center;
	border-bottom: 1px solid #f0f3f5;
}

.px-3 {
	font-size: 13px;
}

.navbar-brand {
	margin-top: 5px;
}

.navbar-brand-text {
	margin-top: 8px;
}

.img-brand {
	height: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
}

.box-shadow {
	border-radius: 5px;
	box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;
}

.card-footer {
	border-bottom-left-radius: 5px;
	border-bottom-right-radius: 5px;
}

/**
 * End template
 */

/** 
 * Password Checker
 */

input.ng-pristine + ul#strength {
	display: none;
}

ul#strength {
	/*display: inline;*/
	list-style: none;
	margin: 0;
	/*margin-left: 15px;*/
	padding: 0;
	vertical-align: 2px;
}

.point:last {
	margin: 0 !important;
}

.point {
	background: #ddd;
	border-radius: 2px;
	display: inline-block;
	height: 5px;
	margin-right: 1px;
	width: 20px;
}

.point-text {
	background: #ddd;
	display: inline-block;
	height: 5px;
	margin-right: 1px;
	margin-left: 4px;
	background-color: transparent;
	font-size: 11px;
}

.help-block-sm {
	font-size: 11px;
	margin-bottom: 0px;
}

/** End Password Checker */

/**
 * Table
 */

.table td,
.table th {
	border-top: 1px solid #c8ced3;
	padding: 5px;
	font-size: 11px;
	/* cursor: pointer; */
}

.table:not(.clear) td,
.table th {
	cursor: pointer;
}

.table td,
.table th {
	vertical-align: middle;
}

.table thead tr th {
	height: 35px;
	border-bottom: 1px solid #c8ced3;
	vertical-align: middle;
}

.table-striped td {
	border-top: none;
}

/**
 * End table
 */

/**
 * Tabel Laporan
 */
.table-laporan tr {
	background-color: #e3f1f31f;
	border-bottom: none;
}

.table-laporan td {
	border: none !important;
}

.table-laporan tbody + tbody {
	border-top: none;
}

.table-laporan tbody tr:nth-of-type(odd) {
	background-color: rgba(57, 143, 163, 0.12);
}

.table-laporan thead tr {
	background-color: #398fa3;
	color: white;
}

.table-laporan tbody tr th {
	background-color: #398fa3;
	color: white;
}

.table-laporan tfoot tr {
	background-color: #398fa3;
	color: white;
}

.header-laporan {
	margin: 0px;
	margin-bottom: 10px;
	font-size: 18px;
	font-weight: bold;
}

.content-center {
	text-align: center;
}

.header-laporan-wrapper {
	margin-bottom: 15px;
	margin-top: 15px;
	color: #525252;
}

.table-laporan thead tr th {
	border-bottom: none;
	border-top: none;
	vertical-align: middle;
	height: auto;
}

/**
 * End tabel laporan
 */

/**
 * Sweet alert
 */

.swal2-popup .swal2-title {
	font-size: 20px;
}

.swal2-popup #swal2-content {
	font-size: 16px;
	text-align: center;
}

/**
 * Medium
 */

.medium-editor-toolbar li button {
	min-width: 35px !important;
	height: 35px !important;
	padding: 5px !important;
}

.card-header strong {
	font-size: 14px;
}

.card-header strong {
	font-size: 14px;
}

.card-header-white {
	background-color: #fff;
	border-bottom: 1px solid #e4e5e6;
}

.modal-xl {
	min-width: 90% !important;
}

.modal-xl-custom {
	min-width: 80% !important;
}

.modal-xm {
	width: 400px !important;
}

/*-----*/
/*! CSS Used from: http://akademik.sunsal.or.id/app/css/style.css */
.i-checks {
	padding-left: 20px;
	cursor: pointer;
}

.i-checks input {
	position: absolute;
	margin-left: -20px;
	opacity: 0;
}

.i-checks input:checked + i {
	border-color: #23b7e5;
}

.i-checks input:checked + i:before {
	top: 4px;
	left: 4px;
	width: 10px;
	height: 10px;
	background-color: #23b7e5;
}

.i-checks > i {
	position: relative;
	display: inline-block;
	width: 20px;
	height: 20px;
	margin-top: -2px;
	margin-right: 4px;
	margin-left: -20px;
	line-height: 1;
	vertical-align: middle;
	background-color: #fff;
	border: 1px solid #cfdadd;
}

.i-checks > i:before {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 0;
	height: 0;
	background-color: transparent;
	content: "";
	-webkit-transition: all 0.2s;
	transition: all 0.2s;
}

.list-group-item {
	padding: 5px 6px;
}

.bg-secondary-light {
	background-color: #ececec;
	color: black;
}

.input-group-append .btn,
.input-group-prepend .btn {
	border-top-left-radius: 0px;
	border-bottom-left-radius: 0px;
}

.form-control:disabled,
.form-control[readonly] {
	background-color: #edf1f4;
}

.col-form-label {
	line-height: 1;
}

.bg-success-gradient {
	background: linear-gradient(45deg, #4dbc74, #c2e1ec);
	color: #ffffff;
}

.kasir .card-footer,
.kasir .card-header {
	padding-top: 10px;
	padding-bottom: 8px;
	padding-left: 15px;
	padding-right: 15px;
}

.badge-info {
	color: #ffffff;
}

.kasir .badge-info {
	font-size: 11px;
}

.footer-kasir {
	position: fixed;
	bottom: 0px;
	width: 100%;
	background-color: #ffffff;
	border-top: 1px solid #dddddd;
}

.footer-kasir .col-md-12 {
	padding-top: 5px;
	padding-bottom: 5px;
}

#hover-table:hover {
	background-color: rgba(0, 0, 0, 0.1);
}

#hover ul li:hover {
	background-color: rgba(0, 0, 0, 0.1);
}

.ibg-hayyu-hijau {
	background-color: #257260 !important;
	color: #ffffff !important;
}

.ibg-hayyu-hijau:hover {
	background-color: #257260 !important;
	color: #ffffff !important;
}

.ibg-hayyu-hijau:focus {
	outline: #257260a8 !important;
}

.bg-hayyu-hijau {
	background-color: #257260;
	color: #ffffff;
}

.bg-hayyu-hijau:hover {
	background-color: #257260;
	color: #ffffff;
}

.bg-hayyu-hijau:focus {
	outline: #257260a8 !important;
}

.bg-hayyu-gold {
	background-color: #e2c992;
	border: 1px solid #e2c992;
	font-weight: bold;
	color: #000000;
}

.bg-hayyu-gold:hover {
	background-color: #e2c992;
}

.bg-hayyu-gold-custom {
	background-color: #e2c992;
	border: 1px solid #e2c992;
	font-weight: bold;
	color: #000000;
}

.bg-hayyu-gold-custom:hover {
	background-color: #e2c992;
	color: green;
}

.bg-hayyu-grey {
	background-color: #e6f0ef;
	color: #1f1f1f;
}

.bg-hayyu-grey:hover {
	background-color: #e6f0ef;
	color: #1f1f1f;
}

.bg-hayyu-grey:focus {
	outline: #e6f0ef !important;
}

/*.kasir .form-group .btn-group .active{*/
/*    background-color: #257260;*/
/*}*/

.kasir .btn-primary:not(:disabled):not(.disabled).active,
.btn-primary:not(:disabled):not(.disabled):active,
.show > .btn-primary.dropdown-toggle {
	background-color: #257260;
}

.color-hayyu {
	background-color: #257260;
	color: white;
}

#month-only + div thead {
	display: none;
}

.cust-no-caret .caret {
	display: none;
}

/* Lucide Icon */
.lucide-64 {
	height: 64px;
	width: 64px;
}

.lucide-32 {
	height: 32px;
	width: 32px;
}

.lucide-24 {
	height: 24px;
	width: 24px;
}

.lucide-20 {
	height: 20px;
	width: 20px;
}

.lucide-16 {
	height: 16px;
	width: 16px;
}

.lucide-14 {
	height: 14px;
	width: 14px;
}

.lucide-12 {
	height: 12px;
	width: 12px;
}

.lucide-sidebar {
	display: inline-block;
	width: 20px;
	margin: 0 0.5rem 0 0;
	font-size: 14px;
	color: #536c79;
	text-align: center;
}

.navbar .sidebar .active.dropdown-toggle .lucide-sidebar,
.sidebar .nav-link.active .lucide-sidebar,
.sidebar .navbar .active.dropdown-toggle .lucide-sidebar {
	color: #20a8d8;
}

/* Anis Style */
.btn.btn-hayyu {
	border-radius: 0;
	background-color: white;
	border: solid 1px #c2cfd6;
	font-size: 0.76562rem;
	padding-block: 4px;
}

.btn.btn-hayyu.active {
	background-color: #257260;
	font-weight: 500;
	color: white;
}

.column-1 {
	column-count: 1;
}

.column-2 {
	column-count: 2;
}

.column-3 {
	column-count: 3;
}

.column-4 {
	column-count: 4;
}

@media (min-width: 576px) {
	.column-sm-1 {
		column-count: 1;
	}

	.column-sm-2 {
		column-count: 2;
	}

	.column-sm-3 {
		column-count: 3;
	}

	.column-sm-4 {
		column-count: 4;
	}
}

@media (min-width: 768px) {
	.column-md-1 {
		column-count: 1;
	}

	.column-md-2 {
		column-count: 2;
	}

	.column-md-3 {
		column-count: 3;
	}

	.column-md-4 {
		column-count: 4;
	}
}

@media (min-width: 992px) {
	.column-lg-1 {
		column-count: 1;
	}

	.column-lg-2 {
		column-count: 2;
	}

	.column-lg-3 {
		column-count: 3;
	}

	.column-lg-4 {
		column-count: 4;
	}
}

@media (min-width: 1200px) {
	.column-xl-1 {
		column-count: 1;
	}

	.column-xl-2 {
		column-count: 2;
	}

	.column-xl-3 {
		column-count: 3;
	}

	.column-xl-4 {
		column-count: 4;
	}
}

.break-inside-avoid {
	page-break-inside: avoid;
	break-inside: avoid;
	-webkit-column-break-inside: avoid;
	-moz-column-break-inside: avoid;
}

.break-inside-auto {
	page-break-inside: auto;
	break-inside: auto;
	-webkit-column-break-inside: auto;
	-moz-column-break-inside: auto;
}

.break-before-auto {
	page-break-before: auto;
	break-before: auto;
}

.break-before-avoid {
	page-break-before: avoid;
	break-before: avoid;
}

.break-before-always {
	page-break-before: always;
	break-before: always;
}

.break-after-auto {
	page-break-after: auto;
	break-after: auto;
}

.break-after-avoid {
	page-break-after: avoid;
	break-after: avoid;
}

.break-after-always {
	page-break-after: always;
	break-after: always;
}

.item-news {
	display: inline-flex;
	padding-top: 0.75rem;
	padding-bottom: 0.75rem;
	padding-left: 0.75rem;
	padding-right: 0.75rem;
	padding-bottom: 0.5rem;
	border-radius: 0.75rem;
	justify-content: center;
	align-items: center;
	background: rgba(230, 240, 239, 1);
	color: rgba(0, 100, 98, 1);
	font-weight: 400;
	line-height: 25.09px;
	font-size: 14px;
}

.header-full-green {
	width: 100%;
	font-size: 18px;
	color: rgba(0, 100, 98, 1) !important;
	font-weight: 400;
	line-height: 27.81px;
	position: relative;
	flex: start;
	text-align: start;
	justify-content: start;
	padding-bottom: 18px;
	margin-bottom: 28px;
}

.header-full-green::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 3px;
	background: linear-gradient(89.84deg, #007573 0%, #d9d9d9 100%);
}

.header-full-gray {
	width: 100%;
	font-size: 18px;
	color: rgba(109, 111, 120, 1) !important;
	font-weight: 400;
	line-height: 27.81px;
	position: relative;
	flex: start;
	text-align: start;
	justify-content: start;
	padding-bottom: 18px;
	margin-bottom: 28px;
}

.header-full-gray::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 3px;
	background: linear-gradient(89.84deg, #007573 0%, #d9d9d9 100%);
}

.btn-export {
	width: 150px;
	height: 36px;
	border-radius: 6px;
	padding: 8px 12px;
	background-color: white;
	border: 1px solid #006462;
	color: #006462;
}

.btn-action {
	width: auto;
	height: 36px;
	border-radius: 6px;
	padding: 8px 12px;
	background-color: white;
	border: 1px solid #006462;
	color: #006462;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 8px;
}

.bg-hayyu-hijau-new {
	background-color: #006462 !important;
	color: #ffffff !important;
}

.bg-hayyu-hijau-new:hover {
	background-color: #006462 !important;
	color: #ffffff !important;
}

.bg-hayyu-hijau-new:hover {
	background-color: #006462;
	color: #ffffff;
}

.bg-hayyu-hijau-new:focus {
	outline: none !important;
}

.bg-hayyu-grey-new {
	background-color: #b0cfce !important;
	color: #1f1f1f !important;
}

.bg-hayyu-grey-new:hover {
	background-color: #b0cfce !important;
	color: #1f1f1f !important;
}

.bg-hayyu-grey-new:hover {
	background-color: #b0cfce;
	color: #1f1f1f;
}

.bg-hayyu-grey-new:focus {
	outline: none !important;
}

.btn-outline-hayyu {
	color: #006462;
	background-color: transparent;
	border-color: #006462;
}

.btn-outline-hayyu:hover {
	background-color: #006462 !important;
	color: #ffffff !important;
}

.badge-green-new {
	display: inline-block;
	background-color: #ebf9f4;
	border: 0.8px solid #33c78e;
	border-radius: 10px;
	padding: 2px 8px;
	color: #33c78e;
	font-size: 10px;
	font-weight: 400;
	line-height: 18.2px;
	text-align: center;
	white-space: nowrap;
}

.badge-blue-new {
	display: inline-block;
	background-color: #def7ff;
	border: 0.8px solid #0aa6ef;
	border-radius: 10px;
	padding: 2px 8px;
	color: #0aa6ef;
	font-size: 10px;
	font-weight: 400;
	line-height: 18.2px;
	text-align: center;
	white-space: nowrap;
}

.badge-red-new {
	display: inline-block;
	background-color: #fadede;
	border: 0.8px solid #f70505;
	border-radius: 10px;
	padding: 2px 8px;
	color: #f70505;
	font-size: 10px;
	font-weight: 400;
	line-height: 18.2px;
	text-align: center;
	white-space: nowrap;
}

.badge-yellow-new {
	display: inline-block;
	background-color: #faf8de;
	border: 0.8px solid #efb90a;
	border-radius: 10px;
	padding: 2px 8px;
	color: #efb90a;
	font-size: 10px;
	font-weight: 400;
	line-height: 18.2px;
	text-align: center;
	white-space: nowrap;
}

.hr-50 {
	width: 50%;
	border-top: 0;
	height: 1px;
	background: linear-gradient(89.84deg, #007573 0%, #d9d9d9 100%);
}

.hr-25 {
	width: 25%;
	border-top: 0;
	height: 1px;
	background: linear-gradient(89.84deg, #007573 0%, #d9d9d9 100%);
}

.hr-10 {
	width: 10%;
	border-top: 0;
	height: 1px;
	background: linear-gradient(89.84deg, #007573 0%, #d9d9d9 100%);
}

.button {
	width: auto;
	height: 32px;
	min-width: 135px;
	border-radius: 5px;
	padding: 8px 18px;
	border: none;
	cursor: pointer;
	font-size: 0.8rem;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 5px;
}

.button-primary {
	background-color: #006462;
	color: white;
}

.button-primary:hover {
	background-color: #006462 !important;
	color: #ffffff !important;
}

.button-primary:hover {
	background-color: #006462;
	color: #ffffff;
}

.button-primary:focus {
	outline: none !important;
}

.button-primary > svg {
	color: white;
}

.button-outline-primary {
	border: 1px solid #006462 !important;
	color: #006462 !important;
	background-color: inherit;
}

.button-outline-primary:hover {
	border: 1px solid #006462 !important;
	color: #006462 !important;
	background-color: inherit;
}

.button-outline-primary:hover {
	border: 1px solid #006462 !important;
	background-color: inherit;
	color: #006462;
}

.button-outline-primary:focus {
	outline: none !important;
}

.button-outline-primary > svg {
	color: #006462;
}

.button-outline-dark {
	border: 1px solid #1f1f1f !important;
	color: #1f1f1f !important;
	background-color: inherit;
}

.button-outline-dark:hover {
	border: 1px solid #1f1f1f !important;
	color: #1f1f1f !important;
	background-color: inherit;
}

.button-outline-dark:hover {
	border: 1px solid #1f1f1f !important;
	background-color: inherit;
	color: #1f1f1f;
}

.button-outline-dark:focus {
	outline: none !important;
}

.button-outline-dark > svg {
	color: #1f1f1f;
}

.pagination-template {
	margin-top: 8px;
	/* margin-left: 1rem;
    margin-right: 1rem; */
	gap: 0.5rem;
	flex-wrap: wrap;
	align-content: center;

	.pagination {
		margin-bottom: 0;

		a {
			border-color: #e0e2eb;
			color: #006462;

			&.foreground {
				color: #b5b7c4;
			}
		}

		.active a {
			color: #006462;
			background-color: #e6f0ef;
			border-color: #e0e2eb;
		}
	}

	@media (max-width: 576px) {
		.pagination,
		div {
			width: clamp(286px, 100%, 340px);
		}
	}

	.options-mobile {
		gap: 1rem;
		align-items: center;
		color: #006462;

		select {
			height: 30px;
			color: #006462;
			border: 1px solid #c8ced3;
			padding-left: 6px;
			font-weight: 500;
		}
	}
}

.formTemplate {
	font-family: "Montserrat", sans-serif;

	/* Priority: New CSS Variables */
	--ck-border-radius: 7px;
	--ck-color-base-border: #b2b2b2;

	.ck.ck-editor__top .ck-sticky-panel .ck-sticky-panel__content .ck-menu-bar {
		border-radius: 7px 7px 0 0;
	}

	.card {
		margin-bottom: 18px;
	}

	/* --- Form Units (New CSS) --- */
	.form-unit.form-control {
		border: 1px solid #b2b2b2 !important;
		border-radius: 7px 0 0 7px !important;
	}

	.uiselect-form-unit.ui-select-container {
		border-radius: 0 7px 7px 0 !important;
	}

	.input-group-text.input-text-currency {
		border-radius: 7px 0 0 7px !important;
		border: 1px solid #b2b2b2 !important;
	}

	.input-currency.form-control {
		border-radius: 0 7px 7px 0 !important;
		border: 1px solid #b2b2b2 !important;
	}

	.header-form {
		font-weight: 600;
		font-size: 11px;
		line-height: 21px;
		color: #000000;
		margin-bottom: 23px;
		width: 100%;
		position: relative;
	}

	.header-form::after {
		content: "";
		display: block;
		margin-top: 7px;
		width: 100%;
		height: 1px;
		background-color: #ded8d8;
	}

	.label-form {
		font-weight: 400;
		font-size: 11px !important;
		line-height: 21px;
		color: #101010;
	}

	/* --- Inputs (New CSS) --- */
	.input-form {
		width: 100%;
		border-radius: 7px;
		padding-top: 7px;
		padding-bottom: 7px;
		padding-right: 11px;
		padding-left: 11px;
		border: 1px solid #b2b2b2;
		color: rgb(0, 0, 0);
		height: 32px;
	}

	.input-form:focus {
		box-shadow: none;
		outline: 1px solid #006462;
	}

	.input-form::placeholder {
		font-size: 11px;
		font-weight: 400;
		line-height: 21px;
		color: #536c79;
	}

	.input-form:disabled {
		background-color: #edf1f4;
		color: #6c757d;
	}

	/* --- Input Groups (From Old CSS - Missing in New) --- */
	.input-form-group {
		display: flex;
		align-items: stretch;
		width: 100%;
		height: 32;
		border-radius: 7px;
		border: 1px solid #b2b2b2;
		background-color: white;
		overflow: hidden;
	}

	.input-form-group .input-form {
		border: none;
		border-radius: 0;
		flex: 1;
		min-width: 0;
	}

	.input-form-group .input-form:focus {
		box-shadow: none;
		outline: none;
		border: none;
	}

	.input-form-group .input-form:first-child {
		border-top-left-radius: 0;
		border-bottom-left-radius: 0;
	}

	.input-form-group .input-form:last-child {
		border-top-right-radius: 0;
		border-bottom-right-radius: 0;
	}

	.input-form-group .input-form-text {
		display: flex;
		align-items: center;
		padding: 7px 11px;
		background-color: #f8f9fa;
		font-size: 11px;
		font-weight: 400;
		color: #536c79;
		white-space: nowrap;
		min-width: fit-content;
		order: -1;
	}

	.input-form-group .input-form-text:first-child,
	.input-form-group .input-form-text:first-of-type {
		border-right: none;
		order: -1;
	}

	.input-form-group .input-form-text:last-child,
	.input-form-group .input-form-text:last-of-type {
		border-left: none;
		order: 1;
	}

	.input-form-group > .input-form-text:first-child {
		border-right: none;
		order: -1;
	}

	.input-form-group > .input-form:first-child + .input-form-text,
	.input-form-group > .input-form + .input-form-text {
		border-left: none;
		order: 1;
	}

	.input-form-group:focus-within {
		box-shadow: none;
		outline: 1px solid #006462;
	}

	.input-form-group.input-group-sm .input-form {
		height: 28px;
		padding-top: 2px;
		padding-bottom: 2px;
		font-size: 11px;
	}

	.input-form-group.input-group-sm .input-form-text {
		padding: 4px 8px;
		font-size: 10px;
		height: 28px;
	}

	.input-form-group:has(.input-form:disabled) {
		background-color: #edf1f4;
		border-color: #e0e2eb;
		color: #6c757d;
	}

	.input-form-group .input-form:disabled {
		background-color: transparent;
		color: #6c757d;
	}

	.input-form-group:has(.input-form:disabled) .input-form-text {
		background-color: #e9ecef;
		color: #6c757d;
	}

	/* --- Password Form (New CSS) --- */
	.input-password-form {
		width: 90%;
		height: 32px;
		border-top-right-radius: 0;
		border-bottom-right-radius: 0;
		border-top-left-radius: 7px;
		border-bottom-left-radius: 7px;
		padding-top: 7px;
		padding-bottom: 7px;
		padding-right: 11px;
		padding-left: 11px;
		border: 1px solid #b2b2b2;
		border-width: 1px 0 1px 1px;
	}

	.input-password-form:focus {
		outline: none;
		border: 1px solid #006462;
		border-right: none;
	}

	.input-password-form:focus ~ .eye-logo-form {
		outline: none;
		border: 1px solid #006462;
		border-left: none;
	}

	.eye-logo-form {
		width: 10%;
		height: 32px;
		border: 1px solid #b2b2b2;
		border-width: 1px 1px 1px 0px;
		border-top-right-radius: 7px;
		border-bottom-right-radius: 7px;
		border-top-left-radius: 0;
		border-bottom-left-radius: 0;
		display: flex;
		justify-content: center;
		align-items: center;
	}

	.textarea-form {
		width: 100%;
		border-radius: 7px;
		border: 1px solid #b2b2b2;
		padding-top: 7px;
		padding-bottom: 7px;
		padding-right: 11px;
		padding-left: 11px;
		overflow-y: visible;
	}

	.textarea-form:focus {
		box-shadow: none;
		outline: 1px solid #006462;
	}

	.textarea-form:disabled {
		background-color: #edf1f4;
	}

	/* --- UI Select (New CSS) --- */
	.ui-select-container {
		border-radius: 8px !important;
		background-color: white;
		outline: none;
		box-shadow: none;
		border: 1px solid #b2b2b2 !important;
		min-height: 32px;
		max-height: none;
		overflow: hidden;
		padding: 0;

		.form-control {
			border: 0;

			&:focus,
			&:active {
				outline: none !important;
				box-shadow: none !important;
				-webkit-box-shadow: none !important;
			}
		}
	}

	.ui-select-multiple.ui-select-bootstrap input.ui-select-search {
		height: 100%;
		margin-bottom: 0;
	}

	.ui-select-container:focus-within {
		border: 1px solid #006462;
		border-radius: 5px;
	}

	.ui-dropdown-menu {
		width: auto !important;
	}

	.ui-select-choices-row.active > span {
		background-color: #006462 !important;
	}

	.ui-select-multiple {
		border-radius: 7px !important;
		border: 1px solid #b2b2b2 !important;
	}

	.ui-select-match {
		border: none;
		outline: none;
		box-shadow: none;
		height: 32px;
		background-color: white;
	}

	.ui-select-match-text {
		display: block;
		width: 99%;
		overflow: hidden;
		text-overflow: ellipsis;
		color: #000000;
	}

	.ui-select-match.btn-default-focus {
		box-shadow: none;
		border: none;
	}

	.ui-select-container input,
	.ui-select-container .btn-default {
		background-color: white !important;
		text-align: left;
		height: 32px;
	}

	.ui-select-container .btn-default {
		padding: 0.375rem 0.75rem;
	}

	.ui-select-match > span {
		box-shadow: none;
		border: none;
	}

	.ui-select-container.hide-caret i {
		display: none;
	}

	.ui-select-choices-row.active > span {
		background-color: #006462;
	}

	.ui-select-container.disabled input,
	.ui-select-container.disabled .btn-default {
		background-color: #edf1f4 !important;
	}
	.ui-select-container.disabled .ui-select-match {
		background-color: #edf1f4;
	}

	/* --- File Upload (New CSS) --- */
	.textbox-fileupload {
		width: 70%;
		height: 33px;
		padding-top: 7px;
		padding-right: 11px;
		padding-bottom: 7px;
		padding-left: 11px;
		border-top-right-radius: 0;
		border-bottom-right-radius: 0;
		border-top-left-radius: 5px;
		border-bottom-left-radius: 5px;
		border: 1px solid #b2b2b2;
		text-align: start;
		color: rgb(0, 0, 0);
	}

	.button-choice-fileupload {
		display: flex;
		justify-content: center;
		align-items: center;
		background-color: #e6f0ef;
		width: 30%;
		height: 33px;
		text-align: center;
		border-top-right-radius: 5px;
		border-bottom-right-radius: 5px;
		border-top-left-radius: 0;
		border-bottom-left-radius: 0;
		border: 1px solid #b2b2b2;
	}

	.button-choice-fileupload:hover,
	.button-choice-fileupload:focus {
		background: linear-gradient(135deg, #e6f0ef 0%, #d4e8e6 100%) !important;
		transform: translateY(-1px) !important;
		box-shadow: 0 4px 12px 0 rgba(0, 100, 98, 0.2) !important;
		outline: none !important;
	}

	.text-choice-fileupload {
		color: #006462;
		font-weight: 600;
		font-size: 13px;
		line-height: 15px;
		text-decoration: none;
		text-align: center;
	}

	.image-box-fileupload {
		position: relative;
		overflow: hidden;
		text-align: center;
		width: 100%;
		height: 270px;
		background-color: #eeeeee;
		border-radius: 7px;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}

	/* upload */
	.image-box-upload {
		width: 100%;
		aspect-ratio: 2/1;
		background-color: #eeeeee;
		border-radius: 7px;
		border: 2px dashed #b5b7c4;
		color: #1f1f1f;
		font-size: 13px;
		max-height: 207px;
		cursor: pointer;
	}

	.itemImage {
		width: 2.5rem;
	}

	.button-trash-upload {
		background-color: #feedee;
		color: #f14950;
		width: 28px;
		aspect-ratio: 1/1;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		border-radius: 50%;
		box-shadow: none;
		outline: none;
		border: none;
		z-index: 10;
	}

	.button-trash-upload:hover,
	.button-trash-upload:focus {
		background: linear-gradient(135deg, #feedee 0%, #fdd6d6 100%) !important;
		transform: translateY(-1px) !important;
		box-shadow: 0 4px 12px 0 rgba(241, 73, 80, 0.2) !important;
		color: #f14950;
		outline: none !important;
	}

	.icon-trash-upload {
		width: 18px;
		height: 18px;
		color: #f14950;
		stroke-width: 1;
	}

	/* multiupload */
	.image-box-multiupload {
		width: 400px;
		aspect-ratio: 2/1;
		background-color: #eeeeee;
		border-radius: 7px;
		border: 2px dashed #b5b7c4;
		margin-right: 18px;
		color: #1f1f1f;
		font-size: 13px;
		max-height: 207px;
		cursor: pointer;
		max-width: 100%;
	}

	.box-wrapper {
		position: relative;
		overflow: hidden;
		text-align: center;
		width: 100%;
		height: 100%;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		flex-shrink: 0;
	}

	.icon-box-multiupload-wrapper {
		background-color: #ffffff;
		width: 44px;
		aspect-ratio: 1/1;
		margin-bottom: 0.72rem;
		border-radius: 9999px;
		display: flex;
		align-items: center;
		justify-content: center;
	}

	.icon-box-multiupload {
		color: #4d4d4d;
		width: 25px;
		height: 25px;
		aspect-ratio: 1/1;
	}

	.choice-file-text {
		font-size: 11px;
		text-align: center;
		font-weight: 400;
		color: #1f1f1f;
		cursor: pointer;
	}

	.drag-drop-text {
		color: #9597a3;
		font-size: 9px;
		font-weight: 400;
		cursor: pointer;
	}

	.list-terms-condition {
		width: 100%;
		margin-bottom: 0;
		text-align: start;
		display: flex;
		align-items: center;
		justify-content: start;
		gap: 5px;
	}

	.icon-dot {
		width: 10px;
		height: 10px;
		color: #9597a3;
	}

	.text-terms-condition {
		color: #9597a3;
		font-weight: 400;
		font-size: 11px;
		margin-bottom: 0;
	}

	.wrapper-display-multiupload {
		gap: 10px;
		display: flex;
		flex-wrap: wrap;
		flex-direction: row;
	}

	.image-wrapper-multiupload {
		flex: 1 1 calc(33.333% - 10px);
		max-width: calc(100% / 3);
		box-sizing: border-box;
		height: 190px;
		background-color: #eeeeee;
		border-radius: 4px;
		display: flex;
		justify-content: center;
		align-items: center;
		position: relative;
		overflow: hidden;
	}

	.image-wrapper-multiupload img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		border-radius: 4px;
	}

	.button-trash-preview {
		position: absolute;
		top: 8%;
		right: 4%;
		background-color: #feedee;
		color: #f14950;
		width: 28px;
		aspect-ratio: 1/1;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		border-radius: 50%;
		box-shadow: none;
		outline: none;
		border: none;
		z-index: 10;
	}

	.button-trash-preview:hover,
	.button-trash-preview:focus {
		background: linear-gradient(135deg, #feedee 0%, #fdd6d6 100%) !important;
		transform: translateY(-1px) !important;
		box-shadow: 0 4px 12px 0 rgba(241, 73, 80, 0.2) !important;
		color: #f14950;
		outline: none !important;
	}

	.icon-trash-preview {
		width: 18px;
		height: 18px;
		color: #f14950;
		stroke-width: 1;
	}

	.icon-trash-fileupload {
		width: 14px;
		height: 14px;
		stroke-width: 1;
		color: #ff0004;
	}

	.icon-x-fileupload {
		width: 14px;
		height: 14px;
		stroke-width: 1;
		color: #ff0004;
	}

	.icon {
		margin-bottom: 0px;
		margin-top: 1px;
	}

	.select-file-text {
		cursor: pointer;
	}

	.button-select-file {
		width: 90%;
		height: 29px;
		border-radius: 7px;
		padding: 7px 11px;
		background-color: #4d4d4d;
		color: #ffffff;
		font-size: 10px;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		border: 0;
		box-shadow: none;
		margin-bottom: 1.8rem;
	}

	.button-select-file:hover,
	.button-select-file:focus {
		background: linear-gradient(135deg, #4d4d4d 0%, #333333 100%) !important;
		transform: translateY(-1px) !important;
		box-shadow: 0 4px 12px 0 rgba(77, 77, 77, 0.3) !important;
		color: #ffffff;
		outline: none !important;
	}

	.format-text-upload {
		font-size: 10px;
		color: #4d4d4d;
	}

	.pilih-text-multiupload {
		display: flex;
		justify-content: center;
		align-items: center;
		background-color: inherit;
		text-align: center;
		font-size: 13px;
		border: none;
	}

	.text-pilih-multiupload {
		border-bottom: 1px solid #000000;
		font-size: 13px;
		color: #000000;
	}

	.unordered-list-multiupload {
		font-size: 10px;
		font-weight: 400;
		color: #9597a3;
		list-style-position: outside;
		width: 100%;
		padding-left: 9px;
	}

	/* --- Buttons (New CSS) --- */
	.button-remove {
		width: auto;
		height: 33px;
		padding: 7px 18px;
		border: 1px solid #ff0004;
		background-color: white;
		border-radius: 7px;
		color: #0c0c0d;
		font-weight: 400;
		font-size: 11px;
	}

	.button-remove:hover,
	.button-remove:focus {
		background: linear-gradient(135deg, rgba(255, 0, 4, 0.1) 0%, rgba(220, 38, 38, 0.1) 100%) !important;
		transform: translateY(-1px) !important;
		box-shadow: 0 4px 12px 0 rgba(255, 0, 4, 0.2) !important;
		color: #ff0004;
		outline: none !important;
	}

	.button-cancel {
		width: auto;
		height: 33px;
		padding: 7px 18px;
		border: 1px solid #efb90a;
		background-color: white;
		border-radius: 7px;
		color: #0c0c0d;
		font-weight: 400;
		font-size: 11px;
	}

	.button-cancel:hover,
	.button-cancel:focus {
		background: linear-gradient(135deg, rgba(239, 185, 10, 0.1) 0%, rgba(212, 160, 8, 0.1) 100%) !important;
		transform: translateY(-1px) !important;
		box-shadow: 0 4px 12px 0 rgba(239, 185, 10, 0.2) !important;
		color: #efb90a;
		outline: none !important;
	}

	.button-upload {
		width: auto;
		height: 33px;
		padding: 7px 18px;
		border: 1px solid #006462;
		background-color: white;
		border-radius: 7px;
		color: #0c0c0d;
		font-weight: 400;
		font-size: 11px;
	}

	.button-upload:hover,
	.button-upload:focus {
		background: linear-gradient(135deg, rgba(0, 100, 98, 0.1) 0%, rgba(0, 77, 75, 0.1) 100%) !important;
		transform: translateY(-1px) !important;
		box-shadow: 0 4px 12px 0 rgba(0, 100, 98, 0.2) !important;
		color: #006462;
		outline: none !important;
	}

	.button-swipe {
		background-color: #4d4d4d;
		color: white;
		width: 23px;
		height: 29px;
		border-radius: 7px;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}

	.button-swipe:hover,
	.button-swipe:focus {
		background: linear-gradient(135deg, #4d4d4d 0%, #333333 100%) !important;
		transform: translateY(-1px) !important;
		box-shadow: 0 4px 12px 0 rgba(77, 77, 77, 0.3) !important;
		color: white;
		outline: none !important;
	}

	.image-preview-multiupload {
		width: 108px;
		height: 108px;
		background-color: #eeeeee;
		border-radius: 4px;
		position: relative;
		overflow: hidden;
	}

	.image-preview-multiupload img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		border-radius: 4px;
	}

	.name-preview-multiupload {
		font-size: 13px;
		font-weight: 600;
		color: #101010;
	}

	.img-size-preview-multiupload {
		font-size: 11px;
		font-weight: 400;
		color: #b5b7c4;
	}

	.progress-size {
		font-size: 11px;
		font-weight: 400;
		color: #b5b7c4;
	}

	.img-form-upload {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

	.not-found-img {
		color: #6d6f78;
		font-weight: 400;
		font-size: 13px;
		line-height: 13px;
		letter-spacing: 0%;
		text-align: center;
	}

	.terms-condition-fileupload {
		font-weight: 400;
		font-size: 10px;
		line-height: 13px;
		color: #9597a3;
	}

	.button-radio {
		min-width: 63px;
		height: 32px;
		padding: 7px 11px;
		background-color: #fefefe;
		border-color: #b2b2b2;
		color: #101010;
		font-weight: 400;
		font-size: 11px;
		text-align: center;
		align-items: center;
	}

	.button-radio:focus {
		box-shadow: none;
		border: 1px solid #006462;
	}

	.button-selected {
		background-color: #e6f0ef;
		color: #101010;
	}

	.button-back {
		width: 117px;
		height: 32px;
		border-radius: 5px;
		padding: 8px 18px;
		border: 1px solid #006462;
		cursor: pointer;
		background-color: white;
		color: black;
		font-size: 0.72rem;
		font-weight: 600;
		line-height: 18px;
		text-align: center;
	}

	.button-back:hover,
	.button-back:focus {
		background: linear-gradient(135deg, rgba(0, 100, 98, 0.1) 0%, rgba(0, 77, 75, 0.1) 100%) !important;
		transform: translateY(-1px) !important;
		box-shadow: 0 4px 12px 0 rgba(0, 100, 98, 0.2) !important;
		color: #006462;
		outline: none !important;
	}

	/* From Old CSS (Legacy Button Save) */
	.button-save {
		width: 117px;
		height: 32px;
		border-radius: 5px;
		padding: 8px 18px;
		border: none;
		cursor: pointer;
		background-color: #006462;
		color: #eaf4f6;
		font-size: 0.8rem;
		font-weight: 600;
		line-height: 18px;
		text-align: center;
	}

	.button-save-custom {
		width: auto;
		height: 32px;
		border-radius: 5px;
		padding: 8px 18px;
		border: none;
		cursor: pointer;
		background-color: #006462;
		color: #eaf4f6;
		font-size: 0.72rem;
		font-weight: 600;
		line-height: 18px;
		text-align: center;
	}

	.button-save-custom:hover,
	.button-save-custom:focus {
		background: linear-gradient(135deg, #006462 0%, #004d4b 100%) !important;
		transform: translateY(-1px) !important;
		box-shadow: 0 4px 12px 0 rgba(0, 100, 98, 0.3) !important;
		color: #eaf4f6;
		outline: none !important;
	}

	.button-draft {
		width: auto;
		height: 32px;
		border-radius: 5px;
		padding: 8px 18px;
		border: none;
		cursor: pointer;
		background-color: #efb90a;
		color: #eaf4f6;
		font-size: 0.72rem;
		font-weight: 600;
		line-height: 18px;
		text-align: center;
	}

	.button-draft:hover,
	.button-draft:focus {
		background: linear-gradient(135deg, #efb90a 0%, #d4a008 100%) !important;
		transform: translateY(-1px) !important;
		box-shadow: 0 4px 12px 0 rgba(239, 185, 10, 0.3) !important;
		color: #eaf4f6;
		outline: none !important;
	}

	.button-primary {
		width: auto;
		height: 32px;
		border-radius: 5px;
		padding: 8px 18px;
		border: none;
		cursor: pointer;
		background-color: #006462;
		color: #eaf4f6;
		font-size: 0.72rem;
		font-weight: 600;
		line-height: 18px;
		text-align: center;
	}

	.button-primary:hover,
	.button-primary:focus {
		background: linear-gradient(135deg, #006462 0%, #004d4b 100%) !important;
		transform: translateY(-1px) !important;
		box-shadow: 0 4px 12px 0 rgba(0, 100, 98, 0.3) !important;
		color: #eaf4f6;
		outline: none !important;
	}

	.button-warning {
		width: auto;
		height: 32px;
		border-radius: 5px;
		padding: 8px 18px;
		border: none;
		cursor: pointer;
		background-color: #efb90a;
		color: #eaf4f6;
		font-size: 0.72rem;
		font-weight: 600;
		line-height: 18px;
		text-align: center;
	}

	.button-warning:hover,
	.button-warning:focus {
		background: linear-gradient(135deg, #efb90a 0%, #d4a008 100%) !important;
		transform: translateY(-1px) !important;
		box-shadow: 0 4px 12px 0 rgba(239, 185, 10, 0.3) !important;
		color: #eaf4f6;
		outline: none !important;
	}

	.button-danger {
		width: auto;
		height: 32px;
		border-radius: 5px;
		padding: 8px 18px;
		border: none;
		cursor: pointer;
		background-color: #f14950;
		color: #eaf4f6;
		font-size: 0.72rem;
		font-weight: 600;
		line-height: 18px;
		text-align: center;
	}

	.button-danger:hover,
	.button-danger:focus {
		background: linear-gradient(135deg, #f14950 0%, #dc2626 100%) !important;
		transform: translateY(-1px) !important;
		box-shadow: 0 4px 12px 0 rgba(241, 73, 80, 0.3) !important;
		color: #eaf4f6;
		outline: none !important;
	}

	.button-success {
		width: auto;
		height: 32px;
		border-radius: 5px;
		padding: 8px 18px;
		border: none;
		cursor: pointer;
		background-color: #198754;
		color: #eaf4f6;
		font-size: 0.72rem;
		font-weight: 600;
		line-height: 18px;
		text-align: center;
	}

	.button-success:hover,
	.button-success:focus {
		background: linear-gradient(135deg, #198754 0%, #157347 100%) !important;
		transform: translateY(-1px) !important;
		box-shadow: 0 4px 12px 0 rgba(25, 135, 84, 0.3) !important;
		color: #eaf4f6;
		outline: none !important;
	}

	.daterangepicker td.active {
		background-color: #006462 !important;
		color: #ffffff !important;
	}

	.daterangepicker td.start-date {
		background-color: #00897b !important;
		color: #ffffff !important;
	}

	.daterangepicker td.end-date {
		background-color: #004d40 !important;
		color: #ffffff !important;
	}

	/* --- Datepickers (New CSS) --- */
	.input-datepicker {
		width: 100%;
		border-radius: 7px 0 0 7px;
		padding: 7px 11px;
		border: 1px solid #b2b2b2;
		border-right: none;
		cursor: pointer;
		height: 32px;
	}

	.input-datepicker.form-control {
		width: 100%;
		border-radius: 7px 0 0 7px !important;
		padding: 7px 11px !important;
		border: 1px solid #b2b2b2;
		border-right: none !important;
		cursor: pointer;
		height: 32px !important;
		background-color: white !important;
		font-size: 11px;
		font-weight: 400;
		line-height: 21px;
		color: #536c79;
	}

	.input-datepicker:focus {
		box-shadow: none;
		outline: none;
		border: 1px solid #006462;
		border-right: none !important;
	}

	.input-datepicker.form-control:focus {
		box-shadow: none;
		outline: none;
		border: 1px solid #006462;
		border-right: none !important;
	}

	.input-datepicker:focus-within ~ .icon-input {
		outline: none !important;
		border: 1px solid #006462 !important;
		border-left: none !important;
	}

	.input-datepicker::placeholder {
		font-size: 11px !important;
		font-weight: 400;
		line-height: 21px;
		color: #536c79;
	}

	.input-datepicker:disabled {
		background-color: #edf1f4;
		color: #6c757d;
	}

	.input-datepicker:disabled ~ .icon-input {
		background-color: #edf1f4;
		color: #6c757d;
	}

	.icon-input {
		border-radius: 0 7px 7px 0;
		background-color: white;
		border: 1px solid #b2b2b2;
		border-left: none;
		align-items: center;
		padding: 9px 11px;
		font-size: 13px;
		cursor: pointer;
		height: 32px;
		width: 10%;
	}

	/* --- Timepicker (From Old CSS - Missing in New) --- */
	.input-timepicker {
		width: 100%;
		border-radius: 7px 0 0 7px;
		padding: 7px 11px;
		border: 1px solid #b2b2b2;
		border-right: none;
		cursor: pointer;
		height: 32px;
		background-color: white;
		font-size: 11px;
		font-weight: 400;
		line-height: 21px;
		color: #536c79;
	}

	.input-timepicker.form-control {
		width: 100%;
		border-radius: 7px 0 0 7px !important;
		padding: 7px 11px !important;
		border: 1px solid #b2b2b2;
		border-right: none !important;
		cursor: pointer;
		height: 32px !important;
		background-color: white !important;
		font-size: 11px;
		font-weight: 400;
		line-height: 21px;
		color: #536c79;
	}

	.input-timepicker:focus {
		box-shadow: none;
		outline: none;
		border: 1px solid #006462;
		border-right: none !important;
	}

	.input-timepicker.form-control:focus {
		box-shadow: none;
		outline: none;
		border: 1px solid #006462;
		border-right: none !important;
	}

	.input-timepicker:focus-within ~ .icon-input {
		outline: none !important;
		border: 1px solid #006462 !important;
		border-left: none !important;
	}

	.input-timepicker::placeholder {
		font-size: 11px !important;
		font-weight: 400;
		line-height: 21px;
		color: #536c79;
	}

	.input-timepicker:disabled {
		background-color: #edf1f4;
	}

	.input-timepicker:disabled ~ .icon-input {
		background-color: #edf1f4;
	}

	.input-daterangepicker {
		width: 100%;
		border-radius: 7px 0 0 7px;
		padding: 7px 11px;
		border: 1px solid #b2b2b2;
		border-right: none;
		cursor: pointer;
		height: 32px;
	}

	.input-daterangepicker.form-control {
		width: 100%;
		border-radius: 7px 0 0 7px !important;
		padding: 7px 11px !important;
		border: 1px solid #b2b2b2 !important;
		border-right: none !important;
		cursor: pointer;
		height: 32px !important;
		background-color: white !important;
		font-size: 11px;
		font-weight: 400;
		line-height: 21px;
		color: #536c79;
	}

	.input-daterangepicker:focus {
		box-shadow: none;
		outline: none;
		border: 1px solid #006462;
		border-right: none !important;
	}

	.input-daterangepicker:focus ~ .icon-daterangepicker-input {
		outline: none;
		border: 1px solid #006462;
		border-left: none !important;
	}

	.input-daterangepicker::placeholder {
		font-size: 11px !important;
		font-weight: 400;
		line-height: 21px;
		color: #536c79;
	}

	.icon-daterangepicker-input {
		border-radius: 0 7px 7px 0;
		background-color: white;
		border: 1px solid #b2b2b2;
		border-left: none;
		align-items: center;
		padding: 5px 11px;
		font-size: 13px;
		cursor: pointer;
		height: 32px;
		width: 10%;
	}

	/* daterangepicker */
	.datepickerperiod.input-group-sm {
		height: 32px !important;
	}

	.all-period-datepicker.form-control {
		border: 1px solid #016463 !important;
		border-left: none;
		border-radius: 0 7px 7px 0 !important;
		text-align: center;
	}

	.all-period-datepicker.form-control:disabled {
		background-color: #e6f1f1 !important;
	}

	.input-group-text.all-periode-text {
		border-radius: 7px 0 0 7px !important;
		border: 1px solid #016463 !important;
		background-color: #e6f1f1 !important;
	}

	.custom-checkbox {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-width: 15px;
		min-height: 15px;
		border: 1px solid #1f1f1f;
		border-radius: 4px;
		background-color: white;
		cursor: pointer;
		transition: background-color 0.2s ease;
	}

	.custom-checkbox.checked {
		background-color: #006462;
	}

	.custom-checkbox svg {
		width: 12px;
		height: 12px;
		color: white;
		display: none;
	}

	.custom-checkbox.checked svg {
		display: block;
	}

	.gap-md-0 {
		gap: 0;
	}

	@media (max-width: 768px) {
		.form-group {
			margin-bottom: 0.5rem;
		}
		.wrapper-display-multiupload {
			gap: 20px;
			display: flex;
			flex-wrap: wrap;
			flex-direction: column;
		}

		.image-wrapper-multiupload {
			max-width: 100%;
			box-sizing: border-box;
			height: 190px;
			background-color: #eeeeee;
			border-radius: 4px;
			display: flex;
			justify-content: center;
			align-items: center;
			position: relative;
			overflow: hidden;
		}

		.button-back {
			width: 100%;
			height: 32px;
			border-radius: 5px;
			padding: 8px 18px;
			border: none;
			cursor: pointer;
			background-color: white;
			color: black;
			border: 1px solid #006462;
			font-size: 0.72rem;
			font-weight: 600;
			line-height: 18px;
			text-align: center;
		}

		/* From Old CSS (Legacy Button Save) */
		.button-save {
			width: 100%;
			height: 32px;
			border-radius: 5px;
			padding: 8px 18px;
			border: none;
			cursor: pointer;
			background-color: #006462;
			color: #eaf4f6;

			font-size: 0.8rem;
			font-weight: 600;
			line-height: 18px;
			text-align: center;
		}

		.button-save-custom {
			width: 100%;
			height: 32px;
			border-radius: 5px;
			padding: 8px 18px;
			border: none;
			cursor: pointer;
			background-color: #006462;
			color: #eaf4f6;
			font-size: 0.72rem;
			font-weight: 600;
			line-height: 18px;
			text-align: center;
		}

		.button-draft {
			width: 100%;
			height: 32px;
			border-radius: 5px;
			padding: 8px 18px;
			border: none;
			cursor: pointer;
			background-color: #efb90a;
			color: #eaf4f6;
			font-size: 0.72rem;
			font-weight: 600;
			line-height: 18px;
			text-align: center;
		}

		.gap-sm-10 {
			gap: 10px;
		}
	}
}

.uiselect-filtertable {
	.ui-select-search.form-control {
		height: 31px;
		border-radius: 8px !important;
		background-color: white;
		/* padding: 4px; */
		outline: none;
		box-shadow: none;
		border: 1px solid #b2b2b2 !important;
	}

	.form-control:focus {
		box-shadow: none;
		outline: none;
		border: 1px solid #016463 !important;
	}

	.form-control::placeholder {
		font-size: 11px;
		font-family: "Montserrat", sans-serif;
	}

	.dropdown-menu {
		top: 130%;
		border-radius: 8px;
		font-size: 11px;
		font-family: "Montserrat", sans-serif;
	}

	.ui-select-choices-row-inner {
		padding: 8px 12px;
	}
}

input-field,
number-field {
	.input-form {
		width: 100%;
		border-radius: 7px;
		padding-top: 7px;
		padding-bottom: 7px;
		padding-right: 11px;
		padding-left: 11px;
		border: 1px solid #b2b2b2;
		color: #3e3f44;
	}

	.input-form:focus {
		outline: none;
		box-shadow: none;
	}

	.input-form::placeholder {
		font-size: 11px;
		font-weight: 300;
		line-height: 21px;
		color: #d4d4d4;
	}
}

.z-top {
	z-index: 10000;
}

enum-field {
	.ui-select-container {
		border-radius: 7px !important;
		background-color: white;
		padding: 3px;
		outline: none;
		box-shadow: none;
		border: 1px solid #b2b2b2 !important;

		.form-control {
			border: 0;

			&:focus,
			&:active {
				outline: none !important;
				box-shadow: none !important;
				-webkit-box-shadow: none !important;
			}
		}
	}

	.ui-select-container input,
	.ui-select-container .btn-default {
		background-color: white !important;
		text-align: left;
	}
}

.enum-field {
	/* z-index: 10000; */
	.ui-select-choices-row-inner {
		padding: 3px 16px !important;
	}

	.ui-select-choices-row.active .ui-select-choices-row-inner {
		img {
			filter: invert(1);
		}
	}
}

.bg-freebies {
	background-color: #beb491 !important;
}

.navbar .nav-notification {
	display: block;
}
.navbar .nav-notification-mobile {
	display: none;
}
@media (max-width: 768px) {
	.navbar {
		height: 63px;

		.nav-notification {
			display: none;
		}
		.nav-notification-mobile {
			display: block;
		}
	}
}

.tableComponent {
	.all-periode.input-group-text {
		border: 1px solid #016463 !important;
		background-color: #e6f1f1 !important;
		border-radius: 7px 0 0 7px !important;
		color: #3e3e3e !important;
	}

	.daterangepicker.dropdown-menu {
		display: block !important;
		width: auto !important;
	}

	.datepicker.input-group {
		width: 31.5ch !important;
	}

	@media (max-width: 575.98px) {
		.datepicker.input-group {
			width: 100% !important;
			min-width: 100%;
		}
	}

	.datepicker.form-check-input {
		border: 1px solid #3e3e3e;
	}

	.datepicker.input-group-sm {
		height: 32px !important;
	}

	/* .datepicker.input-group {
        .datepicker-input {
            border: 1px solid #EEEEEE !important;
            color: #6D6F78 !important;
            border-radius: 0 !important;
            border: 0 !important;
            text-align: center;
        }

    } */

	.datepicker-input {
		color: #6d6f78 !important;
		border-radius: 0 !important;
		border: 0 !important;
		text-align: center;
		min-width: 27ch;
	}

	.input-flatpickr.form-control {
		border-radius: 7px 0 0 7px !important;
	}

	.form-control:focus {
		box-shadow: none;
		outline: none;
	}

	.dropdown-menu {
		border-radius: 7px !important;
		border: none;
		box-shadow: 0px 5px 17px 0px rgba(0, 0, 0, 0.1) !important;
		z-index: 9999 !important;
	}

	.dropdown-item {
		border-bottom: 1px solid #e0e2eb;
	}
}

.select-table-component {
	.ui-select-search.form-control {
		width: 100%;
		height: 32px;
		border-radius: 7px !important;
		background-color: white;
		padding: 4px;
		outline: none;
		box-shadow: none;
		border: none;
	}

	.dropdown-menu {
		min-width: 100% !important;
		top: 120% !important;
	}

	.ui-select-choices-row.active > span {
		background-color: #006462 !important;
	}
}

/* ========================================
   TABLE STYLING SYSTEM
   ======================================== */

/* Standard Table Styles */
.table-style {
	border-radius: 10px;
	overflow: hidden;
	margin-bottom: 0;
	border: 0 !important;
}

.table-style thead {
	background-color: #b0cfce;
	color: #1f1f1f;
}

.table-style thead th {
	border-bottom: none;
	border-top: none;
	vertical-align: middle;
	height: auto;
	padding: 10px;
	font-size: 11px;
	font-weight: 600;
}

.table-style tbody {
	background-color: #f8f9fa;
}

.table-style tbody tr {
	transition: background-color 0.2s ease;
}

.table-style tbody tr:nth-child(even) {
	background-color: #ffffff;
}

.table-style tbody tr:nth-child(odd) {
	background-color: #f7fafa;
}

.table-style tbody tr:hover {
	background-color: #e6f0ef;
}

.table-style tbody td {
	padding: 8px 10px;
	font-size: 11px;
	vertical-align: middle;
	border-top: none;
}

.table-style tfoot {
	background-color: #b0cfce;
	color: #1f1f1f;
}

.table-style tfoot td,
.table-style tfoot th {
	padding: 10px;
	font-size: 11px;
	font-weight: 600;
	border-top: none;
}

/* Modal Table Styles */
.modal-table-wrapper {
	border-radius: 10px;
	overflow: hidden;
}

.modal-table {
	margin-bottom: 0;
	border-radius: 10px;
	overflow: hidden;
}

.modal-table thead {
	background-color: #b0cfce;
}

.modal-table thead th {
	padding: 10px;
	font-size: 11px;
	font-weight: 600;
	border: none;
	vertical-align: middle;
}

.modal-table tbody tr {
	background-color: #ffffff;
}

.modal-table tbody tr:nth-child(even) {
	background-color: #f7fafa;
}

.modal-table tbody tr:hover {
	background-color: #e6f0ef;
}

.modal-table tbody td {
	padding: 8px 10px;
	font-size: 11px;
	vertical-align: middle;
	border-top: 1px solid #b2b2b2;
}

/* Form Builder Table Styles */
.form-builder-table {
	border-radius: 10px;
	overflow: hidden;
	margin-bottom: 0;
	border: 1px solid #b2b2b2;
}

.form-builder-table thead {
	background-color: #b0cfce;
}

.form-builder-table thead th {
	padding: 10px;
	font-size: 11px;
	font-weight: 600;
	border: none;
	text-align: center;
}

.form-builder-table tbody {
	background-color: #f8f9fa;
}

.form-builder-table tbody tr {
	background-color: #ffffff;
}

.form-builder-table tbody tr:nth-child(even) {
	background-color: #f7fafa;
}

.form-builder-table tbody td {
	padding: 8px;
	font-size: 11px;
	vertical-align: middle;
	border-top: 1px solid #b2b2b2;
}

.form-builder-table tfoot {
	background-color: #b0cfce;
}

.form-builder-table tfoot td {
	padding: 10px;
	font-size: 11px;
	border: none;
}

/* Table Header Variants */
.thead-hayyu-primary {
	background-color: #257260 !important;
	color: #ffffff !important;
}

.thead-hayyu-primary th {
	color: #ffffff !important;
}

.thead-hayyu-secondary {
	background-color: #b0cfce !important;
	color: #1f1f1f !important;
}

.thead-hayyu-secondary th {
	color: #1f1f1f !important;
}

.thead-hayyu-grey {
	background-color: #e6f0ef !important;
	color: #1f1f1f !important;
}

.thead-hayyu-grey th {
	color: #1f1f1f !important;
}

/* Table Responsive Wrapper */
.table-responsive-hayyu {
	border-radius: 10px;
}

.table-responsive-hayyu.table-bordered {
	border: 1px solid #b2b2b2;
	overflow: hidden;
}

.table-responsive-hayyu .ui-select-placeholder {
	width: unset!important;
	height: unset!important;
}

/* Loading State */
.table-loading tbody tr td {
	text-align: center;
	padding: 20px;
	color: #6c757d;
}

/* Empty State */
.table-empty tbody tr td {
	text-align: center;
	padding: 20px;
	color: #6c757d;
}

/* Utility Classes for Tables */
.table-sm-padding tbody td,
.table-sm-padding thead th {
	padding: 5px !important;
}

.table-md-padding tbody td,
.table-md-padding thead th {
	padding: 8px !important;
}

.table-lg-padding tbody td,
.table-lg-padding thead th {
	padding: 12px !important;
}

/* Table Border Variants */
.table-bordered-hayyu {
	border: 1px solid #b2b2b2;
}

.table-bordered-hayyu thead th,
.table-bordered-hayyu tbody td {
	border: 1px solid #b2b2b2;
}

/* No Hover Effect */
.table-no-hover tbody tr:hover {
	background-color: inherit !important;
}
