.dselect-wrapper .form-select {
   font-weight: 500;
   padding: 0.5rem;
   padding-left: 1rem;
   display: flex;
   align-items: center;
   flex-wrap: wrap;
   text-align: left;
}

.dselect-wrapper .form-select.show {
   border: 2px solid #2196f3;
   outline: 0;
   box-shadow: none !important;
   /* box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); */
}

.dselect-wrapper .form-select:focus {
   border: 2px solid #2196f3;
}

.dselect-wrapper .form-select.dselect-clearable {
   padding-right: calc(1.5rem + 0.375rem + 0.625rem);
   box-shadow: none !important;
}

.dselect-wrapper .form-select.form-select-sm {
   padding-left: 0.5rem;
}

.dselect-wrapper .form-select.form-select-sm.dselect-clearable {
   padding-right: calc(1.5rem + 0.25rem + 0.625rem);
}

.dselect-wrapper .form-select.form-select-lg {
   padding-left: 1rem;
}

.dselect-wrapper .form-select.form-select-lg.dselect-clearable {
   padding-right: calc(1.5rem + 0.5rem + 0.625rem);
}

.dselect-wrapper .dropdown-menu {
   padding: 0.375rem;
   width: 100%;
}

.dselect-wrapper .dropdown-menu>.flex-column {
   gap: 0.375rem;
}

.dselect-wrapper .form-select-sm+.dropdown-menu {
   padding: 0.25rem;
   font-size: 0.875rem;
}

.dselect-wrapper .form-select-lg+.dropdown-menu {
   padding: 0.5rem;
   font-size: 1.25rem;
}

.dselect-wrapper .dropdown-item,
.dselect-wrapper .dropdown-header {
   padding-left: 0.375rem;
   padding-right: 0.375rem;
}

.dselect-wrapper .form-select-sm+.dropdown-menu .dropdown-item,
.dselect-wrapper .form-select-sm+.dropdown-menu .dropdown-header {
   padding-left: 0.25rem;
   padding-right: 0.25rem;
}

.dselect-wrapper .form-select-lg+.dropdown-menu .dropdown-item,
.dselect-wrapper .form-select-lg+.dropdown-menu .dropdown-header {
   padding-left: 0.5rem;
   padding-right: 0.5rem;
}

.dselect-wrapper .form-control {
   border-radius: 0;
   box-shadow: none !important;
   border-color: #dee2e6 !important;
   padding: 0.5rem calc(0.375rem - 1px);
   font-size: 0.9rem;
}

.dselect-wrapper .form-select-sm+.dropdown-menu .form-control {
   padding: calc(0.25rem - 1px) calc(0.25rem - 1px);
}

.dselect-wrapper .form-select-lg+.dropdown-menu .form-control {
   padding: 0.25rem calc(0.5rem - 1px);
}

.dselect-wrapper .dselect-no-results {
   padding: 0.25rem 0.375rem;
}

.dselect-wrapper .form-select-sm+.dropdown-menu .dselect-no-results {
   padding: calc(0.25rem - 1px) 0.25rem;
}

.dselect-wrapper .form-select-lg+.dropdown-menu .dselect-no-results {
   padding: 0.25rem 0.5rem;
}

.dselect-wrapper .dselect-tag {
   background-color: #6c757d;
   color: #f8f9fa;
   padding-left: calc(0.5rem + 14px);
   padding-right: 0.5rem;
   border-radius: 0.375rem;
   height: calc(1.5em * 1rem);
   line-height: calc((1.5em * 1rem) - 1px);
   position: relative;
   margin-top: 0.25rem;
   margin-right: 0.25rem;
}

.dselect-wrapper .form-select-sm .dselect-tag {
   height: auto;
   line-height: inherit;
}

.dselect-wrapper .form-select-lg .dselect-tag {
   height: calc(1.5em * 1.25rem);
   line-height: calc(1.5em * 1.25rem);
}

.dselect-wrapper .dselect-tag-remove {
   position: absolute;
   left: 0.25rem;
   top: 50%;
   margin-top: -7px;
   color: rgba(248, 249, 250, 0.35);
   transition: color 0.15s ease-in-out;
}

.dselect-wrapper .dselect-tag-remove:hover {
   color: #f8f9fa;
}

.dselect-wrapper .dselect-placeholder {
   color: #000;
}

.dselect-wrapper .dropdown-header~.dropdown-item {
   padding-left: 0.75rem;
   padding-right: 0.75rem;
}

.dselect-wrapper .form-select-sm+.dropdown-menu .dropdown-header {
   font-size: 0.85em;
}

.dselect-wrapper .form-select-sm+.dropdown-menu .dropdown-header~.dropdown-item {
   padding-left: 0.5rem;
   padding-right: 0.5rem;
}

.dselect-wrapper .form-select-lg+.dropdown-menu .dropdown-header {
   font-size: 0.85em;
}

.dselect-wrapper .form-select-lg+.dropdown-menu .dropdown-header~.dropdown-item {
   padding-left: 1rem;
   padding-right: 1rem;
}

.dselect-wrapper .dselect-clear {
   /* position: absolute;
   padding: 0;
   border: 0;
   box-shadow: none;
   top: 0;
   bottom: 0;
   right: 2rem;
   display: flex;
   align-items: center;
   color: #747474;
   cursor: pointer; */


   position: absolute;
   padding: 5px;
   border-radius: 50%;
   box-shadow: none;
   top: 0.8rem;
   bottom: 0;
   width: 20px;
   height: 20px;
   right: 2.5rem;
   display: flex;
   align-items: center;
   color: #ffffff;
   cursor: pointer;
   background: #747474;
}

.dselect-wrapper .dselect-clear:hover {
   color: inherit;
}

.dselect-wrapper .dselect-clear svg {
   width: 0.625rem;
   height: 0.625rem;
}

.dselect-wrapper [data-dselect-text=""]~.dselect-clear {
   display: none;
}

/* .was-validated .form-control:invalid,
.form-control.is-invalid {
   margin-bottom: 0.75rem !important;
} */

.dselect-wrapper .was-validated .form-select:invalid+& .form-select,
.dselect-wrapper .form-select.is-invalid+& .form-select {
   border-color: #dc3545 !important;
}

.dselect-wrapper .was-validated .form-select:invalid+& .form-select.show,
.dselect-wrapper .was-validated .form-select:invalid+& .form-select:focus,
.dselect-wrapper .form-select.is-invalid+& .form-select.show,
.dselect-wrapper .form-select.is-invalid+& .form-select:focus {
   box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25) !important;
}

.dselect-wrapper .was-validated .form-select:valid+& .form-select,
.dselect-wrapper .form-select.is-valid+& .form-select {
   border-color: #198754 !important;
}

.dselect-wrapper .was-validated .form-select:valid+& .form-select.show,
.dselect-wrapper .was-validated .form-select:valid+& .form-select:focus,
.dselect-wrapper .form-select.is-valid+& .form-select.show,
.dselect-wrapper .form-select.is-valid+& .form-select:focus {
   box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25) !important;
}

/* Fix for floating label with custom select */
.floating-label .dselect-wrapper {
   position: relative;
   width: 100%;
}

/* Adjust label position for custom select */
.floating-label .dselect-wrapper+label.label-zagi {
   position: absolute;
   top: 0.5rem;
   left: 0.75rem;
   font-size: var(--font-size);
   background-color: #fff;
   padding: 0 0.25rem 0 0;
   color: var(--menu-prime-color);
   transition: all 0.2s ease-in-out;
   pointer-events: none;
}

/* Floating label active state for custom select */
.floating-label .dselect-wrapper .form-select:focus+label.label-zagi,
.floating-label .dselect-wrapper .form-select:valid+label.label-zagi,
.floating-label .dselect-wrapper .form-select[data-dselect-text]:not([data-dselect-text=""])+label.label-zagi {
   top: -0.5rem;
   left: 0.75rem;
   font-size: var(--font-size);
   color: #2196f3;
}

/* Validation styles for custom select */
.was-validated .dselect-wrapper .form-select:invalid,
.dselect-wrapper .form-select.is-invalid {
   border-color: #dc3545 !important;
}

.was-validated .dselect-wrapper .form-select:valid,
.dselect-wrapper .form-select.is-valid {
   border-color: #198754 !important;
}

/* Fix dropdown menu z-index */
.dselect-wrapper .dropdown-menu {
   z-index: 1060;
}

/* Custom spinner untuk loading */
.search-loading {
   display: inline-block;
   width: 1rem;
   height: 1rem;
   border: 2px solid #f3f3f3;
   border-top: 2px solid #0d6efd;
   border-radius: 50%;
   animation: spin 1s linear infinite;
}

@keyframes spin {
   0% {
      transform: rotate(0deg);
   }

   100% {
      transform: rotate(360deg);
   }
}