/* ============================================
   COLABY - ESTILOS UNIFICADOS
   ============================================
   Este archivo contiene todos los estilos personalizados
   de la plataforma Colaby, unificados desde:
   - assets/css/main.css
   - assets/css/authentication.css
   - assets/css/color_skins.css
   - css/*CSS.php (estilos por vista)
   - Estilos inline de header.php y footer.php

   Este archivo REEMPLAZA el uso de main.css para las vistas
   del alcance (menu, Principal, Sistema, Tarifas, Apps, etc.).
   No es necesario cargar main.css en header.php.
   ============================================ */

/* ============================================
   1. VARIABLES CSS DE COLABY (MEJORADAS)
   ============================================ */
:root {
  /* Colores principales - Ajustados para legibilidad 24/7 */
  --colaby-primary: #1a8a8f;
  --colaby-primary-dark: #156d71;
  --colaby-primary-light: #b8e6e8;
  --colaby-primary-hover: #156d71;
  --colaby-primary-shadow: 0 4px 15px rgba(26, 138, 143, 0.35);

  /* Azul usado en algunos componentes (ej: tabs) - valor existente en CSS */
  --colaby-blue: #2196f3;

  --colaby-secondary: #d45a1a;
  --colaby-secondary-dark: #b04510;
  --colaby-secondary-light: #ffd5c0;
  --colaby-secondary-hover: #b04510;
  --colaby-secondary-shadow: 0 4px 15px rgba(212, 90, 26, 0.35);

  --colaby-success: #5a9a10;
  --colaby-success-hover: #3d6a0a;
  --colaby-success-shadow: 0 4px 15px rgba(90, 154, 16, 0.35);

  --colaby-danger: #c62828;
  --colaby-danger-hover: #8e1c1c;
  --colaby-danger-shadow: 0 4px 15px rgba(198, 40, 40, 0.35);

  --colaby-warning: #e5a800;
  --colaby-warning-hover: #b38300;
  --colaby-warning-shadow: 0 4px 15px rgba(229, 168, 0, 0.35);

  --colaby-info: #1e2a38;
  --colaby-info-hover: #15202d;
  --colaby-info-shadow: 0 4px 15px rgba(30, 42, 56, 0.35);

  --colaby-light: #f0edea;
  --colaby-white: #ffffff;
  --colaby-dark: #1a1a1a;
  --colaby-gray: #555555;
  --colaby-gray-light: #e0e0e0;

  --colaby-background: #ebeef2;

  /* Gradientes - Más oscuros para legibilidad */
  --header-gradient: linear-gradient(
    135deg,
    #156d71 0%,
    #1a8a8f 50%,
    #d45a1a 100%
  );
  --footer-gradient: linear-gradient(135deg, #b04510 0%, #d45a1a 100%);

  /* Sombras mejoradas */
  --colaby-shadow-sm: 0 2px 6px rgba(0, 0, 0, 0.06);
  --colaby-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
  --colaby-shadow-md: 0 4px 12px rgba(0, 0, 0, 0.12);
  --colaby-shadow-strong: 0 6px 20px rgba(0, 0, 0, 0.12);

  /* Bordes mejorados */
  --colaby-border: 1px solid rgba(0, 0, 0, 0.08);
  --colaby-border-medium: 1px solid rgba(0, 0, 0, 0.12);

  /* Estados de cuenta de abonados */
  --estado-al-dia: #2e7d32;
  --estado-al-dia-bg: rgba(46, 125, 50, 0.1);
  --estado-deuda: #c62828;
  --estado-deuda-bg: rgba(198, 40, 40, 0.1);

  /* Estados de móviles / viajes (paleta unificada) */
  --colaby-estado-libre: #7fe3b0; /* verde menta */
  --colaby-estado-otorgado: #7fb5ff; /* celeste */
  --colaby-estado-confirmado: #f6cf7a; /* ámbar pastel */
  --colaby-estado-ocupado: #f28b82; /* rojo pastel */
  --colaby-estado-en-parada: #a6e3ff; /* aqua pastel */
  --colaby-estado-no-disponible: #c9ced6; /* gris suave */
  --colaby-estado-sin-transmision: #b7bdc7; /* gris un poco más marcado */
  --colaby-estado-no-confirmado: #e8a3d6; /* rosa pastel */
  --colaby-estado-inhabilitado: #344054; /* gris oscuro Colaby */

  --colaby-bloqueo: #344054;
  --colaby-temporal: #f7f8fa;
  --colaby-deuda: #b18ad6; /* violeta pastel */

  --colaby-texto-sobre-oscuro: #ffffff;
  --colaby-texto-sobre-claro: #000000;

  /* Estados de viajes (despachos) */
  --colaby-viaje-reserva: #a9a3f5; /* violeta pastel */
  --colaby-viaje-anulado: #d6b6ff; /* lila pastel */
  --colaby-viaje-predespacho: #fff1a6; /* amarillo pastel */
  --colaby-viaje-otorgando: var(--colaby-estado-otorgado);
  --colaby-viaje-confirmado: var(--colaby-estado-confirmado);
  --colaby-viaje-ocupado: var(--colaby-estado-ocupado);

  /* Tipografía */
  --font-title: "Inter", "Segoe UI", sans-serif;
  --font-body: "Inter", "Segoe UI", sans-serif;
  --title-weight: 600;
  --body-weight: 400;
}

/* ============================================
   1.1 MATERIAL ICONS (antes en main.css)
   Necesario para que los iconos .material-icons se vean sin cargar main.css
   ============================================ */
@font-face {
  font-family: "Material Icons";
  font-style: normal;
  font-weight: 400;
  src:
    local("Material Icons"),
    local("MaterialIcons-Regular"),
    url(https://fonts.gstatic.com/s/materialicons/v19/2fcrYFNaTjcS6g4U3t-Y5ZjZjT5FdEJ140U2DJYC3mY.woff2)
      format("woff2");
}
.material-icons {
  font-family: "Material Icons";
  font-weight: normal;
  font-style: normal;
  font-size: 16px;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  display: inline-block;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  font-feature-settings: "liga";
  -webkit-font-feature-settings: "liga";
  -webkit-font-smoothing: antialiased;
}

/* Alineación visual uniforme de iconos dentro de botones / links */
.btn > .material-icons,
.btn .material-icons,
.btn > .fa-solid,
.btn .fa-solid {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  vertical-align: middle;
  position: relative;
  top: -1px; /* corrige ligera caída visual respecto al texto */
}

/* Menú principal (navbar) y dropdowns: icono y texto centrados verticalmente */
.navbar .nav-link,
.dropdown-menu .dropdown-item {
  display: inline-flex;
  align-items: center;
}

.navbar .nav-link .material-icons,
.dropdown-menu .dropdown-item .material-icons {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-right: 4px;
  vertical-align: middle;
}

/* Font Awesome 6: misma alineación que Material en navbar / dropdowns */
.navbar .nav-link .fa-solid,
.navbar .nav-link .fa-regular,
.dropdown-menu .dropdown-item .fa-solid,
.dropdown-menu .dropdown-item .fa-regular {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-right: 6px;
  width: 1.15em;
  vertical-align: middle;
}

/* Bloque derecho del navbar (usuario): antes inline en menu.php */
.navbar-nav.navbar-nav-user-end {
  display: flex;
  align-items: center;
  gap: 1rem;
}

/* Menús contextuales (list-group dentro de .dropdown-menu) + FA6 */
.dropdown-menu .list-group-item .fa-solid,
.dropdown-menu .list-group-item .fa-regular {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-right: 6px;
  width: 1.15em;
  vertical-align: middle;
}

/* Menú contextual unificado (todas las vistas) */
ul.dropdown-menu.colaby-context-menu {
  min-width: 200px;
  max-width: min(320px, 92vw);
  padding: 0;
  margin: 0;
  border-radius: 8px;
  border: 1px solid var(--colaby-border, #dee2e6);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
  overflow: hidden;
  z-index: 10050;
  background: var(--colaby-white, #fff);
}

.colaby-context-menu__header {
  list-style: none;
  margin: 0;
  padding: 0;
  border-bottom: 1px solid var(--colaby-border, #dee2e6);
  background: var(--colaby-primary, #1a8a8f);
}

.colaby-context-menu__title {
  display: block;
  padding: 0.5rem 0.75rem;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: var(--colaby-blue, #fff);
  line-height: 1.3;
  user-select: none;
  pointer-events: none;
  text-align: center;
}

.colaby-context-menu__divider {
  margin: 0;
  height: 0;
  border: none;
  border-top: 1px solid var(--colaby-border, #e9ecef);
  background: transparent;
}

.colaby-context-menu__item {
  display: flex;
  align-items: center;
  gap: 0.35rem;
  padding: 0.45rem 0.75rem !important;
  font-size: 13px;
  line-height: 1.35;
  color: var(--colaby-dark, #333) !important;
  border: none !important;
  border-radius: 0 !important;
  background: transparent !important;
  clear: both;
  width: 100%;
  text-align: left;
  transition: background-color 0.12s ease, color 0.12s ease;
}

.colaby-context-menu__item:hover,
.colaby-context-menu__item:focus {
  background: rgba(26, 138, 143, 0.08) !important;
  color: var(--colaby-primary, #1a8a8f) !important;
  text-decoration: none !important;
}

.colaby-context-menu__item .fa-solid,
.colaby-context-menu__item .fa-regular {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-right: 6px;
  width: 1.15em;
  vertical-align: middle;
  opacity: 0.9;
}

/* Toasts ColabyNotify */
@keyframes colaby-notify-enter {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes colaby-notify-exit {
  from {
    opacity: 1;
    transform: translateY(0);
  }
  to {
    opacity: 0;
    transform: translateY(-8px);
  }
}

.colaby-notify-host {
  position: absolute;
  z-index: 65000;
  display: flex;
  flex-direction: column;
  gap: 8px;
  max-width: min(420px, calc(100% - 24px));
  pointer-events: none;
}

.colaby-notify-host--fixed {
  position: fixed;
  z-index: 65001;
}

.colaby-notify-host--from-top.colaby-notify-host--align-right {
  top: 12px;
  right: 12px;
  align-items: flex-end;
}

.colaby-notify-host--from-top.colaby-notify-host--align-left {
  top: 12px;
  left: 12px;
  align-items: flex-start;
}

.colaby-notify-host--from-bottom.colaby-notify-host--align-left {
  bottom: 12px;
  left: 12px;
  align-items: flex-start;
}

.colaby-notify-host--from-bottom.colaby-notify-host--align-right {
  bottom: 12px;
  right: 12px;
  align-items: flex-end;
}

.colaby-notify-host--from-bottom.colaby-notify-host--align-center {
  bottom: 12px;
  left: 50%;
  transform: translateX(-50%);
  align-items: center;
}

.colaby-notify {
  position: relative;
  pointer-events: auto;
  display: flex;
  align-items: flex-start;
  gap: 0.35rem;
  padding: 0.65rem 2.15rem 0.65rem 0.75rem;
  border-radius: 8px;
  border: 1px solid var(--colaby-border, #dee2e6);
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.1);
  font-size: 13px;
  line-height: 1.4;
  color: var(--colaby-dark, #333);
  background: var(--colaby-white, #fff);
}

.colaby-notify--enter {
  animation: colaby-notify-enter 0.28s ease-out forwards;
}

.colaby-notify--exit {
  animation: colaby-notify-exit 0.24s ease-in forwards;
}

.colaby-notify--clickable {
  cursor: pointer;
}

.colaby-notify__close {
  position: absolute;
  top: 4px;
  right: 4px;
  margin: 0;
  padding: 0 6px;
  border: none;
  background: transparent;
  font-size: 22px;
  line-height: 1;
  color: inherit;
  opacity: 0.55;
  cursor: pointer;
  border-radius: 4px;
  transition: opacity 0.15s ease, background-color 0.15s ease;
}

.colaby-notify__close:hover {
  opacity: 1;
  background: rgba(0, 0, 0, 0.06);
}

.colaby-notify__inner {
  flex: 1;
  min-width: 0;
}

.colaby-notify__title {
  font-weight: 600;
  font-size: 12px;
  margin-bottom: 0.2rem;
  opacity: 0.92;
}

.colaby-notify__message {
  word-break: break-word;
}

.colaby-notify--success {
  border-color: rgba(40, 167, 69, 0.35);
  background: rgba(40, 167, 69, 0.08);
  color: var(--colaby-dark, #1b5e20);
}

.colaby-notify--danger {
  border-color: rgba(220, 53, 69, 0.4);
  background: rgba(220, 53, 69, 0.08);
}

.colaby-notify--warning {
  border-color: rgba(255, 193, 7, 0.45);
  background: rgba(255, 193, 7, 0.12);
}

.colaby-notify--info {
  border-color: rgba(33, 150, 243, 0.35);
  background: rgba(33, 150, 243, 0.08);
}

.colaby-notify--dark {
  border-color: rgba(0, 0, 0, 0.25);
  background: rgba(33, 37, 41, 0.92);
  color: var(--colaby-white, #fff);
}

.colaby-notify--dark .colaby-notify__close {
  color: var(--colaby-white, #fff);
}

.colaby-notify--neutral {
  border-color: var(--colaby-border, #dee2e6);
  background: var(--colaby-white, #fff);
}

/* appviajesView — iconos en cabeceras de tabla */
.app-viajes-th-icon {
  font-size: 16px;
}

/* appparadasView — iconos en cabeceras de tabla */
.app-paradas-th-icon {
  font-size: 12px;
}

/* appzonasparadasView — cabecera tabla zonas */
.app-zonas-th-icon {
  font-size: 14px;
}

/* appmapaView — modal Radio Virtual */
.appmapa-modal-title-icon {
  vertical-align: middle;
  margin-right: 0.35em;
}

/* Principal/indexView — login / recuperar contraseña */
.auth-back-link-icon {
  margin-right: 0.5rem;
  font-size: 1.2rem;
}
.modal-recuperar-title-icon {
  font-size: 1.1rem;
}
.modal-generico-info-icon {
  font-size: 24px;
}

/* Telefonía V2 (apptelefoniaView) — iconos en botones compactos */
.view-telefonia .telefonia-icon-16 {
  font-size: 16px;
  line-height: 1;
  vertical-align: middle;
}
.view-telefonia .telefonia-icon-18 {
  font-size: 18px;
  line-height: 1;
  vertical-align: middle;
}

/* Chat Clientes (appchatclientesView): Chatwoot + columnas Telefonía */
.view-chatclientes-container {
  min-height: calc(100vh - 56px);
}
.view-chatclientes-main {
  min-height: 0;
  flex: 1 1 auto;
}
.view-chatclientes-chatwoot {
  flex: 1 1 50%;
  min-width: 0;
  min-height: 0;
}
.view-chatclientes-chatwoot-frame {
  display: block;
  width: 100%;
  flex: 1 1 auto;
  min-height: 0;
  border: 0;
  background: #f0f2f5;
}
.view-chatclientes-telefonia {
  position: relative;
  flex: 0 0 50%;
  width: 50%;
  max-width: 640px;
  min-width: 320px;
}

/* Lista Domicilios optimizado para chatclientes */
.view-chatclientes-telefonia #ListaDomicilios {
  font-size: 10px;
}
.view-chatclientes-telefonia #ListaDomicilios thead th {
  font-size: 9px;
  padding: 2px 3px;
}
.view-chatclientes-telefonia #ListaDomicilios tbody tr {
  min-height: 20px;
}
.view-chatclientes-telefonia #ListaDomicilios tbody tr td {
  padding: 1px 3px;
  vertical-align: middle;
  line-height: 1.2;
}
.view-chatclientes-telefonia #ListaDomicilios .btn-group .btn {
  padding: 0 3px;
  min-width: 22px;
  height: 18px;
  line-height: 18px;
}
.view-chatclientes-telefonia #ListaDomicilios .btn-domicilio-letra {
  font-size: 10px;
}
@media (max-width: 1199px) {
  .view-chatclientes-main {
    flex-wrap: wrap !important;
  }
  .view-chatclientes-chatwoot {
    flex: 1 1 100%;
    min-height: 45vh;
  }
  .view-chatclientes-telefonia {
    flex: 1 1 100%;
    width: 100%;
    max-width: none;
    min-width: 0;
  }
}

/* OPTIMIZADO PARA PANTALLAS 1280x720 - Chat Clientes Telefonía */
@media (max-width: 1280px) {
  .view-chatclientes-telefonia {
    font-size: 11px;
  }
  .view-chatclientes-telefonia .font-12 {
    font-size: 11px !important;
  }
  .view-chatclientes-telefonia b {
    font-size: 11px !important;
  }
  .view-chatclientes-telefonia .form-control {
    font-size: 11px !important;
    padding: 3px 6px !important;
    min-height: 22px !important;
  }
  .view-chatclientes-telefonia .bg-primary,
  .view-chatclientes-telefonia .bg-secondary {
    padding: 3px 4px !important;
  }
  .view-chatclientes-telefonia .bg-primary b,
  .view-chatclientes-telefonia .bg-secondary b {
    font-size: 10px !important;
  }
  .view-chatclientes-telefonia .p-1 {
    padding: 4px !important;
  }
  .view-chatclientes-telefonia .p-2 {
    padding: 6px !important;
  }
  .view-chatclientes-telefonia .telefonia-icon-16 {
    font-size: 14px !important;
  }
  .view-chatclientes-telefonia .telefonia-icon-18 {
    font-size: 16px !important;
  }
  .view-chatclientes-telefonia .btn {
    font-size: 10px !important;
    padding: 2px 6px !important;
  }
  .view-chatclientes-telefonia .btn-sm {
    font-size: 10px !important;
    padding: 2px 6px !important;
  }
  .view-chatclientes-telefonia .metodo-pago-btn-selected {
    min-height: 26px !important;
    padding: 3px 6px !important;
  }
  .view-chatclientes-telefonia #Telefonia_monto_total {
    font-size: 14px !important;
  }
  .view-chatclientes-telefonia label {
    font-size: 10px !important;
  }
  .view-chatclientes-telefonia textarea {
    font-size: 10px !important;
    padding: 3px 4px !important;
  }
  .view-chatclientes-telefonia select.form-control {
    font-size: 10px !important;
    padding: 2px 20px 2px 4px !important;
    min-height: 22px !important;
  }
  .view-chatclientes-telefonia .col-6,
  .view-chatclientes-telefonia .col-3 {
    padding-left: 3px !important;
    padding-right: 3px !important;
  }
  .view-chatclientes-telefonia .row {
    margin-left: -3px !important;
    margin-right: -3px !important;
  }
  .view-chatclientes-telefonia .view-chatclientes-cliente-bar {
    padding: 4px 8px !important;
  }
  .view-chatclientes-telefonia .view-chatclientes-cliente-bar-inner {
    font-size: 10px !important;
  }
  .view-chatclientes-telefonia .ListaDomicilios-container {
    min-height: 120px !important;
    max-height: 160px !important;
  }
  #ListaDomicilios tbody tr td {
    font-size: 10px !important;
    padding: 1px 3px !important;
  }
  #ListaDomicilios thead th {
    font-size: 9px !important;
    padding: 2px 3px !important;
  }
}

/* OPTIMIZADO PARA PANTALLAS MUY COMPACTAS 1024x768 */
@media (max-width: 1024px) {
  .view-chatclientes-chatwoot {
    flex: 1 1 45% !important;
  }
  .view-chatclientes-telefonia {
    flex: 0 0 55% !important;
    width: 55% !important;
    max-width: 564px !important;
    min-width: 280px !important;
  }
  .view-chatclientes-telefonia {
    font-size: 10px;
  }
  .view-chatclientes-telefonia .font-12 {
    font-size: 10px !important;
  }
  .view-chatclientes-telefonia b {
    font-size: 10px !important;
  }
  .view-chatclientes-telefonia .form-control {
    font-size: 10px !important;
    padding: 2px 4px !important;
    min-height: 20px !important;
  }
  .view-chatclientes-telefonia .bg-primary,
  .view-chatclientes-telefonia .bg-secondary {
    padding: 2px 3px !important;
  }
  .view-chatclientes-telefonia .bg-primary b,
  .view-chatclientes-telefonia .bg-secondary b {
    font-size: 9px !important;
  }
  .view-chatclientes-telefonia .p-1 {
    padding: 3px !important;
  }
  .view-chatclientes-telefonia .p-2 {
    padding: 4px !important;
  }
  .view-chatclientes-telefonia .telefonia-icon-16 {
    font-size: 12px !important;
  }
  .view-chatclientes-telefonia .telefonia-icon-18 {
    font-size: 14px !important;
  }
  .view-chatclientes-telefonia .btn {
    font-size: 9px !important;
    padding: 1px 4px !important;
  }
  .view-chatclientes-telefonia .btn-sm {
    font-size: 9px !important;
    padding: 1px 4px !important;
  }
  .view-chatclientes-telefonia .metodo-pago-btn-selected {
    min-height: 22px !important;
    padding: 2px 4px !important;
  }
  .view-chatclientes-telefonia #Telefonia_monto_total {
    font-size: 12px !important;
  }
  .view-chatclientes-telefonia label {
    font-size: 9px !important;
  }
  .view-chatclientes-telefonia textarea {
    font-size: 9px !important;
    padding: 2px 3px !important;
  }
  .view-chatclientes-telefonia select.form-control {
    font-size: 9px !important;
    padding: 1px 18px 1px 3px !important;
    min-height: 20px !important;
  }
  .view-chatclientes-telefonia .ListaDomicilios-container {
    min-height: 80px !important;
    max-height: 120px !important;
  }
  .view-chatclientes-telefonia .view-chatclientes-cliente-bar {
    padding: 3px 6px !important;
  }
  .view-chatclientes-telefonia .view-chatclientes-cliente-bar-inner {
    font-size: 9px !important;
  }
}
.view-chatclientes-cliente-bar {
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06);
}
.view-chatclientes-telefonia-stub {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}
.view-chatclientes-telefonia .view-chatclientes-telefonia-cols {
  min-height: 0;
}
.view-chatclientes-telefonia-cols .view-chatclientes-col-half {
  flex: 1 1 50%;
  min-width: 0;
  min-height: 0;
}
.view-chatclientes-telefonia-cols .view-telefonia-col2,
.view-chatclientes-telefonia-cols .view-telefonia-col3 {
  flex: 1 1 auto !important;
  max-width: none !important;
  width: 100% !important;
}
.view-chatclientes-telefonia-cols .view-telefonia-col3 > .row.mt-1:last-child {
  flex: 1 1 auto;
  min-height: 180px;
  height: auto !important;
}

/* ViajesLayout.php — filtros fecha/hora (iconos superpuestos) */
.viajes-filtro-date-input {
  padding-right: 35px;
  cursor: pointer;
}
.viajes-filtro-hora-select {
  max-width: 100px;
  padding-right: 35px;
  padding-left: 8px;
}
.viajes-filtro-icon-right {
  position: absolute;
  right: 8px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 18px;
  color: var(--colaby-gray);
  opacity: 0.55;
  z-index: 10;
  pointer-events: none;
}
.viajes-filtro-icon-right.viajes-filtro-icon-trigger {
  pointer-events: auto;
  cursor: pointer;
}

/* ============================================
   2. RESET GLOBAL - TEXTO NEGRO POR DEFECTO
   ============================================ */
body, 
.card,
.card-body,
.modal-body,
.form-control,
label,
.col-form-label,
p,
/* span:not(.badge):not(.badge-estado), */
div:not([class*="bg-"]),
td:not([style*="color"]), /* Excluir celdas con color dinámico */
th,
li,
input,
select,
textarea {
  color: #333;
}

/* Excepciones para títulos de popups que deben ser blancos */
.colaby-popup-title,
.colaby-popup-title span,
.colaby-popup-title i,
.colaby-popup-title .material-icons,
.colaby-popup-title .fa-solid,
.modal-header.bg-primary .modal-title,
.modal-header.bg-primary .modal-title span,
.modal-header.bg-primary .modal-title i,
.modal-header.bg-primary .modal-title .material-icons,
.modal-header.bg-primary .modal-title .fa-solid,
#modalEmpresa .modal-header .modal-title,
#modalEmpresa .modal-header .modal-title span,
#modalEmpresa .modal-header .modal-title i {
  color: var(--colaby-white) !important;
}

/* ============================================
   3. CLASES DE UTILIDAD PARA COLORES
   ============================================ */

/* Skeleton loading (shimmer) unificado */
.skeleton-loading {
  position: relative;
  overflow: hidden;
  background-color: #e0e0e0;
}

.skeleton-loading::after {
  content: "";
  position: absolute;
  top: 0;
  left: -150%;
  height: 100%;
  width: 150%;
  background: linear-gradient(
    90deg,
    transparent,
    rgba(255, 255, 255, 0.45),
    transparent
  );
  animation: skeleton-shimmer 1.4s infinite;
}

@keyframes skeleton-shimmer {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(100%);
  }
}

/* Skeletons reutilizables para listas (usuarios, empresas, etc.) */
.usuarios-skeleton-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 8px 0;
}

.usuarios-skeleton-row {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 8px 12px;
}

.usuarios-skeleton-avatar {
  width: 35px;
  height: 35px;
  border-radius: 50%;
}

.usuarios-skeleton-text {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.skeleton-line {
  border-radius: 6px;
}

.skeleton-line-lg {
  height: 10px;
  width: 60%;
}

.skeleton-line-sm {
  height: 8px;
  width: 40%;
}
.text-primary {
  color: var(--colaby-primary) !important;
}
.text-secondary {
  color: var(--colaby-secondary) !important;
}
.text-success {
  color: var(--colaby-success) !important;
}
.text-danger {
  color: var(--colaby-danger) !important;
}
.text-warning {
  color: var(--colaby-warning) !important;
}
.text-info {
  color: var(--colaby-info) !important;
}
.text-light {
  color: var(--colaby-light) !important;
}
.text-dark {
  color: var(--colaby-dark) !important;
}

.bg-primary {
  background-color: var(--colaby-primary) !important;
}
.bg-secondary {
  background-color: var(--colaby-secondary) !important;
  color: var(--colaby-dark);
}
.bg-success {
  background-color: var(--colaby-success) !important;
  color: var(--colaby-dark);
}
.bg-danger {
  background-color: var(--colaby-danger) !important;
}
.bg-warning {
  background-color: var(--colaby-warning) !important;
  color: var(--colaby-dark);
}
.bg-info {
  background-color: var(--colaby-info) !important;
}
.bg-green {
  background-color: var(--colaby-success) !important;
  color: var(--colaby-white) !important;
}
.bg-red {
  background-color: var(--colaby-danger) !important;
  color: var(--colaby-white) !important;
}
.bg-light {
  background-color: var(--colaby-light) !important;
  color: var(--colaby-dark);
}
.bg-dark {
  background-color: var(--colaby-dark) !important;
}

.border-primary {
  border-color: var(--colaby-primary) !important;
}
.border-secondary {
  border-color: var(--colaby-secondary) !important;
}
.border-success {
  border-color: var(--colaby-success) !important;
}
.border-danger {
  border-color: var(--colaby-danger) !important;
}
.border-warning {
  border-color: var(--colaby-warning) !important;
}
.border-info {
  border-color: var(--colaby-info) !important;
}
.border-light {
  border-color: var(--colaby-light) !important;
}
.border-dark {
  border-color: var(--colaby-dark) !important;
}

.colaby-background {
  background-color: var(--colaby-light);
}

/* Colores específicos de Colaby */
.bg-colaby-blue {
  background-color: var(--colaby-blue) !important;
}

.bg-colaby-orange {
  background-color: #ff5722 !important;
}

.bg-colaby-green {
  background-color: #4caf50 !important;
}

/* Estados (móviles / viajes) - utilidades para badges/labels/markers */
.estado-bg-libre {
  background-color: var(--colaby-estado-libre) !important;
  color: var(--colaby-texto-sobre-claro) !important;
}
.estado-bg-otorgado {
  background-color: var(--colaby-estado-otorgado) !important;
  color: var(--colaby-texto-sobre-claro) !important;
}
.estado-bg-confirmado {
  background-color: var(--colaby-estado-confirmado) !important;
  color: var(--colaby-texto-sobre-claro) !important;
}
.estado-bg-ocupado {
  background-color: var(--colaby-estado-ocupado) !important;
  color: var(--colaby-texto-sobre-claro) !important;
}
.estado-bg-en-parada {
  background-color: var(--colaby-estado-en-parada) !important;
  color: var(--colaby-texto-sobre-claro) !important;
}
.estado-bg-no-disponible {
  background-color: var(--colaby-estado-no-disponible) !important;
  color: var(--colaby-texto-sobre-claro) !important;
}
.estado-bg-sin-transmision {
  background-color: var(--colaby-estado-sin-transmision) !important;
  color: var(--colaby-texto-sobre-claro) !important;
}
.estado-bg-no-confirmado {
  background-color: var(--colaby-estado-no-confirmado) !important;
  color: var(--colaby-texto-sobre-claro) !important;
}
.estado-bg-inhabilitado {
  background-color: var(--colaby-estado-inhabilitado) !important;
  color: var(--colaby-texto-sobre-oscuro) !important;
}

.estado-bg-bloqueo {
  background-color: var(--colaby-bloqueo) !important;
  color: var(--colaby-texto-sobre-oscuro) !important;
}
.estado-bg-temporal {
  background-color: var(--colaby-temporal) !important;
  color: var(--colaby-texto-sobre-claro) !important;
}
.estado-bg-deuda {
  background-color: var(--colaby-deuda) !important;
  color: var(--colaby-texto-sobre-claro) !important;
}

/* Listado de domicilios (Telefonía) */
#ListaDomicilios {
  font-size: 11px;
}

#ListaDomicilios .table-responsive {
  overflow-x: hidden;
}

#ListaDomicilios table.table {
  table-layout: fixed;
  width: 100%;
}
#ListaDomicilios thead th {
  font-size: 10px;
}

#ListaDomicilios thead th:nth-child(1) {
  width: auto;
}

#ListaDomicilios thead th:nth-child(2) {
  width: 88px;
  min-width: 88px;
  max-width: 88px;
  box-sizing: border-box;
}

#ListaDomicilios tbody tr {
  height: auto !important;
  min-height: 24px;
}

#ListaDomicilios tbody tr td {
  vertical-align: middle;
  padding-top: 2px;
  padding-bottom: 2px;
  height: auto;
  min-height: 24px;
  line-height: 1.25;
}

/* Dirección: el texto puede ocupar varias líneas; la columna de botones no se comprime */
#ListaDomicilios tbody tr td:nth-child(1) {
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: break-word;
  max-width: 0;
}

#ListaDomicilios tbody tr td:nth-child(2) {
  width: 88px;
  min-width: 88px;
  max-width: 88px;
  white-space: nowrap;
  text-align: center;
  box-sizing: border-box;
}

#ListaDomicilios .lista-domicilios-acciones {
  flex-wrap: nowrap;
  justify-content: center;
  width: 100%;
}

#ListaDomicilios .btn-group .btn {
  padding: 0 4px;
  min-width: 26px;
  height: 22px;
  line-height: 20px;
}

#ListaDomicilios .btn-domicilio-letra {
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  display: inline-block;
  color: #fff;
}

/* ============================================
   3. ESTILOS DE AUTENTICACIÓN (MEJORADOS - BASADOS EN SIGNIN.CSS)
   ============================================ */
.authentication {
  flex: 1;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  min-height: 100dvh;
  background-color: var(--colaby-background);
  padding: 20px;
  padding-bottom: 50px;
}

.authentication > .row {
  flex: 1;
  margin: 0;
}

.authentication .card {
  max-width: 400px;
  width: 100%;
  margin: 0 auto;
  background: var(--colaby-white);
  border-radius: 12px;
  box-shadow: var(--colaby-shadow-strong);
  border: var(--colaby-border);
  padding: 0;
  overflow: hidden;
}

.authentication .card .body {
  padding: 2rem;
}

.authentication .card .header {
  background: linear-gradient(
    135deg,
    var(--colaby-primary),
    var(--colaby-primary-dark)
  );
  color: var(--colaby-white);
  padding: 2rem 1.5rem;
  margin: 0;
  text-align: center;
  box-shadow: var(--colaby-shadow);
}

.authentication .card .header .logo {
  margin-bottom: 1rem;
}

.authentication .card .header .logo img {
  max-width: 220px;
  height: auto;
  margin-bottom: 2rem;
}

.authentication .card .header h1 {
  font-size: 1.5rem;
  margin: 0;
  font-weight: var(--title-weight);
  color: var(--colaby-white);
}

.authentication .card .title {
  margin: 0;
  font-size: 1.1rem;
  color: var(--colaby-dark);
  font-weight: var(--title-weight);
}

.authentication .card .msg {
  font-size: 0.9rem;
  font-weight: 400;
  text-transform: none;
  color: var(--colaby-gray);
}

/* Estilos mejorados basados en signin.css */
.authentication-logo {
  max-width: 220px;
  height: auto;
  margin-bottom: 2rem;
}

.authentication-subtitle {
  color: var(--colaby-white);
  font-size: 2.5rem;
  font-weight: 600;
  margin-bottom: 1rem;
}

.authentication-slogan {
  color: var(--colaby-gray-light);
  font-size: 1.2rem;
  opacity: 0.9;
}

.authentication-form-container {
  max-width: 400px;
  width: 100%;
  margin: 0 auto;
  padding: 20px;
}

.btn-back-landing {
  display: inline-flex;
  align-items: center;
  color: var(--colaby-primary);
  text-decoration: none;
  margin-bottom: 1.5rem;
  font-weight: 500;
  transition: all 0.3s ease;
  font-size: 0.95rem;
}

.btn-back-landing:hover {
  color: var(--colaby-primary-dark);
  transform: translateX(-5px);
}

.btn-back-landing i {
  margin-right: 0.5rem;
  font-size: 1.2rem;
}

.authentication-title {
  color: var(--colaby-dark);
  font-size: 2rem;
  font-weight: 600;
  margin-bottom: 2rem;
}

.authentication-brand-side {
  padding: 3rem;
  position: relative;
  overflow: hidden;
  box-shadow: 0 0 40px rgba(0, 0, 0, 0.05);
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(
    135deg,
    var(--colaby-primary) 0%,
    var(--colaby-primary-dark) 50%,
    var(--colaby-secondary) 100%
  );
}

.authentication-logo {
  background: rgba(255, 255, 255, 0.1);
  padding: 1rem;
  border-radius: 12px;
  backdrop-filter: blur(10px);
}

.authentication-brand-side::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(
    135deg,
    rgba(255, 255, 255, 0.1) 0%,
    rgba(255, 255, 255, 0) 100%
  );
  z-index: 1;
}

.authentication-brand-content {
  position: relative;
  z-index: 2;
  text-align: center;
  color: var(--colaby-white);
  animation: authLogoIntro 1.2s cubic-bezier(0.34, 1.56, 0.64, 1);
  transform-origin: center;
}

.authentication-form-side {
  background-color: var(--colaby-white);
  padding: 3rem;
  border-radius: 0 20px 20px 0;
  box-shadow: var(--colaby-shadow);
  min-height: 100vh;
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: space-between;
}

/* Responsive para autenticación */
@media (max-width: 768px) {
  .authentication {
    padding: 20px 0 60px 0;
    height: auto;
    min-height: calc(100vh - 40px);
    min-height: calc(100dvh - 40px);
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }

  .authentication > .row {
    min-height: auto;
  }

  .authentication-brand-side {
    min-height: auto;
    padding: 1.5rem;
  }

  .authentication-form-side {
    min-height: auto;
    padding: 1.5rem;
  }

  .authentication-logo {
    max-width: 140px;
    margin-bottom: 1rem;
  }

  .authentication-subtitle {
    font-size: 1.75rem;
    margin-bottom: 0.5rem;
  }

  .authentication-slogan {
    font-size: 0.9rem;
    margin-bottom: 1rem;
  }

  .authentication-title {
    font-size: 1.5rem;
    margin-bottom: 1.5rem;
  }

  .authentication .form-group {
    margin-bottom: 1.25rem !important;
  }

  .authentication .form-group.mt-5 {
    margin-top: 2rem !important;
    margin-bottom: 1rem !important;
  }

  .authentication .btn-colaby-primary {
    margin-bottom: 1rem;
  }
}

.authentication .form-group {
  margin-bottom: 1.5rem;
}

.authentication .form-group.form-float {
  position: relative;
  margin-bottom: 2rem;
}

.authentication .form-group .form-line {
  position: relative;
  border-bottom: 2px solid var(--colaby-gray-light);
  margin-bottom: 0.5rem;
  transition: border-color 0.3s ease;
}

.authentication .form-group .form-line:after {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  bottom: -2px;
  transform: scaleX(0);
  transition: transform 0.3s ease;
  border-bottom: 2px solid var(--colaby-primary);
}

.authentication .form-group .form-line.focused:after,
.authentication .form-group .form-control:focus ~ .form-line:after {
  transform: scaleX(1);
}

.authentication .form-group .form-control {
  border: none;
  border-radius: 0;
  padding: 0.75rem 0;
  font-size: 1rem;
  transition: all 0.2s ease;
  background: transparent;
  color: var(--colaby-dark);
  box-shadow: none;
}

.authentication .form-group .form-control:focus {
  border: none;
  box-shadow: none;
  outline: none;
}

.authentication .form-group .form-label {
  position: absolute;
  left: 0;
  top: 0.75rem;
  color: var(--colaby-gray);
  font-size: 1rem;
  transition: all 0.3s ease;
  pointer-events: none;
  background: transparent;
  padding: 0;
}

.authentication .form-group .form-control:focus + .form-label,
.authentication .form-group .form-control:not(:placeholder-shown) + .form-label,
.authentication .form-group .form-control:valid + .form-label {
  top: -1.25rem;
  font-size: 0.75rem;
  color: var(--colaby-primary);
  font-weight: 500;
}

.authentication .password-toggle {
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  cursor: pointer;
  color: var(--colaby-gray);
  z-index: 10;
  transition: color 0.2s ease;
}

.authentication .password-toggle:hover {
  color: var(--colaby-primary);
}

.authentication .btn-raised {
  background: var(--colaby-primary);
  color: var(--colaby-white);
  border: none;
  border-radius: 8px;
  padding: 0.75rem 2rem;
  font-weight: 600;
  font-size: 1rem;
  transition: all 0.3s ease;
  box-shadow: var(--colaby-shadow);
  width: 100%;
}

.authentication .btn-raised:hover {
  background: var(--colaby-primary-dark);
  transform: translateY(-2px);
  box-shadow: var(--colaby-shadow-md);
}

.authentication .l-social {
  margin: 0;
  padding: 0;
  list-style: none;
}

.authentication .l-social li {
  display: inline-block;
  margin: 0 0.5rem;
}

.authentication .l-social li a {
  text-align: center;
  padding: 0.5rem;
  color: var(--colaby-gray);
  transition: color 0.2s ease;
}

.authentication .l-social li a:hover {
  color: var(--colaby-primary);
}

@media only screen and (min-width: 992px) and (max-width: 1024px) {
  .authentication .card {
    max-width: 380px;
  }
}

@media only screen and (max-width: 767px) {
  .authentication {
    padding: 10px;
  }

  .authentication .card {
    max-width: 100%;
  }

  .authentication .card .body {
    padding: 1.5rem;
  }
}

/* ============================================
   4. ESTILOS DE TEMAS (THEME)
   ============================================ */
/* Tema Blue (por defecto) */
.theme-colaby .profile-page .profile-sub-header .box-list ul li a:hover,
.theme-colaby .menu > ul > li > ul.normal-sub > li a:hover,
.theme-colaby .menu > ul > li > ul > li > ul > li a:hover {
  background-color: var(--colaby-primary);
}

.theme-colaby .navbar-brand {
  color: var(--colaby-white);
}

.theme-colaby .navbar-brand:hover,
.theme-colaby .navbar-brand:active,
.theme-colaby .navbar-brand:focus {
  color: var(--colaby-white);
}

.theme-colaby .navbar {
  background: var(--header-gradient);
}

.theme-colaby .nav > li > a {
  color: var(--colaby-white);
}

.theme-colaby .nav > li > a:hover,
.theme-colaby .nav > li > a:focus {
  background-color: rgba(255, 255, 255, 0.1);
}

.theme-colaby .nav .open > a {
  background-color: rgba(255, 255, 255, 0.1);
}

.theme-colaby .nav .open > a:hover,
.theme-colaby .nav .open > a:focus {
  background-color: rgba(255, 255, 255, 0.15);
}

.theme-colaby .bars {
  color: var(--colaby-white);
}

.theme-colaby .sidebar .menu .list li.active {
  background-color: transparent;
}

.theme-colaby .sidebar .menu .list li.active > :first-child i,
.theme-colaby .sidebar .menu .list li.active > :first-child span {
  color: var(--colaby-primary);
}

.theme-colaby .sidebar .menu .list .toggled,
.theme-colaby .sidebar .menu .list .ml-menu {
  background-color: var(--colaby-light);
  border-left: 3px solid;
  border-bottom: none;
  border-top: none;
  border-color: var(--colaby-primary);
}

.theme-colaby .inbox-widget .inbox-inner:hover .inbox-img img {
  border: 2px solid var(--colaby-primary);
  transition: all 150ms linear;
}

.theme-colaby .nav-tabs .nav-link.active {
  border-bottom: 1px solid var(--colaby-primary) !important;
  color: var(--colaby-primary) !important;
  font-weight: 700;
}

.theme-colaby .blog-page .single-blog-post .img-holder .date-box {
  background-color: var(--colaby-primary);
}

/* ============================================
   4. ESTILOS DE NAVBAR HORIZONTAL COMPACTO
   ============================================ */
.navbar {
  background: var(--header-gradient);
  box-shadow: var(--colaby-shadow);
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  max-width: 100vw;
  z-index: 1030;
  height: 40px;
  min-height: 40px;
  display: flex;
  align-items: center;
  padding: 0;
  overflow: visible; /* Permitir que los dropdowns se desborden */
}

.navbar .container-fluid {
  display: flex;
  align-items: center;
  width: 100%;
  max-width: 100%;
  /* padding: 0 15px; */
  height: 100%;
  overflow: visible; /* Permitir que los dropdowns se desborden */
}

.navbar-header {
  display: flex;
  align-items: center;
  height: 100%;
  margin-right: 1rem;
  flex-shrink: 0;
}

/* Botón hamburguesa - oculto por defecto en desktop */
.navbar-toggler {
  display: none;
  background: transparent;
  border: none;
  color: white;
  font-size: 24px;
  cursor: pointer;
  padding: 5px 10px;
  margin-left: 10px;
}

.logo-wrapper {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.logo-container {
  height: 32px;
  width: 32px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
  overflow: hidden;
  background: var(--colaby-white);
  padding: 2px;
}

.logo {
  height: 100%;
  width: auto;
  max-height: 32px;
  border-radius: 6px;
  aspect-ratio: 1/1;
  object-fit: cover;
}

.navbar-brand {
  display: flex;
  align-items: center;
  padding: 0;
  margin: 0;
  color: var(--colaby-white);
  font-weight: 600;
  font-size: 1rem;
  text-decoration: none;
  white-space: nowrap;
}

.company-initial {
  color: var(--colaby-secondary) !important;
}

.company-rest {
  color: var(--colaby-white) !important;
}

.company-name {
  color: var(--colaby-white) !important;
  font-weight: 600;
  font-size: 1rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 200px;
}

/* Botón flotante para subir al top */
.floating-buttons {
  position: fixed;
  bottom: 50px; /* 30px footer + 20px margen - evita que quede debajo del footer */
  right: 20px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  z-index: 1025;
}

.btn-scroll-to-top {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: #1a8a8f; /* Colaby primary - color fijo para consistencia */
  color: #ffffff !important;
  border: none;
  cursor: pointer;
  display: none; /* Se muestra con JS cuando hay scroll */
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 12px rgba(26, 138, 143, 0.35);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  text-decoration: none;
  position: relative;
  outline: none;
}

.btn-scroll-to-top:hover {
  transform: scale(1.1) translateY(-2px);
  color: #ffffff !important;
  box-shadow: 0 6px 20px rgba(26, 138, 143, 0.5);
  text-decoration: none;
  background: #156d71; /* Colaby primary dark */
}

.btn-scroll-to-top:focus {
  outline: 2px solid rgba(26, 138, 143, 0.5);
  outline-offset: 2px;
}

.btn-scroll-to-top:active {
  transform: scale(0.95);
}

/* SVG icon dentro del botón */
.btn-scroll-to-top svg {
  color: #ffffff !important;
  stroke: #ffffff !important;
  width: 22px;
  height: 22px;
  display: block;
}

/* Compatibilidad con iconos zmdi/material si se usan */
.btn-scroll-to-top i {
  color: #ffffff !important;
  line-height: 1;
  font-size: 22px;
  display: block;
}

/* Tooltip para botón scroll-to-top */
.btn-scroll-to-top[data-tooltip]:before {
  content: attr(data-tooltip);
  position: absolute;
  background: rgba(0, 0, 0, 0.85);
  color: #ffffff;
  padding: 6px 12px;
  border-radius: 6px;
  white-space: nowrap;
  opacity: 0;
  visibility: hidden;
  font-size: 0.75rem;
  font-weight: 500;
  transition: all 0.25s ease;
  right: calc(100% + 10px);
  top: 50%;
  transform: translateY(-50%) translateX(5px);
  pointer-events: none;
}

.btn-scroll-to-top[data-tooltip]:hover:before {
  opacity: 1;
  visibility: visible;
  transform: translateY(-50%) translateX(0);
}

/* Animación de aparición del botón */
@keyframes scrollBtnFadeIn {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.btn-scroll-to-top.visible {
  display: flex !important;
  animation: scrollBtnFadeIn 0.3s ease forwards;
}

/* Responsive */
@media (max-width: 768px) {
  .floating-buttons {
    bottom: 45px; /* 30px footer + 15px margen en móvil */
    right: 15px;
  }

  .btn-scroll-to-top {
    width: 44px;
    height: 44px;
  }

  .btn-scroll-to-top svg {
    width: 20px;
    height: 20px;
  }

  .btn-scroll-to-top[data-tooltip]:before {
    display: none; /* Ocultar tooltip en móvil */
  }
}

.navbar-collapse {
  display: flex;
  flex: 1 1 auto;
  min-width: 0; /* Permitir que se comprima */
  align-items: center;
  justify-content: space-between;
  overflow: visible; /* Permitir que los dropdowns se desborden */
}

.navbar-nav {
  display: flex;
  align-items: center;
  list-style: none;
  margin: 0;
  padding: 0;
  gap: 0.15rem;
  overflow: visible; /* Permitir que los dropdowns se desborden */
  flex-wrap: nowrap; /* No hacer wrap */
}

.navbar-nav.me-auto {
  flex: 1 1 auto;
  min-width: 0; /* Permitir que se comprima */
}

.navbar-nav.ms-auto {
  margin-left: auto;
}

.nav-item {
  position: relative;
  overflow: visible; /* Permitir que los dropdowns se desborden */
}

.nav-link {
  color: rgba(255, 255, 255, 0.9) !important;
  padding: 0.35rem 0.5rem !important;
  font-size: 0.8rem !important;
  text-decoration: none;
  display: flex;
  align-items: center;
  gap: 0.3rem;
  transition: all 0.2s ease;
  border-radius: 4px;
  white-space: nowrap;
  height: 32px;
  flex-shrink: 0; /* No comprimir los items individuales */
}

.nav-link i,
.nav-link .material-icons,
.nav-link .zmdi {
  font-size: 1rem;
  line-height: 1;
}

.nav-link:hover {
  color: var(--colaby-white) !important;
  background: rgba(255, 255, 255, 0.1);
}

.nav-item.active > .nav-link {
  background: rgba(255, 255, 255, 0.15);
  color: var(--colaby-white) !important;
}

.nav-item.dropdown .dropdown-toggle::after {
  margin-left: 0.25rem;
  font-size: 0.7rem;
  border-top: 0.3em solid;
  border-right: 0.3em solid transparent;
  border-bottom: 0;
  border-left: 0.3em solid transparent;
}

.dropdown-menu {
  background: var(--colaby-white);
  border: var(--colaby-border);
  box-shadow: var(--colaby-shadow-strong);
  border-radius: 6px;
  padding: 0.15rem 0;
  margin-top: 0.25rem;
  min-width: 180px;
  z-index: 99999 !important;
}

/* Dropdown del navbar siempre por encima de todo */
.navbar .dropdown-menu,
.topbar .dropdown-menu,
nav .dropdown-menu {
  z-index: 99999 !important;
  position: absolute !important;
}

/* Pegar submenú al botón en desktop: sin hueco para no cerrar al mover el mouse */
@media (min-width: 992px) {
  .navbar .nav-item.dropdown .dropdown-menu {
    margin-top: 0;
    top: 100%;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
  }
  /* Puente invisible para que el hover no se corte entre botón y menú */
  .navbar .nav-item.dropdown .dropdown-menu::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 100%;
    height: 6px;
  }
}

/* Asegurar que los dropdowns se muestren correctamente con Bootstrap 4 */
.nav-item.dropdown.show .dropdown-menu {
  display: block !important;
  z-index: 99999 !important;
}

/* Hover para dropdowns en desktop (opcional) */
@media (min-width: 992px) {
  .nav-item.dropdown:hover .dropdown-menu {
    display: block !important;
  }
}

.dropdown-item {
  padding: 0.25rem 0.75rem;
  font-size: 0.8rem;
  line-height: 1.15;
  min-height: 28px;
  color: var(--colaby-dark);
  transition: all 0.2s ease;
  display: flex;
  align-items: center;
  gap: 0.75rem;
  cursor: pointer;
  border-left: 3px solid transparent;
  position: relative;
}

.dropdown-item i,
.dropdown-item .zmdi,
.dropdown-item .material-icons,
.dropdown-item .fas,
.dropdown-item .far {
  font-size: 1rem;
  width: 20px;
  text-align: center;
  color: var(--colaby-primary);
  flex-shrink: 0;
}

.dropdown-item:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 3px;
  background: var(--colaby-primary);
  opacity: 0;
  transition: opacity 0.2s ease;
}

.dropdown-item:hover {
  background-color: var(--colaby-primary-light);
  color: var(--colaby-dark);
  border-left-color: var(--colaby-primary);
  padding-left: 1rem;
}

.dropdown-item:hover:before {
  opacity: 1;
}

.dropdown-item:hover i,
.dropdown-item:hover .zmdi,
.dropdown-item:hover .material-icons,
.dropdown-item:hover .fas,
.dropdown-item:hover .far {
  color: var(--colaby-primary);
  transform: scale(1.1);
}

.dropdown-item.active {
  background-color: var(--colaby-primary);
  color: var(--colaby-white);
}

.dropdown-item.active i,
.dropdown-item.active .zmdi {
  color: var(--colaby-white);
}

/* Encabezados de sección en dropdowns */
.dropdown-header {
  padding: 0.5rem 1.25rem;
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--colaby-gray);
  text-transform: uppercase;
  letter-spacing: 0.5px;
  background: var(--colaby-light);
  border-bottom: 1px solid var(--colaby-gray-light);
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.dropdown-header i,
.dropdown-header .zmdi {
  font-size: 0.85rem;
  color: var(--colaby-primary);
}

.user-profile-link {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.25rem 0.5rem !important;
  min-width: 120px;
  flex-direction: row;
}

.user-avatar {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid rgba(255, 255, 255, 0.3);
  flex-shrink: 0;
}

.user-info-inline {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  line-height: 1.2;
  min-width: 0;
}

.user-name {
  font-size: 0.85rem;
  font-weight: 500;
  color: var(--colaby-dark, #333);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 150px;
}

/* Navbar: foto y nombre a la derecha (estilo ejemplo v3) */
.navbar .user-profile-link {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.25rem 0.5rem !important;
  min-width: 120px;
  flex-direction: row;
}
.navbar .user-profile-link .user-avatar {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid rgba(255, 255, 255, 0.3);
  flex-shrink: 0;
}
.navbar .user-profile-link .user-info-inline {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  line-height: 1.2;
  min-width: 0;
}
.navbar .user-profile-link .user-name {
  font-size: 0.85rem;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.95) !important;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 150px;
}

.user-company {
  font-size: 0.7rem;
  color: rgba(255, 255, 255, 0.7);
  display: block;
  line-height: 1;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 150px;
}

.dropdown-menu-end {
  right: 0;
  left: auto;
}

/* Sidebar - Oculto cuando el menú es horizontal */
.sidebar {
  display: none; /* Oculto porque el menú es horizontal */
}

.sidebar .user-info {
  background: var(--header-gradient);
  color: var(--colaby-white);
  padding: 1.5rem 1rem;
  display: flex;
  align-items: center;
  gap: 1rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.sidebar .user-info .image {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  overflow: hidden;
  border: 2px solid rgba(255, 255, 255, 0.3);
  flex-shrink: 0;
}

.sidebar .user-info .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.sidebar .user-info .info-container {
  flex: 1;
  min-width: 0;
}

.sidebar .user-info .info-container .name {
  font-size: 0.9rem;
  font-weight: 600;
  color: var(--colaby-white);
  margin-bottom: 0.25rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.sidebar .user-info .info-container .email {
  font-size: 0.75rem;
  color: rgba(255, 255, 255, 0.8);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Menu */
.sidebar .menu {
  padding: 0;
}

.sidebar .menu .list {
  list-style: none;
  margin: 0;
  padding: 0.5rem 0;
}

.sidebar .menu .list li {
  margin: 0;
}

.sidebar .menu .list li.header {
  padding: 1rem 1.5rem 0.5rem;
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--colaby-gray);
  letter-spacing: 0.5px;
}

.sidebar .menu .list li > a {
  display: flex;
  align-items: center;
  padding: 0.75rem 1.5rem;
  color: var(--colaby-dark);
  text-decoration: none;
  transition: all 0.2s ease;
  font-size: 0.9rem;
  gap: 0.75rem;
}

.sidebar .menu .list li > a i,
.sidebar .menu .list li > a .material-icons {
  font-size: 1.25rem;
  width: 24px;
  text-align: center;
  flex-shrink: 0;
}

.sidebar .menu .list li > a span {
  flex: 1;
}

.sidebar .menu .list li > a:hover {
  background-color: var(--colaby-gray-light);
  color: var(--colaby-blue);
}

.sidebar .menu .list li.active > a {
  background-color: transparent;
  color: var(--colaby-blue);
  font-weight: 600;
}

.sidebar .menu .list li.active > a i,
.sidebar .menu .list li.active > a .material-icons,
.sidebar .menu .list li.active > a span {
  color: var(--colaby-blue);
}

.sidebar .menu .list .toggled,
.sidebar .menu .list .ml-menu {
  background-color: #f6f6f6;
  border-left: 3px solid var(--colaby-blue);
  padding-left: 0;
  margin-left: 0;
}

.sidebar .menu .list .ml-menu {
  list-style: none;
  margin: 0;
  padding: 0;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease;
}

.sidebar .menu .list .toggled .ml-menu {
  max-height: 1000px;
}

.sidebar .menu .list .ml-menu li > a {
  padding-left: 3.5rem;
  font-size: 0.85rem;
  color: var(--colaby-gray);
}

.sidebar .menu .list .ml-menu li.active > a {
  color: var(--colaby-blue);
  font-weight: 600;
}

.sidebar .menu .list .ml-menu li > a:hover {
  background-color: rgba(33, 150, 243, 0.1);
  color: var(--colaby-blue);
}

/* Context menu separator */
.sidebar .menu .list li.context-menu-separator {
  height: 1px;
  background-color: var(--colaby-gray-light);
  margin: 0.5rem 1.5rem;
  padding: 0;
}

/* Theme Blue específico */
.theme-colaby .profile-page .profile-sub-header .box-list ul li a:hover,
.theme-colaby .menu > ul > li > ul.normal-sub > li a:hover,
.theme-colaby .menu > ul > li > ul > li > ul > li a:hover {
  background-color: var(--colaby-blue);
}

.theme-colaby .inbox-widget .inbox-inner:hover .inbox-img img {
  border: 2px solid var(--colaby-blue);
  transition: all 150ms linear;
}

/* Tabs - Texto negro por defecto en todos los tabs no activos */
.nav-tabs .nav-link {
  color: #333 !important;
  background-color: #f5f5f5;
}
.nav-tabs .nav-link:hover {
  color: #000 !important;
  background-color: #e9ecef;
}
.nav-tabs .nav-link.active {
  color: #fff !important;
  background-color: var(--colaby-blue) !important;
  border-color: var(--colaby-blue) !important;
}

.theme-colaby .blog-page .single-blog-post .img-holder .date-box {
  background-color: var(--colaby-blue);
}

/* ============================================
   5. ESTILOS GENERALES Y RESET
   ============================================ */
html {
  overflow-x: hidden;
  max-width: 100%;
}

html,
body {
  height: auto;
  min-height: 100vh;
  box-sizing: border-box;
  line-height: 1;
  /* overflow: hidden!important; */
}

body {
  overflow-x: hidden;
  max-width: 100%;
}

body {
  display: flex;
  flex-direction: column;
  background-color: var(--colaby-background);
  min-height: 100vh;
  position: relative;
}

/* FORZAR COLORES VISIBLES EN TODOS LOS ELEMENTOS */
body {
  background-color: var(--colaby-background);
  color: var(--colaby-dark);
  font-family: var(--font-body);
}

.content {
  background-color: var(--colaby-white);
  color: var(--colaby-dark);
  margin: 2px;
  padding: 1px;
}

.container-fluid {
  background-color: transparent;
}
/* Contenido principal - Sin sidebar */
.content {
  flex: 1 0 auto;
  margin-left: 0; /* Sin sidebar */
  /* padding: 1rem; */
  /* padding-bottom: 50px; Espacio para el footer fijo */
  box-sizing: border-box; /* Incluir padding en el cálculo de height */
  position: relative;
  z-index: 1; /* Menor que el navbar (1030) para que los dropdowns se muestren encima */
  display: flex;
  flex-direction: column;
  background-color: var(--colaby-background);
  transition: margin-top 0.3s ease;
  overflow-x: hidden; /* Prevenir scroll horizontal en el contenido */
  max-width: 100vw; /* No exceder el ancho del viewport */
}

/* Espacio para el navbar fijo - selector muy específico para sobrescribir estilos inline */
/* Excluir vistas de pantalla completa (sin topbar): view-viajes, view-mapa, view-paradas, view-telefonia */
/* Las vistas de pantalla completa tienen margin:0px!important que sobrescribe esto */
body
  .content:not(.view-viajes):not(.view-mapa):not(.view-paradas):not(
    .view-telefonia
  ),
html
  body
  .content:not(.view-viajes):not(.view-mapa):not(.view-paradas):not(
    .view-telefonia
  ),
section.content:not(.view-viajes):not(.view-mapa):not(.view-paradas):not(
    .view-telefonia
  ) {
  margin-top: 45px !important; /* Altura del navbar compacto */
}

/* Ajustar height cuando se usa height: 100vh para incluir el espacio del navbar (solo vistas con topbar) */
/* Excluir vistas de pantalla completa que tienen margin:0px!important */
.content:not(.view-viajes):not(.view-mapa):not(.view-paradas):not(
    .view-telefonia
  )[style*="height: 100vh"]:not([style*="margin:0px!important"]):not(
    [style*="margin:0!important"]
  ) {
  height: calc(100vh - 45px) !important;
  min-height: calc(100vh - 45px) !important;
}

.container-fluid {
  padding: 0;
  margin: 0;
  height: 100%;
  width: 100%;
}

/* Prevenir scroll horizontal solo en container-fluid del contenido, no del navbar */
.content .container-fluid {
  max-width: 100%;
  overflow-x: hidden;
}

/* Cards mejoradas */
.card {
  background: var(--colaby-white);
  color: var(--colaby-dark);
  border-radius: 10px;
  border: var(--colaby-border);
  box-shadow: var(--colaby-shadow);
  padding: 0;
  margin-bottom: 0;
  overflow: hidden;
}

.card .header {
  background: var(--colaby-primary);
  color: var(--colaby-white);
  padding: 0.3rem 0.5rem;
  border-bottom: none;
  font-weight: 600;
}

.card .header h2 {
  margin: 0;
  font-size: 1.25rem;
  font-weight: 600;
  color: var(--colaby-white);
}

.card .body {
  padding: 0.5rem;
  background: var(--colaby-white);
  color: var(--colaby-dark);
  font-size: 12px;
  overflow-x: hidden;
  overflow-y: visible;
  max-width: 100%;
  box-sizing: border-box;
}

.card .bg-faded {
  background-color: var(--colaby-gray-light);
  padding: 0.5rem 1rem;
}

/* ============================================
   6. BARRA DE PROGRESO
   ============================================ */
#progress-bar {
  height: 2px;
  width: 0;
  background: linear-gradient(
    90deg,
    var(--colaby-primary),
    var(--colaby-secondary)
  );
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10000;
  transition: width 0.3s ease-in-out;
  background-size: 200% 100%;
  animation: progress 2s linear infinite;
  display: none;
  box-shadow: 0 2px 4px rgba(40, 184, 190, 0.3);
}

#progress-barxxxx {
  height: 2px;
  width: 0;
  background-color: #007bff;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  transition: width 0.3s ease-in-out;
}

#progress-bar3 {
  height: 2px;
  width: 0;
  background: linear-gradient(45deg, #007bff, #ff5733, #ffc300, #4caf50);
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  transition: width 0.3s ease-in-out;
  background-size: 200% 100%;
  animation: progress 4s linear infinite;
}

@keyframes progress {
  0% {
    background-position: 200% 0;
  }
  100% {
    background-position: -200% 0;
  }
}

/* Barras de progreso por tipo (dashboard Principal) - antes en main.css */
.progress-bar-inverse {
  background-color: #5a6268;
}
.progress-bar-info {
  background-color: #17a2b8;
}
.progress-bar-danger {
  background-color: #dc3545;
}
.progress-bar-warning {
  background-color: #ffc107;
  color: #212529;
}

/* Utilidades de margen usadas en vistas (Principal, etc.) */
.m-b-20 {
  margin-bottom: 20px;
}
.float-right {
  float: right !important;
}

/* Block header (Sistema, Tarifas, Feriados, Apps, etc. - antes en main.css) */
.block-header {
  padding: 15px;
}
.block-header h2 {
  margin: 0 !important;
  font-size: 20px;
}
.block-header h2 small {
  display: block;
  font-size: 12px;
  margin-top: 8px;
  color: #888;
}
.block-header h2 small a {
  font-weight: bold;
  color: #777;
}

/* Animación slideDown (login Principal/indexView, Main/indexView, error404 - antes en main.css) */
@-webkit-keyframes slideDown {
  0% {
    -webkit-transform: translateY(-100%);
  }
  50% {
    -webkit-transform: translateY(8%);
  }
  65% {
    -webkit-transform: translateY(-4%);
  }
  80% {
    -webkit-transform: translateY(4%);
  }
  95% {
    -webkit-transform: translateY(-2%);
  }
  100% {
    -webkit-transform: translateY(0%);
  }
}
@keyframes slideDown {
  0% {
    transform: translateY(-100%);
  }
  50% {
    transform: translateY(8%);
  }
  65% {
    transform: translateY(-4%);
  }
  80% {
    transform: translateY(4%);
  }
  95% {
    transform: translateY(-2%);
  }
  100% {
    transform: translateY(0%);
  }
}
.slideDown {
  animation-name: slideDown;
  -webkit-animation-name: slideDown;
  animation-duration: 1s;
  -webkit-animation-duration: 1s;
  animation-timing-function: ease;
  -webkit-animation-timing-function: ease;
  visibility: visible !important;
}

/* Listas country-state (Principal/dashboardView - complementa list-unstyled de Bootstrap) */
.country-state {
  margin-bottom: 0;
}

@keyframes progress3 {
  0% {
    background-position: 200% 0;
  }
  100% {
    background-position: -200% 0;
  }
}

/* ============================================
   7. PAGE LOADER
   ============================================ */
.page-loader-wrapper {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--colaby-white);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 9999;
  backdrop-filter: blur(5px);
}

.page-loader-wrapper .loader {
  text-align: center;
  padding: 2rem;
  background: var(--colaby-light);
  border-radius: 1rem;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
  border: 2px solid var(--colaby-dark);
  max-width: 400px;
  width: 90%;
  animation: fadeIn 0.3s ease-out;
  filter: drop-shadow(0 4px 6px rgba(0, 0, 0, 0.1));
}

.page-loader-wrapper .loader .line {
  display: inline-block;
  width: 4px;
  height: 20px;
  background: var(--colaby-primary);
  margin: 0 2px;
  animation: loader-line 1.2s infinite ease-in-out;
}

.page-loader-wrapper .loader .line:nth-child(1) {
  animation-delay: -1.1s;
}

.page-loader-wrapper .loader .line:nth-child(2) {
  animation-delay: -1s;
}

.page-loader-wrapper .loader .line:nth-child(3) {
  animation-delay: -0.9s;
}

.page-loader-wrapper .loader .line:nth-child(4) {
  animation-delay: -0.8s;
}

@keyframes loader-line {
  0%,
  40%,
  100% {
    transform: scaleY(0.4);
  }
  20% {
    transform: scaleY(1);
  }
}

.page-loader-wrapper .loader p {
  color: var(--colaby-dark);
  font-size: 1.1rem;
  font-weight: 500;
  margin: 1rem 0 0 0;
}

.page-loader-wrapper .loader .m-t-30 {
  margin-top: 30px;
}

.page-loader-wrapper .loader .m-t-30 img {
  height: 90px;
  width: auto;
}

/* Borde para logo del loader */
.loader-logo {
  border: 2px solid var(--colaby-dark);
  border-radius: 12px;
  padding: 0.5rem;
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(10px);
}

/* Borde para logo de autenticación - Naranja Colaby */
.authentication-logo-bordered {
  border: 2px solid var(--colaby-secondary, #d45a1a); /* Naranja Colaby */
  padding: 0.5rem;
  border-radius: 8px;
  box-shadow:
    0 14px 28px rgba(0, 0, 0, 0.18),
    0 0 0 2px rgba(255, 255, 255, 0.16),
    0 0 24px rgba(212, 90, 26, 0.35);
  display: inline-block;
  will-change: transform, box-shadow;
  animation:
    authLogoPulse 1.6s ease-in-out 1.2s infinite alternate,
    authLogoMagneticShake 6.5s ease-in-out 2.0s infinite;
  transition: box-shadow 0.3s ease;
}

/* Asegurar animación sobre el <img> del panel izquierdo (Chrome) */
.authentication-brand-content.text-center > img.authentication-logo-bordered {
  display: inline-block;
  transform: translateZ(0);
  backface-visibility: hidden;
  animation:
    authLogoPulse 1.6s ease-in-out 1.2s infinite alternate,
    authLogoMagneticShake 6.5s ease-in-out 2.0s infinite !important;
}

@keyframes authLogoIntro {
  0% {
    opacity: 0;
    transform: translateY(16px) scale(0.78) rotate(-8deg);
  }
  70% {
    opacity: 1;
    transform: translateY(-4px) scale(1.06) rotate(2deg);
  }
  100% {
    opacity: 1;
    transform: translateY(0) scale(1) rotate(0deg);
  }
}

@keyframes authLogoPulse {
  0% {
    transform: scale(1);
    box-shadow:
      0 14px 28px rgba(0, 0, 0, 0.18),
      0 0 0 2px rgba(255, 255, 255, 0.16),
      0 0 22px rgba(212, 90, 26, 0.32);
  }
  100% {
    transform: scale(1.06);
    box-shadow:
      0 18px 34px rgba(0, 0, 0, 0.22),
      0 0 0 2px rgba(255, 255, 255, 0.22),
      0 0 34px rgba(212, 90, 26, 0.5);
  }
}

@keyframes authLogoMagneticShake {
  0%,
  7%,
  45%,
  52%,
  100% {
    transform: translate3d(0, 0, 0) rotate(0deg);
    filter: none;
  }

  /* Micro sacudida "eléctrica" (corta y tranquila) */
  1% {
    transform: translate3d(-1px, 0, 0) rotate(-0.6deg);
    filter: drop-shadow(0 0 10px rgba(212, 90, 26, 0.25));
  }
  2% {
    transform: translate3d(1px, -1px, 0) rotate(0.7deg);
  }
  3% {
    transform: translate3d(-1px, 1px, 0) rotate(-0.4deg);
  }
  4% {
    transform: translate3d(1px, 0, 0) rotate(0.5deg);
  }
  5% {
    transform: translate3d(0, 0, 0) rotate(0deg);
  }

  /* Segundo "tirón" magnético, más sutil todavía */
  47% {
    transform: translate3d(-0.5px, 0, 0) rotate(0.35deg);
    filter: drop-shadow(0 0 12px rgba(255, 255, 255, 0.12));
  }
  48% {
    transform: translate3d(0.5px, 0.5px, 0) rotate(-0.35deg);
  }
  49% {
    transform: translate3d(-0.5px, -0.5px, 0) rotate(0.25deg);
  }
  50% {
    transform: translate3d(0, 0, 0) rotate(0deg);
  }
}

/* ============================================
   8. ESTILOS DE TABLAS (MEJORADOS)
   ============================================ */
.table {
  width: 100% !important;
  box-sizing: border-box !important; /* Evita overflow horizontal por bordes al usar width: 100% */
  border-collapse: separate;
  border-spacing: 0;
  margin-bottom: 1rem;
  background-color: var(--colaby-white);
}

/* Contenedor responsive para tablas
   Sobrescribimos Bootstrap para que se adapte al layout Colaby */
.table-responsive {
  display: block;
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
  -webkit-overflow-scrolling: auto;
}

.table td,
.table th {
  padding: 0.75rem;
  font-size: 0.9rem;
  color: var(--colaby-dark);
  background-color: transparent;
  border-bottom: var(--colaby-border);
  vertical-align: middle;
}

.table th {
  background-color: var(--colaby-info);
  color: var(--colaby-white);
  font-weight: 600;
  text-align: left;
  text-transform: uppercase;
  font-size: 0.85rem;
  letter-spacing: 0.5px;
  border-bottom: 2px solid var(--colaby-dark);
}

.table tbody tr {
  transition: background-color 0.2s ease;
}

.table tbody tr:hover {
  background-color: var(--colaby-gray-light);
}

.table tbody tr.selected-row {
  background-color: #fff3cd !important;
  font-weight: 600;
}

.table-bordered {
  border: var(--colaby-border);
}

.table-bordered td,
.table-bordered th {
  border: var(--colaby-border);
}

.table-hover tbody tr:hover {
  background-color: var(--colaby-gray-light);
}

/* DataTables */
table.dataTable {
  width: 100% !important;
  border-collapse: separate;
  border-spacing: 0;
}

table.dataTable thead th,
table.dataTable thead td {
  padding: 0.75rem;
  font-size: 0.85rem;
  font-weight: 600;
  text-transform: uppercase;
  background-color: var(--colaby-info);
  color: var(--colaby-white);
  border-bottom: 2px solid var(--colaby-dark);
  white-space: nowrap;
  text-align: left;
}

table.dataTable tbody th,
table.dataTable tbody td {
  padding: 0.75rem;
  font-size: 0.9rem;
  color: var(--colaby-dark);
  background-color: transparent;
  border-bottom: var(--colaby-border);
  vertical-align: middle;
}

table.dataTable tbody tr {
  transition: background-color 0.2s ease;
}

table.dataTable tbody tr:hover {
  background-color: var(--colaby-gray-light);
}

table.dataTable tbody tr.selected-row {
  background-color: #fff3cd !important;
  font-weight: 600;
}

table.dataTable.dtr-inline.collapsed
  > tbody
  > tr[role="row"]
  > td:first-child:before,
table.dataTable.dtr-inline.collapsed
  > tbody
  > tr[role="row"]
  > th:first-child:before {
  top: 0.75rem;
  left: 0.75rem;
  height: 14px;
  width: 14px;
  line-height: 14px;
  border: 2px solid var(--colaby-primary);
  background-color: var(--colaby-white);
  color: var(--colaby-primary);
  font-weight: bold;
}

.dts_label {
  display: none !important;
}

/* Tabla específica para appmapaView */
#ListaMoviles,
#ListaEmpresas table {
  width: 100% !important;
  table-layout: fixed;
  margin: 0;
  border-collapse: separate;
  border-spacing: 0;
}

#ListaMoviles thead th,
#ListaEmpresas thead th {
  background-color: var(--colaby-info) !important;
  color: var(--colaby-white) !important;
  padding: 0.25rem 0.5rem !important;
  font-size: 0.65rem !important;
  font-weight: 600 !important;
  text-align: center !important;
  border: 1px solid rgba(255, 255, 255, 0.2) !important;
  white-space: nowrap;
}

#ListaMoviles thead th .material-icons,
#ListaEmpresas thead th .material-icons {
  font-size: 14px !important;
  vertical-align: middle;
}

#ListaMoviles tbody td,
#ListaEmpresas tbody td {
  padding: 0.25rem 0.5rem !important;
  font-size: 0.65rem !important;
  text-align: center !important;
  border: 1px solid var(--colaby-border) !important;
  vertical-align: middle !important;
  color: var(--colaby-dark) !important;
  /* Sin background fijo para permitir colores dinámicos según estado */
}

#ListaMoviles tbody td .material-icons,
#ListaEmpresas tbody td .material-icons {
  font-size: 14px !important;
  vertical-align: middle;
}

#ListaMoviles tbody tr,
#ListaEmpresas tbody tr {
  transition: background-color 0.2s ease;
}

#ListaMoviles tbody tr:hover,
#ListaEmpresas tbody tr:hover {
  background-color: var(--colaby-gray-light) !important;
}

#ListaMoviles tbody tr:hover td,
#ListaEmpresas tbody tr:hover td {
  background-color: var(--colaby-gray-light) !important;
}

/* ============================================
   8.5. ESTILOS DE CAMPOS DE CONTRASEÑA
   ============================================ */

/* Toggle de contraseña (ojo) */
.toggle-password,
#btnTogglePasswordPopup {
  border-color: var(--colaby-border) !important;
  background-color: var(--colaby-white) !important;
  color: var(--colaby-gray) !important;
}

.toggle-password:hover,
#btnTogglePasswordPopup:hover {
  background-color: var(--colaby-gray-light) !important;
  color: var(--colaby-dark) !important;
}

/* Input group append para contraseñas */
.input-group-append .btn {
  border-top-left-radius: 0 !important;
  border-bottom-left-radius: 0 !important;
}

.input-group-append .btn:not(:last-child) {
  border-top-right-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
}

/* Popup de cambio de contraseña */
.colaby-password-popup .form-group {
  margin-bottom: 0;
}

.colaby-password-popup .col-form-label {
  padding-bottom: 0.5rem;
  display: block;
}

.colaby-password-popup .input-group {
  margin-bottom: 0.5rem;
}

/* ============================================
   9. ESTILOS DE COLABYGRID
   ============================================ */

/* Botones de acción en filtros de grids (Actualizar, Nuevo, etc.) */
.row.mb-3 .btn.btn-sm i.zmdi {
  font-size: 16px !important;
}

.row.mb-3 .btn.bg-secondary i.zmdi,
.row.mb-3 .btn.bg-green i.zmdi,
.row.mb-3 .btn.bg-red i.zmdi,
.row.mb-3 .btn.bg-info i.zmdi {
  font-size: 16px !important;
}

/* Contenedor principal de ColabyGrid */
.colaby-grid-wrapper {
  background-color: var(--colaby-white);
  border-radius: 8px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  padding: 1rem;
  margin-bottom: 1rem;
  position: relative;
  z-index: 1;
}

/* Barra de búsqueda */
.colaby-grid-search {
  margin-bottom: 1rem;
}

.colaby-grid-search input {
  border-radius: 6px;
  border: 1px solid var(--colaby-border);
  padding: 0.5rem 1rem;
  font-size: 0.9rem;
  transition:
    border-color 0.2s ease,
    box-shadow 0.2s ease;
}

.colaby-grid-search input:focus {
  border-color: var(--colaby-primary);
  box-shadow: 0 0 0 0.2rem rgba(13, 110, 253, 0.25);
  outline: none;
}

/* Tabla ColabyGrid - Estilo general basado en móviles */
.colaby-grid-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  margin-bottom: 1rem;
}

.colaby-grid-table thead th {
  background-color: var(--colaby-info) !important;
  color: var(--colaby-white) !important;
  padding: 0.25rem 0.5rem !important;
  font-size: 0.65rem !important;
  font-weight: 600 !important;
  text-align: center !important;
  border: 1px solid rgba(255, 255, 255, 0.2) !important;
  white-space: nowrap;
  cursor: pointer;
  user-select: none;
  transition: background-color 0.2s ease;
  position: relative;
}

.colaby-grid-table thead th:hover {
  background-color: rgba(13, 110, 253, 0.8);
}

.colaby-grid-table thead th[data-sortable="true"] {
  padding-right: 1.5rem !important; /* Espacio para el icono de ordenamiento */
}

.colaby-grid-table thead th.sort-asc,
.colaby-grid-table thead th.sort-desc {
  background-color: var(--colaby-primary);
}

.colaby-grid-table thead th .sort-icon {
  position: absolute;
  right: 0.25rem;
  top: 50%;
  transform: translateY(-50%);
  font-size: 0.6rem;
}

.colaby-grid-table tbody tr {
  transition:
    background-color 0.15s ease,
    transform 0.1s ease;
  cursor: pointer;
}

.colaby-grid-table tbody tr:hover {
  background-color: var(--colaby-gray-light) !important;
}

.colaby-grid-table tbody tr:hover td {
  background-color: var(--colaby-gray-light) !important;
}

.colaby-grid-table tbody tr.table-active {
  background-color: #cfe2ff !important;
  font-weight: 500;
  border-left: 3px solid var(--colaby-primary);
}

.colaby-grid-table tbody tr.table-active:hover {
  background-color: #b6d4fe !important;
}

.colaby-grid-table tbody td {
  padding: 0.25rem 0.5rem !important;
  font-size: 0.65rem !important;
  text-align: center !important;
  border: 1px solid var(--colaby-border) !important;
  vertical-align: middle !important;
  color: var(--colaby-dark) !important;
}

/* Estado de carga */
.colaby-grid-loading {
  text-align: center;
  padding: 2rem;
  color: var(--colaby-muted);
  font-size: 0.9rem;
  position: relative;
  z-index: 10;
}

.colaby-grid-loading i {
  font-size: 1.5rem;
  margin-bottom: 0.5rem;
  animation: spin 1s linear infinite;
}

@keyframes spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}

/* Información de paginación */
.colaby-grid-info {
  color: var(--colaby-muted);
  font-size: 0.75rem;
  padding: 0.5rem 0;
  text-align: center;
}

/* Paginación */
.colaby-grid-pagination {
  margin-top: 1rem;
}

.colaby-grid-pagination .pagination {
  margin-bottom: 0;
}

.colaby-grid-pagination .page-link {
  color: var(--colaby-primary);
  border-color: var(--colaby-border);
  transition: all 0.2s ease;
}

.colaby-grid-pagination .page-link:hover {
  background-color: var(--colaby-primary);
  color: var(--colaby-white);
  border-color: var(--colaby-primary);
  transform: translateY(-1px);
}

.colaby-grid-pagination .page-item.active .page-link {
  background-color: var(--colaby-primary);
  border-color: var(--colaby-primary);
  color: var(--colaby-white);
  font-weight: 600;
}

.colaby-grid-pagination .page-item.disabled .page-link {
  color: var(--colaby-muted);
  background-color: var(--colaby-white);
  border-color: var(--colaby-border);
  cursor: not-allowed;
  opacity: 0.6;
}

/* Mensaje vacío */
.colaby-grid-empty {
  text-align: center;
  padding: 3rem 1rem;
  color: var(--colaby-muted);
  font-size: 0.95rem;
  position: relative;
  z-index: 1;
}

.colaby-grid-empty i {
  font-size: 3rem;
  margin-bottom: 1rem;
  opacity: 0.5;
}

/* Responsive */
@media (max-width: 768px) {
  .colaby-grid-table {
    font-size: 0.8rem;
  }

  .colaby-grid-table thead th,
  .colaby-grid-table tbody td {
    padding: 0.5rem;
  }

  .colaby-grid-pagination .page-link {
    padding: 0.375rem 0.5rem;
    font-size: 0.85rem;
  }
}

/* Tabla de totales en appmapaView */
.table.m-t-15 {
  margin-top: 1rem;
  font-size: 0.85rem;
}

.table.m-t-15 td {
  padding: 0.5rem;
  font-size: 0.85rem;
  border: 1px solid var(--colaby-border);
}

.table.m-t-15 .bg-grey {
  background-color: var(--colaby-gray-light);
  font-weight: 600;
}

.table.m-t-15 .bg-light-green {
  background-color: #e8f5e9;
  font-weight: 600;
}

.table.m-t-15 .bg-light-blue {
  background-color: #e3f2fd;
  font-weight: 600;
}

/* ============================================
   9. ESTILOS DE BOTONES
   ============================================ */
.btn.btn-xs {
  padding: 1px 1px;
  font-size: 11px;
}

.btn:not(.btn-link):not(.btn-circle) {
  font-size: 11px;
}

h2 .btn {
  height: 30px;
  font-size: 12px;
  line-height: 15px;
}

/* Botones Colaby */
.btn-colaby-primary {
  background-color: var(--colaby-primary);
  color: var(--colaby-white);
  border: none;
  border-radius: 10px;
  padding: 0.75rem 2rem;
  font-weight: 600;
  transition: all 0.3s ease;
}

.btn-colaby-primary:hover {
  background-color: var(--colaby-primary-hover);
  transform: translateY(-1px);
  box-shadow: var(--colaby-primary-shadow);
}

.btn-colaby-secondary {
  background-color: var(--colaby-secondary);
  color: var(--colaby-white);
  border: none;
  border-radius: 10px;
  padding: 0.75rem 2rem;
  font-weight: 600;
  transition: all 0.3s ease;
}

.btn-colaby-secondary:hover {
  background-color: var(--colaby-secondary-hover);
  transform: translateY(-1px);
  box-shadow: var(--colaby-secondary-shadow);
}

.btn-colaby-success {
  background-color: var(--colaby-success);
  color: var(--colaby-white);
  border: none;
  border-radius: 10px;
  padding: 0.75rem 2rem;
  font-weight: 600;
  transition: all 0.3s ease;
}

.btn-colaby-success:hover {
  background-color: var(--colaby-success-hover);
  transform: translateY(-1px);
  box-shadow: var(--colaby-success-shadow);
}

.btn-colaby-danger {
  background-color: var(--colaby-danger);
  color: var(--colaby-white);
  border: none;
  border-radius: 10px;
  padding: 0.75rem 2rem;
  font-weight: 600;
  transition: all 0.3s ease;
}

.btn-colaby-danger:hover {
  background-color: var(--colaby-danger-hover);
  transform: translateY(-1px);
  box-shadow: var(--colaby-danger-shadow);
}

.btn-colaby-warning {
  background-color: var(--colaby-warning);
  color: var(--colaby-white);
  border: none;
  border-radius: 10px;
  padding: 0.75rem 2rem;
  font-weight: 600;
  transition: all 0.3s ease;
}

.btn-colaby-warning:hover {
  background-color: var(--colaby-warning-hover);
  transform: translateY(-1px);
  box-shadow: var(--colaby-warning-shadow);
}

.btn-colaby-info {
  background-color: var(--colaby-info);
  color: var(--colaby-white);
  border: none;
  border-radius: 10px;
  padding: 0.75rem 2rem;
  font-weight: 600;
  transition: all 0.3s ease;
}

.btn-colaby-info:hover {
  background-color: var(--colaby-info-hover);
  transform: translateY(-1px);
  box-shadow: var(--colaby-info-shadow);
}

/* ============================================
   ESTILOS ESTÁNDAR DE BOTONES (bg-* con waves-effect)
   ============================================ */

/* Botones con clases bg-* y waves-effect */
.btn.bg-green.waves-effect,
.btn.bg-green {
  background-color: var(--colaby-success) !important;
  color: var(--colaby-white) !important;
  border: none;
}

.btn.bg-green.waves-effect:hover,
.btn.bg-green:hover {
  background-color: var(--colaby-success-hover, #2e7d32) !important;
  color: var(--colaby-white) !important;
}

.btn.bg-info.waves-effect,
.btn.bg-info {
  background-color: var(--colaby-info) !important;
  color: var(--colaby-white) !important;
  border: none;
}

.btn.bg-info.waves-effect:hover,
.btn.bg-info:hover {
  background-color: var(--colaby-info-hover, #0288d1) !important;
  color: var(--colaby-white) !important;
}

.btn.bg-red.waves-effect,
.btn.bg-red {
  background-color: var(--colaby-danger) !important;
  color: var(--colaby-white) !important;
  border: none;
}

.btn.bg-red.waves-effect:hover,
.btn.bg-red:hover {
  background-color: var(--colaby-danger-hover, #c62828) !important;
  color: var(--colaby-white) !important;
}

.btn.bg-secondary.waves-effect,
.btn.bg-secondary {
  background-color: var(--colaby-secondary) !important;
  color: var(--colaby-white) !important;
  border: none;
}

.btn.bg-secondary.waves-effect:hover,
.btn.bg-secondary:hover {
  background-color: var(--colaby-secondary-hover, #e64a19) !important;
  color: var(--colaby-white) !important;
}

.btn.bg-warning.waves-effect,
.btn.bg-warning {
  background-color: var(--colaby-warning) !important;
  color: var(--colaby-dark) !important;
  border: none;
}

.btn.bg-warning.waves-effect:hover,
.btn.bg-warning:hover {
  background-color: var(--colaby-warning-hover, #f57c00) !important;
  color: var(--colaby-dark) !important;
}

.btn.bg-primary.waves-effect,
.btn.bg-primary {
  background-color: var(--colaby-primary) !important;
  color: var(--colaby-white) !important;
  border: none;
}

.btn.bg-primary.waves-effect:hover,
.btn.bg-primary:hover {
  background-color: var(--colaby-primary-hover, #1a6a6f) !important;
  color: var(--colaby-white) !important;
}

/* Botones disabled */
.btn.bg-green.waves-effect.disabled,
.btn.bg-green.disabled,
.btn.bg-info.waves-effect.disabled,
.btn.bg-info.disabled,
.btn.bg-red.waves-effect.disabled,
.btn.bg-red.disabled,
.btn.bg-secondary.waves-effect.disabled,
.btn.bg-secondary.disabled,
.btn.bg-warning.waves-effect.disabled,
.btn.bg-warning.disabled,
.btn.bg-primary.waves-effect.disabled,
.btn.bg-primary.disabled {
  opacity: 0.6;
  cursor: not-allowed;
  pointer-events: none;
}

/* ============================================
   10. ESTILOS DE FORMULARIOS
   ============================================ */
.input-group {
  margin-bottom: 5px;
}

.form-control {
  margin-bottom: 0px;
}

.select2 {
  width: 100% !important;
  margin-top: 3.5px;
  margin-right: 5px;
  margin-left: 5px;
}

.bootstrap-select .bs-searchbox {
  position: relative !important;
  margin-left: 30px;
  padding-left: 5px;
}

.bootstrap-select.btn-group.show-tick .dropdown-menu.inner {
  margin-left: 30px;
  padding-left: 5px;
}

.dropdown-menu {
  width: 180px;
}

.dropdown-menu li a {
  font-size: 12px;
  line-height: 1.15;
  padding: 4px 8px;
}

.dropdown-menu .inner {
  max-height: 146px;
  overflow: scroll;
  overflow-x: hidden;
  margin-top: 0px;
}

/* Formularios mejorados */
.form-group {
  position: relative;
  margin-bottom: 1rem;
}

.form-group.form-float {
  position: relative;
}

.form-group .form-line {
  position: relative;
  margin-bottom: 0.5rem;
}

.form-group .form-label {
  position: absolute;
  left: 0.75rem;
  top: 0.75rem;
  color: var(--colaby-gray);
  font-size: 0.9rem;
  transition: all 0.2s ease;
  pointer-events: none;
  background: var(--colaby-white);
  padding: 0 0.25rem;
  z-index: 1;
}

.form-group .form-control:focus ~ .form-label,
.form-group .form-control:not(:placeholder-shown) ~ .form-label,
.form-group .form-control.has-value ~ .form-label {
  top: -0.5rem;
  font-size: 0.75rem;
  color: var(--colaby-primary);
}

.form-control {
  border: 1px solid #bdbdbd;
  border-radius: 6px;
  padding: 0.5rem 0.75rem;
  font-size: 13px;
  transition: all 0.2s ease;
  background: #ffffff;
  color: #1a1a1a;
  width: 100%;
  min-height: 36px;
}

.form-control:focus {
  border-color: var(--colaby-primary);
  box-shadow: 0 0 0 2px rgba(26, 138, 143, 0.2);
  outline: none;
}

select.form-control {
  text-overflow: ellipsis;
  overflow: hidden;
}

/* Password visibility */
.form-group i.fa-eye-slash,
.form-group i.fa-eye {
  position: absolute;
  right: 15px;
  top: 50%;
  transform: translateY(-50%);
  cursor: pointer;
  color: var(--colaby-gray);
  transition: color 0.3s ease;
  z-index: 10;
  font-size: 1.2rem;
  display: flex;
  align-items: center;
}

.form-group i.fa-eye-slash:hover,
.form-group i.fa-eye:hover {
  color: var(--colaby-primary);
}

/* Waves effect (Material Design) */
.waves-effect {
  position: relative;
  cursor: pointer;
  overflow: hidden;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
}

.waves-effect .waves-ripple {
  position: absolute;
  border-radius: 50%;
  width: 100px;
  height: 100px;
  margin-top: -50px;
  margin-left: -50px;
  opacity: 0;
  background: rgba(0, 0, 0, 0.2);
  background: radial-gradient(
    circle,
    rgba(0, 0, 0, 0.2) 0%,
    rgba(0, 0, 0, 0) 70%
  );
  transform: scale(0);
  pointer-events: none;
}

.waves-effect.waves-light .waves-ripple {
  background: rgba(255, 255, 255, 0.4);
  background: radial-gradient(
    circle,
    rgba(255, 255, 255, 0.4) 0%,
    rgba(255, 255, 255, 0) 70%
  );
}

.waves-effect input[type="button"],
.waves-effect input[type="reset"],
.waves-effect input[type="submit"] {
  border: 0;
  font-style: normal;
  font-size: inherit;
  text-transform: inherit;
  background: none;
  cursor: pointer;
}

.waves-notransition {
  transition: none !important;
}

.waves-circle {
  transform: translateZ(0);
  -webkit-mask-image: -webkit-radial-gradient(circle, white 100%, black 100%);
  mask-image: radial-gradient(circle, white 100%, black 100%);
}

.waves-input-wrapper {
  border-radius: 0.2em;
  vertical-align: bottom;
}

.waves-input-wrapper .waves-button-input {
  position: relative;
  top: 0;
  left: 0;
  z-index: 1;
}

.waves-circle {
  text-align: center;
  width: 2.5em;
  height: 2.5em;
  line-height: 2.5em;
  border-radius: 50%;
  -webkit-mask-image: none;
  mask-image: none;
  mask-image: -webkit-radial-gradient(circle, white 100%, black 100%);
}

.waves-button,
.waves-circle {
  -webkit-mask-image: none;
  -webkit-mask-image: -webkit-radial-gradient(circle, white 100%, black 100%);
  mask-image: none;
  mask-image: radial-gradient(circle, white 100%, black 100%);
}

.waves-button,
.waves-button:hover,
.waves-button:visited,
.waves-button-input {
  white-space: nowrap;
  vertical-align: middle;
  cursor: pointer;
  border: none;
  outline: none;
  color: inherit;
  background-color: rgba(0, 0, 0, 0);
  font-size: 1em;
  line-height: 1em;
  text-align: center;
  text-decoration: none;
  z-index: 1;
  will-change: opacity, transform;
  transition: all 0.3s ease-out;
}

.waves-button {
  padding: 0.85em 1.1em;
  border-radius: 0.2em;
}

.waves-button-input {
  margin: 0;
  padding: 0.85em 1.1em;
}

.waves-input-wrapper {
  border-radius: 0.2em;
  vertical-align: bottom;
}

.waves-input-wrapper.waves-button {
  padding: 0;
}

.waves-input-wrapper .waves-button-input {
  position: relative;
  top: 0;
  left: 0;
  z-index: 1;
}

.waves-circle {
  text-align: center;
  width: 2.5em;
  height: 2.5em;
  line-height: 2.5em;
  border-radius: 50%;
  -webkit-mask-image: none;
  mask-image: none;
}

a.waves-button,
.waves-button {
  -webkit-mask-image: none;
  -webkit-mask-image: -webkit-radial-gradient(circle, white 100%, black 100%);
  mask-image: none;
  mask-image: radial-gradient(circle, white 100%, black 100%);
}

/* ============================================
   11. ESTILOS DE MODALES
   ============================================ */
.modal {
  z-index: 1050;
}

.modal-dialog {
  margin: 1.75rem auto;
}

.modal-content {
  border: none;
  border-radius: 12px;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15);
  background: var(--colaby-white);
  overflow: hidden;
}

.modal-header {
  background: linear-gradient(
    135deg,
    var(--colaby-primary) 0%,
    var(--colaby-primary-dark) 100%
  );
  color: var(--colaby-white);
  padding: 1rem 1.5rem;
  border-bottom: none;
  border-radius: 12px 12px 0 0;
}

.modal-header .modal-title {
  color: var(--colaby-white);
  font-size: 1.1rem;
  font-weight: 600;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.modal-header .close {
  color: var(--colaby-white);
  opacity: 0.9;
  font-size: 1.5rem;
  font-weight: 300;
  text-shadow: none;
  transition: all 0.3s ease;
}

.modal-header .close:hover {
  opacity: 1;
  transform: rotate(90deg);
  color: var(--colaby-white);
}

.modal-body {
  padding: 1.5rem;
  background: var(--colaby-white);
  color: var(--colaby-dark);
}

.modal-footer {
  border-top: 1px solid var(--colaby-border);
  padding: 1rem 1.5rem;
  background: var(--colaby-gray-light);
  display: flex;
  justify-content: flex-end;
  gap: 0.5rem;
}

.modal-footer .btn {
  padding: 0.5rem 1.5rem;
  font-weight: 500;
  border-radius: 6px;
  transition: all 0.3s ease;
}

.modal-footer .btn-primary {
  background: var(--colaby-primary);
  border-color: var(--colaby-primary);
  color: var(--colaby-white);
}

.modal-footer .btn-primary:hover {
  background: var(--colaby-primary-dark);
  border-color: var(--colaby-primary-dark);
  transform: translateY(-1px);
  box-shadow: var(--colaby-primary-shadow);
}

.modal-footer .btn-secondary {
  background: var(--colaby-gray);
  border-color: var(--colaby-gray);
  color: var(--colaby-white);
}

.modal-footer .btn-secondary:hover {
  background: var(--colaby-dark);
  border-color: var(--colaby-dark);
}

/* ============================================
   COLABY POPUP - Sistema de popups personalizado
   ============================================ */
.colaby-popup-modal {
  z-index: 10000 !important;
}

.colaby-popup-modal .modal-dialog {
  margin: 1.75rem auto;
}

.colaby-popup-content {
  border: none;
  border-radius: 12px;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2);
  background: var(--colaby-white);
  overflow: hidden;
}

.colaby-popup-header {
  padding: 1rem 1.5rem;
  border-bottom: none;
  border-radius: 12px 12px 0 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.colaby-popup-title {
  display: flex;
  align-items: center;
  gap: 10px;
  color: var(--colaby-white) !important;
}

.colaby-popup-title span,
.colaby-popup-title .material-icons,
.colaby-popup-title .fa-solid {
  color: var(--colaby-white) !important;
  font-size: 28px;
}

.colaby-popup-body {
  padding: 1.5rem;
  text-align: center;
}

.colaby-popup-body p {
  margin: 0;
  font-size: 15px;
  color: var(--colaby-dark);
  line-height: 1.6;
}

.colaby-popup-footer {
  border-top: 1px solid var(--colaby-border);
  padding: 1rem 1.5rem;
  background: var(--colaby-gray-light);
  display: flex;
  justify-content: center;
  gap: 0.75rem;
}

.colaby-popup-footer .btn {
  padding: 0.5rem 1.5rem;
  font-weight: 500;
  border-radius: 6px;
  transition: all 0.3s ease;
  min-width: 100px;
  border: none;
}

.colaby-popup-footer .btn-primary {
  background: var(--colaby-primary);
  color: var(--colaby-white);
}

.colaby-popup-footer .btn-primary:hover {
  background: var(--colaby-primary-dark);
  transform: translateY(-1px);
  box-shadow: var(--colaby-primary-shadow);
}

.colaby-popup-footer .btn-secondary {
  background: var(--colaby-gray);
  color: var(--colaby-white);
}

.colaby-popup-footer .btn-secondary:hover {
  background: var(--colaby-dark);
  transform: translateY(-1px);
}

.colaby-popup-close {
  margin: 0;
  padding: 0;
  background: transparent;
  border: none;
  color: var(--colaby-white);
  font-size: 24px;
  line-height: 1;
  opacity: 0.9;
  cursor: pointer;
  transition: all 0.3s ease;
}

.colaby-popup-close:hover {
  opacity: 1;
  transform: rotate(90deg);
}

/* Estilos para modal información móvil */
#modalGenericoInformacionMovil .modal-body,
#modalGenericoInformacionViaje .modal-body {
  padding: 10px;
  max-height: calc(100vh - 120px);
  overflow-y: auto;
  min-height: 300px;
  display: block !important;
}

#modalGenericoInformacionViaje .modal-body .row,
#modalGenericoInformacionMovil .modal-body .row {
  min-height: 200px !important;
  height: auto !important;
  display: block !important;
}

#modalGenericoInformacionViaje .modal-body .row.clearfix,
#modalGenericoInformacionMovil .modal-body .row.clearfix {
  min-height: 200px !important;
  height: auto !important;
  display: block !important;
}

#modalGenericoInformacionViaje .modal-body .col-md-12,
#modalGenericoInformacionMovil .modal-body .col-md-12 {
  min-height: 200px !important;
  height: auto !important;
  display: block !important;
}

#GenericoViaje_ConDatosWrapper {
  display: none;
  visibility: visible;
}

#GenericoViaje_ConDatos {
  display: block !important;
  visibility: visible !important;
}

#GenericoListaInformacion {
  display: table !important;
  visibility: visible !important;
}

#GenericoListaInformacion_wrapper {
  display: block !important;
  visibility: visible !important;
}

#modalGenericoInformacionMovil .modal-dialog,
#modalGenericoInformacionViaje .modal-dialog {
  margin: 10px auto;
  max-height: calc(100vh - 20px);
}

#modalGenericoInformacionMovil .modal-content,
#modalGenericoInformacionViaje .modal-content {
  max-height: calc(100vh - 20px);
  display: flex;
  flex-direction: column;
}

#modalGenericoInformacionMovil .modal-body {
  height: calc(100vh - 200px);
  max-height: calc(100vh - 200px);
}

#modalGenericoInformacionMovil .table-responsive,
#modalGenericoInformacionViaje .table-responsive {
  overflow-x: hidden !important;
}

#GenericoListaInformacionMovil_Container {
  position: relative !important;
}

#GenericoListaInformacionMovil_wrapper {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden !important;
  width: 100% !important;
}

#GenericoListaInformacionMovil_wrapper .dataTables_scroll {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  min-height: 0 !important;
  overflow: hidden !important;
}

#GenericoListaInformacionMovil_wrapper .dataTables_scrollBody {
  flex: 1 1 auto !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  max-height: 100% !important;
}

#GenericoListaInformacionMovil_wrapper table {
  width: 100% !important;
}

#GenericoListaInformacion_wrapper {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  min-height: 0 !important;
  overflow: hidden !important;
  width: 100% !important;
}

#GenericoListaInformacion_wrapper .dataTables_scroll {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  min-height: 0 !important;
}

#GenericoListaInformacion_wrapper .dataTables_scrollBody {
  flex: 1 1 auto !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
}

#GenericoListaInformacionMovil_wrapper,
#GenericoListaInformacion_wrapper {
  overflow-x: hidden !important;
}

#GenericoListaInformacionMovil_wrapper table.dataTable tbody tr {
  height: auto !important;
  min-height: 28px !important;
}

#GenericoListaInformacionMovil_wrapper table.dataTable tbody td {
  padding-top: 6px !important;
  padding-bottom: 6px !important;
}

#GenericoListaInformacionMovil,
#GenericoListaInformacion {
  width: 100% !important;
  table-layout: auto;
}

#GenericoListaInformacionMovil th,
#GenericoListaInformacionMovil td,
#GenericoListaInformacion th,
#GenericoListaInformacion td {
  white-space: normal;
  word-wrap: break-word;
}

#GenericoListaInformacionMovil th:first-child,
#GenericoListaInformacionMovil td:first-child,
#GenericoListaInformacion th:first-child,
#GenericoListaInformacion td:first-child {
  max-width: 120px;
}

#GenericoListaInformacionMovil th:nth-child(2),
#GenericoListaInformacionMovil td:nth-child(2),
#GenericoListaInformacion th:nth-child(2),
#GenericoListaInformacion td:nth-child(2) {
  max-width: 100px;
}

#GenericoListaInformacionMovil th:nth-child(3),
#GenericoListaInformacionMovil td:nth-child(3),
#GenericoListaInformacion th:nth-child(3),
#GenericoListaInformacion td:nth-child(3) {
  max-width: 120px;
}

#GenericoListaInformacion tbody {
  display: table-row-group !important;
  visibility: visible !important;
}

#GenericoListaInformacion tbody tr {
  display: table-row !important;
  visibility: visible !important;
  opacity: 1 !important;
}

#GenericoListaInformacion tbody td {
  display: table-cell !important;
  visibility: visible !important;
  opacity: 1 !important;
  padding: 8px !important;
}

#GenericoListaInformacion tbody tr.odd,
#GenericoListaInformacion tbody tr.even {
  display: table-row !important;
  visibility: visible !important;
  opacity: 1 !important;
}

#modalGenericoInformacionMovil .col-md-6 {
  padding: 10px;
}

#modalGenericoInformacionMovil .border-left {
  border-left: 1px solid #dee2e6 !important;
}

#modalGenericoInformacionMovil .modal-footer,
#modalGenericoInformacionViaje .modal-footer {
  padding: 10px 15px;
}

#modalGenericoInformacionMovil .btn-raised,
#modalGenericoInformacionViaje .btn-raised {
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
}

/* ============================================
   12. ESTILOS DE CONTEXT MENU
   ============================================ */
/* Menú contextual mejorado - diseño moderno y consistente con topbar */
#context-menu,
#context-menu-viajes,
#context-menu-parada,
#context-menu-movil,
#context-menu-domicilios,
#context-menu-Negativo,
#context-menu-Reserva,
#context-menu-segmentos {
  position: fixed !important;
  z-index: 100000 !important;
  min-width: 220px;
  background: var(--colaby-white);
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 8px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
  padding: 0;
  margin: 0;
  list-style: none;
  overflow: hidden;
}

/* Cabecera menú contextual (estructura colaby-context-menu: li + span título) */
#context-menu > li.colaby-context-menu__header,
#context-menu-viajes > li.colaby-context-menu__header,
#context-menu-parada > li.colaby-context-menu__header,
#context-menu-movil > li.colaby-context-menu__header,
#context-menu-domicilios > li.colaby-context-menu__header,
#context-menu-Negativo > li.colaby-context-menu__header,
#context-menu-Reserva > li.colaby-context-menu__header,
#context-menu-segmentos > li.colaby-context-menu__header {
  background-color: var(--colaby-primary, #1a8a8f) !important;
  border-bottom: 2px solid rgba(255, 255, 255, 0.2);
  margin: 0;
  padding: 0;
  list-style: none;
}

/* Título: enlace legacy (primer ítem) o span .colaby-context-menu__title */
#context-menu > li:first-child > a,
#context-menu-viajes > li:first-child > a,
#context-menu-parada > li:first-child > a,
#context-menu-movil > li:first-child > a,
#context-menu-domicilios > li:first-child > a,
#context-menu-Negativo > li:first-child > a,
#context-menu-Reserva > li:first-child > a,
#context-menu-segmentos > li:first-child > a,
#context-menu > li.colaby-context-menu__header > .colaby-context-menu__title,
#context-menu-viajes > li.colaby-context-menu__header > .colaby-context-menu__title,
#context-menu-parada > li.colaby-context-menu__header > .colaby-context-menu__title,
#context-menu-movil > li.colaby-context-menu__header > .colaby-context-menu__title,
#context-menu-domicilios > li.colaby-context-menu__header > .colaby-context-menu__title,
#context-menu-Negativo > li.colaby-context-menu__header > .colaby-context-menu__title,
#context-menu-Reserva > li.colaby-context-menu__header > .colaby-context-menu__title,
#context-menu-segmentos > li.colaby-context-menu__header > .colaby-context-menu__title {
  background-color: var(--colaby-primary, #1a8a8f) !important;
  color: var(--colaby-white, #ffffff) !important;
  font-weight: 600;
  font-size: 0.9rem;
  padding: 0.75rem 1rem;
  text-align: center;
  display: block;
  border-bottom: 2px solid rgba(255, 255, 255, 0.2);
  cursor: default;
  pointer-events: none;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  line-height: 1.3;
}

#context-menu > li.colaby-context-menu__header > .colaby-context-menu__title,
#context-menu-viajes > li.colaby-context-menu__header > .colaby-context-menu__title,
#context-menu-parada > li.colaby-context-menu__header > .colaby-context-menu__title,
#context-menu-movil > li.colaby-context-menu__header > .colaby-context-menu__title,
#context-menu-domicilios > li.colaby-context-menu__header > .colaby-context-menu__title,
#context-menu-Negativo > li.colaby-context-menu__header > .colaby-context-menu__title,
#context-menu-Reserva > li.colaby-context-menu__header > .colaby-context-menu__title,
#context-menu-segmentos > li.colaby-context-menu__header > .colaby-context-menu__title {
  background: transparent !important;
  border-bottom: none;
}

/* Separador */
#context-menu .divider,
#context-menu-viajes .divider,
#context-menu-parada .divider,
#context-menu-movil .divider,
#context-menu-domicilios .divider,
#context-menu-Negativo .divider,
#context-menu-Reserva .divider,
#context-menu-segmentos .divider {
  height: 1px;
  margin: 0.25rem 0;
  overflow: hidden;
  background-color: rgba(0, 0, 0, 0.1);
  border: none;
}

/* Items del menú */
#context-menu li a,
#context-menu-viajes li a,
#context-menu-parada li a,
#context-menu-movil li a,
#context-menu-domicilios li a,
#context-menu-Negativo li a,
#context-menu-Reserva li a,
#context-menu-segmentos li a {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.65rem 1rem;
  font-size: 0.875rem;
  line-height: 1.4;
  color: var(--colaby-dark);
  text-decoration: none;
  transition: all 0.2s ease;
  border-left: 3px solid transparent;
  position: relative;
  cursor: pointer;
}

/* Iconos en los items - tamaño proporcional */
#context-menu li a .material-icons,
#context-menu li a .fa-solid,
#context-menu-viajes li a .material-icons,
#context-menu-viajes li a .fa-solid,
#context-menu-parada li a .material-icons,
#context-menu-parada li a .fa-solid,
#context-menu-movil li a .material-icons,
#context-menu-movil li a .fa-solid,
#context-menu-domicilios li a .material-icons,
#context-menu-domicilios li a .fa-solid,
#context-menu-Negativo li a .material-icons,
#context-menu-Negativo li a .fa-solid,
#context-menu-Reserva li a .material-icons,
#context-menu-Reserva li a .fa-solid,
#context-menu-segmentos li a .material-icons,
#context-menu-segmentos li a .fa-solid {
  font-size: 18px !important;
  width: 20px;
  text-align: center;
  color: var(--colaby-primary);
  flex-shrink: 0;
  transition: all 0.2s ease;
}

/* Hover effect en items */
#context-menu li a:hover:not(:first-child),
#context-menu-viajes li a:hover:not(:first-child),
#context-menu-parada li a:hover:not(:first-child),
#context-menu-movil li a:hover:not(:first-child),
#context-menu-domicilios li a:hover:not(:first-child),
#context-menu-Negativo li a:hover:not(:first-child),
#context-menu-Reserva li a:hover:not(:first-child),
#context-menu-segmentos li a:hover:not(:first-child) {
  background-color: var(--colaby-primary-light);
  color: var(--colaby-dark);
  border-left-color: var(--colaby-primary);
  padding-left: 1.25rem;
}

#context-menu li a:hover:not(:first-child) .material-icons,
#context-menu li a:hover:not(:first-child) .fa-solid,
#context-menu-viajes li a:hover:not(:first-child) .material-icons,
#context-menu-viajes li a:hover:not(:first-child) .fa-solid,
#context-menu-parada li a:hover:not(:first-child) .material-icons,
#context-menu-parada li a:hover:not(:first-child) .fa-solid,
#context-menu-movil li a:hover:not(:first-child) .material-icons,
#context-menu-movil li a:hover:not(:first-child) .fa-solid,
#context-menu-domicilios li a:hover:not(:first-child) .material-icons,
#context-menu-domicilios li a:hover:not(:first-child) .fa-solid,
#context-menu-Negativo li a:hover:not(:first-child) .material-icons,
#context-menu-Negativo li a:hover:not(:first-child) .fa-solid,
#context-menu-Reserva li a:hover:not(:first-child) .material-icons,
#context-menu-Reserva li a:hover:not(:first-child) .fa-solid,
#context-menu-segmentos li a:hover:not(:first-child) .material-icons,
#context-menu-segmentos li a:hover:not(:first-child) .fa-solid {
  color: var(--colaby-primary);
  transform: scale(1.1);
}

/* Items deshabilitados */
#context-menu li a.disabled,
#context-menu-viajes li a.disabled,
#context-menu-parada li a.disabled,
#context-menu-movil li a.disabled,
#context-menu-domicilios li a.disabled,
#context-menu-Negativo li a.disabled,
#context-menu-Reserva li a.disabled,
#context-menu-segmentos li a.disabled {
  opacity: 0.5;
  cursor: not-allowed;
  pointer-events: none;
  background-color: transparent !important;
}

#context-menu li a.disabled .material-icons,
#context-menu li a.disabled .fa-solid,
#context-menu-viajes li a.disabled .material-icons,
#context-menu-viajes li a.disabled .fa-solid,
#context-menu-parada li a.disabled .material-icons,
#context-menu-parada li a.disabled .fa-solid,
#context-menu-movil li a.disabled .material-icons,
#context-menu-movil li a.disabled .fa-solid,
#context-menu-domicilios li a.disabled .material-icons,
#context-menu-domicilios li a.disabled .fa-solid,
#context-menu-Negativo li a.disabled .material-icons,
#context-menu-Negativo li a.disabled .fa-solid,
#context-menu-Reserva li a.disabled .material-icons,
#context-menu-Reserva li a.disabled .fa-solid,
#context-menu-segmentos li a.disabled .material-icons,
#context-menu-segmentos li a.disabled .fa-solid {
  color: var(--colaby-gray);
}

/* Asegurar que el primer item (título) no tenga hover */
#context-menu > li:first-child > a:hover,
#context-menu-viajes > li:first-child > a:hover,
#context-menu-parada > li:first-child > a:hover,
#context-menu-movil > li:first-child > a:hover,
#context-menu-domicilios > li:first-child > a:hover,
#context-menu-Negativo > li:first-child > a:hover,
#context-menu-Reserva > li:first-child > a:hover,
#context-menu-segmentos > li:first-child > a:hover {
  background-color: var(--colaby-primary) !important;
  border-left-color: transparent !important;
  padding-left: 1rem !important;
}

/* Asegurar que los items tengan el texto alineado correctamente */
#context-menu li a:not(:first-child),
#context-menu-viajes li a:not(:first-child),
#context-menu-parada li a:not(:first-child),
#context-menu-movil li a:not(:first-child),
#context-menu-domicilios li a:not(:first-child),
#context-menu-Negativo li a:not(:first-child),
#context-menu-Reserva li a:not(:first-child),
#context-menu-segmentos li a:not(:first-child) {
  flex: 1;
}

#context-menu li a:not(:first-child) span,
#context-menu-viajes li a:not(:first-child) span,
#context-menu-parada li a:not(:first-child) span,
#context-menu-movil li a:not(:first-child) span,
#context-menu-domicilios li a:not(:first-child) span,
#context-menu-Negativo li a:not(:first-child) span,
#context-menu-Reserva li a:not(:first-child) span,
#context-menu-segmentos li a:not(:first-child) span {
  flex: 1;
}

/* Ancho específico para menú de domicilios */
#context-menu-domicilios {
  min-width: 280px;
}

/* ============================================
   13. ESTILOS DE SPINNER Y ANIMACIONES
   ============================================ */
.spinner-animation {
  width: 14px;
  height: 14px;
  border-radius: 50%;
  animation: spin 1s infinite none;
  transform-origin: 50% 50%;
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* ============================================
   14. ESTILOS DE MÓVILES Y VIAJES
   ============================================ */
/* Móviles */
.colaby-movil-disponible {
  background-color: #69c9d0;
  color: #fff;
}

.colaby-movil-visualizando,
.colaby-viaje-visualizando {
  background-color: #007bff;
  color: #fff;
}

.colaby-movil-confirmado,
.colaby-viaje-confirmado {
  background-color: #ff6f3c;
  color: #000;
}

.colaby-movil-en-viaje,
.colaby-viaje-en-viaje {
  background-color: #6c3483;
  color: #fff;
}

.colaby-movil-punto-de-espera {
  background-color: #045d75;
  color: #fff;
}

.colaby-movil-no-disponible {
  background-color: #7e7e7e;
  color: #000;
}

.colaby-movil-emergencia {
  background-color: #dc3545;
  color: #fff;
}

.colaby-movil-bloqueo {
  background-color: #000000;
  color: #fff;
}

.colaby-movil-temporal {
  background-color: #d5d5d5;
  color: #000;
}

.colaby-movil-con-deuda {
  background-color: #7c1135;
  color: #fff;
}

/* Viajes */
.colaby-viaje-ingresado {
  background-color: #1f2e3d;
  color: #fff;
}

.colaby-viaje-programado {
  background-color: #3e6d91;
  color: #fff;
}

.colaby-viaje-ofertado {
  background-color: #c1d7f2;
  color: #000;
}

.colaby-viaje-finalizado {
  background-color: #f0f2f4;
  color: #000;
}

.colaby-viaje-cancelado {
  background-color: #7a8b91;
  color: #fff;
}

.colaby-viaje-pago-pendiente {
  background-color: #bbaad1;
  color: #000;
}

/* ============================================
   15. ESTILOS ESPECÍFICOS DE VISTAS
   ============================================ */
/* Estilos para autosearch de direcciones */
#lista_domicilios_origen,
#lista_domicilios_destino {
  top: 100%;
  left: 0;
  margin-top: -1px;
  border-top: none;
  box-shadow:
    0 4px 6px rgba(0, 0, 0, 0.1),
    0 2px 4px rgba(0, 0, 0, 0.06);
  min-width: 100%;
  width: 100%;
  animation: fadeIn 0.2s ease-out;
}

#lista_domicilios_origen_content,
#lista_domicilios_destino_content {
  min-width: 100%;
  width: 100%;
}

.list-group-item.domicilio-item,
.list-group-item {
  padding: 10px 15px;
  cursor: pointer;
  border: none;
  border-bottom: 1px solid #e0e0e0;
  transition: background-color 0.2s ease;
  font-size: 13px;
  color: var(--colaby-dark) !important;
  background-color: #fff !important;
  min-width: 100%;
  width: 100%;
}

.list-group-item.domicilio-item:hover,
.list-group-item:hover {
  background-color: #f5f5f5 !important;
}

.list-group-item strong {
  color: var(--colaby-dark) !important;
}

.list-group-item small {
  color: #666 !important;
}

.list-group-item.domicilio-item:last-child {
  border-bottom: none;
}

.list-group-item.domicilio-item.active {
  background-color: #e3f2fd;
  color: #1976d2;
  font-weight: 600;
}

.list-group-item.buscar-item {
  background-color: #fff3cd;
  font-weight: 600;
  color: #856404;
  border-bottom: 2px solid #ffc107;
}

.list-group-item.buscar-item:hover {
  background-color: #ffe69c;
}

.list-group-item.mapa-item {
  background-color: #e8f5e9;
  font-weight: 600;
  color: #2e7d32;
  border-bottom: 2px solid #4caf50;
}

.list-group-item.mapa-item:hover {
  background-color: #c8e6c9;
}

.domicilio-direccion {
  font-weight: 600;
  color: #333;
  margin-bottom: 4px;
}

.domicilio-detalle {
  font-size: 11px;
  color: #666;
  margin-top: 2px;
}

.domicilio-usos {
  font-size: 10px;
  color: #999;
  font-style: italic;
}

.busqueda-loading {
  padding: 15px;
  text-align: center;
  color: #666;
  font-size: 12px;
}

.busqueda-loading .spinner-animation {
  display: inline-block;
  margin-right: 8px;
}

/* Estilos para método de pago */
.metodo-pago-btn {
  display: flex;
  align-items: center;
  padding: 10px 15px;
  margin-bottom: 5px;
  border: 2px solid #dee2e6;
  transition: all 0.2s ease;
  text-align: left;
}

.metodo-pago-btn:hover:not(.active) {
  border-color: var(--colaby-blue);
  background-color: #e3f2fd;
}

.metodo-pago-btn.active {
  border-color: var(--colaby-blue) !important;
  background-color: var(--colaby-blue) !important;
  color: #fff !important;
  font-weight: 600;
}

.metodo-pago-btn.active:hover,
.metodo-pago-btn.active:focus {
  border-color: #1976d2 !important;
  background-color: #1976d2 !important;
  color: #fff !important;
}

/* Iconos en color original; el filtro blanco rompía contraste si el fondo no era azul sólido */
.metodo-pago-btn.active img {
  filter: none;
}

.metodo-pago-btn img {
  width: 24px;
  height: 24px;
  margin-right: 10px;
  vertical-align: middle;
  flex-shrink: 0;
}

/* Lista desplegable telefonía: evita texto blanco (Bootstrap .btn-outline-primary.active) sin fondo azul y el scroll horizontal por hover/transform */
#lista_metodos_pago {
  overflow-x: hidden !important;
  max-width: 100%;
  box-sizing: border-box;
}

#lista_metodos_pago .metodo-pago-btn {
  max-width: 100%;
  box-sizing: border-box;
  white-space: normal;
  word-wrap: break-word;
}

/* Ítems sin seleccionar: forzar color legible sobre fondo blanco (pisa color heredado / focus / estados Bootstrap) */
#lista_metodos_pago .metodo-pago-btn.btn-outline-primary {
  color: #007bff !important;
  background-color: transparent !important;
}

#lista_metodos_pago .metodo-pago-btn.btn-outline-primary:hover,
#lista_metodos_pago .metodo-pago-btn.btn-outline-primary:focus,
#lista_metodos_pago .metodo-pago-btn.btn-outline-primary:active {
  color: #fff !important;
  background-color: #007bff !important;
  border-color: #007bff !important;
}

#lista_metodos_pago .metodo-pago-btn .metodo-pago-btn-label {
  color: inherit;
  flex: 1 1 auto;
  min-width: 0;
  text-align: left;
}

/* Estilos para monto del viaje */
#Telefonia_monto_total {
  font-size: 28px;
  font-weight: 700;
  color: var(--colaby-blue);
  margin: 0;
}

#Telefonia_monto_mensaje {
  font-size: 11px;
  color: #666;
  font-style: italic;
}

.monto-container {
  background: linear-gradient(135deg, #ffffff 0%, #f5f5f5 100%);
  border: 2px solid var(--colaby-blue);
  border-radius: 8px;
  padding: 15px;
  text-align: center;
  min-height: 80px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

/* Estilos para viaje eventual */
.viaje-eventual-container {
  background-color: #fff3cd;
  border: 2px solid #ffc107;
  border-radius: 6px;
  padding: 12px;
}

.viaje-eventual-container label {
  font-weight: 600;
  color: #856404;
  cursor: pointer;
  margin: 0;
  display: flex;
  align-items: center;
}

.viaje-eventual-container input[type="checkbox"] {
  margin-right: 8px;
  cursor: pointer;
}

/* Estilos para mapa de selección */
#mapa_seleccion {
  border-radius: 4px;
  border: 2px solid #dee2e6;
}

.modal-map-container {
  position: relative;
}

.map-controls {
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 1000;
  background: white;
  padding: 5px;
  border-radius: 4px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

/* Estilos para campos de origen/destino */
.direccion-input-container {
  position: relative;
}

.direccion-input-container .form-control:focus {
  border-color: var(--colaby-blue);
  box-shadow: 0 0 0 0.2rem rgba(33, 150, 243, 0.25);
}

.direccion-input-container.loading::after {
  content: "";
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  width: 16px;
  height: 16px;
  border: 2px solid #f3f3f3;
  border-top: 2px solid var(--colaby-blue);
  border-radius: 50%;
  animation: spin 1s linear infinite;
}

.select-localidad-provincia {
  font-size: 12px;
}

.select-localidad-provincia .form-control {
  padding: 4px 8px;
  font-size: 12px;
}

/* Resultados de búsqueda API */
.resultado-busqueda-item {
  padding: 12px 15px;
  border-bottom: 1px solid #e0e0e0;
  cursor: pointer;
  transition: background-color 0.2s ease;
}

.resultado-busqueda-item:hover {
  background-color: #f5f5f5;
}

.resultado-busqueda-item:last-child {
  border-bottom: none;
}

.resultado-busqueda-direccion {
  font-weight: 600;
  color: #333;
  margin-bottom: 4px;
}

.resultado-busqueda-ubicacion {
  font-size: 11px;
  color: #666;
}

/* Listados de internos y teléfonos */
.listados-container {
  display: flex;
  flex-direction: column;
  height: 100%;
}

#ListaLlamadasCentral {
  margin-bottom: 0;
}

#ListaLlamadasCentral tbody tr {
  transition: background-color 0.2s ease;
}

#ListaLlamadasCentral tbody tr:hover {
  background-color: #e3f2fd;
}

#ListaLlamadasCentral tbody tr.selected-row {
  background-color: #ffeb3b !important;
  font-weight: 600;
}

#ListaTelefonos {
  margin-bottom: 0;
}

#ListaTelefonos tbody tr {
  transition: background-color 0.2s ease;
  cursor: pointer;
}

#ListaTelefonos tbody tr:hover {
  background-color: #f5f5f5;
}

#ListaTelefonos tbody tr[data-domicilio]:hover::after {
  content: attr(data-domicilio);
  position: absolute;
  left: 100%;
  top: 0;
  background-color: #333;
  color: white;
  padding: 8px 12px;
  border-radius: 4px;
  font-size: 11px;
  white-space: nowrap;
  z-index: 1000;
  margin-left: 10px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
  pointer-events: none;
}

#ListaTelefonos tbody tr[data-domicilio] {
  position: relative;
}

/* Vista de último viaje */
.viaje-info-item {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 4px 0;
  color: #fff !important;
  font-size: 11px;
}

.viaje-info-item i.material-icons {
  flex-shrink: 0;
  color: #30c1c6 !important;
}

.viaje-info-item strong {
  color: #30c1c6 !important;
  margin-right: 4px;
}

.viaje-info-item span {
  color: #fff !important;
}

/* Estilos para mapa */
.leaflet-tooltip.park-tooltip {
  background-color: transparent;
  border: 0px;
  box-shadow: none;
  padding-left: 15px;
  padding-right: 15px;
  font-size: 16px;
  line-height: 16px;
  font-weight: 900;
  color: blue;
  font-family: Roboto, "Open Sans", sans-serif;
}

.small-text {
  font-size: 12px;
  color: blue;
}

/* Lista de móviles */
.lista-moviles-container {
  height: calc(100vh - 420px) !important;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.lista-moviles-container .dataTables_wrapper {
  position: static;
  height: 100%;
  width: 100%;
  padding: 0;
  overflow-x: hidden;
  overflow-y: hidden;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  flex: 1;
  min-height: 0;
}

.lista-moviles-container .dataTables_wrapper .dataTables_scroll {
  flex: 1;
  min-height: 0;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.lista-moviles-container .dataTables_wrapper .dataTables_scrollBody {
  flex: 1;
  overflow-y: auto;
  overflow-x: hidden;
}

.lista-moviles-scroll {
  flex: 1;
  min-height: 0;
  overflow-y: auto;
  overflow-x: hidden;
  padding: 0;
  scrollbar-gutter: stable;
  height: 100%;
}

#ListaMoviles {
  width: 100% !important;
  table-layout: fixed;
  margin: 0 !important;
}

#ListaMoviles th,
#ListaMoviles td {
  white-space: normal;
  overflow: hidden;
  text-overflow: ellipsis;
}

#ListaMoviles th:first-child,
#ListaMoviles td:first-child {
  width: 60px;
  text-align: center;
}

#ListaMoviles th:last-child,
#ListaMoviles td:last-child {
  width: auto;
}

/* Panel flotante de radio virtual */
.radio-floating-panel {
  position: fixed;
  top: 17px;
  right: 10px;
  width: 240px;
  background: white;
  border-radius: 8px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
  z-index: 1000;
  border: 1px solid #e0e0e0;
  transition: all 0.3s ease;
  font-family: "Roboto", sans-serif;
}

.radio-floating-panel:hover {
  box-shadow: 0 6px 25px rgba(0, 0, 0, 0.2);
  transform: translateY(-2px);
}

.radio-floating-content {
  padding: 6px;
  background: white;
  border-radius: 8px;
  position: relative;
}

.radio-status-floating {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px;
  margin-bottom: 6px;
  border-radius: 8px;
  background-color: #f5f5f5;
  border: 1px solid #e0e0e0;
  font-size: 12px;
  transition: all 0.3s ease;
}

.radio-status-floating.speaking {
  background-color: #fff3e0;
  border-color: #ff9800;
  color: #e65100;
  animation: pulse-status-floating 1s infinite;
}

@keyframes pulse-status-floating {
  0% {
    box-shadow: 0 0 0 0 rgba(255, 152, 0, 0.4);
  }
  70% {
    box-shadow: 0 0 0 6px rgba(255, 152, 0, 0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(255, 152, 0, 0);
  }
}

.radio-status-floating .radio-status-text-floating {
  flex: 1 1 auto;
  min-width: 0;
  line-height: 1.25;
}

.radio-ubicar-movil-btn {
  flex-shrink: 0;
  padding: 2px 8px;
  min-width: 32px;
  line-height: 1.2;
  color: var(--colaby-primary, #1a8a8f);
  border: 1px solid rgba(26, 138, 143, 0.35);
  background: var(--colaby-white, #fff);
  border-radius: 6px;
}

.radio-ubicar-movil-btn:hover {
  background: var(--colaby-primary-light, #b8e6e8);
  color: var(--colaby-primary-dark, #156d71);
}

.radio-status-floating i {
  font-size: 16px;
  flex-shrink: 0;
}

.radio-status-floating.speaking i {
  color: #ff9800;
  animation: blink-floating 0.5s infinite;
}

.radio-conductor-floating {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 6px 10px;
  margin-bottom: 8px;
  border-radius: 6px;
  background-color: #e3f2fd;
  border: 1px solid #bbdefb;
  font-size: 11px;
  font-weight: 500;
  color: #1976d2;
  min-height: 28px;
  transition: all 0.3s ease;
}

.radio-conductor-floating.speaking {
  background-color: #fff3e0;
  border-color: #ffcc02;
  color: #f57c00;
  animation: pulse-conductor 1s infinite;
}

@keyframes pulse-conductor {
  0% {
    box-shadow: 0 0 0 0 rgba(255, 193, 7, 0.4);
  }
  70% {
    box-shadow: 0 0 0 4px rgba(255, 193, 7, 0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(255, 193, 7, 0);
  }
}

@keyframes blink-floating {
  0%,
  50% {
    opacity: 1;
  }
  51%,
  100% {
    opacity: 0.3;
  }
}

#radioStatusTextFloating {
  font-weight: 500;
  flex: 1;
}

#talkButtonFloating {
  width: calc(100% - 16px);
  height: 40px;
  font-size: 14px;
  font-weight: 500;
  padding: 0 16px;
  margin: 0 8px 12px 8px;
  transition: all 0.3s ease;
  background-color: var(--colaby-blue) !important;
  color: white !important;
  border: none;
  border-radius: 8px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
}

#talkButtonFloating:hover {
  background-color: #1976d2 !important;
  transform: translateY(-1px);
}

#talkButtonFloating:disabled {
  opacity: 0.6;
  cursor: not-allowed;
  background-color: #9e9e9e !important;
  color: #e0e0e0 !important;
  transform: none;
}

#talkButtonFloating.transmitting {
  background-color: #f44336 !important;
  color: white !important;
  animation: pulse-transmit-floating 1s infinite;
}

@keyframes pulse-transmit-floating {
  0% {
    box-shadow: 0 0 0 0 rgba(244, 67, 54, 0.7);
  }
  70% {
    box-shadow: 0 0 0 8px rgba(244, 67, 54, 0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(244, 67, 54, 0);
  }
}

.countdown-floating {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 6px 10px;
  background-color: #f8f9fa;
  border-radius: 6px;
  border: 2px solid var(--colaby-blue);
  transition: all 0.3s ease;
  margin-bottom: 8px;
  position: absolute;
  top: -45px;
  left: 8px;
  right: 8px;
  z-index: 1001;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}

.countdown-floating.warning {
  background-color: #fff3cd;
  border-color: #ffeaa7;
  color: #856404;
}

.countdown-floating.danger {
  background-color: #f8d7da;
  border-color: #f5c6cb;
  color: #721c24;
  animation: pulse-danger 0.5s infinite;
}

@keyframes pulse-danger {
  0% {
    box-shadow: 0 0 0 0 rgba(220, 53, 69, 0.7);
  }
  70% {
    box-shadow: 0 0 0 6px rgba(220, 53, 69, 0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(220, 53, 69, 0);
  }
}

.countdown-text {
  font-size: 10px;
  color: #6c757d;
  font-weight: 500;
}

.countdown-time {
  font-size: 14px;
  font-weight: bold;
  color: #495057;
}

.countdown-time.warning {
  color: #856404;
}

.countdown-time.danger {
  color: #721c24;
}

/* Modal de audio */
.modal-dialog-centered {
  display: flex;
  align-items: center;
  min-height: calc(100% - 1rem);
}

.modal-audio-icon {
  font-size: 48px !important;
  color: var(--colaby-blue) !important;
  display: block;
  margin: 0 auto 15px auto;
}

#modalActivarAudio .modal-header {
  border-bottom: none;
  padding: 20px 20px 10px 20px;
}

#modalActivarAudio .modal-title {
  font-size: 18px;
  font-weight: 500;
}

#modalActivarAudio .modal-title i {
  margin-right: 8px;
  vertical-align: middle;
}

#modalActivarAudio .modal-body {
  padding: 20px;
  text-align: center;
}

#modalActivarAudio .btn {
  padding: 10px 20px;
  font-size: 14px;
  font-weight: 500;
}

#modalActivarAudio .btn i {
  margin-right: 8px;
  vertical-align: middle;
}

/* Estilos para layout de 3 columnas */
.row[style*="flex: 1"] {
  display: flex !important;
  flex-wrap: nowrap !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.row[style*="flex: 1"] > div[style*="display: flex"] {
  display: flex !important;
  flex-direction: column !important;
  flex-shrink: 0 !important;
  flex-grow: 0 !important;
}

@media (min-width: 768px) {
  .row[style*="flex: 1"] > .col-md-2,
  .row[style*="flex: 1"] > .col-md-5 {
    float: none !important;
    display: flex !important;
  }
}

.body[style*="overflow: hidden"] {
  overflow: hidden !important;
}

#Tarjeta {
  overflow-x: hidden !important;
  white-space: normal !important;
}

/* Estilos para recibo */
.recibo {
  font-family: "Roboto", sans-serif;
  margin: 0px;
  padding-left: 0mm;
  padding-right: 0mm;
  padding-bottom: 2mm;
  width: 68mm;
  border: 1px solid black;
  font-weight: bold;
  font-size: 12pt;
}

.fecha {
  text-align: right;
  padding-right: 1mm;
  padding-bottom: 1mm;
  font-size: 11pt;
  font-weight: bolder;
}

.nromovil {
  margin-top: 1mm;
  margin-bottom: 1mm;
  text-align: center;
  font-size: 14pt;
  font-weight: bold;
  font-style: italic;
}

.textorecibi {
  text-align: justify;
  padding: 1mm;
}

.periodo {
  margin-top: 1mm;
  margin-bottom: 1mm;
  text-align: center;
  font-style: italic;
}

.promocion {
  text-align: center;
  font-weight: bold;
  font-style: italic;
}

.deuda {
  margin-top: 1mm;
  margin-bottom: 1mm;
  text-align: center;
  font-size: 10pt;
  font-weight: bold;
  font-style: italic;
}

/* Estilos para botones de acción */
.btn-seleccionar-mapa {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
}

.btn-seleccionar-mapa .material-icons {
  font-size: 18px;
}

/* Lista vacía */
.lista-vacia {
  padding: 20px;
  text-align: center;
  color: #999;
  font-size: 12px;
  font-style: italic;
}

/* Asegurar que los inputs sean visibles */
.form-control:not([readonly]) {
  background-color: #fff;
}

/* Controles del mapa */
.maplibregl-ctrl-group {
  background-color: rgba(255, 255, 255, 0.95) !important;
  border-radius: 4px !important;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2) !important;
}

.maplibregl-ctrl button {
  background-color: transparent !important;
}

.maplibregl-ctrl button:hover {
  background-color: var(--colaby-light) !important;
}

/* ============================================
   16. RESPONSIVE
   ============================================ */
@media (max-width: 768px) {
  .metodo-pago-btn {
    font-size: 12px;
    padding: 8px 12px;
  }

  .metodo-pago-btn img {
    width: 20px;
    height: 20px;
  }

  #Telefonia_monto_total {
    font-size: 24px;
  }

  .monto-container {
    padding: 12px;
    min-height: 70px;
  }

  .radio-floating-panel {
    right: 10px;
    width: 180px;
  }
}

@media (max-width: 480px) {
  .radio-floating-panel {
    right: 5px;
    width: 160px;
  }
}

@media (min-height: 800px) {
  .listados-container > div:first-child {
    height: 40%;
  }
  .listados-container > div:last-child {
    height: 60%;
  }
}

@media (min-width: 1024px) and (max-width: 1920px) {
  .font-11 {
    font-size: 11px !important;
  }

  .font-12 {
    font-size: 12px !important;
  }

  .form-control-sm {
    padding: 2px 6px !important;
    font-size: 11px !important;
  }

  .btn-sm {
    padding: 4px 8px !important;
    font-size: 11px !important;
  }
}

/* ============================================
   17. UTILIDADES ADICIONALES
   ============================================ */
.font-10 {
  font-size: 10px;
}

.font-11 {
  font-size: 11px;
}

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

.font-13 {
  font-size: 13px;
}

.wrap {
  white-space: normal;
  word-wrap: break-word;
}

/* Asegurar visibilidad básica sin forzar colores */
.list-group-item strong {
  color: inherit;
}

.list-group-item small {
  color: #666;
}

/* Botón seguir */
#BotonSeguir {
  float: right;
  width: 100px;
  height: 25px;
  font-size: 10px;
  display: none;
}

/* Selector de localidad y provincia */
.select-localidad-provincia {
  font-size: 12px;
}

.select-localidad-provincia .form-control {
  padding: 4px 8px;
  font-size: 12px;
}

/* Lista de viajes específica */
#ListaViajes tbody th,
#ListaViajes tbody td {
  padding: 2px 12px;
  font-size: 12px;
  font-weight: bold;
}

#ListaViajes tr td:nth-child(7) {
  font-size: 12px;
  text-align: left;
}

/* Lista de móviles y paradas */
#ListasMovilesParadas2023 tbody th {
  font-size: 12px;
  text-align: center;
  font-weight: bold;
}

#ListasMovilesParadas2023 tbody td {
  font-size: 12px;
  text-align: center;
  vertical-align: top;
}

#ListasMovilesParadas2023 {
  width: auto;
}

/* Bootstrap select overflow */
#bs-select-1 {
  overflow: auto;
  max-height: 500px;
}

/* ============================================
   18. ESTILOS ADICIONALES Y UTILIDADES
   ============================================ */
/* Badges mejorados */
.badge {
  padding: 0.25rem 0.5rem;
  border-radius: 6px;
  font-size: 0.75rem;
  font-weight: 500;
  display: inline-block;
  line-height: 1.2;
}

.badge.font-12 {
  font-size: 0.75rem;
  padding: 0.2rem 0.4rem;
}

/* Colores de texto */
.col-white {
  color: var(--colaby-white) !important;
}

.col-black {
  color: var(--colaby-dark) !important;
}

/* Colores del menú usando variables de marca */
.col-blue {
  color: var(--colaby-primary) !important;
}

.col-orange {
  color: var(--colaby-secondary) !important;
}

.col-green {
  color: var(--colaby-success) !important;
}

.col-indigo {
  color: var(--colaby-info) !important;
}

.col-lime {
  color: var(--colaby-success) !important;
}

.col-deep-orange {
  color: var(--colaby-secondary) !important;
}

.col-amber {
  color: var(--colaby-warning) !important;
}

.col-brown {
  color: var(--colaby-dark) !important;
}

/* Colores de fondo */
.bg-grey {
  background-color: var(--colaby-gray-light) !important;
}

.bg-blue-grey {
  background-color: #455a64 !important;
  color: var(--colaby-white) !important;
}

.bg-teal {
  background-color: #009688 !important;
  color: var(--colaby-white) !important;
}

.bg-info {
  background-color: var(--colaby-blue) !important;
  color: var(--colaby-white) !important;
}

.bg-light-green {
  background-color: #e8f5e9 !important;
}

.bg-light-blue {
  background-color: #e3f2fd !important;
}

.bg-faded {
  background-color: var(--colaby-gray-light) !important;
}

/* Utilidades de espaciado */
.m-t-15 {
  margin-top: 1rem !important;
}

.m-t-30 {
  margin-top: 2rem !important;
}

.m-0 {
  margin: 0 !important;
}

.mb-0 {
  margin-bottom: 0 !important;
}

.mb-1 {
  margin-bottom: 0.5rem !important;
}

.p-0 {
  padding: 0 !important;
}

.p-1 {
  padding: 0.5rem !important;
}

.pt-0 {
  padding-top: 0 !important;
}

.pt-1 {
  padding-top: 0.5rem !important;
}

.pb-1 {
  padding-bottom: 0.5rem !important;
}

.px-1 {
  padding-left: 0.5rem !important;
  padding-right: 0.5rem !important;
}

/* Utilidades de texto */
.text-center {
  text-align: center !important;
}

.text-left {
  text-align: left !important;
}

.text-right {
  text-align: right !important;
}

.text-nowrap {
  white-space: nowrap !important;
}

.nowrap {
  white-space: nowrap !important;
}

.bold {
  font-weight: 700 !important;
}

/* Utilidades de display */
.hidden {
  display: none !important;
}

/* Utilidades de border radius */
.rounded {
  border-radius: 0.25rem !important;
}

.rounded-top {
  border-top-left-radius: 0.25rem !important;
  border-top-right-radius: 0.25rem !important;
}

.rounded-bottom {
  border-bottom-left-radius: 0.25rem !important;
  border-bottom-right-radius: 0.25rem !important;
}

/* Profile state */
.profile_state {
  margin: 0;
  padding: 0;
  list-style: none;
}

/* Estilo general (usado en varias vistas) */
.profile_state li {
  padding: 0.75rem;
  border-radius: 8px;
  margin-bottom: 0.5rem;
}

.profile_state li label {
  display: block;
  font-size: 1.5rem;
  font-weight: 700;
  margin-bottom: 0.25rem;
}

.profile_state li span {
  font-size: 0.85rem;
  opacity: 0.9;
}

/* Versión compacta solo para la vista de mapa */
.view-mapa .profile_state li {
  padding: 0.25rem 0.5rem;
  border-radius: 4px;
  margin-bottom: 0.1rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.view-mapa .profile_state li label {
  display: inline-block;
  font-size: 0.9rem;
  font-weight: 600;
  margin: 0;
}

.view-mapa .profile_state li span {
  display: inline-block;
  font-size: 0.75rem;
  opacity: 0.9;
}

/* Alineación */
.align-center {
  text-align: center !important;
}

.align-items-center {
  align-items: center !important;
}

.d-flex {
  display: flex !important;
}

.justify-content-between {
  justify-content: space-between !important;
}

/* Clearfix */
.clearfix::after {
  content: "";
  display: table;
  clear: both;
}

/* Overlay para sidebar móvil */
@media (max-width: 768px) {
  .sidebar {
    transform: translateX(-100%);
  }

  .sidebar.open {
    transform: translateX(0);
  }

  .content {
    margin-left: 0;
    margin-top: 0;
  }

  /* Overlay cuando sidebar está abierto */
  body.sidebar-open::before {
    content: "";
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 1019;
  }
}

/* Navbar responsive - Afecta tablets y móviles (< 992px) */
@media (max-width: 991px) {
  .navbar {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    height: auto;
    min-height: 45px;
    max-width: 100vw;
    /* Evitar wrap para no modificar la altura base del navbar y prevenir doble scroll */
    flex-wrap: nowrap;
    padding: 0;
    z-index: 1030;
    overflow: visible;
  }

  .navbar .container-fluid {
    /* Mantener el contenido del navbar en una sola línea; el menú extra baja en .navbar-collapse */
    flex-wrap: nowrap;
    padding: 0;
    max-width: 100%;
  }

  .navbar-header {
    display: flex;
    width: 100%;
    justify-content: space-between;
    align-items: center;
    margin-right: 0;
    padding: 0 15px;
    height: 45px;
    background: var(--header-gradient);
  }

  .navbar-collapse {
    display: none;
    position: absolute;
    top: 45px;
    left: 0;
    right: 0;
    width: 100%;
    flex-direction: column;
    align-items: flex-start;
    padding: 10px 15px;
    background: var(--header-gradient);
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    max-height: calc(100vh - 45px);
    overflow-y: auto;
    z-index: 1029;
  }

  .navbar-collapse.show {
    display: flex;
  }

  .navbar-nav {
    flex-direction: column;
    width: 100%;
    gap: 0;
    /* El menú colapsado ya maneja el desborde vertical con scroll interno */
    flex-wrap: nowrap;
  }

  .navbar-nav.ms-auto {
    margin-left: 0;
    border-top: 1px solid rgba(255, 255, 255, 0.2);
    padding-top: 10px;
    margin-top: 10px;
  }

  .nav-item {
    width: 100%;
  }

  .nav-link {
    padding: 12px 15px !important;
    border-radius: 4px;
    height: auto;
    font-size: 0.9rem !important;
  }

  .dropdown-menu {
    position: static !important;
    width: 100%;
    box-shadow: none;
    background: rgba(0, 50, 60, 0.95) !important; /* Fondo sólido oscuro */
    border: none;
    border-radius: 0;
    padding-left: 15px;
    margin-top: 0;
    z-index: auto;
    border-left: 3px solid var(--colaby-secondary);
  }

  .dropdown-item {
    color: #fff !important;
    padding: 10px 15px;
    font-size: 14px;
  }

  .dropdown-item:hover,
  .dropdown-item:focus {
    background: rgba(255, 255, 255, 0.15) !important;
    color: #fff !important;
  }

  .dropdown-item i {
    color: var(--colaby-secondary);
    margin-right: 8px;
    width: 20px;
  }

  .content {
    margin-top: 45px;
  }

  /* Botón hamburguesa - visible solo en móvil */
  .navbar-toggler {
    display: flex !important;
    background: transparent;
    border: none;
    color: white;
    font-size: 24px;
    cursor: pointer;
    padding: 5px 10px;
    align-items: center;
    justify-content: center;
  }
}

/* Desktop - asegurar que el menú siempre se muestre (>= 992px) */
@media (min-width: 992px) {
  .navbar-collapse {
    display: flex !important;
  }

  .navbar-toggler {
    display: none !important;
  }
}

/* Pantallas medianas - estilos adicionales para dropdown headers */
@media (min-width: 992px) and (max-width: 1200px) {
  .dropdown-header {
    font-size: 0.7rem;
    padding: 0.4rem 1rem;
  }
}

/* ============================================
   18. ESTILOS PERSONALIZADOS POR VISTA
   ============================================ */

/* Estilos para vista de Paradas (Apps_appparadas) */
.view-paradas {
  background-color: #ebeef2 !important;
}

/* Tabla de Paradas - Diseño compacto y estético */
.view-paradas #ListasMovilesParadas2023 {
  width: 100%;
  table-layout: auto;
  margin-bottom: 0;
  border-collapse: separate;
  border-spacing: 0;
}

.view-paradas #ListasMovilesParadas2023 .parada-header {
  font-size: 10px;
  font-weight: 600;
  text-align: center !important;
  background-color: #b8e6e8 !important; /* Color sólido verdoso suave - no cansar vista 24/7 */
  color: #1a1a1a !important; /* Texto oscuro para buen contraste */
  padding: 4px 6px !important;
  border: 1px solid #8bc5c8 !important;
  white-space: nowrap;
  min-width: 45px;
  position: sticky;
  top: 0;
  z-index: 10;
}

.view-paradas #ListasMovilesParadas2023 .parada-cell {
  font-size: 11px;
  text-align: center;
  vertical-align: top;
  background-color: #ffffff !important;
  color: #333 !important;
  padding: 4px 6px !important;
  border: 1px solid #e0e0e0 !important;
  min-width: 50px;
  position: relative;
}

/* NO aplicar hover a la celda completa - solo a los badges individuales */
.view-paradas #ListasMovilesParadas2023 .parada-cell:hover {
  background-color: #ffffff !important; /* Mantener blanco, no cambiar */
}

/* Badges individuales - cada uno con su propio hover */
.view-paradas #ListasMovilesParadas2023 .badge,
.view-paradas #ListasMovilesParadas2023 .parada-badge {
  display: inline-block;
  font-size: 11px;
  font-weight: 600;
  padding: 3px 6px;
  margin: 1px 2px;
  border-radius: 4px;
  border: 1px solid rgba(0, 0, 0, 0.15);
  cursor: pointer;
  transition: all 0.2s ease;
  min-width: 30px;
  text-align: center;
  line-height: 1.3;
  position: relative;
  z-index: 1;
}

/* Hover sobre badges individuales - NO sobre la fila */
.view-paradas #ListasMovilesParadas2023 .badge:hover,
.view-paradas #ListasMovilesParadas2023 .parada-badge:hover {
  transform: translateY(-2px) scale(1.05);
  box-shadow: 0 3px 8px rgba(0, 0, 0, 0.2);
  z-index: 10;
  position: relative;
}

/* Badge gris (sin conductor) */
.view-paradas
  #ListasMovilesParadas2023
  .badge[style*="background-color:#C0C0C0"] {
  background-color: #c0c0c0 !important;
  color: #ffffff !important;
}

.view-paradas
  #ListasMovilesParadas2023
  .badge[style*="background-color:#C0C0C0"]:hover {
  background-color: #a0a0a0 !important;
  box-shadow: 0 2px 6px rgba(192, 192, 192, 0.4);
}

/* Badge rojo (QTA) */
.view-paradas
  #ListasMovilesParadas2023
  .badge[style*="background-color:#F44336"] {
  background-color: #f44336 !important;
  color: #ffffff !important;
}

.view-paradas
  #ListasMovilesParadas2023
  .badge[style*="background-color:#F44336"]:hover {
  background-color: #d32f2f !important;
  box-shadow: 0 2px 6px rgba(244, 67, 54, 0.4);
}

/* Badge amarillo (Manual/Operador) */
.view-paradas
  #ListasMovilesParadas2023
  .badge[style*="background-color:#FDFD72"] {
  background-color: #fdfd72 !important;
  color: #000000 !important;
}

.view-paradas
  #ListasMovilesParadas2023
  .badge[style*="background-color:#FDFD72"]:hover {
  background-color: #f9f94a !important;
  box-shadow: 0 2px 6px rgba(253, 253, 114, 0.4);
}

/* Badge blanco (normal) */
.view-paradas
  #ListasMovilesParadas2023
  .badge[style*="background-color:white"] {
  background-color: #ffffff !important;
  color: #000000 !important;
  border: 1px solid #cccccc !important;
}

.view-paradas
  #ListasMovilesParadas2023
  .badge[style*="background-color:white"]:hover {
  background-color: #f0f0f0 !important;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
}

/* Espaciado compacto en la tabla */
.view-paradas #ListasMovilesParadas2023 tbody tr {
  height: auto;
}

.view-paradas #ListasMovilesParadas2023 tbody tr td {
  line-height: 1.3;
  padding: 3px 4px !important;
}

/* DESACTIVAR completamente el hover de la fila completa - solo hover en badges individuales */
/* Máxima especificidad para sobrescribir todos los estilos globales */
.view-paradas #ListasMovilesParadas2023.table-hover tbody tr:hover,
.view-paradas #ListasMovilesParadas2023 tbody tr:hover {
  background-color: transparent !important;
}

.view-paradas #ListasMovilesParadas2023.table-hover tbody tr:hover td,
.view-paradas #ListasMovilesParadas2023 tbody tr:hover td {
  background-color: #ffffff !important; /* Mantener fondo blanco, no cambiar */
}

.view-paradas
  #ListasMovilesParadas2023.table-hover
  tbody
  tr:hover
  td:first-child,
.view-paradas #ListasMovilesParadas2023 tbody tr:hover td:first-child {
  background-color: #ffffff !important; /* NO celeste - mantener blanco */
}

.view-paradas #ListasMovilesParadas2023.table-hover tbody tr:hover .parada-cell,
.view-paradas #ListasMovilesParadas2023 tbody tr:hover .parada-cell {
  background-color: #ffffff !important;
}

.view-paradas #ListaViajes thead th {
  text-align: center !important;
  background-color: #b8e6e8 !important; /* Color sólido verdoso suave - no cansar vista 24/7 */
  color: #1a1a1a !important; /* Texto oscuro para buen contraste */
  font-weight: bold;
  border: 1px solid #8bc5c8 !important;
}

/* IMPORTANTE: No forzar colores en tbody - permitir colores dinámicos según estado */
.view-paradas #ListaViajes tbody th,
.view-paradas #ListaViajes tbody td {
  padding: 2px 12px;
  font-size: 12px;
  font-weight: bold;
  /* NO forzar color ni background con !important - se aplican dinámicamente desde JavaScript según estado */
  /* Los colores se aplican vía inline styles desde rowCallback en Apps_appparadas.js */
}

/* Los estilos inline aplicados por JavaScript en rowCallback tienen prioridad natural sobre CSS */

.view-paradas #ListaViajes tr td:nth-child(7) {
  font-size: 12px;
  text-align: left;
}

.view-paradas table.dataTable thead th,
.view-paradas table.dataTable thead td {
  padding: 2px 18px;
  white-space: nowrap;
  text-align: center !important;
  background-color: #b8e6e8 !important; /* Color sólido verdoso suave - no cansar vista 24/7 */
  color: #1a1a1a !important; /* Texto oscuro para buen contraste */
  font-weight: bold;
  border: 1px solid #8bc5c8 !important;
}

.view-paradas
  table.dataTable.dtr-inline.collapsed
  > tbody
  > tr[role="row"]
  > td:first-child:before,
.view-paradas
  table.dataTable.dtr-inline.collapsed
  > tbody
  > tr[role="row"]
  > th:first-child:before {
  top: 2px;
  left: 2px;
  height: 10px;
  width: 10px;
  line-height: 10px;
}

.view-paradas .dts_label {
  display: none !important;
}

.view-paradas .input-group {
  margin-bottom: 5px;
}

/* Los estilos del menú contextual ya están definidos globalmente */

/* Card de paradas - diseño compacto */
.view-paradas .card {
  background-color: #ffffff !important;
  border: 1px solid #e0e0e0;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}

.view-paradas .card .body {
  background-color: #ffffff !important;
  color: #333 !important;
  padding: 4px 6px !important;
}

/* Diseño compacto para la tabla de paradas */
.view-paradas #ListasMovilesParadas2023 .parada-header {
  padding: 4px 6px !important;
  font-size: 10px !important;
}

.view-paradas #ListasMovilesParadas2023 .parada-cell {
  padding: 2px 4px !important;
}

/* Asegurar que los textos en las celdas sean legibles */
.view-paradas td,
.view-paradas th {
  color: #333 !important;
}

/* Estilos para vista de Mapa (Apps_appmapa) */
.view-mapa .table td,
.view-mapa .table th {
  padding: 2px !important;
  padding-left: 5px !important;
  font-weight: bold;
  font-size: 9px !important;
}

.view-mapa table.dataTable tbody th,
.view-mapa table.dataTable tbody td {
  padding: 2px 10px;
}

.view-mapa table.dataTable thead th,
.view-mapa table.dataTable thead td {
  padding: 2px 18px;
}

.view-mapa .dts_label {
  display: none !important;
}

.view-mapa .input-group {
  margin-bottom: 5px;
}

/* Los estilos del menú contextual ya están definidos globalmente arriba */

.view-mapa #BotonSeguir {
  float: right;
  width: 100px;
  height: 25px;
  font-size: 10px;
  display: none;
}

.view-mapa .lista-moviles-container .dataTables_wrapper {
  position: static;
  height: auto;
  width: 100%;
  padding: 0;
  overflow-x: hidden;
  overflow-y: visible;
  box-sizing: border-box;
}

.view-mapa .leaflet-tooltip.park-tooltip {
  background-color: transparent;
  border: 0px;
  box-shadow: none;
  padding-left: 15px;
  padding-right: 15px;
  font-size: 16px;
  line-height: 16px;
  font-weight: 900;
  color: blue;
  font-family: Roboto, "Open Sans", sans-serif;
}

.view-mapa .small-text {
  font-size: 12px;
  color: blue;
}

.view-mapa .lista-moviles-container {
  height: calc(100vh - 420px) !important;
  overflow: hidden;
}

.view-mapa .lista-moviles-scroll {
  flex: 1;
  min-height: 0;
  overflow-y: auto;
  overflow-x: hidden;
  padding: 0;
  scrollbar-gutter: stable;
}

.view-mapa #ListaMoviles {
  width: 100%;
  table-layout: fixed;
}

.view-mapa #ListaMoviles th,
.view-mapa #ListaMoviles td {
  white-space: normal;
  overflow: hidden;
  text-overflow: ellipsis;
}

.view-mapa #ListaMoviles th:first-child,
.view-mapa #ListaMoviles td:first-child {
  width: 60px;
  text-align: center;
}

.view-mapa #ListaMoviles th:last-child,
.view-mapa #ListaMoviles td:last-child {
  width: auto;
}

/* Leyenda flotante compacta de estados sobre mapa */
.view-mapa .mapa-contenedor {
  position: relative;
}

.view-mapa .mapa-legend-floating {
  position: absolute;
  bottom: 8px;
  left: 8px;
  right: 8px;
  z-index: 500;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  height: 24px;
  max-height: 24px;
  padding: 2px 6px;
  border-radius: 6px;
  background: rgba(255, 255, 255, 0.78);
  border: 1px solid rgba(0, 0, 0, 0.08);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12);
  overflow-x: auto;
  overflow-y: hidden;
  white-space: nowrap;
}

.view-mapa .mapa-legend-group {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  flex-shrink: 0;
}

.view-mapa .mapa-legend-floating .badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 18px;
  line-height: 1;
  font-size: 10px;
  font-weight: 600;
  padding: 0 6px;
  margin: 0;
  border-radius: 10px;
}

.view-mapa .mapa-legend-floating #BotonSeguir {
  display: none;
  align-items: center;
  gap: 4px;
  width: auto;
  height: 20px;
  float: none;
}

.view-mapa .mapa-legend-floating #TextoSeguirMovil {
  height: 18px;
  line-height: 18px;
  padding: 0 6px;
  font-size: 9px;
  margin: 0;
  border-radius: 9px;
}

.view-mapa .mapa-legend-floating #BotonSeguir .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
  width: auto;
  height: 20px;
  padding: 0 8px !important;
  font-size: 9px !important;
  line-height: 20px;
}

/* Oculta controles/branding Leaflet para vista limpia */
.view-mapa .leaflet-control-container,
.view-mapa .leaflet-control-attribution {
  display: none !important;
}

/* Quitar scroll horizontal/vertical de tabla empresas */
.view-empresas .colaby-grid-wrapper {
  overflow: visible !important;
}

.view-empresas .table-responsive {
  overflow: visible !important;
}

.view-empresas .colaby-grid-wrapper .table-responsive {
  overflow: visible !important;
}

/* Tarifas2: evitar scroll interno del contenedor de grilla */
.view-tarifas2 .dataTables_wrapper {
  overflow: visible !important;
}

.view-tarifas2 .dataTables_scroll,
.view-tarifas2 .dataTables_scrollBody {
  overflow: visible !important;
}

/* Estilos para vista de Telefonía (Colaby_telefonia) */
.view-telefonia table.dataTable tbody th {
  padding: 2px 12px;
  font-size: 12px;
  font-weight: bold;
}

.view-telefonia table.dataTable tbody td {
  padding: 2px 12px;
  font-size: 11px;
  font-weight: normal;
}

.view-telefonia table.dataTable thead th,
.view-telefonia table.dataTable thead td {
  padding: 2px 18px;
  white-space: nowrap;
}

.view-telefonia
  table.dataTable.dtr-inline.collapsed
  > tbody
  > tr[role="row"]
  > td:first-child:before,
.view-telefonia
  table.dataTable.dtr-inline.collapsed
  > tbody
  > tr[role="row"]
  > th:first-child:before {
  top: 2px;
  left: 2px;
  height: 10px;
  width: 10px;
  line-height: 10px;
}

/* Los estilos del menú contextual ya están definidos globalmente */

.view-telefonia h2 .btn {
  height: 30px;
  font-size: 12px;
  line-height: 15px;
}

.view-telefonia .bootstrap-select .bs-searchbox {
  position: relative !important;
  margin-left: 30px;
  padding-left: 5px;
}

.view-telefonia .bootstrap-select.btn-group.show-tick .dropdown-menu.inner {
  margin-left: 30px;
  padding-left: 5px;
}

.view-telefonia .select2 {
  width: 100% !important;
  margin-top: 3.5px;
  margin-right: 5px;
  margin-left: 5px;
}

.view-telefonia .modal-body {
  padding: 0px;
}

.view-telefonia .btn.btn-xs {
  padding: 1px 1px;
  font-size: 11px;
}

.view-telefonia .btn:not(.btn-link):not(.btn-circle) {
  font-size: 11px;
}

.view-telefonia .card .body {
  font-size: 12px;
}

/* Layout simplificado: sin card interna; scroll vertical en la section */
.view-telefonia-layout {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  overflow-y: auto !important;
  overflow-x: hidden;
}

.view-telefonia-container {
  min-height: 0;
  flex: 1 1 auto;
}

.view-telefonia-row {
  flex-wrap: nowrap;
}

.view-telefonia-col1,
.view-telefonia-col2,
.view-telefonia-col3 {
  min-height: 0;
  overflow-x: hidden;
  overflow-y: visible;
}

/* Tabla Domicilios: altura fija ~8 filas, sin scroll horizontal */
.view-telefonia .ListaDomicilios-container {
  min-height: 200px;
  max-height: 280px;
}

.view-telefonia .selected-row {
  background-color: #bbdefb !important;
}

/* Form controls en telefonía */
.view-telefonia .form-control {
  font-size: 12px;
  padding: 4px 8px;
  height: auto;
  min-height: 24px;
  color: #333333;
  background-color: #ffffff;
}

.view-telefonia select.form-control {
  padding-right: 24px;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.view-telefonia .form-control:focus {
  border-color: var(--colaby-primary);
  box-shadow: 0 0 0 2px rgba(26, 138, 143, 0.15);
}

/* Spinner animation */
.view-telefonia .spinner-animation {
  animation: spin 1s linear infinite;
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

/* Mejoras de legibilidad para telefonía */
.view-telefonia label {
  color: #ffffff;
  font-size: 13px;
}

.view-telefonia .bg-white label,
.view-telefonia .text-dark label {
  color: #1a1a1a;
}

.view-telefonia .font-12 {
  font-size: 13px !important;
}

.view-telefonia select.form-control.font-12 {
  font-size: 13px !important;
  color: #1a1a1a !important;
  padding: 6px 10px;
  min-height: 34px;
}

.view-telefonia input.form-control {
  color: #1a1a1a !important;
  font-size: 13px;
}

.view-telefonia b {
  color: #1a1a1a;
  font-size: 13px;
}

.view-telefonia .bg-blue-grey {
  background-color: #546e7a !important;
}

.view-telefonia .bg-dark {
  background-color: #37474f !important;
}

.view-telefonia .metodo-pago-btn-selected {
  min-height: 36px;
}

/* Selector cerrado: sin texto blanco (Bootstrap outline hover/focus) */
.view-telefonia #btn_metodo_pago_seleccionado.metodo-pago-btn-selected {
  color: #007bff !important;
  background-color: #fff !important;
  border-color: #007bff !important;
}

.view-telefonia #btn_metodo_pago_seleccionado.metodo-pago-btn-selected:hover,
.view-telefonia #btn_metodo_pago_seleccionado.metodo-pago-btn-selected:focus,
.view-telefonia #btn_metodo_pago_seleccionado.metodo-pago-btn-selected:active {
  color: #007bff !important;
  background-color: #e3f2fd !important;
  border-color: #007bff !important;
  box-shadow: none;
}

.view-telefonia #btn_metodo_pago_seleccionado #nombre_metodo_pago_seleccionado,
.view-telefonia #btn_metodo_pago_seleccionado .telefonia-icon-16 {
  color: #007bff !important;
}

.view-telefonia #Telefonia_monto_ajuste,
.view-telefonia #Telefonia_monto_mensaje {
  max-width: 70%;
  text-align: right;
  line-height: 1.2;
}

.view-telefonia .border-info {
  border-color: #1a8a8f !important;
}

.view-telefonia .border-orange {
  border-color: #d45a1a !important;
}

/* Estilos compactos para tablas en vistas específicas */
.view-compact-table .table td,
.view-compact-table .table th {
  padding: 2px;
  padding-left: 5px;
  font-weight:normal;
  font-size: 12px;
}

.view-compact-table table.dataTable tbody th,
.view-compact-table table.dataTable tbody td {
  padding: 2px 10px;
  font-size: 12px;
}

.view-compact-table table.dataTable thead th,
.view-compact-table table.dataTable thead td {
  padding: 2px 18px;
  font-size: 12px;
}

/* Estilos para reducir espacios entre elementos en vistas de mapa */
.view-mapa .input-group,
.view-telefonia .input-group {
  margin-bottom: 5px;
}

.view-mapa .card,
.view-telefonia .card {
  margin-bottom: 0px;
}

/* ============================================
   19. ESTILOS DE FOOTER
   ============================================ */
.footer {
  background: var(--footer-gradient);
  color: var(--colaby-white);
  padding: 0.25rem 0;
  margin-top: auto;
  box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1);
  position: relative;
  z-index: 100;
  max-height: 30px;
  height: 30px;
}

.footer-content {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: nowrap;
  gap: 1rem;
  padding: 0 1rem;
  height: 30px;
  max-height: 30px;
  overflow: hidden;
  min-height: 30px;
}

.footer-left {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex-wrap: nowrap;
  flex: 0 0 auto;
  min-width: 0;
}

.footer-brand {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-weight: 600;
  font-size: 0.75rem;
  color: var(--colaby-white);
  white-space: nowrap;
  height: 100%;
  justify-content: center;
}

.footer-brand img {
  width: 20px;
  height: 20px;
  border-radius: 4px;
  object-fit: contain;
  flex-shrink: 0;
  background: rgba(255, 255, 255, 0.1);
  padding: 2px;
}

.footer-text {
  font-size: 0.7rem;
  color: rgba(255, 255, 255, 0.9);
  margin: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.footer-center {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 1;
  text-align: center;
  min-width: 0;
  height: 100%;
}

.footer-version {
  display: flex;
  align-items: center;
  height: 100%;
  font-size: 0.75rem;
  color: rgba(255, 255, 255, 0.9);
  margin: 0;
  font-weight: 500;
  white-space: nowrap;
}

.footer-right {
  display: flex;
  align-items: center;
  gap: 1rem;
  flex-wrap: nowrap;
  flex: 0 0 auto;
  justify-content: flex-end;
  min-width: 0;
}

/* Estilos movidos arriba para evitar duplicación */

.footer-links {
  display: flex;
  gap: 1rem;
  list-style: none;
  margin: 0;
  padding: 0;
  flex-wrap: nowrap;
}

.footer-links li {
  margin: 0;
}

.footer-links a {
  color: rgba(255, 255, 255, 0.9);
  text-decoration: none;
  font-size: 0.75rem;
  transition: all 0.2s ease;
  display: flex;
  align-items: center;
  gap: 0.25rem;
  white-space: nowrap;
}

.footer-links a:hover {
  color: var(--colaby-white);
  text-decoration: underline;
}

.footer-links a i {
  font-size: 0.9rem;
}

.footer-copyright {
  display: none; /* Oculto porque ahora está en footer-center */
}

/* Footer para dashboard */
.dashboard-footer {
  background: var(--footer-gradient);
  color: var(--colaby-white);
  padding: 0;
  margin-top: 2rem;
  box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1);
  max-height: 30px;
  height: 30px;
  overflow: hidden;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1000;
}

.dashboard-footer .footer-content {
  height: 100%;
  padding: 0 1rem;
  display: flex;
  align-items: center;
}

/* Footer para login */
.authentication + .footer,
.authentication ~ .footer {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 100;
  margin-top: 0;
  padding: 0;
  max-height: 30px;
  height: 30px;
  overflow: hidden;
}

/* .authentication {
    padding-bottom: 40px; /* Espacio para el footer } */

/* Ajustar footer en login para que sea más compacto */
.authentication ~ .footer .footer-content {
  padding: 0 1rem;
  height: 100%;
  display: flex;
  align-items: center;
}

.authentication ~ .footer .footer-copyright {
  display: none; /* Ocultar copyright en login ya que está en el contenido */
}

.dashboard-footer .footer-content {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 1.5rem;
}

/* Footer para mapa (más compacto) */
.view-mapa .footer,
.view-telefonia .footer {
  padding: 0.75rem 0;
  margin-top: 1rem;
}

.view-mapa .footer-content,
.view-telefonia .footer-content {
  padding: 0 0.75rem;
}

.view-mapa .footer-text,
.view-telefonia .footer-text {
  font-size: 0.75rem;
}

.view-mapa .footer-links a,
.view-telefonia .footer-links a {
  font-size: 0.75rem;
}

/* Responsive para footer */
@media (max-width: 768px) {
  .footer-content {
    flex-direction: column;
    text-align: center;
    gap: 0.75rem;
  }

  .footer-left,
  .footer-right {
    justify-content: center;
    width: 100%;
  }

  .footer-links {
    justify-content: center;
    gap: 1rem;
  }

  .footer-brand {
    justify-content: center;
  }

  .dashboard-footer .footer-content {
    padding: 0 1rem;
  }
}

@media (max-width: 480px) {
  .footer {
    padding: 1rem 0;
  }

  .footer-text {
    font-size: 0.75rem;
  }

  .footer-links {
    flex-direction: column;
    gap: 0.5rem;
  }

  .footer-links a {
    font-size: 0.8rem;
  }
}

/* ============================================
   20. ESTILOS DE PODIO MEJORADOS
   ============================================ */
.podio-label {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-wrap: wrap;
}

.podio-viajes {
  font-weight: 700;
  color: #28b8be;
}

.podio-separator {
  color: #999;
}

.podio-movil {
  font-weight: 600;
  color: #1e2a38;
}

.podio-nombre {
  color: #666;
  font-style: italic;
}

/* Mejorar diseño de gráficos del podio */
#top10_dia,
#top10_semana,
#top10_mes {
  background: var(--colaby-white);
  border-radius: 8px;
  padding: 1rem;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
  min-height: 400px;
}

.panel-primary {
  border: none;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: var(--colaby-shadow);
  margin-bottom: 1.5rem;
  background: var(--colaby-white);
}

.panel-heading {
  border-radius: 0;
  padding: 0;
}

.panel-body {
  background: var(--colaby-white);
  padding: 1.5rem;
}

.box {
  background: transparent;
}

.box-content {
  background: transparent;
}

/* ============================================
   22. ESTILOS PARA PÁGINA 404
   ============================================ */
.error-404 {
  font-family: Arial, sans-serif;
  text-align: center;
  background-color: var(--colaby-gray-light);
  margin: 0;
  padding: 0;
  height: 100vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.error-404 .logo {
  max-width: 100px;
  margin-bottom: 20px;
}

.error-404 h1 {
  color: var(--colaby-dark);
}

.error-404 p {
  color: var(--colaby-gray);
  margin-bottom: 30px;
}

/* ============================================
   23. ESTILOS PARA MAPA MÓVIL (mapamovilView)
   ============================================ */
.status-bar {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 48px;
  background: rgba(0, 0, 0, 0.7);
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 14px;
  z-index: 1000;
  letter-spacing: 0.5px;
}

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

.status-badge {
  font-size: 11px;
  font-weight: 600;
  padding: 4px 12px;
  border-radius: 999px;
  background: #555;
  color: var(--colaby-white);
}

.status-badge.estado-5 {
  background: var(--colaby-warning);
  color: var(--colaby-dark);
}

.status-badge.estado-6 {
  background: var(--colaby-success);
  color: var(--colaby-white);
}

.toast {
  position: absolute;
  bottom: 18px;
  left: 50%;
  transform: translateX(-50%);
  background: rgba(0, 0, 0, 0.75);
  padding: 8px 16px;
  border-radius: 999px;
  font-size: 12px;
  color: var(--colaby-white);
  opacity: 0;
  transition: opacity 0.2s ease;
  z-index: 950;
}

.toast.visible {
  opacity: 1;
}

/* ============================================
   24. ESTILOS PARA MAPA CONDUCTOR
   ============================================ */
.leaflet-routing-container {
  display: none;
}

.bottom-bar {
  position: fixed;
  height: 25px;
  bottom: 0;
  width: 100%;
  background-color: rgba(255, 255, 255, 0.8);
  padding: 10px;
  text-align: center;
  z-index: 1000;
}

.floating-panel {
  position: fixed;
  top: 50%;
  right: 10px;
  transform: translateY(-50%);
  background-color: rgba(255, 255, 255, 0.9);
  padding: 10px;
  border-radius: 10px;
  box-shadow: var(--colaby-shadow);
  z-index: 999;
}

/* ============================================
   25. ESTILOS PARA PODIO (clases parada específicas)
   ============================================ */
.parada1 {
  background-color: #00ceea;
  color: var(--colaby-dark);
}

.parada3 {
  background-color: #05eac0;
  color: var(--colaby-dark);
}

.parada4 {
  background-color: #0069f4;
  color: var(--colaby-white);
}

.parada12 {
  background-color: #002356;
  color: var(--colaby-white);
}

.parada24 {
  background-color: #514856;
  color: var(--colaby-white);
}

.parada5 {
  background-color: #ff7f1e;
  color: var(--colaby-white);
}

.parada6 {
  background-color: #0f6b16;
  color: var(--colaby-white);
}

.parada10 {
  background-color: #4b6b2a;
  color: var(--colaby-white);
}

.parada16 {
  background-color: #506b52;
  color: var(--colaby-white);
}

.parada7 {
  background-color: #ff00ea;
  color: var(--colaby-white);
}

.parada19 {
  background-color: dimgrey;
  color: var(--colaby-white);
}

.parada22 {
  background-color: #ff5f42;
  color: var(--colaby-white);
}

.parada20 {
  background-color: #515151;
  color: var(--colaby-white);
}

/* Ajustes específicos para podio.php */
.podio-page h3 {
  margin-top: 1px;
  margin-bottom: 1px;
}

/* ============================================
   21. ESTILOS DE FOOTER MAPA CON TOTALES
   ============================================ */
.mapa-footer {
  background: var(--footer-gradient);
  color: var(--colaby-white);
  padding: 0.25rem 1rem;
  margin-top: 0;
  box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1);
  max-height: 25px;
  height: 25px;
  overflow: hidden;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1000;
}

.mapa-footer-content {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  gap: 1rem;
  flex-wrap: nowrap;
  position: relative;
}

.mapa-totales-container {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.5rem;
  flex-wrap: nowrap;
  overflow-x: auto;
  overflow-y: hidden;
  flex: 1;
  min-width: 0;
}

.mapa-totales-container::-webkit-scrollbar {
  height: 4px;
}

.mapa-totales-container::-webkit-scrollbar-track {
  background: rgba(255, 255, 255, 0.1);
}

.mapa-totales-container::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.3);
  border-radius: 2px;
}

.mapa-totales-container::-webkit-scrollbar-thumb:hover {
  background: rgba(255, 255, 255, 0.5);
}

.mapa-total-item {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0.4rem;
  min-width: auto;
  flex-shrink: 0;
  padding: 0.25rem 0.6rem;
  background: rgba(255, 255, 255, 0.1);
  border-radius: 4px;
  border-left: 2px solid var(--colaby-secondary);
  transition: all 0.2s ease;
  cursor: help;
}

.mapa-total-item:hover {
  background: rgba(255, 255, 255, 0.15);
  transform: translateY(-1px);
}

.mapa-total-item i {
  font-size: 16px;
  color: rgba(255, 255, 255, 0.9);
  line-height: 1;
}

.mapa-total-value {
  font-size: 0.9rem;
  color: var(--colaby-white);
  font-weight: 700;
  text-align: center;
  white-space: nowrap;
  line-height: 1.2;
}

.mapa-footer-right {
  display: flex;
  align-items: center;
  gap: 1rem;
  flex-shrink: 0;
  position: absolute;
  right: 1rem;
  border-left: 1px solid rgba(255, 255, 255, 0.2);
  padding-left: 1rem;
}

.mapa-footer-right .footer-brand {
  display: flex;
  align-items: center;
  gap: 0.3rem;
  font-weight: 600;
  font-size: 0.7rem;
  color: var(--colaby-white);
}

.mapa-footer-right .footer-brand img {
  width: 16px;
  height: 16px;
  border-radius: 50%;
  object-fit: cover;
}

.mapa-footer-right .footer-version {
  font-size: 0.65rem;
  color: rgba(255, 255, 255, 0.9);
  margin: 0;
  font-weight: 500;
  white-space: nowrap;
}

/* Ajustar contenido del mapa para el footer */
.view-mapa .content {
  padding-bottom: 25px;
}

/* Estilos para el panel de radio en la barra superior */
.radio-bar-content {
  gap: 6px;
  align-items: center;
}

.radio-countdown-bar {
  font-size: 10px;
  padding: 2px 6px;
  background-color: #fff3e0;
  border: 1px solid #ff9800;
  border-radius: 4px;
  color: #e65100;
  font-weight: 500;
}

.radio-countdown-bar.danger {
  background-color: #ffebee;
  border-color: #f44336;
  color: #c62828;
}

.radio-countdown-bar.warning {
  background-color: #fff8e1;
  border-color: #ffc107;
  color: #f57c00;
}

.radio-status-bar {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 2px 8px;
  background-color: #f5f5f5;
  border: 1px solid #e0e0e0;
  border-radius: 4px;
  font-size: 10px;
  color: #666;
  transition: all 0.3s ease;
}

.radio-status-bar.speaking {
  background-color: #fff3e0;
  border-color: #ff9800;
  color: #e65100;
  animation: pulse-status-bar 1s infinite;
}

@keyframes pulse-status-bar {
  0% {
    box-shadow: 0 0 0 0 rgba(255, 152, 0, 0.4);
  }
  70% {
    box-shadow: 0 0 0 4px rgba(255, 152, 0, 0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(255, 152, 0, 0);
  }
}

.radio-status-bar i {
  font-size: 14px;
  flex-shrink: 0;
}

.radio-status-bar.speaking i {
  color: #ff9800;
  animation: blink-bar 0.5s infinite;
}

@keyframes blink-bar {
  0%,
  50% {
    opacity: 1;
  }
  51%,
  100% {
    opacity: 0.3;
  }
}

.radio-conductor-bar {
  font-size: 14px;
  padding: 4px 12px;
  background-color: #e3f2fd;
  border: 1px solid #bbdefb;
  border-radius: 4px;
  font-weight: 600;
  color: #1976d2;
  transition: all 0.3s ease;
  min-width: 60px;
  text-align: center;
  white-space: nowrap;
}

.radio-conductor-bar.speaking {
  background-color: #fff3e0;
  border-color: #ffcc02;
  color: #f57c00;
  animation: pulse-conductor-bar 1s infinite;
}

@keyframes pulse-conductor-bar {
  0% {
    box-shadow: 0 0 0 0 rgba(255, 193, 7, 0.4);
  }
  70% {
    box-shadow: 0 0 0 3px rgba(255, 193, 7, 0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(255, 193, 7, 0);
  }
}

.radio-talk-button {
  font-size: 14px;
  min-width: 100px;
  padding: 8px 16px !important;
  height: auto;
  min-height: 36px;
  line-height: 1.2;
  background-color: var(--colaby-blue) !important;
  color: white !important;
  border: none;
  border-radius: 6px;
  font-weight: 600;
  transition: all 0.3s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  box-shadow: 0 2px 8px rgba(33, 150, 243, 0.3);
  position: relative;
  z-index: 10;
  margin-bottom: -8px;
}

.radio-talk-button:hover {
  background-color: #1976d2 !important;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(33, 150, 243, 0.4);
}

.radio-talk-button:active {
  transform: translateY(0);
  box-shadow: 0 2px 6px rgba(33, 150, 243, 0.3);
}

.radio-talk-button:disabled {
  opacity: 0.6;
  cursor: not-allowed;
  transform: none;
}

.radio-talk-button.transmitting {
  background-color: #ff5722 !important;
  box-shadow: 0 2px 8px rgba(255, 87, 34, 0.3);
}

.radio-talk-button.transmitting:hover {
  background-color: #e64a19 !important;
  box-shadow: 0 4px 12px rgba(255, 87, 34, 0.4);
}

.radio-talk-button i {
  font-size: 18px;
  vertical-align: middle;
}

.radio-talk-button span {
  font-size: 13px;
  font-weight: 600;
}

/* Mejoras de diseño para tablas en el mapa */
/* Estilos globales de hover para ListasMovilesParadas2023 (para otras vistas) */
#ListasMovilesParadas2023 tbody tr:hover {
  background-color: #f5f5f5;
}

#ListasMovilesParadas2023 tbody tr:hover td {
  background-color: #f5f5f5 !important;
}

#ListasMovilesParadas2023 tbody tr:hover td:first-child {
  background-color: #bbdefb !important;
}

/* ============================================
   19. ESTILOS ADICIONALES POR VISTA
   ============================================ */

/* Vista de Viajes (Apps_appviajes) */
.view-viajes .table td,
.view-viajes .table th {
  padding: 2px;
  padding-left: 5px;
  font-size: 12px;
}

.view-viajes table.dataTable tbody th,
.view-viajes table.dataTable tbody td {
  padding: 2px 12px;
  font-size: 12px;
  font-weight: bold;
}

.view-viajes table.dataTable thead th,
.view-viajes table.dataTable thead td {
  padding: 2px 18px;
  white-space: nowrap;
}

.view-viajes
  table.dataTable.dtr-inline.collapsed
  > tbody
  > tr[role="row"]
  > td:first-child:before,
.view-viajes
  table.dataTable.dtr-inline.collapsed
  > tbody
  > tr[role="row"]
  > th:first-child:before {
  top: 2px;
  left: 2px;
  height: 10px;
  width: 10px;
  line-height: 10px;
}

.view-viajes .dts_label {
  display: none !important;
}

.view-viajes .input-group {
  margin-bottom: 5px;
}

/* Los estilos del menú contextual ya están definidos globalmente */

.view-viajes .form-control {
  margin-bottom: 0px;
}

/* Vista de Zonas y Paradas (Apps_appzonasparadas) */
.view-zonasparadas .table td,
.view-zonasparadas .table th {
  padding: 2px;
  padding-left: 5px;
  font-weight: bold;
}

.view-zonasparadas table.dataTable tbody th,
.view-zonasparadas table.dataTable tbody td {
  padding: 2px 10px;
}

.view-zonasparadas table.dataTable thead th,
.view-zonasparadas table.dataTable thead td {
  padding: 2px 18px;
}

.view-zonasparadas .dts_label {
  display: none !important;
}

.view-zonasparadas .input-group {
  margin-bottom: 5px;
}

/* Los estilos del menú contextual ya están definidos globalmente */

.view-zonasparadas .dataTables_wrapper {
  overflow-y: scroll !important;
  height: 100%;
  width: 100%;
  position: absolute;
  left: 0;
  top: 0;
  padding: 5px;
}

.view-zonasparadas .leaflet-tooltip.park-tooltip {
  background-color: transparent;
  border: 0px;
  box-shadow: none;
  padding-left: 15px;
  padding-right: 15px;
  font-size: 16px;
  line-height: 16px;
  font-weight: 900;
  color: blue;
  font-family: Roboto, "Open Sans", sans-serif;
}

.view-zonasparadas .small-text {
  font-size: 12px;
  color: blue;
}

/* Vista de Feriados */
/* Dropdown: usa estilos globales unificados */

.view-feriados .table td,
.view-feriados .table th {
  padding: 2px;
  padding-left: 5px;
  font-weight: bold;
}

.view-feriados table.dataTable tbody th,
.view-feriados table.dataTable tbody td {
  padding: 2px 10px;
}

.view-feriados table.dataTable thead th,
.view-feriados table.dataTable thead td {
  padding: 2px 18px;
}

.view-feriados .dts_label {
  display: none !important;
}

.view-feriados .input-group {
  margin-bottom: 5px;
}

/* Los estilos del menú contextual ya están definidos globalmente */

.view-feriados .small-text {
  font-size: 12px;
  color: blue;
}

/* Vista de Tarifas */
/* Dropdown: usa estilos globales unificados */

.view-tarifas .table td,
.view-tarifas .table th {
  padding: 2px;
  padding-left: 5px;
  font-weight: bold;
}

.view-tarifas table.dataTable tbody th,
.view-tarifas table.dataTable tbody td {
  padding: 2px 10px;
}

.view-tarifas table.dataTable thead th,
.view-tarifas table.dataTable thead td {
  padding: 2px 18px;
}

.view-tarifas .dts_label {
  display: none !important;
}

.view-tarifas .input-group {
  margin-bottom: 5px;
}

/* Los estilos del menú contextual ya están definidos globalmente */

.view-tarifas .small-text {
  font-size: 12px;
  color: blue;
}

/* Vista de Usuarios */
.view-usuarios .dropdown-menu .inner {
  max-height: 146px;
  overflow: scroll;
  overflow-x: hidden;
  margin-top: 0px;
}

/* Vista de Titulares Mapa */
.view-titulares-mapa .table td,
.view-titulares-mapa .table th {
  padding: 2px;
  padding-left: 5px;
  font-weight: bold;
}

.view-titulares-mapa table.dataTable tbody th,
.view-titulares-mapa table.dataTable tbody td {
  padding: 2px 10px;
}

.view-titulares-mapa table.dataTable thead th,
.view-titulares-mapa table.dataTable thead td {
  padding: 2px 18px;
}

.view-titulares-mapa .dts_label {
  display: none !important;
}

.view-titulares-mapa .input-group {
  margin-bottom: 5px;
}

/* Dropdown: usa estilos globales unificados */

.view-titulares-mapa #BotonSeguir {
  float: right;
  width: 100px;
  height: 25px;
  font-size: 10px;
  display: none;
}

.view-titulares-mapa .dataTables_wrapper {
  overflow-y: scroll !important;
  height: 100%;
  width: 100%;
  position: absolute;
  left: 0;
  top: 0;
  padding: 5px;
}

.view-titulares-mapa .leaflet-tooltip.park-tooltip {
  background-color: transparent;
  border: 0px;
  box-shadow: none;
  padding-left: 15px;
  padding-right: 15px;
  font-size: 16px;
  line-height: 16px;
  font-weight: 900;
  color: blue;
  font-family: Roboto, "Open Sans", sans-serif;
}

.view-titulares-mapa .small-text {
  font-size: 12px;
  color: blue;
}

.view-titulares-mapa #map-container {
  position: relative;
}

.view-titulares-mapa #floating-div {
  position: absolute;
  top: 5px;
  left: 20%;
  transform: translateX(-10%);
  background-color: rgba(255, 255, 255, 0.8);
  padding: 10px;
  border-radius: 5px;
  z-index: 999;
}

.view-titulares-mapa #right-panel {
  background-color: rgba(255, 255, 255, 0.8);
  padding: 10px;
  border-radius: 5px;
  overflow-y: scroll !important;
  overflow-x: hidden;
  min-height: 200px;
  height: 200px;
  z-index: 999;
}

@media (min-width: 768px) {
  .view-titulares-mapa #right-panel {
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    height: 90%;
    width: 200px;
  }
}

.view-titulares-mapa #map {
  height: calc(100vh - 200px);
  width: 100%;
  background-color: #e0dfdf;
}

@media (min-width: 768px) {
  .view-titulares-mapa #map {
    height: 100%;
    width: 100%;
  }
}

.view-titulares-mapa #ListaMoviles_wrapper {
  position: relative;
  overflow-x: hidden !important;
}

/* Vista de Cuentas Móviles */
.view-cuentasmoviles .table td,
.view-cuentasmoviles .table th {
  padding: 2px;
  padding-left: 5px;
  font-size: 12px;
}

.view-cuentasmoviles table.dataTable tbody th,
.view-cuentasmoviles table.dataTable tbody td {
  padding: 2px 12px;
  font-size: 12px;
  font-weight: bold;
}

.view-cuentasmoviles table.dataTable thead th,
.view-cuentasmoviles table.dataTable thead td {
  padding: 2px 18px;
  white-space: nowrap;
}

.view-cuentasmoviles
  table.dataTable.dtr-inline.collapsed
  > tbody
  > tr[role="row"]
  > td:first-child:before,
.view-cuentasmoviles
  table.dataTable.dtr-inline.collapsed
  > tbody
  > tr[role="row"]
  > th:first-child:before {
  top: 2px;
  left: 2px;
  height: 10px;
  width: 10px;
  line-height: 10px;
}

/* Los estilos del menú contextual ya están definidos globalmente */

.view-cuentasmoviles h2 .btn {
  height: 30px;
  font-size: 12px;
  line-height: 15px;
}

.view-cuentasmoviles .bootstrap-select .bs-searchbox {
  position: relative !important;
  margin-left: 30px;
  padding-left: 5px;
}

.view-cuentasmoviles
  .bootstrap-select.btn-group.show-tick
  .dropdown-menu.inner {
  margin-left: 30px;
  padding-left: 5px;
}

.view-cuentasmoviles .select2 {
  width: 100% !important;
  margin-top: 3.5px;
  margin-right: 5px;
  margin-left: 5px;
}

.view-cuentasmoviles .card {
  margin-bottom: 0px;
}

.view-cuentasmoviles .modal-body {
  padding: 0px;
}

.view-cuentasmoviles .btn.btn-xs {
  padding: 1px 1px;
  font-size: 11px;
}

.view-cuentasmoviles .btn:not(.btn-link):not(.btn-circle) {
  font-size: 11px;
}

.view-cuentasmoviles .card .body {
  font-size: 12px;
}

.view-cuentasmoviles #bs-select-1 {
  overflow: auto;
  max-height: 500px;
}

/* Estilos de Recibo para impresión */
.view-cuentasmoviles .recibo {
  font-family: "Roboto", sans-serif;
  margin: 0px;
  padding-left: 0mm;
  padding-right: 0mm;
  padding-bottom: 2mm;
  width: 68mm;
  border: 1px solid black;
  font-weight: bold;
  font-size: 12pt;
}

.view-cuentasmoviles .fecha {
  text-align: right;
  padding-right: 1mm;
  padding-bottom: 1mm;
  font-size: 11pt;
  font-weight: bolder;
}

.view-cuentasmoviles .nromovil {
  margin-top: 1mm;
  margin-bottom: 1mm;
  text-align: center;
  font-size: 14pt;
  font-weight: bold;
  font-style: italic;
}

.view-cuentasmoviles .textorecibi {
  text-align: justify;
  padding: 1mm;
}

.view-cuentasmoviles .periodo {
  margin-top: 1mm;
  margin-bottom: 1mm;
  text-align: center;
  font-style: italic;
}

.view-cuentasmoviles .promocion {
  text-align: center;
  font-weight: bold;
  font-style: italic;
}

.view-cuentasmoviles .deuda {
  margin-top: 1mm;
  margin-bottom: 1mm;
  text-align: center;
  font-size: 10pt;
  font-weight: bold;
  font-style: italic;
}

/* Vista de Móviles Horas */
.view-movileshoras .table td,
.view-movileshoras .table th {
  padding: 2px;
  padding-left: 5px;
  font-size: 12px;
}

.view-movileshoras table.dataTable tbody th,
.view-movileshoras table.dataTable tbody td {
  padding: 2px 12px;
  font-size: 12px;
  font-weight: bold;
}

.view-movileshoras table.dataTable thead th,
.view-movileshoras table.dataTable thead td {
  padding: 2px 18px;
  white-space: nowrap;
}

.view-movileshoras
  table.dataTable.dtr-inline.collapsed
  > tbody
  > tr[role="row"]
  > td:first-child:before,
.view-movileshoras
  table.dataTable.dtr-inline.collapsed
  > tbody
  > tr[role="row"]
  > th:first-child:before {
  top: 2px;
  left: 2px;
  height: 10px;
  width: 10px;
  line-height: 10px;
}

/* Los estilos del menú contextual ya están definidos globalmente */

.view-movileshoras h2 .btn {
  height: 30px;
  font-size: 12px;
  line-height: 15px;
}

.view-movileshoras .bootstrap-select .bs-searchbox {
  position: relative !important;
  margin-left: 30px;
  padding-left: 5px;
}

.view-movileshoras .bootstrap-select.btn-group.show-tick .dropdown-menu.inner {
  margin-left: 30px;
  padding-left: 5px;
}

/* Alineacion global del control (+) de DataTables responsive.
   Evita superposicion con el texto de la primera columna. */
table.dataTable.dtr-inline.collapsed > tbody > tr[role="row"] > td:first-child,
table.dataTable.dtr-inline.collapsed > tbody > tr[role="row"] > th:first-child {
  position: relative;
  padding-left: 26px !important;
}

table.dataTable.dtr-inline.collapsed
  > tbody
  > tr[role="row"]
  > td:first-child:before,
table.dataTable.dtr-inline.collapsed
  > tbody
  > tr[role="row"]
  > th:first-child:before {
  top: 50% !important;
  left: 8px !important;
  transform: translateY(-50%);
  margin-top: 0 !important;
}

.view-movileshoras .select2 {
  width: 100% !important;
  margin-top: 3.5px;
  margin-right: 5px;
  margin-left: 5px;
}

.view-movileshoras .card {
  margin-bottom: 0px;
}

.view-movileshoras .modal-body {
  padding: 0px;
}

.view-movileshoras .btn.btn-xs {
  padding: 1px 1px;
  font-size: 11px;
}

.view-movileshoras .btn:not(.btn-link):not(.btn-circle) {
  font-size: 11px;
}

.view-movileshoras .card .body {
  font-size: 12px;
}

.view-movileshoras #bs-select-1 {
  overflow: auto;
  max-height: 500px;
}

/* Estilos para vistas de Viajes (Sistema_viajes, Titulares_viajes) */
.viajes-hero-card {
  background: linear-gradient(135deg, var(--colaby-blue), #1a237e);
  color: #fff;
  border: none;
  margin-bottom: 15px;
}

.viajes-hero-body {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
  padding: 20px 25px !important;
}

.viajes-hero-chip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(255, 255, 255, 0.2);
  color: #fff;
  border-radius: 999px;
  padding: 4px 14px;
  font-size: 11px;
  letter-spacing: 1px;
  text-transform: uppercase;
  width: fit-content;
}

.viajes-hero-title {
  font-size: 20px;
  font-weight: 600;
  letter-spacing: 0.4px;
}

.viajes-hero-subtitle {
  opacity: 0.85;
}

.viajes-summary-grid {
  display: flex;
  gap: 12px;
}

.viajes-summary-card {
  border-radius: 10px;
  padding: 12px 16px;
  min-width: 140px;
  border: 1px solid rgba(0, 0, 0, 0.05);
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.08);
}

.viajes-summary-label {
  font-size: 11px;
  text-transform: uppercase;
  color: #607d8b;
  letter-spacing: 0.5px;
}

.viajes-summary-value {
  font-size: 20px;
  font-weight: 700;
  color: #1f2d3d;
  line-height: 1.2;
}

.viajes-filtros .form-label {
  font-weight: 600;
  font-size: 12px;
  text-transform: uppercase;
  color: #607d8b;
}

.viajes-filtros .col-auto {
  margin-right: 8px;
}

.viajes-filtros .col-auto:last-child {
  margin-right: 0;
}

.viajes-filtros input[type="date"],
.viajes-filtros select {
  cursor: pointer;
}

.viajes-filtros select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-image: none;
}

.viajes-filtros select::-ms-expand {
  display: none;
}

.viajes-filtros input[type="date"]::-webkit-calendar-picker-indicator {
  opacity: 0;
  position: absolute;
  right: 0;
  width: 100%;
  height: 100%;
  cursor: pointer;
  z-index: 1;
}

.viajes-filtros input[type="date"]::-webkit-inner-spin-button {
  display: none;
}

.viajes-filtros input[type="date"]::-webkit-clear-button {
  display: none;
}

.viajes-filtros input[type="date"]::-moz-calendar-picker-indicator {
  opacity: 0;
  position: absolute;
  right: 0;
  width: 100%;
  height: 100%;
  cursor: pointer;
  z-index: 1;
}

.viajes-filtros .position-relative {
  cursor: pointer;
}

.viajes-filtros .position-relative input {
  cursor: pointer;
}

.viajes-icon-trigger {
  transition: color 0.2s;
}

.viajes-icon-trigger:hover {
  color: var(--colaby-blue) !important;
}

.btn-icon-only {
  width: 42px;
  height: 42px;
  border-radius: 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: 25px;
}

#viajesBtnReset {
  margin-top: 25px;
  white-space: nowrap;
}

.viajes-limit-alert {
  margin-top: 10px;
  margin-bottom: 0;
  font-size: 12px;
  padding: 8px 12px;
}

.viajes-tabla-wrapper {
  position: relative;
  min-height: 140px;
}

#viajesTabla tbody tr td {
  vertical-align: middle;
  font-size: 13px;
}

#viajesLoader {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

#viajesSinDatos {
  margin-top: 15px;
}

.viajes-monto {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
  font-weight: 600;
}

.viajes-monto-icon {
  display: inline-flex;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  align-items: center;
  justify-content: center;
  background: #e3f2fd;
  color: #1565c0;
}

.viajes-monto-icon .fa-solid {
  font-size: 16px;
}

.viajes-monto-icon.tarifador {
  background: #e0f7fa;
  color: #00838f;
}

.viajes-monto-icon.fijo {
  background: #ede7f6;
  color: #4527a0;
}

.viajes-payment-icon img {
  height: 22px;
  width: auto;
}

.viajes-payment-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  margin: 0 auto;
}

@media (max-width: 991px) {
  .viajes-hero-body {
    flex-direction: column;
    align-items: flex-start;
  }

  .viajes-summary-grid {
    width: 100%;
  }
}

@media (max-width: 767px) {
  .viajes-filtros .col-sm-3,
  .viajes-filtros .col-sm-2,
  .viajes-filtros .col-sm-1 {
    margin-bottom: 15px;
  }

  .viajes-summary-grid {
    flex-direction: column;
  }

  .btn-icon-only {
    width: 100%;
  }
}

/* ============================================
   NOTIFICACIONES - Z-INDEX MUY ALTO
   Solo para notificaciones de bootstrap-notify, NO para alerts normales
   ============================================ */
[data-notify="container"],
[data-growl="container"],
.bootstrap-notify-container {
  z-index: 99999 !important;
  position: fixed !important;
}

[class*="animated"][class*="fadeIn"].alert[data-notify],
.growl-animated {
  z-index: 99999 !important;
}

/* Alerts normales en el contenido - z-index bajo para no interferir con dropdowns */
.container-fluid .alert,
.content .alert,
.news-banner {
  position: relative;
  z-index: 1 !important;
}

/* Estilos adicionales para notificaciones sin fondo */
[data-notify="container"].alert {
  background-color: #f44336 !important; /* Rojo por defecto para errores */
  color: #fff !important;
  border: none !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3) !important;
}

[data-notify="container"].alert.bg-green,
[data-notify="container"].alert.alert-success {
  background-color: #4caf50 !important;
}

[data-notify="container"].alert.bg-orange,
[data-notify="container"].alert.alert-warning {
  background-color: #ff9800 !important;
}

[data-notify="container"].alert.bg-red,
[data-notify="container"].alert.alert-danger {
  background-color: #f44336 !important;
}

[data-notify="container"].alert.bg-info,
[data-notify="container"].alert.alert-info {
  background-color: var(--colaby-blue) !important;
}

/*
 * bootstrap-notify (styleDismiss) fuerza top:5px en el botón cerrar; eso desalinea
 * la X respecto al texto. Centramos en el eje vertical y mantenemos área de click.
 */
[data-notify="container"].alert [data-notify="dismiss"] {
  top: 50% !important;
  -webkit-transform: translateY(-50%) !important;
  transform: translateY(-50%) !important;
  bottom: auto !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  line-height: 1 !important;
  padding: 0.25rem 0.5rem !important;
}

/* ============================================
   VISTAS FULLSCREEN (Mapa, Viajes, Paradas, Telefonía)
   ============================================ */
body.view-fullscreen .content,
body.view-mapa .content,
body.view-viajes .content,
body.view-paradas .content,
body.view-telefonia .content {
  margin-top: 0;
  padding: 0;
  min-height: 100vh;
  height: 100vh;
}

/* Cuando es una ventana popup (nueva pestaña) */
body.popup-window .content {
  margin-top: 0;
  padding: 0;
  min-height: 100vh;
}

body.popup-window .navbar {
  display: none;
}

/* ============================================
   FIX NAVBAR RESPONSIVE - MEJORADO
   ============================================ */

/* Desktop (>= 992px): navbar siempre visible inline horizontal */
@media (min-width: 992px) {
  .navbar {
    flex-wrap: nowrap;
    overflow: visible; /* Permitir dropdowns */
  }

  .navbar .container-fluid {
    flex-wrap: nowrap;
    overflow: visible;
  }

  .navbar-header {
    width: auto;
    flex-shrink: 0;
  }

  .navbar-collapse {
    display: flex !important;
    flex: 1 1 auto;
    min-width: 0;
    overflow: visible;
    position: static;
    flex-direction: row;
    align-items: center;
  }

  .navbar-nav {
    flex-direction: row !important;
    flex-wrap: nowrap;
    align-items: center;
    overflow: visible;
  }

  .navbar-nav.me-auto {
    flex-wrap: nowrap;
    overflow: visible;
  }

  .navbar-nav.ms-auto {
    margin-left: auto;
    border-top: none;
    padding-top: 0;
    margin-top: 0;
  }

  .nav-item {
    width: auto;
    overflow: visible;
  }

  .navbar-toggler {
    display: none !important;
  }
}

/* Pantallas desktop medianas (992px - 1200px) - más compacto */
@media (min-width: 992px) and (max-width: 1200px) {
  .nav-link {
    padding: 0.3rem 0.4rem !important;
    font-size: 0.75rem !important;
  }

  .nav-link i,
  .nav-link .zmdi,
  .nav-link .material-icons {
    font-size: 0.85rem;
  }

  .navbar-nav {
    gap: 0.05rem;
  }

  .company-name {
    max-width: 100px;
    font-size: 0.85rem;
  }

  .logo-container {
    height: 26px;
    width: 26px;
  }

  .logo {
    max-height: 26px;
  }

  .user-info-inline .user-name {
    max-width: 80px;
    overflow: hidden;
    text-overflow: ellipsis;
  }
}

/* Pantallas desktop grandes (1200px - 1400px) */
@media (min-width: 1200px) and (max-width: 1400px) {
  .nav-link {
    padding: 0.35rem 0.5rem !important;
    font-size: 0.8rem !important;
  }

  .navbar-nav {
    gap: 0.1rem;
  }

  .company-name {
    max-width: 150px;
  }
}

/* ============================================
   ESTILOS PARA APPS_ASISTENTES_RESPUESTAS
   ============================================ */
.mensaje-item {
  margin-bottom: 20px;
  padding: 15px;
  background-color: #f9f9f9;
  border-radius: 5px;
  border: 1px solid #e0e0e0;
}

.mensaje-item .mensaje-texto {
  font-size: 14px;
  line-height: 1.6;
  resize: vertical;
  min-height: 120px;
  padding: 12px;
  border: 1px solid #ddd;
  border-radius: 4px;
  transition: border-color 0.3s ease;
}

.mensaje-item .mensaje-texto:focus {
  border-color: var(--colaby-primary);
  box-shadow: 0 0 0 2px rgba(26, 138, 143, 0.1);
  outline: none;
}

.mensaje-item label {
  margin-bottom: 8px;
  display: block;
  font-weight: 600;
  color: #333;
}

.mensaje-item .small-text {
  font-size: 12px;
  margin-top: 5px;
}

.mensaje-item .mensaje-obligatorio {
  color: var(--colaby-danger);
  font-weight: 600;
}

.mensaje-item .mensaje-opcional {
  color: var(--colaby-gray);
}

.tipo-mensaje {
  margin-bottom: 30px;
  box-shadow: var(--colaby-shadow);
}

.tipo-mensaje .card {
  border: 1px solid #e0e0e0;
}

.tipo-mensaje .mensajes-lista {
  padding: 10px 0;
}

.tipo-mensaje .tiplist {
  max-height: 500px;
  overflow-y: auto;
  padding: 0;
}

.tipo-mensaje .tiplist .list-group-item {
  padding: 8px 12px;
  font-size: 12px;
  border: none;
  border-bottom: 1px solid #f0f0f0;
}

.tipo-mensaje .tiplist .list-group-item:last-child {
  border-bottom: none;
}

.tipo-mensaje .tiplist .list-group-item strong {
  color: var(--colaby-primary);
  font-weight: 600;
}

.tipo-mensaje .bg-light {
  background-color: #f8f9fa !important;
  border: 1px solid #e0e0e0;
}

.tipo-mensaje .bg-light .header {
  background-color: #e9ecef;
  border-bottom: 1px solid #dee2e6;
}

.tipo-mensaje .bg-light .header h2 {
  color: #495057;
  font-size: 14px;
  margin: 0;
  padding: 10px 15px;
}

@media (max-width: 768px) {
  .tipo-mensaje .col-md-9,
  .tipo-mensaje .col-md-3 {
    margin-bottom: 20px;
  }

  .mensaje-item .mensaje-texto {
    min-height: 100px;
  }
}

/* ============================================
   DASHBOARD - ESTILOS ESPECÍFICOS
   ============================================ */

/* Botón WhatsApp flotante */
.btn-whatsapp {
  width: 45px;
  height: 45px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
  text-decoration: none;
  transition: all 0.3s ease;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
  background-color: #25d366;
}

.btn-whatsapp:hover {
  transform: scale(1.1);
  color: white;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
  animation: shake 0.5s ease-in-out;
  text-decoration: none;
}

@keyframes shake {
  0% {
    transform: translateX(0);
  }

  25% {
    transform: translateX(-5px);
  }

  50% {
    transform: translateX(5px);
  }

  75% {
    transform: translateX(-5px);
  }

  100% {
    transform: translateX(0);
  }
}

/* Tooltips generales */
[data-tooltip] {
  position: relative;
}

[data-tooltip]:before {
  content: attr(data-tooltip);
  position: absolute;
  background: #333;
  color: white;
  padding: 5px 10px;
  border-radius: 4px;
  white-space: nowrap;
  opacity: 0;
  visibility: hidden;
  font-size: 0.8rem;
  transition: all 0.3s ease;
}

[data-tooltip][data-tooltip-position="left"]:before {
  right: 100%;
  top: 50%;
  transform: translateY(-50%) translateX(-10px);
  margin-right: 10px;
}

[data-tooltip]:hover:before {
  opacity: 1;
  visibility: visible;
}

/* Animaciones para el Banner de Novedades */
.news-banner {
  position: relative;
  animation: slideInDown 0.6s ease-out;
}

@keyframes slideInDown {
  from {
    opacity: 0;
    transform: translateY(-20px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.news-banner-icon-wrapper {
  position: relative;
  display: inline-block;
}

.news-banner-icon {
  animation: megaphoneSpeak 2s ease-in-out infinite;
  position: relative;
  z-index: 2;
}

@keyframes megaphoneSpeak {
  0%,
  100% {
    transform: scale(1) rotate(0deg);
    color: #007bff;
  }

  25% {
    transform: scale(1.15) rotate(-5deg);
    color: #0056b3;
  }

  50% {
    transform: scale(1.2) rotate(5deg);
    color: #007bff;
  }

  75% {
    transform: scale(1.15) rotate(-3deg);
    color: #0056b3;
  }
}

/* Ondas de sonido alrededor del megáfono */
.sound-wave {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 60px;
  height: 60px;
  border: 3px solid #007bff;
  border-radius: 50%;
  opacity: 0;
  animation: soundWave 2s ease-out infinite;
}

.sound-wave:nth-child(2) {
  animation-delay: 0.5s;
  width: 80px;
  height: 80px;
}

.sound-wave:nth-child(3) {
  animation-delay: 1s;
  width: 100px;
  height: 100px;
}

@keyframes soundWave {
  0% {
    transform: translate(-50%, -50%) scale(0.8);
    opacity: 0.8;
  }

  100% {
    transform: translate(-50%, -50%) scale(1.5);
    opacity: 0;
  }
}

/* Efecto de brillo pulsante en el banner */
.news-banner-card {
  position: relative;
  overflow: hidden;
}

.news-banner-card::before {
  content: "";
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background: linear-gradient(
    45deg,
    transparent 30%,
    rgba(255, 255, 255, 0.1) 50%,
    transparent 70%
  );
  animation: shine 3s infinite;
}

@keyframes shine {
  0% {
    transform: translateX(-100%) translateY(-100%) rotate(45deg);
  }

  100% {
    transform: translateX(100%) translateY(100%) rotate(45deg);
  }
}

/* Animación del botón */
.news-banner-btn {
  animation: buttonPulse 2s ease-in-out infinite;
  position: relative;
}

@keyframes buttonPulse {
  0%,
  100% {
    transform: scale(1);
    box-shadow: 0 2px 8px rgba(0, 123, 255, 0.3);
  }

  50% {
    transform: scale(1.05);
    box-shadow: 0 4px 15px rgba(0, 123, 255, 0.5);
  }
}

.news-banner-btn:hover {
  animation: none;
  transform: scale(1.1) !important;
}

/* ============================================
   REGLAS COPIADAS DE main.css (estilos que faltaban)
   Generado por scripts/merge_main_css_into_colaby.py
   ============================================ */

body.inverse {
  background: #333333;
}

body.inverse,
body.inverse .form-control {
  color: #fff;
}

body.inverse .modal,
body.inverse .modal .form-control,
body.inverse .panel-default,
body.inverse .panel-default .form-control,
body.inverse .card,
body.inverse .card .form-control {
  background-color: initial;
  color: initial;
}

.life-of-material-kit {
  background: #ffffff;
}

.animation-transition-general {
  -webkit-transition: all 300ms linear;
  -moz-transition: all 300ms linear;
  -o-transition: all 300ms linear;
  -ms-transition: all 300ms linear;
  transition: all 300ms linear;
}

.animation-transition-slow {
  -webkit-transition: all 370ms linear;
  -moz-transition: all 370ms linear;
  -o-transition: all 370ms linear;
  -ms-transition: all 370ms linear;
  transition: all 370ms linear;
}

.animation-transition-fast {
  -webkit-transition: all 150ms ease 0s;
  -moz-transition: all 150ms ease 0s;
  -o-transition: all 150ms ease 0s;
  -ms-transition: all 150ms ease 0s;
  transition: all 150ms ease 0s;
}

.form-horizontal .radio,
.form-horizontal .checkbox,
.form-horizontal .radio-inline,
.form-horizontal .checkbox-inline {
  padding-top: 0;
}

.form-horizontal .radio {
  margin-bottom: 10px;
}

.form-horizontal label {
  text-align: right;
}

.form-horizontal label.control-label {
  margin: 0;
}

.btn,
.input-group-btn .btn {
  border: none;
  border-radius: 3px;
  position: relative;
  line-height: 22px;
  font-size: 12px;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 0;
  will-change: box-shadow, transform;
  transition:
    box-shadow 0.2s cubic-bezier(0.4, 0, 1, 1),
    background-color 0.2s cubic-bezier(0.4, 0, 0.2, 1),
    color 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  background: transparent;
}

.btn::-moz-focus-inner,
.input-group-btn .btn::-moz-focus-inner {
  border: 0;
}

.btn:not(.btn-raised),
.input-group-btn .btn:not(.btn-raised) {
  box-shadow: none;
}

.btn:not(.btn-raised):not(.btn-link):hover,
.btn:not(.btn-raised):not(.btn-link):focus,
.input-group-btn .btn:not(.btn-raised):not(.btn-link):hover,
.input-group-btn .btn:not(.btn-raised):not(.btn-link):focus {
  background-color: transparent;
}

.btn:focus,
.btn:active,
.btn:active:focus,
.input-group-btn .btn:focus,
.input-group-btn .btn:active,
.input-group-btn .btn:active:focus {
  outline: 0;
}

.btn.btn-raised,
.btn.btn-raised.btn-default,
.btn.btn-fab,
.btn.btn-fab.btn-default,
.btn-group-raised .btn,
.btn-group-raised .btn.btn-default,
.input-group-btn .btn.btn-raised,
.input-group-btn .btn.btn-raised.btn-default,
.input-group-btn .btn.btn-fab,
.input-group-btn .btn.btn-fab.btn-default,
.btn-group-raised .input-group-btn .btn,
.btn-group-raised .input-group-btn .btn.btn-default {
  background-color: #eee;
  color: rgba(0, 0, 0, 0.87);
}

.btn.btn-raised.btn-inverse,
.btn.btn-fab.btn-inverse,
.btn-group-raised .btn.btn-inverse,
.input-group-btn .btn.btn-raised.btn-inverse,
.input-group-btn .btn.btn-fab.btn-inverse,
.btn-group-raised .input-group-btn .btn.btn-inverse {
  background-color: #3f51b5;
  color: contrast-color(#3f51b5, #000, #fff);
}

.btn.btn-raised.btn-primary,
.btn.btn-fab.btn-primary,
.btn-group-raised .btn.btn-primary,
.input-group-btn .btn.btn-raised.btn-primary,
.input-group-btn .btn.btn-fab.btn-primary,
.btn-group-raised .input-group-btn .btn.btn-primary {
  background-color: #9c27b0;
  color: #fff;
}

.btn.btn-raised.btn-success,
.btn.btn-fab.btn-success,
.btn-group-raised .btn.btn-success,
.input-group-btn .btn.btn-raised.btn-success,
.input-group-btn .btn.btn-fab.btn-success,
.btn-group-raised .input-group-btn .btn.btn-success {
  background-color: #4caf50;
  color: #fff;
}

.btn.btn-raised.btn-info,
.btn.btn-fab.btn-info,
.btn-group-raised .btn.btn-info,
.input-group-btn .btn.btn-raised.btn-info,
.input-group-btn .btn.btn-fab.btn-info,
.btn-group-raised .input-group-btn .btn.btn-info {
  background-color: #03a9f4;
  color: #fff;
}

.btn.btn-raised.btn-warning,
.btn.btn-fab.btn-warning,
.btn-group-raised .btn.btn-warning,
.input-group-btn .btn.btn-raised.btn-warning,
.input-group-btn .btn.btn-fab.btn-warning,
.btn-group-raised .input-group-btn .btn.btn-warning {
  background-color: #fbc02d;
  color: #fff;
}

.btn.btn-raised.btn-danger,
.btn.btn-fab.btn-danger,
.btn-group-raised .btn.btn-danger,
.input-group-btn .btn.btn-raised.btn-danger,
.input-group-btn .btn.btn-fab.btn-danger,
.btn-group-raised .input-group-btn .btn.btn-danger {
  background-color: #f44336;
  color: #fff;
}

.btn.btn-raised:not(.btn-link),
.btn-group-raised .btn:not(.btn-link),
.input-group-btn .btn.btn-raised:not(.btn-link),
.btn-group-raised .input-group-btn .btn:not(.btn-link) {
  box-shadow:
    0 2px 2px 0 rgba(0, 0, 0, 0.14),
    0 3px 1px -2px rgba(0, 0, 0, 0.2),
    0 1px 5px 0 rgba(0, 0, 0, 0.12);
}

.btn.btn-raised:not(.btn-link):hover,
.btn.btn-raised:not(.btn-link):focus,
.btn.btn-raised:not(.btn-link).active,
.btn.btn-raised:not(.btn-link):active,
.btn-group-raised .btn:not(.btn-link):hover,
.btn-group-raised .btn:not(.btn-link):focus,
.btn-group-raised .btn:not(.btn-link).active,
.btn-group-raised .btn:not(.btn-link):active,
.input-group-btn .btn.btn-raised:not(.btn-link):hover,
.input-group-btn .btn.btn-raised:not(.btn-link):focus,
.input-group-btn .btn.btn-raised:not(.btn-link).active,
.input-group-btn .btn.btn-raised:not(.btn-link):active,
.btn-group-raised .input-group-btn .btn:not(.btn-link):hover,
.btn-group-raised .input-group-btn .btn:not(.btn-link):focus,
.btn-group-raised .input-group-btn .btn:not(.btn-link).active,
.btn-group-raised .input-group-btn .btn:not(.btn-link):active {
  outline: 0;
}

.btn.btn-raised:not(.btn-link):hover,
.btn.btn-raised:not(.btn-link):hover.btn-default,
.btn.btn-raised:not(.btn-link):focus,
.btn.btn-raised:not(.btn-link):focus.btn-default,
.btn.btn-raised:not(.btn-link).active,
.btn.btn-raised:not(.btn-link).active.btn-default,
.btn.btn-raised:not(.btn-link):active,
.btn.btn-raised:not(.btn-link):active.btn-default,
.btn-group-raised .btn:not(.btn-link):hover,
.btn-group-raised .btn:not(.btn-link):hover.btn-default,
.btn-group-raised .btn:not(.btn-link):focus,
.btn-group-raised .btn:not(.btn-link):focus.btn-default,
.btn-group-raised .btn:not(.btn-link).active,
.btn-group-raised .btn:not(.btn-link).active.btn-default,
.btn-group-raised .btn:not(.btn-link):active,
.btn-group-raised .btn:not(.btn-link):active.btn-default,
.input-group-btn .btn.btn-raised:not(.btn-link):hover,
.input-group-btn .btn.btn-raised:not(.btn-link):hover.btn-default,
.input-group-btn .btn.btn-raised:not(.btn-link):focus,
.input-group-btn .btn.btn-raised:not(.btn-link):focus.btn-default,
.input-group-btn .btn.btn-raised:not(.btn-link).active,
.input-group-btn .btn.btn-raised:not(.btn-link).active.btn-default,
.input-group-btn .btn.btn-raised:not(.btn-link):active,
.input-group-btn .btn.btn-raised:not(.btn-link):active.btn-default,
.btn-group-raised .input-group-btn .btn:not(.btn-link):hover,
.btn-group-raised .input-group-btn .btn:not(.btn-link):hover.btn-default,
.btn-group-raised .input-group-btn .btn:not(.btn-link):focus,
.btn-group-raised .input-group-btn .btn:not(.btn-link):focus.btn-default,
.btn-group-raised .input-group-btn .btn:not(.btn-link).active,
.btn-group-raised .input-group-btn .btn:not(.btn-link).active.btn-default,
.btn-group-raised .input-group-btn .btn:not(.btn-link):active,
.btn-group-raised .input-group-btn .btn:not(.btn-link):active.btn-default {
  background-color: contrast-color(#eee, #e4e4e4, #f8f8f8);
}

.btn.btn-raised:not(.btn-link):hover.btn-inverse,
.btn.btn-raised:not(.btn-link):focus.btn-inverse,
.btn.btn-raised:not(.btn-link).active.btn-inverse,
.btn.btn-raised:not(.btn-link):active.btn-inverse,
.btn-group-raised .btn:not(.btn-link):hover.btn-inverse,
.btn-group-raised .btn:not(.btn-link):focus.btn-inverse,
.btn-group-raised .btn:not(.btn-link).active.btn-inverse,
.btn-group-raised .btn:not(.btn-link):active.btn-inverse,
.input-group-btn .btn.btn-raised:not(.btn-link):hover.btn-inverse,
.input-group-btn .btn.btn-raised:not(.btn-link):focus.btn-inverse,
.input-group-btn .btn.btn-raised:not(.btn-link).active.btn-inverse,
.input-group-btn .btn.btn-raised:not(.btn-link):active.btn-inverse,
.btn-group-raised .input-group-btn .btn:not(.btn-link):hover.btn-inverse,
.btn-group-raised .input-group-btn .btn:not(.btn-link):focus.btn-inverse,
.btn-group-raised .input-group-btn .btn:not(.btn-link).active.btn-inverse,
.btn-group-raised .input-group-btn .btn:not(.btn-link):active.btn-inverse {
  background-color: contrast-color(#3f51b5, #3a4aa6, #495bc0);
}

.btn.btn-raised:not(.btn-link):hover.btn-primary,
.btn.btn-raised:not(.btn-link):focus.btn-primary,
.btn.btn-raised:not(.btn-link).active.btn-primary,
.btn.btn-raised:not(.btn-link):active.btn-primary,
.btn-group-raised .btn:not(.btn-link):hover.btn-primary,
.btn-group-raised .btn:not(.btn-link):focus.btn-primary,
.btn-group-raised .btn:not(.btn-link).active.btn-primary,
.btn-group-raised .btn:not(.btn-link):active.btn-primary,
.input-group-btn .btn.btn-raised:not(.btn-link):hover.btn-primary,
.input-group-btn .btn.btn-raised:not(.btn-link):focus.btn-primary,
.input-group-btn .btn.btn-raised:not(.btn-link).active.btn-primary,
.input-group-btn .btn.btn-raised:not(.btn-link):active.btn-primary,
.btn-group-raised .input-group-btn .btn:not(.btn-link):hover.btn-primary,
.btn-group-raised .input-group-btn .btn:not(.btn-link):focus.btn-primary,
.btn-group-raised .input-group-btn .btn:not(.btn-link).active.btn-primary,
.btn-group-raised .input-group-btn .btn:not(.btn-link):active.btn-primary {
  background-color: contrast-color(#9c27b0, #8d239f, #ab2bc1);
}

.btn.btn-raised:not(.btn-link):hover.btn-success,
.btn.btn-raised:not(.btn-link):focus.btn-success,
.btn.btn-raised:not(.btn-link).active.btn-success,
.btn.btn-raised:not(.btn-link):active.btn-success,
.btn-group-raised .btn:not(.btn-link):hover.btn-success,
.btn-group-raised .btn:not(.btn-link):focus.btn-success,
.btn-group-raised .btn:not(.btn-link).active.btn-success,
.btn-group-raised .btn:not(.btn-link):active.btn-success,
.input-group-btn .btn.btn-raised:not(.btn-link):hover.btn-success,
.input-group-btn .btn.btn-raised:not(.btn-link):focus.btn-success,
.input-group-btn .btn.btn-raised:not(.btn-link).active.btn-success,
.input-group-btn .btn.btn-raised:not(.btn-link):active.btn-success,
.btn-group-raised .input-group-btn .btn:not(.btn-link):hover.btn-success,
.btn-group-raised .input-group-btn .btn:not(.btn-link):focus.btn-success,
.btn-group-raised .input-group-btn .btn:not(.btn-link).active.btn-success,
.btn-group-raised .input-group-btn .btn:not(.btn-link):active.btn-success {
  background-color: contrast-color(#4caf50, #46a149, #59b75c);
}

.btn.btn-raised:not(.btn-link):hover.btn-info,
.btn.btn-raised:not(.btn-link):focus.btn-info,
.btn.btn-raised:not(.btn-link).active.btn-info,
.btn.btn-raised:not(.btn-link):active.btn-info,
.btn-group-raised .btn:not(.btn-link):hover.btn-info,
.btn-group-raised .btn:not(.btn-link):focus.btn-info,
.btn-group-raised .btn:not(.btn-link).active.btn-info,
.btn-group-raised .btn:not(.btn-link):active.btn-info,
.input-group-btn .btn.btn-raised:not(.btn-link):hover.btn-info,
.input-group-btn .btn.btn-raised:not(.btn-link):focus.btn-info,
.input-group-btn .btn.btn-raised:not(.btn-link).active.btn-info,
.input-group-btn .btn.btn-raised:not(.btn-link):active.btn-info,
.btn-group-raised .input-group-btn .btn:not(.btn-link):hover.btn-info,
.btn-group-raised .input-group-btn .btn:not(.btn-link):focus.btn-info,
.btn-group-raised .input-group-btn .btn:not(.btn-link).active.btn-info,
.btn-group-raised .input-group-btn .btn:not(.btn-link):active.btn-info {
  background-color: contrast-color(#03a9f4, #039be0, #0fb2fc);
}

.btn.btn-raised:not(.btn-link):hover.btn-warning,
.btn.btn-raised:not(.btn-link):focus.btn-warning,
.btn.btn-raised:not(.btn-link).active.btn-warning,
.btn.btn-raised:not(.btn-link):active.btn-warning,
.btn-group-raised .btn:not(.btn-link):hover.btn-warning,
.btn-group-raised .btn:not(.btn-link):focus.btn-warning,
.btn-group-raised .btn:not(.btn-link).active.btn-warning,
.btn-group-raised .btn:not(.btn-link):active.btn-warning,
.input-group-btn .btn.btn-raised:not(.btn-link):hover.btn-warning,
.input-group-btn .btn.btn-raised:not(.btn-link):focus.btn-warning,
.input-group-btn .btn.btn-raised:not(.btn-link).active.btn-warning,
.input-group-btn .btn.btn-raised:not(.btn-link):active.btn-warning,
.btn-group-raised .input-group-btn .btn:not(.btn-link):hover.btn-warning,
.btn-group-raised .input-group-btn .btn:not(.btn-link):focus.btn-warning,
.btn-group-raised .input-group-btn .btn:not(.btn-link).active.btn-warning,
.btn-group-raised .input-group-btn .btn:not(.btn-link):active.btn-warning {
  background-color: contrast-color(#fbc02d, #fbba19, #fbc641);
}

.btn.btn-raised:not(.btn-link):hover.btn-danger,
.btn.btn-raised:not(.btn-link):focus.btn-danger,
.btn.btn-raised:not(.btn-link).active.btn-danger,
.btn.btn-raised:not(.btn-link):active.btn-danger,
.btn-group-raised .btn:not(.btn-link):hover.btn-danger,
.btn-group-raised .btn:not(.btn-link):focus.btn-danger,
.btn-group-raised .btn:not(.btn-link).active.btn-danger,
.btn-group-raised .btn:not(.btn-link):active.btn-danger,
.input-group-btn .btn.btn-raised:not(.btn-link):hover.btn-danger,
.input-group-btn .btn.btn-raised:not(.btn-link):focus.btn-danger,
.input-group-btn .btn.btn-raised:not(.btn-link).active.btn-danger,
.input-group-btn .btn.btn-raised:not(.btn-link):active.btn-danger,
.btn-group-raised .input-group-btn .btn:not(.btn-link):hover.btn-danger,
.btn-group-raised .input-group-btn .btn:not(.btn-link):focus.btn-danger,
.btn-group-raised .input-group-btn .btn:not(.btn-link).active.btn-danger,
.btn-group-raised .input-group-btn .btn:not(.btn-link):active.btn-danger {
  background-color: contrast-color(#f44336, #f33123, #f55549);
}

.btn.btn-raised:not(.btn-link):hover,
.btn.btn-raised:not(.btn-link):hover:focus,
.btn.btn-raised:not(.btn-link):hover.active,
.btn.btn-raised:not(.btn-link):hover.active:focus,
.btn.btn-raised:not(.btn-link):hover:active,
.btn.btn-raised:not(.btn-link):hover:active:focus,
.btn-group-raised .btn:not(.btn-link):hover,
.btn-group-raised .btn:not(.btn-link):hover:focus,
.btn-group-raised .btn:not(.btn-link):hover.active,
.btn-group-raised .btn:not(.btn-link):hover.active:focus,
.btn-group-raised .btn:not(.btn-link):hover:active,
.btn-group-raised .btn:not(.btn-link):hover:active:focus,
.input-group-btn .btn.btn-raised:not(.btn-link):hover,
.input-group-btn .btn.btn-raised:not(.btn-link):hover:focus,
.input-group-btn .btn.btn-raised:not(.btn-link):hover.active,
.input-group-btn .btn.btn-raised:not(.btn-link):hover.active:focus,
.input-group-btn .btn.btn-raised:not(.btn-link):hover:active,
.input-group-btn .btn.btn-raised:not(.btn-link):hover:active:focus,
.btn-group-raised .input-group-btn .btn:not(.btn-link):hover,
.btn-group-raised .input-group-btn .btn:not(.btn-link):hover:focus,
.btn-group-raised .input-group-btn .btn:not(.btn-link):hover.active,
.btn-group-raised .input-group-btn .btn:not(.btn-link):hover.active:focus,
.btn-group-raised .input-group-btn .btn:not(.btn-link):hover:active,
.btn-group-raised .input-group-btn .btn:not(.btn-link):hover:active:focus {
  box-shadow:
    0 0 8px rgba(0, 0, 0, 0.18),
    0 8px 16px rgba(0, 0, 0, 0.36);
}

.btn.btn-round,
.input-group-btn .btn.btn-round {
  border-radius: 30px;
}

.btn i.material-icons,
.input-group-btn .btn i.material-icons {
  vertical-align: middle;
  font-size: 17px;
  top: -1px;
  position: relative;
}

.btn.btn-fab,
.input-group-btn .btn.btn-fab {
  border-radius: 50%;
  font-size: 24px;
  height: 56px;
  margin: auto;
  min-width: 56px;
  width: 56px;
  padding: 0;
  overflow: hidden;
  box-shadow:
    0 1px 1.5px 0 rgba(0, 0, 0, 0.12),
    0 1px 1px 0 rgba(0, 0, 0, 0.24);
  position: relative;
  line-height: normal;
}

.btn.btn-fab .ripple-container,
.input-group-btn .btn.btn-fab .ripple-container {
  border-radius: 50%;
}

.btn.btn-fab.btn-fab-mini,
.btn-group-sm .btn.btn-fab,
.input-group-btn .btn.btn-fab.btn-fab-mini,
.btn-group-sm .input-group-btn .btn.btn-fab {
  height: 40px;
  min-width: 40px;
  width: 40px;
}

.btn.btn-fab.btn-fab-mini.material-icons,
.btn-group-sm .btn.btn-fab.material-icons,
.input-group-btn .btn.btn-fab.btn-fab-mini.material-icons,
.btn-group-sm .input-group-btn .btn.btn-fab.material-icons {
  top: -3.5px;
  left: -3.5px;
}

.btn.btn-fab.btn-fab-mini .material-icons,
.btn-group-sm .btn.btn-fab .material-icons,
.input-group-btn .btn.btn-fab.btn-fab-mini .material-icons,
.btn-group-sm .input-group-btn .btn.btn-fab .material-icons {
  font-size: 17px;
}

.btn.btn-fab i.material-icons,
.input-group-btn .btn.btn-fab i.material-icons {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-12px, -12px);
  line-height: 24px;
  width: 24px;
  font-size: 24px;
}

.btn.btn-lg,
.btn-group-lg .btn,
.input-group-btn .btn.btn-lg,
.btn-group-lg .input-group-btn .btn {
  font-size: 14px;
  padding: 18px 36px;
}

.btn.btn-sm,
.btn-group-sm .btn,
.input-group-btn .btn.btn-sm,
.btn-group-sm .input-group-btn .btn {
  padding: 5px 20px;
  font-size: 11px;
}

.btn.btn-xs,
.btn-group-xs .btn,
.input-group-btn .btn.btn-xs,
.btn-group-xs .input-group-btn .btn {
  padding: 4px 15px;
  font-size: 10px;
}

.btn-just-icon {
  font-size: 20px;
  padding: 6px 11px;
}

fieldset[disabled][disabled] .btn,
.btn.disabled,
.btn:disabled,
.btn[disabled][disabled],
fieldset[disabled][disabled] .input-group-btn .btn,
.input-group-btn .btn.disabled,
.input-group-btn .btn:disabled,
.input-group-btn .btn[disabled][disabled],
fieldset[disabled][disabled] .btn-group,
.btn-group.disabled,
.btn-group:disabled,
.btn-group[disabled][disabled],
fieldset[disabled][disabled] .btn-group-vertical,
.btn-group-vertical.disabled,
.btn-group-vertical:disabled,
.btn-group-vertical[disabled][disabled] {
  color: rgba(0, 0, 0, 0.26);
  background: transparent;
}

.theme-dark fieldset[disabled][disabled] .btn,
.theme-dark .btn.disabled,
.theme-dark .btn:disabled,
.theme-dark .btn[disabled][disabled],
.theme-dark fieldset[disabled][disabled] .input-group-btn .btn,
.theme-dark .input-group-btn .btn.disabled,
.theme-dark .input-group-btn .btn:disabled,
.theme-dark .input-group-btn .btn[disabled][disabled],
.theme-dark fieldset[disabled][disabled] .btn-group,
.theme-dark .btn-group.disabled,
.theme-dark .btn-group:disabled,
.theme-dark .btn-group[disabled][disabled],
.theme-dark fieldset[disabled][disabled] .btn-group-vertical,
.theme-dark .btn-group-vertical.disabled,
.theme-dark .btn-group-vertical:disabled,
.theme-dark .btn-group-vertical[disabled][disabled] {
  color: rgba(255, 255, 255, 0.3);
}

fieldset[disabled][disabled] .btn.btn-raised,
fieldset[disabled][disabled] .btn.btn-raised.active,
fieldset[disabled][disabled] .btn.btn-raised:active,
fieldset[disabled][disabled] .btn.btn-raised:focus:not(:active),
fieldset[disabled][disabled] .btn.btn-group-raised,
fieldset[disabled][disabled] .btn.btn-group-raised.active,
fieldset[disabled][disabled] .btn.btn-group-raised:active,
fieldset[disabled][disabled] .btn.btn-group-raised:focus:not(:active),
.btn.disabled.btn-raised,
.btn.disabled.btn-raised.active,
.btn.disabled.btn-raised:active,
.btn.disabled.btn-raised:focus:not(:active),
.btn.disabled.btn-group-raised,
.btn.disabled.btn-group-raised.active,
.btn.disabled.btn-group-raised:active,
.btn.disabled.btn-group-raised:focus:not(:active),
.btn:disabled.btn-raised,
.btn:disabled.btn-raised.active,
.btn:disabled.btn-raised:active,
.btn:disabled.btn-raised:focus:not(:active),
.btn:disabled.btn-group-raised,
.btn:disabled.btn-group-raised.active,
.btn:disabled.btn-group-raised:active,
.btn:disabled.btn-group-raised:focus:not(:active),
.btn[disabled][disabled].btn-raised,
.btn[disabled][disabled].btn-raised.active,
.btn[disabled][disabled].btn-raised:active,
.btn[disabled][disabled].btn-raised:focus:not(:active),
.btn[disabled][disabled].btn-group-raised,
.btn[disabled][disabled].btn-group-raised.active,
.btn[disabled][disabled].btn-group-raised:active,
.btn[disabled][disabled].btn-group-raised:focus:not(:active),
fieldset[disabled][disabled] .input-group-btn .btn.btn-raised,
fieldset[disabled][disabled] .input-group-btn .btn.btn-raised.active,
fieldset[disabled][disabled] .input-group-btn .btn.btn-raised:active,
fieldset[disabled][disabled]
  .input-group-btn
  .btn.btn-raised:focus:not(:active),
fieldset[disabled][disabled] .input-group-btn .btn.btn-group-raised,
fieldset[disabled][disabled] .input-group-btn .btn.btn-group-raised.active,
fieldset[disabled][disabled] .input-group-btn .btn.btn-group-raised:active,
fieldset[disabled][disabled]
  .input-group-btn
  .btn.btn-group-raised:focus:not(:active),
.input-group-btn .btn.disabled.btn-raised,
.input-group-btn .btn.disabled.btn-raised.active,
.input-group-btn .btn.disabled.btn-raised:active,
.input-group-btn .btn.disabled.btn-raised:focus:not(:active),
.input-group-btn .btn.disabled.btn-group-raised,
.input-group-btn .btn.disabled.btn-group-raised.active,
.input-group-btn .btn.disabled.btn-group-raised:active,
.input-group-btn .btn.disabled.btn-group-raised:focus:not(:active),
.input-group-btn .btn:disabled.btn-raised,
.input-group-btn .btn:disabled.btn-raised.active,
.input-group-btn .btn:disabled.btn-raised:active,
.input-group-btn .btn:disabled.btn-raised:focus:not(:active),
.input-group-btn .btn:disabled.btn-group-raised,
.input-group-btn .btn:disabled.btn-group-raised.active,
.input-group-btn .btn:disabled.btn-group-raised:active,
.input-group-btn .btn:disabled.btn-group-raised:focus:not(:active),
.input-group-btn .btn[disabled][disabled].btn-raised,
.input-group-btn .btn[disabled][disabled].btn-raised.active,
.input-group-btn .btn[disabled][disabled].btn-raised:active,
.input-group-btn .btn[disabled][disabled].btn-raised:focus:not(:active),
.input-group-btn .btn[disabled][disabled].btn-group-raised,
.input-group-btn .btn[disabled][disabled].btn-group-raised.active,
.input-group-btn .btn[disabled][disabled].btn-group-raised:active,
.input-group-btn .btn[disabled][disabled].btn-group-raised:focus:not(:active),
fieldset[disabled][disabled] .btn-group.btn-raised,
fieldset[disabled][disabled] .btn-group.btn-raised.active,
fieldset[disabled][disabled] .btn-group.btn-raised:active,
fieldset[disabled][disabled] .btn-group.btn-raised:focus:not(:active),
fieldset[disabled][disabled] .btn-group.btn-group-raised,
fieldset[disabled][disabled] .btn-group.btn-group-raised.active,
fieldset[disabled][disabled] .btn-group.btn-group-raised:active,
fieldset[disabled][disabled] .btn-group.btn-group-raised:focus:not(:active),
.btn-group.disabled.btn-raised,
.btn-group.disabled.btn-raised.active,
.btn-group.disabled.btn-raised:active,
.btn-group.disabled.btn-raised:focus:not(:active),
.btn-group.disabled.btn-group-raised,
.btn-group.disabled.btn-group-raised.active,
.btn-group.disabled.btn-group-raised:active,
.btn-group.disabled.btn-group-raised:focus:not(:active),
.btn-group:disabled.btn-raised,
.btn-group:disabled.btn-raised.active,
.btn-group:disabled.btn-raised:active,
.btn-group:disabled.btn-raised:focus:not(:active),
.btn-group:disabled.btn-group-raised,
.btn-group:disabled.btn-group-raised.active,
.btn-group:disabled.btn-group-raised:active,
.btn-group:disabled.btn-group-raised:focus:not(:active),
.btn-group[disabled][disabled].btn-raised,
.btn-group[disabled][disabled].btn-raised.active,
.btn-group[disabled][disabled].btn-raised:active,
.btn-group[disabled][disabled].btn-raised:focus:not(:active),
.btn-group[disabled][disabled].btn-group-raised,
.btn-group[disabled][disabled].btn-group-raised.active,
.btn-group[disabled][disabled].btn-group-raised:active,
.btn-group[disabled][disabled].btn-group-raised:focus:not(:active),
fieldset[disabled][disabled] .btn-group-vertical.btn-raised,
fieldset[disabled][disabled] .btn-group-vertical.btn-raised.active,
fieldset[disabled][disabled] .btn-group-vertical.btn-raised:active,
fieldset[disabled][disabled] .btn-group-vertical.btn-raised:focus:not(:active),
fieldset[disabled][disabled] .btn-group-vertical.btn-group-raised,
fieldset[disabled][disabled] .btn-group-vertical.btn-group-raised.active,
fieldset[disabled][disabled] .btn-group-vertical.btn-group-raised:active,
fieldset[disabled][disabled]
  .btn-group-vertical.btn-group-raised:focus:not(:active),
.btn-group-vertical.disabled.btn-raised,
.btn-group-vertical.disabled.btn-raised.active,
.btn-group-vertical.disabled.btn-raised:active,
.btn-group-vertical.disabled.btn-raised:focus:not(:active),
.btn-group-vertical.disabled.btn-group-raised,
.btn-group-vertical.disabled.btn-group-raised.active,
.btn-group-vertical.disabled.btn-group-raised:active,
.btn-group-vertical.disabled.btn-group-raised:focus:not(:active),
.btn-group-vertical:disabled.btn-raised,
.btn-group-vertical:disabled.btn-raised.active,
.btn-group-vertical:disabled.btn-raised:active,
.btn-group-vertical:disabled.btn-raised:focus:not(:active),
.btn-group-vertical:disabled.btn-group-raised,
.btn-group-vertical:disabled.btn-group-raised.active,
.btn-group-vertical:disabled.btn-group-raised:active,
.btn-group-vertical:disabled.btn-group-raised:focus:not(:active),
.btn-group-vertical[disabled][disabled].btn-raised,
.btn-group-vertical[disabled][disabled].btn-raised.active,
.btn-group-vertical[disabled][disabled].btn-raised:active,
.btn-group-vertical[disabled][disabled].btn-raised:focus:not(:active),
.btn-group-vertical[disabled][disabled].btn-group-raised,
.btn-group-vertical[disabled][disabled].btn-group-raised.active,
.btn-group-vertical[disabled][disabled].btn-group-raised:active,
.btn-group-vertical[disabled][disabled].btn-group-raised:focus:not(:active) {
  box-shadow: none;
}

.btn-group,
.btn-group-vertical {
  position: relative;
  margin: 2px 2px;
}

.btn-group.open > .dropdown-toggle.btn,
.btn-group.open > .dropdown-toggle.btn.btn-default,
.btn-group-vertical.open > .dropdown-toggle.btn,
.btn-group-vertical.open > .dropdown-toggle.btn.btn-default {
  background-color: #eee;
}

.btn-group.open > .dropdown-toggle.btn.btn-inverse,
.btn-group-vertical.open > .dropdown-toggle.btn.btn-inverse {
  background-color: #3f51b5;
}

.btn-group.open > .dropdown-toggle.btn.btn-primary,
.btn-group-vertical.open > .dropdown-toggle.btn.btn-primary {
  background-color: #9c27b0;
}

.btn-group.open > .dropdown-toggle.btn.btn-success,
.btn-group-vertical.open > .dropdown-toggle.btn.btn-success {
  background-color: #4caf50;
}

.btn-group.open > .dropdown-toggle.btn.btn-info,
.btn-group-vertical.open > .dropdown-toggle.btn.btn-info {
  background-color: #03a9f4;
}

.btn-group.open > .dropdown-toggle.btn.btn-warning,
.btn-group-vertical.open > .dropdown-toggle.btn.btn-warning {
  background-color: #fbc02d;
}

.btn-group.open > .dropdown-toggle.btn.btn-danger,
.btn-group-vertical.open > .dropdown-toggle.btn.btn-danger {
  background-color: #f44336;
}

.btn-group.btn-group-raised,
.btn-group-vertical.btn-group-raised {
  box-shadow:
    0 2px 2px 0 rgba(0, 0, 0, 0.14),
    0 3px 1px -2px rgba(0, 0, 0, 0.2),
    0 1px 5px 0 rgba(0, 0, 0, 0.12);
}

.btn-group .btn + .btn,
.btn-group .btn,
.btn-group .btn:active,
.btn-group .btn-group,
.btn-group-vertical .btn + .btn,
.btn-group-vertical .btn,
.btn-group-vertical .btn:active,
.btn-group-vertical .btn-group {
  margin: 0;
}

.close {
  font-size: inherit;
  color: #fff;
  opacity: 0.9;
  text-shadow: none;
}

.close:hover,
.close:focus {
  opacity: 1;
  color: #fff;
}

.close i {
  font-size: 20px;
}

.checkbox label {
  cursor: pointer;
  padding-left: 0;
  color: rgba(0, 0, 0, 0.26);
}

.form-group.is-focused .checkbox label {
  color: rgba(0, 0, 0, 0.26);
}

.form-group.is-focused .checkbox label:hover,
.form-group.is-focused .checkbox label:focus {
  color: rgba(0, 0, 0, 0.54);
}

fieldset[disabled] .form-group.is-focused .checkbox label {
  color: rgba(0, 0, 0, 0.26);
}

.checkbox input[type="checkbox"] {
  opacity: 0;
  position: absolute;
  margin: 0;
  z-index: -1;
  width: 0;
  height: 0;
  overflow: hidden;
  left: 0;
  pointer-events: none;
}

.checkbox .checkbox-material {
  vertical-align: middle;
  position: relative;
  top: 3px;
  padding-right: 5px;
}

.checkbox .checkbox-material:before {
  display: block;
  position: absolute;
  left: 0;
  content: "";
  background-color: rgba(0, 0, 0, 0.84);
  height: 20px;
  width: 20px;
  border-radius: 100%;
  z-index: 1;
  opacity: 0;
  margin: 0;
  transform: scale3d(2.3, 2.3, 1);
}

.checkbox .checkbox-material .check {
  position: relative;
  display: inline-block;
  width: 20px;
  height: 20px;
  border: 1px solid rgba(0, 0, 0, 0.54);
  overflow: hidden;
  z-index: 1;
  border-radius: 3px;
}

.checkbox .checkbox-material .check:before {
  position: absolute;
  content: "";
  transform: rotate(45deg);
  display: block;
  margin-top: -3px;
  margin-left: 7px;
  width: 0;
  height: 0;
  background: red;
  box-shadow:
    0 0 0 0,
    0 0 0 0,
    0 0 0 0,
    0 0 0 0,
    0 0 0 0,
    0 0 0 0,
    0 0 0 0 inset;
  animation: checkbox-off 0.3s forwards;
}

.checkbox input[type="checkbox"]:focus + .checkbox-material .check:after {
  opacity: 0.2;
}

.checkbox input[type="checkbox"]:checked + .checkbox-material .check {
  background: #9c27b0;
}

.checkbox input[type="checkbox"]:checked + .checkbox-material .check:before {
  color: #ffffff;
  box-shadow:
    0 0 0 10px,
    10px -10px 0 10px,
    32px 0 0 20px,
    0px 32px 0 20px,
    -5px 5px 0 10px,
    20px -12px 0 11px;
  animation: checkbox-on 0.3s forwards;
}

.checkbox input[type="checkbox"]:checked + .checkbox-material:before {
  animation: rippleOn 500ms;
}

.checkbox input[type="checkbox"]:checked + .checkbox-material .check:after {
  animation: rippleOn 500ms forwards;
}

.checkbox input[type="checkbox"]:not(:checked) + .checkbox-material:before {
  animation: rippleOff 500ms;
}

.checkbox
  input[type="checkbox"]:not(:checked)
  + .checkbox-material
  .check:after {
  animation: rippleOff 500ms;
}

fieldset[disabled] .checkbox,
fieldset[disabled] .checkbox input[type="checkbox"],
.checkbox input[type="checkbox"][disabled] ~ .checkbox-material .check,
.checkbox input[type="checkbox"][disabled] + .circle {
  opacity: 0.5;
}

.checkbox input[type="checkbox"][disabled] ~ .checkbox-material .check {
  border-color: #000000;
  opacity: 0.26;
}

.checkbox input[type="checkbox"][disabled] + .checkbox-material .check:after {
  background-color: rgba(0, 0, 0, 0.87);
  transform: rotate(-45deg);
}

@keyframes checkbox-on {
  0% {
    box-shadow:
      0 0 0 10px,
      10px -10px 0 10px,
      32px 0 0 20px,
      0px 32px 0 20px,
      -5px 5px 0 10px,
      15px 2px 0 11px;
  }
  50% {
    box-shadow:
      0 0 0 10px,
      10px -10px 0 10px,
      32px 0 0 20px,
      0px 32px 0 20px,
      -5px 5px 0 10px,
      20px 2px 0 11px;
  }
  100% {
    box-shadow:
      0 0 0 10px,
      10px -10px 0 10px,
      32px 0 0 20px,
      0px 32px 0 20px,
      -5px 5px 0 10px,
      20px -12px 0 11px;
  }
}

@keyframes rippleOn {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 0.2;
  }
  100% {
    opacity: 0;
  }
}

@keyframes rippleOff {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 0.2;
  }
  100% {
    opacity: 0;
  }
}

.togglebutton {
  vertical-align: middle;
}

.togglebutton,
.togglebutton label,
.togglebutton input,
.togglebutton .toggle {
  user-select: none;
}

.togglebutton label {
  cursor: pointer;
  color: rgba(0, 0, 0, 0.26);
}

.form-group.is-focused .togglebutton label {
  color: rgba(0, 0, 0, 0.26);
}

.form-group.is-focused .togglebutton label:hover,
.form-group.is-focused .togglebutton label:focus {
  color: rgba(0, 0, 0, 0.54);
}

fieldset[disabled] .form-group.is-focused .togglebutton label {
  color: rgba(0, 0, 0, 0.26);
}

.togglebutton label input[type="checkbox"] {
  opacity: 0;
  width: 0;
  height: 0;
}

.togglebutton label .toggle {
  text-align: left;
  margin-left: 5px;
}

.togglebutton label .toggle,
.togglebutton label input[type="checkbox"][disabled] + .toggle {
  content: "";
  display: inline-block;
  width: 30px;
  height: 15px;
  background-color: rgba(80, 80, 80, 0.7);
  border-radius: 15px;
  margin-right: 15px;
  transition: background 0.3s ease;
  vertical-align: middle;
}

.togglebutton label .toggle:after {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  background-color: #ffffff;
  border-radius: 20px;
  position: relative;
  box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4);
  left: -5px;
  top: -3px;
  border: 1px solid rgba(0, 0, 0, 0.54);
  transition:
    left 0.3s ease,
    background 0.3s ease,
    box-shadow 0.1s ease;
}

.togglebutton label input[type="checkbox"][disabled] + .toggle:after,
.togglebutton label input[type="checkbox"][disabled]:checked + .toggle:after {
  background-color: #bdbdbd;
}

.togglebutton label input[type="checkbox"] + .toggle:active:after,
.togglebutton label input[type="checkbox"][disabled] + .toggle:active:after {
  box-shadow:
    0 1px 3px 1px rgba(0, 0, 0, 0.4),
    0 0 0 15px rgba(0, 0, 0, 0.1);
}

.togglebutton label input[type="checkbox"]:checked + .toggle:after {
  left: 15px;
}

.togglebutton label input[type="checkbox"]:checked + .toggle {
  background-color: rgba(156, 39, 176, 0.7);
}

.togglebutton label input[type="checkbox"]:checked + .toggle:after {
  border-color: #9c27b0;
}

.togglebutton label input[type="checkbox"]:checked + .toggle:active:after {
  box-shadow:
    0 1px 3px 1px rgba(0, 0, 0, 0.4),
    0 0 0 15px rgba(156, 39, 176, 0.1);
}

.radio label {
  cursor: pointer;
  padding-left: 35px;
  position: relative;
  color: rgba(0, 0, 0, 0.26);
}

.form-group.is-focused .radio label {
  color: rgba(0, 0, 0, 0.26);
}

.form-group.is-focused .radio label:hover,
.form-group.is-focused .radio label:focus {
  color: rgba(0, 0, 0, 0.54);
}

fieldset[disabled] .form-group.is-focused .radio label {
  color: rgba(0, 0, 0, 0.26);
}

.radio label span {
  display: block;
  position: absolute;
  left: 10px;
  top: 2px;
  transition-duration: 0.2s;
}

.radio label .circle {
  border: 1px solid rgba(0, 0, 0, 0.54);
  height: 15px;
  width: 15px;
  border-radius: 100%;
}

.radio label .check {
  height: 15px;
  width: 15px;
  border-radius: 100%;
  background-color: #9c27b0;
  transform: scale3d(0, 0, 0);
}

.radio label .check:after {
  display: block;
  position: absolute;
  content: "";
  background-color: rgba(0, 0, 0, 0.87);
  left: -18px;
  top: -18px;
  height: 50px;
  width: 50px;
  border-radius: 100%;
  z-index: 1;
  opacity: 0;
  margin: 0;
  transform: scale3d(1.5, 1.5, 1);
}

.radio label input[type="radio"]:not(:checked) ~ .check:after {
  animation: rippleOff 500ms;
}

.radio label input[type="radio"]:checked ~ .check:after {
  animation: rippleOn 500ms;
}

.radio input[type="radio"] {
  opacity: 0;
  height: 0;
  width: 0;
  overflow: hidden;
}

.radio input[type="radio"]:checked ~ .check,
.radio input[type="radio"]:checked ~ .circle {
  opacity: 1;
}

.radio input[type="radio"]:checked ~ .check {
  background-color: #9c27b0;
}

.radio input[type="radio"]:checked ~ .circle {
  border-color: #9c27b0;
}

.radio input[type="radio"]:checked ~ .check {
  transform: scale3d(0.65, 0.65, 1);
}

.radio input[type="radio"][disabled] ~ .check,
.radio input[type="radio"][disabled] ~ .circle {
  opacity: 0.26;
}

.radio input[type="radio"][disabled] ~ .check {
  background-color: #000;
}

.radio input[type="radio"][disabled] ~ .circle {
  border-color: #000;
}

@keyframes rippleOn {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 0.2;
  }
  100% {
    opacity: 0;
  }
}

@keyframes rippleOff {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 0.2;
  }
  100% {
    opacity: 0;
  }
}

legend {
  margin-bottom: 20px;
  font-size: 21px;
}

output {
  padding-top: 8px;
  font-size: 14px;
  line-height: 1.428571429;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  input[type="date"].form-control,
  input[type="time"].form-control,
  input[type="datetime-local"].form-control,
  input[type="month"].form-control {
    line-height: 36px;
  }
  input[type="date"].input-sm,
  .input-group-sm input[type="date"],
  input[type="time"].input-sm,
  .input-group-sm input[type="time"],
  input[type="datetime-local"].input-sm,
  .input-group-sm input[type="datetime-local"],
  input[type="month"].input-sm,
  .input-group-sm input[type="month"] {
    line-height: 24px;
  }
  input[type="date"].input-lg,
  .input-group-lg input[type="date"],
  input[type="time"].input-lg,
  .input-group-lg input[type="time"],
  input[type="datetime-local"].input-lg,
  .input-group-lg input[type="datetime-local"],
  input[type="month"].input-lg,
  .input-group-lg input[type="month"] {
    line-height: 44px;
  }
}

.radio label,
.checkbox label {
  min-height: 20px;
}

.form-control-static {
  padding-top: 8px;
  padding-bottom: 8px;
  min-height: 34px;
}

.input-sm .input-sm {
  height: 24px;
  padding: 3px 0;
  font-size: 11px;
  line-height: 1.5;
  border-radius: 0;
}

.input-sm select.input-sm {
  height: 24px;
  line-height: 24px;
}

.input-sm textarea.input-sm,
.input-sm select[multiple].input-sm {
  height: auto;
}

.form-group-sm .form-control {
  height: 24px;
  padding: 3px 0;
  font-size: 11px;
  line-height: 1.5;
}

.form-group-sm select.form-control {
  height: 24px;
  line-height: 24px;
}

.form-group-sm textarea.form-control,
.form-group-sm select[multiple].form-control {
  height: auto;
}

.form-group-sm .form-control-static {
  height: 24px;
  min-height: 31px;
  padding: 4px 0;
  font-size: 11px;
  line-height: 1.5;
}

.input-lg .input-lg {
  height: 44px;
  padding: 9px 0;
  font-size: 18px;
  line-height: 1.3333333;
  border-radius: 0;
}

.input-lg select.input-lg {
  height: 44px;
  line-height: 44px;
}

.input-lg textarea.input-lg,
.input-lg select[multiple].input-lg {
  height: auto;
}

.form-group-lg .form-control {
  height: 44px;
  padding: 9px 0;
  font-size: 18px;
  line-height: 1.3333333;
}

.form-group-lg select.form-control {
  height: 44px;
  line-height: 44px;
}

.form-group-lg textarea.form-control,
.form-group-lg select[multiple].form-control {
  height: auto;
}

.form-group-lg .form-control-static {
  height: 44px;
  min-height: 38px;
  padding: 10px 0;
  font-size: 18px;
  line-height: 1.3333333;
}

.form-horizontal .radio,
.form-horizontal .checkbox,
.form-horizontal .radio-inline,
.form-horizontal .checkbox-inline {
  padding-top: 8px;
}

.form-horizontal .radio,
.form-horizontal .checkbox {
  min-height: 28px;
}

.label {
  border-radius: 2px;
}

.label,
.label.label-default {
  background-color: #9e9e9e;
}

.label.label-inverse {
  background-color: #3f51b5;
}

.label.label-primary {
  background-color: #9c27b0;
}

.label.label-success {
  background-color: #4caf50;
}

.label.label-info {
  background-color: #03a9f4;
}

.label.label-warning {
  background-color: #fbc02d;
}

.label.label-danger {
  background-color: #f44336;
}

.form-control,
.form-group .form-control {
  border: 0;
  background-size:
    0 2px,
    100% 1px;
  background-repeat: no-repeat;
  background-position:
    center bottom,
    center calc(100% - 1px);
  background-color: transparent;
  transition: background 0s ease-out;
  float: none;
  box-shadow: none;
  border-radius: 0;
  font-weight: 400;
}

.form-control::-moz-placeholder,
.form-group .form-control::-moz-placeholder {
  color: #aaa;
  font-weight: 400;
}

.form-control:-ms-input-placeholder,
.form-group .form-control:-ms-input-placeholder {
  color: #aaa;
  font-weight: 400;
}

.form-control::-webkit-input-placeholder,
.form-group .form-control::-webkit-input-placeholder {
  color: #aaa;
  font-weight: 400;
}

.form-control[readonly],
.form-control[disabled],
fieldset[disabled] .form-control,
.form-group .form-control[readonly],
.form-group .form-control[disabled],
fieldset[disabled] .form-group .form-control {
  background-color: transparent;
}

.form-control[disabled],
fieldset[disabled] .form-control,
.form-group .form-control[disabled],
fieldset[disabled] .form-group .form-control {
  background-image: none;
  border-bottom: 1px dotted #d2d2d2;
}

.form-group.label-static label.control-label,
.form-group.label-placeholder label.control-label,
.form-group.label-floating label.control-label {
  position: absolute;
  pointer-events: none;
  transition: 0.3s ease all;
}

.form-group.label-floating label.control-label {
  will-change: left, top, contents;
}

.form-group.label-placeholder:not(.is-empty) label.control-label {
  display: none;
}

.form-group .help-block {
  position: absolute;
  display: none;
}

.form-group.is-focused .form-control {
  outline: none;
  background-image:
    linear-gradient(#9c27b0, #9c27b0), linear-gradient(#d2d2d2, #d2d2d2);
  background-size:
    100% 2px,
    100% 1px;
  box-shadow: none;
  transition-duration: 0.3s;
}

.form-group.is-focused .form-control .material-input:after {
  background-color: #9c27b0;
}

.form-group.is-focused label,
.form-group.is-focused label.control-label {
  color: #9c27b0;
}

.form-group.is-focused.label-placeholder label,
.form-group.is-focused.label-placeholder label.control-label {
  color: #aaa;
}

.form-group.is-focused .help-block {
  display: block;
}

.form-group.has-warning .form-control {
  box-shadow: none;
}

.form-group.has-warning.is-focused .form-control {
  background-image:
    linear-gradient(#fbc02d, #fbc02d), linear-gradient(#d2d2d2, #d2d2d2);
}

.form-group.has-warning label.control-label,
.form-group.has-warning .help-block {
  color: #fbc02d;
}

.form-group.has-error .form-control {
  box-shadow: none;
}

.form-group.has-error.is-focused .form-control {
  background-image:
    linear-gradient(#f44336, #f44336), linear-gradient(#d2d2d2, #d2d2d2);
}

.form-group.has-error label.control-label,
.form-group.has-error .help-block {
  color: #f44336;
}

.form-group.has-success .form-control {
  box-shadow: none;
}

.form-group.has-success.is-focused .form-control {
  background-image:
    linear-gradient(#4caf50, #4caf50), linear-gradient(#d2d2d2, #d2d2d2);
}

.form-group.has-success label.control-label,
.form-group.has-success .help-block {
  color: #4caf50;
}

.form-group.has-info .form-control {
  box-shadow: none;
}

.form-group.has-info.is-focused .form-control {
  background-image:
    linear-gradient(#03a9f4, #03a9f4), linear-gradient(#d2d2d2, #d2d2d2);
}

.form-group.has-info label.control-label,
.form-group.has-info .help-block {
  color: #03a9f4;
}

.form-group textarea {
  resize: none;
}

.form-group textarea ~ .form-control-highlight {
  margin-top: -11px;
}

.form-group select {
  appearance: none;
}

.form-group select ~ .material-input:after {
  display: none;
}

.form-control::-moz-placeholder {
  font-size: 14px;
  line-height: 1.428571429;
  color: #aaa;
  font-weight: 400;
}

.form-control:-ms-input-placeholder {
  font-size: 14px;
  line-height: 1.428571429;
  color: #aaa;
  font-weight: 400;
}

.form-control::-webkit-input-placeholder {
  font-size: 14px;
  line-height: 1.428571429;
  color: #aaa;
  font-weight: 400;
}

.checkbox label,
.radio label,
label {
  font-size: 14px;
  line-height: 1.428571429;
  color: #aaa;
  font-weight: 400;
}

label.control-label {
  font-size: 11px;
  line-height: 1.0714285718;
  color: #aaa;
  font-weight: 400;
  margin: 16px 0 0 0;
}

.help-block {
  margin-top: 0;
  font-size: 11px;
}

.form-group .form-control {
  margin-bottom: 7px;
}

.form-group .form-control::-moz-placeholder {
  font-size: 14px;
  line-height: 1.428571429;
  color: #aaa;
  font-weight: 400;
}

.form-group .form-control:-ms-input-placeholder {
  font-size: 14px;
  line-height: 1.428571429;
  color: #aaa;
  font-weight: 400;
}

.form-group .form-control::-webkit-input-placeholder {
  font-size: 14px;
  line-height: 1.428571429;
  color: #aaa;
  font-weight: 400;
}

.form-group .checkbox label,
.form-group .radio label,
.form-group label {
  font-size: 14px;
  line-height: 1.428571429;
  color: #aaa;
  font-weight: 400;
}

.form-group label.control-label {
  font-size: 11px;
  line-height: 1.0714285718;
  color: #aaa;
  font-weight: 400;
  margin: 16px 0 0 0;
}

.form-group .help-block {
  margin-top: 0;
  font-size: 11px;
}

.form-group.label-floating label.control-label,
.form-group.label-placeholder label.control-label {
  top: -7px;
  font-size: 14px;
  line-height: 1.428571429;
}

.form-group.label-static label.control-label,
.form-group.label-floating.is-focused label.control-label,
.form-group.label-floating:not(.is-empty) label.control-label {
  top: -28px;
  left: 0;
  font-size: 11px;
  line-height: 1.0714285718;
}

.form-group.label-floating
  input.form-control:-webkit-autofill
  ~ label.control-label
  label.control-label {
  top: -28px;
  left: 0;
  font-size: 11px;
  line-height: 1.0714285718;
}

.form-group.form-group-sm {
  padding-bottom: 3px;
  margin: 21px 0 0 0;
}

.form-group.form-group-sm .form-control {
  margin-bottom: 3px;
}

.form-group.form-group-sm .form-control::-moz-placeholder {
  font-size: 11px;
  line-height: 1.5;
  color: #aaa;
  font-weight: 400;
}

.form-group.form-group-sm .form-control:-ms-input-placeholder {
  font-size: 11px;
  line-height: 1.5;
  color: #aaa;
  font-weight: 400;
}

.form-group.form-group-sm .form-control::-webkit-input-placeholder {
  font-size: 11px;
  line-height: 1.5;
  color: #aaa;
  font-weight: 400;
}

.form-group.form-group-sm .checkbox label,
.form-group.form-group-sm .radio label,
.form-group.form-group-sm label {
  font-size: 11px;
  line-height: 1.5;
  color: #aaa;
  font-weight: 400;
}

.form-group.form-group-sm label.control-label {
  font-size: 9px;
  line-height: 1.125;
  color: #aaa;
  font-weight: 400;
  margin: 16px 0 0 0;
}

.form-group.form-group-sm .help-block {
  margin-top: 0;
  font-size: 9px;
}

.form-group.form-group-sm.label-floating label.control-label,
.form-group.form-group-sm.label-placeholder label.control-label {
  top: -11px;
  font-size: 11px;
  line-height: 1.5;
}

.form-group.form-group-sm.label-static label.control-label,
.form-group.form-group-sm.label-floating.is-focused label.control-label,
.form-group.form-group-sm.label-floating:not(.is-empty) label.control-label {
  top: -25px;
  left: 0;
  font-size: 9px;
  line-height: 1.125;
}

.form-group.form-group-sm.label-floating
  input.form-control:-webkit-autofill
  ~ label.control-label
  label.control-label {
  top: -25px;
  left: 0;
  font-size: 9px;
  line-height: 1.125;
}

.form-group.form-group-lg {
  padding-bottom: 9px;
  margin: 30px 0 0 0;
}

.form-group.form-group-lg .form-control {
  margin-bottom: 9px;
}

.form-group.form-group-lg .form-control::-moz-placeholder {
  font-size: 18px;
  line-height: 1.3333333;
  color: #aaa;
  font-weight: 400;
}

.form-group.form-group-lg .form-control:-ms-input-placeholder {
  font-size: 18px;
  line-height: 1.3333333;
  color: #aaa;
  font-weight: 400;
}

.form-group.form-group-lg .form-control::-webkit-input-placeholder {
  font-size: 18px;
  line-height: 1.3333333;
  color: #aaa;
  font-weight: 400;
}

.form-group.form-group-lg .checkbox label,
.form-group.form-group-lg .radio label,
.form-group.form-group-lg label {
  font-size: 18px;
  line-height: 1.3333333;
  color: #aaa;
  font-weight: 400;
}

.form-group.form-group-lg label.control-label {
  font-size: 14px;
  line-height: 0.999999975;
  color: #aaa;
  font-weight: 400;
  margin: 16px 0 0 0;
}

.form-group.form-group-lg .help-block {
  margin-top: 0;
  font-size: 14px;
}

.form-group.form-group-lg.label-floating label.control-label,
.form-group.form-group-lg.label-placeholder label.control-label {
  top: -5px;
  font-size: 18px;
  line-height: 1.3333333;
}

.form-group.form-group-lg.label-static label.control-label,
.form-group.form-group-lg.label-floating.is-focused label.control-label,
.form-group.form-group-lg.label-floating:not(.is-empty) label.control-label {
  top: -32px;
  left: 0;
  font-size: 14px;
  line-height: 0.999999975;
}

.form-group.form-group-lg.label-floating
  input.form-control:-webkit-autofill
  ~ label.control-label
  label.control-label {
  top: -32px;
  left: 0;
  font-size: 14px;
  line-height: 0.999999975;
}

.form-group.is-focused select.form-control {
  box-shadow: none;
  border-color: #d2d2d2;
}

select.form-control[multiple],
.form-group.is-focused select.form-control[multiple] {
  height: 85px;
}

.input-group-btn .btn {
  margin: 0 0 7px 0;
}

.form-group.form-group-sm .input-group-btn .btn {
  margin: 0 0 3px 0;
}

.form-group.form-group-lg .input-group-btn .btn {
  margin: 0 0 9px 0;
}

.input-group .input-group-btn {
  padding: 0 12px;
}

.input-group .input-group-addon {
  border: 0;
  background: transparent;
  padding: 12px 15px 0px;
}

.form-group input[type="file"] {
  opacity: 0;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 100;
}

.form-control-feedback {
  opacity: 0;
}

.has-success .form-control-feedback {
  color: #4caf50;
  opacity: 1;
}

.has-error .form-control-feedback {
  color: #f44336;
  opacity: 1;
}

legend {
  border-bottom: 0;
}

.progress {
  height: 4px;
  border-radius: 0;
  box-shadow: none;
  background: #dddddd;
}

.progress .progress-bar {
  box-shadow: none;
}

.progress .progress-bar,
.progress .progress-bar.progress-bar-default {
  background-color: #9c27b0;
}

.progress .progress-bar.progress-bar-inverse {
  background-color: #3f51b5;
}

.progress .progress-bar.progress-bar-primary {
  background-color: #9c27b0;
}

.progress .progress-bar.progress-bar-success {
  background-color: #4caf50;
}

.progress .progress-bar.progress-bar-info {
  background-color: #03a9f4;
}

.progress .progress-bar.progress-bar-warning {
  background-color: #fbc02d;
}

.progress .progress-bar.progress-bar-danger {
  background-color: #f44336;
}

.progress.progress-line-primary {
  background: rgba(156, 39, 176, 0.2);
}

.progress.progress-line-info {
  background: rgba(3, 169, 244, 0.2);
}

.progress.progress-line-success {
  background: rgba(76, 175, 80, 0.2);
}

.progress.progress-line-warning {
  background: rgba(251, 192, 45, 0.2);
}

.progress.progress-line-danger {
  background: rgba(244, 67, 54, 0.2);
}

h1,
.h1 {
  font-size: 3.8em;
  line-height: 1.15em;
}

h2,
.h2 {
  font-size: 2.6em;
}

h3,
.h3 {
  font-size: 1.825em;
  line-height: 1.4em;
  margin: 20px 0 10px;
}

h4,
.h4 {
  font-size: 1.3em;
  line-height: 1.4em;
}

h5,
.h5 {
  font-size: 1.25em;
  line-height: 1.4em;
  margin-bottom: 15px;
}

h6,
.h6 {
  font-size: 1em;
  text-transform: uppercase;
}

.popover,
.tooltip-inner {
  color: #555;
  line-height: 1.5em;
  background: #fff;
  border: none;
  border-radius: 3px;
  box-shadow:
    0 8px 10px 1px rgba(0, 0, 0, 0.14),
    0 3px 14px 2px rgba(0, 0, 0, 0.12),
    0 5px 5px -3px rgba(0, 0, 0, 0.2);
}

.popover {
  padding: 0;
  box-shadow:
    0 16px 24px 2px rgba(0, 0, 0, 0.14),
    0 6px 30px 5px rgba(0, 0, 0, 0.12),
    0 8px 10px -5px rgba(0, 0, 0, 0.2);
}

.popover.left > .arrow,
.popover.right > .arrow,
.popover.top > .arrow,
.popover.bottom > .arrow {
  border: none;
}

.popover-title {
  background-color: #fff;
  border: none;
  padding: 15px 15px 5px;
  font-size: 1.3em;
}

.popover-content {
  padding: 10px 15px 15px;
  line-height: 1.4;
}

.tooltip,
.tooltip.in {
  opacity: 1;
}

.tooltip.left .tooltip-arrow {
  border-left-color: #fff;
}

.tooltip.right .tooltip-arrow {
  border-right-color: #fff;
}

.tooltip.top .tooltip-arrow {
  border-top-color: #fff;
}

.tooltip.bottom .tooltip-arrow {
  border-bottom-color: #fff;
}

.tooltip-inner {
  padding: 10px 15px;
  min-width: 130px;
}

.card .card-height-indicator {
  margin-top: 100%;
}

.card .card-content {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

.card .card-image {
  height: 60%;
  position: relative;
  overflow: hidden;
}

.card .card-image img {
  width: 100%;
  height: 100%;
  border-top-left-radius: 2px;
  border-top-right-radius: 2px;
  pointer-events: none;
}

.card .card-image .card-image-headline {
  position: absolute;
  bottom: 16px;
  left: 18px;
  color: #fff;
  font-size: 2em;
}

.card .content {
  padding: 15px;
}

.card .card-body {
  height: 30%;
  padding: 18px;
}

.card .card-footer {
  height: 10%;
  padding: 18px;
}

.card .card-footer button,
.card .card-footer a {
  margin: 0 !important;
  position: relative;
  bottom: 25px;
  width: auto;
}

.card .card-footer button:first-child,
.card .card-footer a:first-child {
  left: -15px;
}

.card .header-primary {
  background: linear-gradient(60deg, #f15f79, #b24592);
}

.card .header-info {
  background: linear-gradient(60deg, #29b6f6, #0288d1);
}

.card .header-success {
  background: linear-gradient(60deg, #66bb6a, #388e3c);
}

.card .header-warning {
  background: linear-gradient(60deg, #fdd835, #fbc02d);
}

.card .header-danger {
  background: linear-gradient(60deg, #ef5350, #d32f2f);
}

.card [class*="header-"] {
  color: #ffffff;
}

.card-raised {
  box-shadow:
    0 16px 38px -12px rgba(0, 0, 0, 0.56),
    0 4px 25px 0px rgba(0, 0, 0, 0.12),
    0 8px 10px -5px rgba(0, 0, 0, 0.2);
}

.card-signup .header {
  box-shadow:
    0 16px 38px -12px rgba(0, 0, 0, 0.56),
    0 4px 25px 0px rgba(0, 0, 0, 0.12),
    0 8px 10px -5px rgba(0, 0, 0, 0.2);
  margin-left: 20px;
  margin-right: 20px;
  margin-top: -40px;
  padding: 20px 0;
}

.card-signup .text-divider {
  margin-top: 30px;
  margin-bottom: 0px;
  text-align: center;
}

.card-signup .content {
  padding: 0px 30px 0px 10px;
}

.card-signup .checkbox {
  margin-top: 20px;
}

.card-signup .checkbox label {
  margin-left: 17px;
}

.card-signup .checkbox .checkbox-material {
  padding-right: 12px;
}

.card-signup .social-line {
  margin-top: 15px;
  text-align: center;
}

.card-signup .social-line .btn {
  color: #fff;
  margin-left: 5px;
  margin-right: 5px;
}

.card-nav-tabs {
  margin-top: 45px;
}

.card-nav-tabs .header {
  margin-top: -30px;
}

.card-nav-tabs .nav-tabs {
  background: transparent;
}

.card-plain {
  background: transparent;
  box-shadow: none;
}

.card-plain .header {
  margin-left: 0;
  margin-right: 0;
}

.card-plain .content {
  padding-left: 0;
  padding-right: 0;
}

.panel {
  border-radius: 2px;
  border: 0;
  box-shadow:
    0 1px 6px 0 rgba(0, 0, 0, 0.12),
    0 1px 6px 0 rgba(0, 0, 0, 0.12);
}

.panel > .panel-heading,
.panel.panel-default > .panel-heading {
  background-color: #eee;
}

.panel.panel-inverse > .panel-heading {
  background-color: #3f51b5;
}

.panel.panel-primary > .panel-heading {
  background-color: #9c27b0;
}

.panel.panel-success > .panel-heading {
  background-color: #4caf50;
}

.panel.panel-info > .panel-heading {
  background-color: #03a9f4;
}

.panel.panel-warning > .panel-heading {
  background-color: #fbc02d;
}

.panel.panel-danger > .panel-heading {
  background-color: #f44336;
}

[class*="panel-"] > .panel-heading {
  color: #fff;
  border: 0;
}

.panel-default > .panel-heading,
.panel:not([class*="panel-"]) > .panel-heading {
  color: rgba(0, 0, 0, 0.87);
}

.panel-footer {
  background-color: #eee;
}

hr.on-dark {
  color: #1a1a1a;
}

hr.on-light {
  color: #fff;
}

@media (-webkit-min-device-pixel-ratio: 0.75),
  (min--moz-device-pixel-ratio: 0.75),
  (-o-device-pixel-ratio: 3 / 4),
  (min-device-pixel-ratio: 0.75),
  (min-resolution: 0.75dppx),
  (min-resolution: 120dpi) {
  hr {
    height: 0.75px;
  }
}

@media (-webkit-min-device-pixel-ratio: 1),
  (min--moz-device-pixel-ratio: 1),
  (-o-device-pixel-ratio: 1),
  (min-device-pixel-ratio: 1),
  (min-resolution: 1dppx),
  (min-resolution: 160dpi) {
  hr {
    height: 1px;
  }
}

@media (-webkit-min-device-pixel-ratio: 1.33),
  (min--moz-device-pixel-ratio: 1.33),
  (-o-device-pixel-ratio: 133 / 100),
  (min-device-pixel-ratio: 1.33),
  (min-resolution: 1.33dppx),
  (min-resolution: 213dpi) {
  hr {
    height: 1.333px;
  }
}

@media (-webkit-min-device-pixel-ratio: 1.5),
  (min--moz-device-pixel-ratio: 1.5),
  (-o-device-pixel-ratio: 3 / 2),
  (min-device-pixel-ratio: 1.5),
  (min-resolution: 1.5dppx),
  (min-resolution: 240dpi) {
  hr {
    height: 1.5px;
  }
}

@media (-webkit-min-device-pixel-ratio: 2),
  (min--moz-device-pixel-ratio: 2),
  (-o-device-pixel-ratio: 2 / 1),
  (min-device-pixel-ratio: 2),
  (min-resolution: 2dppx),
  (min-resolution: 380dpi) {
  hr {
    height: 2px;
  }
}

@media (-webkit-min-device-pixel-ratio: 3),
  (min--moz-device-pixel-ratio: 3),
  (-o-device-pixel-ratio: 3 / 1),
  (min-device-pixel-ratio: 3),
  (min-resolution: 3dppx),
  (min-resolution: 480dpi) {
  hr {
    height: 3px;
  }
}

@media (-webkit-min-device-pixel-ratio: 4),
  (min--moz-device-pixel-ratio: 4),
  (-o-device-pixel-ratio: 4 / 1),
  (min-device-pixel-ratio: 3),
  (min-resolution: 4dppx),
  (min-resolution: 640dpi) {
  hr {
    height: 4px;
  }
}

.img-raised {
  box-shadow:
    0 16px 38px -12px rgba(0, 0, 0, 0.56),
    0 4px 25px 0px rgba(0, 0, 0, 0.12),
    0 8px 10px -5px rgba(0, 0, 0, 0.2);
}

.section {
  padding: 70px 0;
}

.section-navbars {
  padding-bottom: 0;
}

.section-full-screen {
  height: 100vh;
}

.section-signup {
  padding-top: 20vh;
}

* {
  -webkit-tap-highlight-color: rgba(255, 255, 255, 0);
  -webkit-tap-highlight-color: transparent;
}

*:focus {
  outline: 0;
}

a:focus,
a:active,
button:active,
button:focus,
button:hover,
button::-moz-focus-inner,
input[type="reset"]::-moz-focus-inner,
input[type="button"]::-moz-focus-inner,
input[type="submit"]::-moz-focus-inner,
select::-moz-focus-inner,
input[type="file"] > input[type="button"]::-moz-focus-inner {
  outline: 0 !important;
}

.withripple {
  position: relative;
}

.ripple-container {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  overflow: hidden;
  border-radius: inherit;
  pointer-events: none;
}

.ripple {
  position: absolute;
  width: 20px;
  height: 20px;
  margin-left: -10px;
  margin-top: -10px;
  border-radius: 100%;
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.05);
  transform: scale(1);
  transform-origin: 50%;
  opacity: 0;
  pointer-events: none;
}

.ripple.ripple-on {
  transition:
    opacity 0.15s ease-in 0s,
    transform 0.5s cubic-bezier(0.4, 0, 0.2, 1) 0.1s;
  opacity: 0.1;
}

.ripple.ripple-out {
  transition: opacity 0.1s linear 0s !important;
  opacity: 0;
}

.wrapper > .header {
  min-height: 300px;
  background-position: center center;
  background-size: cover;
}

.main {
  background: #ffffff;
  position: relative;
  z-index: 3;
}

.main-raised {
  margin: -60px 30px 0px;
  border-radius: 6px;
  box-shadow:
    0 16px 24px 2px rgba(0, 0, 0, 0.14),
    0 6px 30px 5px rgba(0, 0, 0, 0.12),
    0 8px 10px -5px rgba(0, 0, 0, 0.2);
}

.title {
  font-weight: 500;
  color: #3c4858;
}

h2.title {
  margin-bottom: 30px;
}

.description {
  color: #999;
}

.header-filter {
  position: relative;
}

.header-filter:after {
  position: absolute;
  z-index: 1;
  width: 100%;
  height: 100%;
  display: block;
  left: 0;
  top: 0;
  content: "";
  background-color: rgba(0, 0, 0, 0.4);
}

.header-filter .container {
  z-index: 2;
  position: relative;
}

.gallery .image img {
  width: 100%;
}

.features {
  padding: 80px 0 0;
}

.features .feature {
  max-width: 360px;
  margin: 0 auto;
}

.features .feature > i {
  font-size: 60px;
}

.features .feature h4 {
  color: #3c4858;
  margin: 30px 0 15px;
}

.features .feature.feature-primary > i {
  color: #9c27b0;
}

.features .feature.feature-info > i {
  color: #03a9f4;
}

.features .feature.feature-success > i {
  color: #4caf50;
}

.features .feature.feature-warning > i {
  color: #fbc02d;
}

.features .feature.feature-danger > i {
  color: #f44336;
}

.team {
  margin-top: 80px;
}

.team .team-player .title {
  margin: 30px auto;
}

.team .team-player img {
  max-width: 170px;
}

.nav-align-center {
  text-align: center;
}

.nav-align-center .nav-pills {
  display: inline-block;
}

.navbar-absolute {
  position: absolute;
  width: 100%;
  padding-top: 10px;
  z-index: 1031;
}

.index-page .wrapper > .header {
  height: 90vh;
}

.index-page .brand {
  margin-top: 30vh;
  color: #ffffff;
  text-align: center;
}

.index-page .brand h1 {
  font-size: 4.8em;
  font-weight: 600;
}

.index-page .brand h3 {
  font-size: 1.5em;
  text-transform: uppercase;
  max-width: 400px;
  margin: 10px auto 0;
}

.index-page .section-basic {
  padding-top: 15px;
}

.index-page .header-filter:after {
  background: rgba(101, 47, 142, 0.64);
  background: linear-gradient(
    45deg,
    rgba(101, 47, 142, 0.88) 0%,
    rgba(125, 46, 185, 0.45) 100%
  );
  background: -moz-linear-gradient(
    135deg,
    rgba(101, 47, 142, 0.88) 0%,
    rgba(125, 46, 185, 0.45) 100%
  );
  background: -webkit-linear-gradient(
    135deg,
    rgba(101, 47, 142, 0.88) 0%,
    rgba(125, 46, 185, 0.45) 100%
  );
}

.landing-page .header {
  height: 100vh;
}

.landing-page .header .container {
  padding-top: 26vh;
  color: #ffffff;
}

.landing-page .header .share {
  margin-top: 150px;
}

.landing-page .header h1 {
  font-weight: 600;
}

.landing-page .header .title {
  color: #fff;
}

.landing-page .wrapper {
  background: #cccccc;
}

.profile-page .profile {
  text-align: center;
}

.profile-page .profile img {
  max-width: 160px;
  margin: -80px auto 0;
}

.profile-page .description {
  margin: 30px auto 0;
  max-width: 600px;
}

.profile-page .profile-tabs {
  margin-top: 60px;
}

.profile-page .gallery {
  margin-top: 45px;
  padding-bottom: 50px;
}

.profile-page .gallery img {
  width: 100%;
  margin-bottom: 30px;
}

.signup-page .wrapper > .header {
  min-height: 100vh;
}

.signup-page .wrapper .card-signup {
  margin: 160px 0 40px;
}

.signup-page .footer .copyright,
.signup-page .footer a {
  color: #ffffff;
}

.landing-page .navbar-transparent,
.profile-page .navbar-transparent,
.signup-page .navbar-transparent,
.index-page .navbar-transparent {
  padding-top: 25px;
}

[type="radio"]:not(:checked),
[type="radio"]:checked {
  position: absolute;
  left: -9999px;
  opacity: 0;
}

[type="radio"]:not(:checked) + label,
[type="radio"]:checked + label {
  position: relative;
  padding-left: 35px;
  cursor: pointer;
  display: inline-block;
  height: 25px;
  line-height: 25px;
  font-size: 1rem;
  transition: 0.28s ease;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

[type="radio"] + label:before,
[type="radio"] + label:after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  margin: 4px;
  width: 16px;
  height: 16px;
  z-index: 0;
  transition: 0.28s ease;
}

[type="radio"]:not(:checked) + label:before,
[type="radio"]:not(:checked) + label:after,
[type="radio"]:checked + label:before,
[type="radio"]:checked + label:after,
[type="radio"].with-gap:checked + label:before,
[type="radio"].with-gap:checked + label:after {
  border-radius: 50%;
}

[type="radio"]:not(:checked) + label:before,
[type="radio"]:not(:checked) + label:after {
  border: 2px solid #5a5a5a;
}

[type="radio"]:not(:checked) + label:after {
  z-index: -1;
  -webkit-transform: scale(0);
  transform: scale(0);
}

[type="radio"]:checked + label:before {
  border: 2px solid transparent;
}

[type="radio"]:checked + label:after,
[type="radio"].with-gap:checked + label:before,
[type="radio"].with-gap:checked + label:after {
  border: 2px solid #26a69a;
}

[type="radio"]:checked + label:after,
[type="radio"].with-gap:checked + label:after {
  background-color: #26a69a;
  z-index: 0;
}

[type="radio"]:checked + label:after {
  -webkit-transform: scale(1.02);
  transform: scale(1.02);
}

[type="radio"].with-gap:checked + label:after {
  -webkit-transform: scale(0.5);
  transform: scale(0.5);
}

[type="radio"].tabbed:focus + label:before {
  box-shadow: 0 0 0 10px rgba(0, 0, 0, 0.1);
}

[type="radio"].with-gap:disabled:checked + label:before {
  border: 2px solid rgba(0, 0, 0, 0.26);
}

[type="radio"].with-gap:disabled:checked + label:after {
  border: none;
  background-color: rgba(0, 0, 0, 0.26);
}

[type="radio"]:disabled:not(:checked) + label:before,
[type="radio"]:disabled:checked + label:before {
  background-color: transparent;
  border-color: rgba(0, 0, 0, 0.26);
}

[type="radio"]:disabled + label {
  color: rgba(0, 0, 0, 0.26);
}

[type="radio"]:disabled:not(:checked) + label:before {
  border-color: rgba(0, 0, 0, 0.26);
}

[type="radio"]:disabled:checked + label:after {
  background-color: rgba(0, 0, 0, 0.26);
  border-color: #bdbdbd;
}

form p {
  margin-bottom: 10px;
  text-align: left;
}

form p:last-child {
  margin-bottom: 0;
}

/* Material checkbox: el input real se oculta; el dibujo es label::before/after.
   Con left:-9999px el title del input no muestra tooltip al hover; se copia al label
   asociado vía /resources/js/colaby-checkbox-tooltips.js. Los .switch usan reglas propias. */
[type="checkbox"]:not(:checked),
[type="checkbox"]:checked {
  position: absolute;
  left: -9999px;
  opacity: 0;
}

[type="checkbox"] + label {
  position: relative;
  padding-left: 35px;
  cursor: pointer;
  display: inline-block;
  height: 25px;
  line-height: 25px;
  font-size: 1rem;
  -webkit-user-select: none;
  -moz-user-select: none;
  -khtml-user-select: none;
  -ms-user-select: none;
}

[type="checkbox"] + label:before,
[type="checkbox"]:not(.filled-in) + label:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 18px;
  height: 18px;
  z-index: 0;
  border: 2px solid #5a5a5a;
  border-radius: 1px;
  margin-top: 2px;
  transition: 0.2s;
}

[type="checkbox"]:not(.filled-in) + label:after {
  border: 0;
  -webkit-transform: scale(0);
  transform: scale(0);
}

[type="checkbox"]:not(:checked):disabled + label:before {
  border: none;
  background-color: rgba(0, 0, 0, 0.26);
}

[type="checkbox"].tabbed:focus + label:after {
  -webkit-transform: scale(1);
  transform: scale(1);
  border: 0;
  border-radius: 50%;
  box-shadow: 0 0 0 10px rgba(0, 0, 0, 0.1);
  background-color: rgba(0, 0, 0, 0.1);
}

[type="checkbox"]:checked + label:before {
  top: -4px;
  left: -5px;
  width: 12px;
  height: 22px;
  border-top: 2px solid transparent;
  border-left: 2px solid transparent;
  border-right: 2px solid #26a69a;
  border-bottom: 2px solid #26a69a;
  -webkit-transform: rotate(40deg);
  transform: rotate(40deg);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transform-origin: 100% 100%;
  transform-origin: 100% 100%;
}

[type="checkbox"]:checked:disabled + label:before {
  border-right: 2px solid rgba(0, 0, 0, 0.26);
  border-bottom: 2px solid rgba(0, 0, 0, 0.26);
}

[type="checkbox"]:indeterminate + label:before {
  top: -11px;
  left: -12px;
  width: 10px;
  height: 22px;
  border-top: none;
  border-left: none;
  border-right: 2px solid #26a69a;
  border-bottom: none;
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transform-origin: 100% 100%;
  transform-origin: 100% 100%;
}

[type="checkbox"]:indeterminate:disabled + label:before {
  border-right: 2px solid rgba(0, 0, 0, 0.26);
  background-color: transparent;
}

[type="checkbox"].filled-in + label:after {
  border-radius: 2px;
}

[type="checkbox"].filled-in + label:before,
[type="checkbox"].filled-in + label:after {
  content: "";
  left: 0;
  position: absolute;
  transition:
    border 0.25s,
    background-color 0.25s,
    width 0.2s 0.1s,
    height 0.2s 0.1s,
    top 0.2s 0.1s,
    left 0.2s 0.1s;
  z-index: 1;
}

[type="checkbox"].filled-in:not(:checked) + label:before {
  width: 0;
  height: 0;
  border: 3px solid transparent;
  left: 6px;
  top: 10px;
  -webkit-transform: rotateZ(37deg);
  transform: rotateZ(37deg);
  -webkit-transform-origin: 20% 40%;
  transform-origin: 100% 100%;
}

[type="checkbox"].filled-in:not(:checked) + label:after {
  height: 20px;
  width: 20px;
  background-color: transparent;
  border: 2px solid #5a5a5a;
  top: 0px;
  z-index: 0;
}

[type="checkbox"].filled-in:checked + label:before {
  top: 0;
  left: 1px;
  width: 8px;
  height: 13px;
  border-top: 2px solid transparent;
  border-left: 2px solid transparent;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  -webkit-transform: rotateZ(37deg);
  transform: rotateZ(37deg);
  -webkit-transform-origin: 100% 100%;
  transform-origin: 100% 100%;
}

[type="checkbox"].filled-in:checked + label:after {
  top: 0;
  width: 20px;
  height: 20px;
  border: 2px solid #26a69a;
  background-color: #26a69a;
  z-index: 0;
}

[type="checkbox"].filled-in.tabbed:focus + label:after {
  border-radius: 2px;
  border-color: #5a5a5a;
  background-color: rgba(0, 0, 0, 0.1);
}

[type="checkbox"].filled-in.tabbed:checked:focus + label:after {
  border-radius: 2px;
  background-color: #26a69a;
  border-color: #26a69a;
}

[type="checkbox"].filled-in:disabled:not(:checked) + label:before {
  background-color: transparent;
  border: 2px solid transparent;
}

[type="checkbox"].filled-in:disabled:not(:checked) + label:after {
  border-color: transparent;
  background-color: #bdbdbd;
}

[type="checkbox"].filled-in:disabled:checked + label:before {
  background-color: transparent;
}

[type="checkbox"].filled-in:disabled:checked + label:after {
  background-color: #bdbdbd;
  border-color: #bdbdbd;
}

.switch,
.switch * {
  -webkit-user-select: none;
  -moz-user-select: none;
  -khtml-user-select: none;
  -ms-user-select: none;
}

.switch label {
  position: relative;
  cursor: pointer;
}

/* Anular el recorte anterior: el interruptor queda bajo el label; área táctil/hover/title razonable */
.switch label input[type="checkbox"] {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 3.25rem;
  height: 2rem;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible;
  clip: auto;
  white-space: normal;
  border: 0;
  opacity: 0 !important;
  cursor: pointer;
  z-index: 2;
}

.switch label input[type="checkbox"]:checked + .lever {
  background-color: #84c7c1;
}

.switch label input[type="checkbox"]:checked + .lever:after {
  background-color: #26a69a;
  left: 24px;
}

.switch label .lever {
  content: "";
  display: inline-block;
  position: relative;
  width: 40px;
  height: 15px;
  background-color: #818181;
  border-radius: 15px;
  margin-right: 10px;
  transition: background 0.3s ease;
  vertical-align: middle;
  margin: 0 16px;
}

.switch label .lever:after {
  content: "";
  position: absolute;
  display: inline-block;
  width: 21px;
  height: 21px;
  background-color: #f1f1f1;
  border-radius: 21px;
  box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.4);
  left: -5px;
  top: -3px;
  transition:
    left 0.3s ease,
    background 0.3s ease,
    box-shadow 0.1s ease;
}

input[type="checkbox"]:checked:not(:disabled) ~ .lever:active::after,
input[type="checkbox"]:checked:not(:disabled).tabbed:focus ~ .lever::after {
  box-shadow:
    0 1px 3px 1px rgba(0, 0, 0, 0.4),
    0 0 0 15px rgba(38, 166, 154, 0.1);
}

input[type="checkbox"]:not(:disabled) ~ .lever:active:after,
input[type="checkbox"]:not(:disabled).tabbed:focus ~ .lever::after {
  box-shadow:
    0 1px 3px 1px rgba(0, 0, 0, 0.4),
    0 0 0 15px rgba(0, 0, 0, 0.08);
}

.switch input[type="checkbox"][disabled] + .lever {
  cursor: default;
}

.switch label input[type="checkbox"][disabled] + .lever:after,
.switch label input[type="checkbox"][disabled]:checked + .lever:after {
  background-color: #bdbdbd;
}

.zmdi {
  display: inline-block;
  font: normal normal normal 14px/1 "Material-Design-Iconic-Font";
  font-size: 18px;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.zmdi-hc-lg {
  font-size: 1.33333333em;
  line-height: 0.75em;
  vertical-align: -15%;
}

.zmdi-hc-2x {
  font-size: 2em;
}

.zmdi-hc-3x {
  font-size: 3em;
}

.zmdi-hc-4x {
  font-size: 4em;
}

.zmdi-hc-5x {
  font-size: 5em;
}

.zmdi-hc-fw {
  width: 1.28571429em;
  text-align: center;
}

.zmdi-hc-ul {
  padding-left: 0;
  margin-left: 2.14285714em;
  list-style-type: none;
}

.zmdi-hc-ul > li {
  position: relative;
}

.zmdi-hc-li {
  position: absolute;
  left: -2.14285714em;
  width: 2.14285714em;
  top: 0.14285714em;
  text-align: center;
}

.zmdi-hc-li.zmdi-hc-lg {
  left: -1.85714286em;
}

.zmdi-hc-border {
  padding: 0.1em 0.25em;
  border: solid 0.1em #9e9e9e;
  border-radius: 2px;
}

.zmdi-hc-border-circle {
  padding: 0.1em 0.25em;
  border: solid 0.1em #9e9e9e;
  border-radius: 50%;
}

.zmdi.pull-left {
  float: left;
  margin-right: 0.15em;
}

.zmdi.pull-right {
  float: right;
  margin-left: 0.15em;
}

.zmdi-hc-spin {
  -webkit-animation: zmdi-spin 1.5s infinite linear;
  animation: zmdi-spin 1.5s infinite linear;
}

.zmdi-hc-spin-reverse {
  -webkit-animation: zmdi-spin-reverse 1.5s infinite linear;
  animation: zmdi-spin-reverse 1.5s infinite linear;
}

@-webkit-keyframes zmdi-spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}

@keyframes zmdi-spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}

@-webkit-keyframes zmdi-spin-reverse {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(-359deg);
    transform: rotate(-359deg);
  }
}

@keyframes zmdi-spin-reverse {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(-359deg);
    transform: rotate(-359deg);
  }
}

.zmdi-hc-rotate-90 {
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}

.zmdi-hc-rotate-180 {
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
}

.zmdi-hc-rotate-270 {
  -webkit-transform: rotate(270deg);
  -ms-transform: rotate(270deg);
  transform: rotate(270deg);
}

.zmdi-hc-flip-horizontal {
  -webkit-transform: scale(-1, 1);
  -ms-transform: scale(-1, 1);
  transform: scale(-1, 1);
}

.zmdi-hc-flip-vertical {
  -webkit-transform: scale(1, -1);
  -ms-transform: scale(1, -1);
  transform: scale(1, -1);
}

.zmdi-hc-stack {
  position: relative;
  display: inline-block;
  width: 2em;
  height: 2em;
  line-height: 2em;
  vertical-align: middle;
}

.zmdi-hc-stack-1x,
.zmdi-hc-stack-2x {
  position: absolute;
  left: 0;
  width: 100%;
  text-align: center;
}

.zmdi-hc-stack-1x {
  line-height: inherit;
}

.zmdi-hc-stack-2x {
  font-size: 2em;
}

.zmdi-hc-inverse {
  color: #fff;
}

.zmdi-3d-rotation:before {
  content: "\f101";
}

.zmdi-airplane-off:before {
  content: "\f102";
}

.zmdi-airplane:before {
  content: "\f103";
}

.zmdi-album:before {
  content: "\f104";
}

.zmdi-archive:before {
  content: "\f105";
}

.zmdi-assignment-account:before {
  content: "\f106";
}

.zmdi-assignment-alert:before {
  content: "\f107";
}

.zmdi-assignment-check:before {
  content: "\f108";
}

.zmdi-assignment-o:before {
  content: "\f109";
}

.zmdi-assignment-return:before {
  content: "\f10a";
}

.zmdi-assignment-returned:before {
  content: "\f10b";
}

.zmdi-assignment:before {
  content: "\f10c";
}

.zmdi-attachment-alt:before {
  content: "\f10d";
}

.zmdi-attachment:before {
  content: "\f10e";
}

.zmdi-audio:before {
  content: "\f10f";
}

.zmdi-badge-check:before {
  content: "\f110";
}

.zmdi-balance-wallet:before {
  content: "\f111";
}

.zmdi-balance:before {
  content: "\f112";
}

.zmdi-battery-alert:before {
  content: "\f113";
}

.zmdi-battery-flash:before {
  content: "\f114";
}

.zmdi-battery-unknown:before {
  content: "\f115";
}

.zmdi-battery:before {
  content: "\f116";
}

.zmdi-bike:before {
  content: "\f117";
}

.zmdi-block-alt:before {
  content: "\f118";
}

.zmdi-block:before {
  content: "\f119";
}

.zmdi-boat:before {
  content: "\f11a";
}

.zmdi-book-image:before {
  content: "\f11b";
}

.zmdi-book:before {
  content: "\f11c";
}

.zmdi-bookmark-outline:before {
  content: "\f11d";
}

.zmdi-bookmark:before {
  content: "\f11e";
}

.zmdi-brush:before {
  content: "\f11f";
}

.zmdi-bug:before {
  content: "\f120";
}

.zmdi-bus:before {
  content: "\f121";
}

.zmdi-cake:before {
  content: "\f122";
}

.zmdi-car-taxi:before {
  content: "\f123";
}

.zmdi-car-wash:before {
  content: "\f124";
}

.zmdi-car:before {
  content: "\f125";
}

.zmdi-card-giftcard:before {
  content: "\f126";
}

.zmdi-card-membership:before {
  content: "\f127";
}

.zmdi-card-travel:before {
  content: "\f128";
}

.zmdi-card:before {
  content: "\f129";
}

.zmdi-case-check:before {
  content: "\f12a";
}

.zmdi-case-download:before {
  content: "\f12b";
}

.zmdi-case-play:before {
  content: "\f12c";
}

.zmdi-case:before {
  content: "\f12d";
}

.zmdi-cast-connected:before {
  content: "\f12e";
}

.zmdi-cast:before {
  content: "\f12f";
}

.zmdi-chart-donut:before {
  content: "\f130";
}

.zmdi-chart:before {
  content: "\f131";
}

.zmdi-city-alt:before {
  content: "\f132";
}

.zmdi-city:before {
  content: "\f133";
}

.zmdi-close-circle-o:before {
  content: "\f134";
}

.zmdi-close-circle:before {
  content: "\f135";
}

.zmdi-close:before {
  content: "\f136";
}

.zmdi-cocktail:before {
  content: "\f137";
}

.zmdi-code-setting:before {
  content: "\f138";
}

.zmdi-code-smartphone:before {
  content: "\f139";
}

.zmdi-code:before {
  content: "\f13a";
}

.zmdi-coffee:before {
  content: "\f13b";
}

.zmdi-collection-bookmark:before {
  content: "\f13c";
}

.zmdi-collection-case-play:before {
  content: "\f13d";
}

.zmdi-collection-folder-image:before {
  content: "\f13e";
}

.zmdi-collection-image-o:before {
  content: "\f13f";
}

.zmdi-collection-image:before {
  content: "\f140";
}

.zmdi-collection-item-1:before {
  content: "\f141";
}

.zmdi-collection-item-2:before {
  content: "\f142";
}

.zmdi-collection-item-3:before {
  content: "\f143";
}

.zmdi-collection-item-4:before {
  content: "\f144";
}

.zmdi-collection-item-5:before {
  content: "\f145";
}

.zmdi-collection-item-6:before {
  content: "\f146";
}

.zmdi-collection-item-7:before {
  content: "\f147";
}

.zmdi-collection-item-8:before {
  content: "\f148";
}

.zmdi-collection-item-9-plus:before {
  content: "\f149";
}

.zmdi-collection-item-9:before {
  content: "\f14a";
}

.zmdi-collection-item:before {
  content: "\f14b";
}

.zmdi-collection-music:before {
  content: "\f14c";
}

.zmdi-collection-pdf:before {
  content: "\f14d";
}

.zmdi-collection-plus:before {
  content: "\f14e";
}

.zmdi-collection-speaker:before {
  content: "\f14f";
}

.zmdi-collection-text:before {
  content: "\f150";
}

.zmdi-collection-video:before {
  content: "\f151";
}

.zmdi-compass:before {
  content: "\f152";
}

.zmdi-cutlery:before {
  content: "\f153";
}

.zmdi-delete:before {
  content: "\f154";
}

.zmdi-dialpad:before {
  content: "\f155";
}

.zmdi-dns:before {
  content: "\f156";
}

.zmdi-drink:before {
  content: "\f157";
}

.zmdi-edit:before {
  content: "\f158";
}

.zmdi-email-open:before {
  content: "\f159";
}

.zmdi-email:before {
  content: "\f15a";
}

.zmdi-eye-off:before {
  content: "\f15b";
}

.zmdi-eye:before {
  content: "\f15c";
}

.zmdi-eyedropper:before {
  content: "\f15d";
}

.zmdi-favorite-outline:before {
  content: "\f15e";
}

.zmdi-favorite:before {
  content: "\f15f";
}

.zmdi-filter-list:before {
  content: "\f160";
}

.zmdi-fire:before {
  content: "\f161";
}

.zmdi-flag:before {
  content: "\f162";
}

.zmdi-flare:before {
  content: "\f163";
}

.zmdi-flash-auto:before {
  content: "\f164";
}

.zmdi-flash-off:before {
  content: "\f165";
}

.zmdi-flash:before {
  content: "\f166";
}

.zmdi-flip:before {
  content: "\f167";
}

.zmdi-flower-alt:before {
  content: "\f168";
}

.zmdi-flower:before {
  content: "\f169";
}

.zmdi-font:before {
  content: "\f16a";
}

.zmdi-fullscreen-alt:before {
  content: "\f16b";
}

.zmdi-fullscreen-exit:before {
  content: "\f16c";
}

.zmdi-fullscreen:before {
  content: "\f16d";
}

.zmdi-functions:before {
  content: "\f16e";
}

.zmdi-gas-station:before {
  content: "\f16f";
}

.zmdi-gesture:before {
  content: "\f170";
}

.zmdi-globe-alt:before {
  content: "\f171";
}

.zmdi-globe-lock:before {
  content: "\f172";
}

.zmdi-globe:before {
  content: "\f173";
}

.zmdi-graduation-cap:before {
  content: "\f174";
}

.zmdi-home:before {
  content: "\f175";
}

.zmdi-hospital-alt:before {
  content: "\f176";
}

.zmdi-hospital:before {
  content: "\f177";
}

.zmdi-hotel:before {
  content: "\f178";
}

.zmdi-hourglass-alt:before {
  content: "\f179";
}

.zmdi-hourglass-outline:before {
  content: "\f17a";
}

.zmdi-hourglass:before {
  content: "\f17b";
}

.zmdi-http:before {
  content: "\f17c";
}

.zmdi-image-alt:before {
  content: "\f17d";
}

.zmdi-image-o:before {
  content: "\f17e";
}

.zmdi-image:before {
  content: "\f17f";
}

.zmdi-inbox:before {
  content: "\f180";
}

.zmdi-invert-colors-off:before {
  content: "\f181";
}

.zmdi-invert-colors:before {
  content: "\f182";
}

.zmdi-key:before {
  content: "\f183";
}

.zmdi-label-alt-outline:before {
  content: "\f184";
}

.zmdi-label-alt:before {
  content: "\f185";
}

.zmdi-label-heart:before {
  content: "\f186";
}

.zmdi-label:before {
  content: "\f187";
}

.zmdi-labels:before {
  content: "\f188";
}

.zmdi-lamp:before {
  content: "\f189";
}

.zmdi-landscape:before {
  content: "\f18a";
}

.zmdi-layers-off:before {
  content: "\f18b";
}

.zmdi-layers:before {
  content: "\f18c";
}

.zmdi-library:before {
  content: "\f18d";
}

.zmdi-link:before {
  content: "\f18e";
}

.zmdi-lock-open:before {
  content: "\f18f";
}

.zmdi-lock-outline:before {
  content: "\f190";
}

.zmdi-lock:before {
  content: "\f191";
}

.zmdi-mail-reply-all:before {
  content: "\f192";
}

.zmdi-mail-reply:before {
  content: "\f193";
}

.zmdi-mail-send:before {
  content: "\f194";
}

.zmdi-mall:before {
  content: "\f195";
}

.zmdi-map:before {
  content: "\f196";
}

.zmdi-menu:before {
  content: "\f197";
}

.zmdi-money-box:before {
  content: "\f198";
}

.zmdi-money-off:before {
  content: "\f199";
}

.zmdi-money:before {
  content: "\f19a";
}

.zmdi-more-vert:before {
  content: "\f19b";
}

.zmdi-more:before {
  content: "\f19c";
}

.zmdi-movie-alt:before {
  content: "\f19d";
}

.zmdi-movie:before {
  content: "\f19e";
}

.zmdi-nature-people:before {
  content: "\f19f";
}

.zmdi-nature:before {
  content: "\f1a0";
}

.zmdi-navigation:before {
  content: "\f1a1";
}

.zmdi-open-in-browser:before {
  content: "\f1a2";
}

.zmdi-open-in-new:before {
  content: "\f1a3";
}

.zmdi-palette:before {
  content: "\f1a4";
}

.zmdi-parking:before {
  content: "\f1a5";
}

.zmdi-pin-account:before {
  content: "\f1a6";
}

.zmdi-pin-assistant:before {
  content: "\f1a7";
}

.zmdi-pin-drop:before {
  content: "\f1a8";
}

.zmdi-pin-help:before {
  content: "\f1a9";
}

.zmdi-pin-off:before {
  content: "\f1aa";
}

.zmdi-pin:before {
  content: "\f1ab";
}

.zmdi-pizza:before {
  content: "\f1ac";
}

.zmdi-plaster:before {
  content: "\f1ad";
}

.zmdi-power-setting:before {
  content: "\f1ae";
}

.zmdi-power:before {
  content: "\f1af";
}

.zmdi-print:before {
  content: "\f1b0";
}

.zmdi-puzzle-piece:before {
  content: "\f1b1";
}

.zmdi-quote:before {
  content: "\f1b2";
}

.zmdi-railway:before {
  content: "\f1b3";
}

.zmdi-receipt:before {
  content: "\f1b4";
}

.zmdi-refresh-alt:before {
  content: "\f1b5";
}

.zmdi-refresh-sync-alert:before {
  content: "\f1b6";
}

.zmdi-refresh-sync-off:before {
  content: "\f1b7";
}

.zmdi-refresh-sync:before {
  content: "\f1b8";
}

.zmdi-refresh:before {
  content: "\f1b9";
}

.zmdi-roller:before {
  content: "\f1ba";
}

.zmdi-ruler:before {
  content: "\f1bb";
}

.zmdi-scissors:before {
  content: "\f1bc";
}

.zmdi-screen-rotation-lock:before {
  content: "\f1bd";
}

.zmdi-screen-rotation:before {
  content: "\f1be";
}

.zmdi-search-for:before {
  content: "\f1bf";
}

.zmdi-search-in-file:before {
  content: "\f1c0";
}

.zmdi-search-in-page:before {
  content: "\f1c1";
}

.zmdi-search-replace:before {
  content: "\f1c2";
}

.zmdi-search:before {
  content: "\f1c3";
}

.zmdi-seat:before {
  content: "\f1c4";
}

.zmdi-settings-square:before {
  content: "\f1c5";
}

.zmdi-settings:before {
  content: "\f1c6";
}

.zmdi-shield-check:before {
  content: "\f1c7";
}

.zmdi-shield-security:before {
  content: "\f1c8";
}

.zmdi-shopping-basket:before {
  content: "\f1c9";
}

.zmdi-shopping-cart-plus:before {
  content: "\f1ca";
}

.zmdi-shopping-cart:before {
  content: "\f1cb";
}

.zmdi-sign-in:before {
  content: "\f1cc";
}

.zmdi-sort-amount-asc:before {
  content: "\f1cd";
}

.zmdi-sort-amount-desc:before {
  content: "\f1ce";
}

.zmdi-sort-asc:before {
  content: "\f1cf";
}

.zmdi-sort-desc:before {
  content: "\f1d0";
}

.zmdi-spellcheck:before {
  content: "\f1d1";
}

.zmdi-storage:before {
  content: "\f1d2";
}

.zmdi-store-24:before {
  content: "\f1d3";
}

.zmdi-store:before {
  content: "\f1d4";
}

.zmdi-subway:before {
  content: "\f1d5";
}

.zmdi-sun:before {
  content: "\f1d6";
}

.zmdi-tab-unselected:before {
  content: "\f1d7";
}

.zmdi-tab:before {
  content: "\f1d8";
}

.zmdi-tag-close:before {
  content: "\f1d9";
}

.zmdi-tag-more:before {
  content: "\f1da";
}

.zmdi-tag:before {
  content: "\f1db";
}

.zmdi-thumb-down:before {
  content: "\f1dc";
}

.zmdi-thumb-up-down:before {
  content: "\f1dd";
}

.zmdi-thumb-up:before {
  content: "\f1de";
}

.zmdi-ticket-star:before {
  content: "\f1df";
}

.zmdi-toll:before {
  content: "\f1e0";
}

.zmdi-toys:before {
  content: "\f1e1";
}

.zmdi-traffic:before {
  content: "\f1e2";
}

.zmdi-translate:before {
  content: "\f1e3";
}

.zmdi-triangle-down:before {
  content: "\f1e4";
}

.zmdi-triangle-up:before {
  content: "\f1e5";
}

.zmdi-truck:before {
  content: "\f1e6";
}

.zmdi-turning-sign:before {
  content: "\f1e7";
}

.zmdi-wallpaper:before {
  content: "\f1e8";
}

.zmdi-washing-machine:before {
  content: "\f1e9";
}

.zmdi-window-maximize:before {
  content: "\f1ea";
}

.zmdi-window-minimize:before {
  content: "\f1eb";
}

.zmdi-window-restore:before {
  content: "\f1ec";
}

.zmdi-wrench:before {
  content: "\f1ed";
}

.zmdi-zoom-in:before {
  content: "\f1ee";
}

.zmdi-zoom-out:before {
  content: "\f1ef";
}

.zmdi-alert-circle-o:before {
  content: "\f1f0";
}

.zmdi-alert-circle:before {
  content: "\f1f1";
}

.zmdi-alert-octagon:before {
  content: "\f1f2";
}

.zmdi-alert-polygon:before {
  content: "\f1f3";
}

.zmdi-alert-triangle:before {
  content: "\f1f4";
}

.zmdi-help-outline:before {
  content: "\f1f5";
}

.zmdi-help:before {
  content: "\f1f6";
}

.zmdi-info-outline:before {
  content: "\f1f7";
}

.zmdi-info:before {
  content: "\f1f8";
}

.zmdi-notifications-active:before {
  content: "\f1f9";
}

.zmdi-notifications-add:before {
  content: "\f1fa";
}

.zmdi-notifications-none:before {
  content: "\f1fb";
}

.zmdi-notifications-off:before {
  content: "\f1fc";
}

.zmdi-notifications-paused:before {
  content: "\f1fd";
}

.zmdi-notifications:before {
  content: "\f1fe";
}

.zmdi-account-add:before {
  content: "\f1ff";
}

.zmdi-account-box-mail:before {
  content: "\f200";
}

.zmdi-account-box-o:before {
  content: "\f201";
}

.zmdi-account-box-phone:before {
  content: "\f202";
}

.zmdi-account-box:before {
  content: "\f203";
}

.zmdi-account-calendar:before {
  content: "\f204";
}

.zmdi-account-circle:before {
  content: "\f205";
}

.zmdi-account-o:before {
  content: "\f206";
}

.zmdi-account:before {
  content: "\f207";
}

.zmdi-accounts-add:before {
  content: "\f208";
}

.zmdi-accounts-alt:before {
  content: "\f209";
}

.zmdi-accounts-list-alt:before {
  content: "\f20a";
}

.zmdi-accounts-list:before {
  content: "\f20b";
}

.zmdi-accounts-outline:before {
  content: "\f20c";
}

.zmdi-accounts:before {
  content: "\f20d";
}

.zmdi-face:before {
  content: "\f20e";
}

.zmdi-female:before {
  content: "\f20f";
}

.zmdi-male-alt:before {
  content: "\f210";
}

.zmdi-male-female:before {
  content: "\f211";
}

.zmdi-male:before {
  content: "\f212";
}

.zmdi-mood-bad:before {
  content: "\f213";
}

.zmdi-mood:before {
  content: "\f214";
}

.zmdi-run:before {
  content: "\f215";
}

.zmdi-walk:before {
  content: "\f216";
}

.zmdi-cloud-box:before {
  content: "\f217";
}

.zmdi-cloud-circle:before {
  content: "\f218";
}

.zmdi-cloud-done:before {
  content: "\f219";
}

.zmdi-cloud-download:before {
  content: "\f21a";
}

.zmdi-cloud-off:before {
  content: "\f21b";
}

.zmdi-cloud-outline-alt:before {
  content: "\f21c";
}

.zmdi-cloud-outline:before {
  content: "\f21d";
}

.zmdi-cloud-upload:before {
  content: "\f21e";
}

.zmdi-cloud:before {
  content: "\f21f";
}

.zmdi-download:before {
  content: "\f220";
}

.zmdi-file-plus:before {
  content: "\f221";
}

.zmdi-file-text:before {
  content: "\f222";
}

.zmdi-file:before {
  content: "\f223";
}

.zmdi-folder-outline:before {
  content: "\f224";
}

.zmdi-folder-person:before {
  content: "\f225";
}

.zmdi-folder-star-alt:before {
  content: "\f226";
}

.zmdi-folder-star:before {
  content: "\f227";
}

.zmdi-folder:before {
  content: "\f228";
}

.zmdi-gif:before {
  content: "\f229";
}

.zmdi-upload:before {
  content: "\f22a";
}

.zmdi-border-all:before {
  content: "\f22b";
}

.zmdi-border-bottom:before {
  content: "\f22c";
}

.zmdi-border-clear:before {
  content: "\f22d";
}

.zmdi-border-color:before {
  content: "\f22e";
}

.zmdi-border-horizontal:before {
  content: "\f22f";
}

.zmdi-border-inner:before {
  content: "\f230";
}

.zmdi-border-left:before {
  content: "\f231";
}

.zmdi-border-outer:before {
  content: "\f232";
}

.zmdi-border-right:before {
  content: "\f233";
}

.zmdi-border-style:before {
  content: "\f234";
}

.zmdi-border-top:before {
  content: "\f235";
}

.zmdi-border-vertical:before {
  content: "\f236";
}

.zmdi-copy:before {
  content: "\f237";
}

.zmdi-crop:before {
  content: "\f238";
}

.zmdi-format-align-center:before {
  content: "\f239";
}

.zmdi-format-align-justify:before {
  content: "\f23a";
}

.zmdi-format-align-left:before {
  content: "\f23b";
}

.zmdi-format-align-right:before {
  content: "\f23c";
}

.zmdi-format-bold:before {
  content: "\f23d";
}

.zmdi-format-clear-all:before {
  content: "\f23e";
}

.zmdi-format-clear:before {
  content: "\f23f";
}

.zmdi-format-color-fill:before {
  content: "\f240";
}

.zmdi-format-color-reset:before {
  content: "\f241";
}

.zmdi-format-color-text:before {
  content: "\f242";
}

.zmdi-format-indent-decrease:before {
  content: "\f243";
}

.zmdi-format-indent-increase:before {
  content: "\f244";
}

.zmdi-format-italic:before {
  content: "\f245";
}

.zmdi-format-line-spacing:before {
  content: "\f246";
}

.zmdi-format-list-bulleted:before {
  content: "\f247";
}

.zmdi-format-list-numbered:before {
  content: "\f248";
}

.zmdi-format-ltr:before {
  content: "\f249";
}

.zmdi-format-rtl:before {
  content: "\f24a";
}

.zmdi-format-size:before {
  content: "\f24b";
}

.zmdi-format-strikethrough-s:before {
  content: "\f24c";
}

.zmdi-format-strikethrough:before {
  content: "\f24d";
}

.zmdi-format-subject:before {
  content: "\f24e";
}

.zmdi-format-underlined:before {
  content: "\f24f";
}

.zmdi-format-valign-bottom:before {
  content: "\f250";
}

.zmdi-format-valign-center:before {
  content: "\f251";
}

.zmdi-format-valign-top:before {
  content: "\f252";
}

.zmdi-redo:before {
  content: "\f253";
}

.zmdi-select-all:before {
  content: "\f254";
}

.zmdi-space-bar:before {
  content: "\f255";
}

.zmdi-text-format:before {
  content: "\f256";
}

.zmdi-transform:before {
  content: "\f257";
}

.zmdi-undo:before {
  content: "\f258";
}

.zmdi-wrap-text:before {
  content: "\f259";
}

.zmdi-comment-alert:before {
  content: "\f25a";
}

.zmdi-comment-alt-text:before {
  content: "\f25b";
}

.zmdi-comment-alt:before {
  content: "\f25c";
}

.zmdi-comment-edit:before {
  content: "\f25d";
}

.zmdi-comment-image:before {
  content: "\f25e";
}

.zmdi-comment-list:before {
  content: "\f25f";
}

.zmdi-comment-more:before {
  content: "\f260";
}

.zmdi-comment-outline:before {
  content: "\f261";
}

.zmdi-comment-text-alt:before {
  content: "\f262";
}

.zmdi-comment-text:before {
  content: "\f263";
}

.zmdi-comment-video:before {
  content: "\f264";
}

.zmdi-comment:before {
  content: "\f265";
}

.zmdi-comments:before {
  content: "\f266";
}

.zmdi-check-all:before {
  content: "\f267";
}

.zmdi-check-circle-u:before {
  content: "\f268";
}

.zmdi-check-circle:before {
  content: "\f269";
}

.zmdi-check-square:before {
  content: "\f26a";
}

.zmdi-check:before {
  content: "\f26b";
}

.zmdi-circle-o:before {
  content: "\f26c";
}

.zmdi-circle:before {
  content: "\f26d";
}

.zmdi-dot-circle-alt:before {
  content: "\f26e";
}

.zmdi-dot-circle:before {
  content: "\f26f";
}

.zmdi-minus-circle-outline:before {
  content: "\f270";
}

.zmdi-minus-circle:before {
  content: "\f271";
}

.zmdi-minus-square:before {
  content: "\f272";
}

.zmdi-minus:before {
  content: "\f273";
}

.zmdi-plus-circle-o-duplicate:before {
  content: "\f274";
}

.zmdi-plus-circle-o:before {
  content: "\f275";
}

.zmdi-plus-circle:before {
  content: "\f276";
}

.zmdi-plus-square:before {
  content: "\f277";
}

.zmdi-plus:before {
  content: "\f278";
}

.zmdi-square-o:before {
  content: "\f279";
}

.zmdi-star-circle:before {
  content: "\f27a";
}

.zmdi-star-half:before {
  content: "\f27b";
}

.zmdi-star-outline:before {
  content: "\f27c";
}

.zmdi-star:before {
  content: "\f27d";
}

.zmdi-bluetooth-connected:before {
  content: "\f27e";
}

.zmdi-bluetooth-off:before {
  content: "\f27f";
}

.zmdi-bluetooth-search:before {
  content: "\f280";
}

.zmdi-bluetooth-setting:before {
  content: "\f281";
}

.zmdi-bluetooth:before {
  content: "\f282";
}

.zmdi-camera-add:before {
  content: "\f283";
}

.zmdi-camera-alt:before {
  content: "\f284";
}

.zmdi-camera-bw:before {
  content: "\f285";
}

.zmdi-camera-front:before {
  content: "\f286";
}

.zmdi-camera-mic:before {
  content: "\f287";
}

.zmdi-camera-party-mode:before {
  content: "\f288";
}

.zmdi-camera-rear:before {
  content: "\f289";
}

.zmdi-camera-roll:before {
  content: "\f28a";
}

.zmdi-camera-switch:before {
  content: "\f28b";
}

.zmdi-camera:before {
  content: "\f28c";
}

.zmdi-card-alert:before {
  content: "\f28d";
}

.zmdi-card-off:before {
  content: "\f28e";
}

.zmdi-card-sd:before {
  content: "\f28f";
}

.zmdi-card-sim:before {
  content: "\f290";
}

.zmdi-desktop-mac:before {
  content: "\f291";
}

.zmdi-desktop-windows:before {
  content: "\f292";
}

.zmdi-device-hub:before {
  content: "\f293";
}

.zmdi-devices-off:before {
  content: "\f294";
}

.zmdi-devices:before {
  content: "\f295";
}

.zmdi-dock:before {
  content: "\f296";
}

.zmdi-floppy:before {
  content: "\f297";
}

.zmdi-gamepad:before {
  content: "\f298";
}

.zmdi-gps-dot:before {
  content: "\f299";
}

.zmdi-gps-off:before {
  content: "\f29a";
}

.zmdi-gps:before {
  content: "\f29b";
}

.zmdi-headset-mic:before {
  content: "\f29c";
}

.zmdi-headset:before {
  content: "\f29d";
}

.zmdi-input-antenna:before {
  content: "\f29e";
}

.zmdi-input-composite:before {
  content: "\f29f";
}

.zmdi-input-hdmi:before {
  content: "\f2a0";
}

.zmdi-input-power:before {
  content: "\f2a1";
}

.zmdi-input-svideo:before {
  content: "\f2a2";
}

.zmdi-keyboard-hide:before {
  content: "\f2a3";
}

.zmdi-keyboard:before {
  content: "\f2a4";
}

.zmdi-laptop-chromebook:before {
  content: "\f2a5";
}

.zmdi-laptop-mac:before {
  content: "\f2a6";
}

.zmdi-laptop:before {
  content: "\f2a7";
}

.zmdi-mic-off:before {
  content: "\f2a8";
}

.zmdi-mic-outline:before {
  content: "\f2a9";
}

.zmdi-mic-setting:before {
  content: "\f2aa";
}

.zmdi-mic:before {
  content: "\f2ab";
}

.zmdi-mouse:before {
  content: "\f2ac";
}

.zmdi-network-alert:before {
  content: "\f2ad";
}

.zmdi-network-locked:before {
  content: "\f2ae";
}

.zmdi-network-off:before {
  content: "\f2af";
}

.zmdi-network-outline:before {
  content: "\f2b0";
}

.zmdi-network-setting:before {
  content: "\f2b1";
}

.zmdi-network:before {
  content: "\f2b2";
}

.zmdi-phone-bluetooth:before {
  content: "\f2b3";
}

.zmdi-phone-end:before {
  content: "\f2b4";
}

.zmdi-phone-forwarded:before {
  content: "\f2b5";
}

.zmdi-phone-in-talk:before {
  content: "\f2b6";
}

.zmdi-phone-locked:before {
  content: "\f2b7";
}

.zmdi-phone-missed:before {
  content: "\f2b8";
}

.zmdi-phone-msg:before {
  content: "\f2b9";
}

.zmdi-phone-paused:before {
  content: "\f2ba";
}

.zmdi-phone-ring:before {
  content: "\f2bb";
}

.zmdi-phone-setting:before {
  content: "\f2bc";
}

.zmdi-phone-sip:before {
  content: "\f2bd";
}

.zmdi-phone:before {
  content: "\f2be";
}

.zmdi-portable-wifi-changes:before {
  content: "\f2bf";
}

.zmdi-portable-wifi-off:before {
  content: "\f2c0";
}

.zmdi-portable-wifi:before {
  content: "\f2c1";
}

.zmdi-radio:before {
  content: "\f2c2";
}

.zmdi-reader:before {
  content: "\f2c3";
}

.zmdi-remote-control-alt:before {
  content: "\f2c4";
}

.zmdi-remote-control:before {
  content: "\f2c5";
}

.zmdi-router:before {
  content: "\f2c6";
}

.zmdi-scanner:before {
  content: "\f2c7";
}

.zmdi-smartphone-android:before {
  content: "\f2c8";
}

.zmdi-smartphone-download:before {
  content: "\f2c9";
}

.zmdi-smartphone-erase:before {
  content: "\f2ca";
}

.zmdi-smartphone-info:before {
  content: "\f2cb";
}

.zmdi-smartphone-iphone:before {
  content: "\f2cc";
}

.zmdi-smartphone-landscape-lock:before {
  content: "\f2cd";
}

.zmdi-smartphone-landscape:before {
  content: "\f2ce";
}

.zmdi-smartphone-lock:before {
  content: "\f2cf";
}

.zmdi-smartphone-portrait-lock:before {
  content: "\f2d0";
}

.zmdi-smartphone-ring:before {
  content: "\f2d1";
}

.zmdi-smartphone-setting:before {
  content: "\f2d2";
}

.zmdi-smartphone-setup:before {
  content: "\f2d3";
}

.zmdi-smartphone:before {
  content: "\f2d4";
}

.zmdi-speaker:before {
  content: "\f2d5";
}

.zmdi-tablet-android:before {
  content: "\f2d6";
}

.zmdi-tablet-mac:before {
  content: "\f2d7";
}

.zmdi-tablet:before {
  content: "\f2d8";
}

.zmdi-tv-alt-play:before {
  content: "\f2d9";
}

.zmdi-tv-list:before {
  content: "\f2da";
}

.zmdi-tv-play:before {
  content: "\f2db";
}

.zmdi-tv:before {
  content: "\f2dc";
}

.zmdi-usb:before {
  content: "\f2dd";
}

.zmdi-videocam-off:before {
  content: "\f2de";
}

.zmdi-videocam-switch:before {
  content: "\f2df";
}

.zmdi-videocam:before {
  content: "\f2e0";
}

.zmdi-watch:before {
  content: "\f2e1";
}

.zmdi-wifi-alt-2:before {
  content: "\f2e2";
}

.zmdi-wifi-alt:before {
  content: "\f2e3";
}

.zmdi-wifi-info:before {
  content: "\f2e4";
}

.zmdi-wifi-lock:before {
  content: "\f2e5";
}

.zmdi-wifi-off:before {
  content: "\f2e6";
}

.zmdi-wifi-outline:before {
  content: "\f2e7";
}

.zmdi-wifi:before {
  content: "\f2e8";
}

.zmdi-arrow-left-bottom:before {
  content: "\f2e9";
}

.zmdi-arrow-left:before {
  content: "\f2ea";
}

.zmdi-arrow-merge:before {
  content: "\f2eb";
}

.zmdi-arrow-missed:before {
  content: "\f2ec";
}

.zmdi-arrow-right-top:before {
  content: "\f2ed";
}

.zmdi-arrow-right:before {
  content: "\f2ee";
}

.zmdi-arrow-split:before {
  content: "\f2ef";
}

.zmdi-arrows:before {
  content: "\f2f0";
}

.zmdi-caret-down-circle:before {
  content: "\f2f1";
}

.zmdi-caret-down:before {
  content: "\f2f2";
}

.zmdi-caret-left-circle:before {
  content: "\f2f3";
}

.zmdi-caret-left:before {
  content: "\f2f4";
}

.zmdi-caret-right-circle:before {
  content: "\f2f5";
}

.zmdi-caret-right:before {
  content: "\f2f6";
}

.zmdi-caret-up-circle:before {
  content: "\f2f7";
}

.zmdi-caret-up:before {
  content: "\f2f8";
}

.zmdi-chevron-down:before {
  content: "\f2f9";
}

.zmdi-chevron-left:before {
  content: "\f2fa";
}

.zmdi-chevron-right:before {
  content: "\f2fb";
}

.zmdi-chevron-up:before {
  content: "\f2fc";
}

.zmdi-forward:before {
  content: "\f2fd";
}

.zmdi-long-arrow-down:before {
  content: "\f2fe";
}

.zmdi-long-arrow-left:before {
  content: "\f2ff";
}

.zmdi-long-arrow-return:before {
  content: "\f300";
}

.zmdi-long-arrow-right:before {
  content: "\f301";
}

.zmdi-long-arrow-tab:before {
  content: "\f302";
}

.zmdi-long-arrow-up:before {
  content: "\f303";
}

.zmdi-rotate-ccw:before {
  content: "\f304";
}

.zmdi-rotate-cw:before {
  content: "\f305";
}

.zmdi-rotate-left:before {
  content: "\f306";
}

.zmdi-rotate-right:before {
  content: "\f307";
}

.zmdi-square-down:before {
  content: "\f308";
}

.zmdi-square-right:before {
  content: "\f309";
}

.zmdi-swap-alt:before {
  content: "\f30a";
}

.zmdi-swap-vertical-circle:before {
  content: "\f30b";
}

.zmdi-swap-vertical:before {
  content: "\f30c";
}

.zmdi-swap:before {
  content: "\f30d";
}

.zmdi-trending-down:before {
  content: "\f30e";
}

.zmdi-trending-flat:before {
  content: "\f30f";
}

.zmdi-trending-up:before {
  content: "\f310";
}

.zmdi-unfold-less:before {
  content: "\f311";
}

.zmdi-unfold-more:before {
  content: "\f312";
}

.zmdi-apps:before {
  content: "\f313";
}

.zmdi-grid-off:before {
  content: "\f314";
}

.zmdi-grid:before {
  content: "\f315";
}

.zmdi-view-agenda:before {
  content: "\f316";
}

.zmdi-view-array:before {
  content: "\f317";
}

.zmdi-view-carousel:before {
  content: "\f318";
}

.zmdi-view-column:before {
  content: "\f319";
}

.zmdi-view-comfy:before {
  content: "\f31a";
}

.zmdi-view-compact:before {
  content: "\f31b";
}

.zmdi-view-dashboard:before {
  content: "\f31c";
}

.zmdi-view-day:before {
  content: "\f31d";
}

.zmdi-view-headline:before {
  content: "\f31e";
}

.zmdi-view-list-alt:before {
  content: "\f31f";
}

.zmdi-view-list:before {
  content: "\f320";
}

.zmdi-view-module:before {
  content: "\f321";
}

.zmdi-view-quilt:before {
  content: "\f322";
}

.zmdi-view-stream:before {
  content: "\f323";
}

.zmdi-view-subtitles:before {
  content: "\f324";
}

.zmdi-view-toc:before {
  content: "\f325";
}

.zmdi-view-web:before {
  content: "\f326";
}

.zmdi-view-week:before {
  content: "\f327";
}

.zmdi-widgets:before {
  content: "\f328";
}

.zmdi-alarm-check:before {
  content: "\f329";
}

.zmdi-alarm-off:before {
  content: "\f32a";
}

.zmdi-alarm-plus:before {
  content: "\f32b";
}

.zmdi-alarm-snooze:before {
  content: "\f32c";
}

.zmdi-alarm:before {
  content: "\f32d";
}

.zmdi-calendar-alt:before {
  content: "\f32e";
}

.zmdi-calendar-check:before {
  content: "\f32f";
}

.zmdi-calendar-close:before {
  content: "\f330";
}

.zmdi-calendar-note:before {
  content: "\f331";
}

.zmdi-calendar:before {
  content: "\f332";
}

.zmdi-time-countdown:before {
  content: "\f333";
}

.zmdi-time-interval:before {
  content: "\f334";
}

.zmdi-time-restore-setting:before {
  content: "\f335";
}

.zmdi-time-restore:before {
  content: "\f336";
}

.zmdi-time:before {
  content: "\f337";
}

.zmdi-timer-off:before {
  content: "\f338";
}

.zmdi-timer:before {
  content: "\f339";
}

.zmdi-android-alt:before {
  content: "\f33a";
}

.zmdi-android:before {
  content: "\f33b";
}

.zmdi-apple:before {
  content: "\f33c";
}

.zmdi-behance:before {
  content: "\f33d";
}

.zmdi-codepen:before {
  content: "\f33e";
}

.zmdi-dribbble:before {
  content: "\f33f";
}

.zmdi-dropbox:before {
  content: "\f340";
}

.zmdi-evernote:before {
  content: "\f341";
}

.zmdi-facebook-box:before {
  content: "\f342";
}

.zmdi-facebook:before {
  content: "\f343";
}

.zmdi-github-box:before {
  content: "\f344";
}

.zmdi-github:before {
  content: "\f345";
}

.zmdi-google-drive:before {
  content: "\f346";
}

.zmdi-google-earth:before {
  content: "\f347";
}

.zmdi-google-glass:before {
  content: "\f348";
}

.zmdi-google-maps:before {
  content: "\f349";
}

.zmdi-google-pages:before {
  content: "\f34a";
}

.zmdi-google-play:before {
  content: "\f34b";
}

.zmdi-google-plus-box:before {
  content: "\f34c";
}

.zmdi-google-plus:before {
  content: "\f34d";
}

.zmdi-google:before {
  content: "\f34e";
}

.zmdi-instagram:before {
  content: "\f34f";
}

.zmdi-language-css3:before {
  content: "\f350";
}

.zmdi-language-html5:before {
  content: "\f351";
}

.zmdi-language-javascript:before {
  content: "\f352";
}

.zmdi-language-python-alt:before {
  content: "\f353";
}

.zmdi-language-python:before {
  content: "\f354";
}

.zmdi-lastfm:before {
  content: "\f355";
}

.zmdi-linkedin-box:before {
  content: "\f356";
}

.zmdi-paypal:before {
  content: "\f357";
}

.zmdi-pinterest-box:before {
  content: "\f358";
}

.zmdi-pocket:before {
  content: "\f359";
}

.zmdi-polymer:before {
  content: "\f35a";
}

.zmdi-share:before {
  content: "\f35b";
}

.zmdi-stackoverflow:before {
  content: "\f35c";
}

.zmdi-steam-square:before {
  content: "\f35d";
}

.zmdi-steam:before {
  content: "\f35e";
}

.zmdi-twitter-box:before {
  content: "\f35f";
}

.zmdi-twitter:before {
  content: "\f360";
}

.zmdi-vk:before {
  content: "\f361";
}

.zmdi-wikipedia:before {
  content: "\f362";
}

.zmdi-windows:before {
  content: "\f363";
}

.zmdi-aspect-ratio-alt:before {
  content: "\f364";
}

.zmdi-aspect-ratio:before {
  content: "\f365";
}

.zmdi-blur-circular:before {
  content: "\f366";
}

.zmdi-blur-linear:before {
  content: "\f367";
}

.zmdi-blur-off:before {
  content: "\f368";
}

.zmdi-blur:before {
  content: "\f369";
}

.zmdi-brightness-2:before {
  content: "\f36a";
}

.zmdi-brightness-3:before {
  content: "\f36b";
}

.zmdi-brightness-4:before {
  content: "\f36c";
}

.zmdi-brightness-5:before {
  content: "\f36d";
}

.zmdi-brightness-6:before {
  content: "\f36e";
}

.zmdi-brightness-7:before {
  content: "\f36f";
}

.zmdi-brightness-auto:before {
  content: "\f370";
}

.zmdi-brightness-setting:before {
  content: "\f371";
}

.zmdi-broken-image:before {
  content: "\f372";
}

.zmdi-center-focus-strong:before {
  content: "\f373";
}

.zmdi-center-focus-weak:before {
  content: "\f374";
}

.zmdi-compare:before {
  content: "\f375";
}

.zmdi-crop-16-9:before {
  content: "\f376";
}

.zmdi-crop-3-2:before {
  content: "\f377";
}

.zmdi-crop-5-4:before {
  content: "\f378";
}

.zmdi-crop-7-5:before {
  content: "\f379";
}

.zmdi-crop-din:before {
  content: "\f37a";
}

.zmdi-crop-free:before {
  content: "\f37b";
}

.zmdi-crop-landscape:before {
  content: "\f37c";
}

.zmdi-crop-portrait:before {
  content: "\f37d";
}

.zmdi-crop-square:before {
  content: "\f37e";
}

.zmdi-exposure-alt:before {
  content: "\f37f";
}

.zmdi-exposure:before {
  content: "\f380";
}

.zmdi-filter-b-and-w:before {
  content: "\f381";
}

.zmdi-filter-center-focus:before {
  content: "\f382";
}

.zmdi-filter-frames:before {
  content: "\f383";
}

.zmdi-filter-tilt-shift:before {
  content: "\f384";
}

.zmdi-gradient:before {
  content: "\f385";
}

.zmdi-grain:before {
  content: "\f386";
}

.zmdi-graphic-eq:before {
  content: "\f387";
}

.zmdi-hdr-off:before {
  content: "\f388";
}

.zmdi-hdr-strong:before {
  content: "\f389";
}

.zmdi-hdr-weak:before {
  content: "\f38a";
}

.zmdi-hdr:before {
  content: "\f38b";
}

.zmdi-iridescent:before {
  content: "\f38c";
}

.zmdi-leak-off:before {
  content: "\f38d";
}

.zmdi-leak:before {
  content: "\f38e";
}

.zmdi-looks:before {
  content: "\f38f";
}

.zmdi-loupe:before {
  content: "\f390";
}

.zmdi-panorama-horizontal:before {
  content: "\f391";
}

.zmdi-panorama-vertical:before {
  content: "\f392";
}

.zmdi-panorama-wide-angle:before {
  content: "\f393";
}

.zmdi-photo-size-select-large:before {
  content: "\f394";
}

.zmdi-photo-size-select-small:before {
  content: "\f395";
}

.zmdi-picture-in-picture:before {
  content: "\f396";
}

.zmdi-slideshow:before {
  content: "\f397";
}

.zmdi-texture:before {
  content: "\f398";
}

.zmdi-tonality:before {
  content: "\f399";
}

.zmdi-vignette:before {
  content: "\f39a";
}

.zmdi-wb-auto:before {
  content: "\f39b";
}

.zmdi-eject-alt:before {
  content: "\f39c";
}

.zmdi-eject:before {
  content: "\f39d";
}

.zmdi-equalizer:before {
  content: "\f39e";
}

.zmdi-fast-forward:before {
  content: "\f39f";
}

.zmdi-fast-rewind:before {
  content: "\f3a0";
}

.zmdi-forward-10:before {
  content: "\f3a1";
}

.zmdi-forward-30:before {
  content: "\f3a2";
}

.zmdi-forward-5:before {
  content: "\f3a3";
}

.zmdi-hearing:before {
  content: "\f3a4";
}

.zmdi-pause-circle-outline:before {
  content: "\f3a5";
}

.zmdi-pause-circle:before {
  content: "\f3a6";
}

.zmdi-pause:before {
  content: "\f3a7";
}

.zmdi-play-circle-outline:before {
  content: "\f3a8";
}

.zmdi-play-circle:before {
  content: "\f3a9";
}

.zmdi-play:before {
  content: "\f3aa";
}

.zmdi-playlist-audio:before {
  content: "\f3ab";
}

.zmdi-playlist-plus:before {
  content: "\f3ac";
}

.zmdi-repeat-one:before {
  content: "\f3ad";
}

.zmdi-repeat:before {
  content: "\f3ae";
}

.zmdi-replay-10:before {
  content: "\f3af";
}

.zmdi-replay-30:before {
  content: "\f3b0";
}

.zmdi-replay-5:before {
  content: "\f3b1";
}

.zmdi-replay:before {
  content: "\f3b2";
}

.zmdi-shuffle:before {
  content: "\f3b3";
}

.zmdi-skip-next:before {
  content: "\f3b4";
}

.zmdi-skip-previous:before {
  content: "\f3b5";
}

.zmdi-stop:before {
  content: "\f3b6";
}

.zmdi-surround-sound:before {
  content: "\f3b7";
}

.zmdi-tune:before {
  content: "\f3b8";
}

.zmdi-volume-down:before {
  content: "\f3b9";
}

.zmdi-volume-mute:before {
  content: "\f3ba";
}

.zmdi-volume-off:before {
  content: "\f3bb";
}

.zmdi-volume-up:before {
  content: "\f3bc";
}

.zmdi-n-1-square:before {
  content: "\f3bd";
}

.zmdi-n-2-square:before {
  content: "\f3be";
}

.zmdi-n-3-square:before {
  content: "\f3bf";
}

.zmdi-n-4-square:before {
  content: "\f3c0";
}

.zmdi-n-5-square:before {
  content: "\f3c1";
}

.zmdi-n-6-square:before {
  content: "\f3c2";
}

.zmdi-neg-1:before {
  content: "\f3c3";
}

.zmdi-neg-2:before {
  content: "\f3c4";
}

.zmdi-plus-1:before {
  content: "\f3c5";
}

.zmdi-plus-2:before {
  content: "\f3c6";
}

.zmdi-sec-10:before {
  content: "\f3c7";
}

.zmdi-sec-3:before {
  content: "\f3c8";
}

.zmdi-zero:before {
  content: "\f3c9";
}

.zmdi-airline-seat-flat-angled:before {
  content: "\f3ca";
}

.zmdi-airline-seat-flat:before {
  content: "\f3cb";
}

.zmdi-airline-seat-individual-suite:before {
  content: "\f3cc";
}

.zmdi-airline-seat-legroom-extra:before {
  content: "\f3cd";
}

.zmdi-airline-seat-legroom-normal:before {
  content: "\f3ce";
}

.zmdi-airline-seat-legroom-reduced:before {
  content: "\f3cf";
}

.zmdi-airline-seat-recline-extra:before {
  content: "\f3d0";
}

.zmdi-airline-seat-recline-normal:before {
  content: "\f3d1";
}

.zmdi-airplay:before {
  content: "\f3d2";
}

.zmdi-closed-caption:before {
  content: "\f3d3";
}

.zmdi-confirmation-number:before {
  content: "\f3d4";
}

.zmdi-developer-board:before {
  content: "\f3d5";
}

.zmdi-disc-full:before {
  content: "\f3d6";
}

.zmdi-explicit:before {
  content: "\f3d7";
}

.zmdi-flight-land:before {
  content: "\f3d8";
}

.zmdi-flight-takeoff:before {
  content: "\f3d9";
}

.zmdi-flip-to-back:before {
  content: "\f3da";
}

.zmdi-flip-to-front:before {
  content: "\f3db";
}

.zmdi-group-work:before {
  content: "\f3dc";
}

.zmdi-hd:before {
  content: "\f3dd";
}

.zmdi-hq:before {
  content: "\f3de";
}

.zmdi-markunread-mailbox:before {
  content: "\f3df";
}

.zmdi-memory:before {
  content: "\f3e0";
}

.zmdi-nfc:before {
  content: "\f3e1";
}

.zmdi-play-for-work:before {
  content: "\f3e2";
}

.zmdi-power-input:before {
  content: "\f3e3";
}

.zmdi-present-to-all:before {
  content: "\f3e4";
}

.zmdi-satellite:before {
  content: "\f3e5";
}

.zmdi-tap-and-play:before {
  content: "\f3e6";
}

.zmdi-vibration:before {
  content: "\f3e7";
}

.zmdi-voicemail:before {
  content: "\f3e8";
}

.zmdi-group:before {
  content: "\f3e9";
}

.zmdi-rss:before {
  content: "\f3ea";
}

.zmdi-shape:before {
  content: "\f3eb";
}

.zmdi-spinner:before {
  content: "\f3ec";
}

.zmdi-ungroup:before {
  content: "\f3ed";
}

.zmdi-500px:before {
  content: "\f3ee";
}

.zmdi-8tracks:before {
  content: "\f3ef";
}

.zmdi-amazon:before {
  content: "\f3f0";
}

.zmdi-blogger:before {
  content: "\f3f1";
}

.zmdi-delicious:before {
  content: "\f3f2";
}

.zmdi-disqus:before {
  content: "\f3f3";
}

.zmdi-flattr:before {
  content: "\f3f4";
}

.zmdi-flickr:before {
  content: "\f3f5";
}

.zmdi-github-alt:before {
  content: "\f3f6";
}

.zmdi-google-old:before {
  content: "\f3f7";
}

.zmdi-linkedin:before {
  content: "\f3f8";
}

.zmdi-odnoklassniki:before {
  content: "\f3f9";
}

.zmdi-outlook:before {
  content: "\f3fa";
}

.zmdi-paypal-alt:before {
  content: "\f3fb";
}

.zmdi-pinterest:before {
  content: "\f3fc";
}

.zmdi-playstation:before {
  content: "\f3fd";
}

.zmdi-reddit:before {
  content: "\f3fe";
}

.zmdi-skype:before {
  content: "\f3ff";
}

.zmdi-slideshare:before {
  content: "\f400";
}

.zmdi-soundcloud:before {
  content: "\f401";
}

.zmdi-tumblr:before {
  content: "\f402";
}

.zmdi-twitch:before {
  content: "\f403";
}

.zmdi-vimeo:before {
  content: "\f404";
}

.zmdi-whatsapp:before {
  content: "\f405";
}

.zmdi-xbox:before {
  content: "\f406";
}

.zmdi-yahoo:before {
  content: "\f407";
}

.zmdi-youtube-play:before {
  content: "\f408";
}

.zmdi-youtube:before {
  content: "\f409";
}

.zmdi-3d-rotation:before {
  content: "\f101";
}

.zmdi-airplane-off:before {
  content: "\f102";
}

.zmdi-airplane:before {
  content: "\f103";
}

.zmdi-album:before {
  content: "\f104";
}

.zmdi-archive:before {
  content: "\f105";
}

.zmdi-assignment-account:before {
  content: "\f106";
}

.zmdi-assignment-alert:before {
  content: "\f107";
}

.zmdi-assignment-check:before {
  content: "\f108";
}

.zmdi-assignment-o:before {
  content: "\f109";
}

.zmdi-assignment-return:before {
  content: "\f10a";
}

.zmdi-assignment-returned:before {
  content: "\f10b";
}

.zmdi-assignment:before {
  content: "\f10c";
}

.zmdi-attachment-alt:before {
  content: "\f10d";
}

.zmdi-attachment:before {
  content: "\f10e";
}

.zmdi-audio:before {
  content: "\f10f";
}

.zmdi-badge-check:before {
  content: "\f110";
}

.zmdi-balance-wallet:before {
  content: "\f111";
}

.zmdi-balance:before {
  content: "\f112";
}

.zmdi-battery-alert:before {
  content: "\f113";
}

.zmdi-battery-flash:before {
  content: "\f114";
}

.zmdi-battery-unknown:before {
  content: "\f115";
}

.zmdi-battery:before {
  content: "\f116";
}

.zmdi-bike:before {
  content: "\f117";
}

.zmdi-block-alt:before {
  content: "\f118";
}

.zmdi-block:before {
  content: "\f119";
}

.zmdi-boat:before {
  content: "\f11a";
}

.zmdi-book-image:before {
  content: "\f11b";
}

.zmdi-book:before {
  content: "\f11c";
}

.zmdi-bookmark-outline:before {
  content: "\f11d";
}

.zmdi-bookmark:before {
  content: "\f11e";
}

.zmdi-brush:before {
  content: "\f11f";
}

.zmdi-bug:before {
  content: "\f120";
}

.zmdi-bus:before {
  content: "\f121";
}

.zmdi-cake:before {
  content: "\f122";
}

.zmdi-car-taxi:before {
  content: "\f123";
}

.zmdi-car-wash:before {
  content: "\f124";
}

.zmdi-car:before {
  content: "\f125";
}

.zmdi-card-giftcard:before {
  content: "\f126";
}

.zmdi-card-membership:before {
  content: "\f127";
}

.zmdi-card-travel:before {
  content: "\f128";
}

.zmdi-card:before {
  content: "\f129";
}

.zmdi-case-check:before {
  content: "\f12a";
}

.zmdi-case-download:before {
  content: "\f12b";
}

.zmdi-case-play:before {
  content: "\f12c";
}

.zmdi-case:before {
  content: "\f12d";
}

.zmdi-cast-connected:before {
  content: "\f12e";
}

.zmdi-cast:before {
  content: "\f12f";
}

.zmdi-chart-donut:before {
  content: "\f130";
}

.zmdi-chart:before {
  content: "\f131";
}

.zmdi-city-alt:before {
  content: "\f132";
}

.zmdi-city:before {
  content: "\f133";
}

.zmdi-close-circle-o:before {
  content: "\f134";
}

.zmdi-close-circle:before {
  content: "\f135";
}

.zmdi-close:before {
  content: "\f136";
}

.zmdi-cocktail:before {
  content: "\f137";
}

.zmdi-code-setting:before {
  content: "\f138";
}

.zmdi-code-smartphone:before {
  content: "\f139";
}

.zmdi-code:before {
  content: "\f13a";
}

.zmdi-coffee:before {
  content: "\f13b";
}

.zmdi-collection-bookmark:before {
  content: "\f13c";
}

.zmdi-collection-case-play:before {
  content: "\f13d";
}

.zmdi-collection-folder-image:before {
  content: "\f13e";
}

.zmdi-collection-image-o:before {
  content: "\f13f";
}

.zmdi-collection-image:before {
  content: "\f140";
}

.zmdi-collection-item-1:before {
  content: "\f141";
}

.zmdi-collection-item-2:before {
  content: "\f142";
}

.zmdi-collection-item-3:before {
  content: "\f143";
}

.zmdi-collection-item-4:before {
  content: "\f144";
}

.zmdi-collection-item-5:before {
  content: "\f145";
}

.zmdi-collection-item-6:before {
  content: "\f146";
}

.zmdi-collection-item-7:before {
  content: "\f147";
}

.zmdi-collection-item-8:before {
  content: "\f148";
}

.zmdi-collection-item-9-plus:before {
  content: "\f149";
}

.zmdi-collection-item-9:before {
  content: "\f14a";
}

.zmdi-collection-item:before {
  content: "\f14b";
}

.zmdi-collection-music:before {
  content: "\f14c";
}

.zmdi-collection-pdf:before {
  content: "\f14d";
}

.zmdi-collection-plus:before {
  content: "\f14e";
}

.zmdi-collection-speaker:before {
  content: "\f14f";
}

.zmdi-collection-text:before {
  content: "\f150";
}

.zmdi-collection-video:before {
  content: "\f151";
}

.zmdi-compass:before {
  content: "\f152";
}

.zmdi-cutlery:before {
  content: "\f153";
}

.zmdi-delete:before {
  content: "\f154";
}

.zmdi-dialpad:before {
  content: "\f155";
}

.zmdi-dns:before {
  content: "\f156";
}

.zmdi-drink:before {
  content: "\f157";
}

.zmdi-edit:before {
  content: "\f158";
}

.zmdi-email-open:before {
  content: "\f159";
}

.zmdi-email:before {
  content: "\f15a";
}

.zmdi-eye-off:before {
  content: "\f15b";
}

.zmdi-eye:before {
  content: "\f15c";
}

.zmdi-eyedropper:before {
  content: "\f15d";
}

.zmdi-favorite-outline:before {
  content: "\f15e";
}

.zmdi-favorite:before {
  content: "\f15f";
}

.zmdi-filter-list:before {
  content: "\f160";
}

.zmdi-fire:before {
  content: "\f161";
}

.zmdi-flag:before {
  content: "\f162";
}

.zmdi-flare:before {
  content: "\f163";
}

.zmdi-flash-auto:before {
  content: "\f164";
}

.zmdi-flash-off:before {
  content: "\f165";
}

.zmdi-flash:before {
  content: "\f166";
}

.zmdi-flip:before {
  content: "\f167";
}

.zmdi-flower-alt:before {
  content: "\f168";
}

.zmdi-flower:before {
  content: "\f169";
}

.zmdi-font:before {
  content: "\f16a";
}

.zmdi-fullscreen-alt:before {
  content: "\f16b";
}

.zmdi-fullscreen-exit:before {
  content: "\f16c";
}

.zmdi-fullscreen:before {
  content: "\f16d";
}

.zmdi-functions:before {
  content: "\f16e";
}

.zmdi-gas-station:before {
  content: "\f16f";
}

.zmdi-gesture:before {
  content: "\f170";
}

.zmdi-globe-alt:before {
  content: "\f171";
}

.zmdi-globe-lock:before {
  content: "\f172";
}

.zmdi-globe:before {
  content: "\f173";
}

.zmdi-graduation-cap:before {
  content: "\f174";
}

.zmdi-home:before {
  content: "\f175";
}

.zmdi-hospital-alt:before {
  content: "\f176";
}

.zmdi-hospital:before {
  content: "\f177";
}

.zmdi-hotel:before {
  content: "\f178";
}

.zmdi-hourglass-alt:before {
  content: "\f179";
}

.zmdi-hourglass-outline:before {
  content: "\f17a";
}

.zmdi-hourglass:before {
  content: "\f17b";
}

.zmdi-http:before {
  content: "\f17c";
}

.zmdi-image-alt:before {
  content: "\f17d";
}

.zmdi-image-o:before {
  content: "\f17e";
}

.zmdi-image:before {
  content: "\f17f";
}

.zmdi-inbox:before {
  content: "\f180";
}

.zmdi-invert-colors-off:before {
  content: "\f181";
}

.zmdi-invert-colors:before {
  content: "\f182";
}

.zmdi-key:before {
  content: "\f183";
}

.zmdi-label-alt-outline:before {
  content: "\f184";
}

.zmdi-label-alt:before {
  content: "\f185";
}

.zmdi-label-heart:before {
  content: "\f186";
}

.zmdi-label:before {
  content: "\f187";
}

.zmdi-labels:before {
  content: "\f188";
}

.zmdi-lamp:before {
  content: "\f189";
}

.zmdi-landscape:before {
  content: "\f18a";
}

.zmdi-layers-off:before {
  content: "\f18b";
}

.zmdi-layers:before {
  content: "\f18c";
}

.zmdi-library:before {
  content: "\f18d";
}

.zmdi-link:before {
  content: "\f18e";
}

.zmdi-lock-open:before {
  content: "\f18f";
}

.zmdi-lock-outline:before {
  content: "\f190";
}

.zmdi-lock:before {
  content: "\f191";
}

.zmdi-mail-reply-all:before {
  content: "\f192";
}

.zmdi-mail-reply:before {
  content: "\f193";
}

.zmdi-mail-send:before {
  content: "\f194";
}

.zmdi-mall:before {
  content: "\f195";
}

.zmdi-map:before {
  content: "\f196";
}

.zmdi-menu:before {
  content: "\f197";
}

.zmdi-money-box:before {
  content: "\f198";
}

.zmdi-money-off:before {
  content: "\f199";
}

.zmdi-money:before {
  content: "\f19a";
}

.zmdi-more-vert:before {
  content: "\f19b";
}

.zmdi-more:before {
  content: "\f19c";
}

.zmdi-movie-alt:before {
  content: "\f19d";
}

.zmdi-movie:before {
  content: "\f19e";
}

.zmdi-nature-people:before {
  content: "\f19f";
}

.zmdi-nature:before {
  content: "\f1a0";
}

.zmdi-navigation:before {
  content: "\f1a1";
}

.zmdi-open-in-browser:before {
  content: "\f1a2";
}

.zmdi-open-in-new:before {
  content: "\f1a3";
}

.zmdi-palette:before {
  content: "\f1a4";
}

.zmdi-parking:before {
  content: "\f1a5";
}

.zmdi-pin-account:before {
  content: "\f1a6";
}

.zmdi-pin-assistant:before {
  content: "\f1a7";
}

.zmdi-pin-drop:before {
  content: "\f1a8";
}

.zmdi-pin-help:before {
  content: "\f1a9";
}

.zmdi-pin-off:before {
  content: "\f1aa";
}

.zmdi-pin:before {
  content: "\f1ab";
}

.zmdi-pizza:before {
  content: "\f1ac";
}

.zmdi-plaster:before {
  content: "\f1ad";
}

.zmdi-power-setting:before {
  content: "\f1ae";
}

.zmdi-power:before {
  content: "\f1af";
}

.zmdi-print:before {
  content: "\f1b0";
}

.zmdi-puzzle-piece:before {
  content: "\f1b1";
}

.zmdi-quote:before {
  content: "\f1b2";
}

.zmdi-railway:before {
  content: "\f1b3";
}

.zmdi-receipt:before {
  content: "\f1b4";
}

.zmdi-refresh-alt:before {
  content: "\f1b5";
}

.zmdi-refresh-sync-alert:before {
  content: "\f1b6";
}

.zmdi-refresh-sync-off:before {
  content: "\f1b7";
}

.zmdi-refresh-sync:before {
  content: "\f1b8";
}

.zmdi-refresh:before {
  content: "\f1b9";
}

.zmdi-roller:before {
  content: "\f1ba";
}

.zmdi-ruler:before {
  content: "\f1bb";
}

.zmdi-scissors:before {
  content: "\f1bc";
}

.zmdi-screen-rotation-lock:before {
  content: "\f1bd";
}

.zmdi-screen-rotation:before {
  content: "\f1be";
}

.zmdi-search-for:before {
  content: "\f1bf";
}

.zmdi-search-in-file:before {
  content: "\f1c0";
}

.zmdi-search-in-page:before {
  content: "\f1c1";
}

.zmdi-search-replace:before {
  content: "\f1c2";
}

.zmdi-search:before {
  content: "\f1c3";
}

.zmdi-seat:before {
  content: "\f1c4";
}

.zmdi-settings-square:before {
  content: "\f1c5";
}

.zmdi-settings:before {
  content: "\f1c6";
}

.zmdi-shield-check:before {
  content: "\f1c7";
}

.zmdi-shield-security:before {
  content: "\f1c8";
}

.zmdi-shopping-basket:before {
  content: "\f1c9";
}

.zmdi-shopping-cart-plus:before {
  content: "\f1ca";
}

.zmdi-shopping-cart:before {
  content: "\f1cb";
}

.zmdi-sign-in:before {
  content: "\f1cc";
}

.zmdi-sort-amount-asc:before {
  content: "\f1cd";
}

.zmdi-sort-amount-desc:before {
  content: "\f1ce";
}

.zmdi-sort-asc:before {
  content: "\f1cf";
}

.zmdi-sort-desc:before {
  content: "\f1d0";
}

.zmdi-spellcheck:before {
  content: "\f1d1";
}

.zmdi-storage:before {
  content: "\f1d2";
}

.zmdi-store-24:before {
  content: "\f1d3";
}

.zmdi-store:before {
  content: "\f1d4";
}

.zmdi-subway:before {
  content: "\f1d5";
}

.zmdi-sun:before {
  content: "\f1d6";
}

.zmdi-tab-unselected:before {
  content: "\f1d7";
}

.zmdi-tab:before {
  content: "\f1d8";
}

.zmdi-tag-close:before {
  content: "\f1d9";
}

.zmdi-tag-more:before {
  content: "\f1da";
}

.zmdi-tag:before {
  content: "\f1db";
}

.zmdi-thumb-down:before {
  content: "\f1dc";
}

.zmdi-thumb-up-down:before {
  content: "\f1dd";
}

.zmdi-thumb-up:before {
  content: "\f1de";
}

.zmdi-ticket-star:before {
  content: "\f1df";
}

.zmdi-toll:before {
  content: "\f1e0";
}

.zmdi-toys:before {
  content: "\f1e1";
}

.zmdi-traffic:before {
  content: "\f1e2";
}

.zmdi-translate:before {
  content: "\f1e3";
}

.zmdi-triangle-down:before {
  content: "\f1e4";
}

.zmdi-triangle-up:before {
  content: "\f1e5";
}

.zmdi-truck:before {
  content: "\f1e6";
}

.zmdi-turning-sign:before {
  content: "\f1e7";
}

.zmdi-wallpaper:before {
  content: "\f1e8";
}

.zmdi-washing-machine:before {
  content: "\f1e9";
}

.zmdi-window-maximize:before {
  content: "\f1ea";
}

.zmdi-window-minimize:before {
  content: "\f1eb";
}

.zmdi-window-restore:before {
  content: "\f1ec";
}

.zmdi-wrench:before {
  content: "\f1ed";
}

.zmdi-zoom-in:before {
  content: "\f1ee";
}

.zmdi-zoom-out:before {
  content: "\f1ef";
}

.zmdi-alert-circle-o:before {
  content: "\f1f0";
}

.zmdi-alert-circle:before {
  content: "\f1f1";
}

.zmdi-alert-octagon:before {
  content: "\f1f2";
}

.zmdi-alert-polygon:before {
  content: "\f1f3";
}

.zmdi-alert-triangle:before {
  content: "\f1f4";
}

.zmdi-help-outline:before {
  content: "\f1f5";
}

.zmdi-help:before {
  content: "\f1f6";
}

.zmdi-info-outline:before {
  content: "\f1f7";
}

.zmdi-info:before {
  content: "\f1f8";
}

.zmdi-notifications-active:before {
  content: "\f1f9";
}

.zmdi-notifications-add:before {
  content: "\f1fa";
}

.zmdi-notifications-none:before {
  content: "\f1fb";
}

.zmdi-notifications-off:before {
  content: "\f1fc";
}

.zmdi-notifications-paused:before {
  content: "\f1fd";
}

.zmdi-notifications:before {
  content: "\f1fe";
}

.zmdi-account-add:before {
  content: "\f1ff";
}

.zmdi-account-box-mail:before {
  content: "\f200";
}

.zmdi-account-box-o:before {
  content: "\f201";
}

.zmdi-account-box-phone:before {
  content: "\f202";
}

.zmdi-account-box:before {
  content: "\f203";
}

.zmdi-account-calendar:before {
  content: "\f204";
}

.zmdi-account-circle:before {
  content: "\f205";
}

.zmdi-account-o:before {
  content: "\f206";
}

.zmdi-account:before {
  content: "\f207";
}

.zmdi-accounts-add:before {
  content: "\f208";
}

.zmdi-accounts-alt:before {
  content: "\f209";
}

.zmdi-accounts-list-alt:before {
  content: "\f20a";
}

.zmdi-accounts-list:before {
  content: "\f20b";
}

.zmdi-accounts-outline:before {
  content: "\f20c";
}

.zmdi-accounts:before {
  content: "\f20d";
}

.zmdi-face:before {
  content: "\f20e";
}

.zmdi-female:before {
  content: "\f20f";
}

.zmdi-male-alt:before {
  content: "\f210";
}

.zmdi-male-female:before {
  content: "\f211";
}

.zmdi-male:before {
  content: "\f212";
}

.zmdi-mood-bad:before {
  content: "\f213";
}

.zmdi-mood:before {
  content: "\f214";
}

.zmdi-run:before {
  content: "\f215";
}

.zmdi-walk:before {
  content: "\f216";
}

.zmdi-cloud-box:before {
  content: "\f217";
}

.zmdi-cloud-circle:before {
  content: "\f218";
}

.zmdi-cloud-done:before {
  content: "\f219";
}

.zmdi-cloud-download:before {
  content: "\f21a";
}

.zmdi-cloud-off:before {
  content: "\f21b";
}

.zmdi-cloud-outline-alt:before {
  content: "\f21c";
}

.zmdi-cloud-outline:before {
  content: "\f21d";
}

.zmdi-cloud-upload:before {
  content: "\f21e";
}

.zmdi-cloud:before {
  content: "\f21f";
}

.zmdi-download:before {
  content: "\f220";
}

.zmdi-file-plus:before {
  content: "\f221";
}

.zmdi-file-text:before {
  content: "\f222";
}

.zmdi-file:before {
  content: "\f223";
}

.zmdi-folder-outline:before {
  content: "\f224";
}

.zmdi-folder-person:before {
  content: "\f225";
}

.zmdi-folder-star-alt:before {
  content: "\f226";
}

.zmdi-folder-star:before {
  content: "\f227";
}

.zmdi-folder:before {
  content: "\f228";
}

.zmdi-gif:before {
  content: "\f229";
}

.zmdi-upload:before {
  content: "\f22a";
}

.zmdi-border-all:before {
  content: "\f22b";
}

.zmdi-border-bottom:before {
  content: "\f22c";
}

.zmdi-border-clear:before {
  content: "\f22d";
}

.zmdi-border-color:before {
  content: "\f22e";
}

.zmdi-border-horizontal:before {
  content: "\f22f";
}

.zmdi-border-inner:before {
  content: "\f230";
}

.zmdi-border-left:before {
  content: "\f231";
}

.zmdi-border-outer:before {
  content: "\f232";
}

.zmdi-border-right:before {
  content: "\f233";
}

.zmdi-border-style:before {
  content: "\f234";
}

.zmdi-border-top:before {
  content: "\f235";
}

.zmdi-border-vertical:before {
  content: "\f236";
}

.zmdi-copy:before {
  content: "\f237";
}

.zmdi-crop:before {
  content: "\f238";
}

.zmdi-format-align-center:before {
  content: "\f239";
}

.zmdi-format-align-justify:before {
  content: "\f23a";
}

.zmdi-format-align-left:before {
  content: "\f23b";
}

.zmdi-format-align-right:before {
  content: "\f23c";
}

.zmdi-format-bold:before {
  content: "\f23d";
}

.zmdi-format-clear-all:before {
  content: "\f23e";
}

.zmdi-format-clear:before {
  content: "\f23f";
}

.zmdi-format-color-fill:before {
  content: "\f240";
}

.zmdi-format-color-reset:before {
  content: "\f241";
}

.zmdi-format-color-text:before {
  content: "\f242";
}

.zmdi-format-indent-decrease:before {
  content: "\f243";
}

.zmdi-format-indent-increase:before {
  content: "\f244";
}

.zmdi-format-italic:before {
  content: "\f245";
}

.zmdi-format-line-spacing:before {
  content: "\f246";
}

.zmdi-format-list-bulleted:before {
  content: "\f247";
}

.zmdi-format-list-numbered:before {
  content: "\f248";
}

.zmdi-format-ltr:before {
  content: "\f249";
}

.zmdi-format-rtl:before {
  content: "\f24a";
}

.zmdi-format-size:before {
  content: "\f24b";
}

.zmdi-format-strikethrough-s:before {
  content: "\f24c";
}

.zmdi-format-strikethrough:before {
  content: "\f24d";
}

.zmdi-format-subject:before {
  content: "\f24e";
}

.zmdi-format-underlined:before {
  content: "\f24f";
}

.zmdi-format-valign-bottom:before {
  content: "\f250";
}

.zmdi-format-valign-center:before {
  content: "\f251";
}

.zmdi-format-valign-top:before {
  content: "\f252";
}

.zmdi-redo:before {
  content: "\f253";
}

.zmdi-select-all:before {
  content: "\f254";
}

.zmdi-space-bar:before {
  content: "\f255";
}

.zmdi-text-format:before {
  content: "\f256";
}

.zmdi-transform:before {
  content: "\f257";
}

.zmdi-undo:before {
  content: "\f258";
}

.zmdi-wrap-text:before {
  content: "\f259";
}

.zmdi-comment-alert:before {
  content: "\f25a";
}

.zmdi-comment-alt-text:before {
  content: "\f25b";
}

.zmdi-comment-alt:before {
  content: "\f25c";
}

.zmdi-comment-edit:before {
  content: "\f25d";
}

.zmdi-comment-image:before {
  content: "\f25e";
}

.zmdi-comment-list:before {
  content: "\f25f";
}

.zmdi-comment-more:before {
  content: "\f260";
}

.zmdi-comment-outline:before {
  content: "\f261";
}

.zmdi-comment-text-alt:before {
  content: "\f262";
}

.zmdi-comment-text:before {
  content: "\f263";
}

.zmdi-comment-video:before {
  content: "\f264";
}

.zmdi-comment:before {
  content: "\f265";
}

.zmdi-comments:before {
  content: "\f266";
}

.zmdi-check-all:before {
  content: "\f267";
}

.zmdi-check-circle-u:before {
  content: "\f268";
}

.zmdi-check-circle:before {
  content: "\f269";
}

.zmdi-check-square:before {
  content: "\f26a";
}

.zmdi-check:before {
  content: "\f26b";
}

.zmdi-circle-o:before {
  content: "\f26c";
}

.zmdi-circle:before {
  content: "\f26d";
}

.zmdi-dot-circle-alt:before {
  content: "\f26e";
}

.zmdi-dot-circle:before {
  content: "\f26f";
}

.zmdi-minus-circle-outline:before {
  content: "\f270";
}

.zmdi-minus-circle:before {
  content: "\f271";
}

.zmdi-minus-square:before {
  content: "\f272";
}

.zmdi-minus:before {
  content: "\f273";
}

.zmdi-plus-circle-o-duplicate:before {
  content: "\f274";
}

.zmdi-plus-circle-o:before {
  content: "\f275";
}

.zmdi-plus-circle:before {
  content: "\f276";
}

.zmdi-plus-square:before {
  content: "\f277";
}

.zmdi-plus:before {
  content: "\f278";
}

.zmdi-square-o:before {
  content: "\f279";
}

.zmdi-star-circle:before {
  content: "\f27a";
}

.zmdi-star-half:before {
  content: "\f27b";
}

.zmdi-star-outline:before {
  content: "\f27c";
}

.zmdi-star:before {
  content: "\f27d";
}

.zmdi-bluetooth-connected:before {
  content: "\f27e";
}

.zmdi-bluetooth-off:before {
  content: "\f27f";
}

.zmdi-bluetooth-search:before {
  content: "\f280";
}

.zmdi-bluetooth-setting:before {
  content: "\f281";
}

.zmdi-bluetooth:before {
  content: "\f282";
}

.zmdi-camera-add:before {
  content: "\f283";
}

.zmdi-camera-alt:before {
  content: "\f284";
}

.zmdi-camera-bw:before {
  content: "\f285";
}

.zmdi-camera-front:before {
  content: "\f286";
}

.zmdi-camera-mic:before {
  content: "\f287";
}

.zmdi-camera-party-mode:before {
  content: "\f288";
}

.zmdi-camera-rear:before {
  content: "\f289";
}

.zmdi-camera-roll:before {
  content: "\f28a";
}

.zmdi-camera-switch:before {
  content: "\f28b";
}

.zmdi-camera:before {
  content: "\f28c";
}

.zmdi-card-alert:before {
  content: "\f28d";
}

.zmdi-card-off:before {
  content: "\f28e";
}

.zmdi-card-sd:before {
  content: "\f28f";
}

.zmdi-card-sim:before {
  content: "\f290";
}

.zmdi-desktop-mac:before {
  content: "\f291";
}

.zmdi-desktop-windows:before {
  content: "\f292";
}

.zmdi-device-hub:before {
  content: "\f293";
}

.zmdi-devices-off:before {
  content: "\f294";
}

.zmdi-devices:before {
  content: "\f295";
}

.zmdi-dock:before {
  content: "\f296";
}

.zmdi-floppy:before {
  content: "\f297";
}

.zmdi-gamepad:before {
  content: "\f298";
}

.zmdi-gps-dot:before {
  content: "\f299";
}

.zmdi-gps-off:before {
  content: "\f29a";
}

.zmdi-gps:before {
  content: "\f29b";
}

.zmdi-headset-mic:before {
  content: "\f29c";
}

.zmdi-headset:before {
  content: "\f29d";
}

.zmdi-input-antenna:before {
  content: "\f29e";
}

.zmdi-input-composite:before {
  content: "\f29f";
}

.zmdi-input-hdmi:before {
  content: "\f2a0";
}

.zmdi-input-power:before {
  content: "\f2a1";
}

.zmdi-input-svideo:before {
  content: "\f2a2";
}

.zmdi-keyboard-hide:before {
  content: "\f2a3";
}

.zmdi-keyboard:before {
  content: "\f2a4";
}

.zmdi-laptop-chromebook:before {
  content: "\f2a5";
}

.zmdi-laptop-mac:before {
  content: "\f2a6";
}

.zmdi-laptop:before {
  content: "\f2a7";
}

.zmdi-mic-off:before {
  content: "\f2a8";
}

.zmdi-mic-outline:before {
  content: "\f2a9";
}

.zmdi-mic-setting:before {
  content: "\f2aa";
}

.zmdi-mic:before {
  content: "\f2ab";
}

.zmdi-mouse:before {
  content: "\f2ac";
}

.zmdi-network-alert:before {
  content: "\f2ad";
}

.zmdi-network-locked:before {
  content: "\f2ae";
}

.zmdi-network-off:before {
  content: "\f2af";
}

.zmdi-network-outline:before {
  content: "\f2b0";
}

.zmdi-network-setting:before {
  content: "\f2b1";
}

.zmdi-network:before {
  content: "\f2b2";
}

.zmdi-phone-bluetooth:before {
  content: "\f2b3";
}

.zmdi-phone-end:before {
  content: "\f2b4";
}

.zmdi-phone-forwarded:before {
  content: "\f2b5";
}

.zmdi-phone-in-talk:before {
  content: "\f2b6";
}

.zmdi-phone-locked:before {
  content: "\f2b7";
}

.zmdi-phone-missed:before {
  content: "\f2b8";
}

.zmdi-phone-msg:before {
  content: "\f2b9";
}

.zmdi-phone-paused:before {
  content: "\f2ba";
}

.zmdi-phone-ring:before {
  content: "\f2bb";
}

.zmdi-phone-setting:before {
  content: "\f2bc";
}

.zmdi-phone-sip:before {
  content: "\f2bd";
}

.zmdi-phone:before {
  content: "\f2be";
}

.zmdi-portable-wifi-changes:before {
  content: "\f2bf";
}

.zmdi-portable-wifi-off:before {
  content: "\f2c0";
}

.zmdi-portable-wifi:before {
  content: "\f2c1";
}

.zmdi-radio:before {
  content: "\f2c2";
}

.zmdi-reader:before {
  content: "\f2c3";
}

.zmdi-remote-control-alt:before {
  content: "\f2c4";
}

.zmdi-remote-control:before {
  content: "\f2c5";
}

.zmdi-router:before {
  content: "\f2c6";
}

.zmdi-scanner:before {
  content: "\f2c7";
}

.zmdi-smartphone-android:before {
  content: "\f2c8";
}

.zmdi-smartphone-download:before {
  content: "\f2c9";
}

.zmdi-smartphone-erase:before {
  content: "\f2ca";
}

.zmdi-smartphone-info:before {
  content: "\f2cb";
}

.zmdi-smartphone-iphone:before {
  content: "\f2cc";
}

.zmdi-smartphone-landscape-lock:before {
  content: "\f2cd";
}

.zmdi-smartphone-landscape:before {
  content: "\f2ce";
}

.zmdi-smartphone-lock:before {
  content: "\f2cf";
}

.zmdi-smartphone-portrait-lock:before {
  content: "\f2d0";
}

.zmdi-smartphone-ring:before {
  content: "\f2d1";
}

.zmdi-smartphone-setting:before {
  content: "\f2d2";
}

.zmdi-smartphone-setup:before {
  content: "\f2d3";
}

.zmdi-smartphone:before {
  content: "\f2d4";
}

.zmdi-speaker:before {
  content: "\f2d5";
}

.zmdi-tablet-android:before {
  content: "\f2d6";
}

.zmdi-tablet-mac:before {
  content: "\f2d7";
}

.zmdi-tablet:before {
  content: "\f2d8";
}

.zmdi-tv-alt-play:before {
  content: "\f2d9";
}

.zmdi-tv-list:before {
  content: "\f2da";
}

.zmdi-tv-play:before {
  content: "\f2db";
}

.zmdi-tv:before {
  content: "\f2dc";
}

.zmdi-usb:before {
  content: "\f2dd";
}

.zmdi-videocam-off:before {
  content: "\f2de";
}

.zmdi-videocam-switch:before {
  content: "\f2df";
}

.zmdi-videocam:before {
  content: "\f2e0";
}

.zmdi-watch:before {
  content: "\f2e1";
}

.zmdi-wifi-alt-2:before {
  content: "\f2e2";
}

.zmdi-wifi-alt:before {
  content: "\f2e3";
}

.zmdi-wifi-info:before {
  content: "\f2e4";
}

.zmdi-wifi-lock:before {
  content: "\f2e5";
}

.zmdi-wifi-off:before {
  content: "\f2e6";
}

.zmdi-wifi-outline:before {
  content: "\f2e7";
}

.zmdi-wifi:before {
  content: "\f2e8";
}

.zmdi-arrow-left-bottom:before {
  content: "\f2e9";
}

.zmdi-arrow-left:before {
  content: "\f2ea";
}

.zmdi-arrow-merge:before {
  content: "\f2eb";
}

.zmdi-arrow-missed:before {
  content: "\f2ec";
}

.zmdi-arrow-right-top:before {
  content: "\f2ed";
}

.zmdi-arrow-right:before {
  content: "\f2ee";
}

.zmdi-arrow-split:before {
  content: "\f2ef";
}

.zmdi-arrows:before {
  content: "\f2f0";
}

.zmdi-caret-down-circle:before {
  content: "\f2f1";
}

.zmdi-caret-down:before {
  content: "\f2f2";
}

.zmdi-caret-left-circle:before {
  content: "\f2f3";
}

.zmdi-caret-left:before {
  content: "\f2f4";
}

.zmdi-caret-right-circle:before {
  content: "\f2f5";
}

.zmdi-caret-right:before {
  content: "\f2f6";
}

.zmdi-caret-up-circle:before {
  content: "\f2f7";
}

.zmdi-caret-up:before {
  content: "\f2f8";
}

.zmdi-chevron-down:before {
  content: "\f2f9";
}

.zmdi-chevron-left:before {
  content: "\f2fa";
}

.zmdi-chevron-right:before {
  content: "\f2fb";
}

.zmdi-chevron-up:before {
  content: "\f2fc";
}

.zmdi-forward:before {
  content: "\f2fd";
}

.zmdi-long-arrow-down:before {
  content: "\f2fe";
}

.zmdi-long-arrow-left:before {
  content: "\f2ff";
}

.zmdi-long-arrow-return:before {
  content: "\f300";
}

.zmdi-long-arrow-right:before {
  content: "\f301";
}

.zmdi-long-arrow-tab:before {
  content: "\f302";
}

.zmdi-long-arrow-up:before {
  content: "\f303";
}

.zmdi-rotate-ccw:before {
  content: "\f304";
}

.zmdi-rotate-cw:before {
  content: "\f305";
}

.zmdi-rotate-left:before {
  content: "\f306";
}

.zmdi-rotate-right:before {
  content: "\f307";
}

.zmdi-square-down:before {
  content: "\f308";
}

.zmdi-square-right:before {
  content: "\f309";
}

.zmdi-swap-alt:before {
  content: "\f30a";
}

.zmdi-swap-vertical-circle:before {
  content: "\f30b";
}

.zmdi-swap-vertical:before {
  content: "\f30c";
}

.zmdi-swap:before {
  content: "\f30d";
}

.zmdi-trending-down:before {
  content: "\f30e";
}

.zmdi-trending-flat:before {
  content: "\f30f";
}

.zmdi-trending-up:before {
  content: "\f310";
}

.zmdi-unfold-less:before {
  content: "\f311";
}

.zmdi-unfold-more:before {
  content: "\f312";
}

.zmdi-apps:before {
  content: "\f313";
}

.zmdi-grid-off:before {
  content: "\f314";
}

.zmdi-grid:before {
  content: "\f315";
}

.zmdi-view-agenda:before {
  content: "\f316";
}

.zmdi-view-array:before {
  content: "\f317";
}

.zmdi-view-carousel:before {
  content: "\f318";
}

.zmdi-view-column:before {
  content: "\f319";
}

.zmdi-view-comfy:before {
  content: "\f31a";
}

.zmdi-view-compact:before {
  content: "\f31b";
}

.zmdi-view-dashboard:before {
  content: "\f31c";
}

.zmdi-view-day:before {
  content: "\f31d";
}

.zmdi-view-headline:before {
  content: "\f31e";
}

.zmdi-view-list-alt:before {
  content: "\f31f";
}

.zmdi-view-list:before {
  content: "\f320";
}

.zmdi-view-module:before {
  content: "\f321";
}

.zmdi-view-quilt:before {
  content: "\f322";
}

.zmdi-view-stream:before {
  content: "\f323";
}

.zmdi-view-subtitles:before {
  content: "\f324";
}

.zmdi-view-toc:before {
  content: "\f325";
}

.zmdi-view-web:before {
  content: "\f326";
}

.zmdi-view-week:before {
  content: "\f327";
}

.zmdi-widgets:before {
  content: "\f328";
}

.zmdi-alarm-check:before {
  content: "\f329";
}

.zmdi-alarm-off:before {
  content: "\f32a";
}

.zmdi-alarm-plus:before {
  content: "\f32b";
}

.zmdi-alarm-snooze:before {
  content: "\f32c";
}

.zmdi-alarm:before {
  content: "\f32d";
}

.zmdi-calendar-alt:before {
  content: "\f32e";
}

.zmdi-calendar-check:before {
  content: "\f32f";
}

.zmdi-calendar-close:before {
  content: "\f330";
}

.zmdi-calendar-note:before {
  content: "\f331";
}

.zmdi-calendar:before {
  content: "\f332";
}

.zmdi-time-countdown:before {
  content: "\f333";
}

.zmdi-time-interval:before {
  content: "\f334";
}

.zmdi-time-restore-setting:before {
  content: "\f335";
}

.zmdi-time-restore:before {
  content: "\f336";
}

.zmdi-time:before {
  content: "\f337";
}

.zmdi-timer-off:before {
  content: "\f338";
}

.zmdi-timer:before {
  content: "\f339";
}

.zmdi-android-alt:before {
  content: "\f33a";
}

.zmdi-android:before {
  content: "\f33b";
}

.zmdi-apple:before {
  content: "\f33c";
}

.zmdi-behance:before {
  content: "\f33d";
}

.zmdi-codepen:before {
  content: "\f33e";
}

.zmdi-dribbble:before {
  content: "\f33f";
}

.zmdi-dropbox:before {
  content: "\f340";
}

.zmdi-evernote:before {
  content: "\f341";
}

.zmdi-facebook-box:before {
  content: "\f342";
}

.zmdi-facebook:before {
  content: "\f343";
}

.zmdi-github-box:before {
  content: "\f344";
}

.zmdi-github:before {
  content: "\f345";
}

.zmdi-google-drive:before {
  content: "\f346";
}

.zmdi-google-earth:before {
  content: "\f347";
}

.zmdi-google-glass:before {
  content: "\f348";
}

.zmdi-google-maps:before {
  content: "\f349";
}

.zmdi-google-pages:before {
  content: "\f34a";
}

.zmdi-google-play:before {
  content: "\f34b";
}

.zmdi-google-plus-box:before {
  content: "\f34c";
}

.zmdi-google-plus:before {
  content: "\f34d";
}

.zmdi-google:before {
  content: "\f34e";
}

.zmdi-instagram:before {
  content: "\f34f";
}

.zmdi-language-css3:before {
  content: "\f350";
}

.zmdi-language-html5:before {
  content: "\f351";
}

.zmdi-language-javascript:before {
  content: "\f352";
}

.zmdi-language-python-alt:before {
  content: "\f353";
}

.zmdi-language-python:before {
  content: "\f354";
}

.zmdi-lastfm:before {
  content: "\f355";
}

.zmdi-linkedin-box:before {
  content: "\f356";
}

.zmdi-paypal:before {
  content: "\f357";
}

.zmdi-pinterest-box:before {
  content: "\f358";
}

.zmdi-pocket:before {
  content: "\f359";
}

.zmdi-polymer:before {
  content: "\f35a";
}

.zmdi-share:before {
  content: "\f35b";
}

.zmdi-stackoverflow:before {
  content: "\f35c";
}

.zmdi-steam-square:before {
  content: "\f35d";
}

.zmdi-steam:before {
  content: "\f35e";
}

.zmdi-twitter-box:before {
  content: "\f35f";
}

.zmdi-twitter:before {
  content: "\f360";
}

.zmdi-vk:before {
  content: "\f361";
}

.zmdi-wikipedia:before {
  content: "\f362";
}

.zmdi-windows:before {
  content: "\f363";
}

.zmdi-aspect-ratio-alt:before {
  content: "\f364";
}

.zmdi-aspect-ratio:before {
  content: "\f365";
}

.zmdi-blur-circular:before {
  content: "\f366";
}

.zmdi-blur-linear:before {
  content: "\f367";
}

.zmdi-blur-off:before {
  content: "\f368";
}

.zmdi-blur:before {
  content: "\f369";
}

.zmdi-brightness-2:before {
  content: "\f36a";
}

.zmdi-brightness-3:before {
  content: "\f36b";
}

.zmdi-brightness-4:before {
  content: "\f36c";
}

.zmdi-brightness-5:before {
  content: "\f36d";
}

.zmdi-brightness-6:before {
  content: "\f36e";
}

.zmdi-brightness-7:before {
  content: "\f36f";
}

.zmdi-brightness-auto:before {
  content: "\f370";
}

.zmdi-brightness-setting:before {
  content: "\f371";
}

.zmdi-broken-image:before {
  content: "\f372";
}

.zmdi-center-focus-strong:before {
  content: "\f373";
}

.zmdi-center-focus-weak:before {
  content: "\f374";
}

.zmdi-compare:before {
  content: "\f375";
}

.zmdi-crop-16-9:before {
  content: "\f376";
}

.zmdi-crop-3-2:before {
  content: "\f377";
}

.zmdi-crop-5-4:before {
  content: "\f378";
}

.zmdi-crop-7-5:before {
  content: "\f379";
}

.zmdi-crop-din:before {
  content: "\f37a";
}

.zmdi-crop-free:before {
  content: "\f37b";
}

.zmdi-crop-landscape:before {
  content: "\f37c";
}

.zmdi-crop-portrait:before {
  content: "\f37d";
}

.zmdi-crop-square:before {
  content: "\f37e";
}

.zmdi-exposure-alt:before {
  content: "\f37f";
}

.zmdi-exposure:before {
  content: "\f380";
}

.zmdi-filter-b-and-w:before {
  content: "\f381";
}

.zmdi-filter-center-focus:before {
  content: "\f382";
}

.zmdi-filter-frames:before {
  content: "\f383";
}

.zmdi-filter-tilt-shift:before {
  content: "\f384";
}

.zmdi-gradient:before {
  content: "\f385";
}

.zmdi-grain:before {
  content: "\f386";
}

.zmdi-graphic-eq:before {
  content: "\f387";
}

.zmdi-hdr-off:before {
  content: "\f388";
}

.zmdi-hdr-strong:before {
  content: "\f389";
}

.zmdi-hdr-weak:before {
  content: "\f38a";
}

.zmdi-hdr:before {
  content: "\f38b";
}

.zmdi-iridescent:before {
  content: "\f38c";
}

.zmdi-leak-off:before {
  content: "\f38d";
}

.zmdi-leak:before {
  content: "\f38e";
}

.zmdi-looks:before {
  content: "\f38f";
}

.zmdi-loupe:before {
  content: "\f390";
}

.zmdi-panorama-horizontal:before {
  content: "\f391";
}

.zmdi-panorama-vertical:before {
  content: "\f392";
}

.zmdi-panorama-wide-angle:before {
  content: "\f393";
}

.zmdi-photo-size-select-large:before {
  content: "\f394";
}

.zmdi-photo-size-select-small:before {
  content: "\f395";
}

.zmdi-picture-in-picture:before {
  content: "\f396";
}

.zmdi-slideshow:before {
  content: "\f397";
}

.zmdi-texture:before {
  content: "\f398";
}

.zmdi-tonality:before {
  content: "\f399";
}

.zmdi-vignette:before {
  content: "\f39a";
}

.zmdi-wb-auto:before {
  content: "\f39b";
}

.zmdi-eject-alt:before {
  content: "\f39c";
}

.zmdi-eject:before {
  content: "\f39d";
}

.zmdi-equalizer:before {
  content: "\f39e";
}

.zmdi-fast-forward:before {
  content: "\f39f";
}

.zmdi-fast-rewind:before {
  content: "\f3a0";
}

.zmdi-forward-10:before {
  content: "\f3a1";
}

.zmdi-forward-30:before {
  content: "\f3a2";
}

.zmdi-forward-5:before {
  content: "\f3a3";
}

.zmdi-hearing:before {
  content: "\f3a4";
}

.zmdi-pause-circle-outline:before {
  content: "\f3a5";
}

.zmdi-pause-circle:before {
  content: "\f3a6";
}

.zmdi-pause:before {
  content: "\f3a7";
}

.zmdi-play-circle-outline:before {
  content: "\f3a8";
}

.zmdi-play-circle:before {
  content: "\f3a9";
}

.zmdi-play:before {
  content: "\f3aa";
}

.zmdi-playlist-audio:before {
  content: "\f3ab";
}

.zmdi-playlist-plus:before {
  content: "\f3ac";
}

.zmdi-repeat-one:before {
  content: "\f3ad";
}

.zmdi-repeat:before {
  content: "\f3ae";
}

.zmdi-replay-10:before {
  content: "\f3af";
}

.zmdi-replay-30:before {
  content: "\f3b0";
}

.zmdi-replay-5:before {
  content: "\f3b1";
}

.zmdi-replay:before {
  content: "\f3b2";
}

.zmdi-shuffle:before {
  content: "\f3b3";
}

.zmdi-skip-next:before {
  content: "\f3b4";
}

.zmdi-skip-previous:before {
  content: "\f3b5";
}

.zmdi-stop:before {
  content: "\f3b6";
}

.zmdi-surround-sound:before {
  content: "\f3b7";
}

.zmdi-tune:before {
  content: "\f3b8";
}

.zmdi-volume-down:before {
  content: "\f3b9";
}

.zmdi-volume-mute:before {
  content: "\f3ba";
}

.zmdi-volume-off:before {
  content: "\f3bb";
}

.zmdi-volume-up:before {
  content: "\f3bc";
}

.zmdi-n-1-square:before {
  content: "\f3bd";
}

.zmdi-n-2-square:before {
  content: "\f3be";
}

.zmdi-n-3-square:before {
  content: "\f3bf";
}

.zmdi-n-4-square:before {
  content: "\f3c0";
}

.zmdi-n-5-square:before {
  content: "\f3c1";
}

.zmdi-n-6-square:before {
  content: "\f3c2";
}

.zmdi-neg-1:before {
  content: "\f3c3";
}

.zmdi-neg-2:before {
  content: "\f3c4";
}

.zmdi-plus-1:before {
  content: "\f3c5";
}

.zmdi-plus-2:before {
  content: "\f3c6";
}

.zmdi-sec-10:before {
  content: "\f3c7";
}

.zmdi-sec-3:before {
  content: "\f3c8";
}

.zmdi-zero:before {
  content: "\f3c9";
}

.zmdi-airline-seat-flat-angled:before {
  content: "\f3ca";
}

.zmdi-airline-seat-flat:before {
  content: "\f3cb";
}

.zmdi-airline-seat-individual-suite:before {
  content: "\f3cc";
}

.zmdi-airline-seat-legroom-extra:before {
  content: "\f3cd";
}

.zmdi-airline-seat-legroom-normal:before {
  content: "\f3ce";
}

.zmdi-airline-seat-legroom-reduced:before {
  content: "\f3cf";
}

.zmdi-airline-seat-recline-extra:before {
  content: "\f3d0";
}

.zmdi-airline-seat-recline-normal:before {
  content: "\f3d1";
}

.zmdi-airplay:before {
  content: "\f3d2";
}

.zmdi-closed-caption:before {
  content: "\f3d3";
}

.zmdi-confirmation-number:before {
  content: "\f3d4";
}

.zmdi-developer-board:before {
  content: "\f3d5";
}

.zmdi-disc-full:before {
  content: "\f3d6";
}

.zmdi-explicit:before {
  content: "\f3d7";
}

.zmdi-flight-land:before {
  content: "\f3d8";
}

.zmdi-flight-takeoff:before {
  content: "\f3d9";
}

.zmdi-flip-to-back:before {
  content: "\f3da";
}

.zmdi-flip-to-front:before {
  content: "\f3db";
}

.zmdi-group-work:before {
  content: "\f3dc";
}

.zmdi-hd:before {
  content: "\f3dd";
}

.zmdi-hq:before {
  content: "\f3de";
}

.zmdi-markunread-mailbox:before {
  content: "\f3df";
}

.zmdi-memory:before {
  content: "\f3e0";
}

.zmdi-nfc:before {
  content: "\f3e1";
}

.zmdi-play-for-work:before {
  content: "\f3e2";
}

.zmdi-power-input:before {
  content: "\f3e3";
}

.zmdi-present-to-all:before {
  content: "\f3e4";
}

.zmdi-satellite:before {
  content: "\f3e5";
}

.zmdi-tap-and-play:before {
  content: "\f3e6";
}

.zmdi-vibration:before {
  content: "\f3e7";
}

.zmdi-voicemail:before {
  content: "\f3e8";
}

.zmdi-group:before {
  content: "\f3e9";
}

.zmdi-rss:before {
  content: "\f3ea";
}

.zmdi-shape:before {
  content: "\f3eb";
}

.zmdi-spinner:before {
  content: "\f3ec";
}

.zmdi-ungroup:before {
  content: "\f3ed";
}

.zmdi-500px:before {
  content: "\f3ee";
}

.zmdi-8tracks:before {
  content: "\f3ef";
}

.zmdi-amazon:before {
  content: "\f3f0";
}

.zmdi-blogger:before {
  content: "\f3f1";
}

.zmdi-delicious:before {
  content: "\f3f2";
}

.zmdi-disqus:before {
  content: "\f3f3";
}

.zmdi-flattr:before {
  content: "\f3f4";
}

.zmdi-flickr:before {
  content: "\f3f5";
}

.zmdi-github-alt:before {
  content: "\f3f6";
}

.zmdi-google-old:before {
  content: "\f3f7";
}

.zmdi-linkedin:before {
  content: "\f3f8";
}

.zmdi-odnoklassniki:before {
  content: "\f3f9";
}

.zmdi-outlook:before {
  content: "\f3fa";
}

.zmdi-paypal-alt:before {
  content: "\f3fb";
}

.zmdi-pinterest:before {
  content: "\f3fc";
}

.zmdi-playstation:before {
  content: "\f3fd";
}

.zmdi-reddit:before {
  content: "\f3fe";
}

.zmdi-skype:before {
  content: "\f3ff";
}

.zmdi-slideshare:before {
  content: "\f400";
}

.zmdi-soundcloud:before {
  content: "\f401";
}

.zmdi-tumblr:before {
  content: "\f402";
}

.zmdi-twitch:before {
  content: "\f403";
}

.zmdi-vimeo:before {
  content: "\f404";
}

.zmdi-whatsapp:before {
  content: "\f405";
}

.zmdi-xbox:before {
  content: "\f406";
}

.zmdi-yahoo:before {
  content: "\f407";
}

.zmdi-youtube-play:before {
  content: "\f408";
}

.zmdi-youtube:before {
  content: "\f409";
}

.zmdi-import-export:before {
  content: "\f30c";
}

.zmdi-swap-vertical-:before {
  content: "\f30c";
}

.zmdi-airplanemode-inactive:before {
  content: "\f102";
}

.zmdi-airplanemode-active:before {
  content: "\f103";
}

.zmdi-rate-review:before {
  content: "\f103";
}

.zmdi-comment-sign:before {
  content: "\f25a";
}

.zmdi-network-warning:before {
  content: "\f2ad";
}

.zmdi-shopping-cart-add:before {
  content: "\f1ca";
}

.zmdi-file-add:before {
  content: "\f221";
}

.zmdi-network-wifi-scan:before {
  content: "\f2e4";
}

.zmdi-collection-add:before {
  content: "\f14e";
}

.zmdi-format-playlist-add:before {
  content: "\f3ac";
}

.zmdi-format-queue-music:before {
  content: "\f3ab";
}

.zmdi-plus-box:before {
  content: "\f277";
}

.zmdi-tag-backspace:before {
  content: "\f1d9";
}

.zmdi-alarm-add:before {
  content: "\f32b";
}

.zmdi-battery-charging:before {
  content: "\f114";
}

.zmdi-daydream-setting:before {
  content: "\f217";
}

.zmdi-more-horiz:before {
  content: "\f19c";
}

.zmdi-book-photo:before {
  content: "\f11b";
}

.zmdi-incandescent:before {
  content: "\f189";
}

.zmdi-wb-iridescent:before {
  content: "\f38c";
}

.zmdi-calendar-remove:before {
  content: "\f330";
}

.zmdi-refresh-sync-disabled:before {
  content: "\f1b7";
}

.zmdi-refresh-sync-problem:before {
  content: "\f1b6";
}

.zmdi-crop-original:before {
  content: "\f17e";
}

.zmdi-power-off:before {
  content: "\f1af";
}

.zmdi-power-off-setting:before {
  content: "\f1ae";
}

.zmdi-leak-remove:before {
  content: "\f38d";
}

.zmdi-star-border:before {
  content: "\f27c";
}

.zmdi-brightness-low:before {
  content: "\f36d";
}

.zmdi-brightness-medium:before {
  content: "\f36e";
}

.zmdi-brightness-high:before {
  content: "\f36f";
}

.zmdi-smartphone-portrait:before {
  content: "\f2d4";
}

.zmdi-live-tv:before {
  content: "\f2d9";
}

.zmdi-format-textdirection-l-to-r:before {
  content: "\f249";
}

.zmdi-format-textdirection-r-to-l:before {
  content: "\f24a";
}

.zmdi-arrow-back:before {
  content: "\f2ea";
}

.zmdi-arrow-forward:before {
  content: "\f2ee";
}

.zmdi-arrow-in:before {
  content: "\f2e9";
}

.zmdi-arrow-out:before {
  content: "\f2ed";
}

.zmdi-rotate-90-degrees-ccw:before {
  content: "\f304";
}

.zmdi-adb:before {
  content: "\f33a";
}

.zmdi-network-wifi:before {
  content: "\f2e8";
}

.zmdi-network-wifi-alt:before {
  content: "\f2e3";
}

.zmdi-network-wifi-lock:before {
  content: "\f2e5";
}

.zmdi-network-wifi-off:before {
  content: "\f2e6";
}

.zmdi-network-wifi-outline:before {
  content: "\f2e7";
}

.zmdi-network-wifi-info:before {
  content: "\f2e4";
}

.zmdi-layers-clear:before {
  content: "\f18b";
}

.zmdi-colorize:before {
  content: "\f15d";
}

.zmdi-format-paint:before {
  content: "\f1ba";
}

.zmdi-format-quote:before {
  content: "\f1b2";
}

.zmdi-camera-monochrome-photos:before {
  content: "\f285";
}

.zmdi-sort-by-alpha:before {
  content: "\f1cf";
}

.zmdi-folder-shared:before {
  content: "\f225";
}

.zmdi-folder-special:before {
  content: "\f226";
}

.zmdi-comment-dots:before {
  content: "\f260";
}

.zmdi-reorder:before {
  content: "\f31e";
}

.zmdi-dehaze:before {
  content: "\f197";
}

.zmdi-sort:before {
  content: "\f1ce";
}

.zmdi-pages:before {
  content: "\f34a";
}

.zmdi-stack-overflow:before {
  content: "\f35c";
}

.zmdi-calendar-account:before {
  content: "\f204";
}

.zmdi-paste:before {
  content: "\f109";
}

.zmdi-cut:before {
  content: "\f1bc";
}

.zmdi-save:before {
  content: "\f297";
}

.zmdi-smartphone-code:before {
  content: "\f139";
}

.zmdi-directions-bike:before {
  content: "\f117";
}

.zmdi-directions-boat:before {
  content: "\f11a";
}

.zmdi-directions-bus:before {
  content: "\f121";
}

.zmdi-directions-car:before {
  content: "\f125";
}

.zmdi-directions-railway:before {
  content: "\f1b3";
}

.zmdi-directions-run:before {
  content: "\f215";
}

.zmdi-directions-subway:before {
  content: "\f1d5";
}

.zmdi-directions-walk:before {
  content: "\f216";
}

.zmdi-local-hotel:before {
  content: "\f178";
}

.zmdi-local-activity:before {
  content: "\f1df";
}

.zmdi-local-play:before {
  content: "\f1df";
}

.zmdi-local-airport:before {
  content: "\f103";
}

.zmdi-local-atm:before {
  content: "\f198";
}

.zmdi-local-bar:before {
  content: "\f137";
}

.zmdi-local-cafe:before {
  content: "\f13b";
}

.zmdi-local-car-wash:before {
  content: "\f124";
}

.zmdi-local-convenience-store:before {
  content: "\f1d3";
}

.zmdi-local-dining:before {
  content: "\f153";
}

.zmdi-local-drink:before {
  content: "\f157";
}

.zmdi-local-florist:before {
  content: "\f168";
}

.zmdi-local-gas-station:before {
  content: "\f16f";
}

.zmdi-local-grocery-store:before {
  content: "\f1cb";
}

.zmdi-local-hospital:before {
  content: "\f177";
}

.zmdi-local-laundry-service:before {
  content: "\f1e9";
}

.zmdi-local-library:before {
  content: "\f18d";
}

.zmdi-local-mall:before {
  content: "\f195";
}

.zmdi-local-movies:before {
  content: "\f19d";
}

.zmdi-local-offer:before {
  content: "\f187";
}

.zmdi-local-parking:before {
  content: "\f1a5";
}

.zmdi-local-parking:before {
  content: "\f1a5";
}

.zmdi-local-pharmacy:before {
  content: "\f176";
}

.zmdi-local-phone:before {
  content: "\f2be";
}

.zmdi-local-pizza:before {
  content: "\f1ac";
}

.zmdi-local-post-office:before {
  content: "\f15a";
}

.zmdi-local-printshop:before {
  content: "\f1b0";
}

.zmdi-local-see:before {
  content: "\f28c";
}

.zmdi-local-shipping:before {
  content: "\f1e6";
}

.zmdi-local-store:before {
  content: "\f1d4";
}

.zmdi-local-taxi:before {
  content: "\f123";
}

.zmdi-local-wc:before {
  content: "\f211";
}

.zmdi-my-location:before {
  content: "\f299";
}

.zmdi-directions:before {
  content: "\f1e7";
}

.waves-effect.waves-classic .waves-ripple {
  background: rgba(0, 0, 0, 0.2);
}

.waves-effect.waves-classic.waves-light .waves-ripple {
  background: rgba(255, 255, 255, 0.4);
}

.waves-float {
  -webkit-mask-image: none;
  -webkit-box-shadow: 0px 1px 1.5px 1px rgba(0, 0, 0, 0.12);
  box-shadow: 0px 1px 1.5px 1px rgba(0, 0, 0, 0.12);
  -webkit-transition: all 300ms;
  -moz-transition: all 300ms;
  -o-transition: all 300ms;
  transition: all 300ms;
}

.waves-float:active {
  -webkit-box-shadow: 0px 8px 20px 1px rgba(0, 0, 0, 0.3);
  box-shadow: 0px 8px 20px 1px rgba(0, 0, 0, 0.3);
}

.waves-block {
  display: block;
}

.slideUp {
  animation-name: slideUp;
  -webkit-animation-name: slideUp;
  animation-duration: 1s;
  -webkit-animation-duration: 1s;
  animation-timing-function: ease;
  -webkit-animation-timing-function: ease;
  visibility: visible !important;
}

@keyframes slideUp {
  0% {
    transform: translateY(100%);
  }
  50% {
    transform: translateY(-8%);
  }
  65% {
    transform: translateY(4%);
  }
  80% {
    transform: translateY(-4%);
  }
  95% {
    transform: translateY(2%);
  }
  100% {
    transform: translateY(0%);
  }
}

@-webkit-keyframes slideUp {
  0% {
    -webkit-transform: translateY(100%);
  }
  50% {
    -webkit-transform: translateY(-8%);
  }
  65% {
    -webkit-transform: translateY(4%);
  }
  80% {
    -webkit-transform: translateY(-4%);
  }
  95% {
    -webkit-transform: translateY(2%);
  }
  100% {
    -webkit-transform: translateY(0%);
  }
}

.slideLeft {
  animation-name: slideLeft;
  -webkit-animation-name: slideLeft;
  animation-duration: 1s;
  -webkit-animation-duration: 1s;
  animation-timing-function: ease-in-out;
  -webkit-animation-timing-function: ease-in-out;
  visibility: visible !important;
}

@keyframes slideLeft {
  0% {
    transform: translateX(150%);
  }
  50% {
    transform: translateX(-8%);
  }
  65% {
    transform: translateX(4%);
  }
  80% {
    transform: translateX(-4%);
  }
  95% {
    transform: translateX(2%);
  }
  100% {
    transform: translateX(0%);
  }
}

@-webkit-keyframes slideLeft {
  0% {
    -webkit-transform: translateX(150%);
  }
  50% {
    -webkit-transform: translateX(-8%);
  }
  65% {
    -webkit-transform: translateX(4%);
  }
  80% {
    -webkit-transform: translateX(-4%);
  }
  95% {
    -webkit-transform: translateX(2%);
  }
  100% {
    -webkit-transform: translateX(0%);
  }
}

.slideRight {
  animation-name: slideRight;
  -webkit-animation-name: slideRight;
  animation-duration: 1s;
  -webkit-animation-duration: 1s;
  animation-timing-function: ease-in-out;
  -webkit-animation-timing-function: ease-in-out;
  visibility: visible !important;
}

@keyframes slideRight {
  0% {
    transform: translateX(-150%);
  }
  50% {
    transform: translateX(8%);
  }
  65% {
    transform: translateX(-4%);
  }
  80% {
    transform: translateX(4%);
  }
  95% {
    transform: translateX(-2%);
  }
  100% {
    transform: translateX(0%);
  }
}

@-webkit-keyframes slideRight {
  0% {
    -webkit-transform: translateX(-150%);
  }
  50% {
    -webkit-transform: translateX(8%);
  }
  65% {
    -webkit-transform: translateX(-4%);
  }
  80% {
    -webkit-transform: translateX(4%);
  }
  95% {
    -webkit-transform: translateX(-2%);
  }
  100% {
    -webkit-transform: translateX(0%);
  }
}

.slideExpandUp {
  animation-name: slideExpandUp;
  -webkit-animation-name: slideExpandUp;
  animation-duration: 1.6s;
  -webkit-animation-duration: 1.6s;
  animation-timing-function: ease-out;
  -webkit-animation-timing-function: ease -out;
  visibility: visible !important;
}

@keyframes slideExpandUp {
  0% {
    transform: translateY(100%) scaleX(0.5);
  }
  30% {
    transform: translateY(-8%) scaleX(0.5);
  }
  40% {
    transform: translateY(2%) scaleX(0.5);
  }
  50% {
    transform: translateY(0%) scaleX(1.1);
  }
  60% {
    transform: translateY(0%) scaleX(0.9);
  }
  70% {
    transform: translateY(0%) scaleX(1.05);
  }
  80% {
    transform: translateY(0%) scaleX(0.95);
  }
  90% {
    transform: translateY(0%) scaleX(1.02);
  }
  100% {
    transform: translateY(0%) scaleX(1);
  }
}

@-webkit-keyframes slideExpandUp {
  0% {
    -webkit-transform: translateY(100%) scaleX(0.5);
  }
  30% {
    -webkit-transform: translateY(-8%) scaleX(0.5);
  }
  40% {
    -webkit-transform: translateY(2%) scaleX(0.5);
  }
  50% {
    -webkit-transform: translateY(0%) scaleX(1.1);
  }
  60% {
    -webkit-transform: translateY(0%) scaleX(0.9);
  }
  70% {
    -webkit-transform: translateY(0%) scaleX(1.05);
  }
  80% {
    -webkit-transform: translateY(0%) scaleX(0.95);
  }
  90% {
    -webkit-transform: translateY(0%) scaleX(1.02);
  }
  100% {
    -webkit-transform: translateY(0%) scaleX(1);
  }
}

.expandUp {
  animation-name: expandUp;
  -webkit-animation-name: expandUp;
  animation-duration: 0.7s;
  -webkit-animation-duration: 0.7s;
  animation-timing-function: ease;
  -webkit-animation-timing-function: ease;
  visibility: visible !important;
}

@keyframes expandUp {
  0% {
    transform: translateY(100%) scale(0.6) scaleY(0.5);
  }
  60% {
    transform: translateY(-7%) scaleY(1.12);
  }
  75% {
    transform: translateY(3%);
  }
  100% {
    transform: translateY(0%) scale(1) scaleY(1);
  }
}

@-webkit-keyframes expandUp {
  0% {
    -webkit-transform: translateY(100%) scale(0.6) scaleY(0.5);
  }
  60% {
    -webkit-transform: translateY(-7%) scaleY(1.12);
  }
  75% {
    -webkit-transform: translateY(3%);
  }
  100% {
    -webkit-transform: translateY(0%) scale(1) scaleY(1);
  }
}

.fadeIn {
  animation-name: fadeIn;
  -webkit-animation-name: fadeIn;
  animation-duration: 1.5s;
  -webkit-animation-duration: 1.5s;
  animation-timing-function: ease-in-out;
  -webkit-animation-timing-function: ease-in-out;
  visibility: visible !important;
}

@-webkit-keyframes fadeIn {
  0% {
    -webkit-transform: scale(0);
    opacity: 0;
  }
  60% {
    -webkit-transform: scale(1.1);
  }
  80% {
    -webkit-transform: scale(0.9);
    opacity: 1;
  }
  100% {
    -webkit-transform: scale(1);
    opacity: 1;
  }
}

.expandOpen {
  animation-name: expandOpen;
  -webkit-animation-name: expandOpen;
  animation-duration: 1.2s;
  -webkit-animation-duration: 1.2s;
  animation-timing-function: ease-out;
  -webkit-animation-timing-function: ease-out;
  visibility: visible !important;
}

@keyframes expandOpen {
  0% {
    transform: scale(1.8);
  }
  50% {
    transform: scale(0.95);
  }
  80% {
    transform: scale(1.05);
  }
  90% {
    transform: scale(0.98);
  }
  100% {
    transform: scale(1);
  }
}

@-webkit-keyframes expandOpen {
  0% {
    -webkit-transform: scale(1.8);
  }
  50% {
    -webkit-transform: scale(0.95);
  }
  80% {
    -webkit-transform: scale(1.05);
  }
  90% {
    -webkit-transform: scale(0.98);
  }
  100% {
    -webkit-transform: scale(1);
  }
}

.bigEntrance {
  animation-name: bigEntrance;
  -webkit-animation-name: bigEntrance;
  animation-duration: 1.6s;
  -webkit-animation-duration: 1.6s;
  animation-timing-function: ease-out;
  -webkit-animation-timing-function: ease-out;
  visibility: visible !important;
}

@keyframes bigEntrance {
  0% {
    transform: scale(0.3) rotate(6deg) translateX(-30%) translateY(30%);
    opacity: 0.2;
  }
  30% {
    transform: scale(1.03) rotate(-2deg) translateX(2%) translateY(-2%);
    opacity: 1;
  }
  45% {
    transform: scale(0.98) rotate(1deg) translateX(0%) translateY(0%);
    opacity: 1;
  }
  60% {
    transform: scale(1.01) rotate(-1deg) translateX(0%) translateY(0%);
    opacity: 1;
  }
  75% {
    transform: scale(0.99) rotate(1deg) translateX(0%) translateY(0%);
    opacity: 1;
  }
  90% {
    transform: scale(1.01) rotate(0deg) translateX(0%) translateY(0%);
    opacity: 1;
  }
  100% {
    transform: scale(1) rotate(0deg) translateX(0%) translateY(0%);
    opacity: 1;
  }
}

@-webkit-keyframes bigEntrance {
  0% {
    -webkit-transform: scale(0.3) rotate(6deg) translateX(-30%) translateY(30%);
    opacity: 0.2;
  }
  30% {
    -webkit-transform: scale(1.03) rotate(-2deg) translateX(2%) translateY(-2%);
    opacity: 1;
  }
  45% {
    -webkit-transform: scale(0.98) rotate(1deg) translateX(0%) translateY(0%);
    opacity: 1;
  }
  60% {
    -webkit-transform: scale(1.01) rotate(-1deg) translateX(0%) translateY(0%);
    opacity: 1;
  }
  75% {
    -webkit-transform: scale(0.99) rotate(1deg) translateX(0%) translateY(0%);
    opacity: 1;
  }
  90% {
    -webkit-transform: scale(1.01) rotate(0deg) translateX(0%) translateY(0%);
    opacity: 1;
  }
  100% {
    -webkit-transform: scale(1) rotate(0deg) translateX(0%) translateY(0%);
    opacity: 1;
  }
}

.hatch {
  animation-name: hatch;
  -webkit-animation-name: hatch;
  animation-duration: 2s;
  -webkit-animation-duration: 2s;
  animation-timing-function: ease-in-out;
  -webkit-animation-timing-function: ease-in-out;
  transform-origin: 50% 100%;
  -ms-transform-origin: 50% 100%;
  -webkit-transform-origin: 50% 100%;
  visibility: visible !important;
}

@keyframes hatch {
  0% {
    transform: rotate(0deg) scaleY(0.6);
  }
  20% {
    transform: rotate(-2deg) scaleY(1.05);
  }
  35% {
    transform: rotate(2deg) scaleY(1);
  }
  50% {
    transform: rotate(-2deg);
  }
  65% {
    transform: rotate(1deg);
  }
  80% {
    transform: rotate(-1deg);
  }
  100% {
    transform: rotate(0deg);
  }
}

@-webkit-keyframes hatch {
  0% {
    -webkit-transform: rotate(0deg) scaleY(0.6);
  }
  20% {
    -webkit-transform: rotate(-2deg) scaleY(1.05);
  }
  35% {
    -webkit-transform: rotate(2deg) scaleY(1);
  }
  50% {
    -webkit-transform: rotate(-2deg);
  }
  65% {
    -webkit-transform: rotate(1deg);
  }
  80% {
    -webkit-transform: rotate(-1deg);
  }
  100% {
    -webkit-transform: rotate(0deg);
  }
}

.bounce {
  animation-name: bounce;
  -webkit-animation-name: bounce;
  animation-duration: 1.6s;
  -webkit-animation-duration: 1.6s;
  animation-timing-function: ease;
  -webkit-animation-timing-function: ease;
  transform-origin: 50% 100%;
  -ms-transform-origin: 50% 100%;
  -webkit-transform-origin: 50% 100%;
}

@keyframes bounce {
  0% {
    transform: translateY(0%) scaleY(0.6);
  }
  60% {
    transform: translateY(-100%) scaleY(1.1);
  }
  70% {
    transform: translateY(0%) scaleY(0.95) scaleX(1.05);
  }
  80% {
    transform: translateY(0%) scaleY(1.05) scaleX(1);
  }
  90% {
    transform: translateY(0%) scaleY(0.95) scaleX(1);
  }
  100% {
    transform: translateY(0%) scaleY(1) scaleX(1);
  }
}

@-webkit-keyframes bounce {
  0% {
    -webkit-transform: translateY(0%) scaleY(0.6);
  }
  60% {
    -webkit-transform: translateY(-100%) scaleY(1.1);
  }
  70% {
    -webkit-transform: translateY(0%) scaleY(0.95) scaleX(1.05);
  }
  80% {
    -webkit-transform: translateY(0%) scaleY(1.05) scaleX(1);
  }
  90% {
    -webkit-transform: translateY(0%) scaleY(0.95) scaleX(1);
  }
  100% {
    -webkit-transform: translateY(0%) scaleY(1) scaleX(1);
  }
}

.pulse {
  animation-name: pulse;
  -webkit-animation-name: pulse;
  animation-duration: 1.5s;
  -webkit-animation-duration: 1.5s;
  animation-iteration-count: infinite;
  -webkit-animation-iteration-count: infinite;
}

@keyframes pulse {
  0% {
    transform: scale(0.9);
    opacity: 0.7;
  }
  50% {
    transform: scale(1);
    opacity: 1;
  }
  100% {
    transform: scale(0.9);
    opacity: 0.7;
  }
}

@-webkit-keyframes pulse {
  0% {
    -webkit-transform: scale(0.95);
    opacity: 0.7;
  }
  50% {
    -webkit-transform: scale(1);
    opacity: 1;
  }
  100% {
    -webkit-transform: scale(0.95);
    opacity: 0.7;
  }
}

.floating {
  animation-name: floating;
  -webkit-animation-name: floating;
  animation-duration: 1.5s;
  -webkit-animation-duration: 1.5s;
  animation-iteration-count: infinite;
  -webkit-animation-iteration-count: infinite;
}

@keyframes floating {
  0% {
    transform: translateY(0%);
  }
  50% {
    transform: translateY(8%);
  }
  100% {
    transform: translateY(0%);
  }
}

@-webkit-keyframes floating {
  0% {
    -webkit-transform: translateY(0%);
  }
  50% {
    -webkit-transform: translateY(8%);
  }
  100% {
    -webkit-transform: translateY(0%);
  }
}

.tossing {
  animation-name: tossing;
  -webkit-animation-name: tossing;
  animation-duration: 2.5s;
  -webkit-animation-duration: 2.5s;
  animation-iteration-count: infinite;
  -webkit-animation-iteration-count: infinite;
}

@keyframes tossing {
  0% {
    transform: rotate(-4deg);
  }
  50% {
    transform: rotate(4deg);
  }
  100% {
    transform: rotate(-4deg);
  }
}

@-webkit-keyframes tossing {
  0% {
    -webkit-transform: rotate(-4deg);
  }
  50% {
    -webkit-transform: rotate(4deg);
  }
  100% {
    -webkit-transform: rotate(-4deg);
  }
}

.pullUp {
  animation-name: pullUp;
  -webkit-animation-name: pullUp;
  animation-duration: 1.1s;
  -webkit-animation-duration: 1.1s;
  animation-timing-function: ease-out;
  -webkit-animation-timing-function: ease-out;
  transform-origin: 50% 100%;
  -ms-transform-origin: 50% 100%;
  -webkit-transform-origin: 50% 100%;
}

@keyframes pullUp {
  0% {
    transform: scaleY(0.1);
  }
  40% {
    transform: scaleY(1.02);
  }
  60% {
    transform: scaleY(0.98);
  }
  80% {
    transform: scaleY(1.01);
  }
  100% {
    transform: scaleY(0.98);
  }
  80% {
    transform: scaleY(1.01);
  }
  100% {
    transform: scaleY(1);
  }
}

@-webkit-keyframes pullUp {
  0% {
    -webkit-transform: scaleY(0.1);
  }
  40% {
    -webkit-transform: scaleY(1.02);
  }
  60% {
    -webkit-transform: scaleY(0.98);
  }
  80% {
    -webkit-transform: scaleY(1.01);
  }
  100% {
    -webkit-transform: scaleY(0.98);
  }
  80% {
    -webkit-transform: scaleY(1.01);
  }
  100% {
    -webkit-transform: scaleY(1);
  }
}

.pullDown {
  animation-name: pullDown;
  -webkit-animation-name: pullDown;
  animation-duration: 1.1s;
  -webkit-animation-duration: 1.1s;
  animation-timing-function: ease-out;
  -webkit-animation-timing-function: ease-out;
  transform-origin: 50% 0%;
  -ms-transform-origin: 50% 0%;
  -webkit-transform-origin: 50% 0%;
}

@keyframes pullDown {
  0% {
    transform: scaleY(0.1);
  }
  40% {
    transform: scaleY(1.02);
  }
  60% {
    transform: scaleY(0.98);
  }
  80% {
    transform: scaleY(1.01);
  }
  100% {
    transform: scaleY(0.98);
  }
  80% {
    transform: scaleY(1.01);
  }
  100% {
    transform: scaleY(1);
  }
}

@-webkit-keyframes pullDown {
  0% {
    -webkit-transform: scaleY(0.1);
  }
  40% {
    -webkit-transform: scaleY(1.02);
  }
  60% {
    -webkit-transform: scaleY(0.98);
  }
  80% {
    -webkit-transform: scaleY(1.01);
  }
  100% {
    -webkit-transform: scaleY(0.98);
  }
  80% {
    -webkit-transform: scaleY(1.01);
  }
  100% {
    -webkit-transform: scaleY(1);
  }
}

.stretchLeft {
  animation-name: stretchLeft;
  -webkit-animation-name: stretchLeft;
  animation-duration: 1.5s;
  -webkit-animation-duration: 1.5s;
  animation-timing-function: ease-out;
  -webkit-animation-timing-function: ease-out;
  transform-origin: 100% 0%;
  -ms-transform-origin: 100% 0%;
  -webkit-transform-origin: 100% 0%;
}

@keyframes stretchLeft {
  0% {
    transform: scaleX(0.3);
  }
  40% {
    transform: scaleX(1.02);
  }
  60% {
    transform: scaleX(0.98);
  }
  80% {
    transform: scaleX(1.01);
  }
  100% {
    transform: scaleX(0.98);
  }
  80% {
    transform: scaleX(1.01);
  }
  100% {
    transform: scaleX(1);
  }
}

@-webkit-keyframes stretchLeft {
  0% {
    -webkit-transform: scaleX(0.3);
  }
  40% {
    -webkit-transform: scaleX(1.02);
  }
  60% {
    -webkit-transform: scaleX(0.98);
  }
  80% {
    -webkit-transform: scaleX(1.01);
  }
  100% {
    -webkit-transform: scaleX(0.98);
  }
  80% {
    -webkit-transform: scaleX(1.01);
  }
  100% {
    -webkit-transform: scaleX(1);
  }
}

.stretchRight {
  animation-name: stretchRight;
  -webkit-animation-name: stretchRight;
  animation-duration: 1.5s;
  -webkit-animation-duration: 1.5s;
  animation-timing-function: ease-out;
  -webkit-animation-timing-function: ease-out;
  transform-origin: 0% 0%;
  -ms-transform-origin: 0% 0%;
  -webkit-transform-origin: 0% 0%;
}

@keyframes stretchRight {
  0% {
    transform: scaleX(0.3);
  }
  40% {
    transform: scaleX(1.02);
  }
  60% {
    transform: scaleX(0.98);
  }
  80% {
    transform: scaleX(1.01);
  }
  100% {
    transform: scaleX(0.98);
  }
  80% {
    transform: scaleX(1.01);
  }
  100% {
    transform: scaleX(1);
  }
}

@-webkit-keyframes stretchRight {
  0% {
    -webkit-transform: scaleX(0.3);
  }
  40% {
    -webkit-transform: scaleX(1.02);
  }
  60% {
    -webkit-transform: scaleX(0.98);
  }
  80% {
    -webkit-transform: scaleX(1.01);
  }
  100% {
    -webkit-transform: scaleX(0.98);
  }
  80% {
    -webkit-transform: scaleX(1.01);
  }
  100% {
    -webkit-transform: scaleX(1);
  }
}

.navbar > .col-12 {
  padding: 0;
}

.navbar .navbar-brand {
  white-space: nowrap;
  -ms-text-overflow: ellipsis;
  -o-text-overflow: ellipsis;
  text-overflow: ellipsis;
  overflow: hidden;
}

.navbar .navbar-toggle {
  text-decoration: none;
  color: #fff;
  width: 20px;
  height: 20px;
  margin-top: -4px;
  margin-right: 17px;
}

.navbar .navbar-toggle:before {
  content: "\E8D5";
  font-family: "Material Icons";
  font-size: 26px;
}

.navbar .navbar-collapse.in {
  overflow: visible;
}

.ls-toggle-menu .sidebar {
  margin-left: -300px;
}

.ls-toggle-menu section.content {
  margin-left: 0px;
}

.ls-closed .sidebar {
  margin-left: -300px;
}

.ls-closed section.content {
  margin-left: 0px;
}

.ls-closed .bars:after,
.ls-closed .bars:before {
  font-family: "Material Icons";
  font-size: 24px;
  position: absolute;
  top: 9px;
  left: 12px;
  margin-right: 10px;
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  -webkit-transform: scale(0);
  transform: scale(0);
  -moz-transition: all 0.3s;
  -o-transition: all 0.3s;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.ls-closed .bars:before {
  content: "\E5D2";
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  -webkit-transform: scale(1);
  transform: scale(1);
}

.ls-closed .bars:after {
  content: "\E5C4";
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  -webkit-transform: scale(0);
  transform: scale(0);
}

.ls-closed .navbar-brand {
  margin-left: 30px;
}

.overlay-open .bars:before {
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  -webkit-transform: scale(0);
  transform: scale(0);
}

.overlay-open .bars:after {
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  -webkit-transform: scale(1);
  transform: scale(1);
}

.navbar-header .navbar-brand {
  padding: 0;
  font-size: 1rem;
}

.navbar-header .bars {
  float: left;
  text-decoration: none;
}

.navbar-nav.navbar-left,
.navbar-nav.navbar-right {
  vertical-align: top;
}

.navbar-nav.navbar-left {
  padding: 18px 0px 13px 15px;
}

.navbar-nav.navbar-left .dropdown-menu {
  left: 0;
  right: auto;
  padding: 0;
}

.navbar-nav.navbar-left .dropdown-menu ul.menu li {
  list-style: none;
  border-bottom: none;
}

.navbar-nav.navbar-right {
  padding: 18px 15px 13px 0px;
  float: right;
}

.navbar-nav > li > a {
  padding: 0 10px;
}

.navbar-nav > li > a i {
  font-size: 20px;
}

.navbar-nav .menu-app .menu {
  padding: 0;
  width: 310px;
  margin: 15px;
}

.navbar-nav .menu-app .menu li {
  display: inline-block;
}

.navbar-nav .menu-app .menu li a {
  line-height: 24px;
  text-transform: uppercase;
  text-align: center;
  transition: all 0.3s;
  display: block;
  padding: 0px !important;
  width: 90px;
  height: 80px;
  margin: 5px;
  border-radius: 3px;
  color: #3d4c5a;
}

.navbar-nav .menu-app .menu li a i {
  display: block;
  line-height: 45px;
  font-size: 22px;
}

.navbar-nav .menu-app .menu li a span {
  font-size: 15px;
  text-transform: none;
  display: block;
}

.label-count {
  position: absolute;
  top: 2px;
  right: 6px;
  font-size: 10px;
  line-height: 15px;
  background-color: #000;
  padding: 0 4px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  border-radius: 3px;
}

.col-red .navbar .navbar-brand,
.col-red .navbar .navbar-brand:hover,
.col-red .navbar .navbar-brand:active,
.col-red .navbar .navbar-brand:focus {
  color: #fff;
}

.col-red .navbar .nav > li > a:hover,
.col-red .navbar .nav > li > a:focus,
.col-red .navbar .nav .open > a,
.col-red .navbar .nav .open > a:hover,
.col-red .navbar .nav .open > a:focus {
  background-color: rgba(0, 0, 0, 0.05);
}

.col-red .navbar .nav > li > a {
  color: #fff;
}

.col-red .navbar .bars {
  float: left;
  padding: 10px 20px;
  font-size: 22px;
  color: #fff;
  margin-right: 10px;
  margin-left: -10px;
  margin-top: 4px;
}

.col-red .navbar .bars:hover {
  background-color: rgba(0, 0, 0, 0.08);
}

.col-pink .navbar .navbar-brand,
.col-pink .navbar .navbar-brand:hover,
.col-pink .navbar .navbar-brand:active,
.col-pink .navbar .navbar-brand:focus {
  color: #fff;
}

.col-pink .navbar .nav > li > a:hover,
.col-pink .navbar .nav > li > a:focus,
.col-pink .navbar .nav .open > a,
.col-pink .navbar .nav .open > a:hover,
.col-pink .navbar .nav .open > a:focus {
  background-color: rgba(0, 0, 0, 0.05);
}

.col-pink .navbar .nav > li > a {
  color: #fff;
}

.col-pink .navbar .bars {
  float: left;
  padding: 10px 20px;
  font-size: 22px;
  color: #fff;
  margin-right: 10px;
  margin-left: -10px;
  margin-top: 4px;
}

.col-pink .navbar .bars:hover {
  background-color: rgba(0, 0, 0, 0.08);
}

.col-purple .navbar .navbar-brand,
.col-purple .navbar .navbar-brand:hover,
.col-purple .navbar .navbar-brand:active,
.col-purple .navbar .navbar-brand:focus {
  color: #fff;
}

.col-purple .navbar .nav > li > a:hover,
.col-purple .navbar .nav > li > a:focus,
.col-purple .navbar .nav .open > a,
.col-purple .navbar .nav .open > a:hover,
.col-purple .navbar .nav .open > a:focus {
  background-color: rgba(0, 0, 0, 0.05);
}

.col-purple .navbar .nav > li > a {
  color: #fff;
}

.col-purple .navbar .bars {
  float: left;
  padding: 10px 20px;
  font-size: 22px;
  color: #fff;
  margin-right: 10px;
  margin-left: -10px;
  margin-top: 4px;
}

.col-purple .navbar .bars:hover {
  background-color: rgba(0, 0, 0, 0.08);
}

.col-deep-purple .navbar .navbar-brand,
.col-deep-purple .navbar .navbar-brand:hover,
.col-deep-purple .navbar .navbar-brand:active,
.col-deep-purple .navbar .navbar-brand:focus {
  color: #fff;
}

.col-deep-purple .navbar .nav > li > a:hover,
.col-deep-purple .navbar .nav > li > a:focus,
.col-deep-purple .navbar .nav .open > a,
.col-deep-purple .navbar .nav .open > a:hover,
.col-deep-purple .navbar .nav .open > a:focus {
  background-color: rgba(0, 0, 0, 0.05);
}

.col-deep-purple .navbar .nav > li > a {
  color: #fff;
}

.col-deep-purple .navbar .bars {
  float: left;
  padding: 10px 20px;
  font-size: 22px;
  color: #fff;
  margin-right: 10px;
  margin-left: -10px;
  margin-top: 4px;
}

.col-deep-purple .navbar .bars:hover {
  background-color: rgba(0, 0, 0, 0.08);
}

.col-blue .navbar .navbar-brand,
.col-blue .navbar .navbar-brand:hover,
.col-blue .navbar .navbar-brand:active,
.col-blue .navbar .navbar-brand:focus {
  color: #fff;
}

.col-blue .navbar .nav > li > a:hover,
.col-blue .navbar .nav > li > a:focus,
.col-blue .navbar .nav .open > a,
.col-blue .navbar .nav .open > a:hover,
.col-blue .navbar .nav .open > a:focus {
  background-color: rgba(0, 0, 0, 0.05);
}

.col-blue .navbar .nav > li > a {
  color: #fff;
}

.col-blue .navbar .bars {
  float: left;
  padding: 10px 20px;
  font-size: 22px;
  color: #fff;
  margin-right: 10px;
  margin-left: -10px;
  margin-top: 4px;
}

.col-blue .navbar .bars:hover {
  background-color: rgba(0, 0, 0, 0.08);
}

.col-cyan .navbar .navbar-brand,
.col-cyan .navbar .navbar-brand:hover,
.col-cyan .navbar .navbar-brand:active,
.col-cyan .navbar .navbar-brand:focus {
  color: #fff;
}

.col-cyan .navbar .nav > li > a:hover,
.col-cyan .navbar .nav > li > a:focus,
.col-cyan .navbar .nav .open > a,
.col-cyan .navbar .nav .open > a:hover,
.col-cyan .navbar .nav .open > a:focus {
  background-color: rgba(0, 0, 0, 0.05);
}

.col-cyan .navbar .nav > li > a {
  color: #fff;
}

.col-cyan .navbar .bars {
  float: left;
  padding: 10px 20px;
  font-size: 22px;
  color: #fff;
  margin-right: 10px;
  margin-left: -10px;
  margin-top: 4px;
}

.col-cyan .navbar .bars:hover {
  background-color: rgba(0, 0, 0, 0.08);
}

.col-green .navbar .navbar-brand,
.col-green .navbar .navbar-brand:hover,
.col-green .navbar .navbar-brand:active,
.col-green .navbar .navbar-brand:focus {
  color: #fff;
}

.col-green .navbar .nav > li > a:hover,
.col-green .navbar .nav > li > a:focus,
.col-green .navbar .nav .open > a,
.col-green .navbar .nav .open > a:hover,
.col-green .navbar .nav .open > a:focus {
  background-color: rgba(0, 0, 0, 0.05);
}

.col-green .navbar .nav > li > a {
  color: #fff;
}

.col-green .navbar .bars {
  float: left;
  padding: 10px 20px;
  font-size: 22px;
  color: #fff;
  margin-right: 10px;
  margin-left: -10px;
  margin-top: 4px;
}

.col-green .navbar .bars:hover {
  background-color: rgba(0, 0, 0, 0.08);
}

.col-light-green .navbar .navbar-brand,
.col-light-green .navbar .navbar-brand:hover,
.col-light-green .navbar .navbar-brand:active,
.col-light-green .navbar .navbar-brand:focus {
  color: #fff;
}

.col-light-green .navbar .nav > li > a:hover,
.col-light-green .navbar .nav > li > a:focus,
.col-light-green .navbar .nav .open > a,
.col-light-green .navbar .nav .open > a:hover,
.col-light-green .navbar .nav .open > a:focus {
  background-color: rgba(0, 0, 0, 0.05);
}

.col-light-green .navbar .nav > li > a {
  color: #fff;
}

.col-light-green .navbar .bars {
  float: left;
  padding: 10px 20px;
  font-size: 22px;
  color: #fff;
  margin-right: 10px;
  margin-left: -10px;
  margin-top: 4px;
}

.col-light-green .navbar .bars:hover {
  background-color: rgba(0, 0, 0, 0.08);
}

.col-yellow .navbar .navbar-brand,
.col-yellow .navbar .navbar-brand:hover,
.col-yellow .navbar .navbar-brand:active,
.col-yellow .navbar .navbar-brand:focus {
  color: #fff;
}

.col-yellow .navbar .nav > li > a:hover,
.col-yellow .navbar .nav > li > a:focus,
.col-yellow .navbar .nav .open > a,
.col-yellow .navbar .nav .open > a:hover,
.col-yellow .navbar .nav .open > a:focus {
  background-color: rgba(0, 0, 0, 0.05);
}

.col-yellow .navbar .nav > li > a {
  color: #fff;
}

.col-yellow .navbar .bars {
  float: left;
  padding: 10px 20px;
  font-size: 22px;
  color: #fff;
  margin-right: 10px;
  margin-left: -10px;
  margin-top: 4px;
}

.col-yellow .navbar .bars:hover {
  background-color: rgba(0, 0, 0, 0.08);
}

.col-orange .navbar .navbar-brand,
.col-orange .navbar .navbar-brand:hover,
.col-orange .navbar .navbar-brand:active,
.col-orange .navbar .navbar-brand:focus {
  color: #fff;
}

.col-orange .navbar .nav > li > a:hover,
.col-orange .navbar .nav > li > a:focus,
.col-orange .navbar .nav .open > a,
.col-orange .navbar .nav .open > a:hover,
.col-orange .navbar .nav .open > a:focus {
  background-color: rgba(0, 0, 0, 0.05);
}

.col-orange .navbar .nav > li > a {
  color: #fff;
}

.col-orange .navbar .bars {
  float: left;
  padding: 10px 20px;
  font-size: 22px;
  color: #fff;
  margin-right: 10px;
  margin-left: -10px;
  margin-top: 4px;
}

.col-orange .navbar .bars:hover {
  background-color: rgba(0, 0, 0, 0.08);
}

.col-deep-orange .navbar .navbar-brand,
.col-deep-orange .navbar .navbar-brand:hover,
.col-deep-orange .navbar .navbar-brand:active,
.col-deep-orange .navbar .navbar-brand:focus {
  color: #fff;
}

.col-deep-orange .navbar .nav > li > a:hover,
.col-deep-orange .navbar .nav > li > a:focus,
.col-deep-orange .navbar .nav .open > a,
.col-deep-orange .navbar .nav .open > a:hover,
.col-deep-orange .navbar .nav .open > a:focus {
  background-color: rgba(0, 0, 0, 0.05);
}

.col-deep-orange .navbar .nav > li > a {
  color: #fff;
}

.col-deep-orange .navbar .bars {
  float: left;
  padding: 10px 20px;
  font-size: 22px;
  color: #fff;
  margin-right: 10px;
  margin-left: -10px;
  margin-top: 4px;
}

.col-deep-orange .navbar .bars:hover {
  background-color: rgba(0, 0, 0, 0.08);
}

.col-grey .navbar .navbar-brand,
.col-grey .navbar .navbar-brand:hover,
.col-grey .navbar .navbar-brand:active,
.col-grey .navbar .navbar-brand:focus {
  color: #fff;
}

.col-grey .navbar .nav > li > a:hover,
.col-grey .navbar .nav > li > a:focus,
.col-grey .navbar .nav .open > a,
.col-grey .navbar .nav .open > a:hover,
.col-grey .navbar .nav .open > a:focus {
  background-color: rgba(0, 0, 0, 0.05);
}

.col-grey .navbar .nav > li > a {
  color: #fff;
}

.col-grey .navbar .bars {
  float: left;
  padding: 10px 20px;
  font-size: 22px;
  color: #fff;
  margin-right: 10px;
  margin-left: -10px;
  margin-top: 4px;
}

.col-grey .navbar .bars:hover {
  background-color: rgba(0, 0, 0, 0.08);
}

.col-blue-grey .navbar .navbar-brand,
.col-blue-grey .navbar .navbar-brand:hover,
.col-blue-grey .navbar .navbar-brand:active,
.col-blue-grey .navbar .navbar-brand:focus {
  color: #fff;
}

.col-blue-grey .navbar .nav > li > a:hover,
.col-blue-grey .navbar .nav > li > a:focus,
.col-blue-grey .navbar .nav .open > a,
.col-blue-grey .navbar .nav .open > a:hover,
.col-blue-grey .navbar .nav .open > a:focus {
  background-color: rgba(0, 0, 0, 0.05);
}

.col-blue-grey .navbar .nav > li > a {
  color: #fff;
}

.col-blue-grey .navbar .bars {
  float: left;
  padding: 10px 20px;
  font-size: 22px;
  color: #fff;
  margin-right: 10px;
  margin-left: -10px;
  margin-top: 4px;
}

.col-blue-grey .navbar .bars:hover {
  background-color: rgba(0, 0, 0, 0.08);
}

.col-indigo .navbar .navbar-brand,
.col-indigo .navbar .navbar-brand:hover,
.col-indigo .navbar .navbar-brand:active,
.col-indigo .navbar .navbar-brand:focus {
  color: #fff;
}

.col-indigo .navbar .nav > li > a:hover,
.col-indigo .navbar .nav > li > a:focus,
.col-indigo .navbar .nav .open > a,
.col-indigo .navbar .nav .open > a:hover,
.col-indigo .navbar .nav .open > a:focus {
  background-color: rgba(0, 0, 0, 0.05);
}

.col-indigo .navbar .nav > li > a {
  color: #fff;
}

.col-indigo .navbar .bars {
  float: left;
  padding: 10px 20px;
  font-size: 22px;
  color: #fff;
  margin-right: 10px;
  margin-left: -10px;
  margin-top: 4px;
}

.col-indigo .navbar .bars:hover {
  background-color: rgba(0, 0, 0, 0.08);
}

.col-light-blue .navbar .navbar-brand,
.col-light-blue .navbar .navbar-brand:hover,
.col-light-blue .navbar .navbar-brand:active,
.col-light-blue .navbar .navbar-brand:focus {
  color: #fff;
}

.col-light-blue .navbar .nav > li > a:hover,
.col-light-blue .navbar .nav > li > a:focus,
.col-light-blue .navbar .nav .open > a,
.col-light-blue .navbar .nav .open > a:hover,
.col-light-blue .navbar .nav .open > a:focus {
  background-color: rgba(0, 0, 0, 0.05);
}

.col-light-blue .navbar .nav > li > a {
  color: #fff;
}

.col-light-blue .navbar .bars {
  float: left;
  padding: 10px 20px;
  font-size: 22px;
  color: #fff;
  margin-right: 10px;
  margin-left: -10px;
  margin-top: 4px;
}

.col-light-blue .navbar .bars:hover {
  background-color: rgba(0, 0, 0, 0.08);
}

.col-teal .navbar .navbar-brand,
.col-teal .navbar .navbar-brand:hover,
.col-teal .navbar .navbar-brand:active,
.col-teal .navbar .navbar-brand:focus {
  color: #fff;
}

.col-teal .navbar .nav > li > a:hover,
.col-teal .navbar .nav > li > a:focus,
.col-teal .navbar .nav .open > a,
.col-teal .navbar .nav .open > a:hover,
.col-teal .navbar .nav .open > a:focus {
  background-color: rgba(0, 0, 0, 0.05);
}

.col-teal .navbar .nav > li > a {
  color: #fff;
}

.col-teal .navbar .bars {
  float: left;
  padding: 10px 20px;
  font-size: 22px;
  color: #fff;
  margin-right: 10px;
  margin-left: -10px;
  margin-top: 4px;
}

.col-teal .navbar .bars:hover {
  background-color: rgba(0, 0, 0, 0.08);
}

.col-lime .navbar .navbar-brand,
.col-lime .navbar .navbar-brand:hover,
.col-lime .navbar .navbar-brand:active,
.col-lime .navbar .navbar-brand:focus {
  color: #fff;
}

.col-lime .navbar .nav > li > a:hover,
.col-lime .navbar .nav > li > a:focus,
.col-lime .navbar .nav .open > a,
.col-lime .navbar .nav .open > a:hover,
.col-lime .navbar .nav .open > a:focus {
  background-color: rgba(0, 0, 0, 0.05);
}

.col-lime .navbar .nav > li > a {
  color: #fff;
}

.col-lime .navbar .bars {
  float: left;
  padding: 10px 20px;
  font-size: 22px;
  color: #fff;
  margin-right: 10px;
  margin-left: -10px;
  margin-top: 4px;
}

.col-lime .navbar .bars:hover {
  background-color: rgba(0, 0, 0, 0.08);
}

.col-amber .navbar .navbar-brand,
.col-amber .navbar .navbar-brand:hover,
.col-amber .navbar .navbar-brand:active,
.col-amber .navbar .navbar-brand:focus {
  color: #fff;
}

.col-amber .navbar .nav > li > a:hover,
.col-amber .navbar .nav > li > a:focus,
.col-amber .navbar .nav .open > a,
.col-amber .navbar .nav .open > a:hover,
.col-amber .navbar .nav .open > a:focus {
  background-color: rgba(0, 0, 0, 0.05);
}

.col-amber .navbar .nav > li > a {
  color: #fff;
}

.col-amber .navbar .bars {
  float: left;
  padding: 10px 20px;
  font-size: 22px;
  color: #fff;
  margin-right: 10px;
  margin-left: -10px;
  margin-top: 4px;
}

.col-amber .navbar .bars:hover {
  background-color: rgba(0, 0, 0, 0.08);
}

.col-brown .navbar .navbar-brand,
.col-brown .navbar .navbar-brand:hover,
.col-brown .navbar .navbar-brand:active,
.col-brown .navbar .navbar-brand:focus {
  color: #fff;
}

.col-brown .navbar .nav > li > a:hover,
.col-brown .navbar .nav > li > a:focus,
.col-brown .navbar .nav .open > a,
.col-brown .navbar .nav .open > a:hover,
.col-brown .navbar .nav .open > a:focus {
  background-color: rgba(0, 0, 0, 0.05);
}

.col-brown .navbar .nav > li > a {
  color: #fff;
}

.col-brown .navbar .bars {
  float: left;
  padding: 10px 20px;
  font-size: 22px;
  color: #fff;
  margin-right: 10px;
  margin-left: -10px;
  margin-top: 4px;
}

.col-brown .navbar .bars:hover {
  background-color: rgba(0, 0, 0, 0.08);
}

.col-blush .navbar .navbar-brand,
.col-blush .navbar .navbar-brand:hover,
.col-blush .navbar .navbar-brand:active,
.col-blush .navbar .navbar-brand:focus {
  color: #fff;
}

.col-blush .navbar .nav > li > a:hover,
.col-blush .navbar .nav > li > a:focus,
.col-blush .navbar .nav .open > a,
.col-blush .navbar .nav .open > a:hover,
.col-blush .navbar .nav .open > a:focus {
  background-color: rgba(0, 0, 0, 0.05);
}

.col-blush .navbar .nav > li > a {
  color: #fff;
}

.col-blush .navbar .bars {
  float: left;
  padding: 10px 20px;
  font-size: 22px;
  color: #fff;
  margin-right: 10px;
  margin-left: -10px;
  margin-top: 4px;
}

.col-blush .navbar .bars:hover {
  background-color: rgba(0, 0, 0, 0.08);
}

.col-black .navbar .navbar-brand,
.col-black .navbar .navbar-brand:hover,
.col-black .navbar .navbar-brand:active,
.col-black .navbar .navbar-brand:focus {
  color: #fff;
}

.col-black .navbar .nav > li > a:hover,
.col-black .navbar .nav > li > a:focus,
.col-black .navbar .nav .open > a,
.col-black .navbar .nav .open > a:hover,
.col-black .navbar .nav .open > a:focus {
  background-color: rgba(0, 0, 0, 0.05);
}

.col-black .navbar .nav > li > a {
  color: #fff;
}

.col-black .navbar .bars {
  float: left;
  padding: 10px 20px;
  font-size: 22px;
  color: #fff;
  margin-right: 10px;
  margin-left: -10px;
  margin-top: 4px;
}

.col-black .navbar .bars:hover {
  background-color: rgba(0, 0, 0, 0.08);
}

.col-white .navbar .navbar-brand,
.social_media_table .list-icon .navbar .navbar-brand,
.col-white .navbar .navbar-brand:hover,
.social_media_table .list-icon .navbar .navbar-brand:hover,
.col-white .navbar .navbar-brand:active,
.social_media_table .list-icon .navbar .navbar-brand:active,
.col-white .navbar .navbar-brand:focus,
.social_media_table .list-icon .navbar .navbar-brand:focus {
  color: #fff;
}

.col-white .navbar .nav > li > a:hover,
.social_media_table .list-icon .navbar .nav > li > a:hover,
.col-white .navbar .nav > li > a:focus,
.social_media_table .list-icon .navbar .nav > li > a:focus,
.col-white .navbar .nav .open > a,
.social_media_table .list-icon .navbar .nav .open > a,
.col-white .navbar .nav .open > a:hover,
.social_media_table .list-icon .navbar .nav .open > a:hover,
.col-white .navbar .nav .open > a:focus,
.social_media_table .list-icon .navbar .nav .open > a:focus {
  background-color: rgba(0, 0, 0, 0.05);
}

.col-white .navbar .nav > li > a,
.social_media_table .list-icon .navbar .nav > li > a {
  color: #fff;
}

.col-white .navbar .bars,
.social_media_table .list-icon .navbar .bars {
  float: left;
  padding: 10px 20px;
  font-size: 22px;
  color: #fff;
  margin-right: 10px;
  margin-left: -10px;
  margin-top: 4px;
}

.col-white .navbar .bars:hover,
.social_media_table .list-icon .navbar .bars:hover {
  background-color: rgba(0, 0, 0, 0.08);
}

@media (max-width: 1169px) {
  .navbar-header {
    width: auto;
  }
  .ls-toggle-btn {
    display: none !important;
  }
}

@media (max-width: 325px) {
  .navbar .navbar-left {
    display: none !important;
  }
}

.page-loader-wrapper p {
  font-size: 13px;
  margin-top: 10px;
  font-weight: bold;
  color: #444;
}

.line {
  animation: expand 1s ease-in-out infinite;
  border-radius: 10px;
  display: inline-block;
  transform-origin: center center;
  margin: 0 4px;
  width: 2px;
  height: 25px;
}

.line:nth-child(1) {
  background: #f31e58;
}

.line:nth-child(2) {
  animation-delay: 180ms;
  background: #258cce;
}

.line:nth-child(3) {
  animation-delay: 360ms;
  background: #f6a724;
}

.line:nth-child(4) {
  animation-delay: 540ms;
  background: #83c541;
}

@keyframes expand {
  0% {
    transform: scale(1);
  }
  25% {
    transform: scale(2);
  }
}

.navbar > .col-12 {
  padding: 0;
}

.navbar .navbar-brand {
  white-space: nowrap;
  -ms-text-overflow: ellipsis;
  -o-text-overflow: ellipsis;
  text-overflow: ellipsis;
  overflow: hidden;
}

.navbar .navbar-toggle {
  text-decoration: none;
  color: #fff;
  width: 20px;
  height: 20px;
  margin-top: -4px;
  margin-right: 17px;
}

.navbar .navbar-toggle:before {
  content: "\E8D5";
  font-family: "Material Icons";
  font-size: 26px;
}

.navbar .navbar-collapse.in {
  overflow: visible;
}

.ls-toggle-menu .sidebar {
  margin-left: -300px;
}

.ls-toggle-menu section.content {
  margin-left: 0px;
}

.ls-closed .sidebar {
  margin-left: -300px;
}

.ls-closed section.content {
  margin-left: 0px;
}

.ls-closed .bars:after,
.ls-closed .bars:before {
  font-family: "Material Icons";
  font-size: 24px;
  position: absolute;
  top: 9px;
  left: 12px;
  margin-right: 10px;
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  -webkit-transform: scale(0);
  transform: scale(0);
  -moz-transition: all 0.3s;
  -o-transition: all 0.3s;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.ls-closed .bars:before {
  content: "\E5D2";
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  -webkit-transform: scale(1);
  transform: scale(1);
}

.ls-closed .bars:after {
  content: "\E5C4";
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  -webkit-transform: scale(0);
  transform: scale(0);
}

.ls-closed .navbar-brand {
  margin-left: 30px;
}

.overlay-open .bars:before {
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  -webkit-transform: scale(0);
  transform: scale(0);
}

.overlay-open .bars:after {
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  -webkit-transform: scale(1);
  transform: scale(1);
}

.navbar-header .navbar-brand {
  padding: 0;
  font-size: 1rem;
}

.navbar-header .bars {
  float: left;
  text-decoration: none;
}

.navbar-nav.navbar-left,
.navbar-nav.navbar-right {
  vertical-align: top;
}

.navbar-nav.navbar-left {
  padding: 18px 0px 13px 15px;
}

.navbar-nav.navbar-left .dropdown-menu {
  left: 0;
  right: auto;
  padding: 0;
}

.navbar-nav.navbar-left .dropdown-menu ul.menu li {
  list-style: none;
  border-bottom: none;
}

.navbar-nav.navbar-right {
  padding: 18px 15px 13px 0px;
  float: right;
}

.navbar-nav > li > a {
  padding: 0 10px;
}

.navbar-nav > li > a i {
  font-size: 20px;
}

.navbar-nav .menu-app .menu {
  padding: 0;
  width: 310px;
  margin: 15px;
}

.navbar-nav .menu-app .menu li {
  display: inline-block;
}

.navbar-nav .menu-app .menu li a {
  line-height: 24px;
  text-transform: uppercase;
  text-align: center;
  transition: all 0.3s;
  display: block;
  padding: 0px !important;
  width: 90px;
  height: 80px;
  margin: 5px;
  border-radius: 3px;
  color: #3d4c5a;
}

.navbar-nav .menu-app .menu li a i {
  display: block;
  line-height: 45px;
  font-size: 22px;
}

.navbar-nav .menu-app .menu li a span {
  font-size: 15px;
  text-transform: none;
  display: block;
}

.label-count {
  position: absolute;
  top: 2px;
  right: 6px;
  font-size: 10px;
  line-height: 15px;
  background-color: #000;
  padding: 0 4px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  border-radius: 3px;
}

.col-red .navbar .navbar-brand,
.col-red .navbar .navbar-brand:hover,
.col-red .navbar .navbar-brand:active,
.col-red .navbar .navbar-brand:focus {
  color: #fff;
}

.col-red .navbar .nav > li > a:hover,
.col-red .navbar .nav > li > a:focus,
.col-red .navbar .nav .open > a,
.col-red .navbar .nav .open > a:hover,
.col-red .navbar .nav .open > a:focus {
  background-color: rgba(0, 0, 0, 0.05);
}

.col-red .navbar .nav > li > a {
  color: #fff;
}

.col-red .navbar .bars {
  float: left;
  padding: 10px 20px;
  font-size: 22px;
  color: #fff;
  margin-right: 10px;
  margin-left: -10px;
  margin-top: 4px;
}

.col-red .navbar .bars:hover {
  background-color: rgba(0, 0, 0, 0.08);
}

.col-pink .navbar .navbar-brand,
.col-pink .navbar .navbar-brand:hover,
.col-pink .navbar .navbar-brand:active,
.col-pink .navbar .navbar-brand:focus {
  color: #fff;
}

.col-pink .navbar .nav > li > a:hover,
.col-pink .navbar .nav > li > a:focus,
.col-pink .navbar .nav .open > a,
.col-pink .navbar .nav .open > a:hover,
.col-pink .navbar .nav .open > a:focus {
  background-color: rgba(0, 0, 0, 0.05);
}

.col-pink .navbar .nav > li > a {
  color: #fff;
}

.col-pink .navbar .bars {
  float: left;
  padding: 10px 20px;
  font-size: 22px;
  color: #fff;
  margin-right: 10px;
  margin-left: -10px;
  margin-top: 4px;
}

.col-pink .navbar .bars:hover {
  background-color: rgba(0, 0, 0, 0.08);
}

.col-purple .navbar .navbar-brand,
.col-purple .navbar .navbar-brand:hover,
.col-purple .navbar .navbar-brand:active,
.col-purple .navbar .navbar-brand:focus {
  color: #fff;
}

.col-purple .navbar .nav > li > a:hover,
.col-purple .navbar .nav > li > a:focus,
.col-purple .navbar .nav .open > a,
.col-purple .navbar .nav .open > a:hover,
.col-purple .navbar .nav .open > a:focus {
  background-color: rgba(0, 0, 0, 0.05);
}

.col-purple .navbar .nav > li > a {
  color: #fff;
}

.col-purple .navbar .bars {
  float: left;
  padding: 10px 20px;
  font-size: 22px;
  color: #fff;
  margin-right: 10px;
  margin-left: -10px;
  margin-top: 4px;
}

.col-purple .navbar .bars:hover {
  background-color: rgba(0, 0, 0, 0.08);
}

.col-deep-purple .navbar .navbar-brand,
.col-deep-purple .navbar .navbar-brand:hover,
.col-deep-purple .navbar .navbar-brand:active,
.col-deep-purple .navbar .navbar-brand:focus {
  color: #fff;
}

.col-deep-purple .navbar .nav > li > a:hover,
.col-deep-purple .navbar .nav > li > a:focus,
.col-deep-purple .navbar .nav .open > a,
.col-deep-purple .navbar .nav .open > a:hover,
.col-deep-purple .navbar .nav .open > a:focus {
  background-color: rgba(0, 0, 0, 0.05);
}

.col-deep-purple .navbar .nav > li > a {
  color: #fff;
}

.col-deep-purple .navbar .bars {
  float: left;
  padding: 10px 20px;
  font-size: 22px;
  color: #fff;
  margin-right: 10px;
  margin-left: -10px;
  margin-top: 4px;
}

.col-deep-purple .navbar .bars:hover {
  background-color: rgba(0, 0, 0, 0.08);
}

.col-blue .navbar .navbar-brand,
.col-blue .navbar .navbar-brand:hover,
.col-blue .navbar .navbar-brand:active,
.col-blue .navbar .navbar-brand:focus {
  color: #fff;
}

.col-blue .navbar .nav > li > a:hover,
.col-blue .navbar .nav > li > a:focus,
.col-blue .navbar .nav .open > a,
.col-blue .navbar .nav .open > a:hover,
.col-blue .navbar .nav .open > a:focus {
  background-color: rgba(0, 0, 0, 0.05);
}

.col-blue .navbar .nav > li > a {
  color: #fff;
}

.col-blue .navbar .bars {
  float: left;
  padding: 10px 20px;
  font-size: 22px;
  color: #fff;
  margin-right: 10px;
  margin-left: -10px;
  margin-top: 4px;
}

.col-blue .navbar .bars:hover {
  background-color: rgba(0, 0, 0, 0.08);
}

.col-cyan .navbar .navbar-brand,
.col-cyan .navbar .navbar-brand:hover,
.col-cyan .navbar .navbar-brand:active,
.col-cyan .navbar .navbar-brand:focus {
  color: #fff;
}

.col-cyan .navbar .nav > li > a:hover,
.col-cyan .navbar .nav > li > a:focus,
.col-cyan .navbar .nav .open > a,
.col-cyan .navbar .nav .open > a:hover,
.col-cyan .navbar .nav .open > a:focus {
  background-color: rgba(0, 0, 0, 0.05);
}

.col-cyan .navbar .nav > li > a {
  color: #fff;
}

.col-cyan .navbar .bars {
  float: left;
  padding: 10px 20px;
  font-size: 22px;
  color: #fff;
  margin-right: 10px;
  margin-left: -10px;
  margin-top: 4px;
}

.col-cyan .navbar .bars:hover {
  background-color: rgba(0, 0, 0, 0.08);
}

.col-green .navbar .navbar-brand,
.col-green .navbar .navbar-brand:hover,
.col-green .navbar .navbar-brand:active,
.col-green .navbar .navbar-brand:focus {
  color: #fff;
}

.col-green .navbar .nav > li > a:hover,
.col-green .navbar .nav > li > a:focus,
.col-green .navbar .nav .open > a,
.col-green .navbar .nav .open > a:hover,
.col-green .navbar .nav .open > a:focus {
  background-color: rgba(0, 0, 0, 0.05);
}

.col-green .navbar .nav > li > a {
  color: #fff;
}

.col-green .navbar .bars {
  float: left;
  padding: 10px 20px;
  font-size: 22px;
  color: #fff;
  margin-right: 10px;
  margin-left: -10px;
  margin-top: 4px;
}

.col-green .navbar .bars:hover {
  background-color: rgba(0, 0, 0, 0.08);
}

.col-light-green .navbar .navbar-brand,
.col-light-green .navbar .navbar-brand:hover,
.col-light-green .navbar .navbar-brand:active,
.col-light-green .navbar .navbar-brand:focus {
  color: #fff;
}

.col-light-green .navbar .nav > li > a:hover,
.col-light-green .navbar .nav > li > a:focus,
.col-light-green .navbar .nav .open > a,
.col-light-green .navbar .nav .open > a:hover,
.col-light-green .navbar .nav .open > a:focus {
  background-color: rgba(0, 0, 0, 0.05);
}

.col-light-green .navbar .nav > li > a {
  color: #fff;
}

.col-light-green .navbar .bars {
  float: left;
  padding: 10px 20px;
  font-size: 22px;
  color: #fff;
  margin-right: 10px;
  margin-left: -10px;
  margin-top: 4px;
}

.col-light-green .navbar .bars:hover {
  background-color: rgba(0, 0, 0, 0.08);
}

.col-yellow .navbar .navbar-brand,
.col-yellow .navbar .navbar-brand:hover,
.col-yellow .navbar .navbar-brand:active,
.col-yellow .navbar .navbar-brand:focus {
  color: #fff;
}

.col-yellow .navbar .nav > li > a:hover,
.col-yellow .navbar .nav > li > a:focus,
.col-yellow .navbar .nav .open > a,
.col-yellow .navbar .nav .open > a:hover,
.col-yellow .navbar .nav .open > a:focus {
  background-color: rgba(0, 0, 0, 0.05);
}

.col-yellow .navbar .nav > li > a {
  color: #fff;
}

.col-yellow .navbar .bars {
  float: left;
  padding: 10px 20px;
  font-size: 22px;
  color: #fff;
  margin-right: 10px;
  margin-left: -10px;
  margin-top: 4px;
}

.col-yellow .navbar .bars:hover {
  background-color: rgba(0, 0, 0, 0.08);
}

.col-orange .navbar .navbar-brand,
.col-orange .navbar .navbar-brand:hover,
.col-orange .navbar .navbar-brand:active,
.col-orange .navbar .navbar-brand:focus {
  color: #fff;
}

.col-orange .navbar .nav > li > a:hover,
.col-orange .navbar .nav > li > a:focus,
.col-orange .navbar .nav .open > a,
.col-orange .navbar .nav .open > a:hover,
.col-orange .navbar .nav .open > a:focus {
  background-color: rgba(0, 0, 0, 0.05);
}

.col-orange .navbar .nav > li > a {
  color: #fff;
}

.col-orange .navbar .bars {
  float: left;
  padding: 10px 20px;
  font-size: 22px;
  color: #fff;
  margin-right: 10px;
  margin-left: -10px;
  margin-top: 4px;
}

.col-orange .navbar .bars:hover {
  background-color: rgba(0, 0, 0, 0.08);
}

.col-deep-orange .navbar .navbar-brand,
.col-deep-orange .navbar .navbar-brand:hover,
.col-deep-orange .navbar .navbar-brand:active,
.col-deep-orange .navbar .navbar-brand:focus {
  color: #fff;
}

.col-deep-orange .navbar .nav > li > a:hover,
.col-deep-orange .navbar .nav > li > a:focus,
.col-deep-orange .navbar .nav .open > a,
.col-deep-orange .navbar .nav .open > a:hover,
.col-deep-orange .navbar .nav .open > a:focus {
  background-color: rgba(0, 0, 0, 0.05);
}

.col-deep-orange .navbar .nav > li > a {
  color: #fff;
}

.col-deep-orange .navbar .bars {
  float: left;
  padding: 10px 20px;
  font-size: 22px;
  color: #fff;
  margin-right: 10px;
  margin-left: -10px;
  margin-top: 4px;
}

.col-deep-orange .navbar .bars:hover {
  background-color: rgba(0, 0, 0, 0.08);
}

.col-grey .navbar .navbar-brand,
.col-grey .navbar .navbar-brand:hover,
.col-grey .navbar .navbar-brand:active,
.col-grey .navbar .navbar-brand:focus {
  color: #fff;
}

.col-grey .navbar .nav > li > a:hover,
.col-grey .navbar .nav > li > a:focus,
.col-grey .navbar .nav .open > a,
.col-grey .navbar .nav .open > a:hover,
.col-grey .navbar .nav .open > a:focus {
  background-color: rgba(0, 0, 0, 0.05);
}

.col-grey .navbar .nav > li > a {
  color: #fff;
}

.col-grey .navbar .bars {
  float: left;
  padding: 10px 20px;
  font-size: 22px;
  color: #fff;
  margin-right: 10px;
  margin-left: -10px;
  margin-top: 4px;
}

.col-grey .navbar .bars:hover {
  background-color: rgba(0, 0, 0, 0.08);
}

.col-blue-grey .navbar .navbar-brand,
.col-blue-grey .navbar .navbar-brand:hover,
.col-blue-grey .navbar .navbar-brand:active,
.col-blue-grey .navbar .navbar-brand:focus {
  color: #fff;
}

.col-blue-grey .navbar .nav > li > a:hover,
.col-blue-grey .navbar .nav > li > a:focus,
.col-blue-grey .navbar .nav .open > a,
.col-blue-grey .navbar .nav .open > a:hover,
.col-blue-grey .navbar .nav .open > a:focus {
  background-color: rgba(0, 0, 0, 0.05);
}

.col-blue-grey .navbar .nav > li > a {
  color: #fff;
}

.col-blue-grey .navbar .bars {
  float: left;
  padding: 10px 20px;
  font-size: 22px;
  color: #fff;
  margin-right: 10px;
  margin-left: -10px;
  margin-top: 4px;
}

.col-blue-grey .navbar .bars:hover {
  background-color: rgba(0, 0, 0, 0.08);
}

.col-indigo .navbar .navbar-brand,
.col-indigo .navbar .navbar-brand:hover,
.col-indigo .navbar .navbar-brand:active,
.col-indigo .navbar .navbar-brand:focus {
  color: #fff;
}

.col-indigo .navbar .nav > li > a:hover,
.col-indigo .navbar .nav > li > a:focus,
.col-indigo .navbar .nav .open > a,
.col-indigo .navbar .nav .open > a:hover,
.col-indigo .navbar .nav .open > a:focus {
  background-color: rgba(0, 0, 0, 0.05);
}

.col-indigo .navbar .nav > li > a {
  color: #fff;
}

.col-indigo .navbar .bars {
  float: left;
  padding: 10px 20px;
  font-size: 22px;
  color: #fff;
  margin-right: 10px;
  margin-left: -10px;
  margin-top: 4px;
}

.col-indigo .navbar .bars:hover {
  background-color: rgba(0, 0, 0, 0.08);
}

.col-light-blue .navbar .navbar-brand,
.col-light-blue .navbar .navbar-brand:hover,
.col-light-blue .navbar .navbar-brand:active,
.col-light-blue .navbar .navbar-brand:focus {
  color: #fff;
}

.col-light-blue .navbar .nav > li > a:hover,
.col-light-blue .navbar .nav > li > a:focus,
.col-light-blue .navbar .nav .open > a,
.col-light-blue .navbar .nav .open > a:hover,
.col-light-blue .navbar .nav .open > a:focus {
  background-color: rgba(0, 0, 0, 0.05);
}

.col-light-blue .navbar .nav > li > a {
  color: #fff;
}

.col-light-blue .navbar .bars {
  float: left;
  padding: 10px 20px;
  font-size: 22px;
  color: #fff;
  margin-right: 10px;
  margin-left: -10px;
  margin-top: 4px;
}

.col-light-blue .navbar .bars:hover {
  background-color: rgba(0, 0, 0, 0.08);
}

.col-teal .navbar .navbar-brand,
.col-teal .navbar .navbar-brand:hover,
.col-teal .navbar .navbar-brand:active,
.col-teal .navbar .navbar-brand:focus {
  color: #fff;
}

.col-teal .navbar .nav > li > a:hover,
.col-teal .navbar .nav > li > a:focus,
.col-teal .navbar .nav .open > a,
.col-teal .navbar .nav .open > a:hover,
.col-teal .navbar .nav .open > a:focus {
  background-color: rgba(0, 0, 0, 0.05);
}

.col-teal .navbar .nav > li > a {
  color: #fff;
}

.col-teal .navbar .bars {
  float: left;
  padding: 10px 20px;
  font-size: 22px;
  color: #fff;
  margin-right: 10px;
  margin-left: -10px;
  margin-top: 4px;
}

.col-teal .navbar .bars:hover {
  background-color: rgba(0, 0, 0, 0.08);
}

.col-lime .navbar .navbar-brand,
.col-lime .navbar .navbar-brand:hover,
.col-lime .navbar .navbar-brand:active,
.col-lime .navbar .navbar-brand:focus {
  color: #fff;
}

.col-lime .navbar .nav > li > a:hover,
.col-lime .navbar .nav > li > a:focus,
.col-lime .navbar .nav .open > a,
.col-lime .navbar .nav .open > a:hover,
.col-lime .navbar .nav .open > a:focus {
  background-color: rgba(0, 0, 0, 0.05);
}

.col-lime .navbar .nav > li > a {
  color: #fff;
}

.col-lime .navbar .bars {
  float: left;
  padding: 10px 20px;
  font-size: 22px;
  color: #fff;
  margin-right: 10px;
  margin-left: -10px;
  margin-top: 4px;
}

.col-lime .navbar .bars:hover {
  background-color: rgba(0, 0, 0, 0.08);
}

.col-amber .navbar .navbar-brand,
.col-amber .navbar .navbar-brand:hover,
.col-amber .navbar .navbar-brand:active,
.col-amber .navbar .navbar-brand:focus {
  color: #fff;
}

.col-amber .navbar .nav > li > a:hover,
.col-amber .navbar .nav > li > a:focus,
.col-amber .navbar .nav .open > a,
.col-amber .navbar .nav .open > a:hover,
.col-amber .navbar .nav .open > a:focus {
  background-color: rgba(0, 0, 0, 0.05);
}

.col-amber .navbar .nav > li > a {
  color: #fff;
}

.col-amber .navbar .bars {
  float: left;
  padding: 10px 20px;
  font-size: 22px;
  color: #fff;
  margin-right: 10px;
  margin-left: -10px;
  margin-top: 4px;
}

.col-amber .navbar .bars:hover {
  background-color: rgba(0, 0, 0, 0.08);
}

.col-brown .navbar .navbar-brand,
.col-brown .navbar .navbar-brand:hover,
.col-brown .navbar .navbar-brand:active,
.col-brown .navbar .navbar-brand:focus {
  color: #fff;
}

.col-brown .navbar .nav > li > a:hover,
.col-brown .navbar .nav > li > a:focus,
.col-brown .navbar .nav .open > a,
.col-brown .navbar .nav .open > a:hover,
.col-brown .navbar .nav .open > a:focus {
  background-color: rgba(0, 0, 0, 0.05);
}

.col-brown .navbar .nav > li > a {
  color: #fff;
}

.col-brown .navbar .bars {
  float: left;
  padding: 10px 20px;
  font-size: 22px;
  color: #fff;
  margin-right: 10px;
  margin-left: -10px;
  margin-top: 4px;
}

.col-brown .navbar .bars:hover {
  background-color: rgba(0, 0, 0, 0.08);
}

.col-blush .navbar .navbar-brand,
.col-blush .navbar .navbar-brand:hover,
.col-blush .navbar .navbar-brand:active,
.col-blush .navbar .navbar-brand:focus {
  color: #fff;
}

.col-blush .navbar .nav > li > a:hover,
.col-blush .navbar .nav > li > a:focus,
.col-blush .navbar .nav .open > a,
.col-blush .navbar .nav .open > a:hover,
.col-blush .navbar .nav .open > a:focus {
  background-color: rgba(0, 0, 0, 0.05);
}

.col-blush .navbar .nav > li > a {
  color: #fff;
}

.col-blush .navbar .bars {
  float: left;
  padding: 10px 20px;
  font-size: 22px;
  color: #fff;
  margin-right: 10px;
  margin-left: -10px;
  margin-top: 4px;
}

.col-blush .navbar .bars:hover {
  background-color: rgba(0, 0, 0, 0.08);
}

.col-black .navbar .navbar-brand,
.col-black .navbar .navbar-brand:hover,
.col-black .navbar .navbar-brand:active,
.col-black .navbar .navbar-brand:focus {
  color: #fff;
}

.col-black .navbar .nav > li > a:hover,
.col-black .navbar .nav > li > a:focus,
.col-black .navbar .nav .open > a,
.col-black .navbar .nav .open > a:hover,
.col-black .navbar .nav .open > a:focus {
  background-color: rgba(0, 0, 0, 0.05);
}

.col-black .navbar .nav > li > a {
  color: #fff;
}

.col-black .navbar .bars {
  float: left;
  padding: 10px 20px;
  font-size: 22px;
  color: #fff;
  margin-right: 10px;
  margin-left: -10px;
  margin-top: 4px;
}

.col-black .navbar .bars:hover {
  background-color: rgba(0, 0, 0, 0.08);
}

.col-white .navbar .navbar-brand,
.social_media_table .list-icon .navbar .navbar-brand,
.col-white .navbar .navbar-brand:hover,
.social_media_table .list-icon .navbar .navbar-brand:hover,
.col-white .navbar .navbar-brand:active,
.social_media_table .list-icon .navbar .navbar-brand:active,
.col-white .navbar .navbar-brand:focus,
.social_media_table .list-icon .navbar .navbar-brand:focus {
  color: #fff;
}

.col-white .navbar .nav > li > a:hover,
.social_media_table .list-icon .navbar .nav > li > a:hover,
.col-white .navbar .nav > li > a:focus,
.social_media_table .list-icon .navbar .nav > li > a:focus,
.col-white .navbar .nav .open > a,
.social_media_table .list-icon .navbar .nav .open > a,
.col-white .navbar .nav .open > a:hover,
.social_media_table .list-icon .navbar .nav .open > a:hover,
.col-white .navbar .nav .open > a:focus,
.social_media_table .list-icon .navbar .nav .open > a:focus {
  background-color: rgba(0, 0, 0, 0.05);
}

.col-white .navbar .nav > li > a,
.social_media_table .list-icon .navbar .nav > li > a {
  color: #fff;
}

.col-white .navbar .bars,
.social_media_table .list-icon .navbar .bars {
  float: left;
  padding: 10px 20px;
  font-size: 22px;
  color: #fff;
  margin-right: 10px;
  margin-left: -10px;
  margin-top: 4px;
}

.col-white .navbar .bars:hover,
.social_media_table .list-icon .navbar .bars:hover {
  background-color: rgba(0, 0, 0, 0.08);
}

@media (max-width: 1169px) {
  .navbar-header {
    width: auto;
  }
  .ls-toggle-btn {
    display: none !important;
  }
}

@media (max-width: 325px) {
  .navbar .navbar-left {
    display: none !important;
  }
}

.overlay {
  position: fixed;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.5);
  display: none;
  z-index: 12;
}

.overlay-open .sidebar {
  margin-left: 0;
  z-index: 13;
}

.sidebar .legal {
  position: absolute;
  bottom: 0;
  width: 100%;
  border-top: 1px solid #eee;
  padding: 15px;
  overflow: hidden;
}

.sidebar .legal .copyright {
  font-size: 13px;
  white-space: nowrap;
  -ms-text-overflow: ellipsis;
  -o-text-overflow: ellipsis;
  text-overflow: ellipsis;
  overflow: hidden;
}

.sidebar .legal .copyright a {
  font-weight: bold;
  text-decoration: none;
}

.sidebar .legal .version {
  white-space: nowrap;
  -ms-text-overflow: ellipsis;
  -o-text-overflow: ellipsis;
  text-overflow: ellipsis;
  overflow: hidden;
  margin-top: 5px;
  font-size: 13px;
}

.sidebar .user-info .info-container .user-helper-dropdown {
  position: absolute;
  right: 0px;
  top: 0px;
  margin: 0;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  -ms-box-shadow: none;
  box-shadow: none;
  cursor: pointer;
}

.sidebar .menu .list li.active > :first-child span {
  font-weight: bold;
}

.sidebar .menu .list > li:last-child {
  margin-bottom: 80px;
}

.sidebar .menu .list .header {
  background: #eee;
  font-size: 12px;
  font-weight: 600;
  padding: 8px 16px;
}

.sidebar .menu .list i.material-icons {
  margin-top: 4px;
}

.sidebar .menu .list .menu-toggle:after,
.sidebar .menu .list .menu-toggle:before {
  position: absolute;
  top: calc(50% - 14px);
  right: 17px;
  font-size: 15px;
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  -webkit-transform: scale(0);
  transform: scale(0);
  -moz-transition: all 0.3s;
  -o-transition: all 0.3s;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.sidebar .menu .list .menu-toggle:before {
  content: "+";
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  -webkit-transform: scale(1);
  transform: scale(1);
}

.sidebar .menu .list .menu-toggle:after {
  content: "\2013";
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  -webkit-transform: scale(0);
  transform: scale(0);
}

.sidebar .menu .list .menu-toggle.toggled:before {
  content: "-";
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  -webkit-transform: scale(0);
  transform: scale(0);
}

.sidebar .menu .list .menu-toggle.toggled:after {
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  -webkit-transform: scale(1);
  transform: scale(1);
}

.sidebar .menu .list a {
  color: #4d585f;
  position: relative;
  display: block;
  padding: 3px 7px;
  border-left: 3px solid transparent;
  margin: 0 7px;
  border-bottom: 1px solid #efefef;
}

.sidebar .menu .list a:hover,
.sidebar .menu .list a:active,
.sidebar .menu .list a:focus {
  text-decoration: none !important;
  background-color: #e6e6e6;
}

.sidebar .menu .list a i {
  line-height: 21px;
  width: 16px;
  text-align: center;
}

.sidebar .menu .list a small {
  position: absolute;
  top: calc(50% - 7.5px);
  right: 15px;
}

.sidebar .menu .list a span {
  margin: 0 0 0 12px;
  font-weight: 600;
  font-size: 12px;
  overflow: hidden;
}

.sidebar .menu .list .toggled {
  background-color: #e6e6e6;
}

.sidebar .menu .list .ml-menu span {
  font-weight: normal;
  font-size: 1px;
  margin: 3px 0 1px 6px;
}

.sidebar .menu .list .ml-menu li a {
  padding-left: 30px;
  padding-top: 7px;
  padding-bottom: 7px;
  font-size: 12px;
}

.sidebar .menu .list .ml-menu li a:before {
  content: "\f2ee";
  position: absolute;
  left: 6px;
  font-size: 12px;
  font-family: "Material-Design-Iconic-Font";
  color: #999;
  top: 8px;
}

.sidebar .menu .list .ml-menu li.active a.toggled:not(.menu-toggle) {
  font-weight: bold;
  border-left: none;
}

.sidebar .menu .list .ml-menu li.active a.toggled:not(.menu-toggle):before {
  content: "\f2ee";
  position: absolute;
  left: 8px;
  font-size: 12px;
  font-family: "Material-Design-Iconic-Font";
  color: #999;
}

.sidebar .menu .list .ml-menu li .menu-toggle.toggled {
  border-left: none;
}

.sidebar .menu .list .ml-menu li .ml-menu {
  border-left: none;
}

.sidebar .menu .list .ml-menu li .ml-menu li a {
  padding-left: 50px;
}

.sidebar .menu .list .ml-menu li .ml-menu li a:before {
  left: 30px;
}

.sidebar .menu .list .ml-menu li .ml-menu .ml-menu li a {
  padding-left: 65px;
}

.sidebar .menu .list .ml-menu li .ml-menu .ml-menu li a::before {
  left: 48px;
}

.right-sidebar {
  width: 280px;
  height: calc(100vh - 0px);
  position: fixed;
  right: -300px;
  top: 0px;
  background: #fdfdfd;
  z-index: 13 !important;
  -webkit-box-shadow: -2px 2px 5px rgba(0, 0, 0, 0.1);
  -moz-box-shadow: -2px 2px 5px rgba(0, 0, 0, 0.1);
  -ms-box-shadow: -2px 2px 5px rgba(0, 0, 0, 0.1);
  box-shadow: -2px 2px 5px rgba(0, 0, 0, 0.1);
  overflow: hidden;
  -moz-transition: 0.5s;
  -o-transition: 0.5s;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

.right-sidebar.open {
  right: 0;
}

.right-sidebar .nav-tabs + .tab-content {
  padding: 0;
}

.right-sidebar .tab-content .tab-pane .slim_scroll {
  padding-bottom: 50px;
}

.right-sidebar p {
  margin: 20px 15px 15px 15px;
  font-weight: bold;
}

.right-sidebar .nav-tabs li {
  width: 33.33%;
  text-align: center;
  left: 0;
}

.right-sidebar .nav-tabs li > a {
  margin-right: 0;
  padding: 15px 15px;
}

.right-sidebar #skins h6 {
  text-transform: capitalize;
  padding: 10px;
}

.right-sidebar .choose-skin {
  list-style: none;
  padding-left: 0;
  overflow-y: hidden;
}

.right-sidebar .choose-skin h6 {
  padding: 10px;
  margin: 15px 0 0 0;
  text-transform: unset;
}

.right-sidebar .choose-skin li {
  border-bottom: 1px solid #eee;
  padding: 10px 10px 4px 10px;
  position: relative;
  cursor: pointer;
}

.right-sidebar .choose-skin li.active {
  background-color: #eee;
}

.right-sidebar .choose-skin li.active:after {
  font-family: "Material Icons";
  position: absolute;
  top: 10px;
  right: 10px;
  content: "\E876";
  font-size: 18px;
  font-weight: bold;
}

.right-sidebar .choose-skin li:hover {
  background-color: #eee;
}

.right-sidebar .choose-skin li div {
  width: 24px;
  height: 24px;
  border-radius: 50%;
}

.right-sidebar .choose-skin li span {
  position: relative;
  bottom: 7px;
  left: 5px;
}

.right-sidebar .choose-skin .red {
  background-color: #ec3b57;
}

.right-sidebar .choose-skin .pink {
  background-color: #e91e63;
}

.right-sidebar .choose-skin .purple {
  background-color: #ba3bd0;
}

.right-sidebar .choose-skin .deep-purple {
  background-color: #673ab7;
}

.right-sidebar .choose-skin .blue {
  background-color: #457fca;
}

.right-sidebar .choose-skin .cyan {
  background-color: #379c94;
}

.right-sidebar .choose-skin .green {
  background-color: #78b83e;
}

.right-sidebar .choose-skin .light-green {
  background-color: #8bc34a;
}

.right-sidebar .choose-skin .yellow {
  background-color: #ffe821;
}

.right-sidebar .choose-skin .orange {
  background-color: #ff9800;
}

.right-sidebar .choose-skin .deep-orange {
  background-color: #f83600;
}

.right-sidebar .choose-skin .grey {
  background-color: #9e9e9e;
}

.right-sidebar .choose-skin .blue-grey {
  background-color: #607d8b;
}

.right-sidebar .choose-skin .indigo {
  background-color: #3f51b5;
}

.right-sidebar .choose-skin .light-blue {
  background-color: #03a9f4;
}

.right-sidebar .choose-skin .teal {
  background-color: #009688;
}

.right-sidebar .choose-skin .lime {
  background-color: #cddc39;
}

.right-sidebar .choose-skin .amber {
  background-color: #ffc107;
}

.right-sidebar .choose-skin .brown {
  background-color: #795548;
}

.right-sidebar .choose-skin .blush {
  background-color: #f15f79;
}

.right-sidebar .choose-skin .black {
  background-color: #000;
}

.right-sidebar .choose-skin .white {
  background-color: #fff;
}

.right-sidebar #chat .right_chat {
  padding: 15px;
}

.right-sidebar #chat .right_chat h6 {
  margin: 15px 0 0 0;
  text-transform: unset;
}

.right-sidebar #chat .right_chat ul li {
  position: relative;
}

.right-sidebar #chat .right_chat ul li.offline .status {
  background: #ff9800;
}

.right-sidebar #chat .right_chat ul li.online .status {
  background: #8bc34a;
}

.right-sidebar #chat .right_chat ul li.me .status {
  background: #0498bd;
}

.right-sidebar #chat .right_chat ul .media .media-object {
  width: 36px;
  border-radius: 50%;
}

.right-sidebar #chat .right_chat ul .media .name {
  font-weight: 600;
  color: #3d4c5a;
  margin: 0px;
  display: block;
  font-size: 15px;
}

.right-sidebar #chat .right_chat ul .media .message {
  font-size: 13px;
  color: #888;
  max-width: 205px;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.right-sidebar #chat .right_chat ul .media .status {
  position: absolute;
  left: 29px;
  top: 24px;
  width: 9px;
  height: 9px;
  padding: 0;
  min-width: inherit;
  border: 2px solid #fff;
  border-radius: 50px;
}

.right-sidebar #settings .setting-list {
  list-style: none;
  padding-left: 0;
  margin-bottom: 20px;
}

.right-sidebar #settings .setting-list li {
  padding: 15px;
  position: relative;
  border-top: 1px solid #eee;
}

.right-sidebar #settings .setting-list li .switch {
  position: absolute;
  top: 15px;
  right: 5px;
}

@media (max-width: 1169px) {
  .sidebar {
    height: calc(100vh - 0px);
    top: 0px;
  }
}

.m-l--125 {
  margin-left: -125px;
}

.m-t--125 {
  margin-top: -125px;
}

.m-r--125 {
  margin-right: -125px;
}

.m-b--125 {
  margin-bottom: -125px;
}

.m-l--120 {
  margin-left: -120px;
}

.m-t--120 {
  margin-top: -120px;
}

.m-r--120 {
  margin-right: -120px;
}

.m-b--120 {
  margin-bottom: -120px;
}

.m-l--115 {
  margin-left: -115px;
}

.m-t--115 {
  margin-top: -115px;
}

.m-r--115 {
  margin-right: -115px;
}

.m-b--115 {
  margin-bottom: -115px;
}

.m-l--110 {
  margin-left: -110px;
}

.m-t--110 {
  margin-top: -110px;
}

.m-r--110 {
  margin-right: -110px;
}

.m-b--110 {
  margin-bottom: -110px;
}

.m-l--105 {
  margin-left: -105px;
}

.m-t--105 {
  margin-top: -105px;
}

.m-r--105 {
  margin-right: -105px;
}

.m-b--105 {
  margin-bottom: -105px;
}

.m-l--100 {
  margin-left: -100px;
}

.m-t--100 {
  margin-top: -100px;
}

.m-r--100 {
  margin-right: -100px;
}

.m-b--100 {
  margin-bottom: -100px;
}

.m-l--95 {
  margin-left: -95px;
}

.m-t--95 {
  margin-top: -95px;
}

.m-r--95 {
  margin-right: -95px;
}

.m-b--95 {
  margin-bottom: -95px;
}

.m-l--90 {
  margin-left: -90px;
}

.m-t--90 {
  margin-top: -90px;
}

.m-r--90 {
  margin-right: -90px;
}

.m-b--90 {
  margin-bottom: -90px;
}

.m-l--85 {
  margin-left: -85px;
}

.m-t--85 {
  margin-top: -85px;
}

.m-r--85 {
  margin-right: -85px;
}

.m-b--85 {
  margin-bottom: -85px;
}

.m-l--80 {
  margin-left: -80px;
}

.m-t--80 {
  margin-top: -80px;
}

.m-r--80 {
  margin-right: -80px;
}

.m-b--80 {
  margin-bottom: -80px;
}

.m-l--75 {
  margin-left: -75px;
}

.m-t--75 {
  margin-top: -75px;
}

.m-r--75 {
  margin-right: -75px;
}

.m-b--75 {
  margin-bottom: -75px;
}

.m-l--70 {
  margin-left: -70px;
}

.m-t--70 {
  margin-top: -70px;
}

.m-r--70 {
  margin-right: -70px;
}

.m-b--70 {
  margin-bottom: -70px;
}

.m-l--65 {
  margin-left: -65px;
}

.m-t--65 {
  margin-top: -65px;
}

.m-r--65 {
  margin-right: -65px;
}

.m-b--65 {
  margin-bottom: -65px;
}

.m-l--60 {
  margin-left: -60px;
}

.m-t--60 {
  margin-top: -60px;
}

.m-r--60 {
  margin-right: -60px;
}

.m-b--60 {
  margin-bottom: -60px;
}

.m-l--55 {
  margin-left: -55px;
}

.m-t--55 {
  margin-top: -55px;
}

.m-r--55 {
  margin-right: -55px;
}

.m-b--55 {
  margin-bottom: -55px;
}

.m-l--50 {
  margin-left: -50px;
}

.m-t--50 {
  margin-top: -50px;
}

.m-r--50 {
  margin-right: -50px;
}

.m-b--50 {
  margin-bottom: -50px;
}

.m-l--45 {
  margin-left: -45px;
}

.m-t--45 {
  margin-top: -45px;
}

.m-r--45 {
  margin-right: -45px;
}

.m-b--45 {
  margin-bottom: -45px;
}

.m-l--40 {
  margin-left: -40px;
}

.m-t--40 {
  margin-top: -40px;
}

.m-r--40 {
  margin-right: -40px;
}

.m-b--40 {
  margin-bottom: -40px;
}

.m-l--35 {
  margin-left: -35px;
}

.m-t--35 {
  margin-top: -35px;
}

.m-r--35 {
  margin-right: -35px;
}

.m-b--35 {
  margin-bottom: -35px;
}

.m-l--30 {
  margin-left: -30px;
}

.m-t--30 {
  margin-top: -30px;
}

.m-r--30 {
  margin-right: -30px;
}

.m-b--30 {
  margin-bottom: -30px;
}

.m-l--25 {
  margin-left: -25px;
}

.m-t--25 {
  margin-top: -25px;
}

.m-r--25 {
  margin-right: -25px;
}

.m-b--25 {
  margin-bottom: -25px;
}

.m-l--20 {
  margin-left: -20px;
}

.m-t--20 {
  margin-top: -20px;
}

.m-r--20 {
  margin-right: -20px;
}

.m-b--20 {
  margin-bottom: -20px;
}

.m-l--15 {
  margin-left: -15px;
}

.m-t--15 {
  margin-top: -15px;
}

.m-r--15 {
  margin-right: -15px;
}

.m-b--15 {
  margin-bottom: -15px;
}

.m-l--10 {
  margin-left: -10px;
}

.m-t--10 {
  margin-top: -10px;
}

.m-r--10 {
  margin-right: -10px;
}

.m-b--10 {
  margin-bottom: -10px;
}

.m-l--5 {
  margin-left: -5px;
}

.m-t--5 {
  margin-top: -5px;
}

.m-r--5 {
  margin-right: -5px;
}

.m-b--5 {
  margin-bottom: -5px;
}

.m-l-0 {
  margin-left: 0px;
}

.m-t-0,
.product-report .counter,
.contact .c_list .email {
  margin-top: 0px;
}

.m-r-0 {
  margin-right: 0px;
}

.m-b-0,
.right-sidebar #skins h6,
.breadcrumb,
.media .media-body .media-heading,
.page-calendar .event-name h6,
.page-calendar .event-name h4,
.page-calendar .event-name p,
.page-calendar .event-name address,
.chat-wrapper .card .input-group,
.sales_overview .table,
.inbox-widget .inbox-inner .inbox-item-info .inbox-date,
.members_profiles .table,
.profile_state li h4,
.social_media_table .table,
.new_friend_list,
.new_friend_list li .users_name,
.activity_2 h5,
.contact .c_list .u_name .c_name,
.contact .c_list .phone,
.contact .c_list address,
.profile-page #usersettings .form-group {
  margin-bottom: 0px;
}

.m-l-5 {
  margin-left: 5px;
}

.m-t-5,
.breadcrumb,
.page-calendar .event-name address,
.new_friend_list li .users_name {
  margin-top: 5px;
}

.m-r-5,
.page-calendar .event-name address i {
  margin-right: 5px;
}

.m-b-5,
.search-results .result-list,
.contact .c_list .email {
  margin-bottom: 5px;
}

.m-l-10,
.activities .b-accent {
  margin-left: 10px;
}

.m-t-10,
.member-card .social-links,
.profile_state li h4,
.w_calender span + span {
  margin-top: 10px;
}

.m-r-10,
.right-sidebar #chat .right_chat ul .media .media-object {
  margin-right: 10px;
}

.m-b-10,
.w_calender ul:nth-of-type(6),
.profile-page .profile-header .profile_info .job_post {
  margin-bottom: 10px;
}

.m-l-15 {
  margin-left: 15px;
}

.m-t-15,
.profile-page .profile-header {
  margin-top: 15px;
}

.m-r-15,
.product-report .icon {
  margin-right: 15px;
}

.m-b-15,
.new_friend_list li,
.profile-page #mypost .mypost-form,
.profile-page #mypost .post-box .post-img {
  margin-bottom: 15px;
}

.m-l-20,
.media.mright .media-right {
  margin-left: 20px;
}

.m-t-20,
.right-sidebar #skins h6,
.w_calender ul:nth-of-type(2),
.w_calender ul:nth-of-type(3),
.w_calender ul:nth-of-type(4),
.w_calender ul:nth-of-type(5),
.w_calender ul:nth-of-type(6) {
  margin-top: 20px;
}

.m-r-20,
.media.mleft .media-left,
.bs-example .media .media-left {
  margin-right: 20px;
}

.m-b-20,
.w_calender ul:nth-of-type(5),
.profile-page #timeline .timeline .timeline-item {
  margin-bottom: 20px;
}

.m-l-25 {
  margin-left: 25px;
}

.m-t-25 {
  margin-top: 25px;
}

.m-r-25 {
  margin-right: 25px;
}

.m-b-25 {
  margin-bottom: 25px;
}

.m-l-30 {
  margin-left: 30px;
}

.m-r-30 {
  margin-right: 30px;
}

.m-b-30 {
  margin-bottom: 30px;
}

.m-l-35 {
  margin-left: 35px;
}

.m-t-35 {
  margin-top: 35px;
}

.m-r-35 {
  margin-right: 35px;
}

.m-b-35 {
  margin-bottom: 35px;
}

.m-l-40 {
  margin-left: 40px;
}

.m-t-40 {
  margin-top: 40px;
}

.m-r-40 {
  margin-right: 40px;
}

.m-b-40 {
  margin-bottom: 40px;
}

.m-l-45 {
  margin-left: 45px;
}

.m-t-45 {
  margin-top: 45px;
}

.m-r-45 {
  margin-right: 45px;
}

.m-b-45 {
  margin-bottom: 45px;
}

.m-l-50 {
  margin-left: 50px;
}

.m-t-50 {
  margin-top: 50px;
}

.m-r-50 {
  margin-right: 50px;
}

.m-b-50 {
  margin-bottom: 50px;
}

.m-l-55 {
  margin-left: 55px;
}

.m-t-55 {
  margin-top: 55px;
}

.m-r-55 {
  margin-right: 55px;
}

.m-b-55 {
  margin-bottom: 55px;
}

.m-l-60 {
  margin-left: 60px;
}

.m-t-60 {
  margin-top: 60px;
}

.m-r-60 {
  margin-right: 60px;
}

.m-b-60 {
  margin-bottom: 60px;
}

.m-l-65 {
  margin-left: 65px;
}

.m-t-65 {
  margin-top: 65px;
}

.m-r-65 {
  margin-right: 65px;
}

.m-b-65 {
  margin-bottom: 65px;
}

.m-l-70 {
  margin-left: 70px;
}

.m-t-70 {
  margin-top: 70px;
}

.m-r-70 {
  margin-right: 70px;
}

.m-b-70 {
  margin-bottom: 70px;
}

.m-l-75 {
  margin-left: 75px;
}

.m-t-75 {
  margin-top: 75px;
}

.m-r-75 {
  margin-right: 75px;
}

.m-b-75 {
  margin-bottom: 75px;
}

.m-l-80 {
  margin-left: 80px;
}

.m-t-80 {
  margin-top: 80px;
}

.m-r-80 {
  margin-right: 80px;
}

.m-b-80 {
  margin-bottom: 80px;
}

.m-l-85 {
  margin-left: 85px;
}

.m-t-85 {
  margin-top: 85px;
}

.m-r-85 {
  margin-right: 85px;
}

.m-b-85 {
  margin-bottom: 85px;
}

.m-l-90 {
  margin-left: 90px;
}

.m-t-90 {
  margin-top: 90px;
}

.m-r-90 {
  margin-right: 90px;
}

.m-b-90 {
  margin-bottom: 90px;
}

.m-l-95 {
  margin-left: 95px;
}

.m-t-95 {
  margin-top: 95px;
}

.m-r-95 {
  margin-right: 95px;
}

.m-b-95 {
  margin-bottom: 95px;
}

.m-l-100 {
  margin-left: 100px;
}

.m-t-100 {
  margin-top: 100px;
}

.m-r-100 {
  margin-right: 100px;
}

.m-b-100 {
  margin-bottom: 100px;
}

.m-l-105 {
  margin-left: 105px;
}

.m-t-105 {
  margin-top: 105px;
}

.m-r-105 {
  margin-right: 105px;
}

.m-b-105 {
  margin-bottom: 105px;
}

.m-l-110 {
  margin-left: 110px;
}

.m-t-110 {
  margin-top: 110px;
}

.m-r-110 {
  margin-right: 110px;
}

.m-b-110 {
  margin-bottom: 110px;
}

.m-l-115 {
  margin-left: 115px;
}

.m-t-115 {
  margin-top: 115px;
}

.m-r-115 {
  margin-right: 115px;
}

.m-b-115 {
  margin-bottom: 115px;
}

.m-l-120 {
  margin-left: 120px;
}

.m-t-120 {
  margin-top: 120px;
}

.m-r-120 {
  margin-right: 120px;
}

.m-b-120 {
  margin-bottom: 120px;
}

.m-l-125 {
  margin-left: 125px;
}

.m-t-125 {
  margin-top: 125px;
}

.m-r-125 {
  margin-right: 125px;
}

.m-b-125 {
  margin-bottom: 125px;
}

.margin-0,
.profile_state {
  margin: 0;
}

.p-l-0 {
  padding-left: 0px;
}

.p-t-0 {
  padding-top: 0px;
}

.p-r-0,
.navbar-header {
  padding-right: 0px;
}

.p-b-0 {
  padding-bottom: 0px;
}

.p-l-5 {
  padding-left: 5px;
}

.p-t-5 {
  padding-top: 5px;
}

.p-r-5 {
  padding-right: 5px;
}

.p-b-5 {
  padding-bottom: 5px;
}

.p-l-10,
.activity_2 h5 {
  padding-left: 10px;
}

.p-t-10,
.activity_2 h5 {
  padding-top: 10px;
}

.p-r-10 {
  padding-right: 10px;
}

.p-b-10,
.right-sidebar #chat .right_chat h6,
.activity_2 h5 {
  padding-bottom: 10px;
}

.p-l-15,
.navbar-header {
  padding-left: 15px;
}

.p-t-15,
.navbar-header {
  padding-top: 15px;
}

.p-r-15 {
  padding-right: 15px;
}

.p-b-15,
.navbar-header {
  padding-bottom: 15px;
}

.p-l-20 {
  padding-left: 20px;
}

.p-t-20 {
  padding-top: 20px;
}

.p-r-20 {
  padding-right: 20px;
}

.p-b-20 {
  padding-bottom: 20px;
}

.p-l-25 {
  padding-left: 25px;
}

.p-t-25 {
  padding-top: 25px;
}

.p-r-25 {
  padding-right: 25px;
}

.p-b-25 {
  padding-bottom: 25px;
}

.p-l-30 {
  padding-left: 30px;
}

.p-t-30 {
  padding-top: 30px;
}

.p-r-30 {
  padding-right: 30px;
}

.p-b-30 {
  padding-bottom: 30px;
}

.p-l-35 {
  padding-left: 35px;
}

.p-t-35 {
  padding-top: 35px;
}

.p-r-35 {
  padding-right: 35px;
}

.p-b-35 {
  padding-bottom: 35px;
}

.p-l-40 {
  padding-left: 40px;
}

.p-t-40,
.w_calender .days,
.w_calender span {
  padding-top: 40px;
}

.p-r-40 {
  padding-right: 40px;
}

.p-b-40 {
  padding-bottom: 40px;
}

.p-l-45 {
  padding-left: 45px;
}

.p-t-45 {
  padding-top: 45px;
}

.p-r-45 {
  padding-right: 45px;
}

.p-b-45 {
  padding-bottom: 45px;
}

.p-l-50 {
  padding-left: 50px;
}

.p-t-50 {
  padding-top: 50px;
}

.p-r-50 {
  padding-right: 50px;
}

.p-b-50 {
  padding-bottom: 50px;
}

.p-l-55 {
  padding-left: 55px;
}

.p-t-55 {
  padding-top: 55px;
}

.p-r-55 {
  padding-right: 55px;
}

.p-b-55 {
  padding-bottom: 55px;
}

.p-l-60 {
  padding-left: 60px;
}

.p-t-60 {
  padding-top: 60px;
}

.p-r-60 {
  padding-right: 60px;
}

.p-b-60 {
  padding-bottom: 60px;
}

.p-l-65 {
  padding-left: 65px;
}

.p-t-65 {
  padding-top: 65px;
}

.p-r-65 {
  padding-right: 65px;
}

.p-b-65 {
  padding-bottom: 65px;
}

.p-l-70 {
  padding-left: 70px;
}

.p-t-70 {
  padding-top: 70px;
}

.p-r-70 {
  padding-right: 70px;
}

.p-b-70 {
  padding-bottom: 70px;
}

.p-l-75 {
  padding-left: 75px;
}

.p-t-75 {
  padding-top: 75px;
}

.p-r-75 {
  padding-right: 75px;
}

.p-b-75 {
  padding-bottom: 75px;
}

.p-l-80 {
  padding-left: 80px;
}

.p-t-80 {
  padding-top: 80px;
}

.p-r-80 {
  padding-right: 80px;
}

.p-b-80 {
  padding-bottom: 80px;
}

.p-l-85 {
  padding-left: 85px;
}

.p-t-85 {
  padding-top: 85px;
}

.p-r-85 {
  padding-right: 85px;
}

.p-b-85 {
  padding-bottom: 85px;
}

.p-l-90 {
  padding-left: 90px;
}

.p-t-90 {
  padding-top: 90px;
}

.p-r-90 {
  padding-right: 90px;
}

.p-b-90 {
  padding-bottom: 90px;
}

.p-l-95 {
  padding-left: 95px;
}

.p-t-95 {
  padding-top: 95px;
}

.p-r-95 {
  padding-right: 95px;
}

.p-b-95 {
  padding-bottom: 95px;
}

.p-l-100 {
  padding-left: 100px;
}

.p-t-100 {
  padding-top: 100px;
}

.p-r-100 {
  padding-right: 100px;
}

.p-b-100 {
  padding-bottom: 100px;
}

.p-l-105 {
  padding-left: 105px;
}

.p-t-105 {
  padding-top: 105px;
}

.p-r-105 {
  padding-right: 105px;
}

.p-b-105 {
  padding-bottom: 105px;
}

.p-l-110 {
  padding-left: 110px;
}

.p-t-110 {
  padding-top: 110px;
}

.p-r-110 {
  padding-right: 110px;
}

.p-b-110 {
  padding-bottom: 110px;
}

.p-l-115 {
  padding-left: 115px;
}

.p-t-115 {
  padding-top: 115px;
}

.p-r-115 {
  padding-right: 115px;
}

.p-b-115 {
  padding-bottom: 115px;
}

.p-l-120 {
  padding-left: 120px;
}

.p-t-120 {
  padding-top: 120px;
}

.p-r-120 {
  padding-right: 120px;
}

.p-b-120 {
  padding-bottom: 120px;
}

.p-l-125 {
  padding-left: 125px;
}

.p-t-125 {
  padding-top: 125px;
}

.p-r-125 {
  padding-right: 125px;
}

.p-b-125 {
  padding-bottom: 125px;
}

.padding-0,
.profile_state,
.profile_state li {
  padding: 0;
}

.font-6 {
  font-size: 6px;
}

.font-7 {
  font-size: 7px;
}

.font-8 {
  font-size: 8px;
}

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

.font-14 {
  font-size: 14px;
}

.font-15 {
  font-size: 15px;
}

.font-16 {
  font-size: 16px;
}

.font-17 {
  font-size: 17px;
}

.font-18 {
  font-size: 18px;
}

.font-19 {
  font-size: 19px;
}

.font-20 {
  font-size: 20px;
}

.font-21 {
  font-size: 21px;
}

.font-22 {
  font-size: 22px;
}

.font-23 {
  font-size: 23px;
}

.font-24 {
  font-size: 24px;
}

.font-25 {
  font-size: 25px;
}

.font-26 {
  font-size: 26px;
}

.font-27 {
  font-size: 27px;
}

.font-28 {
  font-size: 28px;
}

.font-29 {
  font-size: 29px;
}

.font-30 {
  font-size: 30px;
}

.font-31 {
  font-size: 31px;
}

.font-32 {
  font-size: 32px;
}

.font-33 {
  font-size: 33px;
}

.font-34 {
  font-size: 34px;
}

.font-35 {
  font-size: 35px;
}

.font-36 {
  font-size: 36px;
}

.font-37 {
  font-size: 37px;
}

.font-38 {
  font-size: 38px;
}

.font-39 {
  font-size: 39px;
}

.font-40 {
  font-size: 40px;
}

.font-41 {
  font-size: 41px;
}

.font-42 {
  font-size: 42px;
}

.font-43 {
  font-size: 43px;
}

.font-44 {
  font-size: 44px;
}

.font-45 {
  font-size: 45px;
}

.font-46 {
  font-size: 46px;
}

.font-47 {
  font-size: 47px;
}

.font-48 {
  font-size: 48px;
}

.font-49 {
  font-size: 49px;
}

.font-50 {
  font-size: 50px;
}

.align-left {
  text-align: left;
}

.align-center,
.profile_state li,
.social_media_table .list-icon,
.new_friend_list li {
  text-align: center;
}

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

.align-justify {
  text-align: justify;
}

.no-resize {
  resize: none;
}

.font-bold {
  font-weight: bold;
}

.font-italic {
  font-style: italic;
}

.font-underline {
  text-decoration: underline;
}

.font-line-through {
  text-decoration: line-through;
}

.font-overline {
  text-decoration: overline;
}

.bg-red .content .text,
.bg-red .content .number {
  color: #fff !important;
}

.bg-pink {
  background-color: #e91e63 !important;
  color: #fff;
}

.bg-pink .content .text,
.bg-pink .content .number {
  color: #fff !important;
}

.bg-purple {
  background-color: #ba3bd0 !important;
  color: #fff;
}

.bg-purple .content .text,
.bg-purple .content .number {
  color: #fff !important;
}

.bg-deep-purple {
  background-color: #673ab7 !important;
  color: #fff;
}

.bg-deep-purple .content .text,
.bg-deep-purple .content .number {
  color: #fff !important;
}

.bg-blue {
  background-color: #457fca !important;
  color: #fff;
}

.bg-blue .content .text,
.bg-blue .content .number {
  color: #fff !important;
}

.bg-cyan {
  background-color: #379c94 !important;
  color: #fff;
}

.bg-cyan .content .text,
.bg-cyan .content .number {
  color: #fff !important;
}

.bg-green .content .text,
.bg-green .content .number {
  color: #fff !important;
}

.bg-light-green .content .text,
.bg-light-green .content .number {
  color: #fff !important;
}

.bg-yellow {
  background-color: #ffe821 !important;
  color: #fff;
}

.bg-yellow .content .text,
.bg-yellow .content .number {
  color: #fff !important;
}

.bg-orange {
  background-color: #ff9800 !important;
  color: #fff;
}

.bg-orange .content .text,
.bg-orange .content .number {
  color: #fff !important;
}

.bg-deep-orange {
  background-color: #f83600 !important;
  color: #fff;
}

.bg-deep-orange .content .text,
.bg-deep-orange .content .number {
  color: #fff !important;
}

.bg-grey .content .text,
.bg-grey .content .number {
  color: #fff !important;
}

.bg-blue-grey .content .text,
.bg-blue-grey .content .number {
  color: #fff !important;
}

.bg-indigo {
  background-color: #3f51b5 !important;
  color: #fff;
}

.bg-indigo .content .text,
.bg-indigo .content .number {
  color: #fff !important;
}

.bg-light-blue .content .text,
.bg-light-blue .content .number {
  color: #fff !important;
}

.bg-teal .content .text,
.bg-teal .content .number {
  color: #fff !important;
}

.bg-lime {
  background-color: #cddc39 !important;
  color: #fff;
}

.bg-lime .content .text,
.bg-lime .content .number {
  color: #fff !important;
}

.bg-amber {
  background-color: #ffc107 !important;
  color: #fff;
}

.bg-amber .content .text,
.bg-amber .content .number {
  color: #fff !important;
}

.bg-brown {
  background-color: #795548 !important;
  color: #fff;
}

.bg-brown .content .text,
.bg-brown .content .number {
  color: #fff !important;
}

.bg-blush {
  background-color: #f15f79 !important;
  color: #fff;
}

.bg-blush .content .text,
.bg-blush .content .number {
  color: #fff !important;
}

.bg-black {
  background-color: #000 !important;
  color: #fff;
}

.bg-black .content .text,
.bg-black .content .number {
  color: #fff !important;
}

.bg-white {
  background-color: #fff !important;
  color: #fff;
}

.bg-white .content .text,
.bg-white .content .number {
  color: #fff !important;
}

.col-red {
  color: #ec3b57 !important;
}

.col-pink {
  color: #e91e63 !important;
}

.col-purple {
  color: #ba3bd0 !important;
}

.col-deep-purple {
  color: #673ab7 !important;
}

.col-cyan {
  color: #379c94 !important;
}

.col-light-green {
  color: #8bc34a !important;
}

.col-yellow {
  color: #ffe821 !important;
}

.col-grey {
  color: #9e9e9e !important;
}

.col-blue-grey {
  color: #607d8b !important;
}

.col-light-blue {
  color: #03a9f4 !important;
}

.col-teal {
  color: #009688 !important;
}

.col-blush {
  color: #f15f79 !important;
}

.col-white,
.social_media_table .list-icon {
  color: #fff !important;
}

@-ms-keyframes spin {
  from {
    -ms-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -ms-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@-moz-keyframes spin {
  from {
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@-webkit-keyframes spin {
  from {
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

.demo-button-sizes .btn {
  margin-bottom: 5px;
}

.icon-button-demo button {
  margin-right: 5px;
  margin-bottom: 12px;
}

.button-demo ul {
  padding-left: 0;
}

.button-demo ul li {
  list-style: none;
  padding-left: 0;
  display: inline-block;
  margin-right: 7px;
}

.button-demo ul li .btn {
  display: block;
  min-width: 175px;
}

.button-demo .btn {
  margin-right: 8px;
  margin-bottom: 13px;
  min-width: 120px;
}

.demo-button-groups .btn-group {
  margin-right: 10px;
}

.demo-button-toolbar .btn-toolbar {
  float: left;
  margin-right: 25px;
}

.demo-button-nesting > .btn-group {
  margin-right: 15px;
}

.demo-single-button-dropdowns > .btn-group {
  margin-right: 10px;
}

.demo-splite-button-dropdowns > .btn-group {
  margin-right: 10px;
}

.demo-dropup .dropup {
  margin-right: 10px;
}

.demo-checkbox label,
.demo-radio-button label {
  min-width: 150px;
}

.demo-knob-chart div {
  margin-right: 15px;
}

.demo-switch .switch {
  display: inline-block;
}

.demo-switch .demo-switch-title {
  min-width: 95px;
  display: inline-block;
}

.demo-color-box {
  padding: 15px 0;
  text-align: center;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  border-radius: 3px;
}

.demo-color-box .color-name {
  font-size: 16px;
  margin-bottom: 5px;
}

.demo-color-box .color-code,
.demo-color-box .color-class-name {
  font-size: 13px;
}

.demo-image-copyright {
  text-align: right;
  font-style: italic;
  font-size: 12px;
  color: #777;
  margin: 5px 0 10px 0;
}

.demo-image-copyright a {
  font-weight: bold;
  color: #555 !important;
}

.demo-icon-container .demo-google-material-icon {
  margin-bottom: 5px;
  text-align: left;
}

.demo-icon-container .demo-google-material-icon .icon-name {
  position: relative;
  top: -8px;
  left: 7px;
}

.demo-icon-container .demo-google-material-icon .material-icons {
  width: 24px;
}

.demo-preloader .preloader {
  margin-right: 10px;
}

.irs-demo {
  margin-bottom: 40px;
}

.irs-demo .irs {
  margin-top: 15px;
}

@media (min-width: 768px) and (max-width: 991px) {
  .navbar > .container .navbar-brand,
  .navbar > .container-fluid .navbar-brand {
    margin-left: 20px;
  }
}

@media (min-width: 992px) and (max-width: 1169px) {
  .navbar > .container .navbar-brand,
  .navbar > .container-fluid .navbar-brand {
    margin-left: 20px;
  }
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: bold;
}

button,
input,
select,
a {
  outline: none !important;
}

.small,
small {
  font-size: 95%;
}

.no-animate {
  -o-transition-property: none !important;
  -moz-transition-property: none !important;
  -ms-transition-property: none !important;
  -webkit-transition-property: none !important;
  transition-property: none !important;
  -o-transform: none !important;
  -moz-transform: none !important;
  -ms-transform: none !important;
  -webkit-transform: none !important;
  transform: none !important;
  -webkit-animation: none !important;
  -moz-animation: none !important;
  -o-animation: none !important;
  -ms-animation: none !important;
  animation: none !important;
}

section.content {
  margin: 5px 5px 5px 5px;
  -moz-transition: 0.5s;
  -o-transition: 0.5s;
  -webkit-transition: 0.5s;
  transition: 0.5s;
  z-index: 9;
  position: relative;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  border-radius: 3px;
}

.g-bg-cyan {
  background: linear-gradient(60deg, #136a8a, #379c94);
  color: #fff !important;
}

.g-bg-blue {
  background: linear-gradient(60deg, #00adef, #0094da);
  color: #fff !important;
}

.g-bg-gy {
  background: linear-gradient(60deg, #94d23b, #fcb711);
  color: #fff !important;
}

.g-bg-cgreen {
  background: linear-gradient(60deg, #16c99f, #12a682);
  color: #fff !important;
}

.g-bg-blush2 {
  background: linear-gradient(325deg, #dd5e89, #f7bb97);
  color: #fff !important;
}

.g-bg-soundcloud {
  background: linear-gradient(60deg, #f83600, #fe8c00);
  color: #fff !important;
}

.g-bg-soundcloud2 {
  background: linear-gradient(
    135deg,
    rgba(243, 71, 75, 0.9) 0%,
    rgba(255, 152, 0, 0.9) 100%
  );
  color: #fff !important;
}

.l-green {
  background: linear-gradient(45deg, #9ce89d, #cdfa7e) !important;
}

.l-pink {
  background: linear-gradient(45deg, pink, #fbc1cb) !important;
}

.l-turquoise {
  background: linear-gradient(45deg, #00ced1, #08e5e8) !important;
  color: #fff !important;
}

.l-khaki {
  background: linear-gradient(45deg, khaki, #fdf181) !important;
}

.l-coral {
  background: linear-gradient(45deg, #f08080, #f58787) !important;
  color: #fff !important;
}

.l-salmon {
  background: linear-gradient(45deg, #ec74a1, #fbc7c0) !important;
  color: #fff !important;
}

.l-blue {
  background: linear-gradient(45deg, #72c2ff, #86f0ff) !important;
  color: #fff !important;
}

.l-seagreen {
  background: linear-gradient(45deg, #8ed8ec, #85f7b5) !important;
  color: #fff !important;
}

.l-amber,
.chat-launcher,
.w_calender span + span,
.w_calender em {
  background: linear-gradient(45deg, #fda582, #f7cf68) !important;
  color: #fff !important;
}

.l-blush {
  background: linear-gradient(45deg, #dd5e89, #f7bb97) !important;
  color: #fff !important;
}

.l-parpl {
  background: linear-gradient(45deg, #a890d3, #edbae7) !important;
  color: #fff !important;
}

.l-slategray {
  background: linear-gradient(45deg, #708090, #7c8ea0) !important;
  color: #fff !important;
}

.xl-pink {
  background: #f9edee !important;
}

.xl-turquoise {
  background: #bdf3f5 !important;
}

.xl-khaki {
  background: #f9f1d8 !important;
}

.xl-parpl {
  background: #efebf4 !important;
}

.xl-salmon {
  background: #ffd4c3 !important;
}

.xl-blue {
  background: #e0eff5 !important;
}

.xl-seagreen {
  background: #ebf2e8 !important;
}

.carousel-item-next,
.carousel-item-prev,
.carousel-item.active {
  display: block;
}

.carousel-item {
  position: relative;
  display: none;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  transition: -webkit-transform 0.6s ease;
  transition: transform 0.6s ease;
  transition:
    transform 0.6s ease,
    -webkit-transform 0.6s ease;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-perspective: 1000px;
  perspective: 1000px;
}

.inlineblock,
.navbar-header,
.navbar-nav.navbar-left,
.navbar-nav.navbar-right,
.navbar-nav.navbar-left > li,
.navbar-nav.navbar-right > li,
.navbar-nav > li > a,
.sidebar,
.right-sidebar .choose-skin li div,
.right-sidebar #chat .right_chat ul .media .message,
.right-sidebar #chat .right_chat ul .media .status,
.card .header .header-dropdown li,
.dropdown-menu ul.menu .icon-circle,
.dropdown-menu ul.menu .menu-info,
.chat-widget .chat-scroll-list li.left .chat-info,
.chat-widget .chat-scroll-list li.right .chat-info,
.member-card .social-links li {
  display: inline-block;
}

.displayblock,
.card .header h2 small,
.dropdown-menu ul.menu li a,
.dropdown-menu .footer a,
.dropdown-menu > li > a,
.page-calendar .event-name h4 span,
.chat-widget .chat-scroll-list li .message,
.new_friend_list li .join_date,
.profile-page .profile-header .profile_info .job_post {
  display: block;
}

.fullscreen.is-fullscreen .zmdi-fullscreen::before {
  content: "\f16c";
}

@media only screen and (max-width: 500px) {
  section.content {
    margin-left: 0 !important;
    margin-right: 0px;
    padding: 0;
  }
}

.dashboard-donut-chart {
  height: 265px;
}

.btn:focus {
  outline: none !important;
}

.btn-circle {
  border: none;
  outline: none !important;
  overflow: hidden;
  width: 40px;
  height: 40px;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
  padding: 0;
}

.btn-circle i {
  font-size: 18px;
  position: relative;
  left: -1px;
}

.btn-link {
  font-weight: bold;
  color: #333;
  -moz-transition: 0.5s;
  -o-transition: 0.5s;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

.btn-link:active,
.btn-link:focus {
  text-decoration: none;
  color: #333;
}

.btn-link:hover {
  text-decoration: none;
  color: #333;
  background-color: #ddd;
}

.btn-circle-lg {
  border: none;
  outline: none !important;
  overflow: hidden;
  width: 50px;
  height: 50px;
  -webkit-border-radius: 50% !important;
  -moz-border-radius: 50% !important;
  -ms-border-radius: 50% !important;
  border-radius: 50% !important;
}

.btn-circle-lg i {
  font-size: 26px !important;
  position: relative !important;
  left: 0px !important;
  top: 6px !important;
}

.btn:not(.btn-link):not(.btn-circle):hover {
  outline: none;
}

.btn:not(.btn-link):not(.btn-circle) i {
  font-size: 20px;
  position: relative;
}

.btn-warning,
.btn-warning:hover,
.btn-warning:active,
.btn-warning:focus {
  background-color: #ff9600 !important;
}

.btn-danger,
.btn-danger:hover,
.btn-danger:active,
.btn-danger:focus {
  background-color: #fb483a !important;
}

.btn-info,
.btn-info:hover,
.btn-info:active,
.btn-info:focus {
  background-color: #00b0e4 !important;
}

.btn-success,
.btn-success:hover,
.btn-success:active,
.btn-success:focus {
  background-color: #2b982b !important;
}

.btn-primary,
.btn-primary:hover,
.btn-primary:active,
.btn-primary:focus {
  background-color: #1f91f3 !important;
}

.btn-default,
.btn-default:hover,
.btn-default:active,
.btn-default:focus {
  background-color: #fff !important;
}

.btn-group,
.btn-group-vertical {
  box-shadow:
    0 2px 5px rgba(0, 0, 0, 0.16),
    0 2px 10px rgba(0, 0, 0, 0.12);
}

.btn-group .btn,
.btn-group-vertical .btn {
  box-shadow: none !important;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  border-radius: 0;
}

.btn-group .btn .caret,
.btn-group-vertical .btn .caret {
  position: relative;
  bottom: 1px;
}

.btn-group .btn-group,
.btn-group-vertical .btn-group {
  box-shadow: none !important;
}

.btn-group .btn + .dropdown-toggle,
.btn-group-vertical .btn + .dropdown-toggle {
  border-left: 1px solid rgba(0, 0, 0, 0.08) !important;
}

.bootstrap-tagsinput {
  -webkit-box-shadow: none !important;
  -moz-box-shadow: none !important;
  -ms-box-shadow: none !important;
  box-shadow: none !important;
  border: none !important;
}

.noUi-target {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -ms-touch-action: none;
  touch-action: none;
  -ms-user-select: none;
  -moz-user-select: none;
  user-select: none;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
  direction: ltr;
}

.noUi-target * {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -ms-touch-action: none;
  touch-action: none;
  -ms-user-select: none;
  -moz-user-select: none;
  user-select: none;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.noUi-base {
  width: 100%;
  height: 100%;
  position: relative;
  z-index: 1;
}

.noUi-origin {
  position: absolute;
  right: 0;
  top: 6px;
  left: 0;
  bottom: 0;
}

.noUi-handle {
  position: relative;
  z-index: 1;
}

.noUi-stacking .noUi-handle {
  z-index: 10;
}

.noUi-state-tap .noUi-origin {
  -webkit-transition:
    left 0.25s,
    top 0.25s;
  transition:
    left 0.25s,
    top 0.25s;
}

.noUi-state-drag * {
  cursor: inherit !important;
}

.noUi-base {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.noUi-horizontal {
  height: 18px;
}

.noUi-horizontal .noUi-handle {
  width: 34px;
  height: 28px;
  left: -17px;
  top: -6px;
}

.noUi-vertical {
  width: 18px;
}

.noUi-vertical .noUi-handle {
  width: 28px;
  height: 34px;
  left: -6px;
  top: -17px;
}

.noUi-background {
  background: #fafafa;
  box-shadow: inset 0 1px 1px #f0f0f0;
}

.noUi-connect {
  background: #3fb8af;
  box-shadow: inset 0 0 3px rgba(51, 51, 51, 0.45);
  -webkit-transition: background 450ms;
  transition: background 450ms;
}

.noUi-origin {
  border-radius: 2px;
}

.noUi-target {
  border-radius: 4px;
  border: 1px solid #d3d3d3;
  box-shadow:
    inset 0 1px 1px #f0f0f0,
    0 3px 6px -5px #bbb;
}

.noUi-target.noUi-connect {
  box-shadow:
    inset 0 0 3px rgba(51, 51, 51, 0.45),
    0 3px 6px -5px #bbb;
}

.noUi-dragable {
  cursor: w-resize;
}

.noUi-vertical .noUi-dragable {
  cursor: n-resize;
}

.noUi-handle {
  border: 1px solid #d9d9d9;
  border-radius: 3px;
  background: #fff;
  cursor: default;
  box-shadow:
    inset 0 0 1px #fff,
    inset 0 1px 7px #ebebeb,
    0 3px 6px -3px #bbb;
}

.noUi-active {
  box-shadow:
    inset 0 0 1px #fff,
    inset 0 1px 7px #ddd,
    0 3px 6px -3px #bbb;
}

.noUi-handle:before {
  content: "";
  display: block;
  position: absolute;
  height: 14px;
  width: 1px;
  background: #e8e7e6;
  left: 14px;
  top: 6px;
}

.noUi-handle:after {
  content: "";
  display: block;
  position: absolute;
  height: 14px;
  width: 1px;
  background: #e8e7e6;
  left: 14px;
  top: 6px;
  left: 17px;
}

.noUi-vertical .noUi-handle:before {
  width: 14px;
  height: 1px;
  left: 6px;
  top: 14px;
}

.noUi-vertical .noUi-handle:after {
  width: 14px;
  height: 1px;
  left: 6px;
  top: 14px;
  top: 17px;
}

[disabled].noUi-connect,
[disabled] .noUi-connect {
  background: #b8b8b8;
}

[disabled].noUi-origin,
[disabled] .noUi-handle {
  cursor: not-allowed;
}

.noUi-target {
  box-shadow: none;
  border: none;
}

.noUi-base {
  height: 15px;
  top: -6px;
}

.noUi-background {
  height: 3px;
  top: 6px;
  background-color: #bfbfbf;
  box-shadow: none;
}

.noUi-horizontal {
  height: 3px;
}

.noUi-connect {
  height: 3px;
  top: 6px;
  background-color: #26a69a;
  box-shadow: none;
}

.noUi-horizontal .noUi-handle {
  width: 15px;
  height: 15px;
  border-radius: 50%;
  box-shadow: none;
  background-color: #26a69a;
  border: none;
  left: -5px;
  top: -6px;
  transition:
    width 0.2s cubic-bezier(0.215, 0.61, 0.355, 1),
    height 0.2s cubic-bezier(0.215, 0.61, 0.355, 1),
    left 0.2s cubic-bezier(0.215, 0.61, 0.355, 1),
    top 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.noUi-handle:before,
.noUi-handle:after {
  content: none;
}

.noUi-target .noUi-active.noUi-handle {
  -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, 0.5);
  -moz-box-shadow: 0 0 20px rgba(0, 0, 0, 0.5);
  -ms-box-shadow: 0 0 20px rgba(0, 0, 0, 0.5);
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.5);
}

.noUi-target .range-label {
  position: absolute;
  height: 30px;
  width: 30px;
  top: -17px;
  left: -2px;
  background-color: #26a69a;
  border-radius: 50%;
  transition:
    border-radius 0.25s cubic-bezier(0.215, 0.61, 0.355, 1),
    transform 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
  transform: scale(0.5) rotate(-45deg);
  transform-origin: 50% 100%;
}

.noUi-target .noUi-active .range-label {
  border-radius: 15px 15px 15px 0;
  transform: rotate(-45deg) translate(23px, -25px);
}

.range-label span {
  width: 100%;
  text-align: center;
  color: #fff;
  font-size: 12px;
  transform: rotate(45deg);
  opacity: 0;
  position: absolute;
  top: 7px;
  left: -1px;
  transition: opacity 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.noUi-active .range-label span {
  opacity: 1;
}

.ms-container {
  width: auto !important;
}

.ms-container .ms-list {
  -webkit-box-shadow: none !important;
  -moz-box-shadow: none !important;
  -ms-box-shadow: none !important;
  box-shadow: none !important;
  -webkit-border-radius: 0 !important;
  -moz-border-radius: 0 !important;
  -ms-border-radius: 0 !important;
  border-radius: 0 !important;
}

.ms-container .ms-list.ms-focus {
  -webkit-box-shadow: none !important;
  -moz-box-shadow: none !important;
  -ms-box-shadow: none !important;
  box-shadow: none !important;
}

.ms-container .ms-selectable,
.ms-container .ms-selection {
  min-width: 80px !important;
}

.ms-container .ms-selectable li.ms-hover,
.ms-container .ms-selection li.ms-hover {
  color: #000000 !important;
  background-color: #e6e6e6 !important;
}

.ms-container .ms-selectable li.ms-elem-selectable,
.ms-container .ms-selectable li.ms-elem-selection,
.ms-container .ms-selection li.ms-elem-selectable,
.ms-container .ms-selection li.ms-elem-selection {
  padding: 9px 15px 6px 15px !important;
}

.ms-container .ms-optgroup-label {
  padding: 5px 0 0 8px !important;
}

.card .card-inside-title {
  margin-top: 25px;
  margin-bottom: 15px;
  display: block;
  font-size: 15px;
  color: #000;
}

.card .card-inside-title small {
  color: #999;
  display: block;
  font-size: 11px;
  margin-top: 5px;
}

.card .card-inside-title small a {
  color: #777;
  font-weight: bold;
}

.card .card-inside-title:first-child {
  margin-top: 0;
}

.card .bg-red,
.card .bg-pink,
.card .bg-purple,
.card .bg-deep-purple,
.card .bg-indigo,
.card .bg-blue,
.card .bg-light-blue,
.card .bg-cyan,
.card .bg-teal,
.card .bg-green,
.card .bg-light-green,
.card .bg-lime,
.card .bg-yellow,
.card .bg-amber,
.card .bg-orange,
.card .bg-deep-orange,
.card .bg-brown,
.card .bg-grey,
.card .bg-blue-grey,
.card .bg-blush,
.card .bg-black {
  border-bottom: none !important;
  color: #fff !important;
}

.card .bg-red h2,
.card .bg-red small,
.card .bg-red .material-icons,
.card .bg-pink h2,
.card .bg-pink small,
.card .bg-pink .material-icons,
.card .bg-purple h2,
.card .bg-purple small,
.card .bg-purple .material-icons,
.card .bg-deep-purple h2,
.card .bg-deep-purple small,
.card .bg-deep-purple .material-icons,
.card .bg-indigo h2,
.card .bg-indigo small,
.card .bg-indigo .material-icons,
.card .bg-blue h2,
.card .bg-blue small,
.card .bg-blue .material-icons,
.card .bg-light-blue h2,
.card .bg-light-blue small,
.card .bg-light-blue .material-icons,
.card .bg-cyan h2,
.card .bg-cyan small,
.card .bg-cyan .material-icons,
.card .bg-teal h2,
.card .bg-teal small,
.card .bg-teal .material-icons,
.card .bg-green h2,
.card .bg-green small,
.card .bg-green .material-icons,
.card .bg-light-green h2,
.card .bg-light-green small,
.card .bg-light-green .material-icons,
.card .bg-lime h2,
.card .bg-lime small,
.card .bg-lime .material-icons,
.card .bg-yellow h2,
.card .bg-yellow small,
.card .bg-yellow .material-icons,
.card .bg-amber h2,
.card .bg-amber small,
.card .bg-amber .material-icons,
.card .bg-orange h2,
.card .bg-orange small,
.card .bg-orange .material-icons,
.card .bg-deep-orange h2,
.card .bg-deep-orange small,
.card .bg-deep-orange .material-icons,
.card .bg-brown h2,
.card .bg-brown small,
.card .bg-brown .material-icons,
.card .bg-grey h2,
.card .bg-grey small,
.card .bg-grey .material-icons,
.card .bg-blue-grey h2,
.card .bg-blue-grey small,
.card .bg-blue-grey .material-icons,
.card .bg-blush h2,
.card .bg-blush small,
.card .bg-blush .material-icons,
.card .bg-black h2,
.card .bg-black small,
.card .bg-black .material-icons {
  color: #fff !important;
}

.card .bg-red .badge,
.card .bg-pink .badge,
.card .bg-purple .badge,
.card .bg-deep-purple .badge,
.card .bg-indigo .badge,
.card .bg-blue .badge,
.card .bg-light-blue .badge,
.card .bg-cyan .badge,
.card .bg-teal .badge,
.card .bg-green .badge,
.card .bg-light-green .badge,
.card .bg-lime .badge,
.card .bg-yellow .badge,
.card .bg-amber .badge,
.card .bg-orange .badge,
.card .bg-deep-orange .badge,
.card .bg-brown .badge,
.card .bg-grey .badge,
.card .bg-blue-grey .badge,
.card .bg-blush .badge,
.card .bg-black .badge {
  background-color: #fff;
  color: #555;
}

.card .header .header-dropdown {
  position: absolute;
  top: 15px;
  right: 10px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.card .header .header-dropdown a {
  padding: 5px 10px;
}

.card .header .header-dropdown .dropdown-menu li {
  display: block !important;
}

.card .header .header-dropdown i {
  font-size: 20px;
  color: #999;
  -moz-transition: all 0.5s;
  -o-transition: all 0.5s;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}

.card .header .header-dropdown i:hover {
  color: #000;
}

.card .header h2 small {
  font-size: 13px;
  margin-top: 5px;
  color: #999;
  line-height: 15px;
}

.card .header h2 small a {
  font-weight: bold;
  color: #777;
}

.card .p-15 {
  padding: 15px !important;
}

.info-box {
  height: 80px;
  display: flex;
  cursor: default;
  background-color: #fff;
  position: relative;
  overflow: hidden;
}

.info-box .icon {
  display: inline-block;
  text-align: center;
  background-color: rgba(0, 0, 0, 0.12);
  width: 80px;
}

.info-box .icon i {
  color: #fff;
  font-size: 30px;
  line-height: 80px;
}

.info-box .icon .chart.chart-bar {
  height: 100%;
  line-height: 100px;
}

.info-box .icon .chart.chart-bar canvas {
  vertical-align: baseline !important;
}

.info-box .icon .chart.chart-pie {
  height: 100%;
  line-height: 123px;
}

.info-box .icon .chart.chart-pie canvas {
  vertical-align: baseline !important;
}

.info-box .icon .chart.chart-line {
  height: 100%;
  line-height: 115px;
}

.info-box .icon .chart.chart-line canvas {
  vertical-align: baseline !important;
}

.info-box .content {
  display: inline-block;
  padding: 7px 10px;
}

.info-box .content .text {
  font-size: 13px;
  margin-top: 11px;
  color: #555;
}

.info-box .content .number {
  font-weight: normal;
  font-size: 26px;
  color: #555;
}

.info-box.hover-zoom-effect .icon {
  overflow: hidden;
}

.info-box.hover-zoom-effect .icon i {
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.info-box.hover-zoom-effect:hover .icon i {
  opacity: 0.4;
  -moz-transform: rotate(-32deg) scale(1.4);
  -ms-transform: rotate(-32deg) scale(1.4);
  -o-transform: rotate(-32deg) scale(1.4);
  -webkit-transform: rotate(-32deg) scale(1.4);
  transform: rotate(-32deg) scale(1.4);
}

.info-box.hover-expand-effect:after {
  background-color: rgba(0, 0, 0, 0.05);
  content: ".";
  position: absolute;
  left: 80px;
  top: 0;
  width: 0;
  height: 100%;
  color: transparent;
  -moz-transition: all 0.95s;
  -o-transition: all 0.95s;
  -webkit-transition: all 0.95s;
  transition: all 0.95s;
}

.info-box.hover-expand-effect:hover:after {
  width: 100%;
}

.info-box-2 {
  display: flex;
  cursor: default;
  background-color: #fff;
  position: relative;
  overflow: hidden;
  text-align: center;
  min-height: 150px;
}

.info-box-2 .icon {
  display: inline-block;
}

.info-box-2 .icon i {
  color: #fff;
  font-size: 30px;
  line-height: 70px;
}

.info-box-2 .chart.chart-bar {
  height: 100%;
}

.info-box-2 .chart.chart-bar canvas {
  vertical-align: baseline !important;
}

.info-box-2 .chart.chart-pie {
  height: 100%;
}

.info-box-2 .chart.chart-pie canvas {
  vertical-align: baseline !important;
}

.info-box-2 .chart.chart-line {
  height: 100%;
}

.info-box-2 .chart.chart-line canvas {
  vertical-align: baseline !important;
}

.info-box-2 .content {
  display: inline-block;
  padding: 7px 10px;
}

.info-box-2 .content .text {
  font-size: 14px;
  margin-top: 11px;
  color: #555;
}

.info-box-2 .content .number {
  font-weight: normal;
  font-size: 26px;
  color: #555;
}

.info-box-2.hover-zoom-effect .icon {
  overflow: hidden;
}

.info-box-2.hover-zoom-effect .icon i {
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.info-box-2.hover-zoom-effect:hover .icon i {
  opacity: 0.4;
  -moz-transform: rotate(-32deg) scale(1.4);
  -ms-transform: rotate(-32deg) scale(1.4);
  -o-transform: rotate(-32deg) scale(1.4);
  -webkit-transform: rotate(-32deg) scale(1.4);
  transform: rotate(-32deg) scale(1.4);
}

.info-box-2.hover-expand-effect:after {
  background-color: rgba(0, 0, 0, 0.05);
  content: ".";
  position: absolute;
  left: 0;
  top: 0;
  width: 0;
  height: 100%;
  color: transparent;
  -moz-transition: all 0.95s;
  -o-transition: all 0.95s;
  -webkit-transition: all 0.95s;
  transition: all 0.95s;
}

.info-box-2.hover-expand-effect:hover:after {
  width: 100%;
}

.m-alert {
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  border-radius: 0;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  -ms-box-shadow: none;
  box-shadow: none;
  border: none;
  color: #fff !important;
}

.m-alert .alert-link {
  color: #fff;
  text-decoration: underline;
  font-weight: bold;
}

.m-alert-success {
  background-color: #2b982b;
}

.m-alert-info {
  background-color: #00b0e4;
}

.m-alert-warning {
  background-color: #ff9600 !important;
}

.m-alert-danger {
  background-color: #fb483a !important;
}

.m-alert-dismissible .close {
  color: #fff;
  opacity: 1;
  border: none;
  text-shadow: none;
}

.notify {
  position: absolute;
  top: 10px;
  right: 10px;
}

.notify .heartbit {
  position: absolute;
  top: -20px;
  right: -16px;
  height: 25px;
  width: 25px;
  z-index: 10;
  border: 4px solid;
  border-color: #3d4c5a;
  border-radius: 70px;
  animation: heartbit 1s ease-out;
  -moz-animation: heartbit 1s ease-out;
  -moz-animation-iteration-count: infinite;
  -o-animation: heartbit 1s ease-out;
  -o-animation-iteration-count: infinite;
  -webkit-animation: heartbit 1s ease-out;
  -ms-animation: heartbit 1s ease-out;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
}

.notify .point {
  width: 6px;
  height: 6px;
  -webkit-border-radius: 30px;
  -moz-border-radius: 30px;
  border-radius: 30px;
  background-color: #3d4c5a;
  position: absolute;
  right: -6px;
  top: -10px;
}

@-moz-keyframes heartbit {
  0% {
    -moz-transform: scale(0);
    opacity: 0;
  }
  25% {
    -moz-transform: scale(0.1);
    opacity: 0.1;
  }
  50% {
    -moz-transform: scale(0.5);
    opacity: 0.3;
  }
  75% {
    -moz-transform: scale(0.8);
    opacity: 0.5;
  }
  100% {
    -moz-transform: scale(1);
    opacity: 0;
  }
}

@-webkit-keyframes heartbit {
  0% {
    -webkit-transform: scale(0);
    opacity: 0;
  }
  25% {
    -webkit-transform: scale(0.1);
    opacity: 0.1;
  }
  50% {
    -webkit-transform: scale(0.5);
    opacity: 0.3;
  }
  75% {
    -webkit-transform: scale(0.8);
    opacity: 0.5;
  }
  100% {
    -webkit-transform: scale(1);
    opacity: 0;
  }
}

@-ms-keyframes heartbit {
  0% {
    -ms-transform: scale(0);
    opacity: 0;
  }
  25% {
    -ms-transform: scale(0.1);
    opacity: 0.1;
  }
  50% {
    -ms-transform: scale(0.5);
    opacity: 0.3;
  }
  75% {
    -ms-transform: scale(0.8);
    opacity: 0.5;
  }
  100% {
    -ms-transform: scale(1);
    opacity: 0;
  }
}

.sweet-alert {
  -webkit-border-radius: 0 !important;
  -moz-border-radius: 0 !important;
  -ms-border-radius: 0 !important;
  border-radius: 0 !important;
}

.sweet-alert p {
  font-size: 14px !important;
}

.sweet-alert .sa-input-error {
  top: 23px !important;
  right: 13px !important;
}

.sweet-alert h2 {
  font-size: 18px !important;
  margin: 0 0 5px 0 !important;
}

.sweet-alert button {
  font-size: 15px !important;
  -webkit-border-radius: 0 !important;
  -moz-border-radius: 0 !important;
  -ms-border-radius: 0 !important;
  border-radius: 0 !important;
  padding: 5px 20px !important;
}

[type="checkbox"] + label {
  padding-left: 26px;
  height: 25px;
  line-height: 21px;
  font-size: 13px;
  font-weight: normal;
}

[type="checkbox"]:checked + label:before {
  top: -4px;
  left: -2px;
  width: 11px;
  height: 19px;
}

[type="checkbox"]:checked.chk-col-red + label:before {
  border-right: 2px solid #ec3b57;
  border-bottom: 2px solid #ec3b57;
}

[type="checkbox"]:checked.chk-col-pink + label:before {
  border-right: 2px solid #e91e63;
  border-bottom: 2px solid #e91e63;
}

[type="checkbox"]:checked.chk-col-purple + label:before {
  border-right: 2px solid #ba3bd0;
  border-bottom: 2px solid #ba3bd0;
}

[type="checkbox"]:checked.chk-col-deep-purple + label:before {
  border-right: 2px solid #673ab7;
  border-bottom: 2px solid #673ab7;
}

[type="checkbox"]:checked.chk-col-blue + label:before {
  border-right: 2px solid #457fca;
  border-bottom: 2px solid #457fca;
}

[type="checkbox"]:checked.chk-col-cyan + label:before {
  border-right: 2px solid #379c94;
  border-bottom: 2px solid #379c94;
}

[type="checkbox"]:checked.chk-col-green + label:before {
  border-right: 2px solid #78b83e;
  border-bottom: 2px solid #78b83e;
}

[type="checkbox"]:checked.chk-col-light-green + label:before {
  border-right: 2px solid #8bc34a;
  border-bottom: 2px solid #8bc34a;
}

[type="checkbox"]:checked.chk-col-yellow + label:before {
  border-right: 2px solid #ffe821;
  border-bottom: 2px solid #ffe821;
}

[type="checkbox"]:checked.chk-col-orange + label:before {
  border-right: 2px solid #ff9800;
  border-bottom: 2px solid #ff9800;
}

[type="checkbox"]:checked.chk-col-deep-orange + label:before {
  border-right: 2px solid #f83600;
  border-bottom: 2px solid #f83600;
}

[type="checkbox"]:checked.chk-col-grey + label:before {
  border-right: 2px solid #9e9e9e;
  border-bottom: 2px solid #9e9e9e;
}

[type="checkbox"]:checked.chk-col-blue-grey + label:before {
  border-right: 2px solid #607d8b;
  border-bottom: 2px solid #607d8b;
}

[type="checkbox"]:checked.chk-col-indigo + label:before {
  border-right: 2px solid #3f51b5;
  border-bottom: 2px solid #3f51b5;
}

[type="checkbox"]:checked.chk-col-light-blue + label:before {
  border-right: 2px solid #03a9f4;
  border-bottom: 2px solid #03a9f4;
}

[type="checkbox"]:checked.chk-col-teal + label:before {
  border-right: 2px solid #009688;
  border-bottom: 2px solid #009688;
}

[type="checkbox"]:checked.chk-col-lime + label:before {
  border-right: 2px solid #cddc39;
  border-bottom: 2px solid #cddc39;
}

[type="checkbox"]:checked.chk-col-amber + label:before {
  border-right: 2px solid #ffc107;
  border-bottom: 2px solid #ffc107;
}

[type="checkbox"]:checked.chk-col-brown + label:before {
  border-right: 2px solid #795548;
  border-bottom: 2px solid #795548;
}

[type="checkbox"]:checked.chk-col-blush + label:before {
  border-right: 2px solid #f15f79;
  border-bottom: 2px solid #f15f79;
}

[type="checkbox"]:checked.chk-col-black + label:before {
  border-right: 2px solid #000;
  border-bottom: 2px solid #000;
}

[type="checkbox"]:checked.chk-col-white + label:before {
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
}

[type="checkbox"].filled-in:checked + label:after {
  top: 0;
  width: 20px;
  height: 20px;
  border: 2px solid #26a69a;
  background-color: #26a69a;
  z-index: 0;
}

[type="checkbox"].filled-in:checked + label:before {
  border-right: 2px solid #fff !important;
  border-bottom: 2px solid #fff !important;
}

[type="checkbox"].filled-in:checked.chk-col-red + label:after {
  border: 2px solid #ec3b57;
  background-color: #ec3b57;
}

[type="checkbox"].filled-in:checked.chk-col-pink + label:after {
  border: 2px solid #e91e63;
  background-color: #e91e63;
}

[type="checkbox"].filled-in:checked.chk-col-purple + label:after {
  border: 2px solid #ba3bd0;
  background-color: #ba3bd0;
}

[type="checkbox"].filled-in:checked.chk-col-deep-purple + label:after {
  border: 2px solid #673ab7;
  background-color: #673ab7;
}

[type="checkbox"].filled-in:checked.chk-col-blue + label:after {
  border: 2px solid #457fca;
  background-color: #457fca;
}

[type="checkbox"].filled-in:checked.chk-col-cyan + label:after {
  border: 2px solid #379c94;
  background-color: #379c94;
}

[type="checkbox"].filled-in:checked.chk-col-green + label:after {
  border: 2px solid #78b83e;
  background-color: #78b83e;
}

[type="checkbox"].filled-in:checked.chk-col-light-green + label:after {
  border: 2px solid #8bc34a;
  background-color: #8bc34a;
}

[type="checkbox"].filled-in:checked.chk-col-yellow + label:after {
  border: 2px solid #ffe821;
  background-color: #ffe821;
}

[type="checkbox"].filled-in:checked.chk-col-orange + label:after {
  border: 2px solid #ff9800;
  background-color: #ff9800;
}

[type="checkbox"].filled-in:checked.chk-col-deep-orange + label:after {
  border: 2px solid #f83600;
  background-color: #f83600;
}

[type="checkbox"].filled-in:checked.chk-col-grey + label:after {
  border: 2px solid #9e9e9e;
  background-color: #9e9e9e;
}

[type="checkbox"].filled-in:checked.chk-col-blue-grey + label:after {
  border: 2px solid #607d8b;
  background-color: #607d8b;
}

[type="checkbox"].filled-in:checked.chk-col-indigo + label:after {
  border: 2px solid #3f51b5;
  background-color: #3f51b5;
}

[type="checkbox"].filled-in:checked.chk-col-light-blue + label:after {
  border: 2px solid #03a9f4;
  background-color: #03a9f4;
}

[type="checkbox"].filled-in:checked.chk-col-teal + label:after {
  border: 2px solid #009688;
  background-color: #009688;
}

[type="checkbox"].filled-in:checked.chk-col-lime + label:after {
  border: 2px solid #cddc39;
  background-color: #cddc39;
}

[type="checkbox"].filled-in:checked.chk-col-amber + label:after {
  border: 2px solid #ffc107;
  background-color: #ffc107;
}

[type="checkbox"].filled-in:checked.chk-col-brown + label:after {
  border: 2px solid #795548;
  background-color: #795548;
}

[type="checkbox"].filled-in:checked.chk-col-blush + label:after {
  border: 2px solid #f15f79;
  background-color: #f15f79;
}

[type="checkbox"].filled-in:checked.chk-col-black + label:after {
  border: 2px solid #000;
  background-color: #000;
}

[type="checkbox"].filled-in:checked.chk-col-white + label:after {
  border: 2px solid #fff;
  background-color: #fff;
}

[type="radio"]:not(:checked) + label {
  padding-left: 26px;
  height: 25px;
  line-height: 25px;
  font-size: 13px;
  font-weight: normal;
}

[type="radio"]:checked + label {
  padding-left: 26px;
  height: 25px;
  line-height: 25px;
  font-size: 13px;
  font-weight: normal;
}

[type="radio"].radio-col-red:checked + label:after {
  background-color: #ec3b57;
  border-color: #ec3b57;
}

[type="radio"].radio-col-pink:checked + label:after {
  background-color: #e91e63;
  border-color: #e91e63;
}

[type="radio"].radio-col-purple:checked + label:after {
  background-color: #ba3bd0;
  border-color: #ba3bd0;
}

[type="radio"].radio-col-deep-purple:checked + label:after {
  background-color: #673ab7;
  border-color: #673ab7;
}

[type="radio"].radio-col-blue:checked + label:after {
  background-color: #457fca;
  border-color: #457fca;
}

[type="radio"].radio-col-cyan:checked + label:after {
  background-color: #379c94;
  border-color: #379c94;
}

[type="radio"].radio-col-green:checked + label:after {
  background-color: #78b83e;
  border-color: #78b83e;
}

[type="radio"].radio-col-light-green:checked + label:after {
  background-color: #8bc34a;
  border-color: #8bc34a;
}

[type="radio"].radio-col-yellow:checked + label:after {
  background-color: #ffe821;
  border-color: #ffe821;
}

[type="radio"].radio-col-orange:checked + label:after {
  background-color: #ff9800;
  border-color: #ff9800;
}

[type="radio"].radio-col-deep-orange:checked + label:after {
  background-color: #f83600;
  border-color: #f83600;
}

[type="radio"].radio-col-grey:checked + label:after {
  background-color: #9e9e9e;
  border-color: #9e9e9e;
}

[type="radio"].radio-col-blue-grey:checked + label:after {
  background-color: #607d8b;
  border-color: #607d8b;
}

[type="radio"].radio-col-indigo:checked + label:after {
  background-color: #3f51b5;
  border-color: #3f51b5;
}

[type="radio"].radio-col-light-blue:checked + label:after {
  background-color: #03a9f4;
  border-color: #03a9f4;
}

[type="radio"].radio-col-teal:checked + label:after {
  background-color: #009688;
  border-color: #009688;
}

[type="radio"].radio-col-lime:checked + label:after {
  background-color: #cddc39;
  border-color: #cddc39;
}

[type="radio"].radio-col-amber:checked + label:after {
  background-color: #ffc107;
  border-color: #ffc107;
}

[type="radio"].radio-col-brown:checked + label:after {
  background-color: #795548;
  border-color: #795548;
}

[type="radio"].radio-col-blush:checked + label:after {
  background-color: #f15f79;
  border-color: #f15f79;
}

[type="radio"].radio-col-black:checked + label:after {
  background-color: #000;
  border-color: #000;
}

[type="radio"].radio-col-white:checked + label:after {
  background-color: #fff;
  border-color: #fff;
}

[type="radio"].with-gap.radio-col-red:checked + label:before {
  border: 2px solid #ec3b57;
}

[type="radio"].with-gap.radio-col-red:checked + label:after {
  background-color: #ec3b57;
  border: 2px solid #ec3b57;
}

[type="radio"].with-gap.radio-col-pink:checked + label:before {
  border: 2px solid #e91e63;
}

[type="radio"].with-gap.radio-col-pink:checked + label:after {
  background-color: #e91e63;
  border: 2px solid #e91e63;
}

[type="radio"].with-gap.radio-col-purple:checked + label:before {
  border: 2px solid #ba3bd0;
}

[type="radio"].with-gap.radio-col-purple:checked + label:after {
  background-color: #ba3bd0;
  border: 2px solid #ba3bd0;
}

[type="radio"].with-gap.radio-col-deep-purple:checked + label:before {
  border: 2px solid #673ab7;
}

[type="radio"].with-gap.radio-col-deep-purple:checked + label:after {
  background-color: #673ab7;
  border: 2px solid #673ab7;
}

[type="radio"].with-gap.radio-col-blue:checked + label:before {
  border: 2px solid #457fca;
}

[type="radio"].with-gap.radio-col-blue:checked + label:after {
  background-color: #457fca;
  border: 2px solid #457fca;
}

[type="radio"].with-gap.radio-col-cyan:checked + label:before {
  border: 2px solid #379c94;
}

[type="radio"].with-gap.radio-col-cyan:checked + label:after {
  background-color: #379c94;
  border: 2px solid #379c94;
}

[type="radio"].with-gap.radio-col-green:checked + label:before {
  border: 2px solid #78b83e;
}

[type="radio"].with-gap.radio-col-green:checked + label:after {
  background-color: #78b83e;
  border: 2px solid #78b83e;
}

[type="radio"].with-gap.radio-col-light-green:checked + label:before {
  border: 2px solid #8bc34a;
}

[type="radio"].with-gap.radio-col-light-green:checked + label:after {
  background-color: #8bc34a;
  border: 2px solid #8bc34a;
}

[type="radio"].with-gap.radio-col-yellow:checked + label:before {
  border: 2px solid #ffe821;
}

[type="radio"].with-gap.radio-col-yellow:checked + label:after {
  background-color: #ffe821;
  border: 2px solid #ffe821;
}

[type="radio"].with-gap.radio-col-orange:checked + label:before {
  border: 2px solid #ff9800;
}

[type="radio"].with-gap.radio-col-orange:checked + label:after {
  background-color: #ff9800;
  border: 2px solid #ff9800;
}

[type="radio"].with-gap.radio-col-deep-orange:checked + label:before {
  border: 2px solid #f83600;
}

[type="radio"].with-gap.radio-col-deep-orange:checked + label:after {
  background-color: #f83600;
  border: 2px solid #f83600;
}

[type="radio"].with-gap.radio-col-grey:checked + label:before {
  border: 2px solid #9e9e9e;
}

[type="radio"].with-gap.radio-col-grey:checked + label:after {
  background-color: #9e9e9e;
  border: 2px solid #9e9e9e;
}

[type="radio"].with-gap.radio-col-blue-grey:checked + label:before {
  border: 2px solid #607d8b;
}

[type="radio"].with-gap.radio-col-blue-grey:checked + label:after {
  background-color: #607d8b;
  border: 2px solid #607d8b;
}

[type="radio"].with-gap.radio-col-indigo:checked + label:before {
  border: 2px solid #3f51b5;
}

[type="radio"].with-gap.radio-col-indigo:checked + label:after {
  background-color: #3f51b5;
  border: 2px solid #3f51b5;
}

[type="radio"].with-gap.radio-col-light-blue:checked + label:before {
  border: 2px solid #03a9f4;
}

[type="radio"].with-gap.radio-col-light-blue:checked + label:after {
  background-color: #03a9f4;
  border: 2px solid #03a9f4;
}

[type="radio"].with-gap.radio-col-teal:checked + label:before {
  border: 2px solid #009688;
}

[type="radio"].with-gap.radio-col-teal:checked + label:after {
  background-color: #009688;
  border: 2px solid #009688;
}

[type="radio"].with-gap.radio-col-lime:checked + label:before {
  border: 2px solid #cddc39;
}

[type="radio"].with-gap.radio-col-lime:checked + label:after {
  background-color: #cddc39;
  border: 2px solid #cddc39;
}

[type="radio"].with-gap.radio-col-amber:checked + label:before {
  border: 2px solid #ffc107;
}

[type="radio"].with-gap.radio-col-amber:checked + label:after {
  background-color: #ffc107;
  border: 2px solid #ffc107;
}

[type="radio"].with-gap.radio-col-brown:checked + label:before {
  border: 2px solid #795548;
}

[type="radio"].with-gap.radio-col-brown:checked + label:after {
  background-color: #795548;
  border: 2px solid #795548;
}

[type="radio"].with-gap.radio-col-blush:checked + label:before {
  border: 2px solid #f15f79;
}

[type="radio"].with-gap.radio-col-blush:checked + label:after {
  background-color: #f15f79;
  border: 2px solid #f15f79;
}

[type="radio"].with-gap.radio-col-black:checked + label:before {
  border: 2px solid #000;
}

[type="radio"].with-gap.radio-col-black:checked + label:after {
  background-color: #000;
  border: 2px solid #000;
}

[type="radio"].with-gap.radio-col-white:checked + label:before {
  border: 2px solid #fff;
}

[type="radio"].with-gap.radio-col-white:checked + label:after {
  background-color: #fff;
  border: 2px solid #fff;
}

.switch label {
  font-weight: normal;
  font-size: 13px;
}

.switch label .lever {
  margin: 0 14px;
}

.switch
  label
  input[type="checkbox"]:checked:not(:disabled)
  ~ .lever.switch-col-red:active:after {
  box-shadow:
    0 1px 3px 1px rgba(0, 0, 0, 0.4),
    0 0 0 15px rgba(236, 59, 87, 0.1);
}

.switch label input[type="checkbox"]:checked + .lever.switch-col-red {
  background-color: rgba(236, 59, 87, 0.5);
}

.switch label input[type="checkbox"]:checked + .lever.switch-col-red:after {
  background-color: #ec3b57;
}

.switch
  label
  input[type="checkbox"]:checked:not(:disabled)
  ~ .lever.switch-col-pink:active:after {
  box-shadow:
    0 1px 3px 1px rgba(0, 0, 0, 0.4),
    0 0 0 15px rgba(233, 30, 99, 0.1);
}

.switch label input[type="checkbox"]:checked + .lever.switch-col-pink {
  background-color: rgba(233, 30, 99, 0.5);
}

.switch label input[type="checkbox"]:checked + .lever.switch-col-pink:after {
  background-color: #e91e63;
}

.switch
  label
  input[type="checkbox"]:checked:not(:disabled)
  ~ .lever.switch-col-purple:active:after {
  box-shadow:
    0 1px 3px 1px rgba(0, 0, 0, 0.4),
    0 0 0 15px rgba(186, 59, 208, 0.1);
}

.switch label input[type="checkbox"]:checked + .lever.switch-col-purple {
  background-color: rgba(186, 59, 208, 0.5);
}

.switch label input[type="checkbox"]:checked + .lever.switch-col-purple:after {
  background-color: #ba3bd0;
}

.switch
  label
  input[type="checkbox"]:checked:not(:disabled)
  ~ .lever.switch-col-deep-purple:active:after {
  box-shadow:
    0 1px 3px 1px rgba(0, 0, 0, 0.4),
    0 0 0 15px rgba(103, 58, 183, 0.1);
}

.switch label input[type="checkbox"]:checked + .lever.switch-col-deep-purple {
  background-color: rgba(103, 58, 183, 0.5);
}

.switch
  label
  input[type="checkbox"]:checked
  + .lever.switch-col-deep-purple:after {
  background-color: #673ab7;
}

.switch
  label
  input[type="checkbox"]:checked:not(:disabled)
  ~ .lever.switch-col-blue:active:after {
  box-shadow:
    0 1px 3px 1px rgba(0, 0, 0, 0.4),
    0 0 0 15px rgba(69, 127, 202, 0.1);
}

.switch label input[type="checkbox"]:checked + .lever.switch-col-blue {
  background-color: rgba(69, 127, 202, 0.5);
}

.switch label input[type="checkbox"]:checked + .lever.switch-col-blue:after {
  background-color: #457fca;
}

.switch
  label
  input[type="checkbox"]:checked:not(:disabled)
  ~ .lever.switch-col-cyan:active:after {
  box-shadow:
    0 1px 3px 1px rgba(0, 0, 0, 0.4),
    0 0 0 15px rgba(55, 156, 148, 0.1);
}

.switch label input[type="checkbox"]:checked + .lever.switch-col-cyan {
  background-color: rgba(55, 156, 148, 0.5);
}

.switch label input[type="checkbox"]:checked + .lever.switch-col-cyan:after {
  background-color: #379c94;
}

.switch
  label
  input[type="checkbox"]:checked:not(:disabled)
  ~ .lever.switch-col-green:active:after {
  box-shadow:
    0 1px 3px 1px rgba(0, 0, 0, 0.4),
    0 0 0 15px rgba(120, 184, 62, 0.1);
}

.switch label input[type="checkbox"]:checked + .lever.switch-col-green {
  background-color: rgba(120, 184, 62, 0.5);
}

.switch label input[type="checkbox"]:checked + .lever.switch-col-green:after {
  background-color: #78b83e;
}

.switch
  label
  input[type="checkbox"]:checked:not(:disabled)
  ~ .lever.switch-col-light-green:active:after {
  box-shadow:
    0 1px 3px 1px rgba(0, 0, 0, 0.4),
    0 0 0 15px rgba(139, 195, 74, 0.1);
}

.switch label input[type="checkbox"]:checked + .lever.switch-col-light-green {
  background-color: rgba(139, 195, 74, 0.5);
}

.switch
  label
  input[type="checkbox"]:checked
  + .lever.switch-col-light-green:after {
  background-color: #8bc34a;
}

.switch
  label
  input[type="checkbox"]:checked:not(:disabled)
  ~ .lever.switch-col-yellow:active:after {
  box-shadow:
    0 1px 3px 1px rgba(0, 0, 0, 0.4),
    0 0 0 15px rgba(255, 232, 33, 0.1);
}

.switch label input[type="checkbox"]:checked + .lever.switch-col-yellow {
  background-color: rgba(255, 232, 33, 0.5);
}

.switch label input[type="checkbox"]:checked + .lever.switch-col-yellow:after {
  background-color: #ffe821;
}

.switch
  label
  input[type="checkbox"]:checked:not(:disabled)
  ~ .lever.switch-col-orange:active:after {
  box-shadow:
    0 1px 3px 1px rgba(0, 0, 0, 0.4),
    0 0 0 15px rgba(255, 152, 0, 0.1);
}

.switch label input[type="checkbox"]:checked + .lever.switch-col-orange {
  background-color: rgba(255, 152, 0, 0.5);
}

.switch label input[type="checkbox"]:checked + .lever.switch-col-orange:after {
  background-color: #ff9800;
}

.switch
  label
  input[type="checkbox"]:checked:not(:disabled)
  ~ .lever.switch-col-deep-orange:active:after {
  box-shadow:
    0 1px 3px 1px rgba(0, 0, 0, 0.4),
    0 0 0 15px rgba(248, 54, 0, 0.1);
}

.switch label input[type="checkbox"]:checked + .lever.switch-col-deep-orange {
  background-color: rgba(248, 54, 0, 0.5);
}

.switch
  label
  input[type="checkbox"]:checked
  + .lever.switch-col-deep-orange:after {
  background-color: #f83600;
}

.switch
  label
  input[type="checkbox"]:checked:not(:disabled)
  ~ .lever.switch-col-grey:active:after {
  box-shadow:
    0 1px 3px 1px rgba(0, 0, 0, 0.4),
    0 0 0 15px rgba(158, 158, 158, 0.1);
}

.switch label input[type="checkbox"]:checked + .lever.switch-col-grey {
  background-color: rgba(158, 158, 158, 0.5);
}

.switch label input[type="checkbox"]:checked + .lever.switch-col-grey:after {
  background-color: #9e9e9e;
}

.switch
  label
  input[type="checkbox"]:checked:not(:disabled)
  ~ .lever.switch-col-blue-grey:active:after {
  box-shadow:
    0 1px 3px 1px rgba(0, 0, 0, 0.4),
    0 0 0 15px rgba(96, 125, 139, 0.1);
}

.switch label input[type="checkbox"]:checked + .lever.switch-col-blue-grey {
  background-color: rgba(96, 125, 139, 0.5);
}

.switch
  label
  input[type="checkbox"]:checked
  + .lever.switch-col-blue-grey:after {
  background-color: #607d8b;
}

.switch
  label
  input[type="checkbox"]:checked:not(:disabled)
  ~ .lever.switch-col-indigo:active:after {
  box-shadow:
    0 1px 3px 1px rgba(0, 0, 0, 0.4),
    0 0 0 15px rgba(63, 81, 181, 0.1);
}

.switch label input[type="checkbox"]:checked + .lever.switch-col-indigo {
  background-color: rgba(63, 81, 181, 0.5);
}

.switch label input[type="checkbox"]:checked + .lever.switch-col-indigo:after {
  background-color: #3f51b5;
}

.switch
  label
  input[type="checkbox"]:checked:not(:disabled)
  ~ .lever.switch-col-light-blue:active:after {
  box-shadow:
    0 1px 3px 1px rgba(0, 0, 0, 0.4),
    0 0 0 15px rgba(3, 169, 244, 0.1);
}

.switch label input[type="checkbox"]:checked + .lever.switch-col-light-blue {
  background-color: rgba(3, 169, 244, 0.5);
}

.switch
  label
  input[type="checkbox"]:checked
  + .lever.switch-col-light-blue:after {
  background-color: #03a9f4;
}

.switch
  label
  input[type="checkbox"]:checked:not(:disabled)
  ~ .lever.switch-col-teal:active:after {
  box-shadow:
    0 1px 3px 1px rgba(0, 0, 0, 0.4),
    0 0 0 15px rgba(0, 150, 136, 0.1);
}

.switch label input[type="checkbox"]:checked + .lever.switch-col-teal {
  background-color: rgba(0, 150, 136, 0.5);
}

.switch label input[type="checkbox"]:checked + .lever.switch-col-teal:after {
  background-color: #009688;
}

.switch
  label
  input[type="checkbox"]:checked:not(:disabled)
  ~ .lever.switch-col-lime:active:after {
  box-shadow:
    0 1px 3px 1px rgba(0, 0, 0, 0.4),
    0 0 0 15px rgba(205, 220, 57, 0.1);
}

.switch label input[type="checkbox"]:checked + .lever.switch-col-lime {
  background-color: rgba(205, 220, 57, 0.5);
}

.switch label input[type="checkbox"]:checked + .lever.switch-col-lime:after {
  background-color: #cddc39;
}

.switch
  label
  input[type="checkbox"]:checked:not(:disabled)
  ~ .lever.switch-col-amber:active:after {
  box-shadow:
    0 1px 3px 1px rgba(0, 0, 0, 0.4),
    0 0 0 15px rgba(255, 193, 7, 0.1);
}

.switch label input[type="checkbox"]:checked + .lever.switch-col-amber {
  background-color: rgba(255, 193, 7, 0.5);
}

.switch label input[type="checkbox"]:checked + .lever.switch-col-amber:after {
  background-color: #ffc107;
}

.switch
  label
  input[type="checkbox"]:checked:not(:disabled)
  ~ .lever.switch-col-brown:active:after {
  box-shadow:
    0 1px 3px 1px rgba(0, 0, 0, 0.4),
    0 0 0 15px rgba(121, 85, 72, 0.1);
}

.switch label input[type="checkbox"]:checked + .lever.switch-col-brown {
  background-color: rgba(121, 85, 72, 0.5);
}

.switch label input[type="checkbox"]:checked + .lever.switch-col-brown:after {
  background-color: #795548;
}

.switch
  label
  input[type="checkbox"]:checked:not(:disabled)
  ~ .lever.switch-col-blush:active:after {
  box-shadow:
    0 1px 3px 1px rgba(0, 0, 0, 0.4),
    0 0 0 15px rgba(241, 95, 121, 0.1);
}

.switch label input[type="checkbox"]:checked + .lever.switch-col-blush {
  background-color: rgba(241, 95, 121, 0.5);
}

.switch label input[type="checkbox"]:checked + .lever.switch-col-blush:after {
  background-color: #f15f79;
}

.switch
  label
  input[type="checkbox"]:checked:not(:disabled)
  ~ .lever.switch-col-black:active:after {
  box-shadow:
    0 1px 3px 1px rgba(0, 0, 0, 0.4),
    0 0 0 15px rgba(0, 0, 0, 0.1);
}

.switch label input[type="checkbox"]:checked + .lever.switch-col-black {
  background-color: rgba(0, 0, 0, 0.5);
}

.switch label input[type="checkbox"]:checked + .lever.switch-col-black:after {
  background-color: #000;
}

.switch
  label
  input[type="checkbox"]:checked:not(:disabled)
  ~ .lever.switch-col-white:active:after {
  box-shadow:
    0 1px 3px 1px rgba(0, 0, 0, 0.4),
    0 0 0 15px rgba(255, 255, 255, 0.1);
}

.switch label input[type="checkbox"]:checked + .lever.switch-col-white {
  background-color: rgba(255, 255, 255, 0.5);
}

.switch label input[type="checkbox"]:checked + .lever.switch-col-white:after {
  background-color: #fff;
}

.dtp div.dtp-date,
.dtp div.dtp-time {
  background: #007d72;
}

.dtp > .dtp-content > .dtp-date-view > header.dtp-header {
  background: #009688;
}

.dtp .dtp-buttons .dtp-btn-ok {
  margin-left: 10px;
}

.dtp .dtp-buttons .dtp-btn-clear {
  margin-right: 10px !important;
}

.dtp .p10 > a {
  color: #fff;
}

.dtp div.dtp-actual-year {
  font-size: 1.5em;
  color: #ffffff;
}

.dtp table.dtp-picker-days tr td a.selected {
  background: #007d72;
  color: #fff;
}

.bootstrap-select {
  box-shadow: none !important;
  border-bottom: 1px solid #ddd !important;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  border-radius: 0;
}

.bootstrap-select .dropdown-toggle:focus,
.bootstrap-select .dropdown-toggle:active {
  outline: none !important;
}

.bootstrap-select .bs-searchbox,
.bootstrap-select .bs-actionsbox,
.bootstrap-select .bs-donebutton {
  padding: 0 0 5px 0;
  border-bottom: 1px solid #e9e9e9;
}

.bootstrap-select .bs-searchbox .form-control,
.bootstrap-select .bs-actionsbox .form-control,
.bootstrap-select .bs-donebutton .form-control {
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  border-radius: 0;
  -webkit-box-shadow: none !important;
  -moz-box-shadow: none !important;
  -ms-box-shadow: none !important;
  box-shadow: none !important;
  border: none;
  margin-left: 30px;
}

.bootstrap-select .bs-searchbox:after {
  content: "\E8B6";
  font-family: "Material Icons";
  position: absolute;
  top: 0;
  left: 10px;
  font-size: 25px;
}

.bootstrap-select ul.dropdown-menu {
  margin-top: 0 !important;
}

.bootstrap-select .dropdown-menu li.selected a {
  background-color: #eee !important;
  color: #555 !important;
}

.bootstrap-select .dropdown-menu .active a {
  background-color: transparent;
  color: #333 !important;
}

.bootstrap-select .dropdown-menu .notify {
  background-color: #f44336 !important;
  color: #fff !important;
  border: none !important;
}

.bootstrap-select.btn-group.show-tick > .btn {
  border-bottom: 1px solid #ddd !important;
  padding-left: 0;
}

.bootstrap-select.btn-group.show-tick
  .dropdown-menu
  li.selected
  a
  span.check-mark {
  margin-top: 9px;
}

.tooltip {
  font-size: 13px;
}

.tooltip .tooltip-inner {
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  border-radius: 0;
}

.popover {
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  border-radius: 0;
  border: 1px solid rgba(0, 0, 0, 0.08);
}

.popover .popover-title {
  font-weight: bold;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  border-radius: 0;
  background-color: #e9e9e9;
  border-bottom: 1px solid #ddd;
}

.popover .popover-content {
  font-size: 13px;
  color: #777;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  border-radius: 0;
}

.nav-tabs > li {
  position: relative;
  left: 0px;
}

.nav-tabs > li > a {
  border: none !important;
  color: #999 !important;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  border-radius: 0;
}

.nav-tabs > li > a:hover,
.nav-tabs > li > a:active,
.nav-tabs > li > a:focus {
  background-color: transparent !important;
}

.nav-tabs > li > a .material-icons {
  position: relative;
  top: 7px;
  margin-bottom: 8px;
}

.nav-tabs li.active a {
  color: #222 !important;
}

.nav-tabs li.active a:hover,
.nav-tabs li.active a:active,
.nav-tabs li.active a:focus {
  background-color: transparent !important;
}

.nav-tabs li.active a:before {
  -moz-transform: scaleX(1);
  -ms-transform: scaleX(1);
  -o-transform: scaleX(1);
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
}

.nav-tabs + .tab-content {
  padding: 15px 0;
}

.nav-tabs.tab-col-red > li > a:before {
  border-bottom: 2px solid #ec3b57;
}

.nav-tabs.tab-col-pink > li > a:before {
  border-bottom: 2px solid #e91e63;
}

.nav-tabs.tab-col-purple > li > a:before {
  border-bottom: 2px solid #ba3bd0;
}

.nav-tabs.tab-col-deep-purple > li > a:before {
  border-bottom: 2px solid #673ab7;
}

.nav-tabs.tab-col-blue > li > a:before {
  border-bottom: 2px solid #457fca;
}

.nav-tabs.tab-col-cyan > li > a:before {
  border-bottom: 2px solid #379c94;
}

.nav-tabs.tab-col-green > li > a:before {
  border-bottom: 2px solid #78b83e;
}

.nav-tabs.tab-col-light-green > li > a:before {
  border-bottom: 2px solid #8bc34a;
}

.nav-tabs.tab-col-yellow > li > a:before {
  border-bottom: 2px solid #ffe821;
}

.nav-tabs.tab-col-orange > li > a:before {
  border-bottom: 2px solid #ff9800;
}

.nav-tabs.tab-col-deep-orange > li > a:before {
  border-bottom: 2px solid #f83600;
}

.nav-tabs.tab-col-grey > li > a:before {
  border-bottom: 2px solid #9e9e9e;
}

.nav-tabs.tab-col-blue-grey > li > a:before {
  border-bottom: 2px solid #607d8b;
}

.nav-tabs.tab-col-indigo > li > a:before {
  border-bottom: 2px solid #3f51b5;
}

.nav-tabs.tab-col-light-blue > li > a:before {
  border-bottom: 2px solid #03a9f4;
}

.nav-tabs.tab-col-teal > li > a:before {
  border-bottom: 2px solid #009688;
}

.nav-tabs.tab-col-lime > li > a:before {
  border-bottom: 2px solid #cddc39;
}

.nav-tabs.tab-col-amber > li > a:before {
  border-bottom: 2px solid #ffc107;
}

.nav-tabs.tab-col-brown > li > a:before {
  border-bottom: 2px solid #795548;
}

.nav-tabs.tab-col-blush > li > a:before {
  border-bottom: 2px solid #f15f79;
}

.nav-tabs.tab-col-black > li > a:before {
  border-bottom: 2px solid #000;
}

.nav-tabs.tab-col-white > li > a:before {
  border-bottom: 2px solid #fff;
}

.modal-col-red {
  background-color: #ec3b57;
}

.modal-col-red .modal-body,
.modal-col-red .modal-title {
  color: #fff !important;
}

.modal-col-red .modal-footer {
  background-color: rgba(0, 0, 0, 0.12);
}

.modal-col-red .modal-footer .btn-link {
  color: #fff !important;
}

.modal-col-red .modal-footer .btn-link:hover,
.modal-col-red .modal-footer .btn-link:active,
.modal-col-red .modal-footer .btn-link:focus {
  background-color: rgba(0, 0, 0, 0.12);
}

.modal-col-pink {
  background-color: #e91e63;
}

.modal-col-pink .modal-body,
.modal-col-pink .modal-title {
  color: #fff !important;
}

.modal-col-pink .modal-footer {
  background-color: rgba(0, 0, 0, 0.12);
}

.modal-col-pink .modal-footer .btn-link {
  color: #fff !important;
}

.modal-col-pink .modal-footer .btn-link:hover,
.modal-col-pink .modal-footer .btn-link:active,
.modal-col-pink .modal-footer .btn-link:focus {
  background-color: rgba(0, 0, 0, 0.12);
}

.modal-col-purple {
  background-color: #ba3bd0;
}

.modal-col-purple .modal-body,
.modal-col-purple .modal-title {
  color: #fff !important;
}

.modal-col-purple .modal-footer {
  background-color: rgba(0, 0, 0, 0.12);
}

.modal-col-purple .modal-footer .btn-link {
  color: #fff !important;
}

.modal-col-purple .modal-footer .btn-link:hover,
.modal-col-purple .modal-footer .btn-link:active,
.modal-col-purple .modal-footer .btn-link:focus {
  background-color: rgba(0, 0, 0, 0.12);
}

.modal-col-deep-purple {
  background-color: #673ab7;
}

.modal-col-deep-purple .modal-body,
.modal-col-deep-purple .modal-title {
  color: #fff !important;
}

.modal-col-deep-purple .modal-footer {
  background-color: rgba(0, 0, 0, 0.12);
}

.modal-col-deep-purple .modal-footer .btn-link {
  color: #fff !important;
}

.modal-col-deep-purple .modal-footer .btn-link:hover,
.modal-col-deep-purple .modal-footer .btn-link:active,
.modal-col-deep-purple .modal-footer .btn-link:focus {
  background-color: rgba(0, 0, 0, 0.12);
}

.modal-col-blue {
  background-color: #457fca;
}

.modal-col-blue .modal-body,
.modal-col-blue .modal-title {
  color: #fff !important;
}

.modal-col-blue .modal-footer {
  background-color: rgba(0, 0, 0, 0.12);
}

.modal-col-blue .modal-footer .btn-link {
  color: #fff !important;
}

.modal-col-blue .modal-footer .btn-link:hover,
.modal-col-blue .modal-footer .btn-link:active,
.modal-col-blue .modal-footer .btn-link:focus {
  background-color: rgba(0, 0, 0, 0.12);
}

.modal-col-cyan {
  background-color: #379c94;
}

.modal-col-cyan .modal-body,
.modal-col-cyan .modal-title {
  color: #fff !important;
}

.modal-col-cyan .modal-footer {
  background-color: rgba(0, 0, 0, 0.12);
}

.modal-col-cyan .modal-footer .btn-link {
  color: #fff !important;
}

.modal-col-cyan .modal-footer .btn-link:hover,
.modal-col-cyan .modal-footer .btn-link:active,
.modal-col-cyan .modal-footer .btn-link:focus {
  background-color: rgba(0, 0, 0, 0.12);
}

.modal-col-green {
  background-color: #78b83e;
}

.modal-col-green .modal-body,
.modal-col-green .modal-title {
  color: #fff !important;
}

.modal-col-green .modal-footer {
  background-color: rgba(0, 0, 0, 0.12);
}

.modal-col-green .modal-footer .btn-link {
  color: #fff !important;
}

.modal-col-green .modal-footer .btn-link:hover,
.modal-col-green .modal-footer .btn-link:active,
.modal-col-green .modal-footer .btn-link:focus {
  background-color: rgba(0, 0, 0, 0.12);
}

.modal-col-light-green {
  background-color: #8bc34a;
}

.modal-col-light-green .modal-body,
.modal-col-light-green .modal-title {
  color: #fff !important;
}

.modal-col-light-green .modal-footer {
  background-color: rgba(0, 0, 0, 0.12);
}

.modal-col-light-green .modal-footer .btn-link {
  color: #fff !important;
}

.modal-col-light-green .modal-footer .btn-link:hover,
.modal-col-light-green .modal-footer .btn-link:active,
.modal-col-light-green .modal-footer .btn-link:focus {
  background-color: rgba(0, 0, 0, 0.12);
}

.modal-col-yellow {
  background-color: #ffe821;
}

.modal-col-yellow .modal-body,
.modal-col-yellow .modal-title {
  color: #fff !important;
}

.modal-col-yellow .modal-footer {
  background-color: rgba(0, 0, 0, 0.12);
}

.modal-col-yellow .modal-footer .btn-link {
  color: #fff !important;
}

.modal-col-yellow .modal-footer .btn-link:hover,
.modal-col-yellow .modal-footer .btn-link:active,
.modal-col-yellow .modal-footer .btn-link:focus {
  background-color: rgba(0, 0, 0, 0.12);
}

.modal-col-orange {
  background-color: #ff9800;
}

.modal-col-orange .modal-body,
.modal-col-orange .modal-title {
  color: #fff !important;
}

.modal-col-orange .modal-footer {
  background-color: rgba(0, 0, 0, 0.12);
}

.modal-col-orange .modal-footer .btn-link {
  color: #fff !important;
}

.modal-col-orange .modal-footer .btn-link:hover,
.modal-col-orange .modal-footer .btn-link:active,
.modal-col-orange .modal-footer .btn-link:focus {
  background-color: rgba(0, 0, 0, 0.12);
}

.modal-col-deep-orange {
  background-color: #f83600;
}

.modal-col-deep-orange .modal-body,
.modal-col-deep-orange .modal-title {
  color: #fff !important;
}

.modal-col-deep-orange .modal-footer {
  background-color: rgba(0, 0, 0, 0.12);
}

.modal-col-deep-orange .modal-footer .btn-link {
  color: #fff !important;
}

.modal-col-deep-orange .modal-footer .btn-link:hover,
.modal-col-deep-orange .modal-footer .btn-link:active,
.modal-col-deep-orange .modal-footer .btn-link:focus {
  background-color: rgba(0, 0, 0, 0.12);
}

.modal-col-grey {
  background-color: #9e9e9e;
}

.modal-col-grey .modal-body,
.modal-col-grey .modal-title {
  color: #fff !important;
}

.modal-col-grey .modal-footer {
  background-color: rgba(0, 0, 0, 0.12);
}

.modal-col-grey .modal-footer .btn-link {
  color: #fff !important;
}

.modal-col-grey .modal-footer .btn-link:hover,
.modal-col-grey .modal-footer .btn-link:active,
.modal-col-grey .modal-footer .btn-link:focus {
  background-color: rgba(0, 0, 0, 0.12);
}

.modal-col-blue-grey {
  background-color: #607d8b;
}

.modal-col-blue-grey .modal-body,
.modal-col-blue-grey .modal-title {
  color: #fff !important;
}

.modal-col-blue-grey .modal-footer {
  background-color: rgba(0, 0, 0, 0.12);
}

.modal-col-blue-grey .modal-footer .btn-link {
  color: #fff !important;
}

.modal-col-blue-grey .modal-footer .btn-link:hover,
.modal-col-blue-grey .modal-footer .btn-link:active,
.modal-col-blue-grey .modal-footer .btn-link:focus {
  background-color: rgba(0, 0, 0, 0.12);
}

.modal-col-indigo {
  background-color: #3f51b5;
}

.modal-col-indigo .modal-body,
.modal-col-indigo .modal-title {
  color: #fff !important;
}

.modal-col-indigo .modal-footer {
  background-color: rgba(0, 0, 0, 0.12);
}

.modal-col-indigo .modal-footer .btn-link {
  color: #fff !important;
}

.modal-col-indigo .modal-footer .btn-link:hover,
.modal-col-indigo .modal-footer .btn-link:active,
.modal-col-indigo .modal-footer .btn-link:focus {
  background-color: rgba(0, 0, 0, 0.12);
}

.modal-col-light-blue {
  background-color: #03a9f4;
}

.modal-col-light-blue .modal-body,
.modal-col-light-blue .modal-title {
  color: #fff !important;
}

.modal-col-light-blue .modal-footer {
  background-color: rgba(0, 0, 0, 0.12);
}

.modal-col-light-blue .modal-footer .btn-link {
  color: #fff !important;
}

.modal-col-light-blue .modal-footer .btn-link:hover,
.modal-col-light-blue .modal-footer .btn-link:active,
.modal-col-light-blue .modal-footer .btn-link:focus {
  background-color: rgba(0, 0, 0, 0.12);
}

.modal-col-teal {
  background-color: #009688;
}

.modal-col-teal .modal-body,
.modal-col-teal .modal-title {
  color: #fff !important;
}

.modal-col-teal .modal-footer {
  background-color: rgba(0, 0, 0, 0.12);
}

.modal-col-teal .modal-footer .btn-link {
  color: #fff !important;
}

.modal-col-teal .modal-footer .btn-link:hover,
.modal-col-teal .modal-footer .btn-link:active,
.modal-col-teal .modal-footer .btn-link:focus {
  background-color: rgba(0, 0, 0, 0.12);
}

.modal-col-lime {
  background-color: #cddc39;
}

.modal-col-lime .modal-body,
.modal-col-lime .modal-title {
  color: #fff !important;
}

.modal-col-lime .modal-footer {
  background-color: rgba(0, 0, 0, 0.12);
}

.modal-col-lime .modal-footer .btn-link {
  color: #fff !important;
}

.modal-col-lime .modal-footer .btn-link:hover,
.modal-col-lime .modal-footer .btn-link:active,
.modal-col-lime .modal-footer .btn-link:focus {
  background-color: rgba(0, 0, 0, 0.12);
}

.modal-col-amber {
  background-color: #ffc107;
}

.modal-col-amber .modal-body,
.modal-col-amber .modal-title {
  color: #fff !important;
}

.modal-col-amber .modal-footer {
  background-color: rgba(0, 0, 0, 0.12);
}

.modal-col-amber .modal-footer .btn-link {
  color: #fff !important;
}

.modal-col-amber .modal-footer .btn-link:hover,
.modal-col-amber .modal-footer .btn-link:active,
.modal-col-amber .modal-footer .btn-link:focus {
  background-color: rgba(0, 0, 0, 0.12);
}

.modal-col-brown {
  background-color: #795548;
}

.modal-col-brown .modal-body,
.modal-col-brown .modal-title {
  color: #fff !important;
}

.modal-col-brown .modal-footer {
  background-color: rgba(0, 0, 0, 0.12);
}

.modal-col-brown .modal-footer .btn-link {
  color: #fff !important;
}

.modal-col-brown .modal-footer .btn-link:hover,
.modal-col-brown .modal-footer .btn-link:active,
.modal-col-brown .modal-footer .btn-link:focus {
  background-color: rgba(0, 0, 0, 0.12);
}

.modal-col-blush {
  background-color: #f15f79;
}

.modal-col-blush .modal-body,
.modal-col-blush .modal-title {
  color: #fff !important;
}

.modal-col-blush .modal-footer {
  background-color: rgba(0, 0, 0, 0.12);
}

.modal-col-blush .modal-footer .btn-link {
  color: #fff !important;
}

.modal-col-blush .modal-footer .btn-link:hover,
.modal-col-blush .modal-footer .btn-link:active,
.modal-col-blush .modal-footer .btn-link:focus {
  background-color: rgba(0, 0, 0, 0.12);
}

.modal-col-black {
  background-color: #000;
}

.modal-col-black .modal-body,
.modal-col-black .modal-title {
  color: #fff !important;
}

.modal-col-black .modal-footer {
  background-color: rgba(0, 0, 0, 0.12);
}

.modal-col-black .modal-footer .btn-link {
  color: #fff !important;
}

.modal-col-black .modal-footer .btn-link:hover,
.modal-col-black .modal-footer .btn-link:active,
.modal-col-black .modal-footer .btn-link:focus {
  background-color: rgba(0, 0, 0, 0.12);
}

.modal-col-white {
  background-color: #fff;
}

.modal-col-white .modal-body,
.modal-col-white .modal-title {
  color: #fff !important;
}

.modal-col-white .modal-footer {
  background-color: rgba(0, 0, 0, 0.12);
}

.modal-col-white .modal-footer .btn-link {
  color: #fff !important;
}

.modal-col-white .modal-footer .btn-link:hover,
.modal-col-white .modal-footer .btn-link:active,
.modal-col-white .modal-footer .btn-link:focus {
  background-color: rgba(0, 0, 0, 0.12);
}

.label {
  -webkit-border-radius: 50px;
  -moz-border-radius: 50px;
  -ms-border-radius: 50px;
  border-radius: 50px;
  padding: 3px 12px;
  text-transform: lowercase;
  color: #fff;
  font-size: 12px;
}

.label-primary {
  background-color: #1f91f3;
}

.label-success {
  background-color: #2b982b;
}

.label-info {
  background-color: #00b0e4;
}

.label-warning {
  background-color: #ff9600;
}

.label-danger {
  background-color: #fb483a;
}

.collapse .well,
.collapse.in .well,
.collapsing .well {
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  border-radius: 0;
  margin-bottom: 0;
}

@media only screen and (min-width: 993px) {
  .collapse.collapse-sm,
  .collapse.collapse-xs {
    display: block;
  }
}

.panel-group .panel-col-red .panel-title {
  background-color: #ec3b57 !important;
  color: #fff;
}

.panel-group .panel-col-red .panel-body {
  border-top-color: transparent !important;
}

.panel-group .panel-col-pink .panel-title {
  background-color: #e91e63 !important;
  color: #fff;
}

.panel-group .panel-col-pink .panel-body {
  border-top-color: transparent !important;
}

.panel-group .panel-col-purple .panel-title {
  background-color: #ba3bd0 !important;
  color: #fff;
}

.panel-group .panel-col-purple .panel-body {
  border-top-color: transparent !important;
}

.panel-group .panel-col-deep-purple .panel-title {
  background-color: #673ab7 !important;
  color: #fff;
}

.panel-group .panel-col-deep-purple .panel-body {
  border-top-color: transparent !important;
}

.panel-group .panel-col-blue .panel-title {
  background-color: #457fca !important;
  color: #fff;
}

.panel-group .panel-col-blue .panel-body {
  border-top-color: transparent !important;
}

.panel-group .panel-col-cyan .panel-title {
  background-color: #379c94 !important;
  color: #fff;
}

.panel-group .panel-col-cyan .panel-body {
  border-top-color: transparent !important;
}

.panel-group .panel-col-green .panel-title {
  background-color: #78b83e !important;
  color: #fff;
}

.panel-group .panel-col-green .panel-body {
  border-top-color: transparent !important;
}

.panel-group .panel-col-light-green .panel-title {
  background-color: #8bc34a !important;
  color: #fff;
}

.panel-group .panel-col-light-green .panel-body {
  border-top-color: transparent !important;
}

.panel-group .panel-col-yellow .panel-title {
  background-color: #ffe821 !important;
  color: #fff;
}

.panel-group .panel-col-yellow .panel-body {
  border-top-color: transparent !important;
}

.panel-group .panel-col-orange .panel-title {
  background-color: #ff9800 !important;
  color: #fff;
}

.panel-group .panel-col-orange .panel-body {
  border-top-color: transparent !important;
}

.panel-group .panel-col-deep-orange .panel-title {
  background-color: #f83600 !important;
  color: #fff;
}

.panel-group .panel-col-deep-orange .panel-body {
  border-top-color: transparent !important;
}

.panel-group .panel-col-grey .panel-title {
  background-color: #9e9e9e !important;
  color: #fff;
}

.panel-group .panel-col-grey .panel-body {
  border-top-color: transparent !important;
}

.panel-group .panel-col-blue-grey .panel-title {
  background-color: #607d8b !important;
  color: #fff;
}

.panel-group .panel-col-blue-grey .panel-body {
  border-top-color: transparent !important;
}

.panel-group .panel-col-indigo .panel-title {
  background-color: #3f51b5 !important;
  color: #fff;
}

.panel-group .panel-col-indigo .panel-body {
  border-top-color: transparent !important;
}

.panel-group .panel-col-light-blue .panel-title {
  background-color: #03a9f4 !important;
  color: #fff;
}

.panel-group .panel-col-light-blue .panel-body {
  border-top-color: transparent !important;
}

.panel-group .panel-col-teal .panel-title {
  background-color: #009688 !important;
  color: #fff;
}

.panel-group .panel-col-teal .panel-body {
  border-top-color: transparent !important;
}

.panel-group .panel-col-lime .panel-title {
  background-color: #cddc39 !important;
  color: #fff;
}

.panel-group .panel-col-lime .panel-body {
  border-top-color: transparent !important;
}

.panel-group .panel-col-amber .panel-title {
  background-color: #ffc107 !important;
  color: #fff;
}

.panel-group .panel-col-amber .panel-body {
  border-top-color: transparent !important;
}

.panel-group .panel-col-brown .panel-title {
  background-color: #795548 !important;
  color: #fff;
}

.panel-group .panel-col-brown .panel-body {
  border-top-color: transparent !important;
}

.panel-group .panel-col-blush .panel-title {
  background-color: #f15f79 !important;
  color: #fff;
}

.panel-group .panel-col-blush .panel-body {
  border-top-color: transparent !important;
}

.panel-group .panel-col-black .panel-title {
  background-color: #000 !important;
  color: #fff;
}

.panel-group .panel-col-black .panel-body {
  border-top-color: transparent !important;
}

.panel-group .panel-col-white .panel-title {
  background-color: #fff !important;
  color: #fff;
}

.panel-group .panel-col-white .panel-body {
  border-top-color: transparent !important;
}

.panel-group .panel {
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  border-radius: 0;
  margin-bottom: 5px;
}

.panel-group .panel .panel-title {
  font-weight: normal;
  font-size: 16px;
}

.panel-group .panel .panel-title a {
  color: inherit;
}

.panel-group .panel .panel-title .material-icons {
  float: left;
  line-height: 16px;
  margin-right: 8px;
}

.panel-group .panel .panel-heading {
  padding: 0;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  border-radius: 0;
}

.panel-group .panel .panel-heading a {
  display: block;
  padding: 10px 15px;
}

.panel-group .panel .panel-heading a:hover,
.panel-group .panel .panel-heading a:focus,
.panel-group .panel .panel-heading a:active {
  text-decoration: none;
}

.panel-group .panel .panel-body {
  color: #555;
  padding: 20px;
  background: #fff;
}

.panel-group .panel-primary .panel-title {
  background-color: #fff;
  color: #555;
  font-weight: 400;
  font-size: 16px;
  margin: 0;
}

.panel-group .panel-success .panel-title {
  background-color: #2b982b;
  color: #fff;
}

.panel-group .panel-warning .panel-title {
  background-color: #ff9600;
  color: #fff;
}

.panel-group .panel-danger .panel-title {
  background-color: #fb483a;
  color: #fff;
}

.full-body .panel-col-red .panel-body {
  border-top-color: #fff !important;
  background-color: #ec3b57;
  color: #fff;
}

.full-body .panel-col-pink .panel-body {
  border-top-color: #fff !important;
  background-color: #e91e63;
  color: #fff;
}

.full-body .panel-col-purple .panel-body {
  border-top-color: #fff !important;
  background-color: #ba3bd0;
  color: #fff;
}

.full-body .panel-col-deep-purple .panel-body {
  border-top-color: #fff !important;
  background-color: #673ab7;
  color: #fff;
}

.full-body .panel-col-blue .panel-body {
  border-top-color: #fff !important;
  background-color: #457fca;
  color: #fff;
}

.full-body .panel-col-cyan .panel-body {
  border-top-color: #fff !important;
  background-color: #379c94;
  color: #fff;
}

.full-body .panel-col-green .panel-body {
  border-top-color: #fff !important;
  background-color: #78b83e;
  color: #fff;
}

.full-body .panel-col-light-green .panel-body {
  border-top-color: #fff !important;
  background-color: #8bc34a;
  color: #fff;
}

.full-body .panel-col-yellow .panel-body {
  border-top-color: #fff !important;
  background-color: #ffe821;
  color: #fff;
}

.full-body .panel-col-orange .panel-body {
  border-top-color: #fff !important;
  background-color: #ff9800;
  color: #fff;
}

.full-body .panel-col-deep-orange .panel-body {
  border-top-color: #fff !important;
  background-color: #f83600;
  color: #fff;
}

.full-body .panel-col-grey .panel-body {
  border-top-color: #fff !important;
  background-color: #9e9e9e;
  color: #fff;
}

.full-body .panel-col-blue-grey .panel-body {
  border-top-color: #fff !important;
  background-color: #607d8b;
  color: #fff;
}

.full-body .panel-col-indigo .panel-body {
  border-top-color: #fff !important;
  background-color: #3f51b5;
  color: #fff;
}

.full-body .panel-col-light-blue .panel-body {
  border-top-color: #fff !important;
  background-color: #03a9f4;
  color: #fff;
}

.full-body .panel-col-teal .panel-body {
  border-top-color: #fff !important;
  background-color: #009688;
  color: #fff;
}

.full-body .panel-col-lime .panel-body {
  border-top-color: #fff !important;
  background-color: #cddc39;
  color: #fff;
}

.full-body .panel-col-amber .panel-body {
  border-top-color: #fff !important;
  background-color: #ffc107;
  color: #fff;
}

.full-body .panel-col-brown .panel-body {
  border-top-color: #fff !important;
  background-color: #795548;
  color: #fff;
}

.full-body .panel-col-blush .panel-body {
  border-top-color: #fff !important;
  background-color: #f15f79;
  color: #fff;
}

.full-body .panel-col-black .panel-body {
  border-top-color: #fff !important;
  background-color: #000;
  color: #fff;
}

.full-body .panel-col-white .panel-body {
  border-top-color: #fff !important;
  background-color: #fff;
  color: #fff;
}

.full-body .panel-primary .panel-body {
  border-top-color: #fff !important;
  background-color: #1f91f3;
  color: #fff;
}

.full-body .panel-success .panel-body {
  border-top-color: #fff !important;
  background-color: #2b982b;
  color: #fff;
}

.full-body .panel-warning .panel-body {
  border-top-color: #fff !important;
  background-color: #ff9600;
  color: #fff;
}

.full-body .panel-danger .panel-body {
  border-top-color: #fff !important;
  background-color: #fb483a;
  color: #fff;
}

.progress {
  -webkit-border-radius: 8px;
  -moz-border-radius: 8px;
  -ms-border-radius: 8px;
  border-radius: 8px;
  height: 8px;
}

.progress .progress-bar {
  line-height: 8px;
  background-color: #1f91f3;
}

.progress .progress-bar-success {
  background-color: #2b982b;
}

.progress .progress-bar-info {
  background-color: #00b0e4;
}

.progress .progress-bar-warning {
  background-color: #ff9600;
}

.progress .progress-bar-danger {
  background-color: #fb483a;
}

.irs .irs-min,
.irs .irs-max,
.irs .irs-from,
.irs .irs-to,
.irs .irs-single {
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  border-radius: 0;
}

.input-group .form-line {
  display: inline-block;
  width: 100%;
  border-bottom: 1px solid #ddd;
  position: relative;
}

.input-group .form-line:after {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  bottom: -2px;
  -moz-transform: scaleX(0);
  -ms-transform: scaleX(0);
  -o-transform: scaleX(0);
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -moz-transition: 0.25s ease-in;
  -o-transition: 0.25s ease-in;
  -webkit-transition: 0.25s ease-in;
  transition: 0.25s ease-in;
  border-bottom: 2px solid #1f91f3;
}

.input-group .form-line + .input-group-addon {
  padding-right: 0;
  padding-left: 10px;
}

.input-group .help-info {
  float: right;
  font-size: 12px;
  margin-top: 5px;
  color: #999;
}

.input-group label.error {
  font-size: 12px;
  display: block;
  margin-top: 5px;
  font-weight: normal;
  color: #f44336;
}

.input-group .form-line.error:after {
  border-bottom: 2px solid #f44336;
}

.input-group .form-line.success:after {
  border-bottom: 2px solid #4caf50;
}

.input-group .form-line.warning:after {
  border-bottom: 2px solid #ffc107;
}

.input-group .form-line.focused:after {
  -moz-transform: scaleX(1);
  -ms-transform: scaleX(1);
  -o-transform: scaleX(1);
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
}

.input-group .form-line.focused .form-label {
  bottom: 25px;
  left: 0;
  font-size: 12px;
}

.input-group .input-group-addon {
  border: none;
  background-color: transparent;
  padding-left: 0;
  font-weight: bold;
}

.input-group .input-group-addon .material-icons {
  font-size: 18px;
  color: #555;
}

.input-group input[type="text"],
.input-group .form-control {
  border: none;
  box-shadow: none;
  padding-left: 0;
  width: 100%;
}

.input-group .form-control:focus {
  -webkit-box-shadow: none !important;
  -moz-box-shadow: none !important;
  -ms-box-shadow: none !important;
  box-shadow: none !important;
}

.input-group.input-group-sm .input-group-addon i {
  font-size: 14px;
}

.input-group.input-group-sm .form-control {
  font-size: 12px;
}

.input-group.input-group-lg .input-group-addon i {
  font-size: 26px;
}

.input-group.input-group-lg .form-control {
  font-size: 18px;
}

.form-control-label {
  text-align: right;
}

.form-control-label label {
  margin-top: 8px;
}

.form-horizontal .form-group {
  margin-bottom: 0;
}

.form-group .form-control {
  width: 100%;
  border: none;
  box-shadow: none;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  border-radius: 0;
  padding-left: 0;
}

.form-group .help-info {
  float: right;
  font-size: 12px;
  margin-top: 5px;
  color: #999;
}

.form-group label.error {
  font-size: 12px;
  display: block;
  margin-top: 5px;
  font-weight: normal;
  color: #f44336;
}

.form-group .form-line:after {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  height: 0;
  bottom: -1px;
  -moz-transform: scaleX(0);
  -ms-transform: scaleX(0);
  -o-transform: scaleX(0);
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -moz-transition: 0.25s ease-in;
  -o-transition: 0.25s ease-in;
  -webkit-transition: 0.25s ease-in;
  transition: 0.25s ease-in;
  border-bottom: 2px solid #1f91f3;
}

.form-group .form-line .form-label {
  font-weight: normal;
  color: #aaa;
  position: absolute;
  top: 10px;
  left: 0;
  cursor: text;
  -moz-transition: 0.2s;
  -o-transition: 0.2s;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}

.form-group .form-line.error:after {
  border-bottom: 2px solid #f44336;
}

.form-group .form-line.success:after {
  border-bottom: 2px solid #4caf50;
}

.form-group .form-line.warning:after {
  border-bottom: 2px solid #ffc107;
}

.form-group .form-line.focused:after {
  -moz-transform: scaleX(1);
  -ms-transform: scaleX(1);
  -o-transform: scaleX(1);
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
}

.form-group .form-line.focused .form-label {
  top: -10px;
  left: 0;
  font-size: 12px;
}

.form-group-sm .form-label {
  font-size: 12px;
}

.form-group-sm .form-line.focused .form-label {
  bottom: 20px;
  font-size: 10px;
}

.form-group-lg .form-label {
  font-size: 18px;
}

.form-group-lg .form-line.focused .form-label {
  bottom: 35px;
  font-size: 12px;
}

.form-control[disabled],
.form-control[readonly],
fieldset[disabled] .form-control {
  background-color: transparent;
}

.colorpicker {
  z-index: 99;
}

.colorpicker:before,
.colorpicker:after {
  display: none !important;
}

.colorpicker.colorpicker-with-alpha {
  max-width: max-content;
}

.dropzone {
  border: 2px solid transparent !important;
  background-color: #eee !important;
}

.dropzone .dz-message .drag-icon-cph .material-icons {
  font-size: 80px;
  color: #777;
}

.dz-drag-hover {
  border: 2px dashed #888 !important;
}

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

.breadcrumb a:hover,
.breadcrumb a:focus {
  text-decoration: none;
}

.breadcrumb a .material-icons {
  font-size: 20px;
  vertical-align: middle;
  margin-right: 5px;
}

.breadcrumb-col-red li a {
  color: #ec3b57 !important;
  font-weight: bold;
}

.breadcrumb-bg-red {
  background-color: #ec3b57 !important;
}

.breadcrumb-bg-red li {
  color: #fff !important;
}

.breadcrumb-bg-red li a {
  color: #fff;
  font-weight: bold;
}

.breadcrumb-bg-red li a .material-icons {
  padding-bottom: 8px;
}

.breadcrumb-bg-red li + li:before {
  color: #fff;
}

.breadcrumb-col-pink li a {
  color: #e91e63 !important;
  font-weight: bold;
}

.breadcrumb-bg-pink {
  background-color: #e91e63 !important;
}

.breadcrumb-bg-pink li {
  color: #fff !important;
}

.breadcrumb-bg-pink li a {
  color: #fff;
  font-weight: bold;
}

.breadcrumb-bg-pink li a .material-icons {
  padding-bottom: 8px;
}

.breadcrumb-bg-pink li + li:before {
  color: #fff;
}

.breadcrumb-col-purple li a {
  color: #ba3bd0 !important;
  font-weight: bold;
}

.breadcrumb-bg-purple {
  background-color: #ba3bd0 !important;
}

.breadcrumb-bg-purple li {
  color: #fff !important;
}

.breadcrumb-bg-purple li a {
  color: #fff;
  font-weight: bold;
}

.breadcrumb-bg-purple li a .material-icons {
  padding-bottom: 8px;
}

.breadcrumb-bg-purple li + li:before {
  color: #fff;
}

.breadcrumb-col-deep-purple li a {
  color: #673ab7 !important;
  font-weight: bold;
}

.breadcrumb-bg-deep-purple {
  background-color: #673ab7 !important;
}

.breadcrumb-bg-deep-purple li {
  color: #fff !important;
}

.breadcrumb-bg-deep-purple li a {
  color: #fff;
  font-weight: bold;
}

.breadcrumb-bg-deep-purple li a .material-icons {
  padding-bottom: 8px;
}

.breadcrumb-bg-deep-purple li + li:before {
  color: #fff;
}

.breadcrumb-col-blue li a {
  color: #457fca !important;
  font-weight: bold;
}

.breadcrumb-bg-blue {
  background-color: #457fca !important;
}

.breadcrumb-bg-blue li {
  color: #fff !important;
}

.breadcrumb-bg-blue li a {
  color: #fff;
  font-weight: bold;
}

.breadcrumb-bg-blue li a .material-icons {
  padding-bottom: 8px;
}

.breadcrumb-bg-blue li + li:before {
  color: #fff;
}

.breadcrumb-col-cyan li a {
  color: #379c94 !important;
  font-weight: bold;
}

.breadcrumb-bg-cyan {
  background-color: #379c94 !important;
}

.breadcrumb-bg-cyan li {
  color: #fff !important;
}

.breadcrumb-bg-cyan li a {
  color: #fff;
  font-weight: bold;
}

.breadcrumb-bg-cyan li a .material-icons {
  padding-bottom: 8px;
}

.breadcrumb-bg-cyan li + li:before {
  color: #fff;
}

.breadcrumb-col-green li a {
  color: #78b83e !important;
  font-weight: bold;
}

.breadcrumb-bg-green {
  background-color: #78b83e !important;
}

.breadcrumb-bg-green li {
  color: #fff !important;
}

.breadcrumb-bg-green li a {
  color: #fff;
  font-weight: bold;
}

.breadcrumb-bg-green li a .material-icons {
  padding-bottom: 8px;
}

.breadcrumb-bg-green li + li:before {
  color: #fff;
}

.breadcrumb-col-light-green li a {
  color: #8bc34a !important;
  font-weight: bold;
}

.breadcrumb-bg-light-green {
  background-color: #8bc34a !important;
}

.breadcrumb-bg-light-green li {
  color: #fff !important;
}

.breadcrumb-bg-light-green li a {
  color: #fff;
  font-weight: bold;
}

.breadcrumb-bg-light-green li a .material-icons {
  padding-bottom: 8px;
}

.breadcrumb-bg-light-green li + li:before {
  color: #fff;
}

.breadcrumb-col-yellow li a {
  color: #ffe821 !important;
  font-weight: bold;
}

.breadcrumb-bg-yellow {
  background-color: #ffe821 !important;
}

.breadcrumb-bg-yellow li {
  color: #fff !important;
}

.breadcrumb-bg-yellow li a {
  color: #fff;
  font-weight: bold;
}

.breadcrumb-bg-yellow li a .material-icons {
  padding-bottom: 8px;
}

.breadcrumb-bg-yellow li + li:before {
  color: #fff;
}

.breadcrumb-col-orange li a {
  color: #ff9800 !important;
  font-weight: bold;
}

.breadcrumb-bg-orange {
  background-color: #ff9800 !important;
}

.breadcrumb-bg-orange li {
  color: #fff !important;
}

.breadcrumb-bg-orange li a {
  color: #fff;
  font-weight: bold;
}

.breadcrumb-bg-orange li a .material-icons {
  padding-bottom: 8px;
}

.breadcrumb-bg-orange li + li:before {
  color: #fff;
}

.breadcrumb-col-deep-orange li a {
  color: #f83600 !important;
  font-weight: bold;
}

.breadcrumb-bg-deep-orange {
  background-color: #f83600 !important;
}

.breadcrumb-bg-deep-orange li {
  color: #fff !important;
}

.breadcrumb-bg-deep-orange li a {
  color: #fff;
  font-weight: bold;
}

.breadcrumb-bg-deep-orange li a .material-icons {
  padding-bottom: 8px;
}

.breadcrumb-bg-deep-orange li + li:before {
  color: #fff;
}

.breadcrumb-col-grey li a {
  color: #9e9e9e !important;
  font-weight: bold;
}

.breadcrumb-bg-grey {
  background-color: #9e9e9e !important;
}

.breadcrumb-bg-grey li {
  color: #fff !important;
}

.breadcrumb-bg-grey li a {
  color: #fff;
  font-weight: bold;
}

.breadcrumb-bg-grey li a .material-icons {
  padding-bottom: 8px;
}

.breadcrumb-bg-grey li + li:before {
  color: #fff;
}

.breadcrumb-col-blue-grey li a {
  color: #607d8b !important;
  font-weight: bold;
}

.breadcrumb-bg-blue-grey {
  background-color: #607d8b !important;
}

.breadcrumb-bg-blue-grey li {
  color: #fff !important;
}

.breadcrumb-bg-blue-grey li a {
  color: #fff;
  font-weight: bold;
}

.breadcrumb-bg-blue-grey li a .material-icons {
  padding-bottom: 8px;
}

.breadcrumb-bg-blue-grey li + li:before {
  color: #fff;
}

.breadcrumb-col-indigo li a {
  color: #3f51b5 !important;
  font-weight: bold;
}

.breadcrumb-bg-indigo {
  background-color: #3f51b5 !important;
}

.breadcrumb-bg-indigo li {
  color: #fff !important;
}

.breadcrumb-bg-indigo li a {
  color: #fff;
  font-weight: bold;
}

.breadcrumb-bg-indigo li a .material-icons {
  padding-bottom: 8px;
}

.breadcrumb-bg-indigo li + li:before {
  color: #fff;
}

.breadcrumb-col-light-blue li a {
  color: #03a9f4 !important;
  font-weight: bold;
}

.breadcrumb-bg-light-blue {
  background-color: #03a9f4 !important;
}

.breadcrumb-bg-light-blue li {
  color: #fff !important;
}

.breadcrumb-bg-light-blue li a {
  color: #fff;
  font-weight: bold;
}

.breadcrumb-bg-light-blue li a .material-icons {
  padding-bottom: 8px;
}

.breadcrumb-bg-light-blue li + li:before {
  color: #fff;
}

.breadcrumb-col-teal li a {
  color: #009688 !important;
  font-weight: bold;
}

.breadcrumb-bg-teal {
  background-color: #009688 !important;
}

.breadcrumb-bg-teal li {
  color: #fff !important;
}

.breadcrumb-bg-teal li a {
  color: #fff;
  font-weight: bold;
}

.breadcrumb-bg-teal li a .material-icons {
  padding-bottom: 8px;
}

.breadcrumb-bg-teal li + li:before {
  color: #fff;
}

.breadcrumb-col-lime li a {
  color: #cddc39 !important;
  font-weight: bold;
}

.breadcrumb-bg-lime {
  background-color: #cddc39 !important;
}

.breadcrumb-bg-lime li {
  color: #fff !important;
}

.breadcrumb-bg-lime li a {
  color: #fff;
  font-weight: bold;
}

.breadcrumb-bg-lime li a .material-icons {
  padding-bottom: 8px;
}

.breadcrumb-bg-lime li + li:before {
  color: #fff;
}

.breadcrumb-col-amber li a {
  color: #ffc107 !important;
  font-weight: bold;
}

.breadcrumb-bg-amber {
  background-color: #ffc107 !important;
}

.breadcrumb-bg-amber li {
  color: #fff !important;
}

.breadcrumb-bg-amber li a {
  color: #fff;
  font-weight: bold;
}

.breadcrumb-bg-amber li a .material-icons {
  padding-bottom: 8px;
}

.breadcrumb-bg-amber li + li:before {
  color: #fff;
}

.breadcrumb-col-brown li a {
  color: #795548 !important;
  font-weight: bold;
}

.breadcrumb-bg-brown {
  background-color: #795548 !important;
}

.breadcrumb-bg-brown li {
  color: #fff !important;
}

.breadcrumb-bg-brown li a {
  color: #fff;
  font-weight: bold;
}

.breadcrumb-bg-brown li a .material-icons {
  padding-bottom: 8px;
}

.breadcrumb-bg-brown li + li:before {
  color: #fff;
}

.breadcrumb-col-blush li a {
  color: #f15f79 !important;
  font-weight: bold;
}

.breadcrumb-bg-blush {
  background-color: #f15f79 !important;
}

.breadcrumb-bg-blush li {
  color: #fff !important;
}

.breadcrumb-bg-blush li a {
  color: #fff;
  font-weight: bold;
}

.breadcrumb-bg-blush li a .material-icons {
  padding-bottom: 8px;
}

.breadcrumb-bg-blush li + li:before {
  color: #fff;
}

.breadcrumb-col-black li a {
  color: #000 !important;
  font-weight: bold;
}

.breadcrumb-bg-black {
  background-color: #000 !important;
}

.breadcrumb-bg-black li {
  color: #fff !important;
}

.breadcrumb-bg-black li a {
  color: #fff;
  font-weight: bold;
}

.breadcrumb-bg-black li a .material-icons {
  padding-bottom: 8px;
}

.breadcrumb-bg-black li + li:before {
  color: #fff;
}

.breadcrumb-col-white li a {
  color: #fff !important;
  font-weight: bold;
}

.breadcrumb-bg-white {
  background-color: #fff !important;
}

.breadcrumb-bg-white li {
  color: #fff !important;
}

.breadcrumb-bg-white li a {
  color: #fff;
  font-weight: bold;
}

.breadcrumb-bg-white li a .material-icons {
  padding-bottom: 8px;
}

.breadcrumb-bg-white li + li:before {
  color: #fff;
}

.breadcrumb.g-bg-cgreen li,
.breadcrumb.g-bg-blush2 li,
.breadcrumb.g-bg-gy li,
.breadcrumb.g-bg-soundcloud2 li {
  color: #fff;
}

.breadcrumb.g-bg-cgreen li a,
.breadcrumb.g-bg-blush2 li a,
.breadcrumb.g-bg-gy li a,
.breadcrumb.g-bg-soundcloud2 li a {
  color: #fff;
}

.list-group-item {
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  border-radius: 0;
  -moz-transition: 0.5s;
  -o-transition: 0.5s;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

.list-group .active {
  background-color: var(--colaby-blue);
  border-color: var(--colaby-blue);
}

.list-group .active:hover,
.list-group .active:focus,
.list-group .active:active {
  background-color: var(--colaby-blue);
  border-color: var(--colaby-blue);
}

.list-group .active .list-group-item-text {
  color: #dfe9f1;
  font-size: 13px;
}

.list-group .active .list-group-item-text:hover,
.list-group .active .list-group-item-text:active,
.list-group .active .list-group-item-text:focus {
  color: #dfe9f1;
}

.list-group .list-group-item.active:hover .list-group-item-text,
.list-group .list-group-item.active:focus .list-group-item-text,
.list-group .list-group-item.active:active .list-group-item-text {
  color: #dfe9f1;
}

.list-group .list-group-item:first-child,
.list-group .list-group-item:last-child {
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  border-radius: 0;
}

.list-group .list-group-item .list-group-item-heading {
  font-weight: bold;
  font-size: 17px;
}

.list-group .list-group-item-success {
  background-color: #2b982b;
  border: none;
  color: #fff;
}

.list-group .list-group-item-success:hover,
.list-group .list-group-item-success:focus {
  background-color: #2b982b;
  color: #fff;
  opacity: 0.8;
}

.list-group .list-group-item-info {
  background-color: #00b0e4;
  border: none;
  color: #fff;
}

.list-group .list-group-item-info:hover,
.list-group .list-group-item-info:focus {
  background-color: #00b0e4;
  color: #fff;
  opacity: 0.8;
}

.list-group .list-group-item-warning {
  background-color: #ff9600;
  border: none;
  color: #fff;
}

.list-group .list-group-item-warning:hover,
.list-group .list-group-item-warning:focus {
  background-color: #ff9600;
  color: #fff;
  opacity: 0.8;
}

.list-group .list-group-item-danger {
  background-color: #fb483a;
  border: none;
  color: #fff;
}

.list-group .list-group-item-danger:hover,
.list-group .list-group-item-danger:focus {
  background-color: #fb483a;
  color: #fff;
  opacity: 0.8;
}

.list-group .pl-red {
  stroke: #ec3b57;
}

.list-group .list-group-bg-red {
  background-color: #ec3b57;
  border: none;
  color: #fff;
}

.list-group .list-group-bg-red:hover,
.list-group .list-group-bg-red:focus {
  background-color: #ec3b57;
  color: #fff;
  opacity: 0.8;
}

.list-group .pl-pink {
  stroke: #e91e63;
}

.list-group .list-group-bg-pink {
  background-color: #e91e63;
  border: none;
  color: #fff;
}

.list-group .list-group-bg-pink:hover,
.list-group .list-group-bg-pink:focus {
  background-color: #e91e63;
  color: #fff;
  opacity: 0.8;
}

.list-group .pl-purple {
  stroke: #ba3bd0;
}

.list-group .list-group-bg-purple {
  background-color: #ba3bd0;
  border: none;
  color: #fff;
}

.list-group .list-group-bg-purple:hover,
.list-group .list-group-bg-purple:focus {
  background-color: #ba3bd0;
  color: #fff;
  opacity: 0.8;
}

.list-group .pl-deep-purple {
  stroke: #673ab7;
}

.list-group .list-group-bg-deep-purple {
  background-color: #673ab7;
  border: none;
  color: #fff;
}

.list-group .list-group-bg-deep-purple:hover,
.list-group .list-group-bg-deep-purple:focus {
  background-color: #673ab7;
  color: #fff;
  opacity: 0.8;
}

.list-group .pl-blue {
  stroke: #457fca;
}

.list-group .list-group-bg-blue {
  background-color: #457fca;
  border: none;
  color: #fff;
}

.list-group .list-group-bg-blue:hover,
.list-group .list-group-bg-blue:focus {
  background-color: #457fca;
  color: #fff;
  opacity: 0.8;
}

.list-group .pl-cyan {
  stroke: #379c94;
}

.list-group .list-group-bg-cyan {
  background-color: #379c94;
  border: none;
  color: #fff;
}

.list-group .list-group-bg-cyan:hover,
.list-group .list-group-bg-cyan:focus {
  background-color: #379c94;
  color: #fff;
  opacity: 0.8;
}

.list-group .pl-green {
  stroke: #78b83e;
}

.list-group .list-group-bg-green {
  background-color: #78b83e;
  border: none;
  color: #fff;
}

.list-group .list-group-bg-green:hover,
.list-group .list-group-bg-green:focus {
  background-color: #78b83e;
  color: #fff;
  opacity: 0.8;
}

.list-group .pl-light-green {
  stroke: #8bc34a;
}

.list-group .list-group-bg-light-green {
  background-color: #8bc34a;
  border: none;
  color: #fff;
}

.list-group .list-group-bg-light-green:hover,
.list-group .list-group-bg-light-green:focus {
  background-color: #8bc34a;
  color: #fff;
  opacity: 0.8;
}

.list-group .pl-yellow {
  stroke: #ffe821;
}

.list-group .list-group-bg-yellow {
  background-color: #ffe821;
  border: none;
  color: #fff;
}

.list-group .list-group-bg-yellow:hover,
.list-group .list-group-bg-yellow:focus {
  background-color: #ffe821;
  color: #fff;
  opacity: 0.8;
}

.list-group .pl-orange {
  stroke: #ff9800;
}

.list-group .list-group-bg-orange {
  background-color: #ff9800;
  border: none;
  color: #fff;
}

.list-group .list-group-bg-orange:hover,
.list-group .list-group-bg-orange:focus {
  background-color: #ff9800;
  color: #fff;
  opacity: 0.8;
}

.list-group .pl-deep-orange {
  stroke: #f83600;
}

.list-group .list-group-bg-deep-orange {
  background-color: #f83600;
  border: none;
  color: #fff;
}

.list-group .list-group-bg-deep-orange:hover,
.list-group .list-group-bg-deep-orange:focus {
  background-color: #f83600;
  color: #fff;
  opacity: 0.8;
}

.list-group .pl-grey {
  stroke: #9e9e9e;
}

.list-group .list-group-bg-grey {
  background-color: #9e9e9e;
  border: none;
  color: #fff;
}

.list-group .list-group-bg-grey:hover,
.list-group .list-group-bg-grey:focus {
  background-color: #9e9e9e;
  color: #fff;
  opacity: 0.8;
}

.list-group .pl-blue-grey {
  stroke: #607d8b;
}

.list-group .list-group-bg-blue-grey {
  background-color: #607d8b;
  border: none;
  color: #fff;
}

.list-group .list-group-bg-blue-grey:hover,
.list-group .list-group-bg-blue-grey:focus {
  background-color: #607d8b;
  color: #fff;
  opacity: 0.8;
}

.list-group .pl-indigo {
  stroke: #3f51b5;
}

.list-group .list-group-bg-indigo {
  background-color: #3f51b5;
  border: none;
  color: #fff;
}

.list-group .list-group-bg-indigo:hover,
.list-group .list-group-bg-indigo:focus {
  background-color: #3f51b5;
  color: #fff;
  opacity: 0.8;
}

.list-group .pl-light-blue {
  stroke: #03a9f4;
}

.list-group .list-group-bg-light-blue {
  background-color: #03a9f4;
  border: none;
  color: #fff;
}

.list-group .list-group-bg-light-blue:hover,
.list-group .list-group-bg-light-blue:focus {
  background-color: #03a9f4;
  color: #fff;
  opacity: 0.8;
}

.list-group .pl-teal {
  stroke: #009688;
}

.list-group .list-group-bg-teal {
  background-color: #009688;
  border: none;
  color: #fff;
}

.list-group .list-group-bg-teal:hover,
.list-group .list-group-bg-teal:focus {
  background-color: #009688;
  color: #fff;
  opacity: 0.8;
}

.list-group .pl-lime {
  stroke: #cddc39;
}

.list-group .list-group-bg-lime {
  background-color: #cddc39;
  border: none;
  color: #fff;
}

.list-group .list-group-bg-lime:hover,
.list-group .list-group-bg-lime:focus {
  background-color: #cddc39;
  color: #fff;
  opacity: 0.8;
}

.list-group .pl-amber {
  stroke: #ffc107;
}

.list-group .list-group-bg-amber {
  background-color: #ffc107;
  border: none;
  color: #fff;
}

.list-group .list-group-bg-amber:hover,
.list-group .list-group-bg-amber:focus {
  background-color: #ffc107;
  color: #fff;
  opacity: 0.8;
}

.list-group .pl-brown {
  stroke: #795548;
}

.list-group .list-group-bg-brown {
  background-color: #795548;
  border: none;
  color: #fff;
}

.list-group .list-group-bg-brown:hover,
.list-group .list-group-bg-brown:focus {
  background-color: #795548;
  color: #fff;
  opacity: 0.8;
}

.list-group .pl-blush {
  stroke: #f15f79;
}

.list-group .list-group-bg-blush {
  background-color: #f15f79;
  border: none;
  color: #fff;
}

.list-group .list-group-bg-blush:hover,
.list-group .list-group-bg-blush:focus {
  background-color: #f15f79;
  color: #fff;
  opacity: 0.8;
}

.list-group .pl-black {
  stroke: #000;
}

.list-group .list-group-bg-black {
  background-color: #000;
  border: none;
  color: #fff;
}

.list-group .list-group-bg-black:hover,
.list-group .list-group-bg-black:focus {
  background-color: #000;
  color: #fff;
  opacity: 0.8;
}

.list-group .pl-white {
  stroke: #fff;
}

.list-group .list-group-bg-white {
  background-color: #fff;
  border: none;
  color: #fff;
}

.list-group .list-group-bg-white:hover,
.list-group .list-group-bg-white:focus {
  background-color: #fff;
  color: #fff;
  opacity: 0.8;
}

.pager li > a {
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  border-radius: 0;
  border: none;
  background-color: transparent;
  color: #222;
  font-weight: bold;
}

.pager li a:focus,
.pager li a:active {
  background-color: transparent;
}

.media {
  margin-bottom: 20px;
}

.media.mright .media-body {
  text-align: right;
}

.media .media-body {
  color: #777;
  font-size: 14px;
}

.media .media-body .media-heading {
  font-size: 16px;
  font-weight: bold;
  color: #333;
}

.wizard,
.tabcontrol {
  display: block;
  width: 100%;
  overflow: hidden;
}

.wizard a,
.tabcontrol a {
  outline: 0;
}

.wizard ul,
.tabcontrol ul {
  list-style: none !important;
  padding: 0;
  margin: 0;
}

.wizard ul > li,
.tabcontrol ul > li {
  display: block;
  padding: 0;
}

.wizard > .steps .current-info,
.tabcontrol > .steps .current-info,
.wizard > .content > .title,
.tabcontrol > .content > .title {
  position: absolute;
  left: -999em;
}

.wizard > .steps {
  position: relative;
  display: block;
  width: 100%;
}

.wizard.vertical > .steps {
  float: left;
  width: 30%;
}

.wizard.vertical > .steps > ul > li {
  float: none;
  width: 100%;
}

.wizard.vertical > .content {
  float: left;
  margin: 0 0 0.5em 0;
  width: 70%;
}

.wizard.vertical > .actions {
  float: right;
  width: 100%;
}

.wizard.vertical > .actions > ul > li {
  margin: 0 0 0 1em;
}

.wizard > .steps .number {
  font-size: 1.429em;
}

.wizard > .steps > ul > li {
  width: 25%;
  float: left;
}

.wizard > .actions > ul > li {
  float: left;
}

.wizard > .steps a {
  display: block;
  width: auto;
  margin: 0 0.5em 0.5em;
  padding: 1em 1em;
  text-decoration: none;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
}

.wizard > .steps a:hover,
.wizard > .steps a:active {
  display: block;
  width: auto;
  margin: 0 0.5em 0.5em;
  padding: 1em 1em;
  text-decoration: none;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
}

.wizard > .steps .disabled a {
  background: #eee;
  color: #aaa;
  cursor: default;
}

.wizard > .steps .disabled a:hover,
.wizard > .steps .disabled a:active {
  background: #eee;
  color: #aaa;
  cursor: default;
}

.wizard > .steps .current a {
  background: #2184be;
  color: #fff;
  cursor: default;
}

.wizard > .steps .current a:hover,
.wizard > .steps .current a:active {
  background: #2184be;
  color: #fff;
  cursor: default;
}

.wizard > .steps .done a {
  background: #9dc8e2;
  color: #fff;
}

.wizard > .steps .done a:hover,
.wizard > .steps .done a:active {
  background: #9dc8e2;
  color: #fff;
}

.wizard > .steps .error a {
  background: #ff3111;
  color: #fff;
}

.wizard > .steps .error a:hover,
.wizard > .steps .error a:active {
  background: #ff3111;
  color: #fff;
}

.wizard > .content {
  border: 1px solid #ddd;
  display: block;
  margin: 0.5em;
  min-height: 35em;
  overflow: hidden;
  position: relative;
  width: auto;
}

.wizard > .actions {
  position: relative;
  display: block;
  text-align: right;
  width: 100%;
}

.wizard > .actions > ul {
  display: inline-block;
  text-align: right;
}

.wizard > .actions > ul > li {
  margin: 0 0.5em;
}

.wizard > .actions a {
  background: #009688;
  color: #fff;
  display: block;
  padding: 0.5em 1em;
  text-decoration: none;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  border-radius: 0;
}

.wizard > .actions a:hover,
.wizard > .actions a:active {
  background: #009688;
  color: #fff;
  display: block;
  padding: 0.5em 1em;
  text-decoration: none;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  border-radius: 0;
}

.wizard > .actions .disabled a {
  background: #eee;
  color: #aaa;
}

.wizard > .actions .disabled a:hover,
.wizard > .actions .disabled a:active {
  background: #eee;
  color: #aaa;
}

.tabcontrol > .steps {
  position: relative;
  display: block;
  width: 100%;
}

.tabcontrol > .steps > ul {
  position: relative;
  margin: 6px 0 0 0;
  top: 1px;
  z-index: 1;
}

.tabcontrol > .steps > ul > li {
  float: left;
  margin: 5px 2px 0 0;
  padding: 1px;
  -webkit-border-top-left-radius: 5px;
  -webkit-border-top-right-radius: 5px;
  -moz-border-radius-topleft: 5px;
  -moz-border-radius-topright: 5px;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
}

.tabcontrol > .steps > ul > li:hover {
  background: #edecec;
  border: 1px solid #bbb;
  padding: 0;
}

.tabcontrol > .steps > ul > li.current {
  background: #fff;
  border: 1px solid #bbb;
  border-bottom: 0 none;
  padding: 0 0 1px 0;
  margin-top: 0;
}

.tabcontrol > .steps > ul > li.current > a {
  padding: 15px 30px 10px 30px;
}

.tabcontrol > .steps > ul > li > a {
  color: #5f5f5f;
  display: inline-block;
  border: 0 none;
  margin: 0;
  padding: 10px 30px;
  text-decoration: none;
}

.tabcontrol > .steps > ul > li > a:hover {
  text-decoration: none;
}

.tabcontrol > .content {
  position: relative;
  display: inline-block;
  width: 100%;
  height: 35em;
  overflow: hidden;
  border-top: 1px solid #bbb;
  padding-top: 20px;
}

.tabcontrol > .content > .body {
  float: left;
  position: absolute;
  width: 95%;
  height: 95%;
  padding: 2.5%;
}

.tabcontrol > .content > .body ul {
  list-style: disc !important;
}

.tabcontrol > .content > .body ul > li {
  display: list-item;
}

.wizard .content {
  min-height: 245px;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  border-radius: 0;
  overflow-y: auto;
}

.wizard .content .body {
  padding: 15px;
}

.wizard .steps a {
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  border-radius: 0;
  -moz-transition: 0.5s;
  -o-transition: 0.5s;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

.wizard .steps a:active,
.wizard .steps a:focus,
.wizard .steps a:hover {
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  border-radius: 0;
}

.waves-effect.waves-red .waves-ripple {
  background: rgba(236, 59, 87, 0.5);
}

.waves-effect.waves-pink .waves-ripple {
  background: rgba(233, 30, 99, 0.5);
}

.waves-effect.waves-purple .waves-ripple {
  background: rgba(186, 59, 208, 0.5);
}

.waves-effect.waves-deep-purple .waves-ripple {
  background: rgba(103, 58, 183, 0.5);
}

.waves-effect.waves-blue .waves-ripple {
  background: rgba(69, 127, 202, 0.5);
}

.waves-effect.waves-cyan .waves-ripple {
  background: rgba(55, 156, 148, 0.5);
}

.waves-effect.waves-green .waves-ripple {
  background: rgba(120, 184, 62, 0.5);
}

.waves-effect.waves-light-green .waves-ripple {
  background: rgba(139, 195, 74, 0.5);
}

.waves-effect.waves-yellow .waves-ripple {
  background: rgba(255, 232, 33, 0.5);
}

.waves-effect.waves-orange .waves-ripple {
  background: rgba(255, 152, 0, 0.5);
}

.waves-effect.waves-deep-orange .waves-ripple {
  background: rgba(248, 54, 0, 0.5);
}

.waves-effect.waves-grey .waves-ripple {
  background: rgba(158, 158, 158, 0.5);
}

.waves-effect.waves-blue-grey .waves-ripple {
  background: rgba(96, 125, 139, 0.5);
}

.waves-effect.waves-indigo .waves-ripple {
  background: rgba(63, 81, 181, 0.5);
}

.waves-effect.waves-light-blue .waves-ripple {
  background: rgba(3, 169, 244, 0.5);
}

.waves-effect.waves-teal .waves-ripple {
  background: rgba(0, 150, 136, 0.5);
}

.waves-effect.waves-lime .waves-ripple {
  background: rgba(205, 220, 57, 0.5);
}

.waves-effect.waves-amber .waves-ripple {
  background: rgba(255, 193, 7, 0.5);
}

.waves-effect.waves-brown .waves-ripple {
  background: rgba(121, 85, 72, 0.5);
}

.waves-effect.waves-blush .waves-ripple {
  background: rgba(241, 95, 121, 0.5);
}

.waves-effect.waves-black .waves-ripple {
  background: rgba(0, 0, 0, 0.5);
}

.waves-effect.waves-white .waves-ripple {
  background: rgba(255, 255, 255, 0.5);
}

.md-preloader .pl-red {
  stroke: #ec3b57;
}

.md-preloader .pl-pink {
  stroke: #e91e63;
}

.md-preloader .pl-purple {
  stroke: #ba3bd0;
}

.md-preloader .pl-deep-purple {
  stroke: #673ab7;
}

.md-preloader .pl-blue {
  stroke: #457fca;
}

.md-preloader .pl-cyan {
  stroke: #379c94;
}

.md-preloader .pl-green {
  stroke: #78b83e;
}

.md-preloader .pl-light-green {
  stroke: #8bc34a;
}

.md-preloader .pl-yellow {
  stroke: #ffe821;
}

.md-preloader .pl-orange {
  stroke: #ff9800;
}

.md-preloader .pl-deep-orange {
  stroke: #f83600;
}

.md-preloader .pl-grey {
  stroke: #9e9e9e;
}

.md-preloader .pl-blue-grey {
  stroke: #607d8b;
}

.md-preloader .pl-indigo {
  stroke: #3f51b5;
}

.md-preloader .pl-light-blue {
  stroke: #03a9f4;
}

.md-preloader .pl-teal {
  stroke: #009688;
}

.md-preloader .pl-lime {
  stroke: #cddc39;
}

.md-preloader .pl-amber {
  stroke: #ffc107;
}

.md-preloader .pl-brown {
  stroke: #795548;
}

.md-preloader .pl-blush {
  stroke: #f15f79;
}

.md-preloader .pl-black {
  stroke: #000;
}

.md-preloader .pl-white {
  stroke: #fff;
}

.preloader {
  display: inline-block;
  position: relative;
  width: 50px;
  height: 50px;
  -webkit-animation: container-rotate 1568ms linear infinite;
  -moz-animation: container-rotate 1568ms linear infinite;
  -o-animation: container-rotate 1568ms linear infinite;
  animation: container-rotate 1568ms linear infinite;
}

.preloader.pl-size-xl {
  width: 75px;
  height: 75px;
}

.preloader.pl-size-l {
  width: 60px;
  height: 60px;
}

.preloader.pl-size-md {
  width: 50px;
  height: 50px;
}

.preloader.pl-size-sm {
  width: 40px;
  height: 40px;
}

.preloader.pl-size-xs {
  width: 25px;
  height: 25px;
}

.spinner-layer {
  position: absolute;
  width: 100%;
  height: 100%;
  border-color: #f44336;
  -ms-opacity: 1;
  opacity: 1;
  -webkit-animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1)
    infinite both;
  -moz-animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1)
    infinite both;
  -o-animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite
    both;
  animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite
    both;
}

.spinner-layer.pl-red {
  border-color: #ec3b57;
}

.spinner-layer.pl-pink {
  border-color: #e91e63;
}

.spinner-layer.pl-purple {
  border-color: #ba3bd0;
}

.spinner-layer.pl-deep-purple {
  border-color: #673ab7;
}

.spinner-layer.pl-blue {
  border-color: #457fca;
}

.spinner-layer.pl-cyan {
  border-color: #379c94;
}

.spinner-layer.pl-green {
  border-color: #78b83e;
}

.spinner-layer.pl-light-green {
  border-color: #8bc34a;
}

.spinner-layer.pl-yellow {
  border-color: #ffe821;
}

.spinner-layer.pl-orange {
  border-color: #ff9800;
}

.spinner-layer.pl-deep-orange {
  border-color: #f83600;
}

.spinner-layer.pl-grey {
  border-color: #9e9e9e;
}

.spinner-layer.pl-blue-grey {
  border-color: #607d8b;
}

.spinner-layer.pl-indigo {
  border-color: #3f51b5;
}

.spinner-layer.pl-light-blue {
  border-color: #03a9f4;
}

.spinner-layer.pl-teal {
  border-color: #009688;
}

.spinner-layer.pl-lime {
  border-color: #cddc39;
}

.spinner-layer.pl-amber {
  border-color: #ffc107;
}

.spinner-layer.pl-brown {
  border-color: #795548;
}

.spinner-layer.pl-blush {
  border-color: #f15f79;
}

.spinner-layer.pl-black {
  border-color: #000;
}

.spinner-layer.pl-white {
  border-color: #fff;
}

.right {
  float: right !important;
}

.gap-patch {
  position: absolute;
  top: 0;
  left: 45%;
  width: 10%;
  height: 100%;
  overflow: hidden;
  border-color: inherit;
}

.gap-patch.circle {
  width: 1000%;
  left: -450%;
}

.circle-clipper {
  display: inline-block;
  position: relative;
  width: 50%;
  height: 100%;
  overflow: hidden;
  border-color: inherit;
}

.circle-clipper .circle {
  width: 200%;
  height: 100%;
  border-width: 3px;
  border-style: solid;
  border-color: inherit;
  border-bottom-color: transparent !important;
  -ms-border-radius: 50%;
  border-radius: 50%;
  -webkit-animation: none;
  animation: none;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
}

.circle-clipper.left .circle {
  left: 0;
  border-right-color: transparent !important;
  -webkit-transform: rotate(129deg);
  -moz-transform: rotate(129deg);
  -ms-transform: rotate(129deg);
  -o-transform: rotate(129deg);
  transform: rotate(129deg);
  -webkit-animation: left-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
  -moz-animation: left-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
  -o-animation: left-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
  animation: left-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
}

.circle-clipper.right .circle {
  left: -100%;
  border-left-color: transparent !important;
  -webkit-transform: rotate(-129deg);
  -moz-transform: rotate(-129deg);
  -ms-transform: rotate(-129deg);
  -o-transform: rotate(-129deg);
  transform: rotate(-129deg);
  -webkit-animation: right-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite
    both;
  -moz-animation: right-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
  -o-animation: right-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
  animation: right-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
}

@-webkit-keyframes container-rotate {
  to {
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@keyframes container-rotate {
  to {
    -moz-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@-webkit-keyframes fill-unfill-rotate {
  12.5% {
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
  }
  25% {
    -webkit-transform: rotate(270deg);
    transform: rotate(270deg);
  }
  37.5% {
    -webkit-transform: rotate(405deg);
    transform: rotate(405deg);
  }
  50% {
    -webkit-transform: rotate(540deg);
    transform: rotate(540deg);
  }
  62.5% {
    -webkit-transform: rotate(675deg);
    transform: rotate(675deg);
  }
  75% {
    -webkit-transform: rotate(810deg);
    transform: rotate(810deg);
  }
  87.5% {
    -webkit-transform: rotate(945deg);
    transform: rotate(945deg);
  }
  to {
    -webkit-transform: rotate(1080deg);
    transform: rotate(1080deg);
  }
}

@keyframes fill-unfill-rotate {
  12.5% {
    transform: rotate(135deg);
  }
  25% {
    transform: rotate(270deg);
  }
  37.5% {
    transform: rotate(405deg);
  }
  50% {
    transform: rotate(540deg);
  }
  62.5% {
    transform: rotate(675deg);
  }
  75% {
    transform: rotate(810deg);
  }
  87.5% {
    transform: rotate(945deg);
  }
  to {
    transform: rotate(1080deg);
  }
}

@-webkit-keyframes left-spin {
  from {
    -webkit-transform: rotate(130deg);
    -moz-transform: rotate(130deg);
    -ms-transform: rotate(130deg);
    -o-transform: rotate(130deg);
    transform: rotate(130deg);
  }
  50% {
    -webkit-transform: rotate(-5deg);
    -moz-transform: rotate(-5deg);
    -ms-transform: rotate(-5deg);
    -o-transform: rotate(-5deg);
    transform: rotate(-5deg);
  }
  to {
    -webkit-transform: rotate(130deg);
    -moz-transform: rotate(130deg);
    -ms-transform: rotate(130deg);
    -o-transform: rotate(130deg);
    transform: rotate(130deg);
  }
}

@keyframes left-spin {
  from {
    -moz-transform: rotate(130deg);
    -ms-transform: rotate(130deg);
    -o-transform: rotate(130deg);
    -webkit-transform: rotate(130deg);
    transform: rotate(130deg);
  }
  50% {
    -moz-transform: rotate(-5deg);
    -ms-transform: rotate(-5deg);
    -o-transform: rotate(-5deg);
    -webkit-transform: rotate(-5deg);
    transform: rotate(-5deg);
  }
  to {
    -moz-transform: rotate(130deg);
    -ms-transform: rotate(130deg);
    -o-transform: rotate(130deg);
    -webkit-transform: rotate(130deg);
    transform: rotate(130deg);
  }
}

@-webkit-keyframes right-spin {
  from {
    -webkit-transform: rotate(-130deg);
    -moz-transform: rotate(-130deg);
    -ms-transform: rotate(-130deg);
    -o-transform: rotate(-130deg);
    transform: rotate(-130deg);
  }
  50% {
    -webkit-transform: rotate(5deg);
    -moz-transform: rotate(5deg);
    -ms-transform: rotate(5deg);
    -o-transform: rotate(5deg);
    transform: rotate(5deg);
  }
  to {
    -webkit-transform: rotate(-130deg);
    -moz-transform: rotate(-130deg);
    -ms-transform: rotate(-130deg);
    -o-transform: rotate(-130deg);
    transform: rotate(-130deg);
  }
}

@-moz-keyframes right-spin {
  from {
    -moz-transform: rotate(-130deg);
    -ms-transform: rotate(-130deg);
    -o-transform: rotate(-130deg);
    -webkit-transform: rotate(-130deg);
    transform: rotate(-130deg);
  }
  50% {
    -moz-transform: rotate(5deg);
    -ms-transform: rotate(5deg);
    -o-transform: rotate(5deg);
    -webkit-transform: rotate(5deg);
    transform: rotate(5deg);
  }
  to {
    -moz-transform: rotate(-130deg);
    -ms-transform: rotate(-130deg);
    -o-transform: rotate(-130deg);
    -webkit-transform: rotate(-130deg);
    transform: rotate(-130deg);
  }
}

@keyframes right-spin {
  from {
    -moz-transform: rotate(-130deg);
    -ms-transform: rotate(-130deg);
    -o-transform: rotate(-130deg);
    -webkit-transform: rotate(-130deg);
    transform: rotate(-130deg);
  }
  50% {
    -moz-transform: rotate(5deg);
    -ms-transform: rotate(5deg);
    -o-transform: rotate(5deg);
    -webkit-transform: rotate(5deg);
    transform: rotate(5deg);
  }
  to {
    -moz-transform: rotate(-130deg);
    -ms-transform: rotate(-130deg);
    -o-transform: rotate(-130deg);
    -webkit-transform: rotate(-130deg);
    transform: rotate(-130deg);
  }
}

.dropdown-menu .divider {
  margin: 1px 0;
  border-bottom: 1px solid #eaeaea;
}

.dropdown-menu .header {
  font-size: 13px;
  font-weight: 600;
  min-width: 270px;
  border-bottom: 1px solid #eee;
  text-align: left;
  padding: 10px 15px;
}

.dropdown-menu ul.menu {
  padding-left: 0;
}

.dropdown-menu ul.menu.tasks h4 {
  color: #333;
  font-size: 15px;
  margin: 0 0 8px 0;
  font-weight: 500;
}

.dropdown-menu ul.menu.tasks h4 small {
  float: right;
  margin-top: 3px;
}

.dropdown-menu ul.menu.tasks .progress {
  height: 5px;
  margin-bottom: 7px;
}

.dropdown-menu ul.menu .icon-circle {
  width: 36px;
  height: 36px;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
  color: #fff;
  text-align: center;
  vertical-align: top;
}

.dropdown-menu ul.menu .icon-circle i {
  font-size: 18px;
  line-height: 36px;
}

.dropdown-menu ul.menu li {
  border-bottom: 1px solid #eee;
}

.dropdown-menu ul.menu li:last-child {
  border-bottom: none;
}

.dropdown-menu ul.menu li a {
  padding: 6px 10px;
  line-height: 1.2;
  text-decoration: none;
  -moz-transition: 0.5s;
  -o-transition: 0.5s;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

.dropdown-menu ul.menu li a:hover {
  background-color: #e9e9e9;
}

.dropdown-menu ul.menu .menu-info {
  position: relative;
  top: 0px;
  left: 5px;
}

.dropdown-menu ul.menu .menu-info h4 {
  margin: 0;
  font-size: 15px;
  color: #333;
  font-weight: 500;
}

.dropdown-menu ul.menu .menu-info p {
  margin: 0;
  font-size: 11px;
  color: #aaa;
}

.dropdown-menu ul.menu .menu-info p i {
  font-size: 13px;
  color: #aaa;
  position: relative;
  top: 1px;
  vertical-align: top;
}

.dropdown-menu .footer a {
  text-align: center;
  border-top: 1px solid #eee;
  font-size: 13px;
}

.dropdown-menu .footer a:hover {
  background-color: transparent;
}

.dropdown-menu > li > a {
  padding: 6px 10px;
  color: #666;
  -moz-transition: all 0.5s;
  -o-transition: all 0.5s;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  font-size: 12.5px;
  line-height: 1.2;
}

.dropdown-menu > li > a:hover {
  background-color: rgba(0, 0, 0, 0.1);
  text-decoration: none;
  color: #24241e;
}

.dropdown-menu > li > a i.material-icons {
  float: left;
  margin-right: 7px;
  margin-top: 2px;
  font-size: 20px;
}

.dropdown .dropdown-toggle:after {
  display: none;
}

.dropdown-animated {
  -webkit-animation-duration: 0.3s !important;
  -moz-animation-duration: 0.3s !important;
  -o-animation-duration: 0.3s !important;
  animation-duration: 0.3s !important;
}

.bootstrap-notify-container {
  max-width: 320px;
  text-align: center;
}

.dd-handle {
  background-color: #f9f9f9 !important;
}

.dd-handle:hover {
  color: var(--colaby-blue);
}

.nestable-dark-theme .dd-handle {
  background: #ccc !important;
  border: 1px solid #999 !important;
}

.dd3-handle {
  background: #999 !important;
}

.dd3-content:hover {
  color: var(--colaby-blue);
}

.search-results {
  margin: 0;
  padding: 0;
}

.search-results .result-list {
  list-style: none;
  padding: 15px;
  border-radius: 4px;
  border: 1px solid #f2f2f2;
}

.search-results .result-list .cover h4 {
  padding: 0;
  margin: 0 0 10px 0;
}

.search-results .result-list .cover h4 a {
  text-decoration: none;
  color: #666;
}

.search-results .result-list .cover h4 a:hover {
  text-decoration: none;
  color: #424242;
}

.page-calendar .event-name {
  padding: 10px;
  margin: 2px 0;
  border-left: 3px solid;
}

.page-calendar .event-name .col-2,
.page-calendar .event-name .col-12 {
  padding: 0;
}

.page-calendar .event-name:hover {
  background: #f2f2f2;
}

.page-calendar .event-name h6 {
  text-transform: capitalize;
}

.page-calendar .event-name h4 {
  font-size: 25px;
  line-height: 24px;
}

.page-calendar .event-name h4 span {
  font-size: 11px;
  line-height: 16px;
}

.page-calendar .event-name p {
  overflow: hidden;
  white-space: nowrap;
  width: 100%;
  display: block;
  text-overflow: ellipsis;
}

.page-calendar .event-name address {
  font-size: 11px;
}

.page-calendar .event-name address i {
  font-size: 12px;
}

.page-calendar .b-primary {
  border-color: var(--colaby-blue) !important;
}

.page-calendar .b-success {
  border-color: #4caf50 !important;
}

.page-calendar .b-lightred {
  border-color: #f44336 !important;
}

.page-calendar .b-greensea {
  border-color: #4caf50 !important;
}

.page-calendar #calendar {
  max-width: 900px;
}

.event-control {
  background-color: #f8f8f8;
  font-size: 13px;
  cursor: pointer;
}

.event-control:hover {
  background-color: #fff;
}

.event-control a {
  color: #000;
  cursor: pointer;
  opacity: 0.5;
}

.event-control a:hover {
  opacity: 1;
}

.event-control[class*="bg-"]:not(.bg-default):not(.bg-white) a {
  color: #000 !important;
  opacity: 1;
}

.event-control[class*="bg-"]:not(.bg-default):not(.bg-white) a:hover {
  color: #fff !important;
}

.fc-overlay {
  display: none;
  position: absolute;
  min-width: 260px;
  padding: 15px 0;
  top: auto;
  left: 50%;
  margin-left: -150px;
  z-index: 1000;
  color: #000 !important;
}

.fc-overlay.left {
  left: 100%;
  top: -15px;
  padding: 0 10px;
  margin: 0;
}

.fc-overlay.right {
  left: auto;
  right: 100%;
  top: -15px;
  padding: 0 10px;
  margin: 0;
}

.fc-overlay .panel {
  padding: 10px;
}

.fc .fc-toolbar {
  height: 50px;
  color: #fff;
  background: #3d4c5a;
  border-radius: 0;
  margin: 0;
}

.fc .fc-toolbar .fc-button {
  color: #fff;
  background: transparent;
  border: none;
  box-shadow: none;
  text-shadow: none;
  margin: 0;
  height: 50px;
  line-height: 28px;
  padding: 10px;
}

.fc .fc-toolbar .fc-button:hover {
  color: #fff;
}

.fc .fc-toolbar h2 {
  font-size: 24px;
  line-height: 50px;
  margin: 0;
  text-transform: uppercase;
  font-weight: 100;
}

.fc .fc-view-container .fc-event {
  padding: 3px 5px;
  font-size: 12px;
  border-radius: 0;
  background-color: #fff;
  border: 0;
  color: #333;
  border-left: 3px solid;
}

.fc .fc-view-container .fc-event.fc-event-end:not(.fc-event-start) {
  border: 0 !important;
}

.fc .fc-view-container .fc-event:focus,
.fc .fc-view-container .fc-event:hover,
.fc .fc-view-container .fc-event:active {
  z-index: 1000;
}

.fc .fc-view-container .fc-event:focus .fc-overlay,
.fc .fc-view-container .fc-event:hover .fc-overlay,
.fc .fc-view-container .fc-event:active .fc-overlay {
  display: block;
}

.fc
  .fc-view-container
  .fc-view.fc-basic-view
  > table
  > thead
  tr
  th.fc-widget-header,
.fc
  .fc-view-container
  .fc-view.fc-basic-view
  > table
  > thead
  tr
  td.fc-widget-header,
.fc
  .fc-view-container
  .fc-view.fc-agenda
  > table
  > thead
  tr
  th.fc-widget-header,
.fc
  .fc-view-container
  .fc-view.fc-agenda
  > table
  > thead
  tr
  td.fc-widget-header {
  border: 0;
  background-color: #d2d2d2;
  padding: 10px;
  color: #000;
  font-size: 12px;
  font-weight: normal;
}

.fc
  .fc-view-container
  .fc-view.fc-basic-view
  > table
  > thead
  tr
  th.fc-agenda-gutter,
.fc
  .fc-view-container
  .fc-view.fc-basic-view
  > table
  > thead
  tr
  td.fc-agenda-gutter,
.fc
  .fc-view-container
  .fc-view.fc-agenda
  > table
  > thead
  tr
  th.fc-agenda-gutter,
.fc
  .fc-view-container
  .fc-view.fc-agenda
  > table
  > thead
  tr
  td.fc-agenda-gutter {
  padding: 0;
}

.fc
  .fc-view-container
  .fc-view.fc-basic-view
  > table
  > thead
  tr
  td.fc-widget-header,
.fc
  .fc-view-container
  .fc-view.fc-agenda
  > table
  > thead
  tr
  td.fc-widget-header {
  padding: 2px;
}

.fc
  .fc-view-container
  .fc-view.fc-basic-view
  > table
  tbody
  tr
  td.fc-widget-content,
.fc
  .fc-view-container
  .fc-view.fc-agenda
  > table
  tbody
  tr
  td.fc-widget-content {
  border: 0;
  border-bottom: 1px solid #d2d2d2;
  border-right: 1px solid #d2d2d2;
}

.fc
  .fc-view-container
  .fc-view.fc-basic-view
  > table
  tbody
  tr
  td.fc-widget-content.fc-state-highlight,
.fc
  .fc-view-container
  .fc-view.fc-agenda
  > table
  tbody
  tr
  td.fc-widget-content.fc-state-highlight {
  background: #fff;
}

.fc .fc-view-container .fc-view.fc-basic-view > table tbody tr td.fc-day-number,
.fc .fc-view-container .fc-view.fc-agenda > table tbody tr td.fc-day-number {
  padding: 5px 10px;
  margin: 5px;
  color: #000;
  font-size: 15px;
}

.fc
  .fc-view-container
  .fc-view.fc-basic-view
  > table
  tbody
  tr
  td.fc-day-number.fc-state-highlight,
.fc
  .fc-view-container
  .fc-view.fc-agenda
  > table
  tbody
  tr
  td.fc-day-number.fc-state-highlight {
  background-color: red;
  color: #fff;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  border-radius: 50%;
  padding: 4px 6px;
  float: right;
}

.fc
  .fc-view-container
  .fc-view.fc-basic-view
  > table
  tbody
  tr
  td:first-child.fc-widget-content,
.fc
  .fc-view-container
  .fc-view.fc-agenda
  > table
  tbody
  tr
  td:first-child.fc-widget-content {
  border-left: 1px solid #d2d2d2;
}

.fc .fc-view-container .fc-view.fc-basic-view .fc-body .fc-row .fc-bg,
.fc .fc-view-container .fc-view.fc-agenda .fc-body .fc-row .fc-bg {
  border-bottom: 1px solid #d2d2d2;
}

.fc
  .fc-view-container
  .fc-view.fc-basic-view
  .fc-body
  .fc-row:last-of-type
  .fc-bg,
.fc .fc-view-container .fc-view.fc-agenda .fc-body .fc-row:last-of-type .fc-bg {
  border-bottom: 0;
}

.fc .fc-view-container .fc-view.fc-agenda .fc-agenda-allday .fc-agenda-axis,
.fc .fc-view-container .fc-view.fc-agenda .fc-agenda-allday .fc-agenda-gutter {
  border-left: 1px solid #e2e2e2;
  border-right: 1px solid #e2e2e2;
  background-color: #f2f2f2;
  color: #000;
  font-size: 12px;
  font-weight: 100;
  padding: 10px 5px;
}

.fc
  .fc-view-container
  .fc-view.fc-agenda
  > table
  > tbody
  > tr
  > td.fc-state-highlight {
  background: #f2f2f2;
}

.fc .fc-view-container .fc-view.fc-agenda > table > tbody > tr > td.fc-sat {
  border-right: 0;
}

.fc .fc-view-container .fc-view.fc-agenda .fc-agenda-slots tr {
  line-height: 35px;
}

.fc .fc-view-container .fc-view.fc-agenda .fc-agenda-slots tr th {
  border: 0;
  border-left: 1px solid #e2e2e2;
  border-right: 1px solid #e2e2e2;
  background-color: #f2f2f2;
  color: #000;
  font-size: 12px;
  font-weight: 100;
  padding-top: 10px;
}

.fc
  .fc-view-container
  .fc-view.fc-agenda
  .fc-agenda-slots
  tr
  td.fc-widget-content {
  border-bottom: 1px solid #e2e2e2;
  line-height: 50px;
}

.fc
  .fc-view-container
  .fc-view.fc-agenda
  .fc-agenda-slots
  tr
  td.fc-widget-content:last-child {
  border-right: 0;
}

.fc
  .fc-view-container
  .fc-view.fc-agenda
  .fc-agenda-slots
  tr.fc-minor
  td.fc-widget-content {
  border-bottom: 1px solid #e2e2e2;
}

.fc .fc-view-container .fc-view.fc-agenda .fc-agenda-divider {
  border: 1px solid #e2e2e2;
}

.fc
  .fc-view-container
  .fc-view.fc-agenda
  .fc-agenda-divider
  .fc-agenda-divider-inner {
  background-color: #f2f2f2;
  height: 3px;
}

.gmap {
  width: 100%;
  height: 400px;
}

.jvector-map {
  width: 100%;
  height: 400px;
}

.morris-hover.morris-default-style {
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  border-radius: 0;
}

.flot-chart {
  width: 100%;
  height: 320px;
}

.panel-switch-btn {
  position: relative;
  right: 20px;
  z-index: 9;
}

.panel-switch-btn label {
  font-weight: bold !important;
}

.legendLabel {
  width: 85px !important;
  position: relative;
  left: 3px;
}

#multiple_axis_chart .legendLabel {
  width: 160px !important;
}

.sparkline {
  text-align: center;
}

.search-bar {
  position: fixed;
  top: -100px;
  left: 0;
  z-index: 9999999;
  width: 100%;
  -moz-transition: 0.25s;
  -o-transition: 0.25s;
  -webkit-transition: 0.25s;
  transition: 0.25s;
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.5);
}

.search-bar.open {
  top: 0;
}

.search-bar .search-icon {
  position: absolute;
  top: 14px;
  left: 14px;
}

.search-bar .search-icon .material-icons {
  font-size: 28px;
  color: #999;
}

.search-bar .close-search {
  position: absolute;
  cursor: pointer;
  font-size: 30px;
  top: 6px;
  right: 18px;
}

.search-bar .close-search .material-icons {
  color: #999;
  opacity: 1;
  -moz-transition: 0.5s;
  -o-transition: 0.5s;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

.search-bar .close-search .material-icons:hover {
  opacity: 0.5;
}

.search-bar input[type="text"] {
  width: 100%;
  font-size: 16px;
  padding: 15px 60px 15px 56px;
  border: none;
}

.dataTables_wrapper {
  position: relative;
}

.dataTables_wrapper select {
  border: none;
  border-bottom: 1px solid #ddd;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  border-radius: 0;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  -ms-box-shadow: none;
  box-shadow: none;
}

.dataTables_wrapper select:active,
.dataTables_wrapper select:focus {
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  -ms-box-shadow: none;
  box-shadow: none;
}

.dataTables_wrapper input[type="search"] {
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  border-radius: 0;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  -ms-box-shadow: none;
  box-shadow: none;
  border: none;
  font-size: 12px;
  border-bottom: 1px solid #ddd;
}

.dataTables_wrapper input[type="search"]:focus,
.dataTables_wrapper input[type="search"]:active {
  border-bottom: 2px solid #1f91f3;
}

.dataTables_wrapper .dt-buttons {
  float: left;
}

.dataTables_wrapper .dt-buttons a.dt-button {
  background-color: #607d8b;
  color: #fff;
  padding: 7px 12px;
  margin-right: 5px;
  text-decoration: none;
  box-shadow:
    0 2px 5px rgba(0, 0, 0, 0.16),
    0 2px 10px rgba(0, 0, 0, 0.12);
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  border-radius: 2px;
  border: none;
  font-size: 13px;
  outline: none;
}

.dataTables_wrapper .dt-buttons a.dt-button:active {
  opacity: 0.8;
}

.dt-button-info {
  position: fixed;
  top: 50%;
  left: 50%;
  min-width: 400px;
  text-align: center;
  background-color: #fff;
  border: 2px solid #999;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  border-radius: 3px;
  margin-top: -100px;
  margin-left: -200px;
  z-index: 21;
}

.dt-button-info h2 {
  color: #777;
}

.dt-button-info div {
  color: #777;
  margin-bottom: 20px;
}

.lg-outer .lg-thumb-item,
.lg-outer .lg-toogle-thumb {
  -webkit-border-radius: 0 !important;
  -moz-border-radius: 0 !important;
  -ms-border-radius: 0 !important;
  border-radius: 0 !important;
}

.product-report .counter {
  font-weight: normal;
}

.product-report .icon {
  float: left;
  width: 50px;
  text-align: center;
  line-height: 50px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  border-radius: 3px;
}

.activities .streamline {
  position: relative;
  border-color: #dddee0;
}

.activities .streamline .b-info {
  border-color: var(--colaby-blue);
}

.activities .streamline .b-primary {
  border-color: #673ab7;
}

.activities .streamline .b-warning {
  border-color: #ff9800;
}

.activities .b-accent {
  border-color: #3f51b5 !important;
  border-left: 1px solid;
}

.activities .b-accent .sl-item {
  position: relative;
  padding-bottom: 1px;
}

.activities .b-accent .sl-item:before {
  display: table;
  content: " ";
}

.activities .b-accent .sl-item:after {
  position: absolute;
  top: 0;
  left: 0;
  width: 11px;
  height: 11px;
  margin-left: -6px;
  background-color: #fff;
  border-color: inherit;
  border-style: solid;
  border-width: 2px;
  border-radius: 50%;
  content: "";
}

.activities .b-accent .sl-item .sl-content {
  padding-bottom: 4px;
  margin-top: -6px;
  margin-left: 24px;
}

.activities .b-accent .sl-item .sl-content p {
  overflow: hidden;
  white-space: nowrap;
  width: 100%;
  display: block;
  text-overflow: ellipsis;
}

.mini-profile-widget {
  min-height: 189px;
}

.mini-profile-widget .mini-profile-area {
  float: left;
  padding: 10px 0 20px 90px;
  position: relative;
  width: 100%;
}

.mini-profile-widget .mini-profile-area > span {
  border: 3px solid #adadad;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  border-radius: 50%;
  left: 0;
  overflow: hidden;
  position: absolute;
  top: 0;
}

.mini-profile-widget .mini-profile-area > span img {
  float: left;
  width: 65px;
}

.mini-profile-widget .profile-views-progress {
  float: left;
  width: 100%;
}

.mini-profile-widget .profile-views-progress ul {
  list-style: outside none none;
  margin: 0 -7px;
  padding: 0;
}

.mini-profile-widget .profile-views-progress ul li {
  float: left;
  margin-top: 0;
  padding: 0 7px;
  width: 33.333%;
}

.mini-profile-widget .profile-views-progress ul li h4 {
  margin: 0;
}

.mini-profile-widget .profile-views-progress .progress {
  height: 5px;
  margin-bottom: 10px;
}

.chat-widget .chat-scroll-list {
  padding: 0;
  margin-right: 10px;
}

.chat-widget .chat-scroll-list li {
  list-style: none;
  margin-bottom: 20px;
  width: 100%;
}

.chat-widget .chat-scroll-list li.left img {
  float: left;
}

.chat-widget .chat-scroll-list li.left .chat-info {
  margin-left: 10px;
}

.chat-widget .chat-scroll-list li.left .message {
  padding: 10px 20px;
  border-radius: 0 15px 15px 15px;
  background: #9e9e9e;
  color: #fff;
}

.chat-widget .chat-scroll-list li.right {
  text-align: right;
}

.chat-widget .chat-scroll-list li.right .chat-info {
  background: #eee;
  padding: 10px 20px;
  border-radius: 15px 0 15px 15px;
}

.chat-widget .chat-scroll-list li .datetime {
  font-size: 12px;
  color: #bdbdbd;
}

.chat-widget .chat-scroll-list li img {
  height: 40px;
  width: 40px;
}

.chat-launcher {
  position: fixed;
  bottom: 20px;
  right: 20px;
  width: 50px;
  height: 50px;
  z-index: 9999;
  color: #fff;
  border-radius: 50%;
  cursor: pointer;
  box-shadow:
    0 0 6px rgba(0, 0, 0, 0.16),
    0 6px 12px rgba(0, 0, 0, 0.32);
}

.chat-launcher:before,
.chat-launcher:after {
  font-family: "Material-Design-Iconic-Font";
  font-size: 23px;
  position: absolute;
  right: 17px;
  top: 8px;
  -webkit-transition:
    transform 180ms linear,
    opacity 130ms linear;
  transition:
    transform 180ms linear,
    opacity 130ms linear;
}

.chat-launcher:before {
  content: "\f266";
  opacity: 1;
  -webkit-transform: rotate(0deg) scale(1);
  transform: rotate(0deg) scale(1);
}

.chat-launcher:after {
  content: "\f136";
  opacity: 0;
  -webkit-transform: rotate(-30deg);
  transform: rotate(-30deg);
}

.chat-launcher:hover {
  background: #ffb329;
}

.chat-launcher.active:before {
  opacity: 0;
  -webkit-transform: rotate(70deg) scale(0);
  transform: rotate(70deg) scale(0);
}

.chat-launcher.active:after {
  opacity: 1;
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
}

.chat-wrapper {
  width: 385px;
  position: fixed;
  right: 40px;
  bottom: 40px;
  z-index: 999;
  -webkit-transition: transform 400ms ease;
  transition: transform 400ms ease;
  -webkit-transform: translateY(130%);
  transform: translateY(130%);
}

.chat-wrapper.is-open {
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

.chat-wrapper .card {
  margin: 0;
  padding: 15px;
  border-radius: 10px;
  box-shadow: 1px 1px 100px 2px rgba(0, 0, 0, 0.22);
}

.chat-wrapper .card .header {
  border-radius: 10px 10px 0 0;
}

.agent .agent-avatar {
  width: 100%;
}

.agent .agent-avatar a {
  position: relative;
  width: 100%;
  height: 100%;
  display: block;
  overflow: hidden;
}

.agent .agent-content .agent-name {
  padding: 20px 30px;
}

.agent .agent-content .agent-name h4 {
  margin: 0;
}

.agent .agent-content .agent-contact-details {
  list-style: none;
  padding: 0;
  margin: 0;
  color: #909090;
  display: block;
  padding: 18px 32px;
  background-color: #f7f7f7;
}

.agent .agent-content .agent-contact-details li {
  position: relative;
  margin-left: 28px;
  line-height: 24px;
  padding: 3px 0;
  word-break: break-all;
}

.agent .agent-content .agent-contact-details li i {
  font-size: 18px;
  top: 5px;
  left: -28px;
  position: absolute;
}

.agent .agent-content .agent-contact-details li span {
  display: inline-block;
  font-size: 16px;
}

.agent .agent-content .social-icons {
  padding: 10px 17px;
  margin: 0;
}

.agent .agent-content .social-icons li {
  list-style: none;
  display: inline-block;
}

.agent .agent-content .social-icons li a {
  padding: 8px 15px;
  display: inline-block;
}

.sales_overview .table tbody tr td,
.sales_overview .table tbody th td {
  padding: 14px 10px;
}

.inbox-widget {
  margin: 0;
}

.inbox-widget .inbox-inner {
  float: left;
  width: 100%;
  border-bottom: 1px solid #efefef;
  padding: 21px 0px;
}

.inbox-widget .inbox-inner:last-child {
  margin-bottom: 0;
  border: 0;
}

.inbox-widget .inbox-inner a:hover {
  text-decoration: none;
}

.inbox-widget .inbox-inner .inbox-img {
  width: 50px;
  float: left;
}

.inbox-widget .inbox-inner .inbox-img img {
  border-radius: 50%;
  width: 50px;
  height: 50px;
  border: 2px solid #fff;
}

.inbox-widget .inbox-inner .inbox-item-info {
  margin-left: 60px;
  position: relative;
}

.inbox-widget .inbox-inner .inbox-item-info .inbox-date {
  font-size: 12px;
}

.inbox-widget .inbox-inner .inbox-item-info .author {
  font-size: 14px;
  color: #3d4c5a;
  margin-bottom: 0;
  font-weight: 600;
}

.inbox-widget .inbox-inner .inbox-item-info .inbox-message {
  margin-bottom: 0px;
  color: #7e7c7c;
  width: 100%;
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.visitors-map .progress-list {
  position: relative;
}

.visitors-map .progress-list .status {
  display: inline-block;
  font-size: 11px;
  padding: 6px;
}

.visitors-map .progress-list .details {
  display: inline-block;
  float: left;
}

.visitors-map .progress-list .details .description {
  text-transform: uppercase;
  font-size: 11px;
  color: #7d8c95;
  line-height: 14px;
}

.visitors-map .progress-list .progress.progress-xs {
  height: 6px;
  margin-top: 3px;
}

.members_profiles .table tbody tr td,
.members_profiles .table tbody th td {
  padding: 10px;
  vertical-align: middle;
}

.member-card {
  text-align: center;
}

.member-card .header {
  min-height: 150px;
}

.member-card .member-img {
  position: relative;
  margin-top: -70px;
}

.member-card .member-img img {
  width: 150px;
  border: 3px solid #fff;
  box-shadow: 0px 10px 25px 0px rgba(0, 0, 0, 0.3);
}

.member-card .text-pink {
  display: block;
}

.member-card .social-links li a {
  padding: 5px 10px;
}

.social-widget .text {
  margin-top: 0 !important;
}

.social-widget .facebook-widget .icon i {
  color: #3b5998;
}

.social-widget .google-widget .icon i {
  color: #d34836;
}

.social-widget .twitter-widget .icon i {
  color: #0084b4;
}

.social-widget .instagram-widget .icon i {
  color: #fb3958;
}

.social-widget .linkedin-widget .icon i {
  color: #0077b5;
}

.social-widget .behance-widget .icon i {
  color: #053eff;
}

.line-chart {
  animation: fadeIn 600ms cubic-bezier(0.57, 0.25, 0.65, 1) 1 forwards;
  opacity: 0;
  max-width: 640px;
  width: 100%;
}

.line-chart .aspect-ratio {
  height: 0;
  padding-bottom: 50%;
}

.profile_state li:last-child {
  border: none;
}

.profile_state li i {
  font-size: 25px;
}

.top-report .progress {
  height: 3px;
  margin-bottom: 10px;
}

.tasks_report .body {
  padding-top: 40px !important;
  padding-bottom: 40px !important;
}

.tasks_report .body h6 {
  text-transform: unset;
}

.social_media_table .table tbody tr td {
  vertical-align: middle;
}

.social_media_table .list-icon {
  display: inline-block;
  width: 40px;
  height: 40px;
  border-radius: 50px;
  line-height: 40px;
}

.social_media_table .linkedin {
  background: #007bb5;
}

.social_media_table .twitter-table {
  background: #55acee;
}

.social_media_table .facebook {
  background: #007bb5;
}

.social_media_table .google {
  background: #dd4b39;
}

.social_media_table .youtube {
  background: #bb0000;
}

.social_media_table .list-name {
  display: block;
  text-transform: uppercase;
}

.new_friend_list li a:hover,
.new_friend_list li a:focus {
  text-decoration: none;
}

.new_friend_list li .users_name {
  color: #424242;
  text-transform: capitalize;
}

.new_friend_list li .join_date {
  color: #757575;
}

.card-group .card + .card {
  border-left: 1px solid #ccc;
}

.widget_2 li {
  border-right: 1px solid #eee;
}

.widget_2 li:last-child {
  border: none;
}

.widget_2 .body {
  padding: 25px;
}

.widget_2 h2 {
  font-weight: 300;
  color: #bdbdbd;
  margin-top: -10px;
}

.activity_2 h5 {
  color: #fff;
}

.activity_2 .profile_state li {
  border: 1px solid #eee;
}

.w_calender .date {
  height: 150px;
  border-radius: 3px 3px 0 0;
  text-align: center;
}

.w_calender .days {
  text-align: center;
  clear: both;
}

.w_calender span {
  display: block;
  color: #fff;
  font-weight: 400;
  font-size: 25px;
}

.w_calender span + span {
  padding: 5px 25px;
  font-size: 16px;
  border-radius: 20px;
  display: inline-block;
}

.w_calender ul {
  list-style-type: none;
  padding: 0;
}

.w_calender ul li {
  display: inline-block;
  width: 13%;
  font-size: 16px;
  text-align: center;
}

.w_calender ul:nth-of-type(2) {
  line-height: 20px;
}

.w_calender ul:nth-of-type(3) {
  line-height: 20px;
}

.w_calender ul:nth-of-type(4) {
  line-height: 20px;
}

.w_calender ul:nth-of-type(5) {
  line-height: 20px;
}

.w_calender ul:nth-of-type(6) {
  line-height: 20px;
}

.w_calender ul:nth-of-type(6) li:nth-child(1n + 4) {
  color: #bdc3c7;
}

.w_calender em {
  padding: 8px;
  color: #fff;
  border-radius: 50px;
  box-shadow: 0px 8px 20px 0px rgba(0, 0, 0, 0.2);
}

@media only screen and (max-width: 992px) {
  .chat-widget .chat-scroll-list li {
    width: 100%;
    max-width: initial;
  }
  .chat-widget .chat-scroll-list li .message {
    display: block;
  }
  .widget_2 li {
    border: 1px solid #eee !important;
  }
}

.contact .btn-group {
  box-shadow: none;
}

.contact .c_list {
  background: #fff;
  padding: 10px 2px;
  margin-bottom: 1px;
  position: relative;
}

.contact .c_list:hover {
  background: #fff3e0;
}

.contact .c_list:hover .action_btn {
  display: block;
}

.contact .c_list .action_btn {
  display: none;
  position: absolute;
  right: 50px;
  top: 17px;
}

.contact .c_list .action_btn .btn {
  box-shadow: none;
}

.contact .c_list .control {
  float: left;
  width: 50px;
  text-align: center;
}

.contact .c_list .control .checkbox label {
  margin-bottom: 3px;
  margin-top: 4px;
}

.contact .c_list .avatar {
  float: left;
  margin-right: 20px;
}

.contact .c_list .avatar img {
  width: 45px;
  margin-top: 4px;
}

.contact .c_list .u_name {
  float: left;
}

.contact .c_list .u_name .c_name {
  margin-top: 3px;
  font-size: 17px;
  font-weight: 600;
}

.contact .c_list .email {
  display: block;
}

.contact .c_list .email a {
  color: #616161;
}

.contact .c_list .email a:hover {
  text-decoration: none;
}

.contact .c_list .email i {
  font-size: 15px;
  width: 25px;
  text-align: center;
}

.contact .c_list .phone {
  margin-top: 7px;
  font-weight: normal;
  color: #757575;
}

.contact .c_list .phone i {
  width: 20px;
  font-size: 15px;
}

.contact .c_list address i {
  width: 25px;
  font-size: 15px;
  text-align: center;
}

.contact .c_list .header-dropdown {
  float: right;
  margin-top: 8px;
  margin-right: 10px;
}

.contact .c_list .header-dropdown .dropdown .dropdown-toggle {
  padding: 10px;
  display: inline-block;
}

.profile-page .profile-header {
  background: transparent url("/resourses/images/profilebg.jpg") repeat scroll center
    center/cover;
  padding-bottom: 30px;
  padding-top: 30px;
  position: relative;
}

.profile-page .profile-header .profile_info {
  margin: 0;
}

.profile-page .profile-header .profile_info .profile-image img {
  border-radius: 50%;
  width: 180px;
  border: 3px solid #fff;
  box-shadow:
    0 3px 6px rgba(0, 0, 0, 0.16),
    0 3px 6px rgba(0, 0, 0, 0.23);
}

.profile-page .profile-header .profile_info .social-icon a {
  margin: 0 5px;
}

.profile-page .profile-sub-header {
  min-height: 60px;
  width: 100%;
  margin-bottom: 15px;
}

.profile-page .profile-sub-header .box-list ul {
  display: inline-table;
  padding: 0;
  margin: 0;
  table-layout: fixed;
  width: 100%;
  background: #f2f2f2;
}

.profile-page .profile-sub-header .box-list ul li {
  border-right: 1px solid #dedede;
  border-bottom: 1px solid #dedede;
  display: table-cell;
  list-style: outside none none;
}

.profile-page .profile-sub-header .box-list ul li:first-child {
  border-left: 1px solid #dedede;
}

.profile-page .profile-sub-header .box-list ul li a {
  display: block;
  padding: 15px 0;
  color: #444;
}

.profile-page .profile-sub-header .box-list ul li a:hover {
  text-decoration: none;
  color: #fff;
}

.profile-page .profile-sub-header .box-list ul li a i {
  font-size: 20px;
}

.profile-page .profile-sub-header .box-list ul li a p {
  margin: 0;
}

.profile-page #mypost .mypost-form .form-group {
  margin: 0;
}

.profile-page #mypost .mypost-form .form-group .form-control {
  height: auto;
}

.profile-page #mypost .post-box {
  position: relative;
}

.profile-page #mypost .post-box .date {
  background: #000;
  padding: 5px 10px;
  color: #fff;
  position: absolute;
  top: 20px;
  border-radius: 0 3px 3px 0;
}

.profile-page #mypost .post-box .post-img {
  overflow: hidden;
}

.profile-page #timeline .timeline {
  border-left: 1px solid #dedede;
  font-size: 14px;
  position: relative;
}

.profile-page #timeline .timeline .border-info {
  border-color: #03a9f4;
}

.profile-page #timeline .timeline .border-warning {
  border-color: #fbc02d;
}

.profile-page #timeline .timeline .border-danger {
  border-color: #f44336;
}

.profile-page #timeline .timeline .timeline-item {
  padding-bottom: 1px;
  position: relative;
}

.profile-page #timeline .timeline .timeline-item:after {
  background-color: #fff;
  border-color: inherit;
  border-radius: 50%;
  border-style: solid;
  border-width: 2px;
  content: "";
  height: 11px;
  left: 0;
  margin-left: -6px;
  position: absolute;
  width: 11px;
  bottom: auto;
  clear: both;
  top: 4px;
}

.profile-page #timeline .timeline .timeline-item .item-content {
  margin-left: 24px;
  margin-top: 0;
}

.profile-page #timeline .timeline .timeline-item .item-content p {
  font-weight: 400;
  color: #444;
}

@media only screen and (max-width: 414px) {
  .profile-page .profile-sub-header .box-list li a {
    padding: 20px 0 !important;
  }
  .profile-page .profile-sub-header .box-list li p {
    display: none;
  }
}

.pricing {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: center;
  justify-content: center;
  width: 100%;
  margin: 0 auto 3em;
}

.pricing-item {
  position: relative;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-align-items: stretch;
  align-items: stretch;
  text-align: center;
  -webkit-flex: 0 1 350px;
  flex: 0 1 350px;
}

.pricing-action {
  color: inherit;
  border: none;
  background: none;
}

.pricing-action:focus {
  outline: none;
}

.pricing-palden .pricing-item {
  cursor: default;
  background: #fff;
  box-shadow: 0 0 10px rgba(46, 59, 125, 0.23);
  border-radius: 20px 20px 10px 10px;
  margin: 1em;
}

.pricing-palden .pricing-item:hover .deco-layer--1 {
  -webkit-transform: translate3d(15px, 0, 0);
  transform: translate3d(15px, 0, 0);
}

.pricing-palden .pricing-item:hover .deco-layer--2 {
  -webkit-transform: translate3d(-15px, 0, 0);
  transform: translate3d(-15px, 0, 0);
}

.pricing-palden .pricing-item .pricing-deco {
  border-radius: 10px 10px 0 0;
  padding: 50px 0 160px;
  position: relative;
}

.pricing-palden .pricing-item .pricing-deco .pricing-deco-img {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 160px;
}

.pricing-palden .pricing-item .pricing-deco .deco-layer {
  -webkit-transition: -webkit-transform 0.5s;
  transition: transform 0.5s;
}

.pricing-palden .pricing-item .pricing-deco .pricing-title {
  font-size: 18px;
  margin: 0;
  text-transform: uppercase;
  letter-spacing: 2px;
  color: #fff;
}

.pricing-palden .pricing-item .pricing-deco .pricing-price {
  font-size: 5em;
  font-weight: bold;
  padding: 0;
  color: #fff;
  margin: 0 0 0.25em 0;
  line-height: 0.75;
}

.pricing-palden .pricing-item .pricing-deco .pricing-price .pricing-currency {
  font-size: 15px;
  vertical-align: top;
}

.pricing-palden .pricing-item .pricing-deco .pricing-price .pricing-period {
  font-size: 15px;
  padding: 0 0 0 0.5em;
  font-style: italic;
}

.pricing-palden .pricing-item .feature-list {
  margin: 0;
  padding: 0.25em 0 2.5em;
  list-style: none;
  text-align: center;
}

.pricing-palden .pricing-item .feature-list li {
  padding: 10px 0;
}

.pricing-palden .pricing-action {
  font-weight: bold;
  margin: auto 3em 2em 3em;
  padding: 1em 2em;
  color: #fff;
  border-radius: 30px;
  -webkit-transition: background-color 0.3s;
  transition: background-color 0.3s;
}

@media screen and (max-width: 1400px) {
  .pricing-palden .pricing-item {
    flex: 0 1 310px;
  }
}

@media screen and (max-width: 1024px) {
  .pricing-palden .pricing-item {
    flex: 0 1 280px;
  }
}

@media screen and (max-width: 767px) {
  .pricing-palden .pricing-item {
    flex: 0 1 100%;
    margin: 15px 0;
  }
}

@media screen and (min-width: 1024px) {
  .pricing-palden .pricing-item {
    margin: 1em -0.5em;
  }
  .pricing-palden .pricing__item--featured {
    margin: 0;
    z-index: 10;
    box-shadow: 0 0 20px rgba(46, 59, 125, 0.23);
  }
}

html.ie10 .sidebar .menu .list li {
  line-height: 30px;
}

html.ie10
  .sidebar
  .menu
  .list
  .ml-menu
  li.active
  a:not(.menu-toggle).toggled:before {
  top: 6px !important;
  line-height: 20px !important;
}

html.ie10 .sidebar .user-info .info-container {
  top: 15px;
}

html.ie10 .search-bar input[type="text"] {
  padding: 26px 60px 26px 56px;
}

html.ie10 .dropdown-menu ul.menu li a {
  margin-top: -22px;
}

html.ie10 .bs-searchbox .form-control {
  width: 90%;
}

html.ie11
  .sidebar
  .menu
  .list
  .ml-menu
  li.active
  a:not(.menu-toggle).toggled:before {
  top: 6px !important;
  line-height: 20px !important;
}

html.ie11 .sidebar .user-info .info-container {
  top: 15px;
}

html.ie11 .search-bar input[type="text"] {
  padding: 26px 60px 26px 56px;
}

html.ie11 .dropdown-menu ul.menu li a {
  margin-top: -22px;
}

html.ie11 .bs-searchbox .form-control {
  width: 90%;
}

/* Evitar que la fila del banner se comporte como grid con wrap */
.row.news-banner {
  display: block;        /* deja de ser flex de Bootstrap */
  margin-left: 0;
  margin-right: 0;
}

/* ============================================
   APPS MAPA - CLIMA HEADER
   ============================================ */
.view-mapa .mapa-clima-wrap {
  display: inline-flex;
  align-items: center;
  min-width: 0;
  width: 100%;
  padding: 6px 8px;
  border-radius: 8px;
  background: rgba(127, 181, 255, 0.22);
  border: 1px solid rgba(52, 64, 84, 0.08);
}

.view-mapa .mapa-clima-icon {
  font-size: 20px;
  color: #78909c;
  width: 24px;
  height: 24px;
  min-width: 24px;
  line-height: 24px;
  text-align: center;
  flex: 0 0 24px;
}

.view-mapa .mapa-clima-info {
  display: flex;
  flex-direction: column;
  line-height: 1;
  min-width: 0;
  flex: 1 1 auto;
  width: 100%;
  max-width: 100%;
}

.view-mapa .mapa-clima-mainline {
  display: flex;
  align-items: center;
  gap: 4px;
  min-width: 0;
  white-space: normal;
  overflow: hidden;
}

.view-mapa #mapa_clima_desc {
  display: inline-block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.view-mapa .mapa-clima-marquee {
  position: relative;
  display: block;
  width: 100%;
  max-width: 100%;
  min-height: 11px;
  overflow: hidden;
  white-space: nowrap;
  line-height: 1;
}

@media (max-width: 1366px) {
  .view-mapa .mapa-clima-icon {
    font-size: 18px;
  }

  .view-mapa #mapa_clima_temp {
    font-size: 11px;
  }

  .view-mapa #mapa_clima_desc,
  .view-mapa .mapa-clima-marquee-piece {
    font-size: 9px;
  }

  .view-mapa .mapa-clima-marquee-piece {
    padding-right: 12px;
  }

  .view-mapa .mapa-clima-marquee-piece .material-icons {
    font-size: 9px;
  }
}

.view-mapa .mapa-clima-marquee-track {
  display: inline-flex;
  align-items: center;
  white-space: nowrap;
  width: max-content;
  animation-name: mapa-clima-marquee-scroll;
  animation-duration: var(--mapa-clima-marquee-duration, 18s);
  animation-timing-function: linear;
  animation-iteration-count: infinite;
  will-change: transform;
}

.view-mapa .mapa-clima-marquee-piece {
  display: inline-flex;
  align-items: center;
  color: #455a64;
  font-size: 10px;
  padding-right: 16px;
}

.view-mapa .mapa-clima-marquee-piece i {
  font-size: 10px;
  margin-right: 2px;
  vertical-align: middle;
  color: #546e7a;
}

.view-mapa .mapa-clima-marquee-sep {
  opacity: 0.45;
  margin: 0 6px;
}

.view-mapa .mapa-clima-loading {
  color: #78909c;
  font-style: italic;
}

.view-mapa .mapa-clima-loading i {
  font-size: 10px;
  margin-right: 3px;
  vertical-align: middle;
  animation: mapa-clima-spin 1.2s linear infinite;
}

@keyframes mapa-clima-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

@keyframes mapa-clima-marquee-scroll {
  0% {
    transform: translate3d(0, 0, 0);
  }
  100% {
    transform: translate3d(-50%, 0, 0);
  }
}

/* Modal mapa (penalizar, etc.): label arriba + input (sin solapar con placeholder) */
.view-mapa .colaby-popup-modal .colaby-popup-field-label {
  display: block;
  margin-bottom: 6px;
  font-size: 13px;
  font-weight: 600;
  color: var(--colaby-dark, #344054);
}

.view-mapa .colaby-popup-modal .colaby-popup-body .form-control,
.view-mapa .colaby-popup-modal .colaby-popup-body input.datepicker {
  border: 1px solid rgba(52, 64, 84, 0.32);
  border-radius: 6px;
  background: #f8fafc;
  color: #1f2937;
  padding: 10px 12px;
  min-height: 40px;
}

.view-mapa .colaby-popup-modal .colaby-popup-body .form-control:focus,
.view-mapa .colaby-popup-modal .colaby-popup-body input.datepicker:focus {
  background: #fff;
  border-color: #1f91f3;
  box-shadow: 0 0 0 2px rgba(31, 145, 243, 0.18);
}

/* ============================================
   VIEW TELEFONÍA — listas, botones, modales
   ============================================ */
.view-telefonia .telefonia-table-thead {
  background: var(--colaby-primary) !important;
  color: #fff !important;
}

.view-telefonia .telefonia-table-thead th {
  border-color: rgba(255, 255, 255, 0.2) !important;
  font-weight: 600;
}

.view-telefonia .telefonia-btn-limpiar {
  background: var(--colaby-warning) !important;
  color: #fff !important;
  border: 1px solid rgba(52, 64, 84, 0.1);
}

.view-telefonia .telefonia-btn-limpiar:hover {
  filter: brightness(0.96);
  color: #fff;
}

.view-telefonia .telefonia-btn-negativos {
  background: var(--colaby-deuda) !important;
  color: #fff !important;
  border: 1px solid rgba(52, 64, 84, 0.12);
}

.view-telefonia .telefonia-btn-negativos:hover {
  filter: brightness(0.96);
  color: #fff;
}

.view-telefonia .telefonia-ultimos-vacio {
  color: var(--colaby-gray) !important;
}

.colaby-popup-body.colaby-popup-body--left {
  text-align: left !important;
}

.view-telefonia .colaby-popup-modal .colaby-popup-body.colaby-popup-body--left {
  padding: 1rem 1.25rem;
}

.medios-pago-grid {
  margin-top: 8px;
}

.medios-pago-item {
  border: 1px solid #e3e6ea;
  border-radius: 8px;
  padding: 12px;
  margin-bottom: 12px;
  min-height: 115px;
  background: #fff;
}

.medios-pago-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 8px;
}

.medios-pago-nombre {
  font-weight: 600;
  font-size: 16px;
  color: #2f3a45;
}

.medios-pago-bloqueo {
  font-size: 12px;
  color: #c62828;
  margin-bottom: 6px;
}

.medios-pago-ajuste-row {
  display: flex;
  align-items: center;
  gap: 8px;
}

.medios-pago-ajuste-label {
  min-width: 48px;
  color: #54606b;
  margin: 0;
}

.medios-pago-ajuste-row .empresa-medio-ajuste {
  max-width: 140px;
}

.medios-pago-switch {
  position: relative;
  display: inline-block;
  width: 46px;
  height: 24px;
  margin: 0;
}

.medios-pago-switch input {
  opacity: 0;
  width: 0;
  height: 0;
}

.medios-pago-slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #c5c9ce;
  transition: 0.2s;
  border-radius: 24px;
}

.medios-pago-slider:before {
  position: absolute;
  content: "";
  height: 18px;
  width: 18px;
  left: 3px;
  top: 3px;
  background-color: #fff;
  transition: 0.2s;
  border-radius: 50%;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25);
}

.medios-pago-switch input:checked + .medios-pago-slider {
  background-color: #26a69a;
}

.medios-pago-switch input:checked + .medios-pago-slider:before {
  transform: translateX(22px);
}

.medios-pago-switch input:disabled + .medios-pago-slider {
  opacity: 0.6;
  cursor: not-allowed;
}

.content.view-empresas {
  margin-top: 45px !important;
}

.modal-empresa-body {
  overflow: hidden;
  padding-bottom: 8px;
}

.modal-empresa-footer {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
}

.empresa-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  border-bottom: none;
  margin-bottom: 12px;
}

.empresa-tabs > li {
  float: none;
  margin-bottom: 0;
}

.empresa-tabs > li > a {
  color: var(--colaby-dark) !important;
  font-weight: 600;
  border: 1px solid #e0e0e0 !important;
  border-radius: 4px 4px 0 0;
  background: #f5f5f5 !important;
  padding: 9px 12px;
  margin-right: 0;
  text-decoration: none !important;
}

.empresa-tabs > li.active > a,
.empresa-tabs > li.active > a:hover,
.empresa-tabs > li.active > a:focus,
.empresa-tabs > li > a.active,
.empresa-tabs > li > a.active:hover,
.empresa-tabs > li > a.active:focus {
  color: #fff !important;
  background: var(--colaby-primary) !important;
  border-color: var(--colaby-primary) !important;
  text-decoration: none !important;
}

.empresa-tabs > li > a:hover,
.empresa-tabs > li > a:focus {
  text-decoration: none !important;
}

.empresa-tab-content {
  border-top: 1px solid #e0e0e0;
  margin-top: -1px;
}

.empresa-tab-content > .tab-pane {
  max-height: 56vh;
  overflow-y: auto;
  overflow-x: hidden;
  padding-right: 4px;
}

.empresa-logo {
  width: 36px;
  height: 36px;
  object-fit: contain;
  border-radius: 4px;
  background: #f5f5f5;
  padding: 2px;
}

.empresa-estado-badge {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  display: inline-block;
}

.empresa-estado-badge.habilitada {
  background-color: #4caf50;
}

.empresa-estado-badge.deshabilitada {
  background-color: #f44336;
}

#mapaCentroEmpresa {
  height: 280px;
  border-radius: 8px;
  border: 1px solid #ddd;
}

#mapa_viaje_barra_confirmacion .btn {
  font-size: 10px;
  padding: 2px 6px;
}

#mapa_viaje_barra_confirmacion .material-icons {
  font-size: 14px;
}

/* App Telefonia - Botones Cargar Domicilio y Marcadores Origen/Destino */
.btn-domicilio-ori,
.btn-domicilio-des {
  border-color: transparent !important;
  color: #fff !important;
}

.btn-domicilio-ori {
  background-color: var(--colaby-primary) !important;
  border-color: var(--colaby-primary) !important;
}

.btn-domicilio-des {
  background-color: var(--colaby-blue) !important;
  border-color: var(--colaby-blue) !important;
}

.btn-domicilio-ori:hover,
.btn-domicilio-ori:focus,
.btn-domicilio-ori:active,
.btn-domicilio-des:hover,
.btn-domicilio-des:focus,
.btn-domicilio-des:active {
  color: #fff !important;
}

.btn-domicilio-ori:hover,
.btn-domicilio-ori:focus,
.btn-domicilio-ori:active {
  background-color: var(--colaby-primary) !important;
  border-color: var(--colaby-primary) !important;
}

.btn-domicilio-des:hover,
.btn-domicilio-des:focus,
.btn-domicilio-des:active {
  background-color: var(--colaby-blue) !important;
  border-color: var(--colaby-blue) !important;
}

.btn-domicilio-ori .material-icons,
.btn-domicilio-des .material-icons,
.btn-domicilio-ori .btn-domicilio-letra,
.btn-domicilio-des .btn-domicilio-letra {
  color: #fff !important;
}

/* Marcador liviano (sin PNG): círculo O/D con color por direccion */
.map-marker-direccion {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  box-sizing: border-box;
  border: 1px solid #ffffff;
  background-color: var(--marker-dir-color);
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 3px 8px rgba(0, 0, 0, 0.25);
  position: relative;
  overflow: visible;
}

.map-marker-direccion::before {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -9px;
  transform: translateX(-50%);
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-top: 9px solid #ffffff;
}

.map-marker-direccion::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -8px;
  transform: translateX(-50%);
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: 8px solid var(--marker-dir-color);
}

.map-marker-direccion--origen {
  --marker-dir-color: var(--colaby-primary);
}

.map-marker-direccion--destino {
  --marker-dir-color: var(--colaby-blue);
}

.map-marker-direccion__letra {
  color: #ffffff;
  font-weight: 900;
  font-size: 14px;
  line-height: 1;
}

.map-marker-direccion-container {
  background: transparent !important;
  border: 0 !important;
}

#context-menu .list-group-item i,
#context-menu-viajes .list-group-item i {
  float: none !important;
  display: inline-block;
  width: 16px;
  text-align: center;
  margin-right: 8px;
  vertical-align: middle;
}

/* App Telefonia - Negativos/Reservas */
#ListaNegativos table tbody tr,
#ListaReservas table tbody tr {
  cursor: pointer !important;
}

#ListaNegativos table tbody tr:hover,
#ListaReservas table tbody tr:hover {
  background-color: rgba(13, 110, 253, 0.08);
}

#ListaNegativos table td,
#ListaReservas table td {
  vertical-align: middle;
}

/* App Telefonia - Tabs reservas (modalAgendarViaje) */
#modalAgendarViaje .nav-tabs .nav-link.active {
  color: #fff !important;
}

#modalAgendarViaje .nav-tabs .nav-link.active:hover,
#modalAgendarViaje .nav-tabs .nav-link.active:focus,
#modalAgendarViaje .nav-tabs .nav-link[aria-selected="true"] {
  color: #fff !important;
}

#modalAgendarViaje_tabs .nav-tabs .nav-link.active,
#modalAgendarViaje_tabs .nav-tabs .nav-link.active:hover,
#modalAgendarViaje_tabs .nav-tabs .nav-link.active:focus {
  color: #fff !important;
}

#modalAgendarViaje_tabs .nav-tabs .nav-link.active * {
  color: #fff !important;
}

/* App Telefonia - Botones Cerrar/Cancelar de modales */
#modalNegativos .modal-footer .btn.btn-link.waves-effect,
#ListaReservas .modal-footer .btn.btn-link.waves-effect,
#modalUbicar .modal-footer .btn.btn-link.waves-effect,
#modalAgendar .modal-footer .btn.btn-link.waves-effect,
#modalAgendarViaje .modal-footer .btn.btn-link.waves-effect {
  color: #fff !important;
  background-color: #6c757d !important;
  border: 1px solid #5a6268 !important;
  border-radius: 0.25rem;
  padding: 0.35rem 0.75rem;
  text-decoration: none;
}

#modalNegativos .modal-footer .btn.btn-link.waves-effect:hover,
#ListaReservas .modal-footer .btn.btn-link.waves-effect:hover,
#modalUbicar .modal-footer .btn.btn-link.waves-effect:hover,
#modalAgendar .modal-footer .btn.btn-link.waves-effect:hover,
#modalAgendarViaje .modal-footer .btn.btn-link.waves-effect:hover {
  background-color: #5a6268 !important;
  border-color: #4e555b !important;
}

/* App Mapa - Layout fijo paneles + grilla de moviles */
.view-mapa {
  --appmapa-grid-item-size: 42px;
  --appmapa-grid-gap: 2px;
  --appmapa-left-panel-width: calc(
    (var(--appmapa-grid-item-size) * 6) + (var(--appmapa-grid-gap) * 5) + 24px
  );
}

.view-mapa .appmapa-layout {
  display: grid;
  grid-template-columns: var(--appmapa-left-panel-width) minmax(0, 1fr);
  margin-left: 0;
  margin-right: 0;
  width: 100%;
  min-width: 0 !important;
}

.view-mapa #PanelIzq.appmapa-panel-izq {
  width: var(--appmapa-left-panel-width);
  min-width: var(--appmapa-left-panel-width);
}

.view-mapa #PanelDer.appmapa-panel-der {
  width: 100%;
  min-width: 0 !important;
  overflow: hidden;
}

.view-mapa #map {
  background: #f3f6fa;
}

.view-mapa .moviles-grid {
  display: grid;
  grid-template-columns: repeat(6, var(--appmapa-grid-item-size));
  gap: var(--appmapa-grid-gap);
  align-content: start;
  justify-content: flex-start;
}

.view-mapa .movil-grid-item {
  width: 100%;
  min-height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 4px;
  font-size: 11px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  cursor: pointer;
  user-select: none;
  padding: 0 4px;
  transition: box-shadow 0.12s ease, border-color 0.12s ease;
}

.view-mapa .movil-grid-item.movil-desconectado {
  opacity: 0.4;
}

.view-mapa .movil-grid-item.movil-grid-highlight {
  animation: movilFlashStrong 0.32s ease-in-out 2;
}

@keyframes movilFlashStrong {
  0% {
    border-color: #ff1744;
    box-shadow: 0 0 0 4px rgba(255, 23, 68, 0.95);
  }

  50% {
    border-color: #ffea00;
    box-shadow: 0 0 0 5px rgba(255, 234, 0, 0.98);
  }

  100% {
    border-color: #ff1744;
    box-shadow: 0 0 0 4px rgba(255, 23, 68, 0.95);
  }
}

.leaflet-marker-icon.map-marker-flash-strong {
  animation: markerFlashStrong 0.32s ease-in-out 2;
}

.leaflet-marker-icon .map-marker-flash-strong-inner {
  animation: markerFlashStrongInner 0.32s ease-in-out 2;
}

.view-mapa .linea-despacho-borde {
  filter: drop-shadow(0 0 2px rgba(0, 0, 0, 0.9));
}

.view-mapa .linea-despacho-core {
  stroke-linecap: round;
  stroke-linejoin: round;
  filter: drop-shadow(0 0 5px rgba(255, 255, 255, 0.7))
    drop-shadow(0 0 7px rgba(255, 23, 68, 0.65));
  animation: viajeLineaDashMove 0.8s linear infinite, viajeLineaPulse 0.85s ease-in-out infinite;
}

.view-mapa .linea-destino-borde {
  filter: drop-shadow(0 0 2px rgba(93, 42, 38, 0.95));
}

.view-mapa .linea-destino-core {
  stroke-linecap: round;
  stroke-linejoin: round;
  filter: drop-shadow(0 0 5px rgba(242, 139, 130, 0.85))
    drop-shadow(0 0 8px rgba(242, 139, 130, 0.55));
  animation: destinoLineaDashMove 0.75s linear infinite,
    destinoLineaPulse 0.9s ease-in-out infinite;
}

@keyframes markerFlashStrong {
  0% {
    filter: brightness(1) drop-shadow(0 0 0 #ff1744);
    opacity: 1;
  }

  40% {
    filter: brightness(1.8) drop-shadow(0 0 12px #ff1744)
      drop-shadow(0 0 10px #ffea00);
    opacity: 1;
  }

  100% {
    filter: brightness(1) drop-shadow(0 0 0 #ff1744);
    opacity: 1;
  }
}

@keyframes markerFlashStrongInner {
  0% {
    box-shadow: 0 0 0 0 rgba(255, 23, 68, 0);
    border-color: inherit;
  }

  40% {
    box-shadow: 0 0 0 4px rgba(255, 23, 68, 0.95), 0 0 0 7px rgba(255, 234, 0, 0.9);
    border-color: #ff1744 !important;
  }

  100% {
    box-shadow: 0 0 0 0 rgba(255, 23, 68, 0);
    border-color: inherit;
  }
}

@keyframes viajeLineaDashMove {
  to {
    stroke-dashoffset: -24;
  }
}

@keyframes viajeLineaPulse {
  0% {
    stroke-opacity: 0.85;
  }
  50% {
    stroke-opacity: 1;
  }
  100% {
    stroke-opacity: 0.85;
  }
}

@keyframes destinoLineaDashMove {
  to {
    stroke-dashoffset: -26;
  }
}

/* =========================
   Chat Clientes (Telefonía)
   ========================= */
.view-chatclientes .view-chatclientes-main {
  margin: 0 !important;
}

.view-chatclientes .view-chatclientes-telefonia {
  width: min(560px, 44vw);
  max-width: 100%;
}

.view-chatclientes .view-chatclientes-telefonia-cols {
  gap: 2px;
}

.view-chatclientes .view-chatclientes-col-half {
  flex: 1 1 0;
  min-width: 0;
}

.view-chatclientes .view-telefonia-col2,
.view-chatclientes .view-telefonia-col3 {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.view-chatclientes .view-chatclientes-cliente-bar {
  margin-bottom: 0 !important;
}

.view-chatclientes .view-chatclientes-userbar {
  margin-bottom: 0 !important;
}

.view-chatclientes .view-chatclientes-topbars {
  margin-bottom: 4px;
}

.view-chatclientes .view-chatclientes-topbars {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

@keyframes destinoLineaPulse {
  0% {
    stroke-opacity: 0.88;
  }
  50% {
    stroke-opacity: 1;
  }
  100% {
    stroke-opacity: 0.88;
  }
}
