:root {
  --side-padding: 100px;
  --green-color: #0caf60;
  --primary-color: #0caf60;
  --color-surface: #ffffff;
  --color-surface-secondary: #f5f7fb;
  --color-black: #000000;
  --color-light-gray: #f1f2f4;
  --primary-color-light: #e7f7ef;
  --color-gold: #e6bb20;
  --color-gray: #374151;
  --color-red: #ee2f2f;
  --color-yellow: #ffd023;
  --color-light-gray-alt: #a0aec0;
  --color-dark-green: #11af60;
  --color-dark-red: #e03137;
  --color-white: #ffffff;
  --bg-light: #f8f8f8;
  --bg-dark: #252525;
  --bg-rotas: #f5fbf5;
  --bg-muted: #f3f3f3;
  --inline-more-icon-bg: #2f78ee;
  --inline-download-icon-bg: #2f50ee;

  --rotas-neutral-bg: rgba(51, 126, 137, 0.05);
  --rotas-danger-bg: rgba(224, 49, 55, 0.05);
  --rotas-success-bg: rgba(12, 175, 96, 0.05);
  --rotas-warning-bg: rgba(255, 174, 0, 0.05);

  --dashboard-warning-bg: #d4edda;
  --dashboard-warning-text: #155724;

  --compliance-danger-bg: #ffedec;

  --color-muted-gray: #e9eaec;
  --color-muted-blue: #687588;
  --info-color: #3498db;

  --color-gray-soft: #525252;
  --border-color-gray: #a0aec0;
  --color-gray-light: #323b49;

  --green-color-fade: #4caf50;
  --color-whitegreen: #ceefdf;
  --color-trans: #bcbcbc;
  --color-light-blue: #68a3fb;
  --color-muted-gold: #bc9b5c;
  --border-light: #685d5d38;

  --color-blue: #007bff;
  --color-orange: #ff6600;
  --back-color: #8080801a;
  --green-col-new: #27a376;

  --shadow-light: rgba(0, 0, 0, 0.05);

  --shadow-auth: rgba(100, 100, 111, 0.2);

  --shadow-header-inset-1: rgba(50, 50, 93, 0.25);
  --shadow-header-inset-2: rgba(0, 0, 0, 0.3);

  --color-error-text: red;

  --color-border-gray-light: #e6e6e6;
  --color-background-hover-light: #f3f4f6;
  --color-text-muted-gray: #6b7280;
  --color-border-gray-accordion: #00000020;
  --color-toast-success: #28a745;
  --color-toast-error: #dc3545;
  --color-toast-warning: #ffc107;

  --shadow-card-hover: #00000026;
  --shadow-item: #0000001a;
  --color-border-gray-medium: #ccc;

  --color-border-gray-dotted-light: #d1d5db;

  --color-bright-green: #2fed36;
  --color-teal-green: #68c9b2;

  --color-purple-chart: #8c62ff;
  --color-turquoise-chart: #2dd4bf;
  --color-orange-chart: #fe964a;
  --color-orchid-chart: #ba55d3;
  --color-steel-blue-chart: #468499;
  --color-lime-green-chart: #7cfc00;

  --color-purple-light: #4723d9;
  --color-off-white: #111827;
  --color-off-white-disabled: #a0aec0;

  /* Dark Theme Variables */
  --dark-bg: #121212;
  --dark-surface: #1e1e1e;

  --modal-overlay-bg: rgba(0, 0, 0, 0.5);
}

body {
  padding-bottom: env(safe-area-inset-bottom) !important;
  color: var(--color-off-white);
  background-color: var(--color-body-bg);
}

.disabled {
  cursor: not-allowed;
  color: var(--color-muted-gray);
}

.divider {
  height: 1px;
  background: var(--color-off-white);
}

hr {
  background-color: unset;
  border-top: 1px solid var(--color-border-gray-light);
}

*,
::before,
::after {
  box-sizing: border-box;
}

a {
  text-decoration: none;
  color: var(--primary-color);
}

a:hover {
  color: var(--primary-color-light);
}

.accordion-button {
  border: 1px solid var(--color-border-gray-accordion) !important;
  color: var(--color-off-white) !important;
  box-shadow: unset !important;
  background-color: transparent !important;
}

.accordion-button svg path {
  fill: var(--color-off-white) !important;
  display: flex;
  gap: 5px;
  align-items: center;
}

.accordion-button::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23111827'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e") !important;
}

input[type='checkbox'] {
  width: 16px;
  height: 16px;
  cursor: pointer;
  accent-color: var(--primary-color);
}

.notification-title {
  font-size: 16px;
  font-weight: 600;
  color: var(--color-off-white);
}

.notification-description {
  font-weight: 400;
  color: var(--color-muted-blue);
  font-size: 13px;
}

@media (max-width: 576px) {
  input[type='checkbox'] {
    width: 12px;
    height: 12px;
  }

  .notification-title {
    font-size: 12px;
  }

  .notification-description {
    font-size: 9px;
  }
}

.ellipsis-2 {
  display: -webkit-box;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}

.greeting-title {
  color: var(--color-off-white);
}

/* Styles for active and hovered sidebar links */
.dVNyKX .sidebar-container a:not(.disabled).active,
.dVNyKX .sidebar-container a:not(.disabled):hover {
  color: var(--color-white);
}

#sidebar-menu {
  z-index: 60001;
  background-color: var(--color-light-gray-alt);
}

.Toastify__toast--success .notification-title {
  color: var(--color-toast-success);
  font-weight: bold;
}

.Toastify__toast--error .notification-title {
  color: var(--color-toast-error);
  font-weight: bold;
}

.Toastify__toast--info .notification-title {
  color: var(--info-color);
  font-weight: bold;
}

.Toastify__toast--warning .notification-title {
  color: var(--color-toast-warning);
  font-weight: bold;
}

/* Dark theme styles */

/* Table styles */
.data-table-container {
  color: var(--color-off-white);
}

.data-table-container th {
  background-color: var(--color-surface-secondary);
  color: var(--color-off-white);
}

.data-table-container td {
  background-color: var(--color-surface-secondary);
  color: var(--color-off-white);
}
