:root {
  --primary: #4caf50; /* Green primary color */
  --primary-dark: #388C84; /* Darker green for buttons */
  --primary-light: #c8e6c9; /* Light green for backgrounds */
  --secondary: #2196f3; /* Blue accent color */
  --danger: #f04438; /* Red for delete/error */
  --warning: #ff9800; /* Orange for warnings/delayed */
  --success: #4caf50; /* Green for success */
  --info: #00bcd4; /* Cyan for info */
  --dark: #212121; /* Dark text */
  --light: #f5f5f5; /* Light background */
  --gray: #9e9e9e; /* Gray text */
  --border: #e0e0e0; /* Border color */
  --bright-green:#E3F5E1;
}
/* Global color utility class */
[class*="color-"] {
  --color: var(--primary);
  background-color: var(--color);
  color: var(--color);
  border-color: var(--color);
}

/* Color variants */
.color-primary { --color: var(--primary); }
.color-primary-dark { --color: var(--primary-dark); }
.color-primary-light { --color: var(--primary-light); }
.color-secondary { --color: var(--secondary); }
.color-danger { --color: var(--danger); }
.color-warning { --color: var(--warning); }
.color-success { --color: var(--success); }
.color-info { --color: var(--info); }
.color-dark { --color: var(--dark); }
.color-light { --color: var(--light); }
.color-gray { --color: var(--gray); }
.color-border { --color: var(--border); }
.color-bright-green { --color: var(--bright-green); }
/* Property-specific overrides if needed */
.bg-only { background-color: var(--color); color: inherit; border-color: inherit; }
.text-only { background-color: inherit; color: var(--color); border-color: inherit; }
.border-only { background-color: inherit; color: inherit; border-color: var(--color); }

/* Card shadows and styles */
.shadow-sm {
  box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;
}

.card {
  border-radius: 12px;
  border: none;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.card:hover {
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.1) !important;
}

/* Custom styles for login page */
.btn-success {
  background-color: var(--primary);
  border-color: var(--primary);
}

.btn-success:hover {
  background-color: var(--primary-dark);
  border-color: var(--primary-dark);
}

.text-success {
  color: var(--primary) !important;
}
.position-relative {
  position: relative;
}

.input-icon {
  position: absolute;
  left: 1rem;
  top: 50%;
  transform: translateY(-50%);
}
.rtl .input-icon{
  left: unset;
  right: 1rem;

}
.icon-lock{
  cursor: pointer; 
  position: absolute; 
  right: 1rem; 
  top: 50%; 
  transform: translateY(-50%);
}
.rtl .icon-lock{
  right: unset;
  left: 1rem;

}
.rtl .ps-5{
  padding-left: unset;
  padding-right: 3rem !important;
}
.btn-primary-dark {
  background-color: var(--primary-dark);
  border-color: var(--primary-dark);
  color: white;
}

.btn-primary-dark:hover {
  background-color: var(--primary);
  border-color: var(--primary);
  color: white;
}

/* Badge styling */
.badge {
  padding: 0.5em 0.75em;
  font-weight: 500;
  border-radius: 30px;
}

/* Tables styling */
.table > :not(caption) > * > * {
  padding: 0.75rem 1rem;
}

/* Font weights */
.fw-medium {
  font-weight: 500 !important;
}

/* Dashboard general spacing */
.main-content {
  background-color: #f8f9fa !important;
}

.container-fluid {
  padding: 1.5rem 2rem;
}

/* Extra large padding utility */
@media screen and (min-width: 1200px) {
  .p-xxl {
    padding: 7rem !important;
  }
  
}

.btn-sm{
  max-height: 40px !important;
}
table.dataTable {
    border: 1px solid rgba(0, 0, 0, 0.3) !important;
}