@import url("https://fonts.googleapis.com/css2?family=Public+Sans:wght@300;400;500;600;700&display=swap");
@import url("../../../plugins/toastr/toastr.min.css");

:root {
  --clinica-vx-bg: #f8f7fa;
  --clinica-vx-surface: #ffffff;
  --clinica-vx-surface-soft: #fafafa;
  --clinica-vx-table-head: #f6f6f8;
  --clinica-vx-table-stripe: rgba(47, 43, 61, .018);
  --clinica-vx-table-hover: rgba(115, 103, 240, .055);
  --clinica-vx-heading: #2f2b3d;
  --clinica-vx-text: #5d596c;
  --clinica-vx-muted: #7f7a91;
  --clinica-vx-border: #dbdade;
  --clinica-vx-shadow: 0 .25rem 1.125rem rgba(47, 43, 61, .10);
  --clinica-vx-shadow-soft: 0 .125rem .5rem rgba(47, 43, 61, .08);
  --clinica-vx-radius: .375rem;
  --clinica-vx-menu-width: 260px;
  --clinica-vx-primary: var(--clinica-primary, #7367f0);
}

html,
body {
  font-family: "Public Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  letter-spacing: 0;
}

body.hold-transition,
body.sidebar-mini {
  background: var(--clinica-vx-bg);
  color: var(--clinica-vx-text);
}

.wrapper,
.content-wrapper {
  background: var(--clinica-vx-bg) !important;
}

body:not(.sidebar-collapse) .content-wrapper,
body:not(.sidebar-collapse) .main-footer {
  margin-left: var(--clinica-vx-menu-width) !important;
}

body:not(.sidebar-collapse) .main-header {
  margin-left: 0 !important;
}

body.sidebar-collapse .content-wrapper,
body.sidebar-collapse .main-footer {
  margin-left: 4.6rem !important;
}

.main-sidebar {
  position: fixed !important;
  top: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  width: var(--clinica-vx-menu-width);
  min-height: 100vh;
  background: var(--clinica-vx-surface) !important;
  border-right: 1px solid rgba(47, 43, 61, .08);
  box-shadow: 0 .125rem .375rem rgba(47, 43, 61, .10) !important;
  z-index: 1038;
  transition: width .18s ease, transform .18s ease;
}

body.sidebar-collapse .main-sidebar {
  width: 4.6rem !important;
}

body.sidebar-collapse.clinica-sidebar-hover-open .main-sidebar,
body.sidebar-collapse.clinica-sidebar-unit-open .main-sidebar {
  width: var(--clinica-vx-menu-width) !important;
}

body.sidebar-collapse .main-sidebar .sidebar {
  overflow-x: hidden;
}

.main-sidebar,
.main-sidebar .sidebar {
  color: var(--clinica-vx-text);
}

.clinica-brand-link {
  position: relative;
  border-bottom: 0;
  color: var(--clinica-vx-heading) !important;
  height: 74px;
  min-height: 74px;
  padding: 1.15rem 1.35rem .95rem;
  display: flex;
  align-items: center;
  gap: .65rem;
  overflow: visible;
}

.main-sidebar .menu-inner-shadow {
  display: block;
  height: .75rem;
  pointer-events: none;
  background: linear-gradient(var(--clinica-vx-surface) 35%, rgba(255, 255, 255, 0));
}

.clinica-brand-main {
  min-width: 0;
  flex: 1 1 auto;
  display: flex;
  align-items: center;
  gap: .65rem;
  color: inherit !important;
  text-decoration: none !important;
}

.clinica-brand-logo {
  width: 38px !important;
  height: 38px !important;
  max-height: none !important;
  flex: 0 0 38px !important;
  border-radius: .375rem !important;
  box-shadow: none !important;
  object-fit: cover;
}

.clinica-sidebar-lock {
  width: 1.65rem;
  height: 1.65rem;
  margin-left: auto;
  border: 0;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 1.65rem;
  font-size: .78rem;
  color: var(--clinica-vx-muted);
  background: rgba(47, 43, 61, .06);
  cursor: pointer;
  transition: background-color .15s ease, color .15s ease, transform .15s ease;
}

.clinica-sidebar-lock:hover {
  color: var(--clinica-vx-primary);
  background: rgba(115, 103, 240, .12);
}

.clinica-sidebar-lock.is-pinned {
  color: #fff;
  background: var(--clinica-vx-primary);
}

.clinica-sidebar-lock.is-pinned i {
  transform: rotate(-35deg);
}

.clinica-brand-name,
.clinica-brand-name span {
  color: var(--clinica-vx-heading) !important;
  font-family: "Public Sans", sans-serif !important;
  font-size: 1.05rem !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
}

.main-sidebar .user-panel {
  border: 1px solid rgba(47, 43, 61, .08) !important;
  border-radius: var(--clinica-vx-radius);
  margin: .65rem .9rem 1rem !important;
  padding: .75rem !important;
  background: #f6f6f8;
}

.main-sidebar .user-panel .info p,
.main-sidebar .user-panel a {
  color: var(--clinica-vx-heading) !important;
}

.clinica-user-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .5rem;
  line-height: 1;
}

.clinica-user-actions.is-patient {
  justify-content: flex-start;
}

.clinica-user-stars {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  min-width: 48px;
  color: #ffb400;
  font-size: .9rem;
}

.clinica-user-stars .is-filled {
  color: #ffb400;
  text-shadow: 0 1px 2px rgba(47, 43, 61, .12);
}

.clinica-user-stars .is-empty {
  color: #b9b6c9;
  opacity: .95;
}

.clinica-user-logout {
  display: inline-flex;
  align-items: center;
  gap: .3rem;
  margin-left: auto;
  color: var(--clinica-vx-muted) !important;
  font-size: .82rem;
  font-weight: 700;
  white-space: nowrap;
}

.clinica-user-logout:hover {
  color: var(--clinica-vx-primary) !important;
}

.clinica-impersonation-return {
  margin: -.35rem .9rem 1rem;
}

.clinica-impersonation-return .btn {
  min-height: 34px;
  border: 0 !important;
  border-radius: var(--clinica-vx-radius) !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .4rem;
  color: #2f2b3d !important;
  background: #ffc107 !important;
  font-size: .8125rem;
  font-weight: 700;
  box-shadow: var(--clinica-vx-shadow-soft);
}

.clinica-impersonation-return .btn:hover,
.clinica-impersonation-return .btn:focus {
  color: #2f2b3d !important;
  background: #ffca2c !important;
}

.clinica-unit-switch {
  margin: 0 .9rem 1rem !important;
  padding: .8rem .65rem !important;
  border: 0 !important;
  border-radius: var(--clinica-vx-radius);
  background: linear-gradient(135deg, var(--clinica-preview-color, var(--clinica-unit-color, #7c3aed)), var(--clinica-preview-accent, var(--clinica-unit-accent, #20c997))) !important;
  box-shadow: var(--clinica-vx-shadow-soft);
}

.clinica-unit-switch-form {
  margin: 0;
}

.clinica-unit-carousel {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) 34px;
  align-items: center;
  gap: .45rem;
}

.clinica-unit-arrow {
  width: 34px;
  height: 34px;
  border: 0;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  background: rgba(255, 255, 255, .18);
  cursor: pointer;
  transition: background-color .15s ease, transform .15s ease;
}

.clinica-unit-arrow:hover,
.clinica-unit-arrow:focus {
  color: #fff;
  background: rgba(255, 255, 255, .30);
  outline: none;
}

.clinica-unit-arrow:active {
  transform: scale(.96);
}

.clinica-unit-current {
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: .35rem;
  color: #fff;
  text-align: center;
}

.clinica-unit-current-icon {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 14px;
  font-weight: 800;
  line-height: 1;
  background: linear-gradient(135deg, var(--clinica-preview-color, var(--clinica-unit-color, #7c3aed)), var(--clinica-preview-accent, var(--clinica-unit-accent, #20c997)));
  box-shadow: 0 0 0 2px rgba(255, 255, 255, .18);
}

.clinica-unit-current-name {
  max-width: 100%;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.15;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.clinica-unit-apply {
  width: 100%;
  min-height: 30px;
  margin-top: .55rem;
  border: 0;
  border-radius: var(--clinica-vx-radius);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .35rem;
  color: var(--clinica-preview-color, var(--clinica-vx-primary));
  background: #fff;
  font-size: .78rem;
  font-weight: 700;
  cursor: pointer;
  transition: opacity .15s ease, transform .15s ease, background-color .15s ease;
}

.clinica-unit-apply:hover,
.clinica-unit-apply:focus {
  color: var(--clinica-preview-color, var(--clinica-vx-primary));
  background: rgba(255, 255, 255, .92);
  outline: none;
}

.clinica-unit-apply:active {
  transform: scale(.98);
}

.clinica-unit-apply:disabled {
  cursor: default;
  opacity: .55;
  transform: none;
}

.nav-sidebar {
  padding: 0 .85rem 1rem;
}

.nav-sidebar .nav-item {
  margin: .125rem 0;
}

.nav-sidebar .nav-link {
  border-radius: .375rem !important;
  color: var(--clinica-vx-text) !important;
  min-height: 38px;
  padding: .55rem .875rem;
  display: flex;
  align-items: center;
  gap: .65rem;
}

.nav-sidebar .nav-link p {
  font-size: .9375rem;
  font-weight: 500;
  line-height: 1.2;
  margin: 0;
}

.nav-sidebar .nav-link .nav-icon,
.nav-sidebar .nav-link .right {
  color: var(--clinica-vx-muted) !important;
}

.nav-sidebar .nav-link .nav-icon {
  width: 1.375rem !important;
  min-width: 1.375rem !important;
  margin: 0 !important;
  text-align: center;
}

.nav-sidebar .nav-link .right {
  margin-left: auto;
}

.nav-sidebar .nav-link:hover {
  background: rgba(115, 103, 240, .08) !important;
  color: var(--clinica-vx-primary) !important;
}

.nav-sidebar .nav-link.active {
  background: var(--clinica-vx-primary) !important;
  color: #fff !important;
  box-shadow: 0 .125rem .375rem rgba(115, 103, 240, .35);
}

.nav-sidebar .nav-link.active .nav-icon,
.nav-sidebar .nav-link.active .right {
  color: #fff !important;
}

.nav-sidebar > .nav-item > .nav-treeview {
  margin: .18rem 0 .35rem .68rem;
  padding-left: .6rem;
  border-left: 1px solid rgba(47, 43, 61, .08);
}

.nav-treeview .nav-item {
  margin: .08rem 0;
}

.nav-treeview .nav-link {
  min-height: 34px;
  padding: .42rem .7rem !important;
  color: var(--clinica-vx-muted) !important;
  background: rgba(47, 43, 61, .025) !important;
}

.nav-treeview .nav-link p {
  font-size: .875rem;
  font-weight: 500;
}

.nav-treeview .nav-link .nav-icon {
  width: 1.15rem !important;
  min-width: 1.15rem !important;
  font-size: .88rem;
  opacity: .9;
}

.nav-treeview .nav-link:hover {
  color: var(--clinica-vx-primary) !important;
  background: rgba(115, 103, 240, .07) !important;
}

.nav-treeview .nav-link.active {
  color: var(--clinica-vx-primary) !important;
  background: rgba(115, 103, 240, .15) !important;
  box-shadow: none !important;
}

.nav-treeview .nav-link.active .nav-icon,
.nav-treeview .nav-link.active .right {
  color: var(--clinica-vx-primary) !important;
}

body.sidebar-collapse .clinica-brand-link {
  width: 100%;
  padding-left: 0 !important;
  padding-right: 0 !important;
  justify-content: center;
}

body.sidebar-collapse .clinica-brand-main {
  width: 100%;
  justify-content: center;
}

body.sidebar-collapse .clinica-brand-link .clinica-brand-logo {
  margin: 0 !important;
  display: block;
}

body.sidebar-collapse .clinica-brand-link .clinica-brand-name {
  display: none !important;
}

body.sidebar-collapse .clinica-sidebar-lock {
  display: none !important;
}

body.sidebar-collapse.clinica-sidebar-hover-open .clinica-brand-link,
body.sidebar-collapse.clinica-sidebar-unit-open .clinica-brand-link {
  width: auto;
  padding: 1.15rem 1.35rem .95rem !important;
  justify-content: flex-start;
}

body.sidebar-collapse.clinica-sidebar-hover-open .clinica-brand-main,
body.sidebar-collapse.clinica-sidebar-unit-open .clinica-brand-main {
  width: auto;
  justify-content: flex-start;
}

body.sidebar-collapse.clinica-sidebar-hover-open .clinica-brand-link .clinica-brand-name,
body.sidebar-collapse.clinica-sidebar-unit-open .clinica-brand-link .clinica-brand-name {
  display: inline-flex !important;
}

body.sidebar-collapse.clinica-sidebar-hover-open .clinica-sidebar-lock,
body.sidebar-collapse.clinica-sidebar-unit-open .clinica-sidebar-lock {
  display: inline-flex !important;
}

body.sidebar-collapse .main-sidebar .user-panel {
  width: 100%;
  min-height: 56px;
  margin: .35rem 0 .75rem !important;
  padding: .55rem 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  justify-content: center;
  align-items: center;
}

body.sidebar-collapse .main-sidebar .user-panel .image {
  width: 38px;
  height: 38px;
  margin: 0 auto !important;
  padding: 0 !important;
  float: none !important;
  display: flex !important;
  align-items: center;
  justify-content: center;
}

body.sidebar-collapse .main-sidebar .user-panel .image img {
  width: 34px !important;
  height: 34px !important;
  margin: 0 !important;
  display: block;
  object-fit: cover;
  transform: none !important;
}

body.sidebar-collapse .main-sidebar .user-panel .info {
  display: none !important;
}

body.sidebar-collapse .main-sidebar .clinica-user-actions,
body.sidebar-collapse .main-sidebar .clinica-user-stars,
body.sidebar-collapse .main-sidebar .clinica-user-logout {
  display: none !important;
}

body.sidebar-collapse .clinica-impersonation-return {
  margin: -.25rem .5rem .65rem !important;
}

body.sidebar-collapse .clinica-impersonation-return .btn {
  width: 100%;
  height: 38px;
  min-height: 38px;
  padding: 0 !important;
}

body.sidebar-collapse .clinica-impersonation-return .btn span {
  display: none !important;
}

body.sidebar-collapse.clinica-sidebar-hover-open .main-sidebar .user-panel,
body.sidebar-collapse.clinica-sidebar-unit-open .main-sidebar .user-panel {
  width: auto;
  min-height: auto;
  margin: .65rem .9rem 1rem !important;
  padding: .75rem !important;
  border: 1px solid rgba(47, 43, 61, .08) !important;
  background: #f6f6f8 !important;
  box-shadow: none !important;
  justify-content: flex-start;
}

body.sidebar-collapse.clinica-sidebar-hover-open .main-sidebar .user-panel .image,
body.sidebar-collapse.clinica-sidebar-unit-open .main-sidebar .user-panel .image {
  width: auto;
  height: auto;
  margin: 0 .5rem 0 0 !important;
}

body.sidebar-collapse.clinica-sidebar-hover-open .main-sidebar .user-panel .info,
body.sidebar-collapse.clinica-sidebar-unit-open .main-sidebar .user-panel .info {
  display: block !important;
}

body.sidebar-collapse.clinica-sidebar-hover-open .clinica-impersonation-return,
body.sidebar-collapse.clinica-sidebar-unit-open .clinica-impersonation-return {
  margin: -.35rem .9rem 1rem !important;
}

body.sidebar-collapse.clinica-sidebar-hover-open .clinica-impersonation-return .btn,
body.sidebar-collapse.clinica-sidebar-unit-open .clinica-impersonation-return .btn {
  height: auto;
  min-height: 34px;
  padding: .25rem .5rem !important;
}

body.sidebar-collapse.clinica-sidebar-hover-open .clinica-impersonation-return .btn span,
body.sidebar-collapse.clinica-sidebar-unit-open .clinica-impersonation-return .btn span {
  display: inline !important;
}


body.sidebar-collapse .clinica-unit-compact {
  width: 100%;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

body.sidebar-collapse.clinica-sidebar-hover-open .clinica-unit-switch,
body.sidebar-collapse.clinica-sidebar-unit-open .clinica-unit-switch {
  display: block !important;
}

body.sidebar-collapse.clinica-sidebar-hover-open .clinica-unit-compact,
body.sidebar-collapse.clinica-sidebar-unit-open .clinica-unit-compact {
  display: none !important;
}

body.sidebar-collapse .main-sidebar .nav-sidebar {
  width: 100%;
  padding: 0 .5rem 1rem !important;
}

body.sidebar-collapse .main-sidebar .nav-sidebar > .nav-item {
  width: 100%;
  margin: .125rem 0 !important;
}

body.sidebar-collapse:not(.clinica-sidebar-hover-open):not(.clinica-sidebar-unit-open):not(.sidebar-open) .main-sidebar .nav-treeview {
  margin-left: 0 !important;
  padding-left: 0 !important;
  border-left: 0 !important;
}

body.sidebar-collapse .main-sidebar .nav-sidebar > .nav-item > .nav-link,
body.sidebar-collapse .main-sidebar .nav-treeview > .nav-item > .nav-link {
  width: 100% !important;
  height: 40px;
  min-height: 40px;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center;
  justify-content: center;
}

body.sidebar-collapse .main-sidebar .nav-sidebar .nav-link > .nav-icon,
body.sidebar-collapse .main-sidebar .nav-sidebar .nav-link > i:first-child {
  width: 1.5rem !important;
  min-width: 1.5rem !important;
  margin: 0 !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  text-align: center;
}

body.sidebar-collapse .main-sidebar .nav-sidebar .nav-link p,
body.sidebar-collapse .main-sidebar .nav-sidebar .nav-link .right {
  display: none !important;
}

body.sidebar-collapse.clinica-sidebar-hover-open .main-sidebar .nav-sidebar,
body.sidebar-collapse.clinica-sidebar-unit-open .main-sidebar .nav-sidebar {
  padding: 0 .85rem 1rem !important;
}

body.sidebar-collapse.clinica-sidebar-hover-open .main-sidebar .nav-sidebar > .nav-item > .nav-link,
body.sidebar-collapse.clinica-sidebar-unit-open .main-sidebar .nav-sidebar > .nav-item > .nav-link,
body.sidebar-collapse.clinica-sidebar-hover-open .main-sidebar .nav-treeview > .nav-item > .nav-link,
body.sidebar-collapse.clinica-sidebar-unit-open .main-sidebar .nav-treeview > .nav-item > .nav-link {
  width: 100% !important;
  min-height: 38px;
  height: auto;
  padding: .55rem .875rem !important;
  justify-content: flex-start;
}

body.sidebar-collapse.clinica-sidebar-hover-open .main-sidebar .nav-sidebar .nav-link p,
body.sidebar-collapse.clinica-sidebar-unit-open .main-sidebar .nav-sidebar .nav-link p,
body.sidebar-collapse.clinica-sidebar-hover-open .main-sidebar .nav-sidebar .nav-link .right,
body.sidebar-collapse.clinica-sidebar-unit-open .main-sidebar .nav-sidebar .nav-link .right {
  display: block !important;
}

.main-header.navbar {
  position: fixed !important;
  top: .75rem;
  right: 1.5rem;
  left: calc(var(--clinica-vx-menu-width) + 1.5rem);
  width: auto !important;
  min-height: 64px;
  margin-right: 0;
  border: 0 !important;
  border-radius: var(--clinica-vx-radius);
  background: rgba(255, 255, 255, .92) !important;
  box-shadow: var(--clinica-vx-shadow);
  backdrop-filter: saturate(180%) blur(8px);
}

body.sidebar-collapse .main-header.navbar {
  left: calc(4.6rem + 1.5rem);
  margin-left: 0 !important;
}

.main-header > .navbar-nav:first-child,
.main-header #btnPushmenu {
  display: none !important;
}

.main-header .nav-link {
  color: var(--clinica-vx-text) !important;
  border-radius: 50%;
  width: 2.375rem;
  height: 2.375rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 !important;
  margin: 0 .125rem;
}

.main-header .nav-link:hover {
  background: rgba(47, 43, 61, .06);
  color: var(--clinica-vx-primary) !important;
}

.navbar-badge {
  right: .1rem;
  top: .05rem;
}

.content-wrapper {
  padding-top: 5.25rem;
}

.content-header {
  padding: 1rem 1.5rem .5rem;
}

.content {
  padding: 0 1.5rem 1.5rem;
}

.container-fluid {
  max-width: 1440px;
}

.content-header h1 {
  color: var(--clinica-vx-heading);
  font-size: 1.625rem;
  font-weight: 600;
  letter-spacing: 0;
}

.breadcrumb {
  background: transparent;
  padding: 0;
  margin: 0;
}

.breadcrumb-item,
.breadcrumb-item a,
.text-muted {
  color: var(--clinica-vx-muted) !important;
}

.card,
.info-box,
.small-box,
.modal-content,
.dropdown-menu {
  border: 0 !important;
  border-radius: var(--clinica-vx-radius) !important;
  box-shadow: var(--clinica-vx-shadow) !important;
}

.card {
  background: var(--clinica-vx-surface);
}

.modal-content {
  overflow: hidden;
  background: var(--clinica-vx-surface) !important;
  color: var(--clinica-vx-text) !important;
}

.modal-dialog {
  margin-top: 4rem;
}

.modal-header {
  min-height: 4rem;
  padding: 1rem 1.25rem;
  border-bottom: 1px solid var(--clinica-vx-border) !important;
  background: var(--clinica-vx-surface);
}

.modal-title {
  display: flex;
  align-items: center;
  gap: .5rem;
  color: var(--clinica-vx-heading) !important;
  font-size: 1.05rem;
  font-weight: 600;
  letter-spacing: 0;
}

.modal-header .close {
  width: 2rem;
  height: 2rem;
  margin: -.25rem -.35rem -.25rem auto !important;
  padding: 0 !important;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--clinica-vx-muted) !important;
  text-shadow: none !important;
  opacity: 1 !important;
  background: rgba(47, 43, 61, .06);
}

.modal-header .close:hover {
  color: var(--clinica-vx-primary) !important;
  background: rgba(115, 103, 240, .12);
}

.modal-body {
  padding: 1.25rem;
  color: var(--clinica-vx-text);
}

.modal-footer {
  padding: 1rem 1.25rem;
  border-top: 1px solid var(--clinica-vx-border) !important;
  background: #fafafa;
}

.modal-content.bg-success,
.modal-content.bg-danger,
.modal-content.bg-warning,
.modal-content.bg-info,
.modal-content.bg-primary,
.modal-content.bg-secondary {
  background: var(--clinica-vx-surface) !important;
  color: var(--clinica-vx-text) !important;
}

.modal-content.bg-success .modal-header,
.modal-content.bg-danger .modal-header,
.modal-content.bg-warning .modal-header,
.modal-content.bg-info .modal-header,
.modal-content.bg-primary .modal-header,
.modal-content.bg-secondary .modal-header {
  border-top: .25rem solid var(--clinica-modal-accent, var(--clinica-vx-primary));
}

.modal-content.bg-success { --clinica-modal-accent: #28c76f; }
.modal-content.bg-danger { --clinica-modal-accent: #ea5455; }
.modal-content.bg-warning { --clinica-modal-accent: #ff9f43; }
.modal-content.bg-info { --clinica-modal-accent: #00cfe8; }
.modal-content.bg-primary { --clinica-modal-accent: var(--clinica-vx-primary); }
.modal-content.bg-secondary { --clinica-modal-accent: #82868b; }

.modal-content .btn-outline-light {
  color: var(--clinica-vx-text) !important;
  border-color: transparent !important;
  background: rgba(47, 43, 61, .08) !important;
}

.modal-content .btn-outline-light:hover {
  color: var(--clinica-vx-primary) !important;
  background: rgba(115, 103, 240, .12) !important;
}

#toast-container {
  z-index: 1095;
}

#toast-container > .toast {
  min-width: 300px;
  max-width: min(380px, calc(100vw - 2rem));
  border: 0;
  border-radius: var(--clinica-vx-radius);
  box-shadow: var(--clinica-vx-shadow) !important;
  opacity: 1;
}

#toast-container > .toast .toast-title {
  font-size: .925rem;
  font-weight: 700;
  letter-spacing: 0;
}

#toast-container > .toast .toast-message {
  font-size: .875rem;
  line-height: 1.35;
}

#toast-container > .toast .toast-close-button {
  top: -.2rem;
  right: -.15rem;
  font-weight: 400;
  text-shadow: none;
  opacity: .9;
}

#toast-container > .toast .toast-progress {
  height: 3px;
  opacity: .35;
}

.card-header {
  background: transparent !important;
  border-bottom: 1px solid var(--clinica-vx-border) !important;
  padding: 1rem 1.25rem;
}

.card-title,
.modal-title {
  color: var(--clinica-vx-heading);
  font-weight: 600;
}

.card-body {
  padding: 1.25rem;
}

.small-box {
  overflow: hidden;
}

.small-box > .inner {
  padding: 1.25rem;
}

.small-box h3 {
  font-weight: 700;
}

.btn {
  border-radius: var(--clinica-vx-radius) !important;
  font-weight: 500;
  box-shadow: none !important;
}

.btn-primary,
.page-item.active .page-link,
.badge-primary,
.bg-primary {
  background-color: var(--clinica-vx-primary) !important;
  border-color: var(--clinica-vx-primary) !important;
}

.form-control,
.custom-select,
.select2-container--bootstrap4 .select2-selection {
  border-color: var(--clinica-vx-border) !important;
  border-radius: var(--clinica-vx-radius) !important;
  color: var(--clinica-vx-heading);
  min-height: 38px;
}

.form-control:focus,
.custom-select:focus,
.select2-container--bootstrap4.select2-container--focus .select2-selection {
  border-color: var(--clinica-vx-primary) !important;
  box-shadow: 0 0 0 .2rem rgba(115, 103, 240, .14) !important;
}

.table {
  color: var(--clinica-vx-text);
}

.card > .card-body > .card.card-info,
.card > .card-body > .card.card-primary,
.card > .card-body > .card.card-secondary {
  margin: 0 0 1.25rem;
  border: 1px solid var(--clinica-vx-border) !important;
  border-radius: var(--clinica-vx-radius) !important;
  background: #fafafa;
  box-shadow: none !important;
}

.card > .card-body > .card.card-info > .card-header,
.card > .card-body > .card.card-primary > .card-header,
.card > .card-body > .card.card-secondary > .card-header {
  min-height: 0;
  padding: .875rem 1rem .25rem;
  border-bottom: 0 !important;
}

.card > .card-body > .card.card-info > .card-header .card-title,
.card > .card-body > .card.card-primary > .card-header .card-title,
.card > .card-body > .card.card-secondary > .card-header .card-title {
  color: var(--clinica-vx-muted);
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.card > .card-body > .card.card-info > .card-body,
.card > .card-body > .card.card-primary > .card-body,
.card > .card-body > .card.card-secondary > .card-body {
  padding: .75rem 1rem 1rem;
}

.card-body > .row.mb-3,
.card > .card-body > .card.card-info .row,
.card > .card-body > .card.card-primary .row,
.card > .card-body > .card.card-secondary .row {
  row-gap: .75rem;
}

.clinica-table-search {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: .65rem;
  margin-bottom: 1rem;
}

.clinica-table-search-toggle {
  width: 2.25rem;
  height: 2.25rem;
  border: 1px solid transparent !important;
  border-radius: var(--clinica-vx-radius) !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 !important;
  color: var(--clinica-vx-heading) !important;
  background: rgba(47, 43, 61, .07) !important;
  box-shadow: none !important;
}

.clinica-table-search-toggle:hover,
.clinica-table-search-toggle:focus,
.clinica-table-search.is-open .clinica-table-search-toggle {
  color: #fff !important;
  background: var(--clinica-vx-primary) !important;
  outline: none;
}

.clinica-table-search-fields {
  display: none;
  flex: 0 0 100%;
}

.clinica-table-search.is-open .clinica-table-search-fields {
  display: block;
}

.clinica-table-search-fields .row {
  row-gap: .75rem;
}

.card-body label,
.dataTables_length label,
.dataTables_filter label {
  color: var(--clinica-vx-heading);
  font-size: .8125rem;
  font-weight: 500 !important;
}

.table-responsive,
.dataTables_wrapper {
  width: 100%;
}

.dataTables_wrapper {
  border: 1px solid var(--clinica-vx-border);
  border-radius: var(--clinica-vx-radius);
  overflow: hidden;
  background: var(--clinica-vx-surface);
}

.dataTables_wrapper:not(.clinica-dt-tools-ready) .dt-buttons,
.dataTables_wrapper:not(.clinica-dt-tools-ready) .dataTables_filter,
.dataTables_wrapper:not(.clinica-dt-tools-ready) .dataTables_length {
  display: none !important;
}

.dataTables_wrapper.clinica-dt-tools-ready {
  overflow: visible;
}

.clinica-dt-tools {
  position: relative;
  z-index: 4;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: .5rem;
  margin: 0;
  padding: .7rem 1rem;
  border-bottom: 1px solid var(--clinica-vx-border);
  border-top-left-radius: var(--clinica-vx-radius);
  border-top-right-radius: var(--clinica-vx-radius);
  background: var(--clinica-vx-surface-soft);
}

.clinica-dt-tools-toggle {
  width: 2.15rem;
  height: 2.15rem;
  border: 1px solid transparent !important;
  border-radius: var(--clinica-vx-radius) !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 !important;
  color: var(--clinica-vx-heading) !important;
  background: rgba(47, 43, 61, .07) !important;
  box-shadow: none !important;
}

.clinica-dt-tools-toggle:hover,
.clinica-dt-tools-toggle:focus {
  color: #fff !important;
  background: var(--clinica-vx-primary) !important;
  outline: none;
}

.clinica-dt-tools-panel {
  display: none;
  flex: 0 0 100%;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  gap: .5rem;
  padding-top: .6rem;
  border-top: 1px solid var(--clinica-vx-border);
}

.dataTables_wrapper.clinica-dt-tools-ready:not(.clinica-dt-tools-open) .clinica-dt-tools-panel .dt-buttons,
.dataTables_wrapper.clinica-dt-tools-ready:not(.clinica-dt-tools-open) .clinica-dt-tools-panel .dataTables_filter {
  display: none !important;
}

.dataTables_wrapper.clinica-dt-tools-open .clinica-dt-tools-panel {
  display: flex;
}

.clinica-dt-tools-panel .dt-buttons {
  width: auto;
  flex: 0 1 auto;
}

.clinica-dt-tools-panel .dataTables_filter {
  flex: 0 1 260px;
  margin: 0;
}

.clinica-dt-tools-panel .dataTables_filter label {
  width: 100%;
  margin: 0;
  display: flex;
  align-items: center;
  gap: .5rem;
  justify-content: flex-end;
}

.clinica-dt-tools-panel .dataTables_filter input {
  min-width: 0;
  width: 180px !important;
  margin-right: 0 !important;
}

.dataTables_filter.clinica-dt-native-filter-hidden {
  display: none !important;
}

.dataTables_wrapper > .row:first-child {
  align-items: center;
  margin: 0;
  padding: .85rem 1rem;
  border-bottom: 1px solid var(--clinica-vx-border);
  background: var(--clinica-vx-surface-soft);
}

.dataTables_wrapper > .row:last-child {
  align-items: center;
  margin: 0;
  padding: .85rem 1rem;
  border-top: 1px solid var(--clinica-vx-border);
  background: var(--clinica-vx-surface-soft);
}

.dataTables_wrapper > .row > [class*="col-"] {
  padding-left: .5rem;
  padding-right: .5rem;
}

.dataTables_wrapper .dt-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: .35rem;
}

.dataTables_wrapper .dt-buttons .btn,
.dataTables_wrapper .dt-button-collection .dt-button {
  min-height: 2.25rem;
  border: 0 !important;
  border-radius: var(--clinica-vx-radius) !important;
  padding: .45rem .75rem !important;
  color: var(--clinica-vx-text) !important;
  background: rgba(47, 43, 61, .07) !important;
  box-shadow: none !important;
  font-size: .875rem;
  font-weight: 500;
}

.dataTables_wrapper .dt-buttons .btn:hover,
.dataTables_wrapper .dt-button-collection .dt-button:hover {
  color: var(--clinica-vx-primary) !important;
  background: rgba(115, 103, 240, .12) !important;
}

.dataTables_wrapper .dataTables_length select,
.dataTables_wrapper .dataTables_filter input {
  display: inline-block;
  width: auto;
  min-height: 34px;
  margin: 0 .35rem;
}

.dataTables_wrapper .dataTables_filter {
  text-align: right;
}

.dataTables_wrapper .dataTables_filter input {
  min-width: 220px;
}

.dataTables_wrapper .dataTables_info {
  color: var(--clinica-vx-muted);
  font-size: .8125rem;
  padding-top: 0 !important;
}

.dataTables_wrapper .table {
  margin: 0 !important;
  border-collapse: separate !important;
  border-spacing: 0;
}

.dataTables_wrapper .table.table-bordered,
.dataTables_wrapper .table.table-bordered td,
.dataTables_wrapper .table.table-bordered th {
  border-left: 0 !important;
  border-right: 0 !important;
}

.dataTables_wrapper .table.table-bordered {
  border: 0 !important;
}

.dataTables_wrapper .table thead th {
  background: var(--clinica-vx-table-head);
  border-top: 0 !important;
  border-bottom: 1px solid var(--clinica-vx-border) !important;
  color: var(--clinica-vx-muted);
  font-size: .75rem;
  line-height: 1.2;
  padding: .85rem 1rem;
  vertical-align: middle;
}

.dataTables_wrapper .table tbody td {
  background: var(--clinica-vx-surface);
  border-top: 1px solid var(--clinica-vx-border) !important;
  color: var(--clinica-vx-text);
  font-size: .875rem;
  padding: .9rem 1rem;
}

.dataTables_wrapper .table.table-striped tbody tr:nth-of-type(odd) {
  background: transparent;
}

.dataTables_wrapper .table.table-striped tbody tr:nth-of-type(odd) td {
  background: var(--clinica-vx-table-stripe);
}

.dataTables_wrapper .table tbody tr:hover td {
  background: var(--clinica-vx-table-hover);
}

.dataTables_wrapper .table td:last-child,
.dataTables_wrapper .table th:last-child {
  white-space: nowrap;
}

.dataTables_wrapper .table .btn.btn-sm {
  min-height: 2rem;
  padding: .35rem .65rem !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .35rem;
}

.dataTables_wrapper .table .btn.btn-sm.btn-icon {
  width: 2rem;
  padding: 0 !important;
}

.card > .card-body > .card.card-info .input-group,
.card > .card-body > .card.card-primary .input-group,
.card > .card-body > .card.card-secondary .input-group,
.card-body > .row.mb-3 .input-group {
  flex-wrap: nowrap;
}

.card > .card-body > .card.card-info .form-control,
.card > .card-body > .card.card-primary .form-control,
.card > .card-body > .card.card-secondary .form-control,
.card-body > .row.mb-3 .form-control {
  min-width: 0;
}

.card > .card-body > .card.card-info #filter-clear,
.card > .card-body > .card.card-primary #filter-clear,
.card > .card-body > .card.card-secondary #filter-clear,
.card-body > .row.mb-3 #filter-clear,
.card-body > .row.mb-3 [id$="-clear"] {
  min-height: 38px;
  color: var(--clinica-vx-text) !important;
  background: rgba(47, 43, 61, .08) !important;
  border-color: transparent !important;
}

.card > .card-body > .card.card-info #filter-clear:hover,
.card > .card-body > .card.card-primary #filter-clear:hover,
.card > .card-body > .card.card-secondary #filter-clear:hover,
.card-body > .row.mb-3 #filter-clear:hover,
.card-body > .row.mb-3 [id$="-clear"]:hover {
  color: var(--clinica-vx-primary) !important;
  background: rgba(115, 103, 240, .12) !important;
}

.dataTables_wrapper .page-link {
  min-width: 1.95rem;
  height: 1.95rem;
  margin-left: -1px;
  border: 1px solid var(--clinica-vx-border) !important;
  border-radius: 0 !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: .25rem .55rem;
  color: var(--clinica-vx-text);
  background: var(--clinica-vx-surface);
  font-size: .8125rem;
  line-height: 1;
}

.dataTables_wrapper .page-link:hover {
  color: var(--clinica-vx-primary);
  background: rgba(115, 103, 240, .1);
  border-color: rgba(115, 103, 240, .28) !important;
}

.dataTables_wrapper .page-item.active .page-link {
  color: #fff !important;
  background: var(--clinica-vx-primary) !important;
  border-color: var(--clinica-vx-primary) !important;
  box-shadow: 0 .125rem .375rem rgba(115, 103, 240, .35);
}

.dataTables_wrapper .page-item.disabled .page-link {
  color: var(--clinica-vx-muted);
  opacity: .55;
  background: var(--clinica-vx-surface-soft);
}

.dataTables_wrapper .pagination {
  justify-content: flex-end;
  margin: 0;
}

.dataTables_wrapper .pagination .page-item:first-child .page-link {
  border-top-left-radius: var(--clinica-vx-radius) !important;
  border-bottom-left-radius: var(--clinica-vx-radius) !important;
}

.dataTables_wrapper .pagination .page-item:last-child .page-link {
  border-top-right-radius: var(--clinica-vx-radius) !important;
  border-bottom-right-radius: var(--clinica-vx-radius) !important;
}

.table thead th {
  border-bottom: 1px solid var(--clinica-vx-border);
  color: var(--clinica-vx-heading);
  font-size: .8125rem;
  font-weight: 600;
  text-transform: uppercase;
}

.table td,
.table th {
  border-top-color: var(--clinica-vx-border);
  vertical-align: middle;
}

.dataTables_wrapper .dataTables_paginate .paginate_button,
.page-link {
  border-radius: 0 !important;
}

.main-footer {
  border-top: 0;
  background: transparent;
  color: var(--clinica-vx-muted);
  padding: 1rem 1.5rem 1.5rem;
}

.footer-separator {
  display: none;
}

.clinica-auth-page {
  min-height: 100vh;
  background: var(--clinica-vx-bg) !important;
  background-image:
    radial-gradient(circle at 12% 12%, rgba(0, 207, 232, .10), transparent 28%),
    radial-gradient(circle at 88% 18%, rgba(115, 103, 240, .12), transparent 28%) !important;
  overflow-y: auto !important;
}

.authentication-wrapper {
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 2rem 1rem;
}

.authentication-inner {
  width: 100%;
  max-width: 430px;
}

.clinica-auth-card {
  border-radius: var(--clinica-vx-radius) !important;
}

.clinica-auth-brand {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .75rem;
  margin-bottom: 1.5rem;
  color: var(--clinica-vx-heading);
  text-decoration: none !important;
}

.clinica-auth-brand img {
  width: 48px;
  height: 48px;
  border-radius: .375rem;
  object-fit: cover;
}

.clinica-auth-brand span {
  color: var(--clinica-vx-heading);
  font-size: 1.35rem;
  font-weight: 700;
  letter-spacing: 0;
}

.clinica-auth-title {
  color: var(--clinica-vx-heading);
  font-size: 1.35rem;
  font-weight: 600;
  margin-bottom: .25rem;
}

body.clinica-paciente-bg {
  background:
    linear-gradient(135deg, rgba(255, 255, 255, .90), rgba(245, 249, 255, .82)),
    url('../../../dist/img/clinica/paciente-background.jpg') center center / cover fixed !important;
}

body.clinica-paciente-bg .wrapper,
body.clinica-paciente-bg .content-wrapper {
  background: transparent !important;
}

body.clinica-paciente-bg .content-wrapper {
  backdrop-filter: saturate(1.05);
}

body.clinica-paciente-bg .card {
  background: rgba(255, 255, 255, .94) !important;
}

body.clinica-paciente-bg.login-page {
  min-height: 100vh;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, .82), rgba(243, 248, 255, .74)),
    url('../../../dist/img/clinica/paciente-background.jpg') center center / cover fixed !important;
}

body.dark-mode {
  --clinica-vx-bg: #25293c;
  --clinica-vx-surface: #2f3349;
  --clinica-vx-surface-soft: #343852;
  --clinica-vx-table-head: #3b405c;
  --clinica-vx-table-stripe: rgba(255, 255, 255, .025);
  --clinica-vx-table-hover: rgba(115, 103, 240, .16);
  --clinica-vx-heading: #cfd3ec;
  --clinica-vx-text: #b6bee3;
  --clinica-vx-muted: #8c93bd;
  --clinica-vx-border: #464a65;
}

html body.dark-mode,
body.dark-mode.hold-transition,
body.dark-mode.sidebar-mini,
body.dark-mode .wrapper,
body.dark-mode .content-wrapper {
  background: var(--clinica-vx-bg) !important;
  color: var(--clinica-vx-text) !important;
}

html body.dark-mode .main-header.navbar {
  background: rgba(47, 51, 73, .94) !important;
  border: 1px solid rgba(255, 255, 255, .06) !important;
  box-shadow: 0 .25rem 1.125rem rgba(0, 0, 0, .20) !important;
}

html body.dark-mode .main-header .nav-link {
  color: var(--clinica-vx-heading) !important;
}

html body.dark-mode .main-header .nav-link:hover {
  background: rgba(115, 103, 240, .18) !important;
  color: #fff !important;
}

html body.dark-mode .main-footer {
  background: #2b3046 !important;
  border-top: 1px solid rgba(255, 255, 255, .06) !important;
  color: var(--clinica-vx-muted) !important;
  box-shadow: 0 -.125rem .75rem rgba(0, 0, 0, .12);
}

html body.dark-mode .main-footer strong,
html body.dark-mode .main-footer b {
  color: var(--clinica-vx-heading) !important;
}

html body.dark-mode .footer-separator,
html body.dark-mode .control-sidebar {
  background: var(--clinica-vx-bg) !important;
}

body.dark-mode .main-sidebar {
  background: var(--clinica-vx-surface) !important;
  border-right-color: var(--clinica-vx-border) !important;
  box-shadow: 0 .125rem .5rem rgba(0, 0, 0, .22) !important;
}

body.dark-mode .main-sidebar .menu-inner-shadow {
  background: linear-gradient(var(--clinica-vx-surface) 35%, rgba(47, 51, 73, 0));
}

body.dark-mode .clinica-sidebar-lock {
  color: var(--clinica-vx-text);
  background: rgba(255, 255, 255, .08);
}

body.dark-mode .clinica-sidebar-lock:hover {
  color: #fff;
  background: rgba(115, 103, 240, .28);
}

body.dark-mode .main-sidebar .user-panel {
  border-color: rgba(255, 255, 255, .08) !important;
  background: rgba(255, 255, 255, .045) !important;
}

body.dark-mode .main-sidebar .user-panel .info p,
body.dark-mode .main-sidebar .user-panel a {
  color: var(--clinica-vx-heading) !important;
}

body.dark-mode .clinica-user-stars .is-filled {
  color: #ffc857;
}

body.dark-mode .clinica-user-stars .is-empty {
  color: #6f769d;
  opacity: 1;
}

body.dark-mode .clinica-user-logout {
  color: #aab1d6 !important;
}

body.dark-mode .clinica-user-logout:hover {
  color: #fff !important;
}

body.dark-mode .clinica-unit-switch {
  border-color: transparent !important;
  background: linear-gradient(135deg, var(--clinica-preview-color, var(--clinica-unit-color, #7c3aed)), var(--clinica-preview-accent, var(--clinica-unit-accent, #0f766e))) !important;
  box-shadow: 0 .125rem .5rem rgba(0, 0, 0, .22) !important;
}

body.dark-mode .clinica-unit-compact {
  border-top-color: rgba(255, 255, 255, .08) !important;
  border-bottom-color: rgba(255, 255, 255, .08) !important;
  color: var(--clinica-vx-text) !important;
}

body.dark-mode .clinica-unit-compact:hover,
body.dark-mode .clinica-unit-compact:focus-visible {
  background: rgba(255, 255, 255, .045);
}

body.dark-mode .clinica-unit-compact-badge,
body.dark-mode .clinica-unit-current-icon {
  background: linear-gradient(135deg, var(--clinica-preview-color, var(--clinica-unit-color, #7c3aed)), var(--clinica-preview-accent, var(--clinica-unit-accent, #0f766e))) !important;
  box-shadow: 0 0 0 2px rgba(255, 255, 255, .14);
}

body.dark-mode.sidebar-collapse:not(.clinica-sidebar-hover-open):not(.clinica-sidebar-unit-open):not(.sidebar-open) .main-sidebar .user-panel {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.dark-mode.sidebar-collapse.clinica-sidebar-hover-open .main-sidebar .user-panel,
body.dark-mode.sidebar-collapse.clinica-sidebar-unit-open .main-sidebar .user-panel,
body.dark-mode.sidebar-open.sidebar-collapse .main-sidebar .user-panel {
  border-color: rgba(255, 255, 255, .08) !important;
  background: rgba(255, 255, 255, .045) !important;
  box-shadow: none !important;
}

body.dark-mode .main-sidebar .nav-sidebar .nav-link {
  color: var(--clinica-vx-text) !important;
}

body.dark-mode .main-sidebar .nav-sidebar .nav-link .nav-icon,
body.dark-mode .main-sidebar .nav-sidebar .nav-link .right {
  color: var(--clinica-vx-muted) !important;
}

body.dark-mode .main-sidebar .nav-sidebar .nav-link:hover {
  color: #fff !important;
  background: rgba(115, 103, 240, .18) !important;
}

body.dark-mode .main-sidebar .nav-sidebar .nav-link:hover .nav-icon,
body.dark-mode .main-sidebar .nav-sidebar .nav-link:hover .right {
  color: #fff !important;
}

body.dark-mode .main-sidebar .nav-sidebar .nav-link.active {
  color: #fff !important;
  background: var(--clinica-vx-primary) !important;
  box-shadow: 0 .125rem .5rem rgba(0, 0, 0, .22);
}

body.dark-mode .main-sidebar .nav-sidebar .nav-link.active .nav-icon,
body.dark-mode .main-sidebar .nav-sidebar .nav-link.active > i:first-child,
body.dark-mode .main-sidebar .nav-sidebar .nav-link.active .right,
body.dark-mode .main-sidebar .nav-sidebar .nav-link.active p {
  color: #fff !important;
}

body.dark-mode .main-sidebar .nav-sidebar > .nav-item > .nav-treeview {
  border-left-color: rgba(255, 255, 255, .08) !important;
}

body.dark-mode .main-sidebar .nav-treeview .nav-link {
  color: var(--clinica-vx-muted) !important;
  background: rgba(255, 255, 255, .035) !important;
}

body.dark-mode .main-sidebar .nav-treeview .nav-link .nav-icon,
body.dark-mode .main-sidebar .nav-treeview .nav-link .right {
  color: var(--clinica-vx-muted) !important;
}

body.dark-mode .main-sidebar .nav-treeview .nav-link:hover {
  color: #fff !important;
  background: rgba(115, 103, 240, .16) !important;
}

body.dark-mode .main-sidebar .nav-treeview .nav-link.active {
  color: #fff !important;
  background: rgba(115, 103, 240, .30) !important;
  box-shadow: none !important;
}

body.dark-mode .main-sidebar .nav-treeview .nav-link.active .nav-icon,
body.dark-mode .main-sidebar .nav-treeview .nav-link.active > i:first-child,
body.dark-mode .main-sidebar .nav-treeview .nav-link.active .right,
body.dark-mode .main-sidebar .nav-treeview .nav-link.active p {
  color: #fff !important;
}

body.dark-mode.sidebar-collapse .main-sidebar .nav-sidebar .nav-link.active .nav-icon,
body.dark-mode.sidebar-collapse .main-sidebar .nav-sidebar .nav-link.active > i:first-child {
  color: #fff !important;
  opacity: 1 !important;
}

body.dark-mode .dataTables_wrapper {
  background: var(--clinica-vx-surface) !important;
  border-color: var(--clinica-vx-border) !important;
}

body.dark-mode .dataTables_wrapper > .row:first-child,
body.dark-mode .dataTables_wrapper > .row:last-child {
  background: var(--clinica-vx-surface-soft) !important;
  color: var(--clinica-vx-text) !important;
  border-color: var(--clinica-vx-border) !important;
}

body.dark-mode .clinica-dt-tools {
  background: var(--clinica-vx-surface-soft) !important;
  border-color: var(--clinica-vx-border) !important;
}

body.dark-mode .clinica-dt-tools-toggle {
  color: var(--clinica-vx-heading) !important;
  background: rgba(255, 255, 255, .08) !important;
  border-color: rgba(255, 255, 255, .08) !important;
}

body.dark-mode .clinica-dt-tools-toggle:hover,
body.dark-mode .clinica-dt-tools-toggle:focus,
body.dark-mode .dataTables_wrapper.clinica-dt-tools-open .clinica-dt-tools-toggle,
body.dark-mode .clinica-table-search-toggle:hover,
body.dark-mode .clinica-table-search-toggle:focus,
body.dark-mode .clinica-table-search.is-open .clinica-table-search-toggle {
  color: #fff !important;
  background: var(--clinica-vx-primary) !important;
  border-color: var(--clinica-vx-primary) !important;
}

body.dark-mode .clinica-table-search-toggle {
  color: var(--clinica-vx-heading) !important;
  background: rgba(255, 255, 255, .08) !important;
  border-color: rgba(255, 255, 255, .08) !important;
}

body.dark-mode .clinica-dt-tools-panel {
  border-color: var(--clinica-vx-border) !important;
}

body.dark-mode .dataTables_wrapper .dataTables_length,
body.dark-mode .dataTables_wrapper .dataTables_filter,
body.dark-mode .dataTables_wrapper .dataTables_info,
body.dark-mode .dataTables_wrapper .dataTables_paginate,
body.dark-mode .dataTables_wrapper label {
  color: var(--clinica-vx-text) !important;
}

body.dark-mode .dataTables_wrapper .dataTables_filter input,
body.dark-mode .dataTables_wrapper .dataTables_length select {
  color: var(--clinica-vx-heading) !important;
  background: #25293c !important;
  border-color: var(--clinica-vx-border) !important;
}

body.dark-mode .dataTables_wrapper .dt-buttons .btn,
body.dark-mode .dataTables_wrapper .dt-button-collection .dt-button {
  color: var(--clinica-vx-text) !important;
  background: rgba(255, 255, 255, .08) !important;
}

body.dark-mode .dataTables_wrapper .dt-buttons .btn:hover,
body.dark-mode .dataTables_wrapper .dt-button-collection .dt-button:hover,
body.dark-mode .dataTables_wrapper .page-link:hover {
  color: #fff !important;
  background: rgba(115, 103, 240, .28) !important;
}

body.dark-mode .dataTables_wrapper .pagination .page-item .page-link,
body.dark-mode .dataTables_wrapper .page-link {
  color: var(--clinica-vx-text) !important;
  background: var(--clinica-vx-surface) !important;
  border-color: var(--clinica-vx-border) !important;
}

body.dark-mode .dataTables_wrapper .pagination .page-item.disabled .page-link,
body.dark-mode .dataTables_wrapper .page-item.disabled .page-link {
  color: var(--clinica-vx-muted) !important;
  background: var(--clinica-vx-surface-soft) !important;
}

body.dark-mode .dataTables_wrapper .pagination .page-item.active .page-link,
body.dark-mode .dataTables_wrapper .page-item.active .page-link {
  color: #fff !important;
  background: var(--clinica-vx-primary) !important;
  border-color: var(--clinica-vx-primary) !important;
}

body.dark-mode .dataTables_wrapper .table thead th {
  background: var(--clinica-vx-table-head) !important;
  color: var(--clinica-vx-heading) !important;
  border-color: var(--clinica-vx-border) !important;
}

body.dark-mode .dataTables_wrapper .table tbody td {
  background: var(--clinica-vx-surface) !important;
  color: var(--clinica-vx-text) !important;
  border-color: var(--clinica-vx-border) !important;
}

body.dark-mode .dataTables_wrapper .table.table-striped tbody tr:nth-of-type(odd) td {
  background: var(--clinica-vx-table-stripe) !important;
}

body.dark-mode .dataTables_wrapper .table tbody tr:hover td {
  background: var(--clinica-vx-table-hover) !important;
}

body.dark-mode .main-sidebar,
body.dark-mode .main-header.navbar,
body.dark-mode .card,
body.dark-mode .dropdown-menu,
body.dark-mode .modal-content {
  background: var(--clinica-vx-surface) !important;
}

body.dark-mode .main-sidebar .user-panel {
  background: rgba(255,255,255,.04);
}

@media (max-width: 991.98px) {
  .main-header > .navbar-nav:first-child {
    display: flex !important;
  }

  .main-header #btnPushmenu {
    display: inline-flex !important;
  }
}

@media (max-width: 991.98px) {
  body:not(.sidebar-collapse) .content-wrapper,
  body:not(.sidebar-collapse) .main-footer,
  body.sidebar-collapse .content-wrapper,
  body.sidebar-collapse .main-footer {
    margin-left: 0 !important;
  }

  .main-header.navbar {
    right: .75rem;
    left: .75rem;
    width: calc(100% - 1.5rem) !important;
    margin-left: 0 !important;
    padding: .55rem .7rem;
    justify-content: space-between;
  }

  body:not(.sidebar-collapse) .main-header.navbar,
  body.sidebar-collapse .main-header.navbar {
    right: .75rem;
    left: .75rem;
    width: calc(100% - 1.5rem) !important;
    margin-left: 0 !important;
  }

  .main-header .navbar-nav {
    flex-direction: row;
    align-items: center;
    min-width: 0;
  }

  .main-header .navbar-nav.ml-auto {
    flex: 1 1 auto;
    justify-content: flex-end;
    overflow: visible;
  }

  .main-header .nav-item {
    flex: 0 0 auto;
  }

  .main-sidebar,
  body.sidebar-collapse .main-sidebar {
    width: var(--clinica-vx-menu-width) !important;
    transform: translateX(-105%);
  }

  body.sidebar-open .main-sidebar,
  body.sidebar-open.sidebar-collapse .main-sidebar {
    transform: translateX(0);
    width: var(--clinica-vx-menu-width) !important;
  }

  body.sidebar-open.sidebar-collapse .clinica-brand-link {
    padding: 1.15rem 1.35rem .95rem !important;
    justify-content: flex-start;
  }

  body.sidebar-open.sidebar-collapse .clinica-brand-main {
    width: auto;
    justify-content: flex-start;
  }

  body.sidebar-open.sidebar-collapse .clinica-brand-name,
  body.sidebar-open.sidebar-collapse .main-sidebar .user-panel .info,
  body.sidebar-open.sidebar-collapse .main-sidebar .nav-sidebar .nav-link p,
  body.sidebar-open.sidebar-collapse .main-sidebar .nav-sidebar .nav-link .right {
    display: block !important;
  }

  body.sidebar-open.sidebar-collapse .clinica-sidebar-lock {
    display: inline-flex !important;
  }

  body.sidebar-open.sidebar-collapse .main-sidebar .user-panel {
    width: auto;
    min-height: auto;
    margin: .65rem .9rem 1rem !important;
    padding: .75rem !important;
    border: 1px solid rgba(47, 43, 61, .08) !important;
    background: #f6f6f8 !important;
    justify-content: flex-start;
  }

  body.sidebar-open.sidebar-collapse .main-sidebar .user-panel .image {
    width: auto;
    height: auto;
    margin: 0 .5rem 0 0 !important;
  }

  body.sidebar-open.sidebar-collapse .clinica-unit-switch {
    display: block !important;
  }

  body.sidebar-open.sidebar-collapse .clinica-unit-compact {
    display: none !important;
  }

  body.sidebar-open.sidebar-collapse .main-sidebar .nav-sidebar {
    padding: 0 .85rem 1rem !important;
  }

  body.sidebar-open.sidebar-collapse .main-sidebar .nav-sidebar > .nav-item > .nav-link,
  body.sidebar-open.sidebar-collapse .main-sidebar .nav-treeview > .nav-item > .nav-link {
    width: 100% !important;
    height: auto;
    padding: .55rem .875rem !important;
    justify-content: flex-start;
  }

  .content-wrapper {
    padding-top: 5rem;
  }

  .content-header,
  .content {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}

@media (max-width: 575.98px) {
  .main-header.navbar,
  body:not(.sidebar-collapse) .main-header.navbar,
  body.sidebar-collapse .main-header.navbar {
    top: .65rem;
    right: .65rem;
    left: .65rem;
    width: calc(100% - 1.3rem) !important;
    min-height: 56px;
    padding: .45rem .55rem;
  }

  .main-header .nav-link {
    width: 2rem;
    height: 2rem;
    margin: 0 .025rem;
    font-size: .95rem;
  }

  .main-header .navbar-badge {
    right: -.05rem;
    top: -.05rem;
    min-width: 1rem;
    height: 1rem;
    padding: .18rem .28rem;
    font-size: .63rem;
    line-height: .72rem;
  }

  .content-wrapper {
    padding-top: 4.75rem;
  }
}

@media (max-width: 374.98px) {
  .main-header .nav-link {
    width: 1.85rem;
    height: 1.85rem;
    font-size: .88rem;
  }
}
