@charset "UTF-8";
/**
 * DeliveryU — Project Overrides (barrel)
 * =============================================================================
 * Import order is the cascade contract; do not reorder without a visual QA pass.
 *
 * | Partial                    | Role |
 * | -------------------------- | ------------------------------------ |
 * | overrides/mixins           | Sass helpers (focus ring, tints, a11y clips) |
 * | overrides/global-resets  | Global box / link reset on controls |
 * | overrides/accessibility  | Skip link, focus, reduced motion |
 * | overrides/layout-navigation | Navbar, sidebar, impersonation, footer |
 * | overrides/buttons-links  | Primary CTA, links, table links |
 * | overrides/badges         | Badge contrast variants |
 * | overrides/forms-modals-cards | Inputs, modals, cards / datatable chrome |
 * | overrides/tables-datatables | Table base + datatable responsive partial |
 * | overrides/perfect-scrollbar | PS theme variables |
 * | overrides/vendor         | Debugbar, Select2, notifications, avatar, muted |
 * | overrides/light-theme-shell | Non-dark layout polish (higher specificity) |
 * | overrides/utilities-misc | p-45, remote modal SR text |
 * | overrides/page-imports   | @import of pages/* partials |
 * | overrides/page-overrides | Cross-page BEM (roles matrix, ratings, list header) |
 * | overrides/remix-icon-aliases | Remix v2.5 glyph aliases |
 * =============================================================================
 */
* {
  text-decoration: none !important;
}

.btn:not(:focus):not(:active) {
  box-shadow: none;
}

.skip-link {
  position: absolute !important;
  top: -9999px !important;
  left: 50%;
  transform: translateX(-50%);
  background: #000;
  color: #fff;
  padding: var(--du-space-3) var(--du-space-5);
  z-index: 99999;
  border-radius: 0 0 var(--du-radius-md) var(--du-radius-md);
  font-weight: var(--du-weight-semibold, 600);
  font-size: 1rem;
  line-height: 1.5;
  white-space: nowrap;
  box-shadow: var(--du-shadow-md);
  transition: top var(--du-transition-fast);
}
.skip-link:focus, .skip-link:focus-visible {
  top: 0 !important;
  outline: 3px solid #fff;
  outline-offset: 2px;
  color: #fff;
  text-decoration: underline;
}
.skip-link:focus:not(:focus-visible) {
  outline: 3px solid var(--du-primary);
}

.skip-link.visually-hidden-focusable {
  position: absolute !important;
  top: -9999px !important;
  width: auto !important;
  height: auto !important;
  padding: var(--du-space-3) var(--du-space-5) !important;
  margin: 0 !important;
  overflow: visible !important;
  clip: auto !important;
  white-space: nowrap !important;
}
.skip-link.visually-hidden-focusable:focus, .skip-link.visually-hidden-focusable:focus-visible {
  position: absolute !important;
  top: 0 !important;
  width: auto !important;
  height: auto !important;
}

#main-content {
  scroll-margin-top: 20px;
  position: relative;
}
#main-content:focus, #main-content:target {
  outline: 2px solid var(--du-info);
  outline-offset: 2px;
}

*:focus-visible {
  outline: 2px solid var(--du-primary);
  outline-offset: 2px;
}

*:focus:not(:focus-visible) {
  outline: none;
}

button,
a,
input,
select,
textarea,
[tabindex]:not([tabindex="-1"]) {
  cursor: pointer;
}

button:disabled,
a[aria-disabled=true] {
  cursor: not-allowed;
  opacity: 0.6;
}

@media (prefers-contrast: high) {
  *:focus-visible {
    outline-width: 3px;
    outline-color: #000;
  }
}
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}
.visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.visually-hidden-focusable:focus,
.visually-hidden-focusable:focus-visible,
.visually-hidden-focusable:active {
  position: relative !important;
  width: auto !important;
  height: auto !important;
  padding: var(--du-space-2) var(--du-space-4) !important;
  margin: 0 !important;
  overflow: visible !important;
  clip: auto !important;
  white-space: normal !important;
}

.content-wrapper .navbar {
  z-index: auto;
}

nav#layout-navbar.layout-navbar {
  background-color: transparent !important;
  border-bottom: none !important;
  box-shadow: none !important;
  overflow: visible !important;
}
nav#layout-navbar.layout-navbar > .container-fluid, nav#layout-navbar.layout-navbar > .container,
nav#layout-navbar.layout-navbar .navbar-nav-right,
nav#layout-navbar.layout-navbar .navbar-nav {
  overflow: visible !important;
}
nav#layout-navbar.layout-navbar {
  /* Keep dropdowns visible above page content */
}
nav#layout-navbar.layout-navbar .nav-item.dropdown {
  position: relative;
}
nav#layout-navbar.layout-navbar a,
nav#layout-navbar.layout-navbar button.nav-link {
  color: var(--du-text-primary);
  font-weight: 500;
}
nav#layout-navbar.layout-navbar a:hover, nav#layout-navbar.layout-navbar a:focus,
nav#layout-navbar.layout-navbar button.nav-link:hover,
nav#layout-navbar.layout-navbar button.nav-link:focus {
  color: var(--du-text-heading);
}

.layout-wrapper.layout-content-navbar.has-impersonation-banner {
  --du-impersonation-banner-height: 3.5rem;
  --du-impersonation-layout-page-padding-start: calc(var(--du-impersonation-banner-height) + 3.875rem);
}

html.layout-navbar-fixed body .layout-wrapper.layout-content-navbar.has-impersonation-banner .impersonation-banner {
  position: fixed;
  inset-block-start: 0;
  inset-inline-end: 0;
  width: auto !important;
  max-inline-size: none !important;
  box-sizing: border-box;
  z-index: 1090;
  margin: 0;
  min-block-size: var(--du-impersonation-banner-height);
  display: flex;
  align-items: center;
  overflow: visible;
  border-radius: 0;
  inset-inline-start: 0;
  padding-block: var(--du-space-2, 0.5rem);
  padding-inline: var(--du-space-4, 1rem);
  color: var(--du-text-primary);
  font-size: 0.8125rem;
  line-height: 1.45;
  background-color: var(--du-bg-surface);
  background-image: linear-gradient(180deg, rgba(var(--du-primary-rgb), 0.12) 0%, rgba(var(--du-primary-rgb), 0.04) 45%, transparent 100%);
}
html.layout-navbar-fixed body .layout-wrapper.layout-content-navbar.has-impersonation-banner .impersonation-banner .impersonation-banner__inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: var(--du-space-3, 0.75rem);
  inline-size: 100%;
  min-inline-size: 0;
}
html.layout-navbar-fixed body .layout-wrapper.layout-content-navbar.has-impersonation-banner .impersonation-banner .impersonation-banner__text {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  min-inline-size: 0;
  margin: 0;
  font-weight: 600;
  color: var(--du-text-heading);
}
html.layout-navbar-fixed body .layout-wrapper.layout-content-navbar.has-impersonation-banner .impersonation-banner .impersonation-banner__form {
  flex-shrink: 0;
}
html.layout-navbar-fixed body .layout-wrapper.layout-content-navbar.has-impersonation-banner .impersonation-banner .impersonation-banner__btn {
  position: relative;
  z-index: 2;
  white-space: nowrap;
  padding-block: 0.35rem;
  padding-inline: 0.9rem;
  border-radius: var(--du-radius-sm, 0.375rem);
  font-weight: 600;
  box-shadow: var(--du-shadow-xs, 0 1px 2px rgba(0, 0, 0, 0.06));
}

@media (min-width: 1200px) {
  html.layout-navbar-fixed:not(.layout-menu-collapsed) body .layout-wrapper.layout-content-navbar.has-impersonation-banner .impersonation-banner,
  html.layout-menu-fixed.layout-navbar-fixed:not(.layout-menu-collapsed) body .layout-wrapper.layout-content-navbar.has-impersonation-banner .impersonation-banner,
  html.layout-menu-fixed-offcanvas.layout-navbar-fixed:not(.layout-menu-collapsed) body .layout-wrapper.layout-content-navbar.has-impersonation-banner .impersonation-banner {
    inset-inline-start: var(--bs-menu-width);
  }
  html.layout-navbar-fixed.layout-menu-collapsed:not(.layout-menu-offcanvas, .layout-menu-fixed-offcanvas) body .layout-wrapper.layout-content-navbar.has-impersonation-banner .impersonation-banner,
  html.layout-menu-fixed.layout-navbar-fixed.layout-menu-collapsed body .layout-wrapper.layout-content-navbar.has-impersonation-banner .impersonation-banner,
  html.layout-menu-fixed-offcanvas.layout-navbar-fixed.layout-menu-collapsed body .layout-wrapper.layout-content-navbar.has-impersonation-banner .impersonation-banner {
    inset-inline-start: var(--bs-menu-collapsed-width);
  }
}
html.layout-navbar-fixed body .layout-wrapper.layout-content-navbar.has-impersonation-banner #layout-navbar.layout-navbar {
  inset-block-start: var(--du-impersonation-banner-height) !important;
}

html.layout-navbar-fixed body .layout-wrapper.layout-content-navbar.has-impersonation-banner .layout-page {
  padding-block-start: var(--du-impersonation-layout-page-padding-start) !important;
}

html.layout-navbar-fixed body .layout-wrapper.has-impersonation-banner:not(.layout-horizontal) .layout-page::before {
  inset-block-start: var(--du-impersonation-banner-height);
}

.modal-backdrop {
  z-index: 2040 !important;
}

.modal {
  z-index: 2050 !important;
}

.layout-navbar-fixed body:not(.modal-open) .layout-content-navbar .layout-menu,
.layout-menu-fixed body:not(.modal-open) .layout-content-navbar .layout-menu,
.layout-menu-fixed-offcanvas body:not(.modal-open) .layout-content-navbar .layout-menu {
  z-index: 1100;
}

aside#layout-menu.layout-menu {
  background-color: var(--du-sidebar-surface, #ffffff);
  box-shadow: none !important;
  border-inline-start: none;
  border-inline-end: 1px solid var(--du-sidebar-border, var(--du-border-color));
  display: flex !important;
  flex-direction: column !important;
  height: 100vh !important;
  overflow: visible !important;
}
aside#layout-menu.layout-menu > .menu {
  background-color: var(--du-sidebar-inner-bg, #ffffff) !important;
  box-shadow: none !important;
}
aside#layout-menu.layout-menu {
  /* Mobile drawer: stable viewport height + room above home indicator */
}
@media (max-width: 1199.98px) {
  aside#layout-menu.layout-menu {
    height: 100dvh !important;
    max-height: 100dvh !important;
    padding-bottom: env(safe-area-inset-bottom, 0px);
  }
}
aside#layout-menu.layout-menu .menu-link {
  color: var(--du-sidebar-nav-text);
  transition: color var(--du-transition-fast), background-color var(--du-transition-fast);
}
aside#layout-menu.layout-menu .menu-link .menu-icon {
  color: inherit;
}
aside#layout-menu.layout-menu .menu-item:not(.active) > .menu-link {
  font-weight: 400;
  display: flex;
  align-items: center;
}
aside#layout-menu.layout-menu .menu-item:not(.active) > .menu-link:hover, aside#layout-menu.layout-menu .menu-item:not(.active) > .menu-link:focus {
  color: var(--du-sidebar-nav-active-text);
  background-color: var(--du-sidebar-nav-hover-bg);
}
aside#layout-menu.layout-menu .menu-item:not(.active) > .menu-link .menu-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.25rem;
  min-width: 1.25rem;
  font-size: 0.9rem;
  margin-inline-end: 0.75rem;
}
aside#layout-menu.layout-menu .menu-item.active > .menu-link {
  background-color: var(--du-sidebar-nav-hover-bg) !important;
  color: var(--du-sidebar-nav-active-text) !important;
}
aside#layout-menu.layout-menu .menu-item.active > .menu-link .menu-icon {
  color: inherit;
}
aside#layout-menu.layout-menu .menu-sub .menu-item.active > .menu-link {
  background-color: var(--du-sidebar-nav-hover-bg) !important;
  color: var(--du-sidebar-nav-active-text) !important;
}
aside#layout-menu.layout-menu .app-brand {
  flex-shrink: 0 !important;
}
aside#layout-menu.layout-menu .menu-inner-shadow {
  flex-shrink: 0 !important;
  display: none !important;
  box-shadow: none !important;
  background: none !important;
}

.sidebar-user-footer {
  --sidebar-user-text-size: var(--bs-body-font-size, 0.9rem);
  flex-shrink: 0;
  position: relative;
  overflow: visible;
  z-index: 25;
  border-top: 1px solid var(--du-sidebar-border, var(--du-border-color));
  padding: 0.25rem 0.5rem max(0.5rem, env(safe-area-inset-bottom, 0px));
  background: var(--du-sidebar-surface, #ffffff);
}
.sidebar-user-footer .sidebar-user-footer__trigger {
  color: var(--du-sidebar-nav-text);
  border-radius: var(--du-radius-sm, 0.375rem);
  transition: background-color var(--du-transition-fast), color var(--du-transition-fast);
}
.sidebar-user-footer .sidebar-user-footer__trigger:hover, .sidebar-user-footer .sidebar-user-footer__trigger:focus-visible {
  background-color: var(--du-sidebar-nav-hover-bg);
  color: var(--du-sidebar-nav-active-text);
}
.sidebar-user-footer .sidebar-user-footer__avatar-wrap {
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
}
.sidebar-user-footer .sidebar-user-footer__text {
  min-width: 0;
}
.sidebar-user-footer .sidebar-user-footer__name {
  font-size: var(--sidebar-user-text-size);
  line-height: 1.375;
}
.sidebar-user-footer .sidebar-user-footer__email {
  display: block;
  font-size: calc(var(--sidebar-user-text-size) * 0.8889);
  line-height: 1.35;
  font-weight: 400;
  color: var(--du-text-secondary, #6c757d);
  margin-top: 0.1rem;
}
.sidebar-user-footer .sidebar-user-footer__chevron {
  font-size: var(--sidebar-user-text-size);
  transition: transform 0.2s ease;
  margin-top: 0.35rem;
}
.sidebar-user-footer .sidebar-user-footer__trigger[aria-expanded=true] .sidebar-user-footer__chevron {
  transform: rotate(180deg);
}
.sidebar-user-footer .sidebar-user-dropdown {
  position: absolute !important;
  inset-inline: 0.35rem;
  bottom: 100%;
  top: auto !important;
  margin-bottom: 0.35rem;
  z-index: 1070;
  max-height: min(70vh, 22rem);
  overflow: visible;
  transform: none !important;
  background-color: #fff !important;
  border: 1px solid var(--du-border-color) !important;
  border-radius: var(--du-radius-sm, 0.5rem) !important;
  box-shadow: 0 0.35rem 1rem rgba(0, 0, 0, 0.08) !important;
  padding-block: 0.25rem;
}
.sidebar-user-footer .sidebar-user-dropdown.dropdown-menu.show {
  display: block !important;
}
.sidebar-user-footer .user-dropdown-menu .ud-has-submenu {
  position: relative;
  overflow: visible;
}
.sidebar-user-footer .user-dropdown-menu .dropdown-item.ud-menu-row {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.45rem 1rem;
  font-size: var(--sidebar-user-text-size);
  font-weight: 500;
  color: var(--du-sidebar-nav-text);
}
.sidebar-user-footer .user-dropdown-menu .dropdown-item.ud-menu-row:hover, .sidebar-user-footer .user-dropdown-menu .dropdown-item.ud-menu-row:focus {
  background-color: var(--du-sidebar-nav-hover-bg);
  color: var(--du-sidebar-nav-active-text);
}
.sidebar-user-footer .user-dropdown-menu button.ud-logout-btn {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  width: 100%;
  padding: 0.45rem 1rem;
  border: 0;
  background: transparent;
  text-align: start;
  color: var(--bs-danger, #dc3545);
  font-size: var(--sidebar-user-text-size);
  font-weight: 500;
  cursor: pointer;
  border-radius: 0;
}
.sidebar-user-footer .user-dropdown-menu button.ud-logout-btn .ud-icon {
  color: var(--bs-danger, #dc3545);
}
.sidebar-user-footer .user-dropdown-menu button.ud-logout-btn .ud-logout-icon {
  flex-shrink: 0;
  width: 1.25rem;
  height: 1.25rem;
}
.sidebar-user-footer .user-dropdown-menu button.ud-logout-btn:hover, .sidebar-user-footer .user-dropdown-menu button.ud-logout-btn:focus-visible {
  background-color: rgba(220, 53, 69, 0.1);
  color: var(--bs-danger, #dc3545);
}
.sidebar-user-footer .user-dropdown-menu button.ud-logout-btn:hover .ud-icon, .sidebar-user-footer .user-dropdown-menu button.ud-logout-btn:focus-visible .ud-icon {
  color: var(--bs-danger, #dc3545);
}
.sidebar-user-footer .user-dropdown-menu .ud-item.ud-parent {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  width: 100%;
  padding: 0.45rem 1rem;
  border: 0;
  background: transparent;
  text-align: start;
  color: var(--du-sidebar-nav-text);
  font-size: var(--sidebar-user-text-size);
  font-weight: 500;
  cursor: pointer;
  border-radius: 0;
}
.sidebar-user-footer .user-dropdown-menu .ud-item.ud-parent:hover, .sidebar-user-footer .user-dropdown-menu .ud-item.ud-parent:focus-visible {
  background-color: var(--du-sidebar-nav-hover-bg);
  color: var(--du-sidebar-nav-active-text);
}
.sidebar-user-footer .user-dropdown-menu .ud-label {
  flex: 1 1 auto;
  min-width: 0;
}
.sidebar-user-footer .user-dropdown-menu .ud-icon {
  flex-shrink: 0;
  width: 1.25rem;
  text-align: center;
  color: inherit;
}
.sidebar-user-footer .user-dropdown-menu .ud-icon.text-primary {
  color: inherit !important;
}
.sidebar-user-footer .user-dropdown-menu .ud-chevron {
  flex-shrink: 0;
  font-size: 0.75rem;
  opacity: 0.65;
}
.sidebar-user-footer [dir=rtl] .user-dropdown-menu .ud-chevron {
  transform: scaleX(-1);
}
.sidebar-user-footer .sidebar-user-dropdown.user-dropdown-menu .ud-submenu {
  display: none;
  position: absolute;
  inset-inline-start: calc(100% + 0.2rem);
  inset-inline-end: auto;
  top: 0;
  bottom: auto;
  width: -moz-max-content;
  width: max-content;
  min-width: 10.5rem;
  max-width: min(90vw, 16rem);
  margin: 0;
  padding: 0.35rem 0;
  list-style: none;
  background-color: #fff !important;
  border: 1px solid var(--du-border-color) !important;
  border-radius: var(--du-radius-sm, 0.5rem) !important;
  box-shadow: 0 0.35rem 1rem rgba(0, 0, 0, 0.1) !important;
  z-index: 1085;
}
.sidebar-user-footer .sidebar-user-dropdown.user-dropdown-menu .ud-has-submenu.is-open > .ud-submenu {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}
.sidebar-user-footer .user-dropdown-menu a.ud-subitem {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.45rem 1rem;
  color: var(--du-sidebar-nav-text);
  font-size: var(--sidebar-user-text-size);
  text-decoration: none;
  white-space: nowrap;
}
.sidebar-user-footer .user-dropdown-menu a.ud-subitem .ud-icon {
  color: inherit;
}
.sidebar-user-footer .user-dropdown-menu a.ud-subitem:hover, .sidebar-user-footer .user-dropdown-menu a.ud-subitem:focus {
  background-color: var(--du-sidebar-nav-hover-bg);
  color: var(--du-sidebar-nav-active-text);
}
.sidebar-user-footer #sidebar-language-submenu li.is-active > a.ud-subitem,
.sidebar-user-footer .user-dropdown-menu .ud-theme-item.is-active > a.ud-subitem {
  font-weight: 600;
  background-color: var(--du-sidebar-nav-hover-bg);
  color: var(--du-sidebar-nav-active-text);
}
.sidebar-user-footer #sidebar-language-submenu li.is-active > a.ud-subitem .ud-icon,
.sidebar-user-footer .user-dropdown-menu .ud-theme-item.is-active > a.ud-subitem .ud-icon {
  color: inherit;
}

.user-dropdown-menu:not(.sidebar-user-dropdown) .ud-has-submenu {
  position: relative;
  overflow: visible;
}

.user-dropdown-menu:not(.sidebar-user-dropdown) .ud-submenu {
  display: none;
  position: static;
  width: 100%;
  min-width: 0;
  margin: 0.35rem 0 0;
  padding: 0.35rem 0 0.35rem 0.65rem;
  margin-inline: 0;
  list-style: none;
  background-color: rgba(var(--bs-base-color-rgb, 67, 89, 113), 0.06) !important;
  border: 0;
  border-radius: var(--du-radius-sm, 0.375rem);
  box-shadow: none;
}

[dir=rtl] .user-dropdown-menu:not(.sidebar-user-dropdown) .ud-submenu {
  padding-inline-start: 0.65rem;
  padding-inline-end: 0;
}

.user-dropdown-menu:not(.sidebar-user-dropdown) .ud-has-submenu.is-open > .ud-submenu {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

#layout-menu.menu-vertical .app-brand .layout-menu-toggle i {
  transition: transform 0.3s ease;
}

html.layout-menu-collapsed:not(.layout-menu-hover):not(.layout-menu-offcanvas):not(.layout-menu-fixed-offcanvas) #layout-menu.menu-vertical .app-brand {
  justify-content: center !important;
}
html.layout-menu-collapsed:not(.layout-menu-hover):not(.layout-menu-offcanvas):not(.layout-menu-fixed-offcanvas) #layout-menu.menu-vertical .app-brand .layout-menu-toggle {
  margin-inline-start: 0 !important;
  margin-inline-end: 0 !important;
}

html:not([dir=rtl]).layout-menu-collapsed:not(.layout-menu-hover):not(.layout-menu-offcanvas):not(.layout-menu-fixed-offcanvas) #layout-menu.menu-vertical .app-brand .layout-menu-toggle i {
  transform: rotate(180deg);
}

html[dir=rtl].layout-menu-collapsed:not(.layout-menu-hover):not(.layout-menu-offcanvas):not(.layout-menu-fixed-offcanvas) #layout-menu.menu-vertical .app-brand .layout-menu-toggle i {
  transform: scaleX(-1) rotate(180deg);
}

html.layout-menu-collapsed:not(.layout-menu-offcanvas):not(.layout-menu-fixed-offcanvas) .sidebar-user-footer__text,
html.layout-menu-collapsed:not(.layout-menu-offcanvas):not(.layout-menu-fixed-offcanvas) .sidebar-user-footer__name,
html.layout-menu-collapsed:not(.layout-menu-offcanvas):not(.layout-menu-fixed-offcanvas) .sidebar-user-footer__email,
html.layout-menu-collapsed:not(.layout-menu-offcanvas):not(.layout-menu-fixed-offcanvas) .sidebar-user-footer__chevron {
  display: none !important;
}
html.layout-menu-collapsed:not(.layout-menu-offcanvas):not(.layout-menu-fixed-offcanvas) .sidebar-user-footer__trigger {
  justify-content: center;
  align-items: center;
  gap: 0 !important;
  padding-inline: 0.25rem;
}

.tooltip.sidebar-collapsed-tooltip {
  z-index: 1095;
  --bs-tooltip-max-width: 16rem;
}
.tooltip.sidebar-collapsed-tooltip .tooltip-inner {
  text-align: start;
  font-size: 0.8125rem;
  font-weight: 500;
}

#layout-menu.menu-vertical .menu-inner > .menu-item.active::before {
  content: none !important;
  display: none !important;
}

#layout-menu.menu-vertical .menu-item.active:not(.open) > .menu-link:not(.menu-toggle)::before {
  content: none !important;
  display: none !important;
  background: none !important;
  box-shadow: none !important;
}

#layout-menu.menu-vertical .menu-sub > .menu-item.active > .menu-link:not(.menu-toggle)::before {
  content: none !important;
  display: none !important;
  box-shadow: none !important;
}

.menu-inner > *:not(li):not(script):not(template):not(.ps__rail-y):not(.ps__rail-x) {
  display: none !important;
}

footer small:not(.text-muted),
.footer small:not(.text-muted) {
  color: var(--du-text-secondary) !important;
  font-size: 0.875rem;
  font-weight: 500;
}
footer a,
.footer a {
  color: var(--du-info);
}
footer a:hover, footer a:focus,
.footer a:hover,
.footer a:focus {
  color: var(--du-info-hover);
}

body#app {
  color: var(--du-text-primary);
  background-color: var(--du-bg-body);
}

.language-switcher-dropdown.dropdown .dropdown-menu {
  min-width: 10rem;
}

.language-switcher-dropdown.dropdown .dropdown-menu.show {
  right: 0;
  left: auto;
}

[dir=rtl] .language-switcher-dropdown.dropdown .dropdown-menu.show {
  left: 0;
  right: auto;
}

.btn-primary,
a.btn.btn-sm.btn-primary {
  background-color: var(--du-primary);
  border-color: var(--du-primary);
  color: var(--du-primary-contrast);
  font-weight: 600;
  transition: background-color var(--du-transition-fast), box-shadow var(--du-transition-fast);
}
.btn-primary:hover, .btn-primary:focus,
a.btn.btn-sm.btn-primary:hover,
a.btn.btn-sm.btn-primary:focus {
  background-color: var(--du-primary-hover);
  border-color: var(--du-primary-hover);
  color: var(--du-primary-contrast);
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.12);
}
.btn-primary:active,
a.btn.btn-sm.btn-primary:active {
  background-color: var(--du-primary-active);
  border-color: var(--du-primary-active);
}

.btn-outline-secondary {
  color: var(--du-text-primary);
  border-color: var(--du-border-color);
  font-weight: 600;
}
.btn-outline-secondary:hover, .btn-outline-secondary:focus {
  color: var(--du-text-primary);
  background-color: var(--du-bg-surface-alt);
  border-color: var(--du-border-color);
}

.btn:focus-visible {
  box-shadow: 0 0 0 0.2rem rgba(var(--du-info-rgb, 20, 40, 160), 0.35);
}

a {
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
  transition: color var(--du-transition-fast);
}
a:focus {
  outline: 2px solid var(--du-info);
  outline-offset: 2px;
  text-decoration-thickness: 2px;
}

td a.text-decoration-none,
tbody a.text-decoration-none {
  color: var(--du-info);
}
td a.text-decoration-none:hover, td a.text-decoration-none:focus,
tbody a.text-decoration-none:hover,
tbody a.text-decoration-none:focus {
  color: var(--du-info-hover);
}

.badge {
  font-weight: 600;
  min-height: 1.5em;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 1.5em;
  padding: 0.35em 0.65em;
}

.badge.bg-primary {
  color: #fff !important;
  background-color: var(--du-primary) !important;
  border: 1px solid var(--du-primary);
}

.badge.bg-success {
  color: #fff !important;
  background-color: var(--du-success) !important;
  border: 1px solid var(--du-success);
}

.badge.bg-info {
  color: #fff !important;
  background-color: var(--du-info) !important;
  border: 1px solid var(--du-info);
  font-weight: 700;
}

.badge.bg-danger {
  color: #fff !important;
  background-color: var(--du-danger) !important;
  border: 1px solid var(--du-danger);
}

.badge.bg-warning {
  color: #000 !important;
  background-color: var(--du-warning) !important;
  border: 1px solid var(--du-warning);
}

.badge.text-primary.bg-primary-subtle {
  color: #1428a0 !important;
  background-color: #e8eaf6 !important;
  font-weight: 600;
  border: 1px solid #c5cae9;
}

.badge.text-success.bg-success-subtle {
  color: #166534 !important;
  background-color: #dcfce7 !important;
  font-weight: 600;
  border: 1px solid #86efac;
}

.badge.text-info.bg-info-subtle {
  color: #0f1f78 !important;
  background-color: #e8eaf6 !important;
  font-weight: 600;
  border: 1px solid #9fa8da;
}

.badge.text-warning.bg-warning-subtle {
  color: #92400e !important;
  background-color: #fef3c7 !important;
  font-weight: 600;
  border: 1px solid #fcd34d;
}

.badge.text-danger.bg-danger-subtle {
  color: #991b1b !important;
  background-color: #fee2e2 !important;
  font-weight: 600;
  border: 1px solid #fca5a5;
}

.badge.bg-light {
  color: #475569 !important;
  background-color: #f8fafc !important;
  font-weight: 600;
  border: 1px solid #e2e8f0;
}

#requestCount.badge.bg-primary {
  background-color: var(--du-primary) !important;
  color: #fff !important;
  font-weight: 700;
  border: 1px solid var(--du-primary);
}

:root {
  --du-input-default-block-size: calc((0.8125rem * 1.375) + 0.7rem + (var(--bs-border-width, 1px) * 2));
}

.form-control.is-invalid:focus {
  border-color: var(--du-danger);
  box-shadow: 0 0 0 0.2rem rgba(var(--bs-danger-rgb), 0.25);
}
.form-control:focus {
  border-color: var(--du-info);
  color: var(--bs-heading-color);
  -webkit-text-fill-color: var(--bs-heading-color);
  caret-color: var(--bs-heading-color);
}
.form-control:-webkit-autofill, .form-control:-webkit-autofill:hover, .form-control:-webkit-autofill:focus {
  -webkit-text-fill-color: var(--bs-heading-color) !important;
  caret-color: var(--bs-heading-color);
}

.form-select:focus {
  color: var(--bs-heading-color);
  -webkit-text-fill-color: var(--bs-heading-color);
  caret-color: var(--bs-heading-color);
}

input.form-control:not(.form-control-sm):not(.form-control-lg):not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=color]):not([type=hidden]):not([type=button]):not([type=submit]):not([type=reset]):not([type=image]) {
  min-block-size: var(--du-input-default-block-size);
}

.form-select:not(.form-select-sm):not(.form-select-lg) {
  min-block-size: var(--du-input-default-block-size);
}

.modal[aria-hidden=true] {
  display: none;
}

.modal.show {
  display: flex !important;
  align-items: center;
  justify-content: center;
  padding: 1rem;
}

.modal.fade:not(.modal-top):not(.modal-transparent) {
  opacity: 0;
  transition: opacity 0.28s cubic-bezier(0.22, 0.61, 0.36, 1);
}

.modal.fade.show:not(.modal-top):not(.modal-transparent) {
  opacity: 1;
}

.modal.fade:not(.modal-top):not(.modal-transparent) .modal-dialog {
  opacity: 0;
  transform: translateY(16px) scale(0.985);
  transform-origin: center center;
  will-change: transform, opacity;
  transition: opacity 0.28s cubic-bezier(0.22, 0.61, 0.36, 1), transform 0.28s cubic-bezier(0.22, 0.61, 0.36, 1);
}

.modal.fade.show:not(.modal-top):not(.modal-transparent) .modal-dialog {
  opacity: 1;
  transform: translateY(0) scale(1);
}

.modal-backdrop.fade {
  transition: opacity 0.28s cubic-bezier(0.22, 0.61, 0.36, 1);
}

.modal .modal-dialog,
#remoteModelData .modal-dialog {
  margin: 0 auto;
  max-height: calc(100vh - 2rem);
  width: 100%;
  max-width: 35rem;
  max-inline-size: 35rem;
}

.modal .modal-dialog.modal-fullscreen,
.modal .modal-dialog[class*=modal-fullscreen-],
#remoteModelData .modal-dialog.modal-fullscreen,
#remoteModelData .modal-dialog[class*=modal-fullscreen-] {
  max-width: 100%;
  max-inline-size: 100%;
}

#remoteModelData.modal > form:has(> .modal-dialog) {
  display: contents;
}

.modal .modal-dialog.modal-dialog-scrollable,
#remoteModelData .modal-dialog.modal-dialog-scrollable {
  display: flex;
  flex-direction: column;
  max-height: calc(100vh - 2rem);
}
.modal .modal-dialog.modal-dialog-scrollable .modal-content,
#remoteModelData .modal-dialog.modal-dialog-scrollable .modal-content {
  display: flex;
  flex-direction: column;
  max-height: 100%;
  overflow: hidden;
}
.modal .modal-dialog.modal-dialog-scrollable .modal-body,
#remoteModelData .modal-dialog.modal-dialog-scrollable .modal-body {
  overflow-y: auto;
  flex: 1 1 auto;
  min-height: 0;
  -webkit-overflow-scrolling: touch;
}

.modal .modal-header {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  padding: 1rem 1.25rem;
  padding-inline-end: 2.5rem;
  border-bottom: 1px solid var(--bs-border-color, #e9ecef);
  flex-wrap: wrap;
}
.modal .modal-header .min-w-0 {
  flex: 1;
  min-width: 0;
}
.modal .modal-header .modal-title {
  margin: 0;
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.4;
}
.modal .modal-header .btn-close {
  position: absolute;
  top: 0.75rem;
  inset-inline-end: 0.75rem;
  flex-shrink: 0;
  margin: 0;
  padding: 0.25rem;
  height: 1.3rem;
  transform: none;
  background-color: transparent !important;
  background-image: none !important;
  border: 0 !important;
  box-shadow: none !important;
  filter: none !important;
  opacity: 1;
  color: #6c757d;
}
.modal .modal-header .btn-close::before {
  background-color: #6c757d !important;
  block-size: 0.675rem;
  inline-size: 0.675rem;
}
.modal .modal-header .btn-close:hover, .modal .modal-header .btn-close:focus, .modal .modal-header .btn-close:active {
  transform: none;
  background-color: transparent !important;
  box-shadow: none !important;
  color: #000;
}
.modal .modal-header .btn-close:hover::before, .modal .modal-header .btn-close:focus::before, .modal .modal-header .btn-close:active::before {
  background-color: #000 !important;
}
.modal .modal-header button.close {
  padding: 0.25rem;
  margin: 0;
  background: transparent;
  border: 0;
  font-size: 1.5rem;
  line-height: 1;
  opacity: 0.6;
  cursor: pointer;
}
.modal .modal-header button.close:hover {
  opacity: 1;
}
.modal .modal-header button.close span[aria-hidden=true] {
  display: none;
}
.modal .modal-header button.close::after {
  content: "";
  display: inline-block;
  width: 1rem;
  height: 1rem;
  background: currentColor;
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3E%3C/svg%3E");
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: 100%;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3E%3C/svg%3E");
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center;
  -webkit-mask-size: 100%;
}

.modal .modal-footer {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.5rem;
  flex-wrap: wrap;
  padding: 1rem 1.25rem;
  border-top: 1px solid var(--bs-border-color, #e9ecef);
}
.modal .modal-footer .btn {
  margin: 0;
}

[role=alert]:not(.alert) {
  color: var(--du-danger);
  font-weight: 500;
}

.card:has(.card-datatable) {
  --bs-card-bg: transparent;
  --bs-card-cap-bg: transparent;
  --bs-card-border-width: 0;
  --bs-card-box-shadow: none;
  background-color: transparent !important;
  border: none !important;
  box-shadow: none !important;
  border-radius: 0;
}
.card:has(.card-datatable) .card-header {
  background-color: transparent !important;
  border-bottom-color: var(--du-border-color) !important;
}

.card:not(:has(.card-datatable)) {
  --bs-card-bg: var(--du-bg-surface);
  --bs-card-cap-bg: var(--du-bg-surface);
  --bs-card-border-color: var(--du-border-color);
  --bs-card-box-shadow: none;
  background-color: var(--du-bg-surface) !important;
  box-shadow: none !important;
}
.card:not(:has(.card-datatable)) .card-header,
.card:not(:has(.card-datatable)) .card-footer {
  background-color: var(--du-bg-surface) !important;
  border-color: var(--du-border-color);
}

table {
  border-collapse: collapse;
}

th {
  font-weight: 600;
  text-transform: uppercase;
}

.dt-paging-section .dt-paging .dt-paging-button {
  background: transparent !important;
}

.dt-paging-section .dt-paging .dt-paging-button:hover:not(.disabled),
.dt-paging-section .dt-paging .dt-paging-button.current,
.dt-paging-section .dt-paging .dt-paging-button.current:hover,
.dt-paging-section .dt-paging .dt-paging-button.disabled,
.dt-paging-section .dt-paging .dt-paging-button.disabled:hover {
  background: transparent !important;
}

.dt-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: nowrap;
}

.dt-toolbar__length select {
  width: 5.5rem;
  min-width: 5.5rem;
  max-width: 5.5rem;
}

.dt-toolbar__actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: nowrap;
}

.dt-toolbar__search {
  position: relative;
  display: flex;
  align-items: center;
}

.dt-toolbar__search-group {
  flex: 1 1 auto;
  min-width: 0;
  max-width: 260px;
}

.dataTables_wrapper div.dt-search input.form-control,
.dataTables_wrapper div.dataTables_filter input.form-control,
.card-datatable .dt-toolbar__search input.form-control,
.card-datatable .dt-toolbar__search-group > .form-control {
  box-sizing: border-box;
  border-width: 2px;
  border-style: solid;
  border-color: var(--bs-input-border-color);
  padding-block: calc(0.35rem - 2px);
  padding-inline: calc(0.75rem - 2px);
  text-align: start;
  min-block-size: var(--du-input-default-block-size);
}
.dataTables_wrapper div.dt-search input.form-control:focus,
.dataTables_wrapper div.dataTables_filter input.form-control:focus,
.card-datatable .dt-toolbar__search input.form-control:focus,
.card-datatable .dt-toolbar__search-group > .form-control:focus {
  border-color: var(--du-info);
  border-width: 2px;
  padding-block: calc(0.35rem - 2px);
  padding-inline: calc(0.75rem - 2px);
}

.dataTables_wrapper div.dt-search input.form-control,
.dataTables_wrapper div.dataTables_filter input.form-control {
  min-width: 180px;
  max-width: 260px;
}

.card-datatable .dt-toolbar__search-group > .form-control {
  min-width: 0;
  max-width: none;
}

html[data-bs-theme=dark] body.dark-theme .dataTables_wrapper div.dt-search input.form-control,
html[data-bs-theme=dark] body.dark-theme .dataTables_wrapper div.dataTables_filter input.form-control,
html[data-bs-theme=dark] body.dark-theme .card-datatable .dt-toolbar__search input.form-control,
html[data-bs-theme=dark] body.dark-theme .card-datatable .dt-toolbar__search-group > .form-control {
  border-color: var(--color-v3-outline-var);
}
html[data-bs-theme=dark] body.dark-theme .dataTables_wrapper div.dt-search input.form-control:focus,
html[data-bs-theme=dark] body.dark-theme .dataTables_wrapper div.dataTables_filter input.form-control:focus,
html[data-bs-theme=dark] body.dark-theme .card-datatable .dt-toolbar__search input.form-control:focus,
html[data-bs-theme=dark] body.dark-theme .card-datatable .dt-toolbar__search-group > .form-control:focus {
  border-color: var(--du-info);
}

.dt-toolbar__search-group #dt_custom_search_clear {
  flex-shrink: 0;
}

@media (max-width: 575.98px) {
  .dt-toolbar {
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
  }
  .dt-toolbar__length {
    order: 1;
  }
  .dt-toolbar__length select {
    width: 100%;
  }
  .dt-toolbar__actions {
    order: 2;
    flex-direction: column;
    gap: 10px;
  }
  .dt-toolbar__search {
    width: 100%;
  }
  .dt-toolbar__search .dt-toolbar__search-group {
    width: 100%;
    max-width: 100%;
  }
  .dt-toolbar__search input,
  .dt-toolbar__search-group .form-control {
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }
  .dt-toolbar__btn,
  .dt-toolbar__btn .btn {
    width: 100%;
  }
}
@media (min-width: 576px) and (max-width: 767.98px) {
  .dt-toolbar__search input,
  .dt-toolbar__search-group .form-control {
    min-width: 120px;
    max-width: 180px;
  }
  .dt-toolbar__search-group {
    max-width: 180px;
  }
}
.card-datatable table.dataTable {
  width: 100% !important;
}

table.dataTable.datatables-users .dt-user-name-stack {
  white-space: normal;
  min-width: 0;
}

table.dataTable.dtr-inline.collapsed td.dtr-control,
table.dataTable.dtr-inline.collapsed th.dtr-control {
  cursor: pointer;
  vertical-align: middle !important;
  min-width: 80px;
  width: 80px;
  white-space: nowrap;
  box-sizing: border-box;
}

table.dataTable.dtr-inline.collapsed > tbody > tr > td.dtr-control,
table.dataTable.dtr-inline.collapsed > tbody > tr.parent > td.dtr-control {
  display: table-cell;
  text-align: center;
  vertical-align: middle !important;
  white-space: nowrap;
}

table.dataTable.dtr-inline.collapsed > tbody > tr > td.dtr-control::before,
table.dataTable.dtr-inline.collapsed > tbody > tr.parent > td.dtr-control::before {
  vertical-align: middle;
  margin-inline-end: 8px;
}

table.dataTable.dtr-inline.collapsed > tbody > tr > td.dtr-control::before {
  content: "" !important;
  display: inline-block !important;
  width: 17px;
  height: 17px;
  flex-shrink: 0;
  box-sizing: border-box;
  border-radius: 50%;
  border: none !important;
  background-color: var(--color-v3-button-container-high, #eaeaeb) !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232b2d31' stroke-width='2.5' stroke-linecap='round'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E") !important;
  background-size: 10px 10px;
  background-repeat: no-repeat;
  background-position: center;
  box-shadow: none !important;
}

table.dataTable.dtr-inline.collapsed > tbody > tr.parent > td.dtr-control::before {
  background-color: var(--color-v3-button-container-high, #eaeaeb) !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232b2d31' stroke-width='2.5' stroke-linecap='round'%3E%3Cpath d='M5 12h14'/%3E%3C/svg%3E") !important;
}

html[data-bs-theme=dark] body.dark-theme table.dataTable.dtr-inline.collapsed > tbody > tr > td.dtr-control::before {
  background-color: var(--color-v3-button-container-high, #424242) !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.5' stroke-linecap='round'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E") !important;
}

html[data-bs-theme=dark] body.dark-theme table.dataTable.dtr-inline.collapsed > tbody > tr.parent > td.dtr-control::before {
  background-color: var(--color-v3-button-container-high, #424242) !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.5' stroke-linecap='round'%3E%3Cpath d='M5 12h14'/%3E%3C/svg%3E") !important;
}

[dir=rtl] table.dataTable.dtr-inline.collapsed > tbody > tr > td.dtr-control::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232b2d31' stroke-width='2.5' stroke-linecap='round'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E");
}

[dir=rtl] table.dataTable.dtr-inline.collapsed > tbody > tr.parent > td.dtr-control::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232b2d31' stroke-width='2.5' stroke-linecap='round'%3E%3Cpath d='M5 12h14'/%3E%3C/svg%3E");
}

html[data-bs-theme=dark] body.dark-theme[dir=rtl] table.dataTable.dtr-inline.collapsed > tbody > tr > td.dtr-control::before,
html[data-bs-theme=dark] [dir=rtl] body.dark-theme table.dataTable.dtr-inline.collapsed > tbody > tr > td.dtr-control::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.5' stroke-linecap='round'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E");
}

html[data-bs-theme=dark] body.dark-theme[dir=rtl] table.dataTable.dtr-inline.collapsed > tbody > tr.parent > td.dtr-control::before,
html[data-bs-theme=dark] [dir=rtl] body.dark-theme table.dataTable.dtr-inline.collapsed > tbody > tr.parent > td.dtr-control::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.5' stroke-linecap='round'%3E%3Cpath d='M5 12h14'/%3E%3C/svg%3E");
}

table.dataTable > tbody > tr.child {
  padding: 0;
}

table.dataTable > tbody > tr.child td {
  padding: 0 !important;
  border-top: none !important;
  background-color: #f8f9fa;
}

/* No row-hover / inset stripe on DataTables responsive child detail row */
table.table-hover > tbody > tr.child:hover > *,
table.dataTable.table-hover > tbody > tr.child:hover > * {
  box-shadow: none !important;
}

table.dataTable > tbody > tr.child:hover td,
table.dataTable > tbody > tr.child:hover > td {
  background-color: #f8f9fa !important;
  box-shadow: none !important;
}

html[data-bs-theme=dark] body.dark-theme table.dataTable > tbody > tr.child td,
html[data-bs-theme=dark] body.dark-theme table.dataTable > tbody > tr.child:hover td {
  background-color: var(--color-v3-surface-container-high) !important;
  box-shadow: none !important;
}

table.dataTable > tbody > tr.child ul.dtr-details {
  width: 100%;
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  align-items: stretch;
}

table.dataTable > tbody > tr.child ul.dtr-details > li {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 12px;
  padding: 10px 16px;
  border-bottom: 1px solid #e9ecef;
  width: 100%;
  box-sizing: border-box;
}

table.dataTable > tbody > tr.child ul.dtr-details > li.text-center,
table.dataTable > tbody > tr.child ul.dtr-details > li.text-end {
  text-align: start !important;
}

table.dataTable > tbody > tr.child ul.dtr-details > li:first-child {
  padding-top: 0.5rem;
}

table.dataTable > tbody > tr.child ul.dtr-details > li:last-child {
  border-bottom: none;
  align-items: center;
  padding-bottom: 0.5rem;
}

table.dataTable > tbody > tr.child span.dtr-title {
  font-weight: 600;
  color: #566a7f;
  min-width: 110px;
  flex-shrink: 0;
  font-size: 0.8125rem;
  text-align: end;
}

table.dataTable > tbody > tr.child span.dtr-data {
  color: #697a8d;
  flex: 1;
  font-size: 0.8125rem;
  word-break: break-word;
  min-width: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 0.25rem;
  /* Occupy remaining row width so `justify-content: flex-end` pins content to the far right (LTR). */
  margin-inline-start: auto;
  text-align: start;
}

[dir=rtl] table.dataTable > tbody > tr.child span.dtr-data {
  margin-inline-start: 0;
  margin-inline-end: auto;
  /* Inline-start is the visual right edge in RTL for a horizontal flex row. */
  justify-content: flex-start;
}

table.dataTable > tbody > tr.child span.dtr-data .dt-name-cell,
table.dataTable > tbody > tr.child span.dtr-data .align-items-start {
  align-items: flex-end !important;
}

table.dataTable > tbody > tr.child span.dtr-data .dt-name-cell {
  display: flex;
  flex-direction: column;
}

:root {
  --ps-thumb: #a7acb2;
  --ps-rail: #e4e6e8;
  --ps-thumb-hover: #646e78;
  --ps-rail-width: 0.25rem;
  --ps-rail-width-hover: 0.375rem;
}

.phpdebugbar-restore-btn::after {
  content: "Open Debug Bar";
  position: absolute;
  left: -9999px;
  width: 1px;
  height: 1px;
  overflow: hidden;
}
.phpdebugbar-restore-btn:focus, .phpdebugbar-restore-btn:focus-visible {
  outline: 2px solid var(--du-info) !important;
  outline-offset: 2px !important;
}

.phpdebugbar a:focus,
.phpdebugbar button:focus {
  outline: 2px solid var(--du-info) !important;
  outline-offset: 1px !important;
}

.select2-container {
  --bs-select-height: var(--du-input-default-block-size);
}

.select2-container--default .select2-selection--single {
  position: relative;
  padding-block: calc(0.35rem - var(--bs-border-width, 1px));
  padding-inline-start: calc(0.75rem - var(--bs-border-width, 1px));
  padding-inline-end: calc(2.1rem - var(--bs-border-width, 1px));
  display: flex;
  align-items: center;
}

.select2-container--default .select2-selection--single:has(.select2-selection__clear) {
  padding-inline-end: calc(3.825rem - var(--bs-border-width, 1px));
}

.select2-container--default .select2-selection--single .select2-selection__clear {
  position: absolute;
  inset-inline-end: 2.6rem;
  inset-block-start: 50%;
  transform: translateY(-50%);
  margin: 0 !important;
  float: none !important;
  z-index: 2;
  cursor: pointer;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 100%;
  top: 0;
  display: flex;
  align-items: center;
}

.select2-selection__rendered {
  color: var(--du-text-primary) !important;
  line-height: 1.375;
  padding-inline: 0 !important;
  padding-inline-end: 0.25rem !important;
  flex: 1;
  min-width: 0;
}

.dt-filters {
  overflow: hidden;
  min-width: 0;
}

.dt-filters-scroll {
  min-width: 0;
  overflow-y: hidden;
  scrollbar-gutter: stable;
}

.dt-filters .select2-container {
  max-width: 100%;
}

.dt-filters .select2-container--default.select2-container--focus .select2-selection,
.dt-filters .select2-container--default.select2-container--open .select2-selection {
  border-width: 1px !important;
  box-shadow: none !important;
  outline: 2px solid rgba(var(--du-info-rgb, 20, 40, 160), 0.35);
  outline-offset: 0;
}

.select2-container--default.select2-container--focus .select2-selection,
.select2-container--default.select2-container--open .select2-selection {
  border-width: 1px !important;
}

body > .select2-container {
  inline-size: auto !important;
  width: auto !important;
}

.select2-dropdown {
  overflow-x: hidden;
}

.select2-container--default .select2-results > .select2-results__options,
.select2-container--classic .select2-results > .select2-results__options {
  overflow-x: hidden;
  overflow-y: auto;
}

.select2-container--default .select2-results__option[role=option] {
  overflow-wrap: break-word;
}

.dropdown-notifications-actions button.dropdown-notifications-read,
.dropdown-notifications-actions button.dropdown-notifications-archive {
  background: none;
  border: none;
  padding: var(--du-space-1);
  cursor: pointer;
  color: inherit;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 24px;
  min-height: 24px;
  border-radius: 4px;
  transition: background-color var(--du-transition-fast);
}
.dropdown-notifications-actions button.dropdown-notifications-read:hover,
.dropdown-notifications-actions button.dropdown-notifications-archive:hover {
  background-color: rgba(0, 0, 0, 0.05);
}
.dropdown-notifications-actions button.dropdown-notifications-read:focus, .dropdown-notifications-actions button.dropdown-notifications-read:focus-visible,
.dropdown-notifications-actions button.dropdown-notifications-archive:focus,
.dropdown-notifications-actions button.dropdown-notifications-archive:focus-visible {
  outline: 2px solid var(--du-info);
  outline-offset: 1px;
}

.cs-lightbox {
  z-index: 999999 !important;
}

.avatar-initial {
  color: var(--du-info);
  font-weight: 600;
  background-color: var(--du-info-light);
}

span.avatar-initial.rounded-circle.bg-label-primary {
  background-color: var(--du-info-light) !important;
  color: var(--du-info) !important;
  box-shadow: none;
}

.text-muted,
small.text-muted {
  color: var(--du-text-secondary) !important;
  font-weight: 500;
}

small.text-muted {
  font-size: 0.875rem;
  line-height: 1.5;
}

body:not(.dark-theme) *:focus-visible {
  outline-color: var(--du-info);
}
body:not(.dark-theme) body#app,
body:not(.dark-theme) .layout-wrapper {
  font-family: var(--du-font-family);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
body:not(.dark-theme) .layout-page,
body:not(.dark-theme) .layout-content-wrapper {
  background-color: var(--du-bg-body);
}
body:not(.dark-theme) .content-wrapper {
  background-color: transparent;
}
body:not(.dark-theme) nav#layout-navbar.layout-navbar,
body:not(.dark-theme) .layout-navbar {
  background-color: var(--du-bg-surface) !important;
  border-bottom: 1px solid var(--du-sidebar-border, var(--du-border-color)) !important;
  box-shadow: none !important;
}
body:not(.dark-theme) nav#layout-navbar.layout-navbar .navbar,
body:not(.dark-theme) #layout-navbar > .container,
body:not(.dark-theme) #layout-navbar > .container-fluid {
  background-color: transparent !important;
}
body:not(.dark-theme) aside#layout-menu.layout-menu {
  font-family: var(--du-font-family);
  background-color: var(--du-sidebar-surface) !important;
}
body:not(.dark-theme) aside#layout-menu.layout-menu > .menu {
  background-color: var(--du-sidebar-inner-bg) !important;
}
body:not(.dark-theme) aside#layout-menu.layout-menu .app-brand {
  border-bottom: 1px solid var(--du-sidebar-border);
  padding-block: 1rem;
  padding-inline: 1rem;
  margin-block-end: 0.25rem;
}
body:not(.dark-theme) aside#layout-menu.layout-menu .layout-menu-toggle {
  border-radius: var(--du-radius-md);
  color: var(--du-sidebar-nav-active-text);
  transition: background-color var(--du-transition-fast);
}
body:not(.dark-theme) aside#layout-menu.layout-menu .layout-menu-toggle:hover {
  background-color: var(--du-sidebar-hover-bg);
}
body:not(.dark-theme) aside#layout-menu.layout-menu .menu-inner {
  padding-block: 0.35rem 0.75rem;
}
body:not(.dark-theme) aside#layout-menu.layout-menu .menu-header {
  margin-block-start: 1.25rem;
}
body:not(.dark-theme) aside#layout-menu.layout-menu .menu-header:first-child {
  margin-block-start: 0.5rem;
}
body:not(.dark-theme) aside#layout-menu.layout-menu .menu-header .menu-header-text {
  color: var(--du-sidebar-text-muted);
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
body:not(.dark-theme) aside#layout-menu.layout-menu .menu-header::before {
  display: none;
}
body:not(.dark-theme) aside#layout-menu.layout-menu .menu-divider {
  border-block-start-color: var(--du-sidebar-border);
  margin-block: 0.5rem;
}
body:not(.dark-theme) aside#layout-menu.layout-menu .menu-link {
  font-size: 0.875rem;
  font-weight: 500;
  letter-spacing: -0.01em;
  border-radius: var(--du-radius-md);
}
body:not(.dark-theme) aside#layout-menu.layout-menu .menu-item:not(.active) > .menu-link {
  font-weight: 500;
  color: var(--du-sidebar-nav-text);
}
body:not(.dark-theme) aside#layout-menu.layout-menu .menu-item:not(.active) > .menu-link:hover, body:not(.dark-theme) aside#layout-menu.layout-menu .menu-item:not(.active) > .menu-link:focus {
  color: var(--du-sidebar-nav-active-text);
  background-color: var(--du-sidebar-hover-bg);
}
body:not(.dark-theme) aside#layout-menu.layout-menu .menu-item.active > .menu-link {
  font-weight: 700 !important;
  background-color: var(--du-sidebar-active-bg) !important;
  color: var(--du-sidebar-nav-active-text) !important;
}
body:not(.dark-theme) aside#layout-menu.layout-menu .menu-sub {
  background-color: var(--du-sidebar-submenu-bg);
  border-radius: var(--du-radius-md);
  margin-inline: 0.5rem 0.65rem;
  padding-block: 0.25rem;
  margin-block: 0.15rem 0.35rem;
}
body:not(.dark-theme) aside#layout-menu.layout-menu .menu-sub .menu-link {
  font-size: 0.8125rem;
  padding-block: 0.28rem;
}
body:not(.dark-theme) aside#layout-menu.layout-menu .menu-sub .menu-item.active > .menu-link {
  background-color: transparent !important;
  color: var(--du-info) !important;
  font-weight: 700 !important;
}
body:not(.dark-theme) aside#layout-menu.layout-menu .menu-toggle::after {
  border-color: var(--du-sidebar-text-muted);
  opacity: 0.85;
}
body:not(.dark-theme) aside#layout-menu.layout-menu .menu-item.open > .menu-link.menu-toggle {
  color: var(--du-sidebar-nav-active-text);
}
body:not(.dark-theme) aside#layout-menu.menu-vertical .menu-inner > .menu-item.active::before {
  background-color: var(--du-info) !important;
  inline-size: 3px !important;
  block-size: 2.25rem !important;
  inset-inline-end: 4px !important;
  border-radius: 2px !important;
}
body:not(.dark-theme) [dir=rtl] aside#layout-menu.menu-vertical .menu-inner > .menu-item.active::before {
  inset-inline-end: auto !important;
  inset-inline-start: 4px !important;
}
body:not(.dark-theme) .btn-outline-primary {
  color: var(--du-primary);
  border-color: var(--du-primary);
  background-color: transparent;
  font-weight: 600;
}
body:not(.dark-theme) .btn-outline-primary:hover, body:not(.dark-theme) .btn-outline-primary:focus {
  color: var(--du-primary-contrast);
  background-color: var(--du-primary);
  border-color: var(--du-primary);
}
body:not(.dark-theme) .btn-outline-primary:active {
  color: var(--du-primary-contrast);
  background-color: var(--du-primary-active);
  border-color: var(--du-primary-active);
}
body:not(.dark-theme) .btn-secondary {
  color: var(--du-text-heading);
  background-color: #eeeeee;
  border-color: #dddddd;
  font-weight: 600;
}
body:not(.dark-theme) .btn-secondary:hover, body:not(.dark-theme) .btn-secondary:focus {
  color: var(--du-text-heading);
  background-color: #e0e0e0;
  border-color: #d0d0d0;
}
body:not(.dark-theme) .btn-link {
  color: var(--du-info);
  font-weight: 600;
  text-decoration: none;
}
body:not(.dark-theme) .btn-link:hover, body:not(.dark-theme) .btn-link:focus {
  color: var(--du-info-hover);
  text-decoration: underline;
  text-underline-offset: 0.15em;
}
body:not(.dark-theme) .btn-light {
  color: var(--du-text-heading);
  background-color: var(--du-bg-surface-alt);
  border-color: var(--du-border-color);
  font-weight: 600;
}
body:not(.dark-theme) .btn-light:hover, body:not(.dark-theme) .btn-light:focus {
  background-color: #eeeeee;
  border-color: #dddddd;
}
body:not(.dark-theme) .btn-info {
  color: #fff;
  background-color: var(--du-info);
  border-color: var(--du-info);
  font-weight: 600;
}
body:not(.dark-theme) .btn-info:hover, body:not(.dark-theme) .btn-info:focus {
  background-color: var(--du-info-hover);
  border-color: var(--du-info-hover);
  color: #fff;
}
body:not(.dark-theme) .dropdown-menu {
  border: 1px solid var(--du-border-color);
  border-radius: var(--du-radius-lg);
  box-shadow: var(--du-shadow-lg);
  padding: 0.35rem;
  background-color: var(--du-bg-surface);
}
body:not(.dark-theme) .dropdown-item {
  border-radius: var(--du-radius-md);
  font-weight: 500;
  font-size: 0.875rem;
  padding-block: 0.45rem;
  padding-inline: 0.75rem;
  color: var(--du-text-heading);
  transition: background-color var(--du-transition-fast), color var(--du-transition-fast);
}
body:not(.dark-theme) .dropdown-item:hover, body:not(.dark-theme) .dropdown-item:focus {
  background-color: var(--du-sidebar-nav-hover-bg, #eeeeee);
  color: var(--du-text-heading);
}
body:not(.dark-theme) .dropdown-item.active, body:not(.dark-theme) .dropdown-item:active {
  background-color: rgba(var(--du-info-rgb, 20, 40, 160), 0.12);
  color: var(--du-info);
}
body:not(.dark-theme) .dropdown-header {
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--du-text-secondary);
  padding-block: 0.35rem;
}
body:not(.dark-theme) .dropdown-divider {
  border-color: var(--du-border-color);
  margin: 0.35rem 0.25rem;
}
body:not(.dark-theme) .popover {
  border: 1px solid var(--du-border-color);
  border-radius: var(--du-radius-lg);
  box-shadow: var(--du-shadow-lg);
}
body:not(.dark-theme) .popover-header {
  font-weight: 700;
  font-size: 0.875rem;
  background-color: var(--du-bg-surface-alt);
  border-bottom-color: var(--du-border-color);
  color: var(--du-text-heading);
}
body:not(.dark-theme) .breadcrumb {
  font-size: 0.8125rem;
  font-weight: 500;
  color: var(--du-text-secondary);
  margin-bottom: 0.75rem;
}
body:not(.dark-theme) .breadcrumb .breadcrumb-item a {
  color: var(--du-info);
  text-decoration: none;
  font-weight: 500;
}
body:not(.dark-theme) .breadcrumb .breadcrumb-item a:hover {
  color: var(--du-info-hover);
  text-decoration: underline;
  text-underline-offset: 0.12em;
}
body:not(.dark-theme) .breadcrumb .breadcrumb-item.active {
  color: var(--du-text-secondary);
  font-weight: 600;
}
body:not(.dark-theme) .breadcrumb .breadcrumb-item + .breadcrumb-item::before {
  color: var(--du-text-disabled);
  font-weight: 400;
}
body:not(.dark-theme) .modal-content {
  border: 1px solid var(--du-border-color);
  border-radius: var(--du-radius-xl);
  box-shadow: var(--du-shadow-xl);
  overflow: hidden;
  background-color: var(--du-bg-surface);
}
body:not(.dark-theme) .modal-backdrop.show {
  opacity: 0.48;
}
body:not(.dark-theme) .alert {
  border-radius: var(--du-radius-md);
  border: 1px solid var(--du-border-color);
  border-inline-start-width: 4px;
  font-weight: 500;
  font-size: 0.875rem;
}
body:not(.dark-theme) .alert-primary {
  color: var(--du-text-heading);
  background-color: rgba(var(--du-primary-rgb, 0, 0, 0), 0.06);
  border-color: var(--du-border-color);
  border-inline-start-color: var(--du-primary);
}
body:not(.dark-theme) .alert-secondary {
  background-color: var(--du-bg-surface-alt);
  border-inline-start-color: var(--du-secondary);
  color: var(--du-text-heading);
}
body:not(.dark-theme) .alert-success {
  background-color: var(--du-success-light);
  border-inline-start-color: var(--du-success);
  color: #003d1f;
}
body:not(.dark-theme) .alert-info {
  background-color: var(--du-info-light);
  border-inline-start-color: var(--du-info);
  color: #0a1850;
}
body:not(.dark-theme) .alert-warning {
  background-color: var(--du-warning-light);
  border-inline-start-color: var(--du-warning);
  color: #4d2600;
}
body:not(.dark-theme) .alert-danger {
  background-color: var(--du-danger-light);
  border-inline-start-color: var(--du-danger);
  color: #5c0003;
}
body:not(.dark-theme) .alert-dismissible .btn-close {
  padding: 0.65rem 1rem;
}
body:not(.dark-theme) .badge {
  border-radius: var(--du-radius-pill);
  letter-spacing: 0.01em;
}
body:not(.dark-theme) .list-group-item {
  border-color: var(--du-border-color);
  font-weight: 500;
  font-size: 0.875rem;
}
body:not(.dark-theme) .list-group-item-action {
  color: var(--du-text-heading);
}
body:not(.dark-theme) .list-group-item-action:hover, body:not(.dark-theme) .list-group-item-action:focus {
  background-color: var(--du-bg-surface-alt);
  color: var(--du-text-heading);
}
body:not(.dark-theme) .list-group-item-action.active {
  background-color: var(--du-primary);
  border-color: var(--du-primary);
  color: var(--du-primary-contrast);
}
body:not(.dark-theme) .nav-tabs {
  border-bottom-color: var(--du-border-color);
  gap: 0.125rem;
}
body:not(.dark-theme) .nav-tabs .nav-link {
  color: var(--du-text-secondary);
  font-weight: 600;
  font-size: 0.875rem;
  border-radius: var(--du-radius-md) var(--du-radius-md) 0 0;
  padding: 0.5rem 1rem;
  border: 1px solid transparent;
  margin-bottom: -1px;
}
body:not(.dark-theme) .nav-tabs .nav-link:hover {
  color: var(--du-text-heading);
  border-color: transparent;
}
body:not(.dark-theme) .nav-tabs .nav-link.active,
body:not(.dark-theme) .nav-tabs .nav-item.show .nav-link {
  color: var(--du-text-heading);
  background-color: var(--du-bg-surface);
  border-color: var(--du-border-color) var(--du-border-color) var(--du-bg-surface);
  font-weight: 700;
}
body:not(.dark-theme) .nav-pills {
  gap: 0.25rem;
}
body:not(.dark-theme) .nav-pills .nav-link {
  color: var(--du-text-secondary);
  font-weight: 600;
  font-size: 0.875rem;
  border-radius: var(--du-radius-pill);
  padding: 0.45rem 1rem;
}
body:not(.dark-theme) .nav-pills .nav-link:hover {
  background-color: var(--du-bg-surface-alt);
  color: var(--du-text-heading);
}
body:not(.dark-theme) .nav-pills .nav-link.active {
  background-color: var(--du-primary);
  color: var(--du-primary-contrast);
}
body:not(.dark-theme) .pagination {
  gap: 0.25rem;
}
body:not(.dark-theme) .page-link {
  border-radius: var(--du-radius-md);
  font-weight: 600;
  font-size: 0.8125rem;
  color: var(--du-text-heading);
  border-color: var(--du-border-color);
  padding: 0.35rem 0.65rem;
}
body:not(.dark-theme) .page-item.active .page-link {
  background-color: var(--du-primary);
  border-color: var(--du-primary);
  color: var(--du-primary-contrast);
}
body:not(.dark-theme) .page-link:hover {
  background-color: var(--du-bg-surface-alt);
  color: var(--du-info);
  border-color: var(--du-border-color);
}
body:not(.dark-theme) .page-item.active .page-link:hover {
  background-color: var(--du-primary-hover);
  color: var(--du-primary-contrast);
  border-color: var(--du-primary-hover);
}
body:not(.dark-theme) .form-check-input:checked {
  background-color: var(--du-info);
  border-color: var(--du-info);
}
body:not(.dark-theme) .form-check-input:focus {
  border-color: var(--du-info);
  box-shadow: 0 0 0 0.2rem rgba(var(--du-info-rgb, 20, 40, 160), 0.22);
}
body:not(.dark-theme) .toast {
  border: 1px solid var(--du-border-color);
  border-radius: var(--du-radius-lg);
  box-shadow: var(--du-shadow-lg);
}
body:not(.dark-theme) .toast-header {
  font-weight: 700;
  font-size: 0.8125rem;
  background-color: var(--du-bg-surface-alt);
  border-bottom-color: var(--du-border-color);
}
body:not(.dark-theme) .progress {
  border-radius: var(--du-radius-pill);
  background-color: #eeeeee;
  height: 0.5rem;
}
body:not(.dark-theme) .progress-bar {
  border-radius: var(--du-radius-pill);
}
body:not(.dark-theme) .accordion-item {
  border-color: var(--du-border-color);
}
body:not(.dark-theme) .accordion-button {
  font-weight: 700;
  font-size: 0.9375rem;
  color: var(--du-text-heading);
}
body:not(.dark-theme) .accordion-button:not(.collapsed) {
  color: var(--du-info);
  background-color: rgba(var(--du-info-rgb, 20, 40, 160), 0.06);
  box-shadow: none;
}
body:not(.dark-theme) .accordion-button:focus {
  box-shadow: 0 0 0 0.2rem rgba(var(--du-info-rgb, 20, 40, 160), 0.2);
}
body:not(.dark-theme) .table thead th {
  font-size: 0.75rem;
  letter-spacing: 0.04em;
  color: var(--du-text-secondary);
  background-color: var(--du-bg-surface-alt);
  border-bottom-color: var(--du-border-color);
}
body:not(.dark-theme) .card:not(:has(.card-datatable)) {
  border-radius: var(--du-radius-lg);
}
body:not(.dark-theme) .card-header {
  font-weight: 700;
  font-size: 0.9375rem;
  letter-spacing: -0.01em;
}
body:not(.dark-theme) .offcanvas {
  border-inline-start: 1px solid var(--du-border-color);
  box-shadow: var(--du-shadow-xl);
}
body:not(.dark-theme) .offcanvas-header {
  border-bottom: 1px solid var(--du-border-color);
}
body:not(.dark-theme) .select2-dropdown {
  border: 1px solid var(--du-border-color) !important;
  border-radius: var(--du-radius-md) !important;
  box-shadow: var(--du-shadow-lg) !important;
  overflow: hidden;
}
body:not(.dark-theme) .select2-results__option--highlighted[aria-selected] {
  background-color: rgba(var(--du-info-rgb, 20, 40, 160), 0.12) !important;
  color: var(--du-text-heading) !important;
}
body:not(.dark-theme) .sidebar-user-footer .sidebar-user-dropdown {
  border-radius: var(--du-radius-lg) !important;
  box-shadow: var(--du-shadow-lg) !important;
}

.p-45 {
  padding: 1.1rem !important;
}

a.btn.btn-sm.btn-primary.loadRemoteModel:not([aria-label]) {
  position: relative;
}
a.btn.btn-sm.btn-primary.loadRemoteModel:not([aria-label])::after {
  content: attr(href);
  position: absolute;
  left: -9999px;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

/* intlTelInput */
.iti {
  width: 100%;
  display: block;
}
.iti input.form-control {
  width: 100%;
}

.iti__flag-container {
  direction: ltr;
}

/* Logo Upload Cards */
.logo-upload-card {
  background: var(--du-bg-surface, #fff);
  border: 1px solid var(--du-border-color, #e2e3e4);
  border-radius: var(--du-radius-lg, 0.75rem);
  padding: var(--du-space-5, 1.5rem);
  transition: border-color var(--du-transition-fast), box-shadow var(--du-transition-fast);
  height: 100%;
  display: flex;
  flex-direction: column;
}
.logo-upload-card:hover {
  border-color: var(--color-v3-outline, var(--du-border-color));
  box-shadow: var(--v3-shadow-sm, var(--du-shadow-sm));
}

.logo-preview-wrapper {
  position: relative;
}

.logo-preview-container {
  background: var(--du-bg-surface-alt, #f8f9fa);
  border: 1px dashed var(--du-border-color);
  border-radius: var(--du-radius-md);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: border-color var(--du-transition-fast), background-color var(--du-transition-fast);
  position: relative;
}
.logo-preview-container:hover {
  border-color: var(--color-v3-outline, var(--du-border-color));
  background: var(--color-v3-hover, var(--du-bg-surface-alt));
}
.logo-preview-container.dark-mode {
  background: #1a1a1a;
  border-color: #333;
}
.logo-preview-container.dark-mode:hover {
  border-color: var(--color-v3-outline, #444);
  background: color-mix(in srgb, var(--color-v3-surface-container-high, #252525) 85%, #000);
}

.logo-preview-inner {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.logo-preview-image {
  max-width: 100%;
  max-height: 120px;
  -o-object-fit: contain;
     object-fit: contain;
  border-radius: var(--du-radius-sm);
}

.logo-placeholder {
  text-align: center;
  color: var(--du-text-secondary);
  padding: var(--du-space-4);
}

.logo-placeholder i {
  font-size: 3rem;
  display: block;
  margin-bottom: var(--du-space-2);
  opacity: 0.5;
}

.favicon-preview-wrapper {
  position: relative;
}

.favicon-preview-container {
  background: var(--du-bg-surface-alt);
  border: 1px dashed var(--du-border-color);
  border-radius: var(--du-radius-md);
  padding: var(--du-space-5);
  min-height: 120px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: border-color var(--du-transition-fast), background-color var(--du-transition-fast);
  position: relative;
}
.favicon-preview-container:hover {
  border-color: var(--color-v3-outline, var(--du-border-color));
  background: var(--color-v3-hover, var(--du-bg-surface-alt));
}

.favicon-preview-inner {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.favicon-preview-image {
  width: 64px;
  height: 64px;
  -o-object-fit: contain;
     object-fit: contain;
  border-radius: var(--du-radius-md);
  box-shadow: var(--du-shadow-sm);
}

.favicon-placeholder {
  text-align: center;
  color: var(--du-text-secondary);
}

.favicon-placeholder i {
  font-size: 2.5rem;
  display: block;
  opacity: 0.5;
}

.logo-remove-btn {
  position: absolute;
  top: -8px;
  right: -8px;
  width: 28px;
  height: 28px;
  background: var(--du-danger);
  color: #fff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  font-size: 1rem;
  transition: transform var(--du-transition-fast), box-shadow var(--du-transition-fast);
  z-index: 10;
  box-shadow: var(--du-shadow-sm);
}
.logo-remove-btn:hover {
  background: var(--du-danger-hover, #bb2d3b);
  transform: scale(1.1);
  color: #fff;
}

.logo-upload-btn-wrapper {
  margin-top: auto;
}
.logo-upload-btn-wrapper label.btn {
  cursor: pointer;
  margin-bottom: 0;
}

@media (max-width: 768px) {
  .logo-upload-card {
    margin-bottom: var(--du-space-5);
  }
  .logo-preview-container {
    min-height: 120px;
    padding: var(--du-space-4);
  }
  .favicon-preview-container {
    min-height: 100px;
    padding: var(--du-space-4);
  }
}
input[type=file].d-none {
  display: none !important;
}

.print-logo-box {
  width: 100px;
  height: 70px;
  flex-shrink: 0;
  margin-right: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border: 1px solid #eee;
  border-radius: 4px;
}
.print-logo-box img {
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
}

.label-order-details {
  font-size: 13px;
  margin: 8px 0;
}
.label-order-details p {
  margin: 2px 0;
}
.label-order-details strong {
  min-width: 110px;
  display: inline-block;
}

#remoteModelData .select2-container--open {
  z-index: 1061 !important;
}

#remoteModelData .iti {
  width: 100%;
  display: block;
}

#remoteModelData .iti input.form-control {
  width: 100%;
}

#remoteModelData .iti__flag-container {
  direction: ltr;
}

.modal-loading-overlay {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 200px;
  animation: modalLoaderFadeIn 0.2s ease-out;
}

@keyframes modalLoaderFadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@media (prefers-reduced-motion: reduce) {
  .modal-loading-overlay {
    animation: none !important;
  }
  #remoteModelData.modal.fade .modal-dialog,
  .modal.fade .modal-dialog {
    transition: none !important;
  }
}
.iti {
  width: 100%;
  display: block;
  position: relative;
  max-width: 100%;
}

.iti input.form-control {
  width: 100%;
}

.iti__flag-container {
  direction: ltr;
}

.iti + label.error,
.iti + span.help-block.error,
.iti + label.help-block.error,
.iti + div.invalid-feedback,
.iti + .iti-field-validation-error {
  display: block !important;
  width: 100% !important;
  max-width: 100%;
  position: static !important;
  float: none !important;
  clear: both;
  margin-top: 0.25rem !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0;
  white-space: normal;
  line-height: 1.35;
  z-index: 0;
  font-size: 0.85em;
}

.iti > label.error,
.iti > .help-block.error,
.iti > .invalid-feedback,
.iti > .iti-field-validation-error {
  position: absolute !important;
  top: 100% !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  display: block !important;
  margin-top: 0.15rem !important;
  padding-left: 0;
  white-space: normal;
  line-height: 1.35;
  z-index: 10;
  font-size: 0.85em;
}

.iti:has(> label.error),
.iti:has(> .help-block.error),
.iti:has(> .invalid-feedback) {
  margin-bottom: 1.75rem !important;
}

.iti--validation-error .iti__selected-flag,
.iti--validation-error input {
  border-color: var(--bs-form-invalid-border-color, #dc3545) !important;
}

.modal-body .iti,
#company_form .iti,
#freight_companies_form .iti,
#user_form .iti,
#order_form .iti {
  margin-bottom: 0;
}

#company_form .iti:has(> .error),
#freight_companies_form .iti:has(> .error),
#user_form .iti:has(> .error),
#order_form .iti:has(> .error),
.modal-body .iti:has(> .error) {
  margin-bottom: 1.75rem !important;
}

.account-avatar,
.avatar-xl .account-avatar {
  width: 100px;
  height: 100px;
  -o-object-fit: cover;
     object-fit: cover;
}

.account-profile-card .iti,
#account-profile .iti {
  width: 100%;
}

.page-list-header__subtitle {
  max-width: 52rem;
  line-height: 1.45;
}

.roles-form-page {
  max-width: min(100%, 90rem);
  margin-inline: auto;
}

.roles-form-page__card .card-header {
  border-radius: var(--bs-border-radius-lg, 0.5rem) var(--bs-border-radius-lg, 0.5rem) 0 0;
}

.roles-form-page__guide {
  background-color: var(--bs-secondary-bg, #f5f5f9);
}

.roles-form-page__table-wrap {
  border: 1px solid var(--du-border-color, #e7e7e9);
  border-radius: var(--bs-border-radius-lg, 0.5rem);
  overflow: hidden;
}

.roles-form-page__matrix {
  margin-bottom: 0;
}
.roles-form-page__matrix thead th {
  font-size: 0.8125rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  color: var(--bs-secondary-color, #8592a3);
  vertical-align: middle;
  background-color: var(--bs-secondary-bg, #f5f5f9);
}
.roles-form-page__matrix tbody td {
  vertical-align: middle;
}
.roles-form-page__matrix .permission-group-col {
  min-width: 12rem;
}

.driver-rating-stars {
  gap: 0.12rem;
}
.driver-rating-stars .driver-rating-star-on {
  color: #f0a000;
}
.driver-rating-stars .driver-rating-star-off {
  color: #d4d7de;
}
.driver-rating-stars .driver-rating-set {
  line-height: 1;
}
.driver-rating-stars .driver-rating-set:hover .driver-rating-star-off, .driver-rating-stars .driver-rating-set:focus .driver-rating-star-off {
  color: #c5c9d4;
}
.driver-rating-stars .driver-rating-set:hover .driver-rating-star-on, .driver-rating-stars .driver-rating-set:focus .driver-rating-star-on {
  color: #ffb21a;
}

.ri-file-check-line::before {
  content: "\f100" !important;
}

.ri-file-check-fill::before {
  content: "\f0ff" !important;
}

/**
 * Admin dark theme — design tokens (Gemini / v3 palette).
 * Tokens on :root when `body` has .dark-theme so variables resolve from html for var().
 * Invalid gradient stop from source (`#9b9eaf -100%`) normalized to `#9b9eaf`.
 */
/* -------------------------------------------------------------------------- */
/* Merged token blocks — active when body.dark-theme (dark mode)             */
/* -------------------------------------------------------------------------- */
:root:has(> body.dark-theme) {
  color-scheme: dark;
  --color-v3-surface: light-dark(#fff, #191919);
  --color-v3-overlay-background: light-dark(rgba(252, 252, 252, 0.3), rgba(25, 25, 25, 0.3));
  --color-v3-surface-left-nav: light-dark(#fafafa, #191919);
  --color-v3-surface-left-nav-border: light-dark(#e2e3e4, #262626);
  --color-v3-surface-container: light-dark(#fff, #1f1f1f);
  --color-v3-surface-container-high: light-dark(#fcfcfc, #252525);
  --color-v3-surface-container-highest: light-dark(#f4f5f5, #2a2a2a);
  --color-v3-button-container: light-dark(#fff, #323232);
  --color-v3-button-container-high: light-dark(#eaeaeb, #424242);
  --color-v3-button-container-highest: light-dark(#caccce, #555);
  --color-v3-button-container-accent: light-dark(#dbeafe, #393f51);
  --color-v3-text-disable: light-dark(#bdc1c6, #3e3e3e);
  --color-v3-text-on-button: light-dark(#2b2d31, #fcfcfc);
  --color-v3-text-on-button-reverse: light-dark(#fff, #fff);
  --color-v3-text: light-dark(#2b2d31, #d4d4d4);
  --color-v3-text-var: light-dark(#6c717a, #8c8c8c);
  --color-v3-chat-separator: light-dark(#b7babd, #8c8c8c);
  --color-v3-text-link: light-dark(#2483e2, #87a9ff);
  --color-v3-outline: light-dark(#e2e3e4, #333);
  --color-v3-outline-var: light-dark(#eaeaeb, #262626);
  --color-v3-outline-accent: light-dark(#2483e2, #87a9ff);
  --color-v3-error-text: light-dark(#690005, #690005);
  --color-v3-error-container: light-dark(#ffdad6, #ffdad6);
  --color-v3-warning-text: light-dark(#2a1700, #2a1700);
  --color-v3-warning-container: light-dark(#ffddb7, #ffddb7);
  --color-v3-hover: light-dark(#f4f5f5, #323232);
  --color-v3-accent-1: light-dark(#fcbd00, #fcbd00);
  --color-v3-accent-light-1: light-dark(#fff7e0, #3a321b);
  --color-v3-accent-2: light-dark(#c597ff, #c597ff);
  --color-v3-accent-light-2: light-dark(#f8f3ff, #332d3a);
  --color-v3-accent-3: light-dark(#d73a49, #d73a49);
  --color-v3-accent-4: light-dark(#3ca059, #3ddb85);
  --color-v3-accent-5: light-dark(#7887b5, #8790ab);
  --color-v3-accent-6: light-dark(#e87400, #ffb74d);
  --v3-shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
  --v3-shadow-sm: 0 1px 3px 0 rgba(10, 13, 18, 0.1), 0 1px 2px -1px rgba(10, 13, 18, 0.1);
  --v3-shadow-md: 0 4px 6px -1px rgba(10, 13, 18, 0.1), 0 2px 4px -2px rgba(10, 13, 18, 0.06);
  --v3-shadow-lg: 0 12px 16px -4px rgba(10, 13, 18, 0.08), 0 4px 6px -2px rgba(10, 13, 18, 0.03), 0 2px 2px -1px rgba(10, 13, 18, 0.04);
  --v3-shadow-xl: 0 20px 24px -4px rgba(10, 13, 18, 0.08), 0 8px 8px -4px rgba(10, 13, 18, 0.03), 0 3px 3px -1.5px rgba(10, 13, 18, 0.04);
  --color-inverse-primary: #0057ce;
  --color-secondary: var(--color-v3-text);
  --color-on-secondary: light-dark(#fff, #003257);
  --color-secondary-container: light-dark(#d0e4ff, #00497b);
  --color-on-secondary-container: light-dark(#001d35, #d0e4ff);
  --color-secondary-fixed: #d0e4ff;
  --color-secondary-fixed-dim: #9cccff;
  --color-on-secondary-fixed: #001d35;
  --color-on-secondary-fixed-variant: #00497b;
  --color-tertiary: light-dark(#845400, #ffb95c);
  --color-on-tertiary: light-dark(#fff, #462a00);
  --color-tertiary-container: light-dark(#ffddb7, #653e00);
  --color-on-tertiary-container: light-dark(#2a1700, #ffddb7);
  --color-tertiary-fixed: #ffddb7;
  --color-tertiary-fixed-dim: #ffb95c;
  --color-on-tertiary-fixed: #2a1700;
  --color-on-tertiary-fixed-variant: #653e00;
  --color-tertiary-green: light-dark(#deede1, #1e3528);
  --color-on-tertiary-green: light-dark(#228634, #3ddb85);
  --color-error: light-dark(#ba1a1a, #ffb4ab);
  --color-on-error: light-dark(#fff, #690005);
  --color-error-container: light-dark(#ffdad6, #93000a);
  --color-on-error-container: light-dark(#410002, #ffdad6);
  --color-error-fixed: #ffdad6;
  --color-on-error-fixed: #410002;
  --color-surface: light-dark(#f9f9fc, #000);
  --color-on-surface: light-dark(#1a1c1e, #e2e2e5);
  --color-on-surface-variant: light-dark(#44474e, #a8abb4);
  --color-surface-dim: light-dark(#d9dadd, #000);
  --color-surface-brighter: light-dark(rgba(255, 255, 255, 0.6), rgba(26, 28, 30, 0.5));
  --color-surface-bright: light-dark(#fff, rgba(26, 28, 30, 0.5));
  --color-scrim: #000;
  --color-shadow: #000;
  --color-inverse-surface: light-dark(#2f3133, #e2e2e5);
  --color-inverse-on-surface: light-dark(#f0f0f4, #2f3133);
  --color-bidi-icons: linear-gradient(89.99deg, #076eff 0%, #3295e8 82.24%, #87a9ff 102.42%);
  --color-banner-background: #0842a0;
  --color-user-chat-icon: light-dark(#bec6dc, #bec6dc);
  --color-model-chat-icon: light-dark(#1d5cb4, #d3e3fd);
  --color-banner-button-highlight: #2054a9;
  --color-banner-content: #e2e2e5;
  --color-banner-link: #87a9ff;
  --color-chart-background: light-dark(rgb(237, 237, 237), rgb(46, 46, 46));
  --color-chat-core: light-dark(#d7e2ff, #1a3059);
  --color-logo-icon: light-dark(#1c1c1d, #d4d4d4);
  --color-logo-lockup: light-dark(#191919, #fcfcfc);
  --color-run-settings-text: light-dark(#1a1c1e, #c6c6c9);
  --color-overlay-background: rgba(0, 0, 0, 0.32);
  --color-loading-background: light-dark(#fafafa, #252525);
  --color-loading-background-contrast: light-dark(#e5e5e8, #707070);
  --color-skeleton-shimmer: light-dark(rgba(199, 199, 199, 0.2), rgba(199, 199, 199, 0.1));
  --color-skeleton-shimmer-highlight: light-dark(rgba(199, 199, 199, 0.4), rgba(199, 199, 199, 0.2));
  --color-browser-placeholder: #757575;
  --color-ms-opaque-yellow-background: rgba(252, 189, 0, 0.12);
  --color-ms-opaque-yellow: #fcbd00;
  --color-ms-opaque-purple-background: rgba(197, 151, 255, 0.12);
  --color-ms-opaque-purple: #c597ff;
  --color-run-button-disabled-background: light-dark(rgba(30, 26, 28, 0.1215686275), rgba(226, 226, 229, 0.1215686275));
  --color-gallery-chip-background: light-dark(var(--color-v3-surface-container), rgba(255, 255, 255, 0.12));
  --color-zero-state-example-chip: light-dark(transparent, rgba(255, 255, 255, 0.12));
  --color-zero-state-example-chip-hover: light-dark(var(--color-v3-surface-container), rgba(255, 255, 255, 0.24));
  --color-zero-state-example-chip-border: light-dark(var(--color-v3-outline-var), transparent);
  --color-run-button-disabled-background-transparent: light-dark(rgba(226, 226, 229, 0.9), rgba(226, 226, 229, 0.12));
  --color-prompt-input-background: light-dark(var(--color-surface-bright), rgba(255, 255, 255, 0.07));
  --color-prompt-input-border: light-dark(var(--color-v3-outline-var), transparent);
  --color-copyright-acknowledgement-background: light-dark(#2f3133, rgba(255, 255, 255, 0.07));
  --color-get-api-key-button-background: light-dark(#eff6ff, rgba(255, 255, 255, 0.2));
  --color-get-api-key-button-text-color: light-dark(#000, #fff);
  --color-header-nav-item-inactive: var(--color-on-surface-variant);
  --color-nav-item-hover: light-dark(#efefef, #2a2a2a);
  --color-nav-item-active: light-dark(#ececef, #2a2a2a);
  --color-stream-end-button-background: light-dark(#c4c6cf, #515255);
  --color-unified-input-focus-background: light-dark(transparent, #2f3133);
  --color-unified-role-text: #fff;
  --color-unified-role-model-background: #1a3059;
  --color-unified-role-user-background: #1e3528;
  --color-unified-role-applet-background: #93000a;
  --color-recorder-active: #de3730;
  --color-recorder-inactive: #690005;
  --color-recorder-active-icon: white;
  --color-highlight: light-dark(#f89c21, #f89c21);
  --color-hot-tag: light-dark(#e49d36, #ffb95c);
  --user-chunk-background-color: var(--color-v3-surface-container-high);
  --color-canvas-background: light-dark(#fff, #1e1e1e);
  --color-model-info-border: light-dark(#e5e5e5, #44474e);
  --color-gemini-product-gradient: linear-gradient(50deg, #346bf1 33.06%, #3186ff 48.67%, #4fa0ff 65.69%);
  --color-theme-extreme: #000;
  --color-theme-extreme-inverse: #fff;
  --color-hero-title: linear-gradient(90deg, #b1c5ff 0%, #076eff 100%);
  --color-applet-hover-background: linear-gradient(0deg, rgba(255, 255, 255, 0.12) 0%, rgba(255, 255, 255, 0.12) 100%), var(--color-v3-surface-container);
  --color-gallery-background: var(--color-v3-surface-container);
  --color-gradient-background-top: #181818;
  --color-gradient-background: #181818;
  --color-model-info-icons: #c4c6cf;
  --color-model-info-spark-icon: #acc7ff;
  --color-model-info-dialog-background-color: #25262b;
  --color-model-card-spark-icon: #acc7ff;
  --color-model-card-title-header: #fff;
  --color-model-card-subtitle-header: #c4c7c5;
  --color-model-card-background: #25262b;
  --color-model-card-background-hover: #2b2c31;
  --color-model-card-hover-border: #078efb;
  --color-gemini-model-card-hover-border: #fff;
  --color-model-navbar-item-color: #c6c6c9;
  --color-model-navbar-item-header-color: #faf9fd;
  --color-model-navbar-item-hover-color: rgba(217, 217, 217, 0.2);
  --color-model-detail-subtitle: #c6c6c9;
  --color-model-detail-text: #fff;
  --color-model-detail-task-chips-background-color: #d9d9d9;
  --color-model-detail-task-chips-font-color: #202123;
  --color-model-provisioned-throughput-background-first-color: #9b9eaf;
  --color-model-provisioned-throughput-background-second-color: #414249;
  --color-thought-header: #37393c;
  --color-thought-body: #242629;
  --color-thought-divider: #37393c;
  --color-thought-code-block-background: #2f3133;
  --color-thought-code-block-footer: #45474a;
  --color-tos-border: #076eff;
  --color-tos-background: linear-gradient(340deg, rgba(0, 0, 0, 0) 71.78%, rgba(7, 110, 255, 0.4) 98.73%);
  --color-search-entry-point-background-color: #2f3133;
  --color-search-entry-point-border-color: #2f3133;
  --color-search-entry-point-color: #fff;
  --color-search-entry-point-container-background-color: #3c4043;
  --color-search-entry-point-container-border-color: #5f6368;
  --color-search-entry-point-chip-background-color: #2c2c2c;
  --color-search-entry-point-chip-border-color: #fff;
  --color-search-entry-point-chip-color: #fff;
  --color-search-entry-point-chip-hover-background-color: #353536;
  --color-search-sources-background-color: #202124;
  --color-search-sources-color: #fff;
  --color-documentation-callout-background: #393939;
  --mat-autocomplete-background-color: var(--color-v3-surface-container);
  --mat-autocomplete-container-shape: 8px;
  --mat-autocomplete-container-elevation-shadow: var(--v3-shadow-md);
  --mat-checkbox-unselected-icon-color: var(--color-v3-outline);
  --mat-checkbox-unselected-hover-icon-color: var(--color-v3-outline);
  --mat-checkbox-unselected-focus-icon-color: var(--color-v3-outline);
  --mat-checkbox-disabled-unselected-icon-color: var(--color-v3-outline-var);
  --mat-checkbox-selected-icon-color: var(--color-v3-text);
  --mat-checkbox-selected-hover-icon-color: var(--color-v3-text-var);
  --mat-checkbox-selected-focus-icon-color: var(--color-v3-text);
  --mat-checkbox-touch-target-display: none;
  --mat-radio-unselected-icon-color: var(--color-v3-outline);
  --mat-radio-selected-icon-color: var(--color-v3-text);
  --mat-radio-selected-hover-icon-color: var(--color-v3-text);
  --mat-radio-selected-focus-icon-color: var(--color-v3-text);
  --mat-radio-disabled-selected-icon-color: var(--color-v3-outline-var);
  --mat-radio-disabled-unselected-icon-color: var(--color-v3-outline-var);
  --mat-table-background-color: transparent;
  --mat-table-row-item-outline-color: var(--color-v3-outline-var);
  --mat-sort-arrow-color: var(--color-v3-text-var);
  --mat-progress-bar-active-indicator-color: var(--color-v3-text);
  --mat-progress-bar-track-color: var(--color-v3-outline);
  --mat-progress-bar-active-indicator-height: 6px;
  --mat-progress-bar-track-height: 6px;
  --mat-progress-spinner-active-indicator-color: var(--color-v3-text);
  --mat-progress-spinner-active-indicator-width: 20px;
  --mat-paginator-container-background-color: transparent;
  --mat-dialog-container-shape: 12px;
  --mat-dialog-container-elevation-shadow: var(--v3-shadow-md);
  --mat-dialog-actions-padding: 24px 16px;
  --mat-dialog-container-color: var(--color-v3-surface-container);
  --mat-dialog-content-padding: 0;
  --mat-dialog-container-max-width: 80vw;
  --mat-dialog-subhead-size: 16px;
  --mat-dialog-subhead-weight: 600;
  --mat-dialog-supporting-text-size: 14px;
  --mat-tooltip-supporting-text-color: var(--color-v3-text-on-button);
  --mat-tooltip-container-color: var(--color-v3-surface-container);
  --mat-tooltip-supporting-text-size: 12px;
  --mat-tooltip-supporting-text-line-height: 16px;
  --mat-tooltip-container-shape: 12px;
  --mat-slider-active-track-height: 4px;
  --mat-slider-inactive-track-height: 4px;
  --mat-slider-handle-height: 14px;
  --mat-slider-handle-width: 14px;
  --ms-slide-toggle-handle-size: 15px;
  --mat-slide-toggle-track-height: 20px;
  --mat-slide-toggle-track-width: 34px;
  --mat-slide-toggle-track-outline-width: 1px;
  --mat-slide-toggle-disabled-unselected-track-outline-width: 1px;
  --mat-slide-toggle-with-icon-handle-size: var(--ms-slide-toggle-handle-size);
  --mat-slide-toggle-pressed-handle-size: var(--ms-slide-toggle-handle-size);
  --mat-slide-toggle-selected-icon-size: 0;
  --mat-slide-toggle-unselected-icon-size: 0;
  --mat-slide-toggle-unselected-with-icon-handle-horizontal-margin: 0 3px;
  --mat-slide-toggle-unselected-pressed-handle-horizontal-margin: 0 3px;
  --mat-slide-toggle-selected-with-icon-handle-horizontal-margin: 0 16px;
  --mat-slide-toggle-selected-pressed-handle-horizontal-margin: 0 16px;
  --mat-slide-toggle-selected-handle-color: var(--color-v3-surface);
  --mat-slide-toggle-selected-focus-handle-color: var(--color-v3-surface);
  --mat-slide-toggle-selected-hover-handle-color: var(--color-v3-surface);
  --mat-slide-toggle-unselected-handle-color: var(--color-v3-text-var);
  --mat-slide-toggle-unselected-focus-handle-color: var(--color-v3-text-var);
  --mat-slide-toggle-unselected-hover-handle-color: var(--color-v3-text-var);
  --mat-slide-toggle-selected-focus-track-color: var(--color-v3-text);
  --mat-slide-toggle-selected-track-color: var(--color-v3-text);
  --mat-slide-toggle-selected-hover-track-color: var(--color-v3-text);
  --mat-slide-toggle-unselected-focus-track-color: var(--color-v3-surface-container-highest);
  --mat-slide-toggle-unselected-track-color: var(--color-v3-surface-container-highest);
  --mat-slide-toggle-unselected-hover-track-color: var(--color-v3-surface-container-highest);
  --mat-slide-toggle-track-outline-color: var(--color-v3-outline);
  --mat-slide-toggle-label-text-color: var(--color-v3-text);
  --mat-slide-toggle-label-text-size: 14px;
  --mat-slide-toggle-label-text-line-height: 20px;
  --mat-slide-toggle-label-text-weight: 500;
  --mat-select-panel-background-color: var(--color-v3-surface-container);
  --mat-form-field-outlined-outline-color: var(--color-v3-outline-var);
  --mat-form-field-outlined-focus-outline-color: var(--color-v3-text-var);
  --mat-form-field-outlined-focus-outline-width: 1px;
  --mat-form-field-outlined-hover-outline-color: var(--color-v3-outline);
  --mat-form-field-outlined-container-shape: 12px;
  --mat-menu-container-shape: 8px;
  --mat-menu-container-color: var(--color-v3-surface-container);
  --mat-menu-container-elevation-shadow: 0px 4px 8px 3px rgba(0, 0, 0, 0.05);
  --mat-menu-item-label-text-size: 14px;
  --mat-menu-item-label-text-color: var(--color-v3-text);
  --mat-menu-item-label-text-weight: 500;
}

/* Material 3 system tokens on html scope (source: html .dark-theme) */
html .dark-theme {
  color-scheme: dark;
  --mat-sys-background: light-dark(#fff, #141313);
  --mat-sys-error: light-dark(#ba1a1a, #ffb4ab);
  --mat-sys-error-container: light-dark(#ffdad6, #93000a);
  --mat-sys-inverse-on-surface: light-dark(#f4f0ef, #313030);
  --mat-sys-inverse-primary: light-dark(#ababab, #525253);
  --mat-sys-inverse-surface: light-dark(#313030, #e5e2e1);
  --mat-sys-on-background: light-dark(#1c1b1b, #e5e2e1);
  --mat-sys-on-error: light-dark(#fff, #690005);
  --mat-sys-on-error-container: light-dark(#93000a, #ffdad6);
  --mat-sys-on-primary: light-dark(#fdfcfc, #1b1c1c);
  --mat-sys-on-primary-container: light-dark(#3b3b3c, #c7c6c6);
  --mat-sys-on-primary-fixed: light-dark(#000, #000);
  --mat-sys-on-primary-fixed-variant: light-dark(#3b3b3c, #3b3b3c);
  --mat-sys-on-secondary: light-dark(#fff, #303030);
  --mat-sys-on-secondary-container: light-dark(#474746, #e4e2e1);
  --mat-sys-on-secondary-fixed: light-dark(#1b1c1c, #1b1c1c);
  --mat-sys-on-secondary-fixed-variant: light-dark(#474746, #474746);
  --mat-sys-on-surface: light-dark(#1c1b1b, #e5e2e1);
  --mat-sys-on-surface-variant: light-dark(#444748, #c4c7c7);
  --mat-sys-on-tertiary: light-dark(#fdfcfc, #1b1c1c);
  --mat-sys-on-tertiary-container: light-dark(#3b3b3c, #c7c6c6);
  --mat-sys-on-tertiary-fixed: light-dark(#000, #000);
  --mat-sys-on-tertiary-fixed-variant: light-dark(#3b3b3c, #3b3b3c);
  --mat-sys-outline: light-dark(#747878, #8e9192);
  --mat-sys-outline-variant: light-dark(#c4c7c7, #444748);
  --mat-sys-primary: light-dark(#525253, #ababab);
  --mat-sys-primary-container: light-dark(#c7c6c6, #3b3b3c);
  --mat-sys-primary-fixed: light-dark(#c7c6c6, #c7c6c6);
  --mat-sys-primary-fixed-dim: light-dark(#ababab, #ababab);
  --mat-sys-scrim: light-dark(#000, #000);
  --mat-sys-secondary: light-dark(#5f5e5e, #c8c6c5);
  --mat-sys-secondary-container: light-dark(#e4e2e1, #474746);
  --mat-sys-secondary-fixed: light-dark(#e4e2e1, #e4e2e1);
  --mat-sys-secondary-fixed-dim: light-dark(#c8c6c5, #c8c6c5);
  --mat-sys-shadow: light-dark(#000, #000);
  --mat-sys-surface: light-dark(#fff, #141313);
  --mat-sys-surface-bright: light-dark(#fff, #37393b);
  --mat-sys-surface-container: light-dark(#f0f4f9, #1e1f20);
  --mat-sys-surface-container-high: light-dark(#e9eef6, #282a2c);
  --mat-sys-surface-container-highest: light-dark(#dde3ea, #333537);
  --mat-sys-surface-container-low: light-dark(#f8fafd, #1b1b1b);
  --mat-sys-surface-container-lowest: light-dark(#fff, #0e0e0e);
  --mat-sys-surface-dim: light-dark(#d3dbe5, #131313);
  --mat-sys-surface-tint: light-dark(#6991d6, #d1e1ff);
  --mat-sys-surface-variant: light-dark(#e0e3e3, #444748);
  --mat-sys-tertiary: light-dark(#525253, #ababab);
  --mat-sys-tertiary-container: light-dark(#c7c6c6, #3b3b3c);
  --mat-sys-tertiary-fixed: light-dark(#c7c6c6, #c7c6c6);
  --mat-sys-tertiary-fixed-dim: light-dark(#ababab, #ababab);
  --mat-sys-info: light-dark(#1157ce, #a1c9ff);
  --mat-sys-on-info: light-dark(#fff, #012c6f);
  --mat-sys-info-container: light-dark(#d0e4ff, #04409f);
  --mat-sys-on-info-container: light-dark(#04409f, #d0e4ff);
  --mat-sys-success: light-dark(#006c35, #80da88);
  --mat-sys-on-success: light-dark(#fff, #00381f);
  --mat-sys-success-container: light-dark(#beefbb, #00522c);
  --mat-sys-on-success-container: light-dark(#00522c, #beefbb);
  --mat-sys-warning: light-dark(#8f4e06, #fcbd00);
  --mat-sys-on-warning: light-dark(#fff, #4d2600);
  --mat-sys-warning-container: light-dark(#ffe07c, #6d3a01);
  --mat-sys-on-warning-container: light-dark(#6d3a01, #ffe07c);
  --mat-sys-link: light-dark(#1157ce, #a1c9ff);
  --mat-sys-link-hover: light-dark(#04409f, #d0e4ff);
  --mat-sys-link-visited: light-dark(#7438d2, #d9bafd);
  --mat-sys-blue: light-dark(#1157ce, #a1c9ff);
  --mat-sys-on-blue: light-dark(#fff, #012c6f);
  --mat-sys-blue-container: light-dark(#d0e4ff, #04409f);
  --mat-sys-on-blue-container: light-dark(#04409f, #d0e4ff);
  --mat-sys-red: light-dark(#b3251e, #ffb3ae);
  --mat-sys-on-red: light-dark(#fff, #60150f);
  --mat-sys-red-container: light-dark(#ffdadc, #8a1a16);
  --mat-sys-on-red-container: light-dark(#8a1a16, #ffdadc);
  --mat-sys-yellow: light-dark(#8f4e06, #fcbd00);
  --mat-sys-on-yellow: light-dark(#fff, #4d2600);
  --mat-sys-yellow-container: light-dark(#ffe07c, #6d3a01);
  --mat-sys-on-yellow-container: light-dark(#6d3a01, #ffe07c);
  --mat-sys-green: light-dark(#006c35, #80da88);
  --mat-sys-on-green: light-dark(#fff, #00381f);
  --mat-sys-green-container: light-dark(#beefbb, #00522c);
  --mat-sys-on-green-container: light-dark(#00522c, #beefbb);
  --mat-sys-orange: light-dark(#9a4600, #ffb683);
  --mat-sys-on-orange: light-dark(#fff, #522302);
  --mat-sys-orange-container: light-dark(#ffdcc3, #753403);
  --mat-sys-on-orange-container: light-dark(#753403, #ffdcc3);
  --mat-sys-pink: light-dark(#b60d6e, #ffaee4);
  --mat-sys-on-pink: light-dark(#fff, #620438);
  --mat-sys-pink-container: light-dark(#ffd8ef, #8d0053);
  --mat-sys-on-pink-container: light-dark(#8d0053, #ffd8ef);
  --mat-sys-purple: light-dark(#7438d2, #d9bafd);
  --mat-sys-on-purple: light-dark(#fff, #400b84);
  --mat-sys-purple-container: light-dark(#eedcfe, #5629a4);
  --mat-sys-on-purple-container: light-dark(#5629a4, #eedcfe);
  --mat-sys-cyan: light-dark(#00687c, #60d5f3);
  --mat-sys-on-cyan: light-dark(#fff, #003641);
  --mat-sys-cyan-container: light-dark(#acedff, #004e5d);
  --mat-sys-on-cyan-container: light-dark(#004e5d, #acedff);
  --mat-sys-grey: light-dark(#5e5e5e, #c7c7c7);
  --mat-sys-on-grey: light-dark(#fff, #303030);
  --mat-sys-grey-container: light-dark(#e3e3e3, #474747);
  --mat-sys-on-grey-container: light-dark(#474747, #e3e3e3);
  --mat-sys-neutral-variant20: #2d3132;
  --mat-sys-neutral10: #1c1b1b;
  --mat-sys-level0: 0px 0px 0px 0px rgba(0, 0, 0, 0.2), 0px 0px 0px 0px rgba(0, 0, 0, 0.14), 0px 0px 0px 0px rgba(0, 0, 0, 0.12);
  --mat-sys-level1: 0px 2px 1px -1px rgba(0, 0, 0, 0.2), 0px 1px 1px 0px rgba(0, 0, 0, 0.14), 0px 1px 3px 0px rgba(0, 0, 0, 0.12);
  --mat-sys-level2: 0px 3px 3px -2px rgba(0, 0, 0, 0.2), 0px 3px 4px 0px rgba(0, 0, 0, 0.14), 0px 1px 8px 0px rgba(0, 0, 0, 0.12);
  --mat-sys-level3: 0px 3px 5px -1px rgba(0, 0, 0, 0.2), 0px 6px 10px 0px rgba(0, 0, 0, 0.14), 0px 1px 18px 0px rgba(0, 0, 0, 0.12);
  --mat-sys-level4: 0px 5px 5px -3px rgba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0, 0, 0, 0.12);
  --mat-sys-level5: 0px 7px 8px -4px rgba(0, 0, 0, 0.2), 0px 12px 17px 2px rgba(0, 0, 0, 0.14), 0px 5px 22px 4px rgba(0, 0, 0, 0.12);
  --mat-sys-body-large: 400 1rem / 1.5rem Inter, sans-serif;
  --mat-sys-body-large-font: Inter, sans-serif;
  --mat-sys-body-large-line-height: 1.5rem;
  --mat-sys-body-large-size: 1rem;
  --mat-sys-body-large-tracking: 0;
  --mat-sys-body-large-weight: 400;
  --mat-sys-body-medium: 400 0.875rem / 1.25rem Inter, sans-serif;
  --mat-sys-body-medium-font: Inter, sans-serif;
  --mat-sys-body-medium-line-height: 1.25rem;
  --mat-sys-body-medium-size: 0.875rem;
  --mat-sys-body-medium-tracking: 0;
  --mat-sys-body-medium-weight: 400;
  --mat-sys-body-small: 400 0.75rem / 1rem Inter, sans-serif;
  --mat-sys-body-small-font: Inter, sans-serif;
  --mat-sys-body-small-line-height: 1rem;
  --mat-sys-body-small-size: 0.75rem;
  --mat-sys-body-small-tracking: 0.006rem;
  --mat-sys-body-small-weight: 400;
  --mat-sys-display-large: 400 3.562rem / 4rem Inter, sans-serif;
  --mat-sys-display-large-font: Inter, sans-serif;
  --mat-sys-display-large-line-height: 4rem;
  --mat-sys-display-large-size: 3.562rem;
  --mat-sys-display-large-tracking: 0;
  --mat-sys-display-large-weight: 400;
  --mat-sys-display-medium: 400 2.812rem / 3.25rem Inter, sans-serif;
  --mat-sys-display-medium-font: Inter, sans-serif;
  --mat-sys-display-medium-line-height: 3.25rem;
  --mat-sys-display-medium-size: 2.812rem;
  --mat-sys-display-medium-tracking: 0;
  --mat-sys-display-medium-weight: 400;
  --mat-sys-display-small: 400 2.25rem / 2.75rem Inter, sans-serif;
  --mat-sys-display-small-font: Inter, sans-serif;
  --mat-sys-display-small-line-height: 2.75rem;
  --mat-sys-display-small-size: 2.25rem;
  --mat-sys-display-small-tracking: 0;
  --mat-sys-display-small-weight: 400;
  --mat-sys-headline-large: 400 2rem / 2.5rem Inter, sans-serif;
  --mat-sys-headline-large-font: Inter, sans-serif;
  --mat-sys-headline-large-line-height: 2.5rem;
  --mat-sys-headline-large-size: 2rem;
  --mat-sys-headline-large-tracking: 0;
  --mat-sys-headline-large-weight: 400;
  --mat-sys-headline-medium: 400 1.75rem / 2.25rem Inter, sans-serif;
  --mat-sys-headline-medium-font: Inter, sans-serif;
  --mat-sys-headline-medium-line-height: 2.25rem;
  --mat-sys-headline-medium-size: 1.75rem;
  --mat-sys-headline-medium-tracking: 0;
  --mat-sys-headline-medium-weight: 400;
  --mat-sys-headline-small: 400 1.5rem / 2rem Inter, sans-serif;
  --mat-sys-headline-small-font: Inter, sans-serif;
  --mat-sys-headline-small-line-height: 2rem;
  --mat-sys-headline-small-size: 1.5rem;
  --mat-sys-headline-small-tracking: 0;
  --mat-sys-headline-small-weight: 400;
  --mat-sys-label-large: 500 0.875rem / 1.25rem Inter, sans-serif;
  --mat-sys-label-large-font: Inter, sans-serif;
  --mat-sys-label-large-line-height: 1.25rem;
  --mat-sys-label-large-size: 0.875rem;
  --mat-sys-label-large-tracking: 0;
  --mat-sys-label-large-weight: 500;
  --mat-sys-label-large-weight-prominent: 700;
  --mat-sys-label-medium: 500 0.75rem / 1rem Inter, sans-serif;
  --mat-sys-label-medium-font: Inter, sans-serif;
  --mat-sys-label-medium-line-height: 1rem;
  --mat-sys-label-medium-size: 0.75rem;
  --mat-sys-label-medium-tracking: 0.006rem;
  --mat-sys-label-medium-weight: 500;
  --mat-sys-label-medium-weight-prominent: 700;
  --mat-sys-label-small: 500 0.688rem / 1rem Inter, sans-serif;
  --mat-sys-label-small-font: Inter, sans-serif;
  --mat-sys-label-small-line-height: 1rem;
  --mat-sys-label-small-size: 0.688rem;
  --mat-sys-label-small-tracking: 0.006rem;
  --mat-sys-label-small-weight: 500;
  --mat-sys-title-large: 400 1.375rem / 1.75rem Inter, sans-serif;
  --mat-sys-title-large-font: Inter, sans-serif;
  --mat-sys-title-large-line-height: 1.75rem;
  --mat-sys-title-large-size: 1.375rem;
  --mat-sys-title-large-tracking: 0;
  --mat-sys-title-large-weight: 400;
  --mat-sys-title-medium: 500 1rem / 1.5rem Inter, sans-serif;
  --mat-sys-title-medium-font: Inter, sans-serif;
  --mat-sys-title-medium-line-height: 1.5rem;
  --mat-sys-title-medium-size: 1rem;
  --mat-sys-title-medium-tracking: 0;
  --mat-sys-title-medium-weight: 500;
  --mat-sys-title-small: 500 0.875rem / 1.25rem Inter, sans-serif;
  --mat-sys-title-small-font: Inter, sans-serif;
  --mat-sys-title-small-line-height: 1.25rem;
  --mat-sys-title-small-size: 0.875rem;
  --mat-sys-title-small-tracking: 0;
  --mat-sys-title-small-weight: 500;
  --mat-sys-corner-extra-large: 28px;
  --mat-sys-corner-extra-large-top: 28px 28px 0 0;
  --mat-sys-corner-extra-small: 4px;
  --mat-sys-corner-extra-small-top: 4px 4px 0 0;
  --mat-sys-corner-full: 9999px;
  --mat-sys-corner-large: 16px;
  --mat-sys-corner-large-end: 0 16px 16px 0;
  --mat-sys-corner-large-start: 16px 0 0 16px;
  --mat-sys-corner-large-top: 16px 16px 0 0;
  --mat-sys-corner-medium: 12px;
  --mat-sys-corner-none: 0;
  --mat-sys-corner-small: 8px;
  --mat-sys-dragged-state-layer-opacity: 0.16;
  --mat-sys-focus-state-layer-opacity: 0.12;
  --mat-sys-hover-state-layer-opacity: 0.08;
  --mat-sys-pressed-state-layer-opacity: 0.12;
}

html,
body,
body.light-theme,
body.dark-theme {
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  font-family: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;
  letter-spacing: normal;
  --mat-icon-button-touch-target-display: none;
}

.light-theme,
.dark-theme {
  scrollbar-color: var(--color-v3-outline) transparent;
}

.light-theme,
.dark-theme {
  --mat-chip-outline-color: var(--color-v3-outline);
  --mat-chip-disabled-outline-color: var(--color-v3-text-disable);
}

.light-theme,
.dark-theme {
  --mat-form-field-outlined-outline-color: var(--color-v3-outline);
  --mat-form-field-outlined-hover-outline-color: var(--color-v3-outline);
  --mat-form-field-outlined-focus-outline-color: var(--color-v3-text-var);
  --mat-form-field-outlined-focus-outline-width: 1px;
  --mat-form-field-outlined-disabled-outline-color: var(--color-v3-text-disable);
}

.light-theme,
.dark-theme {
  --mat-divider-color: var(--color-v3-outline-var);
}

.dark-theme {
  --xap-color-surface: var(--color-v3-surface-container-high);
  --xap-color-on-surface: var(--color-on-surface);
  --xap-color-primary: var(--color-v3-text-link);
  --xap-color-on-primary: var(--color-v3-text-on-button-reverse);
}

.dark-theme {
  --mat-app-background-color: #303030;
  --mat-app-text-color: white;
  --mat-app-elevation-shadow-level-0: 0px 0px 0px 0px rgba(0, 0, 0, 0.2), 0px 0px 0px 0px rgba(0, 0, 0, 0.14), 0px 0px 0px 0px rgba(0, 0, 0, 0.12);
  --mat-app-elevation-shadow-level-1: 0px 2px 1px -1px rgba(0, 0, 0, 0.2), 0px 1px 1px 0px rgba(0, 0, 0, 0.14), 0px 1px 3px 0px rgba(0, 0, 0, 0.12);
  --mat-app-elevation-shadow-level-2: 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12);
  --mat-app-elevation-shadow-level-3: 0px 3px 3px -2px rgba(0, 0, 0, 0.2), 0px 3px 4px 0px rgba(0, 0, 0, 0.14), 0px 1px 8px 0px rgba(0, 0, 0, 0.12);
  --mat-app-elevation-shadow-level-4: 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12);
  --mat-app-elevation-shadow-level-5: 0px 3px 5px -1px rgba(0, 0, 0, 0.2), 0px 5px 8px 0px rgba(0, 0, 0, 0.14), 0px 1px 14px 0px rgba(0, 0, 0, 0.12);
  --mat-app-elevation-shadow-level-6: 0px 3px 5px -1px rgba(0, 0, 0, 0.2), 0px 6px 10px 0px rgba(0, 0, 0, 0.14), 0px 1px 18px 0px rgba(0, 0, 0, 0.12);
  --mat-app-elevation-shadow-level-7: 0px 4px 5px -2px rgba(0, 0, 0, 0.2), 0px 7px 10px 1px rgba(0, 0, 0, 0.14), 0px 2px 16px 1px rgba(0, 0, 0, 0.12);
  --mat-app-elevation-shadow-level-8: 0px 5px 5px -3px rgba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0, 0, 0, 0.12);
  --mat-app-elevation-shadow-level-9: 0px 5px 6px -3px rgba(0, 0, 0, 0.2), 0px 9px 12px 1px rgba(0, 0, 0, 0.14), 0px 3px 16px 2px rgba(0, 0, 0, 0.12);
  --mat-app-elevation-shadow-level-10: 0px 6px 6px -3px rgba(0, 0, 0, 0.2), 0px 10px 14px 1px rgba(0, 0, 0, 0.14), 0px 4px 18px 3px rgba(0, 0, 0, 0.12);
  --mat-app-elevation-shadow-level-11: 0px 6px 7px -4px rgba(0, 0, 0, 0.2), 0px 11px 15px 1px rgba(0, 0, 0, 0.14), 0px 4px 20px 3px rgba(0, 0, 0, 0.12);
  --mat-app-elevation-shadow-level-12: 0px 7px 8px -4px rgba(0, 0, 0, 0.2), 0px 12px 17px 2px rgba(0, 0, 0, 0.14), 0px 5px 22px 4px rgba(0, 0, 0, 0.12);
  --mat-app-elevation-shadow-level-13: 0px 7px 8px -4px rgba(0, 0, 0, 0.2), 0px 13px 19px 2px rgba(0, 0, 0, 0.14), 0px 5px 24px 4px rgba(0, 0, 0, 0.12);
  --mat-app-elevation-shadow-level-14: 0px 7px 9px -4px rgba(0, 0, 0, 0.2), 0px 14px 21px 2px rgba(0, 0, 0, 0.14), 0px 5px 26px 4px rgba(0, 0, 0, 0.12);
  --mat-app-elevation-shadow-level-15: 0px 8px 9px -5px rgba(0, 0, 0, 0.2), 0px 15px 22px 2px rgba(0, 0, 0, 0.14), 0px 6px 28px 5px rgba(0, 0, 0, 0.12);
  --mat-app-elevation-shadow-level-16: 0px 8px 10px -5px rgba(0, 0, 0, 0.2), 0px 16px 24px 2px rgba(0, 0, 0, 0.14), 0px 6px 30px 5px rgba(0, 0, 0, 0.12);
  --mat-app-elevation-shadow-level-17: 0px 8px 11px -5px rgba(0, 0, 0, 0.2), 0px 17px 26px 2px rgba(0, 0, 0, 0.14), 0px 6px 32px 5px rgba(0, 0, 0, 0.12);
  --mat-app-elevation-shadow-level-18: 0px 9px 11px -5px rgba(0, 0, 0, 0.2), 0px 18px 28px 2px rgba(0, 0, 0, 0.14), 0px 7px 34px 6px rgba(0, 0, 0, 0.12);
  --mat-app-elevation-shadow-level-19: 0px 9px 12px -6px rgba(0, 0, 0, 0.2), 0px 19px 29px 2px rgba(0, 0, 0, 0.14), 0px 7px 36px 6px rgba(0, 0, 0, 0.12);
  --mat-app-elevation-shadow-level-20: 0px 10px 13px -6px rgba(0, 0, 0, 0.2), 0px 20px 31px 3px rgba(0, 0, 0, 0.14), 0px 8px 38px 7px rgba(0, 0, 0, 0.12);
  --mat-app-elevation-shadow-level-21: 0px 10px 13px -6px rgba(0, 0, 0, 0.2), 0px 21px 33px 3px rgba(0, 0, 0, 0.14), 0px 8px 40px 7px rgba(0, 0, 0, 0.12);
  --mat-app-elevation-shadow-level-22: 0px 10px 14px -6px rgba(0, 0, 0, 0.2), 0px 22px 35px 3px rgba(0, 0, 0, 0.14), 0px 8px 42px 7px rgba(0, 0, 0, 0.12);
  --mat-app-elevation-shadow-level-23: 0px 11px 14px -7px rgba(0, 0, 0, 0.2), 0px 23px 36px 3px rgba(0, 0, 0, 0.14), 0px 9px 44px 8px rgba(0, 0, 0, 0.12);
  --mat-app-elevation-shadow-level-24: 0px 11px 15px -7px rgba(0, 0, 0, 0.2), 0px 24px 38px 3px rgba(0, 0, 0, 0.14), 0px 9px 46px 8px rgba(0, 0, 0, 0.12);
  --mat-ripple-color: color-mix(in srgb, white 12%, transparent);
  --mat-option-selected-state-label-text-color: #1a73e8;
  --mat-option-label-text-color: white;
  --mat-option-hover-state-layer-color: color-mix(in srgb, white 4%, transparent);
  --mat-option-focus-state-layer-color: color-mix(in srgb, white 12%, transparent);
  --mat-option-selected-state-layer-color: color-mix(in srgb, white 12%, transparent);
  --mat-optgroup-label-text-color: white;
  --mat-pseudo-checkbox-full-selected-icon-color: #007bc9;
  --mat-pseudo-checkbox-full-selected-checkmark-color: #303030;
  --mat-pseudo-checkbox-full-unselected-icon-color: rgba(255, 255, 255, 0.7);
  --mat-pseudo-checkbox-full-disabled-selected-checkmark-color: #303030;
  --mat-pseudo-checkbox-full-disabled-unselected-icon-color: color-mix(in srgb, white 38%, transparent);
  --mat-pseudo-checkbox-full-disabled-selected-icon-color: color-mix(in srgb, white 38%, transparent);
  --mat-pseudo-checkbox-minimal-selected-checkmark-color: #007bc9;
  --mat-pseudo-checkbox-minimal-disabled-selected-checkmark-color: color-mix(in srgb, white 38%, transparent);
  --mat-option-label-text-font: Inter, sans-serif;
  --mat-option-label-text-line-height: 24px;
  --mat-option-label-text-size: 16px;
  --mat-option-label-text-tracking: normal;
  --mat-option-label-text-weight: 400;
  --mat-optgroup-label-text-font: Inter, sans-serif;
  --mat-optgroup-label-text-line-height: 24px;
  --mat-optgroup-label-text-size: 16px;
  --mat-optgroup-label-text-tracking: normal;
  --mat-optgroup-label-text-weight: 400;
}

/**
 * Dark admin: DeliveryU --du-* tokens (custom-overrides cards use these — were stuck on light).
 * Bootstrap / Vuexy --bs-* surfaces + card text + nav + tables + forms.
 * Requires :root:has(> body.dark-theme) token definitions (admin-v3-material-theme.scss).
 */
html[data-bs-theme=dark]:has(body.dark-theme) {
  /* --- DeliveryU design system (used by custom-overrides cards, sidebar, etc.) --- */
  --du-bg-body: var(--color-v3-surface);
  --du-bg-surface: var(--color-v3-surface-container);
  --du-bg-surface-alt: var(--color-v3-surface-container-high);
  --du-text-heading: var(--color-v3-text);
  --du-text-primary: var(--color-v3-text);
  --du-text-secondary: var(--color-v3-text-var);
  --du-text-disabled: var(--color-v3-text-disable);
  --du-border-color: var(--color-v3-outline-var);
  --du-border-active: var(--color-v3-outline-accent);
  --du-primary: var(--color-v3-text-link);
  --du-primary-hover: color-mix(in srgb, var(--color-v3-text-link) 88%, #ffffff);
  --du-primary-active: color-mix(in srgb, var(--color-v3-text-link) 78%, #ffffff);
  --du-primary-light: color-mix(in srgb, var(--color-v3-text-link) 22%, transparent);
  --du-primary-contrast: var(--color-v3-text-on-button-reverse);
  --du-secondary: var(--color-v3-text-var);
  --du-secondary-hover: var(--color-v3-text);
  --du-secondary-light: color-mix(in srgb, var(--color-v3-text-var) 18%, transparent);
  --du-success: #3ddb85;
  --du-success-light: color-mix(in srgb, #3ddb85 22%, transparent);
  --du-warning: #ffb74d;
  --du-warning-light: color-mix(in srgb, #ffb74d 22%, transparent);
  --du-danger: #ff8a80;
  --du-danger-light: color-mix(in srgb, #ff8a80 22%, transparent);
  --du-info: var(--color-v3-text-link);
  --du-info-light: color-mix(in srgb, var(--color-v3-text-link) 22%, transparent);
  --mat-sys-on-surface: var(--color-v3-text);
  --mat-sys-surface: var(--color-v3-surface-container);
  --mat-sys-surface-container: var(--color-v3-surface);
  --mat-sys-outline-variant: var(--color-v3-outline-var);
  --mat-sys-link: var(--color-v3-text-link);
  --mat-sys-link-hover: color-mix(in srgb, var(--color-v3-text-link) 80%, #fff);
  /* --- Vuexy / template paper + base text (cards use --bs-paper-bg) --- */
  --bs-paper-bg: var(--color-v3-surface-container);
  --bs-paper-bg-rgb: 31, 31, 31;
  --bs-base-color: var(--color-v3-text);
  --bs-base-color-rgb: 212, 212, 212;
  --bs-body-color: var(--color-v3-text);
  --bs-body-color-rgb: 212, 212, 212;
  --bs-body-bg: var(--color-v3-surface);
  --bs-body-bg-rgb: 25, 25, 25;
  --bs-secondary-color: var(--color-v3-text-var);
  --bs-secondary-bg: var(--color-v3-surface-container-high);
  --bs-tertiary-color: color-mix(in srgb, var(--color-v3-text) 50%, transparent);
  --bs-tertiary-bg: var(--color-v3-surface-container-highest);
  --bs-emphasis-color: var(--color-v3-text-on-button);
  --bs-heading-color: var(--color-v3-text);
  --bs-link-color: var(--color-v3-text-link);
  --bs-link-hover-color: color-mix(in srgb, var(--color-v3-text-link) 85%, #fff);
  --bs-border-color: var(--color-v3-outline);
  --bs-border-color-translucent: color-mix(in srgb, var(--color-v3-outline) 35%, transparent);
  /* --- Card component variables (card-body uses --bs-card-color; subtitle uses base mix) --- */
  --bs-card-bg: var(--color-v3-surface-container);
  --bs-card-color: var(--color-v3-text);
  --bs-card-title-color: var(--color-v3-text);
  --bs-card-subtitle-color: var(--color-v3-text-var);
  --bs-card-cap-bg: var(--color-v3-surface-container-high);
  --bs-card-cap-color: var(--color-v3-text);
  --bs-card-border-color: var(--color-v3-outline-var);
  --bs-card-border-width: 1px;
  --bs-card-box-shadow: var(--v3-shadow-sm);
  --bs-list-group-color: var(--color-v3-text);
  --bs-list-group-bg: var(--color-v3-surface-container);
  --bs-list-group-border-color: var(--color-v3-outline-var);
  --bs-dropdown-color: var(--color-v3-text);
  --bs-dropdown-bg: var(--color-v3-surface-container-high);
  --bs-dropdown-link-color: var(--color-v3-text);
  --bs-dropdown-link-hover-color: var(--color-v3-text);
  --bs-dropdown-link-hover-bg: var(--color-v3-hover);
  --bs-dropdown-header-color: var(--color-v3-text-var);
  --bs-dropdown-border-color: var(--color-v3-outline-var);
  --bs-modal-color: var(--color-v3-text);
  --bs-modal-bg: var(--color-v3-surface-container);
  --bs-modal-border-color: var(--color-v3-outline-var);
  --bs-table-color: var(--color-v3-text);
  --bs-table-bg: transparent;
  --bs-table-striped-color: var(--color-v3-text);
  --bs-table-striped-bg: color-mix(in srgb, var(--color-v3-surface-container-high) 55%, transparent);
  --bs-table-hover-color: var(--color-v3-text);
  --bs-table-hover-bg: var(--color-v3-hover);
  --bs-table-border-color: var(--color-v3-outline-var);
  --bs-table-active-bg: var(--color-v3-surface-container-highest);
  --bs-table-active-color: var(--color-v3-text);
  --bs-form-control-bg: var(--color-v3-surface-container-high);
  --bs-form-control-color: var(--color-v3-text);
  --bs-form-control-border-color: var(--color-v3-outline-var);
  --bs-form-select-bg: var(--color-v3-surface-container-high);
  --bs-form-select-color: var(--color-v3-text);
  --bs-form-select-border-color: var(--color-v3-outline-var);
  --bs-form-valid-color: var(--du-success);
  --bs-form-invalid-color: var(--du-danger);
  --bs-form-check-label-color: var(--color-v3-text);
  --bs-form-label-color: var(--color-v3-text);
  --bs-input-bg: var(--color-v3-surface-container-high);
  --bs-input-color: var(--color-v3-text);
  --bs-input-border-color: var(--color-v3-outline-var);
  --bs-input-focus-border-color: var(--color-v3-outline-accent);
  --bs-input-placeholder-color: var(--color-v3-text-var);
  --bs-navbar-color: var(--color-v3-text);
  --bs-navbar-hover-color: var(--color-v3-text-link);
  --bs-navbar-disabled-color: var(--color-v3-text-disable);
  --bs-navbar-active-color: var(--color-v3-text-link);
  --bs-navbar-brand-color: var(--color-v3-text);
  --bs-navbar-brand-hover-color: var(--color-v3-text-link);
  --bs-breadcrumb-divider-color: var(--color-v3-text-var);
  --bs-breadcrumb-item-active-color: var(--color-v3-text-var);
  --bs-popover-bg: var(--color-v3-surface-container-high);
  --bs-popover-body-color: var(--color-v3-text);
  --bs-popover-header-color: var(--color-v3-text);
  --bs-popover-header-bg: var(--color-v3-surface-container-highest);
  --bs-popover-border-color: var(--color-v3-outline-var);
  --bs-tooltip-color: var(--color-v3-surface);
  --bs-tooltip-bg: var(--color-v3-text);
  --bs-toast-color: var(--color-v3-text);
  --bs-toast-bg: var(--color-v3-surface-container-high);
  --bs-toast-header-color: var(--color-v3-text);
  --bs-accordion-color: var(--color-v3-text);
  --bs-accordion-bg: var(--color-v3-surface-container);
  --bs-accordion-border-color: var(--color-v3-outline-var);
  --bs-accordion-btn-color: var(--color-v3-text);
  --bs-accordion-active-color: var(--color-v3-text);
  --bs-accordion-active-bg: var(--color-v3-surface-container-high);
  --bs-accordion-btn-icon: var(--color-v3-text-var);
  --bs-accordion-btn-active-icon: var(--color-v3-text);
  /* Nav + tabs */
  --bs-nav-link-color: var(--color-v3-text-var);
  --bs-nav-link-hover-color: var(--color-v3-text);
  --bs-nav-tabs-link-active-color: var(--color-v3-text);
  --bs-nav-tabs-link-active-bg: var(--color-v3-surface-container-high);
  --bs-nav-tabs-link-hover-border-color: var(--color-v3-outline);
  --bs-nav-tabs-border-color: var(--color-v3-outline-var);
  --bs-nav-pills-link-active-color: var(--color-v3-text-on-button);
  --bs-nav-pills-box-shadow: none;
  /* Pagination (DataTables + Bootstrap) */
  --bs-pagination-color: var(--color-v3-text);
  --bs-pagination-bg: color-mix(in srgb, var(--color-v3-text) 6%, var(--color-v3-surface-container-high));
  --bs-pagination-border-color: var(--color-v3-outline-var);
  --bs-pagination-hover-color: var(--color-v3-text-link);
  --bs-pagination-hover-bg: var(--color-v3-hover);
  --bs-pagination-hover-border-color: var(--color-v3-outline);
  --bs-pagination-focus-color: var(--color-v3-text-link);
  --bs-pagination-focus-bg: var(--color-v3-hover);
  --bs-pagination-focus-box-shadow: 0 0 0 0.15rem color-mix(in srgb, var(--color-v3-text-link) 28%, transparent);
  --bs-pagination-active-color: var(--color-v3-text-on-button);
  --bs-pagination-active-bg: var(--color-v3-text-link);
  --bs-pagination-active-border-color: var(--color-v3-text-link);
  --bs-pagination-disabled-color: var(--color-v3-text-disable);
  --bs-pagination-disabled-bg: color-mix(
      in srgb,
      var(--color-v3-text-disable) 12%,
      var(--color-v3-surface-container)
  );
  --bs-pagination-disabled-border-color: var(--color-v3-outline-var);
  /* Buttons (outline / light rely on base) */
  --bs-btn-color: var(--color-v3-text);
  --bs-btn-bg: var(--color-v3-button-container);
  --bs-btn-border-color: var(--color-v3-outline-var);
  --bs-btn-hover-color: var(--color-v3-text);
  --bs-btn-hover-bg: var(--color-v3-button-container-high);
  --bs-btn-hover-border-color: var(--color-v3-outline);
  --bs-btn-active-color: var(--color-v3-text);
  --bs-btn-active-bg: var(--color-v3-button-container-highest);
  --bs-btn-active-border-color: var(--color-v3-outline);
  --bs-btn-disabled-color: var(--color-v3-text-disable);
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: var(--color-v3-outline-var);
  --bs-btn-link-color: var(--color-v3-text-link);
  --bs-btn-link-hover-color: color-mix(in srgb, var(--color-v3-text-link) 82%, #fff);
  --bs-btn-link-disabled-color: var(--color-v3-text-disable);
  /* Input group addon */
  /* Focus ring (keyboard) */
  --bs-focus-ring-width: 0.15rem;
  --bs-focus-ring-opacity: 0.45;
  --bs-focus-ring-color: color-mix(in srgb, var(--color-v3-text-link) 55%, transparent);
  /* HR / dividers */
  --bs-border-width: 1px;
  /* Perfect scrollbar (custom-overrides :root) */
  --ps-thumb: #555;
  --ps-rail: var(--color-v3-outline-var);
  --ps-thumb-hover: #707070;
  --du-sidebar-nav-text: var(--color-v3-text-var);
  --du-sidebar-nav-hover-bg: var(--color-v3-hover);
  --du-sidebar-nav-active-text: var(--color-v3-text);
}

html[data-bs-theme=dark] body.dark-theme {
  color: var(--color-v3-text);
  background-color: var(--color-v3-surface);
}

html[data-bs-theme=dark] body.dark-theme #layout-menu.menu,
html[data-bs-theme=dark] body.dark-theme .layout-menu {
  background-color: var(--color-v3-surface-left-nav) !important;
  border-color: var(--color-v3-surface-left-nav-border) !important;
  color: var(--color-v3-text);
}

html[data-bs-theme=dark] body.dark-theme .layout-page,
html[data-bs-theme=dark] body.dark-theme .content-wrapper {
  background-color: var(--color-v3-surface);
  color: var(--color-v3-text);
}

html[data-bs-theme=dark] body.dark-theme .layout-navbar,
html[data-bs-theme=dark] body.dark-theme .layout-navbar.navbar-detached,
html[data-bs-theme=dark] body.dark-theme .bg-navbar-theme {
  background-color: var(--color-v3-surface-container) !important;
  color: var(--color-v3-text);
  border-color: var(--color-v3-outline-var) !important;
  box-shadow: var(--v3-shadow-sm) !important;
}

html[data-bs-theme=dark] body.dark-theme .footer,
html[data-bs-theme=dark] body.dark-theme .content-footer {
  background-color: var(--color-v3-surface-container);
  color: var(--color-v3-text-var);
  border-color: var(--color-v3-outline-var);
}

html[data-bs-theme=dark] body.dark-theme .card:not(:has(.card-datatable)) {
  background-color: var(--color-v3-surface-container) !important;
  border-color: var(--color-v3-outline-var) !important;
  color: var(--color-v3-text);
  box-shadow: var(--v3-shadow-sm);
}

html[data-bs-theme=dark] body.dark-theme .card:not(:has(.card-datatable)) .card-header,
html[data-bs-theme=dark] body.dark-theme .card:not(:has(.card-datatable)) .card-footer {
  color: var(--color-v3-text);
  border-color: var(--color-v3-outline-var) !important;
  margin-bottom: 10px;
}

html[data-bs-theme=dark] body.dark-theme .card-body {
  color: var(--color-v3-text);
}

html[data-bs-theme=dark] body.dark-theme .card-title,
html[data-bs-theme=dark] body.dark-theme .card-header,
html[data-bs-theme=dark] body.dark-theme h1,
html[data-bs-theme=dark] body.dark-theme h2,
html[data-bs-theme=dark] body.dark-theme h3,
html[data-bs-theme=dark] body.dark-theme h4,
html[data-bs-theme=dark] body.dark-theme h5,
html[data-bs-theme=dark] body.dark-theme h6,
html[data-bs-theme=dark] body.dark-theme .fw-semibold.text-heading {
  color: var(--color-v3-text) !important;
}

html[data-bs-theme=dark] body.dark-theme .card-subtitle,
html[data-bs-theme=dark] body.dark-theme small,
html[data-bs-theme=dark] body.dark-theme .small {
  color: var(--color-v3-text-var) !important;
}

html[data-bs-theme=dark] body.dark-theme .text-muted,
html[data-bs-theme=dark] body.dark-theme .text-body-secondary {
  color: var(--color-v3-text-var) !important;
}

html[data-bs-theme=dark] body.dark-theme .text-body,
html[data-bs-theme=dark] body.dark-theme .text-heading {
  color: var(--color-v3-text) !important;
}

html[data-bs-theme=dark] body.dark-theme .table {
  color: var(--color-v3-text);
}

html[data-bs-theme=dark] body.dark-theme .table thead th {
  color: var(--color-v3-text-var);
  border-color: var(--color-v3-outline-var);
}

html[data-bs-theme=dark] body.dark-theme .menu-inner .menu-link,
html[data-bs-theme=dark] body.dark-theme .menu-inner .menu-header {
  color: var(--color-v3-text);
}

html[data-bs-theme=dark] body.dark-theme .menu-inner .menu-link:hover {
  background-color: var(--color-v3-hover);
  color: var(--color-v3-text);
}

html[data-bs-theme=dark] body.dark-theme .menu-item.active > .menu-link {
  color: var(--color-v3-text-link);
}

html[data-bs-theme=dark] body.dark-theme .breadcrumb-item,
html[data-bs-theme=dark] body.dark-theme .breadcrumb-item a {
  color: var(--color-v3-text-var);
}

html[data-bs-theme=dark] body.dark-theme .breadcrumb-item.active {
  color: var(--color-v3-text);
}

html[data-bs-theme=dark] body.dark-theme .form-control,
html[data-bs-theme=dark] body.dark-theme .form-select {
  background-color: var(--color-v3-surface-container-high);
  color: var(--color-v3-text);
  border-color: var(--color-v3-outline-var);
}

html[data-bs-theme=dark] body.dark-theme .form-control::-moz-placeholder {
  color: var(--color-v3-text-var);
}

html[data-bs-theme=dark] body.dark-theme .form-control::placeholder {
  color: var(--color-v3-text-var);
}

html[data-bs-theme=dark] body.dark-theme .form-label,
html[data-bs-theme=dark] body.dark-theme label {
  color: var(--color-v3-text);
}

html[data-bs-theme=dark] body.dark-theme .dataTables_wrapper,
html[data-bs-theme=dark] body.dark-theme .dataTables_wrapper .dataTables_length,
html[data-bs-theme=dark] body.dark-theme .dataTables_wrapper .dataTables_filter,
html[data-bs-theme=dark] body.dark-theme .dataTables_wrapper .dataTables_info,
html[data-bs-theme=dark] body.dark-theme .dataTables_wrapper .dataTables_paginate {
  color: var(--color-v3-text);
}

html[data-bs-theme=dark] body.dark-theme .dataTables_wrapper .dataTables_filter input {
  background-color: var(--color-v3-surface-container-high);
  color: var(--color-v3-text);
  border-color: var(--color-v3-outline-var);
}

html[data-bs-theme=dark] body.dark-theme .select2-container--default .select2-selection--single,
html[data-bs-theme=dark] body.dark-theme .select2-container--default .select2-selection--multiple {
  background-color: var(--color-v3-surface-container-high) !important;
  border-color: var(--color-v3-outline-var) !important;
  color: var(--color-v3-text) !important;
}

html[data-bs-theme=dark] body.dark-theme .select2-container--default .select2-selection--single .select2-selection__rendered {
  color: var(--color-v3-text) !important;
}

html[data-bs-theme=dark] body.dark-theme .modal-content {
  background-color: var(--color-v3-surface-container);
  color: var(--color-v3-text);
  border-color: var(--color-v3-outline-var);
}

html[data-bs-theme=dark] body.dark-theme .modal-header,
html[data-bs-theme=dark] body.dark-theme .modal-footer {
  border-color: var(--color-v3-outline-var);
}

html[data-bs-theme=dark] body.dark-theme .dropdown-menu {
  background-color: var(--color-v3-surface-container-high);
  border-color: var(--color-v3-outline-var);
}

html[data-bs-theme=dark] body.dark-theme .dropdown-item {
  color: var(--color-v3-text);
}

html[data-bs-theme=dark] body.dark-theme .dropdown-item:hover,
html[data-bs-theme=dark] body.dark-theme .dropdown-item:focus {
  background-color: var(--color-v3-hover);
  color: var(--color-v3-text);
}

html[data-bs-theme=dark] body.dark-theme .list-group-item {
  background-color: var(--color-v3-surface-container);
  color: var(--color-v3-text);
  border-color: var(--color-v3-outline-var);
}

html[data-bs-theme=dark] body.dark-theme .alert {
  border-color: var(--color-v3-outline-var);
}

html[data-bs-theme=dark] body.dark-theme .border-bottom,
html[data-bs-theme=dark] body.dark-theme .border-top,
html[data-bs-theme=dark] body.dark-theme .border {
  border-color: var(--color-v3-outline-var) !important;
}

/* --- Override custom-overrides hardcoded light surfaces (higher specificity) --- */
html[data-bs-theme=dark] body.dark-theme aside#layout-menu.layout-menu {
  background-color: var(--color-v3-surface-left-nav) !important;
  border-inline-end-color: var(--color-v3-surface-left-nav-border) !important;
}
html[data-bs-theme=dark] body.dark-theme aside#layout-menu.layout-menu > .menu {
  background-color: var(--color-v3-surface-left-nav) !important;
}

html[data-bs-theme=dark] body.dark-theme .sidebar-user-footer {
  background: var(--color-v3-surface-left-nav) !important;
  border-top-color: var(--color-v3-surface-left-nav-border) !important;
}

html[data-bs-theme=dark] body.dark-theme .sidebar-user-footer .sidebar-user-dropdown {
  background-color: var(--color-v3-surface-container-high) !important;
  border-color: var(--color-v3-outline-var) !important;
  box-shadow: var(--v3-shadow-md) !important;
}

html[data-bs-theme=dark] body.dark-theme .sidebar-user-footer .sidebar-user-dropdown.user-dropdown-menu .ud-submenu {
  background-color: var(--color-v3-surface-container-high) !important;
  border-color: var(--color-v3-outline-var) !important;
  box-shadow: var(--v3-shadow-md) !important;
}

html[data-bs-theme=dark] body.dark-theme .user-dropdown-menu:not(.sidebar-user-dropdown) .ud-submenu {
  background-color: color-mix(in srgb, var(--color-v3-text) 6%, var(--color-v3-surface-container)) !important;
  border: 1px solid var(--color-v3-outline-var) !important;
}

/* --- Tables: cells + hover + borders --- */
html[data-bs-theme=dark] body.dark-theme .table > :not(caption) > * > * {
  border-bottom-color: var(--color-v3-outline-var);
  color: var(--color-v3-text);
}

html[data-bs-theme=dark] body.dark-theme .table tbody tr:not(.child):hover > * {
  background-color: var(--color-v3-hover);
  color: var(--color-v3-text);
}

html[data-bs-theme=dark] body.dark-theme .table-striped > tbody > tr:nth-of-type(odd) > * {
  color: var(--color-v3-text);
}

/* --- Nav tabs / pills --- */
html[data-bs-theme=dark] body.dark-theme .nav-tabs {
  border-bottom-color: var(--color-v3-outline-var);
}

html[data-bs-theme=dark] body.dark-theme .nav-tabs .nav-link {
  color: var(--color-v3-text-var);
  border-color: transparent transparent var(--color-v3-outline-var);
}

html[data-bs-theme=dark] body.dark-theme .nav-tabs .nav-link:hover,
html[data-bs-theme=dark] body.dark-theme .nav-tabs .nav-link:focus {
  color: var(--color-v3-text);
  border-color: var(--color-v3-outline-var) var(--color-v3-outline-var) var(--color-v3-outline-var);
  background-color: var(--color-v3-surface-container-high);
}

html[data-bs-theme=dark] body.dark-theme .nav-tabs .nav-link.active,
html[data-bs-theme=dark] body.dark-theme .nav-tabs .nav-item.show .nav-link {
  color: var(--color-v3-text);
  background-color: var(--color-v3-surface-container);
  border-color: var(--color-v3-outline-var) var(--color-v3-outline-var) transparent;
}

html[data-bs-theme=dark] body.dark-theme .nav-pills .nav-link {
  color: var(--color-v3-text-var);
}

html[data-bs-theme=dark] body.dark-theme .nav-pills .nav-link:hover {
  color: var(--color-v3-text);
  background-color: var(--color-v3-hover);
}

html[data-bs-theme=dark] body.dark-theme .nav-pills {
  --bs-nav-pills-link-active-bg: var(--color-v3-hover);
  --bs-nav-pills-link-active-color: var(--color-v3-text-on-button);
  --bs-nav-pills-box-shadow: none;
}

html[data-bs-theme=dark] body.dark-theme .nav-pills .nav-link.active,
html[data-bs-theme=dark] body.dark-theme .nav-pills .show > .nav-link {
  color: var(--color-v3-text-on-button);
  background-color: var(--color-v3-hover);
}

/* Remove primary-tinted pill shadow (Vuexy / Bootstrap extended) */
.nav-pills .nav-link.active {
  box-shadow: none !important;
}

/* --- Pagination + DataTables paging --- */
html[data-bs-theme=dark] body.dark-theme .page-link:hover {
  border-color: var(--color-v3-outline);
}

html[data-bs-theme=dark] body.dark-theme .dataTables_wrapper .dataTables_paginate .paginate_button {
  color: var(--color-v3-text) !important;
  border: 1px solid var(--color-v3-outline-var) !important;
  background: transparent !important;
}

html[data-bs-theme=dark] body.dark-theme .dataTables_wrapper .dataTables_paginate .paginate_button:hover {
  color: var(--color-v3-text-link) !important;
  border-color: var(--color-v3-outline) !important;
  background: transparent !important;
}

html[data-bs-theme=dark] body.dark-theme .dataTables_wrapper .dataTables_paginate .paginate_button.current,
html[data-bs-theme=dark] body.dark-theme .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover {
  color: var(--color-v3-text-link) !important;
  border-color: var(--color-v3-text-link) !important;
  background: transparent !important;
  font-weight: 600;
}

html[data-bs-theme=dark] body.dark-theme .dataTables_wrapper .dataTables_paginate .paginate_button.disabled,
html[data-bs-theme=dark] body.dark-theme .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:hover {
  color: var(--color-v3-text-disable) !important;
  border-color: var(--color-v3-outline-var) !important;
  background: transparent !important;
}

/* --- Buttons: hover/focus/active borders --- */
html[data-bs-theme=dark] body.dark-theme .btn:not(.btn-link):hover {
  border-color: var(--color-v3-outline);
}

html[data-bs-theme=dark] body.dark-theme .btn-outline-primary,
html[data-bs-theme=dark] body.dark-theme .btn-outline-secondary,
html[data-bs-theme=dark] body.dark-theme .btn-outline-success,
html[data-bs-theme=dark] body.dark-theme .btn-outline-danger,
html[data-bs-theme=dark] body.dark-theme .btn-outline-warning,
html[data-bs-theme=dark] body.dark-theme .btn-outline-info {
  border-color: var(--color-v3-outline-var);
  color: var(--color-v3-text);
}

html[data-bs-theme=dark] body.dark-theme .btn-outline-primary:hover {
  border-color: var(--color-v3-text-link);
  color: var(--color-v3-text-on-button);
  background-color: var(--color-v3-text-link);
}

html[data-bs-theme=dark] body.dark-theme .btn-light {
  --bs-btn-color: var(--color-v3-text);
  --bs-btn-bg: var(--color-v3-surface-container-high);
  --bs-btn-border-color: var(--color-v3-outline-var);
  --bs-btn-hover-bg: var(--color-v3-hover);
  --bs-btn-hover-border-color: var(--color-v3-outline);
}

/* Primary actions: neutral gray (v3). custom-overrides sets background-color: var(--du-primary)
   (link blue) with same .btn-primary — must set real properties here so they win in cascade. */
html[data-bs-theme=dark] body.dark-theme .btn-primary,
html[data-bs-theme=dark] body.dark-theme a.btn.btn-primary,
html[data-bs-theme=dark] body.dark-theme a.btn.btn-sm.btn-primary,
html[data-bs-theme=dark] body.dark-theme a.btn-primary {
  --bs-btn-color: var(--color-v3-text-on-button);
  --bs-btn-bg: var(--color-v3-button-container);
  --bs-btn-border-color: var(--color-v3-outline);
  --bs-btn-hover-color: var(--color-v3-text-on-button);
  --bs-btn-hover-bg: var(--color-v3-button-container-high);
  --bs-btn-hover-border-color: var(--color-v3-outline);
  --bs-btn-active-color: var(--color-v3-text-on-button);
  --bs-btn-active-bg: var(--color-v3-button-container-highest);
  --bs-btn-active-border-color: var(--color-v3-outline);
  --bs-btn-disabled-color: var(--color-v3-text-disable);
  --bs-btn-disabled-bg: color-mix(in srgb, var(--color-v3-button-container) 55%, transparent);
  --bs-btn-disabled-border-color: var(--color-v3-outline-var);
  --bs-btn-focus-shadow-rgb: 135, 169, 255;
  background-color: var(--color-v3-button-container);
  border-color: var(--color-v3-outline);
  color: var(--color-v3-text-on-button);
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, color 0.15s ease-in-out, box-shadow 0.1s ease-in-out;
}

html[data-bs-theme=dark] body.dark-theme .btn-primary:hover:not(:disabled),
html[data-bs-theme=dark] body.dark-theme .btn-primary:focus:not(:disabled),
html[data-bs-theme=dark] body.dark-theme a.btn.btn-primary:hover:not(:disabled),
html[data-bs-theme=dark] body.dark-theme a.btn.btn-primary:focus:not(:disabled),
html[data-bs-theme=dark] body.dark-theme a.btn.btn-sm.btn-primary:hover:not(:disabled),
html[data-bs-theme=dark] body.dark-theme a.btn.btn-sm.btn-primary:focus:not(:disabled),
html[data-bs-theme=dark] body.dark-theme a.btn-primary:hover:not(:disabled),
html[data-bs-theme=dark] body.dark-theme a.btn-primary:focus:not(:disabled) {
  background-color: var(--color-v3-button-container-high);
  border-color: var(--color-v3-outline);
  color: var(--color-v3-text-on-button);
  box-shadow: none;
}

html[data-bs-theme=dark] body.dark-theme .btn-primary:active:not(:disabled),
html[data-bs-theme=dark] body.dark-theme a.btn.btn-primary:active:not(:disabled),
html[data-bs-theme=dark] body.dark-theme a.btn.btn-sm.btn-primary:active:not(:disabled),
html[data-bs-theme=dark] body.dark-theme a.btn-primary:active:not(:disabled) {
  background-color: var(--color-v3-button-container-highest);
  border-color: var(--color-v3-outline);
  color: var(--color-v3-text-on-button);
}

html[data-bs-theme=dark] body.dark-theme .btn-primary:focus-visible,
html[data-bs-theme=dark] body.dark-theme a.btn-primary:focus-visible,
html[data-bs-theme=dark] body.dark-theme a.btn.btn-primary:focus-visible,
html[data-bs-theme=dark] body.dark-theme a.btn.btn-sm.btn-primary:focus-visible {
  box-shadow: 0 0 0 0.15rem color-mix(in srgb, var(--color-v3-outline-accent) 35%, transparent);
}

/* MS-style buttons (attribute selector) — same gray system */
html[data-bs-theme=dark] body.dark-theme [ms-button] {
  --ms-button-height: 32px;
  font-family: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;
  font-optical-sizing: auto;
  font-size: 14px;
  font-weight: 500;
  line-height: 21px;
  align-items: center;
  border-radius: 12px;
  cursor: pointer;
  display: flex;
  justify-content: center;
  gap: 4px;
  padding: 0 12px;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, color 0.15s ease-in-out, box-shadow 0.1s ease-in-out;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  white-space: nowrap;
  height: var(--ms-button-height);
  min-height: var(--ms-button-height);
  border: 1px solid transparent;
  background-color: transparent;
  box-sizing: border-box;
}

html[data-bs-theme=dark] body.dark-theme [ms-button].ms-button-primary {
  background-color: var(--color-v3-button-container);
  border-color: var(--color-v3-outline);
  color: var(--color-v3-text-on-button);
}

html[data-bs-theme=dark] body.dark-theme [ms-button].ms-button-primary:hover:not(:disabled) {
  background-color: var(--color-v3-button-container-high);
  border-color: var(--color-v3-outline);
  color: var(--color-v3-text-on-button);
}

html[data-bs-theme=dark] body.dark-theme [ms-button].ms-button-primary:active:not(:disabled),
html[data-bs-theme=dark] body.dark-theme [ms-button].ms-button-primary.active:not(:disabled) {
  background-color: var(--color-v3-button-container-highest);
  border-color: var(--color-v3-outline);
  color: var(--color-v3-text-on-button);
}

html[data-bs-theme=dark] body.dark-theme [ms-button].ms-button-primary:focus-visible {
  outline: 2px solid var(--color-v3-outline-accent);
  outline-offset: 2px;
}

html[data-bs-theme=dark] body.dark-theme [ms-button].ms-button-primary:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

/* --- Input group --- */
html[data-bs-theme=dark] body.dark-theme .input-group-text {
  background-color: var(--color-v3-surface-container-highest);
  color: var(--color-v3-text);
  border-color: var(--color-v3-outline-var);
}

html[data-bs-theme=dark] body.dark-theme .input-group > :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.invalid-tooltip) {
  border-inline-start-color: var(--color-v3-outline-var);
}

/* --- Form controls focus --- */
html[data-bs-theme=dark] body.dark-theme .form-control:focus,
html[data-bs-theme=dark] body.dark-theme .form-select:focus {
  border-color: var(--du-info);
}

html[data-bs-theme=dark] body.dark-theme .form-check-input {
  border-color: var(--color-v3-outline);
  background-color: var(--color-v3-surface-container-high);
}

html[data-bs-theme=dark] body.dark-theme .form-check-input:checked {
  background-color: var(--color-v3-text-link);
  border-color: var(--color-v3-text-link);
}

/* --- HR & dividers --- */
html[data-bs-theme=dark] body.dark-theme hr,
html[data-bs-theme=dark] body.dark-theme .dropdown-divider {
  border-color: var(--color-v3-outline-var) !important;
  opacity: 1;
}

/* --- Accordion --- */
html[data-bs-theme=dark] body.dark-theme .accordion-button {
  color: var(--color-v3-text);
  background-color: var(--color-v3-surface-container);
  border-color: var(--color-v3-outline-var);
}

html[data-bs-theme=dark] body.dark-theme .accordion-button:not(.collapsed) {
  color: var(--color-v3-text);
  background-color: var(--color-v3-surface-container-high);
  box-shadow: inset 0 calc(-1 * var(--bs-accordion-border-width)) 0 var(--color-v3-outline-var);
}

html[data-bs-theme=dark] body.dark-theme .accordion-button::after {
  filter: invert(0.85);
}

html[data-bs-theme=dark] body.dark-theme .accordion-item {
  border-color: var(--color-v3-outline-var);
}

/* --- Utilities that stay “light” themed --- */
html[data-bs-theme=dark] body.dark-theme .text-dark {
  color: var(--color-v3-text) !important;
}

html[data-bs-theme=dark] body.dark-theme .border-secondary,
html[data-bs-theme=dark] body.dark-theme .border-light {
  border-color: var(--color-v3-outline-var) !important;
}

html[data-bs-theme=dark] body.dark-theme .bg-white,
html[data-bs-theme=dark] body.dark-theme .bg-light {
  background-color: var(--color-v3-surface-container-high) !important;
  color: var(--color-v3-text) !important;
}

/* --- Navbar links + toggler --- */
html[data-bs-theme=dark] body.dark-theme .navbar .nav-link:hover,
html[data-bs-theme=dark] body.dark-theme .navbar .nav-link:focus {
  color: var(--color-v3-text-link);
}

html[data-bs-theme=dark] body.dark-theme .navbar .nav-link.show {
  color: var(--color-v3-text);
}

/* --- List group actions --- */
html[data-bs-theme=dark] body.dark-theme .list-group-item-action:hover,
html[data-bs-theme=dark] body.dark-theme .list-group-item-action:focus {
  background-color: var(--color-v3-hover);
  color: var(--color-v3-text);
  border-color: var(--color-v3-outline-var);
}

/* --- Select2 dropdown --- */
html[data-bs-theme=dark] body.dark-theme .select2-dropdown {
  background-color: var(--color-v3-surface-container-high) !important;
  border-color: var(--color-v3-outline-var) !important;
  color: var(--color-v3-text) !important;
}

html[data-bs-theme=dark] body.dark-theme .select2-container--default .select2-results__option--highlighted[aria-selected] {
  background-color: var(--color-v3-hover) !important;
  color: var(--color-v3-text) !important;
}

html[data-bs-theme=dark] body.dark-theme .select2-container--default .select2-results__option[aria-selected=true] {
  background-color: color-mix(in srgb, var(--color-v3-text-link) 22%, transparent) !important;
  color: var(--color-v3-text) !important;
}

/* --- Flatpickr --- */
html[data-bs-theme=dark] body.dark-theme .flatpickr-calendar {
  background: var(--color-v3-surface-container);
  border-color: var(--color-v3-outline-var);
  box-shadow: var(--v3-shadow-md);
  color: var(--color-v3-text);
}

html[data-bs-theme=dark] body.dark-theme .flatpickr-day:hover {
  background: var(--color-v3-hover);
  border-color: var(--color-v3-outline);
}

html[data-bs-theme=dark] body.dark-theme .flatpickr-day.selected {
  background: var(--color-v3-text-link);
  border-color: var(--color-v3-text-link);
}

/* --- Backdrop --- */
html[data-bs-theme=dark] body.dark-theme .modal-backdrop {
  --bs-backdrop-bg: #000;
  --bs-backdrop-opacity: 0.55;
}

html[data-bs-theme=dark] body.dark-theme .content-backdrop.show {
  background: color-mix(in srgb, #000 45%, transparent);
}

/* --- Menu: open / submenu (Vuexy) --- */
html[data-bs-theme=dark] body.dark-theme .menu-item.open:not(.menu-item-closing) > .menu-link,
html[data-bs-theme=dark] body.dark-theme .menu-item.open:not(.menu-item-closing) > .menu-toggle {
  color: var(--color-v3-text);
}

html[data-bs-theme=dark] body.dark-theme .menu-sub .menu-link {
  color: var(--color-v3-text-var);
}

html[data-bs-theme=dark] body.dark-theme .menu-sub .menu-link:hover {
  color: var(--color-v3-text);
  background-color: var(--color-v3-hover);
}

html[data-bs-theme=dark] body.dark-theme .menu-horizontal .menu-inner > .menu-item > .menu-sub {
  background-color: var(--color-v3-surface-container-high);
  border: 1px solid var(--color-v3-outline-var);
  box-shadow: var(--v3-shadow-md);
}

html:has(body.dark-theme) {
  color-scheme: dark;
}

/**
 * TinyMCE oxide-dark ships blue-grey chrome (#222f3e, #3389ec hovers).
 * Align editor UI with admin v3 neutral surfaces when dark theme is active.
 */
html[data-bs-theme=dark] body.dark-theme .tox-tinymce {
  border-color: var(--color-v3-outline-var) !important;
}
html[data-bs-theme=dark] body.dark-theme .tox:not(.tox-tinymce-inline) .tox-editor-header,
html[data-bs-theme=dark] body.dark-theme .tox .tox-menubar,
html[data-bs-theme=dark] body.dark-theme .tox .tox-toolbar,
html[data-bs-theme=dark] body.dark-theme .tox .tox-toolbar__overflow,
html[data-bs-theme=dark] body.dark-theme .tox .tox-toolbar__primary,
html[data-bs-theme=dark] body.dark-theme .tox .tox-toolbar-overlord,
html[data-bs-theme=dark] body.dark-theme .tox .tox-statusbar,
html[data-bs-theme=dark] body.dark-theme .tox .tox-sidebar,
html[data-bs-theme=dark] body.dark-theme .tox.tox-tinymce-aux .tox-toolbar__overflow {
  background-color: var(--color-v3-surface-container-high) !important;
  background-image: none !important;
}
html[data-bs-theme=dark] body.dark-theme .tox:not(.tox-tinymce-inline) .tox-editor-header {
  border-bottom-color: var(--color-v3-outline-var) !important;
}
html[data-bs-theme=dark] body.dark-theme .tox .tox-statusbar {
  border-top-color: var(--color-v3-outline-var) !important;
  color: var(--color-v3-text-var) !important;
}
html[data-bs-theme=dark] body.dark-theme .tox .tox-statusbar a,
html[data-bs-theme=dark] body.dark-theme .tox .tox-statusbar__path-item,
html[data-bs-theme=dark] body.dark-theme .tox .tox-statusbar__wordcount {
  color: var(--color-v3-text-var) !important;
}
html[data-bs-theme=dark] body.dark-theme .tox .tox-mbtn:focus:not(:disabled),
html[data-bs-theme=dark] body.dark-theme .tox .tox-mbtn:hover:not(:disabled):not(.tox-mbtn--active) {
  background: var(--color-v3-hover) !important;
  color: var(--color-v3-text) !important;
}
html[data-bs-theme=dark] body.dark-theme .tox .tox-mbtn--active {
  background: var(--color-v3-button-container-high) !important;
  color: var(--color-v3-text-on-button) !important;
}
html[data-bs-theme=dark] body.dark-theme .tox .tox-tbtn:focus,
html[data-bs-theme=dark] body.dark-theme .tox .tox-tbtn:hover {
  background: var(--color-v3-hover) !important;
}
html[data-bs-theme=dark] body.dark-theme .tox .tox-tbtn:active {
  background: var(--color-v3-button-container-high) !important;
}
html[data-bs-theme=dark] body.dark-theme .tox .tox-tbtn--enabled,
html[data-bs-theme=dark] body.dark-theme .tox .tox-tbtn--enabled:hover {
  background: var(--color-v3-button-container-high) !important;
  color: var(--color-v3-text-on-button) !important;
}
html[data-bs-theme=dark] body.dark-theme .tox .tox-tbtn svg,
html[data-bs-theme=dark] body.dark-theme .tox .tox-tbtn--enabled svg {
  fill: currentColor !important;
}
html[data-bs-theme=dark] body.dark-theme .tox .tox-split-button:hover {
  box-shadow: 0 0 0 1px var(--color-v3-outline) inset !important;
}
html[data-bs-theme=dark] body.dark-theme .tox .tox-split-button:focus {
  background: var(--color-v3-hover) !important;
  box-shadow: none !important;
}
html[data-bs-theme=dark] body.dark-theme .tox .tox-menu,
html[data-bs-theme=dark] body.dark-theme .tox .tox-collection--horizontal {
  background-color: var(--color-v3-surface-container) !important;
  border-color: var(--color-v3-outline-var) !important;
}
html[data-bs-theme=dark] body.dark-theme .tox .tox-collection--list .tox-collection__item--active {
  background-color: var(--color-v3-hover) !important;
}
html[data-bs-theme=dark] body.dark-theme .tox .tox-collection--toolbar .tox-collection__item--active,
html[data-bs-theme=dark] body.dark-theme .tox .tox-collection--grid .tox-collection__item--active:not(.tox-collection__item--state-disabled) {
  background-color: var(--color-v3-button-container-high) !important;
}
html[data-bs-theme=dark] body.dark-theme .tox .tox-tooltip__body {
  background-color: var(--color-v3-surface-container-highest) !important;
  color: var(--color-v3-text) !important;
}
html[data-bs-theme=dark] body.dark-theme .tox .tox-dialog,
html[data-bs-theme=dark] body.dark-theme .tox .tox-dialog__header,
html[data-bs-theme=dark] body.dark-theme .tox .tox-dialog__footer {
  background-color: var(--color-v3-surface-container) !important;
  border-color: var(--color-v3-outline-var) !important;
}
html[data-bs-theme=dark] body.dark-theme .tox .tox-dialog__body {
  color: var(--color-v3-text) !important;
}
html[data-bs-theme=dark] body.dark-theme .tox .tox-button {
  background-color: var(--color-v3-button-container-high) !important;
  border-color: var(--color-v3-outline) !important;
  color: var(--color-v3-text-on-button) !important;
}
html[data-bs-theme=dark] body.dark-theme .tox .tox-button:hover:not(:disabled),
html[data-bs-theme=dark] body.dark-theme .tox .tox-button:focus:not(:disabled) {
  background-color: var(--color-v3-button-container-highest) !important;
  border-color: var(--color-v3-outline) !important;
}
html[data-bs-theme=dark] body.dark-theme .tox .tox-button--secondary {
  background-color: var(--color-v3-surface-container-highest) !important;
  border-color: var(--color-v3-outline-var) !important;
  color: var(--color-v3-text) !important;
}
html[data-bs-theme=dark] body.dark-theme .tox .tox-textfield,
html[data-bs-theme=dark] body.dark-theme .tox .tox-textarea,
html[data-bs-theme=dark] body.dark-theme .tox .tox-selectfield select,
html[data-bs-theme=dark] body.dark-theme .tox .tox-listboxfield .tox-listbox--select {
  background-color: var(--color-v3-surface-container-high) !important;
  border-color: var(--color-v3-outline-var) !important;
  color: var(--color-v3-text) !important;
}
html[data-bs-theme=dark] body.dark-theme .tox .tox-textfield:focus,
html[data-bs-theme=dark] body.dark-theme .tox .tox-textarea:focus,
html[data-bs-theme=dark] body.dark-theme .tox .tox-selectfield select:focus,
html[data-bs-theme=dark] body.dark-theme .tox .tox-listboxfield .tox-listbox--select:focus {
  border-color: var(--color-v3-outline-accent) !important;
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--color-v3-outline-accent) 28%, transparent) !important;
}

/**
 * /home dashboard — layout only (no global .card overrides).
 */
.dashboard-home {
  max-width: 100%;
}

.dashboard-toolbar .card-body {
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.dashboard-toolbar h1.h4 {
  line-height: 1.35;
}

.dashboard-shortcuts .btn {
  white-space: normal;
  text-align: start;
}

.page-dashboard #dash-summary-chart-bar {
  min-height: 280px;
}
.page-dashboard #city-package-chart {
  min-height: 260px;
}
.page-dashboard .row .card .table thead th {
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--bs-secondary-color);
}
.page-dashboard .progress {
  border-radius: 50rem;
}

html[data-bs-theme=dark] .dashboard-toolbar,
html[data-bs-theme=dark] .dashboard-shortcuts {
  --bs-card-bg: var(--bs-body-bg);
}

/* Title row sits outside the metrics card — no frame around header */
.dashboard-pipeline-intro__header.card-header {
  border: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  padding-bottom: 0;
}
