﻿.readonly-highlight {
    background-color: rgba(173, 216, 230, 0.3) !important;
    color: #222;
    transition: background-color 0.2s, color 0.2s;
}

body.theme-dark .readonly-highlight {
    background-color: rgba(173, 216, 230, 0.15) !important;
    color: #fff;
}

.blur-modal {
    filter: blur(4px);
    pointer-events: none;
    user-select: none;
}
.fa-calendar {
    cursor: pointer;
}
.fc .fc-list-sticky .fc-list-day > *
{
    background : transparent;
}
.fc-list-event:hover td {
    background: none !important;
}

.fc .fc-list-event:hover {
    background: none !important;
}

.swal2-theme {
    /* Match your theme's background color */
    background: var(--bs-body-bg) !important;
    /* Match your theme's text color */
    color: var(--bs-body-color) !important;
}

.select2-container--bootstrap-5 .select2-selection--multiple
.select2-selection__rendered .select2-selection__choice {
    background-color: lightgrey !important;
    color: black !important;
    border: black !important;
    font-size: 10px !important;
}

.select2-container--bootstrap-5 .select2-dropdown .select2-results__options .select2-results__option.select2-results__option--selected,
.select2-container--bootstrap-5 .select2-dropdown .select2-results__options .select2-results__option[aria-selected=true]:not(.select2-results__option--highlighted) {
    background-color: lightgrey !important;
    color: black !important;
    border: black !important;
}

.form-control,
.select2-container--bootstrap-5 .select2-selection {
    width: 100%;
    box-sizing: border-box;
    min-height: 38px;
}

.select2-container--bootstrap-5 .select2-selection {
    padding: 0.375rem 0.75rem;
}
.btn-file{
	    min-height: 38px;
}
.input-group-text {
    box-sizing: border-box;
    min-height: 38px;
}

.swal2-theme .swal2-title,
.swal2-theme .swal2-content {
    color: inherit;
}

/* Style for error icon to match theme */
.swal2-theme .swal2-icon.swal2-error {
    border-color: var(--bs-danger);
}

.field-validation-error {
    color: red;
    margin: 3px;
    padding: 1px;
}
.file-error-message {
    color: red !important;
    background-color: transparent !important;
    border: 1px solid transparent !important;
    border-radius: 4px;
    margin: 3px;
    padding: 15px;
}

.swal2-theme .swal2-icon.swal2-error [class^='swal2-x-mark-line'] {
    background-color: var(--bs-danger);
}
/* Light Mode */
.select2-container--bootstrap-5 .select2-selection,
.select2-container--bootstrap-5 .select2-selection--single .select2-selection__rendered {
    color: #000 !important;
}

.select2-container--bootstrap-5 .select2-dropdown {
    background-color: rgba(255, 255, 255, 0.9) !important;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

.select2-container--bootstrap-5 .select2-results__option--highlighted[aria-selected] {
    background-color: rgba(0, 0, 0, 0.1) !important;
    color: #000 !important;
}

.select2-container--bootstrap-5 .select2-results__option[aria-selected=true] {
    background-color: rgba(0, 0, 0, 0.15) !important;
    color: #000 !important;
}

/* Dark Mode */
[data-bs-theme="dark"] .select2-container--bootstrap-5 .select2-selection,
[data-bs-theme="dark"] .select2-container--bootstrap-5 .select2-selection--single .select2-selection__rendered,
[data-bs-theme="dark"] .select2-container--bootstrap-5 .select2-results__option {
    color: #fff !important;
}

[data-bs-theme="dark"] .select2-container--bootstrap-5 .select2-dropdown {
    background-color: rgba(45, 53, 60, 0.9) !important;
}

[data-bs-theme="dark"] .select2-container--bootstrap-5 .select2-results__option--highlighted[aria-selected] {
    background-color: rgba(58, 68, 78, 0.8) !important;
    color: #fff !important;
}

[data-bs-theme="dark"] .select2-container--bootstrap-5 .select2-results__option[aria-selected=true] {
    background-color: rgba(58, 68, 78, 0.5) !important;
    color: #fff !important;
}

/* Common styles */
.select2-container--bootstrap-5 .select2-selection {
    background-color: transparent !important;
    border-color: rgba(128, 128, 128, 0.2);
}


.select2-container--bootstrap-5 .select2-results__option {
    background-color: transparent !important;
}

/* Placeholder color */
.select2-container--bootstrap-5 .select2-selection--single .select2-selection__placeholder {
    color: rgba(128, 128, 128, 0.8) !important;
}

[data-bs-theme="dark"] .select2-container--bootstrap-5 .select2-selection--single .select2-selection__placeholder {
    color: rgba(255, 255, 255, 0.6) !important;
}
/* Light Mode */
.selectpicker,
.bootstrap-select .dropdown-toggle {
    color: #000 !important;
}

.bootstrap-select .dropdown-menu {
    background-color: rgba(255, 255, 255, 0.9) !important;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

.bootstrap-select .dropdown-menu .dropdown-item:hover,
.bootstrap-select .dropdown-menu .dropdown-item:focus {
    background-color: rgba(0, 0, 0, 0.1) !important;
    color: #000 !important;
}

.bootstrap-select .dropdown-menu .dropdown-item.active {
    background-color: rgba(0, 0, 0, 0.15) !important;
    color: #000 !important;
}

/* Dark Mode */
[data-bs-theme="dark"] .selectpicker,
[data-bs-theme="dark"] .bootstrap-select .dropdown-toggle,
[data-bs-theme="dark"] .bootstrap-select .dropdown-menu .dropdown-item {
    color: #fff !important;
}

[data-bs-theme="dark"] .bootstrap-select .dropdown-menu {
    background-color: rgba(45, 53, 60, 0.9) !important;
}

[data-bs-theme="dark"] .bootstrap-select .dropdown-menu .dropdown-item:hover,
[data-bs-theme="dark"] .bootstrap-select .dropdown-menu .dropdown-item:focus {
    background-color: rgba(58, 68, 78, 0.8) !important;
    color: #fff !important;
}

[data-bs-theme="dark"] .bootstrap-select .dropdown-menu .dropdown-item.active {
    background-color: rgba(58, 68, 78, 0.5) !important;
    color: #fff !important;
}

/* Common styles */
.bootstrap-select .dropdown-toggle {
    background-color: transparent !important;
    border-color: rgba(128, 128, 128, 0.2);
}

.bootstrap-select .dropdown-menu .dropdown-item {
    background-color: transparent !important;
}

/* Placeholder color */
.bootstrap-select .dropdown-toggle .filter-option-inner-inner[title=""] {
    color: rgba(128, 128, 128, 0.8) !important;
}

[data-bs-theme="dark"] .bootstrap-select .dropdown-toggle .filter-option-inner-inner[title=""] {
    color: rgba(255, 255, 255, 0.6) !important;
}

/* Match Select2 to form-control styling */
.select2-container--bootstrap-5 .select2-selection {
    display: block;
    width: 100%;
    padding: .375rem .75rem;
    font-size: .875rem;
    font-weight: 400;
    line-height: 1.5;
    color: var(--bs-body-color);
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: transparent;
    background-clip: padding-box;
    border: var(--bs-border-width) solid var(--bs-border-color) !important;
    border-radius: 4px;
    transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}

/* Adjust the height of single select to match form-control */
.select2-container--bootstrap-5 .select2-selection--single {
    height: calc(1.5em + .75rem + 2px); /* Matches form-control height */
}

/* Adjust dropdown styling */
.select2-container--bootstrap-5 .select2-dropdown {
    border: var(--bs-border-width) solid var(--bs-border-color);
    border-radius: 4px;
    margin-top: 2px; /* Add small gap between field and dropdown */
}

/* Style for focused state */
.select2-container--bootstrap-5.select2-container--focus .select2-selection,
.select2-container--bootstrap-5.select2-container--open .select2-selection {
    border-color: var(--bs-border-color) !important;
    box-shadow: 0 0 0 0.2rem rgba(13, 110, 253, 0.25);
}
.grid-button {
    margin: 0 5px;
    font-size: 1.1rem;
}

.cursor-pointer {
    cursor: pointer;
}

.grid-button:hover {
    opacity: 0.8;
}

 .error-span {
     color: #dd4b39 !important;
     font-size: 12px !important;
 }

/* Add these styles for the close button */
.modal-header {
    position: relative;
}

.btn-close {
    position: absolute;
    right: 1rem;
    padding: 0.5rem;
    margin: -0.5rem -0.5rem -0.5rem auto;
}

.required {
    border-left: 2px solid red;
}

.k-treeview {
    color: inherit !important;  /* This will inherit the color from body */
}

/* If you need to target specific elements within the treeview */
.k-treeview .k-in {
    color: inherit !important;
}

/* For selected items */
.k-treeview .k-state-selected {
    color: inherit !important;
}


/* Dark theme states */
[data-bs-theme="dark"] .k-selected {
    background: rgba(255, 255, 255, 0.15) !important;
}

[data-bs-theme="dark"] .k-treeview-leaf:hover {
    background: rgba(255, 255, 255, 0.2) !important;
}

/* light theme states */
[data-bs-theme="light"] .k-selected {
    background: rgba(255, 255, 255, 0.15) !important;
}

[data-bs-theme="light"] .k-treeview-leaf:hover {
    background: rgba(255, 255, 255, 0.2) !important;
}


#pac-input::placeholder {
    opacity: 0.7;
}

[data-bs-theme="dark"] #pac-input::placeholder {
    color: #6c757d;
}

/* Ensure proper styling when the input is focused */
#pac-input:focus {
    outline: none;
    box-shadow: 0 0 0 0.2rem rgba(13, 110, 253, 0.25);
}

[data-bs-theme="dark"] #pac-input:focus {
    border-color: #495057;
    box-shadow: 0 0 0 0.2rem rgba(255, 255, 255, 0.25);
}
/* Info Window styles for both modes */
.gm-style .gm-style-iw-c {
    padding: 12px;
    border-radius: 8px;
}

/* Light mode Info Window */
.gm-style .gm-style-iw-c {
    background-color: #ffffff;
    color: #212529;
}

.gm-style .gm-style-iw-tc::after {
    background: #ffffff;
}

.gm-style .gm-style-iw-d {
    overflow: hidden !important;
}

/* Dark mode Info Window */
[data-bs-theme="dark"] .gm-style .gm-style-iw-c {
    background-color: #212529;
    color: #ffffff;
    border: 1px solid #495057;
}

[data-bs-theme="dark"] .gm-style .gm-style-iw-tc::after {
    background: #212529;
}

/* Close button styles and positioning */
.gm-style .gm-style-iw-t button[title="Close"] {
    background-color: transparent !important;
    top: 0 !important;
    right: 3% !important;
    width: 30px !important;
    height: 30px !important;
    opacity: 1 !important;
    padding: 0 !important;
    position: absolute !important;
}

/* Ensure the button container is properly positioned */
.gm-ui-hover-effect {
    position: absolute !important;
    top: 2px !important;
    right: 2px !important;
    z-index: 10 !important;
}

[data-bs-theme="dark"] .gm-style .gm-style-iw-t button[title="Close"] img {
    filter: invert(1);
}

/* Ensure content doesn't overlap with close button */
.gm-style-iw-d {
    padding-right: 10px !important;
}

.info-text {
    margin-top: 1rem !important;
}

#jsVectorMap {
    opacity: 1 !important;
    visibility: visible !important;
    height: 500px !important;
    width: 100% !important;
    min-height: 500px !important;
}

.jvectormap-container {
    width: 100% !important;
    height: 100% !important;
    opacity: 1 !important;
    visibility: visible !important;
}

.jvectormap-marker {
    opacity: 1 !important;
    visibility: visible !important;
}
#EntitiesList {
    background-color: transparent;
    border: 1px solid rgba(255,255,255,.2);
    color: var(--bs-theme);
    font-size: 0.8125rem;
    padding: 0.25rem 2rem 0.25rem 0.75rem;
    border-radius: 4px;
}

#EntitiesList:focus {
    border-color: var(--bs-theme);
    box-shadow: 0 0 0 0.25rem rgba(var(--bs-theme-rgb), 0.25);
}

#EntitiesList option {
    background-color: var(--bs-dark);
    color: var(--bs-white);
}

.tab-content{
    background-color: transparent !important;
}
/* Make all FileManager components transparent and inherit text colors */
.k-filemanager,
.k-filemanager-toolbar,
.k-filemanager-navigation,
.k-filemanager-preview,
.k-filemanager-view-container,
.k-filemanager .k-listview,
.k-filemanager .k-grid,
.k-filemanager .k-grid-content,
.k-filemanager .k-grid-header,
.k-filemanager .k-grid-pager,
.k-filemanager .k-breadcrumb,
.k-filemanager .k-splitter,
.k-filemanager .k-splitbar,
.k-filemanager .k-listview-content,
.k-filemanager-details .k-grid-header,
.k-filemanager-details .k-grid-content,
.k-filemanager .k-upload-files,
.k-filemanager .k-file-preview,
.k-filemanager .k-file-information,
.k-filemanager .k-folder-path,
.k-filemanager .k-breadcrumb-wrapper,
.k-grid tbody tr,
.k-grid tbody td {
    background-color: transparent !important;
    color: var(--bs-body-color) !important;
}

/* Ensure all text elements inherit the theme color */
.k-filemanager *,
.k-grid-header .k-header,
.k-filemanager .k-breadcrumb-link,
.k-filemanager .k-breadcrumb-delimiter,
.k-filemanager .k-file-name,
.k-filemanager .k-file-size,
.k-filemanager .k-file-type,
.k-filemanager .k-file-date,
.k-filemanager .k-breadcrumb-path-link,
.k-filemanager .k-upload-status,
.k-filemanager .k-file-information-title,
.k-filemanager .k-file-information-section {
    color: inherit !important;
}

/* Style icons to match text color */
.k-filemanager .k-icon,
.k-filemanager .k-i-loading,
.k-filemanager .k-button-icon {
    color: var(--bs-body-color) !important;
}

/* Make hover states semi-transparent while preserving text color */
.k-filemanager .k-grid tr:hover,
.k-filemanager .k-listview-item:hover {
    background-color: var(--bs-gray-200) !important;
    color: var(--bs-body-color) !important;
}

/* Style selected items */
.k-filemanager .k-grid tr.k-state-selected,
.k-filemanager .k-listview-item.k-state-selected {
    background-color: var(--bs-gray-300) !important;
    color: var(--bs-body-color) !important;
}

/* Style buttons to match theme */
.k-filemanager .k-button {
    background-color: transparent !important;
    color: var(--bs-body-color) !important;
    border-color: var(--bs-border-color) !important;
}

.k-filemanager .k-button:hover {
    background-color: var(--bs-gray-200) !important;
}

/* Fix border colors */
.k-filemanager .k-grid td,
.k-filemanager .k-grid th {
    border-color: var(--bs-border-color) !important;
}

/* Handle dark mode via Bootstrap's data-bs-theme attribute */
[data-bs-theme="dark"] .k-filemanager .k-grid tr:hover,
[data-bs-theme="dark"] .k-filemanager .k-listview-item:hover {
    background-color: var(--bs-gray-700) !important;
}

[data-bs-theme="dark"] .k-filemanager .k-grid tr.k-state-selected,
[data-bs-theme="dark"] .k-filemanager .k-listview-item.k-state-selected {
    background-color: var(--bs-gray-600) !important;
}

[data-bs-theme="dark"] .k-filemanager .k-button:hover {
    background-color: var(--bs-gray-700) !important;
}

.k-switch-off .k-switch-track {
    border-color: #d1d1d1;
    color: transparent !important;
    background-color: transparent !important;
}

.k-input, .k-widget.k-input {
    border-color: #d1d1d1;
    color: #676767;
    background-color: transparent !important;
}
.bi-box-arrow-up-right {
    font-size: 1.2rem;
    cursor: pointer;
}
/* Custom styles for the date picker */
.tempus-dominus-widget {
    --td-background-color: var(--bs-body-bg);
    --td-primary-color: var(--bs-primary);
    --td-text-color: var(--bs-body-color);
    --td-secondary-color: var(--bs-secondary);
    --td-secondary-text-color: var(--bs-secondary-color);
    --td-btn-hover-bg: var(--bs-secondary-bg);
    --td-btn-active-bg: var(--bs-primary);
    --td-btn-active-color: var(--bs-primary-text-emphasis);
}

/* Style for the input group buttons */
.input-group .btn-outline-secondary {
    border-color: var(--bs-border-color);
}

.input-group .btn-outline-secondary:hover {
    background-color: var(--bs-secondary-bg);
    border-color: var(--bs-border-color);
    color: var(--bs-body-color);
}

/* Make sure the calendar icon is visible in both themes */
.input-group .btn-outline-secondary i {
    color: var(--bs-body-color);
}

 .tempus-dominus-widget {
     z-index: 9999 !important;
     position: absolute !important;
 }

.td-picker-header {
    display: flex !important;
}

/* Ensure the picker container is visible */
.td-picker {
    display: block !important;
    visibility: visible !important;
}

/* Position the picker relative to the input */
.input-group {
    position: relative;
}
 .validation-error {
     animation: shakeX; /* From animate.css */
     animation-duration: 1s;
 }

.login
{
    min-height: 0 !important;
    padding: 0 !important;
}

/* General link styling */
.login-content a.login-link {
    color: #0d6efd;
    text-decoration: none;
    position: relative;
    transition: color 0.3s ease;
    padding: 0.5rem 1rem;
    border-radius: 0.25rem;
    display: inline-block;
    margin: 0.25rem 0;
}

.login-content a.login-link:hover {
    background-color: rgba(13, 110, 253, 0.1);
    color: #0a58ca;
}

/* Separator between links */
.login-links-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    margin: 1.5rem 0;
}


.login-link i {
    margin-right: 0.5rem;
}

.hover-card {
    transition: all 0.15s ease-in-out;
    border: 1px solid var(--bs-border-color);
}

.hover-card:hover {
    transform: translateY(-2px);
    border-color: var(--bs-theme); 
    box-shadow: 0 0.125rem 0.25rem rgba(var(--bs-theme-rgb), 0.15);
}

.hover-card:hover .card-title {
    color: var(--bs-theme); 
}

.hover-card .text-primary {
    color: var(--bs-theme) !important; 
}

/* Spacing for links container */
.login-links-container {
    margin-top: 1.5rem;
}
/* Red Line for standard input, textarea, and select fields */
.form-control.required,
.form-control:required {
    border-left: 3px solid #FA1313 !important;
}

/* Red Line for select2 single select */
.select2-container--default .select2-selection--single.required {
    border-left: 3px solid #FA1313 !important;
    border-radius: 4px !important;
}

/* Red Line for select2 multiple select */
.select2-container--default .select2-selection--multiple.required {
    border-left: 3px solid #FA1313 !important;
    border-radius: 4px !important;
}

.file-input .fileinput-remove {
    background-color: transparent !important;
    border: 1px solid var(--theme-danger, red) !important;
    color: var(--theme-danger, red) !important;
    box-shadow: none !important;
    margin-right: 1px;
    min-height: 38px;

}
/* Theme-aware row highlighting */
.table > tbody > tr.selected {
    background-color: var(--bs-body-color) !important;
    opacity: 0.15;
}
.btn-outline-theme {
    --bs-btn-color: var(--theme-accent);
    --bs-btn-hover-color: var(--theme-accent);
    --bs-btn-hover-bg: var(--theme-accent);
    --bs-btn-hover-border-color: var(--theme-accent);
    --bs-btn-focus-shadow-rgb: var(--theme-accent);
    --bs-btn-active-color: var(--theme-accent);
    --bs-btn-active-bg: var(--theme-accent);
    --bs-btn-active-border-color: var(--theme-accent);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: var(--theme-accent);
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: var(--theme-accent);
    --bs-gradient: none;
}

    