@charset "UTF-8";
@import 'app.css';
:root {
  --grey-shades-900: #212121;
  --grey-shades-800: #424242;
  --grey-shades-700: #616161;
  --grey-shades-600: #757575;
  --grey-shades-500: #9E9E9E;
  --grey-shades-400: #BDBDBD;
  --grey-shades-300: #E0E0E0;
  --grey-shades-200: #EEEEEE;
  --grey-shades-100: #F5F5F5;
  --grey-shades-50: #FEFEFE;
  --status-primary-background: #CCE5FF;
  --status-primary-text: #195392;
  --status-secondary-background:#EEEEEE;
  --status-secondary-text: #383D41;
  --status-info-background: #E4EBFF;
  --status-info-text: #324EBE;
  --status-success-background: #D4EDDA;
  --status-success-text: #258A3B;
  --status-error-background: #F8D7DA;
  --status-error-text: #B13333;
  --status-warning-background: #FFF3CD;
  --status-warning-text: #9E7A18;
  --status-neutral-1-background: #E6EDD2;
  --status-neutral-1-text: #6B8D0B;
  --status-neutral-2-background: #EDDDD2;
  --status-neutral-2-text: #805435;
  --btn-danger: #A72A2A;
  --btn-danger-hover: #6E1B1B;
}

.warning-color {
  color: var(--status-warning-text) !important;
}

.error-color {
  color: var(--status-error-text) !important;
}

.success-color {
  color: var(--status-success-text) !important;
}

.warning-background {
  background-color: var(--status-warning-text) !important;
}

.error-background {
  background-color: var(--status-error-text) !important;
}

.success-background {
  background-color: var(--status-success-text) !important;
}

.background-status-primary {
  background-color: var(--status-primary-background) !important;
}

.background-status-secondary {
  background-color: var(--status-secondary-background) !important;
}

.background-status-info {
  background-color: var(--status-info-background) !important;
}

.background-status-error {
  background-color: var(--status-error-background) !important;
}

.background-status-warning {
  background-color: var(--status-warning-background) !important;
}

.background-status-success {
  background-color: var(--status-success-background) !important;
}

.background-status-neutral-1 {
  background-color: var(--status-neutral-1-background) !important;
}

.background-status-neutral-2 {
  background-color: var(--status-neutral-2-background) !important;
}

.background-status-neutral {
  /* Un punto más oscuro que el gris de bordes: sobre fondo blanco, #EEEEEE no
     llegaba a leerse como fila resaltada */
  background-color: var(--secondary-shades-300) !important;
}

.background-status-transparent {
  background-color: transparent !important;
}

.color-primary-900 {
  color: var(--primary-shades-900) !important;
}

.color-primary-800 {
  color: var(--primary-shades-800) !important;
}

.color-primary-700 {
  color: var(--primary-shades-700) !important;
}

.color-primary-600 {
  color: var(--primary-shades-600) !important;
}

.color-primary-500 {
  color: var(--primary-shades-500) !important;
}

.color-primary-400 {
  color: var(--primary-shades-400) !important;
}

.color-primary-300 {
  color: var(--primary-shades-300) !important;
}

.color-primary-200 {
  color: var(--primary-shades-200) !important;
}

.color-primary-100 {
  color: var(--primary-shades-100) !important;
}

.color-primary-50 {
  color: var(--primary-shades-50) !important;
}

.color-secondary-900 {
  color: var(--secondary-shades-900) !important;
}

.color-secondary-800 {
  color: var(--secondary-shades-800) !important;
}

.color-secondary-700 {
  color: var(--secondary-shades-700) !important;
}

.color-secondary-600 {
  color: var(--secondary-shades-600) !important;
}

.color-secondary-500 {
  color: var(--secondary-shades-500) !important;
}

.color-secondary-400 {
  color: var(--secondary-shades-400) !important;
}

.color-secondary-300 {
  color: var(--secondary-shades-300) !important;
}

.color-secondary-200 {
  color: var(--secondary-shades-200) !important;
}

.color-secondary-100 {
  color: var(--secondary-shades-100) !important;
}

.color-secondary-50 {
  color: var(--secondary-shades-50) !important;
}

.color-grey-900 {
  color: var(--grey-shades-900) !important;
}

.color-grey-800 {
  color: var(--grey-shades-800) !important;
}

.color-grey-700 {
  color: var(--grey-shades-700) !important;
}

.color-grey-600 {
  color: var(--grey-shades-600) !important;
}

.color-grey-500 {
  color: var(--grey-shades-500) !important;
}

.color-grey-400 {
  color: var(--grey-shades-400) !important;
}

.color-grey-300 {
  color: var(--grey-shades-300) !important;
}

.color-grey-200 {
  color: var(--grey-shades-200) !important;
}

.color-grey-100 {
  color: var(--grey-shades-100) !important;
}

.color-grey-50 {
  color: var(--grey-shades-50) !important;
}

:root {
  @import url("https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap");
  --primary-shades-900: #335E29;
  --primary-shades-800: #467D39;
  --primary-shades-700: #518E42;
  --primary-shades-600: #5CA04D;
  --primary-shades-500: #66AF56;
  --primary-shades-400: #7ABB6F;
  --primary-shades-300: #91C787;
  --primary-shades-200: #AFD6A9;
  --primary-shades-100: #CEE6CA;
  --primary-shades-50: #EAF5E9;
  --secondary-shades-900: #212121;
  --secondary-shades-800: #424242;
  --secondary-shades-700: #616161;
  --secondary-shades-600: #757575;
  --secondary-shades-500: #9E9E9E;
  --secondary-shades-400: #BDBDBD;
  --secondary-shades-300: #E0E0E0;
  --secondary-shades-200: #EEEEEE;
  --secondary-shades-100: #F5F5F5;
  --secondary-shades-50: #FEFEFE;
  --accent: var(--primary-shades-600);
  /* Alineación del logo dentro de la columna del menú. Depende de la forma del
     logo de cada cliente: uno apaisado llena el hueco y se deja a la izquierda; uno
     cuadrado se queda perdido en el borde y pide centrarse. Vive aquí para que
     `header.scss` pueda ser idéntico en todos los clientes. */
  --brand-logo-align: center;
  /* Alto de UNA fila de la barra superior. Lo usan el bloque del logo y el
     propio navbar como min-height. */
  --topbar-row-height: 56px;
  /* Alto TOTAL de la barra superior, que es de donde el contenido, el sidebar y
     los avisos sacan el hueco que tienen que dejarle. Al estrechar la ventana la
     barra se parte en dos filas (o tres en un móvil) y deja de valer 56: por eso
     `doko.js` lo mide y reescribe esta variable en cada cambio de tamaño. El
     valor de aquí es sólo el de arranque, antes de que corra el JS. */
  --topbar-height: 56px;
  --sidebar-background: #164137;
  --sidebar-text-menu: #FEFEFE;
  --sidebar-text-headers: var(--primary-shades-600);
  --sidebar-spacer: var(--primary-shades-800);
  --sidebar-hover-background: linear-gradient(270deg, var(--primary-shades-400) 0%, var(--primary-shades-700) 100%);
  --sidebar-hover-text: var(--primary-shades-50);
  --btn-solid-background-default: var(--primary-shades-600);
  --btn-solid-background-hover: var(--primary-shades-900);
  --btn-solid-border-default: var(--primary-shades-600);
  --btn-solid-border-hover: var(--primary-shades-900);
  --btn-solid-text-default: #fff;
  --btn-solid-text-hover: #fff;
  --btn-outline-background-default: transparent;
  --btn-outline-background-hover: var(--primary-shades-900);
  --btn-outline-border-default: var(--primary-shades-600);
  --btn-outline-border-hover: var(--primary-shades-900);
  --btn-outline-text-default: var(--primary-shades-600);
  --btn-outline-text-hover: #fff;
  --btn-radius: 4px;
  --btn-text-case: none;
}

.font-light {
  font-weight: 300 !important;
}

.font-normal {
  font-weight: 400 !important;
}

.font-medium {
  font-weight: 500 !important;
}

.font-semibold {
  font-weight: 600 !important;
}

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

.text-xs {
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 12px;
  line-height: 150%;
}

.text-sm {
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 14px;
  line-height: 150%;
}

.text-base {
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 16px;
  line-height: 150%;
}

.text-lg {
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 18px;
  line-height: 150%;
}

.text-xl {
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 20px;
  line-height: 150%;
}

.text-2xl {
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 24px;
  line-height: 150%;
}

.text-3xl {
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 30px;
  line-height: 150%;
}

.text-4xl {
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 36px;
  line-height: 150%;
}

body {
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 16px;
  line-height: 150%;
  color: var(--grey-shades-900);
}

.gap-8 {
  gap: 8px;
}

.gap-16 {
  gap: 16px;
}

.gap-1 {
  gap: 0.25rem !important;
}

.gap-2 {
  gap: 0.5rem !important;
}

.gap-3 {
  gap: 1rem !important;
}

.gap-4 {
  gap: 1.5rem !important;
}

.gap-5 {
  gap: 3rem !important;
}

.mt-auto {
  margin-top: auto;
}

.mb-auto {
  margin-bottom: auto;
}

.mr-auto {
  margin-right: auto;
}

.ml-auto {
  margin-left: auto;
}

.topnavbar-wrapper {
  border-bottom: 1px solid var(--grey-shades-200);
}
.topnavbar-wrapper .burguer-menu {
  display: none;
}
@media (max-width: 768px) {
  .topnavbar-wrapper .burguer-menu {
    display: block;
  }
  .topnavbar-wrapper .burguer-menu .sidebar-toggle {
    display: flex;
    height: var(--topbar-row-height);
    justify-content: center;
    align-items: center;
  }
}
.topnavbar-wrapper .navbar {
  min-height: var(--topbar-row-height);
  background-color: #fff;
  background-image: none;
}
.topnavbar-wrapper .navbar .navbar-header {
  width: 228px;
  min-height: var(--topbar-row-height);
  background: var(--sidebar-background);
  box-shadow: 0 1px 0 var(--sidebar-background);
}
@media (max-width: 768px) {
  .topnavbar-wrapper .navbar .navbar-header {
    width: 100%;
  }
}
.topnavbar-wrapper .navbar .navbar-header .brand-logo {
  text-align: var(--brand-logo-align);
  padding: 6px 16px;
}
.topnavbar-wrapper .navbar .navbar-header .brand-logo img {
  height: 40px;
  max-width: 170px;
  object-fit: contain;
  width: auto;
}
.topnavbar-wrapper .navbar .navbar-header .brand-name {
  display: block;
  color: var(--sidebar-text-menu);
  font-size: 18px;
  font-weight: 600;
  line-height: 40px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.topnavbar-wrapper .navbar .navbar-header .brand-logo-collapsed {
  text-align: center;
}
.topnavbar-wrapper .navbar .navbar-header .brand-logo-collapsed .brand-name {
  font-size: 20px;
}
.topnavbar-wrapper .navbar-nav {
  padding: 0px 20px;
  align-items: center;
}
@media (max-width: 768px) {
  .topnavbar-wrapper .navbar-nav {
    padding: 8px 20px;
  }
}
.topnavbar-wrapper .navbar-nav .mainsearch {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  max-width: 420px;
  min-width: 0;
  height: 38px;
  padding: 0 6px 0 14px;
  border: 1.5px solid var(--grey-shades-300);
  border-radius: 999px;
  background: var(--grey-shades-100);
  transition: border-color 0.15s, background-color 0.15s, box-shadow 0.15s;
}
.topnavbar-wrapper .navbar-nav .mainsearch:focus-within {
  border-color: var(--primary-shades-500);
  background: var(--grey-shades-50);
  box-shadow: 0 0 0 3px var(--primary-shades-50);
}
.topnavbar-wrapper .navbar-nav .mainsearch .mainsearch-icon {
  flex: none;
  font-size: 13px;
  color: var(--grey-shades-500);
}
.topnavbar-wrapper .navbar-nav .mainsearch .mainsearch-input {
  flex: 1 1 auto;
  min-width: 0;
  border: 0;
  background: transparent;
  font-size: 14px;
  color: var(--grey-shades-900);
}
.topnavbar-wrapper .navbar-nav .mainsearch .mainsearch-input:focus {
  outline: none;
}
.topnavbar-wrapper .navbar-nav .mainsearch .mainsearch-input::placeholder {
  color: var(--grey-shades-500);
}
.topnavbar-wrapper .navbar-nav .mainsearch .mainsearch-input::-webkit-search-cancel-button {
  display: none;
}
.topnavbar-wrapper .navbar-nav .mainsearch .mainsearch-clear {
  flex: none;
  display: none;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: transparent;
  color: var(--grey-shades-500);
  font-size: 12px;
  cursor: pointer;
}
.topnavbar-wrapper .navbar-nav .mainsearch .mainsearch-clear:hover {
  background: var(--grey-shades-200);
  color: var(--grey-shades-900);
}
.topnavbar-wrapper .navbar-nav .mainsearch.has-text .mainsearch-clear {
  display: inline-flex;
}
.topnavbar-wrapper .navbar-nav .mainsearch .mainsearch-go {
  flex: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border: 0;
  border-radius: 50%;
  background: var(--primary-shades-600);
  color: #fff;
  font-size: 12px;
  opacity: 0;
  transform: scale(0.85);
  transition: opacity 0.15s, transform 0.15s;
}
.topnavbar-wrapper .navbar-nav .mainsearch .mainsearch-go:hover {
  background: var(--primary-shades-800);
}
.topnavbar-wrapper .navbar-nav .mainsearch:focus-within .mainsearch-go {
  opacity: 1;
  transform: none;
}
.topnavbar-wrapper .navbar-nav.tickerbar {
  gap: 12px;
  flex-wrap: wrap;
  justify-content: flex-end;
  min-width: 0;
}
.topnavbar-wrapper .navbar-nav.actionbar .nav-link {
  color: #000;
  font-size: 18px;
  padding: 6px 8px;
}
.topnavbar-wrapper .navbar-nav.actionbar .nav-link[data-manual-open] {
  color: var(--accent);
}
.topnavbar-wrapper .navbar-nav.actionbar .nav-link[data-manual-open]:hover, .topnavbar-wrapper .navbar-nav.actionbar .nav-link[data-manual-open]:focus {
  color: var(--primary-shades-400);
}
.topnavbar-wrapper .navbar {
  flex-wrap: nowrap;
  align-items: stretch;
}
.topnavbar-wrapper .navbar .navbar-header {
  flex: 0 0 228px;
}
@media (max-width: 768px) {
  .topnavbar-wrapper .navbar .navbar-header {
    flex-basis: 100%;
  }
}
@media (max-width: 768px) {
  .topnavbar-wrapper .navbar {
    flex-wrap: wrap;
  }
}
.topnavbar-wrapper .iabar {
  flex: 0 0 auto;
}
.topnavbar-wrapper .iabar .ia-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 8px;
}
.topnavbar-wrapper .iabar .ia-link em {
  font-size: 20px;
  line-height: 1;
  color: var(--primary-shades-500);
  opacity: 0.75;
  transition: opacity 0.15s ease, transform 0.15s ease;
}
.topnavbar-wrapper .iabar .ia-link:hover em, .topnavbar-wrapper .iabar .ia-link:focus-visible em {
  opacity: 1;
  transform: scale(1.06);
}
.topnavbar-wrapper .topbar-main {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  flex: 1 1 auto;
  min-width: 0;
  row-gap: 4px;
}
.topnavbar-wrapper .searchbar {
  flex: 1 1 300px;
  min-width: 0;
}
.topnavbar-wrapper .searchbar form {
  width: 100%;
  min-width: 0;
}
.topnavbar-wrapper .topbar-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: flex-end;
  row-gap: 4px;
  margin-left: auto;
  max-width: 100%;
  column-gap: 12px;
  padding-right: 20px;
}
.topnavbar-wrapper .topbar-actions .navbar-nav {
  padding: 0;
}
.topnavbar-wrapper .topbar-actions .navbar-nav:not(:has(.nav-item)) {
  display: none;
}

.topnavbar-wrapper {
  /* Semáforo de garantías de OMIE. Misma pastilla que el precio, pero el color lo pone
     el estado: sin garantía no se puede comprar, y eso tiene que verse desde cualquier
     pantalla sin entrar a mirarlo. */
}
.topnavbar-wrapper .garantias-ticker {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 4px 14px;
  border: 1px solid var(--grey-shades-200);
  border-radius: 200px;
  background: var(--grey-shades-50);
  text-decoration: none !important;
  transition: all 0.2s ease-out;
  font-size: 12px;
  font-weight: 600;
  color: var(--grey-shades-800);
}
.topnavbar-wrapper .garantias-ticker:hover {
  border-color: var(--grey-shades-400);
}
.topnavbar-wrapper {
  /* Mismo escalonado que el ticker de precio: rótulo pequeño arriba y el dato debajo,
     para que las dos pastillas de la barra se lean igual */
}
.topnavbar-wrapper .garantias-ticker-icon {
  display: inline-flex;
  width: 22px;
  height: 22px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.55);
  font-size: 11px;
  flex-shrink: 0;
}
.topnavbar-wrapper .garantias-ticker-body {
  display: inline-flex;
  flex-direction: column;
  line-height: 1.25;
}
.topnavbar-wrapper .garantias-ticker-label {
  font-size: 9px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-weight: 700;
  opacity: 0.8;
}
.topnavbar-wrapper .garantias-ticker-state {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 700;
  white-space: nowrap;
}
.topnavbar-wrapper .garantias-ticker-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  flex-shrink: 0;
}
.topnavbar-wrapper .garantias-ticker-falta {
  font-weight: 600;
  opacity: 0.9;
}
.topnavbar-wrapper .garantias-ticker.is-ok {
  background: var(--status-success-background);
  border-color: var(--status-success-text);
  color: var(--status-success-text);
}
.topnavbar-wrapper .garantias-ticker.is-ok .garantias-ticker-dot {
  background: var(--status-success-text);
}
.topnavbar-wrapper .garantias-ticker.is-duda {
  background: var(--status-warning-background);
  border-color: var(--status-warning-text);
  color: var(--status-warning-text);
}
.topnavbar-wrapper .garantias-ticker.is-duda .garantias-ticker-dot {
  background: var(--status-warning-text);
}
.topnavbar-wrapper .garantias-ticker.is-ko {
  background: var(--status-error-background);
  border-color: var(--status-error-text);
  color: var(--status-error-text);
}
.topnavbar-wrapper .garantias-ticker.is-ko .garantias-ticker-dot {
  background: var(--status-error-text);
}
.topnavbar-wrapper .omie-ticker {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 4px 14px;
  border: 1px solid var(--grey-shades-200);
  border-radius: 200px;
  background: var(--grey-shades-50);
  text-decoration: none !important;
  transition: all 0.2s ease-out;
}
.topnavbar-wrapper .omie-ticker:hover {
  border-color: var(--primary-shades-300, var(--grey-shades-400));
  background: #fff;
}
.topnavbar-wrapper .omie-ticker-icon {
  display: inline-flex;
  color: var(--status-warning-text);
  font-size: 14px;
}
.topnavbar-wrapper .omie-ticker-day {
  display: inline-flex;
  align-items: baseline;
  gap: 6px;
  white-space: nowrap;
}
.topnavbar-wrapper .omie-ticker-label {
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--grey-shades-500);
}
.topnavbar-wrapper .omie-ticker-price {
  font-size: 14px;
  font-weight: 700;
  color: var(--grey-shades-900);
}
.topnavbar-wrapper .omie-ticker-delta {
  font-size: 12px;
  font-weight: 600;
}
.topnavbar-wrapper .omie-ticker-delta.is-up {
  color: var(--status-error-text);
}
.topnavbar-wrapper .omie-ticker-delta.is-down {
  color: var(--status-success-text);
}
.topnavbar-wrapper .omie-ticker-sep {
  width: 1px;
  align-self: stretch;
  margin: 2px 0;
  background: var(--grey-shades-200);
}
@media (max-width: 575.98px) {
  .topnavbar-wrapper .tickerbar .nav-item {
    flex: 1 1 100%;
  }
  .topnavbar-wrapper .garantias-ticker,
  .topnavbar-wrapper .omie-ticker {
    width: 100%;
  }
  .topnavbar-wrapper .omie-ticker {
    justify-content: space-between;
    flex-wrap: wrap;
    row-gap: 2px;
  }
  .topnavbar-wrapper .omie-ticker-sep {
    display: none;
  }
}

.topnavbar-wrapper {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 121;
}

.wrapper .section-container {
  padding-top: var(--topbar-height);
}

.wrapper .aside-container {
  width: auto;
}
.wrapper .aside-container .aside-inner {
  padding-top: var(--topbar-height);
  width: 228px;
}
.wrapper .aside-container .aside-inner .sidebar {
  background: var(--sidebar-background);
  max-width: 100%;
}
.wrapper .aside-container .aside-inner .sidebar .sidebar-nav:not(.sidebar-subnav) {
  padding: 8px 16px 16px;
}
.wrapper .aside-container .aside-inner .sidebar .sidebar-nav:not(.sidebar-subnav) .nav-heading {
  border-top: 1px solid var(--sidebar-spacer);
  color: var(--sidebar-text-headers);
  font-size: 14px;
  font-weight: 400;
  padding: 16px 0px 8px 0px;
  margin-top: 16px;
}
.wrapper .aside-container .aside-inner .sidebar .sidebar-nav:not(.sidebar-subnav) > li > a {
  border-radius: 8px;
  color: var(--sidebar-text-menu);
  transition: all 0.25s ease-out;
  padding: 12px;
  margin-bottom: 4px;
  line-height: 150%;
  display: flex;
  align-items: center;
}
.wrapper .aside-container .aside-inner .sidebar .sidebar-nav:not(.sidebar-subnav) > li > a em {
  width: 24px;
}
.wrapper .aside-container .aside-inner .sidebar .sidebar-nav:not(.sidebar-subnav) > li > a[data-toggle]::after {
  content: "\f078";
  font-family: Font Awesome\ 5 Free;
  font-weight: 900;
  position: absolute;
  right: 8px;
  font-size: 10px;
  transition: all 0.25s ease-out;
}
.wrapper .aside-container .aside-inner .sidebar .sidebar-nav:not(.sidebar-subnav) > li a.active,
.wrapper .aside-container .aside-inner .sidebar .sidebar-nav:not(.sidebar-subnav) > li > a[aria-expanded=true],
.wrapper .aside-container .aside-inner .sidebar .sidebar-nav:not(.sidebar-subnav) > li > a:hover {
  border-radius: 8px;
  background: var(--sidebar-hover-background);
  color: var(--sidebar-hover-text);
  transition: all 0.25s ease-out;
}
.wrapper .aside-container .aside-inner .sidebar .sidebar-nav:not(.sidebar-subnav) > li > a[aria-expanded=true]::after {
  transition: all 0.25s ease-out;
  transform: rotate(-180deg);
}
.wrapper .aside-container .aside-inner .sidebar .sidebar-nav:not(.sidebar-subnav) > li .sidebar-subnav {
  background: transparent;
  padding: 0px;
  margin-bottom: 8px;
}
.wrapper .aside-container .aside-inner .sidebar .sidebar-nav:not(.sidebar-subnav) > li .sidebar-subnav li a {
  padding: 8px 12px 8px 36px;
  white-space: normal;
  color: var(--sidebar-text-menu);
  line-height: 150%;
  transition: all 0.25s ease-out;
}
.wrapper .aside-container .aside-inner .sidebar .sidebar-nav:not(.sidebar-subnav) > li .sidebar-subnav li a.active, .wrapper .aside-container .aside-inner .sidebar .sidebar-nav:not(.sidebar-subnav) > li .sidebar-subnav li a:hover {
  background: var(--sidebar-background);
  transition: all 0.25s ease-out;
  color: var(--sidebar-text-menu);
  text-decoration: underline;
}

.doko.login .wrapper {
  background-image: url("/static/login-bg.png");
  background-size: cover;
  background-position: center bottom;
}
.doko.login .wrapper > .row {
  min-height: 100vh;
  padding: 40px 80px;
}
@media (max-width: 768px) {
  .doko.login .wrapper > .row {
    padding: 20px;
  }
}
.doko.login .wrapper > .row h1 {
  color: #fff;
}
.doko.login .wrapper > .row .card {
  padding: 32px;
  border-radius: 8px;
  max-width: 400px;
  width: 100%;
}
.doko.login .wrapper > .row .card .card-body {
  display: flex;
  flex-direction: column;
  gap: 36px;
  padding: 0px;
}
.doko.login .wrapper > .row .card .card-body .logo {
  width: auto;
  max-width: 168px;
  display: block;
  margin: 0 auto;
}
.doko.login .wrapper > .row .card .card-body .form-group {
  margin-bottom: 16px;
}
.doko.login .wrapper > .row .card .card-body .btn {
  margin-top: 16px;
}

.doko .row {
  margin-left: -8px;
  margin-right: -8px;
}
.doko .row [class*=col-] {
  padding-right: 8px;
  padding-left: 8px;
}
.doko .m-0 {
  margin: 0;
}

.doko .alert {
  font-size: 14px;
  font-weight: 400;
  margin-bottom: 24px !important;
}
.doko .alert.alert-info {
  background-color: var(--status-primary-background) !important;
  border-color: var(--status-primary-background) !important;
  color: var(--status-primary-text) !important;
}
.doko .alert.alert-warning {
  background-color: var(--status-warning-background) !important;
  border-color: var(--status-warning-background) !important;
  color: var(--status-warning-text) !important;
}
.doko .alert.alert-error, .doko .alert.alert-danger {
  background-color: var(--status-error-background) !important;
  border-color: var(--status-error-background) !important;
  color: var(--status-error-text) !important;
}
.doko .alert.alert-success {
  background-color: var(--status-success-background) !important;
  border-color: var(--status-success-background) !important;
  color: var(--status-success-text) !important;
}
.doko button {
  opacity: 1;
  color: inherit;
}

.doko.alerts:has(.alert) {
  position: sticky;
  top: var(--topbar-height);
  z-index: 120;
  background: var(--grey-shades-100);
  padding: 8px 0 1px;
}

.breadcrumb-doko {
  padding: 4px 0 20px 0;
}
.breadcrumb-doko ol {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.breadcrumb-doko li {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 14px;
  line-height: 1.4;
  color: var(--grey-shades-600);
}
.breadcrumb-doko li + li::before {
  content: "›";
  color: var(--grey-shades-400);
  font-size: 15px;
  line-height: 1;
}
.breadcrumb-doko a,
.breadcrumb-doko a:hover {
  text-decoration: none;
}
.breadcrumb-doko a {
  color: var(--grey-shades-600);
}
.breadcrumb-doko a:hover {
  color: var(--primary-shades-500);
}
.breadcrumb-doko li:last-child > span {
  color: var(--grey-shades-900);
  font-weight: 600;
}
.breadcrumb-doko .breadcrumb-group.is-clickable {
  cursor: pointer;
}
.breadcrumb-doko .breadcrumb-group.is-clickable:hover, .breadcrumb-doko .breadcrumb-group.is-clickable:focus-visible {
  color: var(--primary-shades-500);
}

.doko .form-group.d-flex {
  flex-wrap: wrap;
}
.doko .form-group {
  margin-bottom: 16px;
}
.doko .form-group label {
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 14px;
  line-height: 150%;
  font-size: 14px;
  font-weight: 500;
  margin-bottom: 0px;
}
.doko .form-group label .asterisk {
  color: var(--status-error-text);
}
.doko input[type=text],
.doko input[type=password],
.doko input[type=email],
.doko input[type=number],
.doko input[type=tel],
.doko input[type=search] {
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 16px;
  line-height: 150%;
  height: 40px;
  padding: 8px 16px;
  border-radius: 8px;
  border: 1px solid var(--grey-shades-400);
  color: var(--grey-shades-900);
  background: var(--grey-shades-50);
}
.doko input[type=text]:focus,
.doko input[type=password]:focus,
.doko input[type=email]:focus,
.doko input[type=number]:focus,
.doko input[type=tel]:focus,
.doko input[type=search]:focus {
  border: 1px solid var(--primary-shades-900);
  outline: none;
  box-shadow: none;
}
.doko input[type=text]::placeholder,
.doko input[type=password]::placeholder,
.doko input[type=email]::placeholder,
.doko input[type=number]::placeholder,
.doko input[type=tel]::placeholder,
.doko input[type=search]::placeholder {
  color: var(--grey-shades-600);
}
.doko input[type=text].sm,
.doko input[type=password].sm,
.doko input[type=email].sm,
.doko input[type=number].sm,
.doko input[type=tel].sm,
.doko input[type=search].sm {
  height: 32px;
  padding: 8px;
}
.doko input[type=text],
.doko input[type=password],
.doko input[type=email],
.doko input[type=number],
.doko input[type=tel],
.doko input[type=search] {
  /* Campo que se calcula solo —una base imponible, un total— y que el usuario no
     puede tocar. Va en gris para que se vea antes de intentarlo, en vez de
     descubrirlo al pulsar. No se aplica a todo `[readonly]` a propósito: los
     datepickers del ERP lo llevan y sí se rellenan, con el calendario. */
}
.doko input[type=text].is-locked, .doko input[type=text].is-locked:focus,
.doko input[type=password].is-locked,
.doko input[type=password].is-locked:focus,
.doko input[type=email].is-locked,
.doko input[type=email].is-locked:focus,
.doko input[type=number].is-locked,
.doko input[type=number].is-locked:focus,
.doko input[type=tel].is-locked,
.doko input[type=tel].is-locked:focus,
.doko input[type=search].is-locked,
.doko input[type=search].is-locked:focus {
  background: var(--grey-shades-200);
  border-color: var(--grey-shades-300);
  color: var(--grey-shades-600);
  cursor: not-allowed;
}
.doko textarea {
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 16px;
  line-height: 150%;
  padding: 8px 16px;
  border: 1px solid var(--grey-shades-400);
  border-top-left-radius: 8px;
  border-top-right-radius: 8px;
  color: var(--grey-shades-900);
  background: var(--grey-shades-50);
  resize: none;
}
.doko textarea:focus {
  border: 1px solid var(--primary-shades-900);
  outline: none;
  box-shadow: none;
}
.doko textarea::placeholder {
  color: var(--grey-shades-600);
}
.doko select {
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 16px;
  line-height: 150%;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  height: 40px;
  padding: 8px 26px 8px 16px;
  text-overflow: ellipsis;
  white-space: nowrap;
  border-radius: 8px;
  border: 1px solid var(--grey-shades-400);
  color: var(--grey-shades-900);
  background: var(--grey-shades-50);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512'%3E%3C!--!Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--%3E%3Cpath fill='%23757575' d='M137.4 374.6c12.5 12.5 32.8 12.5 45.3 0l128-128c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8L32 192c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l128 128z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: 8px;
  background-position: right 16px center;
}
.doko select:focus {
  border: 1px solid var(--primary-shades-900);
  outline: none;
  box-shadow: none;
}
.doko select.default {
  color: var(--grey-shades-600);
}
.doko select.selected {
  color: var(--grey-shades-900);
}
.doko select.open {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512'%3E%3C!--!Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--%3E%3Cpath fill='%23757575' d='M182.6 137.4c-12.5-12.5-32.8-12.5-45.3 0l-128 128c-9.2 9.2-11.9 22.9-6.9 34.9s16.6 19.8 29.6 19.8h256c12.9 0 24.6-7.8 29.6-19.8s2.2-25.7-6.9-34.9l-128-128z'/%3E%3C/svg%3E"); /* Imagen de flecha hacia arriba */
}
.doko select.sm {
  height: 32px;
  padding: 8px;
  font-size: 12px;
}
.doko select option {
  color: var(--grey-shades-900) !important;
}
.doko .input-group {
  /* Bootstrap le da al input `flex: 1 1 auto; width: 1%` pero no `min-width: 0`, y un
     elemento flex no encoge por debajo de su contenido: con el relleno de 16px de
     doko, el campo se salía por la derecha de su columna en cuanto el hueco era
     estrecho —un modal, media pantalla—. Sin envolver, además, para que el `addon` no
     se caiga a la línea de abajo. */
  flex-wrap: nowrap;
}
.doko .input-group input {
  border-right: 0;
  min-width: 0;
}
.doko .input-group .input-group-text {
  display: flex;
  align-items: center;
  border: 1px solid var(--grey-shades-400);
  background: var(--grey-shades-400);
  color: var(--grey-shades-50);
  cursor: pointer;
}
.doko input[type=radio],
.doko input[type=checkbox] {
  border: 1px solid var(--secondary-shades-300);
  accent-color: var(--primary-shades-700);
  cursor: pointer;
  width: 16px;
  height: 16px;
  display: flex;
}
.doko .bootstrap-filestyle input {
  border-top-left-radius: 8px !important;
  border-bottom-left-radius: 8px !important;
}
.doko .bootstrap-filestyle .group-span-filestyle label.btn-outline {
  color: var(--btn-outline-text-default) !important;
}
.doko .bootstrap-filestyle .group-span-filestyle label.btn-outline:hover {
  color: var(--btn-outline-text-hover) !important;
}

.doko.footer-container {
  height: auto;
  padding: 0;
  background: var(--grey-shades-200);
  border-top: 1px solid var(--grey-shades-300);
  z-index: 200;
}
.doko.footer-container .card-footer {
  display: flex;
  justify-content: flex-end;
  gap: 12px;
  background: var(--grey-shades-200);
  padding: 16px;
}

.doko .card {
  border-radius: 8px;
  border-top: 1.5px solid var(--secondary-shades-200);
  border-right: 1.5px solid var(--secondary-shades-200);
  border-bottom: 1.5px solid var(--secondary-shades-200);
  border-left: 1.5px solid var(--secondary-shades-200);
  background: var(--grey-shades-50);
}
.doko .card .card-body {
  padding: 32px;
}
.doko .card .card-body.pb-16 {
  padding-bottom: 16px;
}
.doko .card .card-body.card-body-compact {
  padding: 16px 24px;
}
.doko .card.card-margin-xl {
  margin-bottom: 2rem;
}
.doko .table-card-body {
  padding: 16px 32px;
}

.doko .custom-table .header {
  color: var(--grey-shades-900) !important;
  font-weight: 600 !important;
  font-size: 20px !important;
  padding: 8px 16px !important;
  background-color: var(--grey-shades-200) !important;
  border: 1.5px solid var(--grey-shades-400) !important;
}
.doko .custom-table th {
  border: 1.5px solid var(--grey-shades-400) !important;
}
.doko .custom-table td {
  text-align: center;
  vertical-align: middle;
  border: 1.5px solid var(--grey-shades-400) !important;
}
.doko .custom-table label {
  font-weight: 500;
}
.doko .custom-table .form-check-inline {
  margin-right: 0;
}
.doko .custom-table .first-column {
  width: 25%;
}
.doko .custom-table .dark-background {
  background-color: var(--grey-shades-200) !important;
  color: var(--grey-shades-900) !important;
}
.doko .custom-table .light-background {
  background-color: var(--grey-shades-100) !important;
  color: var(--grey-shades-900) !important;
}

.focus-datatable tr:has(.dropdown-menu.show) {
  position: relative;
  z-index: 2;
}

.dataTables_scroll .dataTables_scrollBody:has(.dropdown-menu.show) {
  padding-bottom: 1000px;
  margin-bottom: -1000px;
}

.doko tbody {
  position: relative;
}
.doko [class*=focus-datatable-doko]:not([data-no-datatable]) {
  opacity: 0;
}
.doko [class*=focus-datatable-doko] {
  transition: opacity 0.5s ease-in-out;
}
.doko [class*=focus-datatable-doko] thead .search-row .dtfc-fixed-right {
  position: sticky;
  right: 0px;
}
.doko [class*=focus-datatable-doko] tbody tr:hover td {
  background-color: rgba(245, 245, 245, 0.5);
  transition: background-color 0.3s ease;
}
.doko table.dataTable {
  margin-top: 0px !important;
}
.doko .dataTables_wrapper .dataTables_filter, .doko .dataTables_wrapper .dt-buttons, .doko .dataTables_wrapper .dataTables_paginate, .doko .dataTables_wrapper .dataTables_info {
  display: none;
}
.doko .dataTables_wrapper .dataTables_processing {
  display: none !important;
}
.doko .dropdown-toggle::after {
  content: none !important;
}
.doko .dataTables_info {
  padding-top: 0 !important;
}
.doko .dataTables_filter input {
  margin-left: 0;
  padding: 8px 16px;
  position: relative;
  width: 100%;
}
.doko .dt-buttons {
  gap: 8px;
}
.doko .separation-top {
  border-top: 1.5px solid var(--secondary-shades-200);
}
.doko .status-indicator {
  width: 12px;
  height: 12px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  flex-shrink: 0;
  display: inline-block;
}
.doko .legend-container {
  gap: 12px 28px;
  padding: 10px 16px;
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 14px;
  line-height: 150%;
  color: var(--grey-shades-600);
}
.doko .table-pagination-container {
  margin-top: 16px !important;
  padding: 16px 0px;
}
.doko .table-pagination-container .dataTables_paginate .pagination {
  margin: 0;
}
.doko .table-pagination-container .dataTables_paginate .pagination .page-item:first-child .page-link {
  border-top-left-radius: 9999px !important;
  border-bottom-left-radius: 9999px !important;
}
.doko .table-pagination-container .dataTables_paginate .pagination .page-item:last-child .page-link {
  border-top-right-radius: 9999px !important;
  border-bottom-right-radius: 9999px !important;
}
.doko .table-pagination-container .dataTables_paginate .pagination .page-link {
  border: 1.5px solid var(--grey-shades-400);
  color: var(--grey-shades-500);
  background-color: var(--grey-shades-50);
  outline: none;
  transition: 0.5s ease-out;
  width: 64px;
  padding: 8px 16px;
  display: flex;
  justify-content: center;
}
.doko .table-pagination-container .dataTables_paginate .pagination .page-link:focus {
  box-shadow: none;
}
.doko .table-pagination-container .dataTables_paginate .pagination .page-link:hover, .doko .table-pagination-container .dataTables_paginate .pagination .active .page-link {
  background-color: var(--primary-shades-800);
  color: var(--grey-shades-50);
}
.doko table[sticky=true][class*=focus-datatable-doko] td:first-child,
.doko table[sticky=true][class*=focus-datatable-doko] th:first-child {
  position: relative !important;
}
.doko th, .doko td {
  white-space: nowrap !important;
}
.doko th {
  background: var(--primary-shades-50) !important;
  font-size: 16px;
  font-weight: 500;
  line-height: 130%;
  color: var(--secondary-shades-700) !important;
}
.doko td {
  font-size: 14px;
  line-height: 130%;
  font-weight: 400;
  color: var(--grey-shades-800) !important;
}
.doko .dataTables_scroll, .doko .dataTables_scrollBody {
  padding-bottom: 5px;
}
.doko .background-tr-default {
  background: var(--grey-shades-50);
}
.doko table.dataTable thead .sorting::after,
.doko table.dataTable thead .sorting::before,
.doko table.dataTable thead .sorting_asc::after,
.doko table.dataTable thead .sorting_asc::before,
.doko table.dataTable thead .sorting_desc::after,
.doko table.dataTable thead .sorting_desc::before {
  content: "";
}
.doko table.dataTable thead .sorting::after,
.doko table.dataTable thead .sorting_asc::after,
.doko table.dataTable thead .sorting_desc::after {
  position: absolute;
  top: 50%;
  right: 16px;
  transform: translateY(-50%);
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  color: var(--secondary-shades-500);
  opacity: 1;
  bottom: auto;
}
.doko table.dataTable thead .sorting::after {
  content: "\f885";
}
.doko table.dataTable thead .sorting_asc::after {
  content: "\f885";
}
.doko table.dataTable thead .sorting_desc::after {
  content: "\f884";
}
.doko .dataTables_scrollBody::-webkit-scrollbar {
  width: 8px; /* Ancho de la barra de desplazamiento horizontal */
  height: 8px; /* Altura de la barra de desplazamiento vertical, ajusta según sea necesario */
}
.doko {
  /* Estiliza la pista de la barra de desplazamiento (parte donde se mueve el indicador) */
}
.doko .dataTables_scrollBody::-webkit-scrollbar-track {
  background: transparent; /* Fondo transparente */
}
.doko {
  /* Estiliza el indicador de la barra de desplazamiento (la parte que se desplaza) */
}
.doko .dataTables_scrollBody::-webkit-scrollbar-thumb {
  background: var(--secondary-shades-500); /* Color rojo para el indicador */
  border-radius: 8px; /* Bordes redondeados para el indicador */
}
.doko {
  /* Estiliza el indicador de la barra de desplazamiento al pasar el mouse */
}
.doko .dataTables_scrollBody::-webkit-scrollbar-thumb:hover {
  background: var(--secondary-shades-500); /* Color más oscuro de rojo al pasar el mouse */
}
.doko .dataTables_scrollHead .dtfc-fixed-right,
.doko .dataTables_scrollBody .dtfc-fixed-right {
  background: #fff !important;
  box-shadow: 0 0px 0 transparent inset, 1.5px 0 0 var(--secondary-shades-200) inset;
}
.doko .dtfc-fixed-right:has(.dropdown.show) {
  z-index: 2;
}
.doko .dtfc-right-top-blocker {
  width: 0px !important;
}
.doko .dataTables_scrollHead th {
  position: relative;
  border-top: 1.5px solid var(--secondary-shades-200) !important;
  border-left: 1.5px solid var(--secondary-shades-200) !important;
  border-right: 1.5px solid var(--secondary-shades-200) !important;
  padding: 8px 40px 8px 16px !important;
}
.doko .dataTables_scrollHead th:first-child {
  border-left: 0 !important;
}
.doko .dataTables_scrollHead th:last-child {
  border-right: 0 !important;
  border-left: 0 !important;
}
.doko .dataTables_scrollHead .focus-datatable-doko[sticky=true] th:nth-last-child(2) {
  border-right: 0 !important;
}
.doko .dataTables_scrollBody th {
  border-top: 0 !important;
  border-bottom: 0 !important;
  border-left: 1.5px solid var(--secondary-shades-200) !important;
  border-right: 1.5px solid var(--secondary-shades-200) !important;
  padding: 0px 40px 0px 16px !important;
}
.doko .dataTables_scrollBody td {
  border-top: 1.5px solid var(--secondary-shades-200) !important;
  border-bottom: 1.5px solid var(--secondary-shades-200) !important;
  border-left: 1.5px solid var(--secondary-shades-200) !important;
  border-right: 1.5px solid var(--secondary-shades-200) !important;
  padding: 8px 16px !important;
  background-color: inherit;
}
.doko .dataTables_scrollBody th:first-child, .doko .dataTables_scrollBody td:first-child {
  border-left: 0 !important;
}
.doko .dataTables_scrollBody th:last-child, .doko .dataTables_scrollBody td:last-child {
  border-right: 0 !important;
  border-left: 0 !important;
}
.doko .dataTables_scrollBody .focus-datatable-doko[sticky=true] th:nth-last-child(2), .doko .dataTables_scrollBody .focus-datatable-doko[sticky=true] td:nth-last-child(2) {
  border-right: 0 !important;
}
.doko .dataTables_scrollBody .focus-datatable-doko[sticky=true] td {
  padding: 8px 16px;
}

.doko#popup .modal-footer {
  border-top: 0;
}
.doko#popup .modal-body, .doko#popup .modal-footer {
  padding: 32px;
}
.doko#popup i.popup-cerrar {
  color: var(--grey-shades-500);
  font-size: 16px;
  cursor: pointer;
}

.doko .doko-accordion-button {
  padding: 16px 32px;
  background-color: #fff;
  border-radius: 8px;
  border: 1.5px solid var(--secondary-shades-200);
  border-bottom: none;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}
.doko .doko-accordion-button.collapsed {
  border-bottom: 1.5px solid var(--secondary-shades-200);
  border-radius: 8px;
}
.doko .doko-accordion-collapse {
  border: 1.5px solid var(--secondary-shades-200);
  border-radius: 8px;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.doko .doko-accordion-body {
  padding: 32px;
  background-color: #fff;
}

.doko .btn {
  box-sizing: border-box;
  border-radius: var(--btn-radius);
  display: inline-flex;
  height: 40px;
  padding: 16px;
  justify-content: center;
  align-items: center;
  gap: 10px;
  flex-shrink: 0;
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 16px;
  line-height: 150%;
  line-height: 110%;
  font-weight: 500;
  font-size: 16px;
  text-transform: var(--btn-text-case);
  text-decoration: none !important;
}
.doko .btn:focus {
  outline: none;
  box-shadow: none;
}
.doko .btn.sm {
  padding: 4px 16px;
  font-size: 14px;
  height: 32px;
}
.doko .btn[hidden] {
  display: none;
}
.doko .btn-icon-only {
  width: 40px;
}
.doko .btn-icon {
  color: var(--secondary-shades-300);
}
.doko i.fa-solid {
  cursor: pointer;
  color: var(--btn-solid-background-default);
}
button .doko i.fa-solid {
  cursor: unset;
  color: unset;
}
.doko button i.fa-solid {
  cursor: auto;
  color: inherit;
}
.doko .btn-solid {
  background: var(--btn-solid-background-default);
  border: 1.5px solid var(--btn-solid-border-default);
  color: var(--btn-solid-text-default);
  transition: all 0.25s ease-out;
}
.doko .btn-solid.active, .doko .btn-solid:hover {
  background: var(--btn-solid-background-hover);
  border: 1.5px solid var(--btn-solid-border-hover);
  color: var(--btn-solid-text-hover);
  cursor: pointer;
  transition: all 0.25s ease-out;
}
.doko .focus-datatable-doko .btn-outline {
  background-color: #fff;
}
.doko .btn-outline {
  color: var(--btn-outline-text-default);
  border: 1.5px solid var(--btn-outline-border-default);
  background: var(--btn-outline-background-default);
  transition: all 0.25s ease-out;
}
.doko .btn-outline.active, .doko .btn-outline:hover {
  color: var(--btn-outline-text-hover);
  border: 1.5px solid var(--btn-outline-border-hover);
  background: var(--btn-outline-background-hover);
  cursor: pointer;
}
.doko .btn-outline.danger {
  color: var(--btn-danger);
  border: 1.5px solid var(--btn-danger);
  background: transparent;
}
.doko .btn-outline.danger:hover {
  color: var(--btn-danger-hover);
  border: 1.5px solid var(--btn-danger-hover);
  background-color: transparent;
}
.doko .btn-outline.icon-only {
  width: 40px;
  height: 40px;
}
.doko .btn-outline.icon-only i {
  color: var(--btn-outline-text-default);
}
.doko .btn-outline.icon-only:hover i {
  color: var(--btn-outline-text-hover);
}
.doko .btn-outline.icon-only.danger i {
  color: var(--btn-danger);
}
.doko .btn-outline.icon-only.danger:hover {
  background-color: var(--btn-danger);
}
.doko .btn-outline.icon-only.danger:hover i {
  color: #fff;
}
.doko .btn-outline-terciary {
  color: var(--grey-shades-900);
  border: 1.5px solid var(--grey-shades-400);
  transition: all 0.25s ease-out;
}
.doko .btn-outline-terciary.active, .doko .btn-outline-terciary:hover {
  color: var(--grey-shades-900);
  border: 1.5px solid var(--grey-shades-900);
  cursor: pointer;
  transition: all 0.25s ease-out;
}

.doko.doko-tabs .card {
  border-radius: 4px;
}
.doko.doko-tabs .doko-tabs-bar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
  border-bottom: 1.5px solid var(--secondary-shades-200);
}
.doko.doko-tabs .list-group, .doko.doko-tabs .nav {
  border: 0;
  border-radius: 0;
}
.doko.doko-tabs .list-group .list-group-item, .doko.doko-tabs .list-group .nav-link, .doko.doko-tabs .nav .list-group-item, .doko.doko-tabs .nav .nav-link {
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 16px;
  line-height: 150%;
  position: relative;
  padding: 10px 4px;
  margin: 0 24px -1.5px 0;
  border: 0;
  border-radius: 0;
  background-color: transparent;
  color: var(--grey-shades-600);
  font-weight: 500;
  transition: color 0.2s ease-out;
}
.doko.doko-tabs .list-group .list-group-item:hover, .doko.doko-tabs .list-group .nav-link:hover, .doko.doko-tabs .nav .list-group-item:hover, .doko.doko-tabs .nav .nav-link:hover {
  background-color: transparent;
  color: var(--grey-shades-900);
}
.doko.doko-tabs .list-group .list-group-item::after, .doko.doko-tabs .list-group .nav-link::after, .doko.doko-tabs .nav .list-group-item::after, .doko.doko-tabs .nav .nav-link::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 2.5px;
  border-radius: 2px;
  background-color: var(--primary-shades-500);
  opacity: 0;
  transition: opacity 0.2s ease-out;
}
.doko.doko-tabs .list-group .list-group-item.active, .doko.doko-tabs .list-group .nav-link.active, .doko.doko-tabs .nav .list-group-item.active, .doko.doko-tabs .nav .nav-link.active {
  background-color: transparent;
  border-color: transparent;
  color: var(--primary-shades-700);
  font-weight: 600;
}
.doko.doko-tabs .list-group .list-group-item.active:hover, .doko.doko-tabs .list-group .nav-link.active:hover, .doko.doko-tabs .nav .list-group-item.active:hover, .doko.doko-tabs .nav .nav-link.active:hover {
  background-color: transparent;
}
.doko.doko-tabs .list-group .list-group-item.active::after, .doko.doko-tabs .list-group .nav-link.active::after, .doko.doko-tabs .nav .list-group-item.active::after, .doko.doko-tabs .nav .nav-link.active::after {
  opacity: 1;
}
.doko.doko-tabs .tab-content {
  padding-top: 24px;
}

.doko .chip {
  padding: 4px 16px;
  border-radius: 200px;
  border: 1.5px solid;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 14px;
  line-height: 150%;
  font-weight: 500;
}
.doko .chip--primary {
  background-color: #E4EBFF;
  border-color: #74A9DF;
}
.doko .chip--primary:hover, .doko .chip--primary.active {
  background-color: #74A9DF;
  border-color: #74A9DF;
  color: #fff;
}
.doko .chip--secondary {
  background-color: #F8D7DA;
  border-color: #DF7474;
}
.doko .chip--secondary:hover, .doko .chip--secondary.active {
  background-color: #DF7474;
  border-color: #DF7474;
  color: #fff;
}
.doko .chip--terciary {
  background-color: #CCE5FF;
  border-color: #7281AA;
}
.doko .chip--terciary:hover, .doko .chip--terciary.active {
  background-color: #7281AA;
  border-color: #7281AA;
  color: #fff;
}
.doko .chip--quaternary {
  background-color: #FFF3CD;
  border-color: #D5BD6C;
}
.doko .chip--quaternary:hover, .doko .chip--quaternary.active {
  background-color: #D5BD6C;
  border-color: #D5BD6C;
  color: #fff;
}
.doko .chip--quinary {
  background-color: #D4EDDA;
  border-color: #478564;
}
.doko .chip--quinary:hover, .doko .chip--quinary.active {
  background-color: #478564;
  border-color: #478564;
  color: #fff;
}
.doko .chip--senary {
  background-color: #E6EDD2;
  border-color: #5C7D56;
}
.doko .chip--senary:hover, .doko .chip--senary.active {
  background-color: #5C7D56;
  border-color: #5C7D56;
  color: #fff;
}
.doko .chip--septenary {
  background-color: #EDDDD2;
  border-color: #B47A65;
}
.doko .chip--septenary:hover, .doko .chip--septenary.active {
  background-color: #B47A65;
  border-color: #B47A65;
  color: #fff;
}
.doko .chip--octonary {
  background-color: #edd2ed;
  border-color: #7d567c;
}
.doko .chip--octonary:hover, .doko .chip--octonary.active {
  background-color: #7d567c;
  border-color: #7d567c;
  color: #fff;
}
.doko .chip--nonary {
  background-color: #d2edeb;
  border-color: #65b4ac;
}
.doko .chip--nonary:hover, .doko .chip--nonary.active {
  background-color: #65b4ac;
  border-color: #65b4ac;
  color: #fff;
}
.doko .chip--neutral {
  background-color: #E0E0E0;
  border-color: #9E9E9E;
}
.doko .chip--neutral:hover, .doko .chip--neutral.active {
  background-color: #9E9E9E;
  border-color: #9E9E9E;
  color: #fff;
}
.doko .chip__count {
  margin-left: 8px;
  padding: 0 6px;
  min-width: 20px;
  border-radius: 200px;
  background-color: rgba(0, 0, 0, 0.12);
  font-weight: 600;
  line-height: 1.5;
  text-align: center;
}
.doko .chip__count--alert {
  background-color: #DC3545;
  color: #fff;
}
.doko .chip:hover .chip__count, .doko .chip.active .chip__count {
  background-color: rgba(255, 255, 255, 0.3);
}
.doko .chip:hover .chip__count--alert, .doko .chip.active .chip__count--alert {
  background-color: #DC3545;
  color: #fff;
}

.doko .datasheet-hero {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px 32px;
  padding-bottom: 20px;
  margin-bottom: 24px;
  border-bottom: 1.5px solid var(--secondary-shades-200);
}
.doko .datasheet-hero .datasheet-hero-main {
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 20px;
  line-height: 150%;
  font-weight: 700;
  color: var(--grey-shades-900);
  font-family: ui-monospace, "SFMono-Regular", "Menlo", monospace;
  letter-spacing: 0.02em;
}
.doko .datasheet-hero .datasheet-hero-facts {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 24px;
  margin-left: auto;
}
.doko .datasheet-hero .datasheet-hero-fact {
  display: flex;
  flex-direction: column;
}
.doko .datasheet-hero .datasheet-hero-fact .datasheet-label {
  margin-bottom: 0;
}
.doko .datasheet-group {
  margin-bottom: 28px;
}
.doko .datasheet-group:last-child {
  margin-bottom: 0;
}
.doko .datasheet-group-title {
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 12px;
  line-height: 150%;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--grey-shades-500);
  margin-bottom: 12px;
}
.doko .datasheet {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 16px 24px;
}
.doko .datasheet-item {
  min-width: 0;
}
.doko .datasheet-item.is-wide {
  grid-column: span 2;
}
@media (max-width: 767px) {
  .doko .datasheet-item.is-wide {
    grid-column: span 1;
  }
}
.doko .datasheet-label {
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 12px;
  line-height: 150%;
  color: var(--grey-shades-500);
  margin-bottom: 2px;
}
.doko .datasheet-value {
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 16px;
  line-height: 150%;
  color: var(--grey-shades-900);
  word-break: break-word;
}
.doko .datasheet-value:empty::after, .doko .datasheet-value.is-empty::after {
  content: "—";
  color: var(--grey-shades-400);
}

.doko .summary-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
}
.doko .summary-pill {
  flex: 1 1 160px;
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 12px 24px;
  border-radius: 200px;
  border: 1.5px solid;
}
.doko .summary-pill .summary-pill-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: var(--grey-shades-50);
  font-size: 16px;
}
.doko .summary-pill .summary-pill-value {
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 20px;
  line-height: 150%;
  font-weight: 600;
  line-height: 1.2;
}
.doko .summary-pill .summary-pill-label {
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 14px;
  line-height: 150%;
  color: var(--grey-shades-700);
}
.doko .summary-pill--neutral {
  background-color: var(--grey-shades-100);
  border-color: var(--secondary-shades-200);
}
.doko .summary-pill--neutral .summary-pill-icon,
.doko .summary-pill--neutral .summary-pill-value {
  color: var(--grey-shades-700);
}
.doko .summary-pill--success {
  background-color: var(--status-success-background);
  border-color: var(--status-success-text);
}
.doko .summary-pill--success .summary-pill-icon,
.doko .summary-pill--success .summary-pill-value {
  color: var(--status-success-text);
}
.doko .summary-pill--warning {
  background-color: var(--status-warning-background);
  border-color: var(--status-warning-text);
}
.doko .summary-pill--warning .summary-pill-icon,
.doko .summary-pill--warning .summary-pill-value {
  color: var(--status-warning-text);
}
.doko .summary-pill--error {
  background-color: var(--status-error-background);
  border-color: var(--status-error-text);
}
.doko .summary-pill--error .summary-pill-icon,
.doko .summary-pill--error .summary-pill-value {
  color: var(--status-error-text);
}

.messaging-heading {
  display: flex;
  flex-direction: column;
}

.messaging-intro {
  font-family: var(--font-family);
  font-size: 16px;
  line-height: 150%;
  font-weight: 400;
  color: var(--grey-shades-600);
  max-width: 900px;
  margin-top: 4px;
}

.messaging-edit-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.messaging-back {
  display: inline-flex;
  align-items: center;
  font-size: 20px;
  color: var(--grey-shades-900);
}
.messaging-back:hover {
  color: var(--primary-shades-700);
}

.messaging-editor .messaging-panel-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 40px;
  margin-bottom: 8px;
}
.messaging-editor .messaging-panel-title {
  display: flex;
  align-items: center;
  gap: 8px;
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 16px;
  line-height: 150%;
  color: var(--grey-shades-700);
}
.messaging-editor .messaging-panel-title em {
  color: var(--grey-shades-500);
}
.messaging-editor .messaging-vars {
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 14px;
  line-height: 150%;
  color: var(--grey-shades-500);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.messaging-editor .messaging-preview-modes {
  display: flex;
  gap: 8px;
}
.messaging-editor .messaging-code {
  font-family: "Roboto Mono", Menlo, Consolas, monospace;
  font-size: 14px;
  line-height: 160%;
  min-height: 480px;
  border-radius: 8px;
  resize: vertical;
}
.messaging-editor .messaging-preview {
  display: flex;
  flex-direction: column;
  min-height: 960px;
  border: 1.5px solid var(--secondary-shades-200);
  border-radius: 8px;
  background: var(--grey-shades-50);
  overflow: hidden;
  transition: max-width 0.25s ease-out;
}
.messaging-editor .messaging-preview.mobile {
  max-width: 380px;
}
.messaging-editor .messaging-preview-head {
  padding: 16px 20px;
  background: var(--grey-shades-100);
  border-bottom: 1.5px solid var(--secondary-shades-200);
}
.messaging-editor .messaging-preview-subject {
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 16px;
  line-height: 150%;
  font-weight: 600;
}
.messaging-editor .messaging-preview-sender {
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 14px;
  line-height: 150%;
  color: var(--grey-shades-600);
}
.messaging-editor .messaging-preview-frame {
  flex: 1 1 auto;
  width: 100%;
  min-height: 900px;
  border: 0;
  background: #fff;
}

.doko .messaging-list .messaging-item {
  display: flex;
  align-items: center;
  gap: 24px;
  padding: 20px 24px;
  border-top: 1.5px solid var(--secondary-shades-200);
  transition: background-color 0.25s ease-out;
}
.doko .messaging-list .messaging-item:first-child {
  border-top: 0;
}
.doko .messaging-list .messaging-item[role=button] {
  cursor: pointer;
}
.doko .messaging-list .messaging-item[role=button]:hover {
  background-color: var(--grey-shades-100);
}
.doko .messaging-list .messaging-item[role=button]:focus-visible {
  outline: 2px solid var(--primary-shades-500);
  outline-offset: -2px;
}
.doko .messaging-list .messaging-thumb {
  flex-shrink: 0;
  width: 96px;
  height: 72px;
  padding: 12px 10px;
  border-radius: 6px;
  border: 1.5px solid var(--secondary-shades-200);
  background: var(--grey-shades-100);
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.doko .messaging-list .messaging-thumb span {
  display: block;
  height: 5px;
  border-radius: 3px;
  background: var(--grey-shades-300);
}
.doko .messaging-list .messaging-thumb span.line-block {
  height: 12px;
  width: 45%;
  margin-top: 4px;
}
.doko .messaging-list .messaging-thumb span.line-lg {
  width: 100%;
}
.doko .messaging-list .messaging-thumb span.line-md {
  width: 80%;
}
.doko .messaging-list .messaging-thumb span.line-sm {
  width: 55%;
}
.doko .messaging-list .messaging-content {
  flex: 1 1 auto;
  min-width: 0;
}
.doko .messaging-list .messaging-title {
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 20px;
  line-height: 150%;
  font-weight: 600;
}
.doko .messaging-list .messaging-subject {
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 16px;
  line-height: 150%;
  color: var(--grey-shades-800);
}
.doko .messaging-list .messaging-meta {
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 14px;
  line-height: 150%;
  color: var(--grey-shades-600);
  display: flex;
  align-items: center;
  gap: 8px;
}
.doko .messaging-list .messaging-meta em {
  color: var(--grey-shades-500);
}
.doko .messaging-list .messaging-subject,
.doko .messaging-list .messaging-meta > span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.doko .messaging-list .messaging-status {
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 14px;
  line-height: 150%;
  font-weight: 500;
  padding: 2px 12px;
  border-radius: 200px;
  white-space: nowrap;
}
.doko .messaging-list .messaging-status--active {
  background: var(--status-success-background);
  color: var(--status-success-text);
}
.doko .messaging-list .messaging-status--disabled {
  background: var(--status-secondary-background);
  color: var(--status-secondary-text);
}
.doko .messaging-list .messaging-empty {
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 16px;
  line-height: 150%;
  color: var(--grey-shades-600);
  justify-content: center;
}
.doko .messaging-list .messaging-empty:hover {
  background-color: transparent;
}
@media (max-width: 767.98px) {
  .doko .messaging-list .messaging-item {
    flex-wrap: wrap;
  }
  .doko .messaging-list .messaging-thumb {
    display: none;
  }
}

body.manual-open {
  overflow: hidden;
}

.manual-backdrop {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.4);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.25s ease-out, visibility 0.25s ease-out;
  z-index: 1055;
}
.manual-backdrop.is-open {
  opacity: 1;
  visibility: visible;
}

.manual-panel {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  width: 560px;
  max-width: 100%;
  display: flex;
  flex-direction: column;
  background: var(--grey-shades-50);
  box-shadow: -4px 0 16px rgba(0, 0, 0, 0.15);
  transform: translateX(100%);
  visibility: hidden;
  transition: transform 0.3s ease-out, visibility 0.3s ease-out;
  z-index: 1060;
}
.manual-panel.is-open {
  transform: translateX(0);
  visibility: visible;
}
.manual-panel .manual-panel-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 24px 32px;
  border-bottom: 1.5px solid var(--secondary-shades-200);
}
.manual-panel .manual-panel-title {
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 18px;
  line-height: 150%;
  font-weight: 600;
  margin: 0;
}
.manual-panel .manual-panel-close {
  background: none;
  border: 0;
  padding: 0;
  line-height: 1;
  font-size: 18px;
  color: var(--grey-shades-500);
  cursor: pointer;
}
.manual-panel .manual-panel-close:hover {
  color: var(--grey-shades-900);
}
.manual-panel .manual-panel-body {
  flex: 1 1 auto;
  overflow-y: auto;
  padding: 24px 32px 32px 32px;
}
.manual-panel .manual-panel-body::-webkit-scrollbar {
  width: 8px;
}
.manual-panel .manual-panel-body::-webkit-scrollbar-track {
  background: transparent;
}
.manual-panel .manual-panel-body::-webkit-scrollbar-thumb {
  background: var(--secondary-shades-500);
  border-radius: 8px;
}

.manual-content i.fa-solid,
.manual-content i.fa-regular {
  cursor: inherit;
  color: inherit;
}

.manual-intro {
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 16px;
  line-height: 150%;
  color: var(--grey-shades-700);
  margin-bottom: 24px;
}

/* Párrafo suelto dentro de una sección: explica antes de la lista o los pasos */
.manual-text {
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 16px;
  line-height: 150%;
  color: var(--grey-shades-700);
  margin-bottom: 12px;
}

.manual-section {
  margin-bottom: 24px;
}
.manual-section:last-child {
  margin-bottom: 0;
}

.manual-section-title {
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 16px;
  line-height: 150%;
  font-weight: 600;
  color: var(--grey-shades-900);
  margin-bottom: 8px;
}

.manual-steps {
  list-style: none;
  counter-reset: manual-step;
  margin: 0;
  padding: 0;
}
.manual-steps > li {
  counter-increment: manual-step;
  position: relative;
  padding-left: 36px;
  margin-bottom: 12px;
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 14px;
  line-height: 150%;
  color: var(--grey-shades-700);
}
.manual-steps > li:last-child {
  margin-bottom: 0;
}
.manual-steps > li::before {
  content: counter(manual-step);
  position: absolute;
  left: 0;
  top: 0;
  width: 24px;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--status-primary-background);
  color: var(--status-primary-text);
  font-size: 12px;
  font-weight: 600;
}
.manual-steps > li strong {
  color: var(--grey-shades-900);
  font-weight: 600;
}

.manual-list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.manual-list > li {
  position: relative;
  padding-left: 20px;
  margin-bottom: 8px;
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 14px;
  line-height: 150%;
  color: var(--grey-shades-700);
}
.manual-list > li:last-child {
  margin-bottom: 0;
}
.manual-list > li::before {
  content: "";
  position: absolute;
  left: 4px;
  top: 9px;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--secondary-shades-500);
}
.manual-list > li strong {
  color: var(--grey-shades-900);
  font-weight: 600;
}

.manual-flow {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  color: var(--grey-shades-400);
}
.manual-flow .manual-flow-step {
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 12px;
  line-height: 150%;
  font-weight: 600;
  padding: 4px 12px;
  border-radius: var(--btn-radius);
  background: var(--status-secondary-background);
  color: var(--status-secondary-text);
}
.manual-flow .manual-flow-step.is-pending {
  background: var(--status-warning-background);
  color: var(--status-warning-text);
}
.manual-flow .manual-flow-step.is-done {
  background: var(--status-success-background);
  color: var(--status-success-text);
}
.manual-flow .manual-flow-step.is-error {
  background: var(--status-error-background);
  color: var(--status-error-text);
}
.manual-flow .manual-flow-arrow {
  font-size: 12px;
}

.manual-note {
  display: flex;
  gap: 12px;
  padding: 12px 16px;
  border-radius: var(--btn-radius);
  background: var(--status-warning-background);
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 14px;
  line-height: 150%;
  color: var(--status-warning-text);
}
.manual-note i {
  margin-top: 3px;
}

.manual-panel-footer {
  padding: 16px 32px;
  border-top: 1.5px solid var(--secondary-shades-200);
  text-align: center;
}
.manual-panel-footer a {
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 14px;
  line-height: 150%;
  font-weight: 500;
  color: var(--primary-shades-700);
}

.manual-docs {
  display: grid;
  grid-template-columns: 232px minmax(0, 1fr);
  align-items: start;
  gap: 32px;
}
@media (max-width: 991px) {
  .manual-docs {
    grid-template-columns: minmax(0, 1fr);
    gap: 24px;
  }
}

.manual-docs-nav {
  background: transparent;
  border: 0;
  padding: 0;
  position: sticky;
  top: 24px;
  max-height: calc(100vh - 48px);
  display: flex;
  flex-direction: column;
  gap: 12px;
}
@media (max-width: 991px) {
  .manual-docs-nav {
    position: static;
    max-height: none;
  }
}
.manual-docs-nav .manual-docs-search {
  position: relative;
  flex: 0 0 auto;
}
.manual-docs-nav .manual-docs-search input {
  width: 100%;
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 14px;
  line-height: 150%;
  color: var(--grey-shades-900);
  background: #fff;
  border: 1.5px solid var(--secondary-shades-200);
  border-radius: var(--btn-radius);
  padding: 8px 12px 8px 34px;
}
.manual-docs-nav .manual-docs-search input::placeholder {
  color: var(--grey-shades-500);
}
.manual-docs-nav .manual-docs-search input:focus {
  outline: none;
  border-color: var(--primary-shades-500);
}
.manual-docs-nav .manual-docs-search i {
  position: absolute;
  left: 12px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 12px;
  color: var(--grey-shades-500);
  cursor: inherit;
}
.manual-docs-nav .manual-docs-groups {
  flex: 1 1 auto;
  overflow-y: auto;
  min-height: 0;
}
.manual-docs-nav .manual-docs-groups::-webkit-scrollbar {
  width: 4px;
}
.manual-docs-nav .manual-docs-groups::-webkit-scrollbar-track {
  background: transparent;
}
.manual-docs-nav .manual-docs-groups::-webkit-scrollbar-thumb {
  background: var(--secondary-shades-300);
  border-radius: 8px;
}
.manual-docs-nav .manual-docs-group {
  margin-bottom: 16px;
}
.manual-docs-nav .manual-docs-group:last-child {
  margin-bottom: 0;
}
.manual-docs-nav .manual-docs-group.is-hidden {
  display: none;
}
.manual-docs-nav .manual-docs-group-title {
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 12px;
  line-height: 150%;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--grey-shades-500);
  margin-bottom: 4px;
  padding: 0 8px;
}
.manual-docs-nav .manual-docs-group-list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.manual-docs-nav .manual-docs-group-list > li.is-hidden {
  display: none;
}
.manual-docs-nav .manual-docs-group-list > li > a {
  display: block;
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 14px;
  line-height: 150%;
  color: var(--grey-shades-700);
  padding: 7px 10px;
  border-left: 2px solid transparent;
  text-decoration: none;
  transition: all 0.2s ease-out;
}
.manual-docs-nav .manual-docs-group-list > li > a:hover {
  color: var(--primary-shades-700);
  border-left-color: var(--secondary-shades-300);
}
.manual-docs-nav .manual-docs-group-list > li > a.is-current {
  color: var(--primary-shades-700);
  border-left-color: var(--primary-shades-600);
  font-weight: 600;
}
.manual-docs-nav .manual-docs-noresults {
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 14px;
  line-height: 150%;
  color: var(--grey-shades-500);
  padding: 8px 10px;
}

.manual-docs-content {
  background: transparent;
  border: 0;
  padding: 0;
  min-width: 0;
}

.manual-section-eyebrow {
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 12px;
  line-height: 150%;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--grey-shades-500);
  margin-bottom: 4px;
}

.manual-section-heading {
  padding-bottom: 16px;
  margin-bottom: 24px;
  border-bottom: 1.5px solid var(--secondary-shades-200);
}

.manual-section-card {
  display: none;
}
.manual-section-card.is-active {
  display: block;
}

.doko.workbench {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.doko.workbench .wb-alerts {
  border: 1.5px solid var(--secondary-shades-200);
  border-left: 4px solid var(--status-warning-text);
  border-radius: 8px;
  background: var(--grey-shades-50);
  overflow: hidden;
}
.doko.workbench .wb-alerts.has-critical {
  border-left-color: var(--status-error-text);
}
.doko.workbench .wb-alerts-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 7px 16px;
  border-bottom: 1.5px solid var(--secondary-shades-200);
  background: var(--grey-shades-100);
}
.doko.workbench .wb-alerts-title {
  font-size: 13px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--grey-shades-700);
}
.doko.workbench .wb-alerts-title em {
  margin-right: 6px;
  color: var(--grey-shades-500);
}
.doko.workbench .wb-alert {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 8px 16px;
  border-bottom: 1px solid var(--secondary-shades-200);
}
.doko.workbench .wb-alert:last-child {
  border-bottom: none;
}
.doko.workbench .wb-alert.is-critical .wb-alert-icon {
  color: var(--status-error-text);
}
.doko.workbench .wb-alert.is-warning .wb-alert-icon {
  color: var(--status-warning-text);
}
.doko.workbench .wb-alert-icon {
  flex: none;
  width: 20px;
  font-size: 15px;
  text-align: center;
}
.doko.workbench .wb-alert-text {
  display: flex;
  flex-direction: column;
  min-width: 0;
  flex: 1 1 auto;
}
.doko.workbench .wb-alert-title {
  font-size: 14px;
  font-weight: 600;
  line-height: 1.3;
}
.doko.workbench .wb-alert-detail {
  font-size: 12px;
  color: var(--grey-shades-600);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.doko.workbench .wb-alert-since {
  flex: none;
  padding: 2px 10px;
  border-radius: 999px;
  background: var(--grey-shades-200);
  font-size: 12px;
  font-weight: 600;
  color: var(--grey-shades-700);
  white-space: nowrap;
}
.doko.workbench .wb-alert.is-critical .wb-alert-since {
  background: var(--status-error-background);
  color: var(--status-error-text);
}
.doko.workbench .wb-alert.is-warning .wb-alert-since {
  background: var(--status-warning-background);
  color: var(--status-warning-text);
}
.doko.workbench .wb-alert-go {
  flex: none;
  font-size: 12px;
  font-weight: 500;
  white-space: nowrap;
}
.doko.workbench .wb-alert-go em {
  font-size: 10px;
  margin-left: 2px;
}
@media (max-width: 767px) {
  .doko.workbench .wb-alert {
    flex-wrap: wrap;
  }
  .doko.workbench .wb-alert-detail {
    white-space: normal;
  }
}
.doko.workbench .wb-money {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 12px;
}
.doko.workbench .wb-kpi {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding: 12px 16px;
  border: 1.5px solid var(--secondary-shades-200);
  border-top: 4px solid var(--secondary-shades-300);
  border-radius: 8px;
  background: var(--grey-shades-50);
}
.doko.workbench .wb-kpi.has-work {
  border-top-color: var(--primary-shades-600);
}
.doko.workbench .wb-kpi.is-debt.has-work {
  border-top-color: var(--status-error-text);
}
.doko.workbench .wb-kpi.is-debt.has-work .wb-kpi-amount {
  color: var(--status-error-text);
}
.doko.workbench .wb-kpi:hover {
  border-color: var(--primary-shades-300);
  border-top-color: var(--primary-shades-700);
}
.doko.workbench .wb-kpi-hit {
  position: absolute;
  inset: 0;
  border-radius: 8px;
  z-index: 1;
}
.doko.workbench .wb-kpi-label {
  font-size: 13px;
  font-weight: 500;
  color: var(--grey-shades-700);
  line-height: 1.2;
}
.doko.workbench .wb-kpi-amount {
  font-size: 26px;
  font-weight: 600;
  line-height: 1.15;
  color: var(--grey-shades-900);
  white-space: nowrap;
}
.doko.workbench .wb-kpi-split {
  display: flex;
  flex-direction: column;
  gap: 3px;
  margin-top: 2px;
  font-size: 11px;
  color: var(--grey-shades-500);
}
.doko.workbench .wb-kpi-split-bar {
  height: 3px;
  border-radius: 2px;
  overflow: hidden;
  background: var(--secondary-shades-200);
}
.doko.workbench .wb-kpi-split-bar i {
  display: block;
  height: 100%;
  background: var(--primary-shades-600);
}
.doko.workbench .wb-kpi-foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  font-size: 12px;
  color: var(--grey-shades-600);
}
.doko.workbench .wb-kpi-action {
  position: relative;
  z-index: 2;
  padding: 2px 10px;
  border: 1.5px solid var(--primary-shades-600);
  border-radius: 999px;
  background: transparent;
  font-size: 12px;
  font-weight: 500;
  color: var(--primary-shades-700);
  white-space: nowrap;
}
.doko.workbench .wb-kpi-action:hover {
  background: var(--primary-shades-600);
  color: #fff;
}
.doko.workbench .wb-main {
  display: grid;
  grid-template-columns: 7fr minmax(320px, 5fr);
  gap: 12px;
  align-items: start;
}
@media (max-width: 1199px) {
  .doko.workbench .wb-main {
    grid-template-columns: 1fr;
  }
}
.doko.workbench .wb-main.is-single {
  grid-template-columns: 1fr;
}
.doko.workbench .wb-panel {
  border: 1.5px solid var(--secondary-shades-200);
  border-radius: 8px;
  background: var(--grey-shades-50);
  overflow: hidden;
}
.doko.workbench .wb-panel-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 8px 16px;
  border-bottom: 1.5px solid var(--secondary-shades-200);
  background: var(--grey-shades-100);
}
.doko.workbench .wb-panel-title {
  font-size: 13px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--grey-shades-700);
}
.doko.workbench .wb-panel-meta {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 12px;
}
.doko.workbench .wb-panel-meta a {
  font-weight: 500;
  white-space: nowrap;
}
.doko.workbench .wb-panel-meta a em {
  font-size: 10px;
  margin-left: 2px;
}
.doko.workbench .wb-panel-note {
  color: var(--grey-shades-600);
  white-space: nowrap;
}
.doko.workbench .wb-flag {
  padding: 1px 8px;
  border-radius: 999px;
  background: var(--status-error-background);
  color: var(--status-error-text);
  font-weight: 500;
  white-space: nowrap;
}
.doko.workbench .wb-ticket {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  padding: 7px 16px;
  border-bottom: 1px solid var(--secondary-shades-200);
  color: var(--grey-shades-900);
}
.doko.workbench .wb-ticket:last-child {
  border-bottom: none;
}
.doko.workbench .wb-ticket:hover {
  background: var(--primary-shades-50);
  color: var(--grey-shades-900);
}
.doko.workbench .wb-ticket.is-late {
  box-shadow: inset 3px 0 0 var(--status-error-text);
}
.doko.workbench .wb-ticket.is-late .wb-ticket-waiting {
  color: var(--status-error-text);
  font-weight: 600;
}
.doko.workbench .wb-ticket-text {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.doko.workbench .wb-ticket-subject {
  font-size: 14px;
  font-weight: 500;
  line-height: 1.3;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.doko.workbench .wb-ticket-origin {
  font-size: 12px;
  color: var(--grey-shades-600);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.doko.workbench .wb-ticket-waiting {
  font-size: 13px;
  color: var(--grey-shades-600);
  white-space: nowrap;
}
.doko.workbench .wb-queue-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr));
  gap: 0;
}
.doko.workbench .wb-queue {
  padding: 8px 0 10px;
  border-right: 1.5px solid var(--secondary-shades-200);
}
.doko.workbench .wb-queue:last-child {
  border-right: none;
}
.doko.workbench .wb-queue-title {
  padding: 0 20px 6px;
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--grey-shades-500);
}
.doko.workbench .wb-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin: 0 10px 4px;
  padding: 7px 10px;
  border-radius: 6px;
  background: var(--primary-shades-50);
  color: var(--primary-shades-900);
  font-size: 14px;
}
.doko.workbench .wb-row:hover {
  background: var(--primary-shades-100);
  color: var(--primary-shades-900);
}
.doko.workbench .wb-row.is-late {
  background: var(--status-error-background);
  color: var(--status-error-text);
}
.doko.workbench .wb-row.is-late:hover {
  color: var(--status-error-text);
}
.doko.workbench .wb-row.is-late .wb-row-count {
  color: var(--status-error-text);
}
.doko.workbench .wb-row.is-clear {
  background: var(--grey-shades-100);
  color: var(--grey-shades-600);
}
.doko.workbench .wb-row.is-clear:hover {
  color: var(--grey-shades-600);
}
.doko.workbench .wb-row.is-clear .wb-row-count {
  color: var(--grey-shades-500);
}
.doko.workbench .wb-row-label {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.doko.workbench .wb-row-count {
  flex: none;
  min-width: 28px;
  font-weight: 700;
  font-size: 16px;
  line-height: 1.25;
  font-variant-numeric: tabular-nums;
  text-align: right;
}
.doko.workbench .wb-empty {
  padding: 12px 16px;
  font-size: 13px;
  color: var(--grey-shades-600);
}
.doko.workbench .wb-clear {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 32px;
  border: 1.5px dashed var(--secondary-shades-300);
  border-radius: 8px;
  color: var(--grey-shades-600);
}
.doko.workbench .wb-clear em {
  font-size: 20px;
  color: var(--primary-shades-600);
}

.doko.crons {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.doko.crons .crons-head {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 16px;
  flex-wrap: wrap;
}
.doko.crons .crons-tally {
  display: flex;
  gap: 8px;
}
.doko.crons .crons-tally-item {
  padding: 3px 12px;
  border: 1.5px solid;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 600;
  white-space: nowrap;
}
.doko.crons .crons-tally-item.is-active {
  border-color: var(--status-success-text);
  background: var(--status-success-background);
  color: var(--status-success-text);
}
.doko.crons .crons-tally-item.is-stopped {
  border-color: var(--status-error-text);
  background: var(--status-error-background);
  color: var(--status-error-text);
}
.doko.crons .crons-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 360px), 1fr));
  gap: 12px;
}
.doko.crons .cron-card {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding: 12px 16px 10px;
  border: 1.5px solid var(--secondary-shades-200);
  border-top: 4px solid var(--secondary-shades-300);
  border-radius: 8px;
  background: #fff;
  transition: border-color 0.15s ease;
}
.doko.crons .cron-card.is-active {
  border-top-color: var(--status-success-text);
}
.doko.crons .cron-card.is-stopped {
  border-top-color: var(--status-error-text);
  border-color: var(--status-error-text);
  background: var(--status-error-background);
}
.doko.crons .cron-card-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}
.doko.crons .cron-state {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.3px;
}
.doko.crons .cron-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  flex: none;
}
.doko.crons .is-active .cron-state {
  color: var(--status-success-text);
}
.doko.crons .is-active .cron-dot {
  background: var(--status-success-text);
}
.doko.crons .is-stopped .cron-state {
  color: var(--status-error-text);
}
.doko.crons .is-stopped .cron-dot {
  background: var(--status-error-text);
}
.doko.crons .cron-since {
  font-size: 11px;
  color: var(--grey-shades-600);
  white-space: nowrap;
}
.doko.crons .cron-name {
  margin: 4px 0 0;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.25;
  color: var(--grey-shades-900);
  overflow-wrap: anywhere;
}
.doko.crons .cron-job {
  font-family: monospace;
  font-size: 11px;
  color: var(--grey-shades-500);
  word-break: break-all;
}
.doko.crons .cron-card-foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-top: 10px;
  padding-top: 8px;
  border-top: 1px solid var(--secondary-shades-200);
  font-size: 11px;
  color: var(--grey-shades-600);
}
.doko.crons .cron-last {
  min-width: 0;
  line-height: 1.2;
}
.doko.crons .cron-action {
  flex: none;
  padding: 3px 14px;
  border: 1.5px solid;
  border-radius: 999px;
  background: transparent;
  font-size: 12px;
  font-weight: 600;
  white-space: nowrap;
  cursor: pointer;
}
.doko.crons .is-active .cron-action {
  border-color: var(--status-error-text);
  color: var(--status-error-text);
}
.doko.crons .is-active .cron-action:hover {
  background: var(--status-error-text);
  color: #fff;
}
.doko.crons .is-stopped .cron-action {
  border-color: var(--status-success-text);
  color: var(--status-success-text);
  background: #fff;
}
.doko.crons .is-stopped .cron-action:hover {
  background: var(--status-success-text);
  color: #fff;
}
.doko.crons .cron-locked {
  flex: none;
  color: var(--grey-shades-500);
  white-space: nowrap;
}
.doko.crons .cron-locked em {
  margin-right: 3px;
}
.doko.crons .cron-empty {
  margin: 0;
  color: var(--grey-shades-600);
}

/*
 * Interruptor de encendido/apagado.
 *
 * Para las marcas que se activan y se desactivan sueltas —los productos que vende la
 * comercializadora, por ejemplo—, donde la pregunta es «¿esto sí o no?» y no «¿cuál de
 * estas?». Varios interruptores pueden estar encendidos a la vez: si las opciones se
 * excluyen entre sí, esto es el control equivocado y va un grupo de opciones.
 *
 * El rótulo va delante y la palanca detrás, que es como se leen en la ficha: primero qué
 * es, después si está puesto. No lleva caja: se apoya en la tarjeta.
 */
.doko-switch {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin: 0;
  cursor: pointer;
  user-select: none;
  white-space: nowrap;
}
.doko-switch input {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}
.doko-switch-label {
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 16px;
  line-height: 150%;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-weight: 500;
  color: var(--grey-shades-600);
  transition: color 0.15s ease;
}
.doko-switch-label i {
  font-size: 15px;
  color: var(--grey-shades-400);
  transition: color 0.15s ease;
}
.doko-switch-track {
  position: relative;
  flex: 0 0 auto;
  width: 44px;
  height: 24px;
  border-radius: 200px;
  background: var(--grey-shades-200);
  transition: background-color 0.15s ease;
}
.doko-switch-thumb {
  position: absolute;
  top: 3px;
  left: 3px;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.25);
  transition: transform 0.15s ease;
}
.doko-switch:hover .doko-switch-track {
  background: var(--grey-shades-300);
}
input:checked + .doko-switch-track {
  background: var(--primary-shades-500);
}
input:checked + .doko-switch-track .doko-switch-thumb {
  transform: translateX(20px);
}
.doko-switch:has(input:checked) .doko-switch-label {
  color: var(--grey-shades-900);
  font-weight: 700;
}
.doko-switch:has(input:checked) .doko-switch-label i {
  color: var(--primary-shades-500);
}
input:focus-visible + .doko-switch-track {
  outline: 2px solid var(--primary-shades-500);
  outline-offset: 2px;
}

/*
 * Subida de un logo.
 *
 * Un `<input type="file">` pelado enseña el nombre del fichero, que de una imagen no dice
 * nada: hay que guardar y volver para saber si lo que se ha subido es lo que se quería.
 * Aquí el hueco del logo **es** el botón —se pulsa o se arrastra el fichero encima— y lo
 * que se ve dentro es la imagen: la que hay guardada, y en cuanto se elige otra, la nueva.
 *
 * El marco a rayas es el que dice que ahí falta algo o que ahí se suelta el fichero; en
 * cuanto hay imagen, se apaga y manda la imagen.
 */
.doko-logo-upload {
  display: flex;
  align-items: center;
  gap: 24px;
}
.doko-logo-upload input[type=file] {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}
.doko-logo-upload-well {
  position: relative;
  flex: 0 0 auto;
  width: 112px;
  height: 112px;
  margin: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  cursor: pointer;
  border-radius: 12px;
  border: 1.5px dashed var(--grey-shades-300);
  background: var(--grey-shades-50);
  transition: border-color 0.15s ease, background-color 0.15s ease;
}
.doko-logo-upload-well img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  padding: 8px;
}
.doko-logo-upload-well.has-image {
  border-style: solid;
  border-color: var(--grey-shades-200);
  background: #fff;
}
.doko-logo-upload-placeholder {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  color: var(--grey-shades-400);
}
.doko-logo-upload-placeholder i {
  font-size: 26px;
}
.doko-logo-upload-placeholder span {
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 12px;
  line-height: 150%;
}
.doko-logo-upload-overlay {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  background: rgba(0, 0, 0, 0.55);
  color: #fff;
  opacity: 0;
  transition: opacity 0.15s ease;
}
.doko-logo-upload-overlay i {
  font-size: 18px;
}
.doko-logo-upload-overlay span {
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 12px;
  line-height: 150%;
}
.doko-logo-upload-well:hover, .doko-logo-upload-well:focus-within {
  border-color: var(--primary-shades-500);
  background: var(--primary-shades-50);
}
.doko-logo-upload-well:hover .doko-logo-upload-overlay, .doko-logo-upload-well:focus-within .doko-logo-upload-overlay {
  opacity: 1;
}
.doko-logo-upload-well.is-dragover {
  border-style: dashed;
  border-color: var(--primary-shades-500);
  background: var(--primary-shades-50);
}
.doko-logo-upload-body {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  min-width: 0;
}
.doko-logo-upload-hint {
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 14px;
  line-height: 150%;
  color: var(--grey-shades-600);
}
.doko-logo-upload-file {
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 14px;
  line-height: 150%;
  display: none;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: var(--primary-shades-700);
  font-weight: 500;
}

.hidden {
  visibility: hidden;
}

.content-heading {
  border-bottom: 0 !important;
  margin-bottom: 0 !important;
  margin: 0 !important;
  padding: 4px 0px 24px 0px !important;
}

.wrapper, .section-, .content-wrapper, .content-heading {
  background-color: var(--grey-shades-100) !important;
}

@media (min-width: 768px) {
  .wrapper .section-container, .wrapper .footer-container {
    margin-left: 228px;
  }
}
nav.sidebar::-webkit-scrollbar {
  display: none;
}

nav.sidebar {
  scrollbar-width: none;
}

a, a:hover {
  color: var(--primary-shades-700);
}

.doko.footer-container {
  z-index: 1000;
}

.footer-content-doko .card-footer {
  display: none;
}

.doko .dropdown-menu,
.wrapper > .dropdown-menu {
  padding: 0;
  border-radius: var(--btn-radius);
  border: 1px solid var(--primary-shades-200);
  background: var(--grey-shades-50);
  box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.15);
  z-index: 1001;
  max-height: 416px;
  overflow-y: auto;
}
.doko .dropdown-menu.no-fixed-height,
.wrapper > .dropdown-menu.no-fixed-height {
  max-height: none;
  overflow-y: visible;
}
.doko .dropdown-menu .dropdown-divider,
.wrapper > .dropdown-menu .dropdown-divider {
  border-top: 1.5px solid var(--secondary-shades-200);
  margin: 0;
}
.doko .dropdown-menu .dropdown-item, .doko .dropdown-menu .btn,
.wrapper > .dropdown-menu .dropdown-item,
.wrapper > .dropdown-menu .btn {
  color: var(--primary-shades-500);
  font-size: 16px;
  font-weight: 500;
  padding: 8px 24px;
  border-radius: var(--btn-radius);
  cursor: pointer;
}
.doko .dropdown-menu .dropdown-item:hover, .doko .dropdown-menu .dropdown-item.active, .doko .dropdown-menu .btn:hover, .doko .dropdown-menu .btn.active,
.wrapper > .dropdown-menu .dropdown-item:hover,
.wrapper > .dropdown-menu .dropdown-item.active,
.wrapper > .dropdown-menu .btn:hover,
.wrapper > .dropdown-menu .btn.active {
  color: var(--primary-shades-800);
  background: var(--grey-shades-50);
}
.doko .dropdown-menu.grouped,
.wrapper > .dropdown-menu.grouped {
  min-width: 288px;
  padding: 6px 0 8px;
}
.doko .dropdown-menu.grouped .dropdown-header,
.wrapper > .dropdown-menu.grouped .dropdown-header {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 16px 16px 7px;
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  white-space: nowrap;
  color: var(--grey-shades-600);
  background: none;
}
.doko .dropdown-menu.grouped .dropdown-header:first-child,
.wrapper > .dropdown-menu.grouped .dropdown-header:first-child {
  padding-top: 10px;
}
.doko .dropdown-menu.grouped .dropdown-header::before,
.wrapper > .dropdown-menu.grouped .dropdown-header::before {
  content: "";
  flex: none;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--grey-shades-300);
}
.doko .dropdown-menu.grouped .dropdown-header::after,
.wrapper > .dropdown-menu.grouped .dropdown-header::after {
  content: "";
  flex: 1;
  height: 1px;
  background: var(--grey-shades-200);
}
.doko .dropdown-menu.grouped .dropdown-header.here,
.wrapper > .dropdown-menu.grouped .dropdown-header.here {
  color: var(--primary-shades-900);
}
.doko .dropdown-menu.grouped .dropdown-header.here::before,
.wrapper > .dropdown-menu.grouped .dropdown-header.here::before {
  background: var(--primary-shades-500);
  box-shadow: 0 0 0 3px var(--primary-shades-50);
}
.doko .dropdown-menu.grouped .dropdown-header.here::after,
.wrapper > .dropdown-menu.grouped .dropdown-header.here::after {
  background: linear-gradient(90deg, var(--primary-shades-200), var(--grey-shades-200));
}
.doko .dropdown-menu.grouped .dropdown-item,
.wrapper > .dropdown-menu.grouped .dropdown-item {
  position: relative;
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 1px 8px;
  width: auto;
  padding: 9px 12px;
  border-radius: 10px;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.2;
  color: var(--grey-shades-800);
  text-decoration: none;
  transition: background 0.14s ease, color 0.14s ease;
}
.doko .dropdown-menu.grouped .dropdown-item i,
.wrapper > .dropdown-menu.grouped .dropdown-item i {
  flex: none;
  width: 18px;
  text-align: center;
  font-size: 15px;
  color: var(--grey-shades-400);
  transition: color 0.14s ease;
}
.doko .dropdown-menu.grouped .dropdown-item:hover,
.wrapper > .dropdown-menu.grouped .dropdown-item:hover {
  color: var(--grey-shades-900);
  background: var(--primary-shades-50);
}
.doko .dropdown-menu.grouped .dropdown-item:hover i,
.wrapper > .dropdown-menu.grouped .dropdown-item:hover i {
  color: var(--primary-shades-600);
}
.doko .dropdown-menu.grouped .dropdown-item.active,
.wrapper > .dropdown-menu.grouped .dropdown-item.active {
  color: var(--primary-shades-900);
  background: var(--primary-shades-50);
  font-weight: 700;
}
.doko .dropdown-menu.grouped .dropdown-item.active i,
.wrapper > .dropdown-menu.grouped .dropdown-item.active i {
  color: var(--primary-shades-600);
}
.doko .dropdown-menu.grouped .dropdown-item.active::before,
.wrapper > .dropdown-menu.grouped .dropdown-item.active::before {
  content: "";
  position: absolute;
  left: 0;
  top: 9px;
  bottom: 9px;
  width: 3px;
  border-radius: 0 3px 3px 0;
  background: var(--primary-shades-500);
}
.doko .dropdown-menu::-webkit-scrollbar,
.wrapper > .dropdown-menu::-webkit-scrollbar {
  width: 4px;
  height: 4px;
}
.doko .dropdown-menu::-webkit-scrollbar-track,
.wrapper > .dropdown-menu::-webkit-scrollbar-track {
  background: transparent;
}
.doko .dropdown-menu::-webkit-scrollbar-thumb,
.wrapper > .dropdown-menu::-webkit-scrollbar-thumb {
  background: var(--secondary-shades-500);
  border-radius: 8px;
}
.doko .dropdown-menu::-webkit-scrollbar-thumb:hover,
.wrapper > .dropdown-menu::-webkit-scrollbar-thumb:hover {
  background: var(--secondary-shades-500);
}

.doko .dropdown-menu-terciary,
.wrapper > .dropdown-menu-terciary {
  border: 1px solid var(--grey-shades-200);
}
.doko .dropdown-menu-terciary .dropdown-item, .doko .dropdown-menu-terciary .btn,
.wrapper > .dropdown-menu-terciary .dropdown-item,
.wrapper > .dropdown-menu-terciary .btn {
  color: var(--grey-shades-500);
}
.doko .dropdown-menu-terciary .dropdown-item:hover, .doko .dropdown-menu-terciary .btn:hover,
.wrapper > .dropdown-menu-terciary .dropdown-item:hover,
.wrapper > .dropdown-menu-terciary .btn:hover {
  color: var(--grey-shades-800);
  background: var(--grey-shades-50);
}

.doko .bootstrap-tagsinput {
  padding: 0 !important;
  border: 0 !important;
  display: flex;
  align-items: center;
}
.doko .bootstrap-tagsinput .tag {
  background-color: var(--btn-solid-background-default) !important;
  padding: 8px 16px;
  font-family: var(--font-family);
  color: var(--grey-shades-900);
  font-size: 16px;
  line-height: 150%;
  color: #fff;
  margin-right: 8px;
}
.doko .bootstrap-tagsinput .tag [data-role=remove]:hover {
  box-shadow: none;
}
.doko .bootstrap-tagsinput input {
  width: auto; /* Ajusta según el diseño, pero evita shrink */
  flex-grow: 1; /* Deja que use el espacio sobrante */
}

.line-divider {
  border-top: 1.5px solid var(--secondary-shades-200);
  margin: 0;
}

.badge {
  padding: 4px 16px;
  border-radius: var(--btn-radius);
  color: #fff;
}

.doko.modal i.modal-cancel {
  color: var(--grey-shades-900); /* Color negro para los elementos <i> con la clase modal-cancel */
}

body > .datepicker {
  z-index: 9999 !important;
}

.datepicker {
  padding: 0 !important;
}

/*# sourceMappingURL=doko.css.map */
