:root {
  --form-color: #ffffff;
  --text-color-secundary: rgb(66, 66, 66);
  --main-color1: #bddbff;
  --main-color2: #000066;
  --sidebar-bckg: rgb(100, 100, 100);
  --sidebar-wdt: 200px;
  --sidebar-bckg-item: linear-gradient(
    158deg,
    rgba(255, 255, 255, 0) 50%,
    rgba(255, 255, 255, 1) 65%,
    rgba(63, 214, 209, 1) 100%
  );
  --sidebar-hover-item-bckg: linear-gradient(
    158deg,
    rgba(255, 255, 255, 1) 0%,
    rgba(63, 214, 209, 1) 100%
  );
  --sidebar-hover-item-color: rgb(0, 0, 0);
  --sidebar-hover-item-selected-bckg: rgb(255, 255, 255);
  --sidebar-hover-item-selected-color: rgb(0, 0, 0);
  --sidebar-toggle-top: calc(50% - 50px);
  --field-outline: 2px solid rgb(0, 142, 207);
  --field-shdow: 0px 0px 20px rgba(0, 105, 153, 0.5);
  --loader-color: rgb(83, 83, 83);
  /* --container-color: #e9e9e9; */
  --container-color: #e9e9e900;
  --modal-bckg: rgba(0, 0, 0, 0.3);
  --chat-bkg-image: rgb(11, 122, 111);
  --chat-bkg-color: rgb(11, 122, 111);
  --chat-activo-size: 600px;
  --chat-inactivo-size: 120px;
  --table-tr: white;
  --table-tr-color: rgb(0, 0, 0);
  --table-tr-even: rgb(148, 148, 148);
  --table-tr-even-color: rgb(255, 255, 255);
  --table-button-bck: rgb(63, 214, 209);
  --table-button-color: rgb(0, 0, 0);
  --paginas-button-bck: white;
  --paginas-button-color: black;
}

@font-face {
  font-family: "noto-sans";
  src: url("Noto_Sans/NotoSans-Regular.woff2");
  font-display: swap;
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  font-family: "noto-sans", sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

*:focus {
  /* outline: auto red 1px !important; */
}
html,
body {
  overscroll-behavior-x: none;
}
.main-gradient {
  background: linear-gradient(
    180deg,
    rgba(228, 228, 228, 1) 0%,
    rgba(208, 229, 255, 1) 100%
  );
}

.hidden {
  display: none;
}

.absolute-top {
  position: absolute;
  top: 0;
  z-index: 1;
}

.focus1:focus {
  outline: unset;
  background-color: #ebebeb;
  border-radius: 5px;
}

.lightgray {
  background-color: #ebebeb;
}

.no-shadow {
  box-shadow: none !important;
}

.shadow-1 {
  box-shadow: 0px 10px 10px 10px rgba(0, 0, 0, 0.3) !important;
}

.shadow-2 {
  box-shadow: 0px 10px 10px 5px rgba(0, 0, 0, 0.2) !important;
}

.shadow-3 {
  box-shadow: 0px 0px 10px 2px rgba(0, 0, 0, 0.2) !important;
}

button:disabled {
  /* background-color: rgb(175, 175, 175) !important; */
  background-color: var(--table-button-bck) !important;
}

.borde-1 {
  border: 1px solid rgb(105, 105, 105) !important;
}

.borde-2 {
  border: 7px double rgb(0, 0, 0) !important;
}

.borde-3 {
  border: 5px dotted rgb(105, 105, 105) !important;
}

.borde-item-left {
  border-top-right-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
}

.borde-item-right {
  border-top-left-radius: 0 !important;
  border-bottom-left-radius: 0 !important;
}

.radius5 {
  border-radius: 5px;
}

.pd5 {
  padding: 5px;
}

.pd10 {
  padding: 10px;
}

.pd15 {
  padding: 15px;
}

.pd20 {
  padding: 20px;
}

.pd-tp5 {
  padding-top: 5px;
}

.pd-bt5 {
  padding-bottom: 5px;
}

.mg-auto {
  margin-left: auto;
  margin-right: auto;
}

.mg-l-auto {
  margin-left: auto !important;
}

.mg-r-auto {
  margin-right: auto !important;
}

.mg-l-15 {
  margin-left: 15px;
}

.mg-l-0 {
  margin-left: 0 !important;
}

.mg-l-5 {
  margin-left: 5px !important;
}

.mg-r-0 {
  margin-right: 0 !important;
}

.mg-tp5 {
  margin-top: 5px;
}

.mg-tp10 {
  margin-top: 10px;
}

.mg-tp15 {
  margin-top: 15px;
}

.mg-tp20 {
  margin-top: 20px;
}

.mg-tp50 {
  margin-top: 50px;
}

.mg--tp15 {
  margin-top: -15px;
}

.mg-bt5 {
  margin-bottom: 5px;
}

.mg-bt10 {
  margin-bottom: 10px;
}

.mg-bt15 {
  margin-bottom: 15px;
}

.mg-bt20 {
  margin-bottom: 20px;
}

.mg-bt50 {
  margin-bottom: 50px;
}

.gap1 {
  gap: 1px !important;
}

.gap2 {
  gap: 2px !important;
}

.gap3 {
  gap: 3px !important;
}

.gap4 {
  gap: 4px !important;
}

.gap5 {
  gap: 5px !important;
}

.gap10 {
  gap: 10px !important;
}

.gap15 {
  gap: 15px !important;
}

.gap20 {
  gap: 20px !important;
}

.gap30 {
  gap: 30px !important;
}

.gap40 {
  gap: 40px !important;
}

.gap50 {
  gap: 50px !important;
}

.brd1 {
  border: 1px solid darkgray;
}

.brd0 {
  border: none;
}

.txt-size5 {
  font-size: 5px !important;
}

.txt-size10 {
  font-size: 10px !important;
}

.txt-size15 {
  font-size: 15px !important;
}

.txt-size20 {
  font-size: 20px !important;
}

.txt-size25 {
  font-size: 25px !important;
}

.bck-white {
  background-color: white !important;
}

.txt-color-lightgray {
  color: var(--text-color-secundary);
}

.wdt100 {
  width: 100% !important;
}

.wdt90 {
  width: 90% !important;
}

.wdt80 {
  width: 80% !important;
}

.wdt50 {
  width: 50% !important;
}

.wdt45 {
  width: 45% !important;
}

.wdt40 {
  width: 40% !important;
}

.container .hg-100 {
  min-height: calc(100vh - 40px);
  min-height: calc(100svh - 40px);
}

.container .hg-80 {
  min-height: calc(80vh - 40px);
  min-height: calc(80svh - 40px);
}

.txtcenter {
  text-align: center;
}

.nogap {
  gap: 0 !important;
}

.nopad {
  padding: 0 !important;
}

.mx-wdt1200 {
  max-width: 1200px !important;
}

.mx-wdt100 {
  max-width: 100% !important;
}

.mx-wdt90 {
  max-width: 90% !important;
}

.mx-wdt30 {
  max-width: 30% !important;
}

.mx-wdt20 {
  max-width: 30% !important;
}

.min-wdt200 {
  min-width: 200px !important;
}

.min-wdt70 {
  min-width: 70% !important;
}

.mx-hgt100 {
  max-height: 100% !important;
}

.mx-hgt300 {
  max-height: 300px !important;
}

.hgt100 {
  height: 100% !important;
}

.min-hgt50s {
  min-height: 50vh !important;
  min-height: 50svh !important;
}

.stick-right {
  position: sticky;
  right: 0;
  background-color: inherit;
}

.stick-left {
  position: sticky;
  left: 0;
  background-color: inherit;
}

.stick-top {
  position: sticky;
  top: 0;
  background-color: inherit;
}

.stick-bottom {
  position: sticky;
  bottom: 0;
  background-color: inherit;
}

.click {
  cursor: pointer;
}

.icono-1 {
  width: 25px;
}

.icono-2 {
  width: 35px;
}

.icono-3 {
  width: 55px;
}

.absolute {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

.overflow-hide {
  overflow: hidden;
}

.overflow-auto {
  overflow: auto !important;
}

.flow-auto {
  overflow: auto;
}

.grid {
  display: grid;
  justify-content: center;
  align-items: start;
}

.template-1 {
  grid-template-columns: 100%;
}

.template-2 {
  grid-template-columns: 50% 50%;
}

.template-3 {
  grid-template-columns: 33.33% 33.33% 33.33%;
}

.template-4 {
  grid-template-columns: 25% 25% 25% 25%;
}

.template-5 {
  grid-template-columns: 20% 20% 20% 20% 20%;
}

.template-6 {
  grid-template-columns: 16.66% 16.66% 16.66% 16.66% 16.66% 16.66%;
}

.row {
  display: flex;
  gap: 5px;
}

.wrap {
  flex-wrap: wrap;
}

.column {
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.center-flex {
  justify-content: center;
  align-items: center;
}

.left-flex {
  justify-content: flex-start;
}

.center-top-flex {
  justify-content: center;
  align-items: flex-start;
}

.left-center-flex {
  justify-content: flex-start;
  align-items: center;
}

.right-center-flex {
  justify-content: flex-end;
  align-items: center;
}

.center-right-flex {
  justify-content: center;
  align-items: flex-start;
}

.left-top-flex {
  justify-content: flex-start;
  align-items: flex-start;
}

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

.around-flex {
  justify-content: space-around !important;
}

.btn {
  padding: 5px;
  cursor: pointer;
  border: none;
  border-radius: 5px;
  width: 100%;
  box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.2);
  font-size: 12px;
  font-weight: 600;
}

.btn-confirm {
  padding: 12px;
  cursor: pointer;
  border: none;
  border-radius: 25px;
  box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.3);
  font-size: 18px;
  font-weight: 600;
  margin: 5px;
  background-color: #00aeff;
  color: black;
}

.btn-cancel {
  padding: 12px;
  cursor: pointer;
  border: none;
  border-radius: 25px;
  box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.3);
  font-size: 18px;
  font-weight: 600;
  margin: 5px;
  background-color: #ff3e3e;
  color: white;
}

button.btn {
  padding: 8px;
  cursor: pointer;
  /* border: none; */
  border-radius: 5px;
  width: 100%;
  box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.3);
  font-size: 18px;
  font-weight: 600;
}

button.danger {
  color: white;
  background-color: rgb(170, 32, 32);
}

.nobreak {
  white-space: nowrap;
}

.mxbtwdt100 {
  max-width: 100px;
}

.btn:active {
  box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.5);
}

.field-button {
}

.field-context {
  gap: 0px;
}

/* .field-context:hover {
	transform: scale(1.3);
	background-color: white;
	border-radius: 10px;
	box-shadow: 0 0 30px rgba(0, 0, 0, 0.3);
	padding: 10px;
	margin: -10px;
	transition: all 0.1s ease-in-out;
} */
.center {
  margin: auto;
}

.container {
  min-height: calc(100vh);
  min-height: calc(100svh);
  max-width: 100%;
  padding: 20px 0 20px 0;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 15px;
  background-color: var(--container-color);
}

.panel {
  min-height: 100vh;
  min-height: 100svh;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  overflow: hidden;
}

.panel .sidepanel {
  min-width: var(--sidebar-wdt);
  max-width: var(--sidebar-wdt);
  height: 100vh;
  height: 100svh;
  background-color: var(--sidebar-bckg);
  transition: all 0.3s ease-in-out;
  box-shadow: 5px 0px 10px rgba(0, 0, 0, 0.3);
  z-index: 15;
  user-drag: none;
  -webkit-user-drag: none;
  user-select: none;
  -moz-user-select: none;
  -webkit-user-select: none;
  -ms-user-select: none;
}

.panel .sidepanel a,
.panel .sidepanel img {
  user-drag: none;
  -webkit-user-drag: none;
  user-select: none;
  -moz-user-select: none;
  -webkit-user-select: none;
  -ms-user-select: none;
}

.panel .sidepanel .usuario {
  width: 100%;
  height: 100px;
  background-color: var(--sidebar-bckg);
}

.panel .sidepanel .usuario .foto-perfil {
  min-width: 100px;
  max-width: 100px;
  min-height: 100px;
  max-height: 100px;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  color: white;
}

.panel .sidepanel .usuario .nombre {
  width: 90%;
  display: flex;
  padding-top: 5px;
  padding-bottom: 5px;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  text-align: center;
  background-color: white;
  border-radius: 5px;
}

.panel .sidepanel .items {
  width: 100%;
  height: calc(100vh - 100px);
  height: calc(100svh - 110px);
  overflow: auto;
  padding-left: 10px;
  padding-right: 10px;
  gap: 5px;
}

.panel .sidepanel .items .item {
  width: 100%;
  padding-top: 10px;
  padding-bottom: 10px;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  cursor: pointer;
  border-radius: 0px;
  margin-left: auto;
  margin-right: auto;
  color: white;
  border-radius: 50px;
  font-size: 14px;
  background: var(--sidebar-bckg-item);
  background-position: 0% 50%;
  background-size: 400% 100%;
  transition: background 0.2s linear;
  user-select: none;
  text-decoration: none;
}

.panel .sidepanel .items .item:hover {
  color: var(--sidebar-hover-item-color);
  /* background: var(--sidebar-hover-item-bckg); */
  background-position: 100% 60%;
  /* background-size: 100%; */
}

.panel .sidepanel .items .item.cerrar-sesion {
  color: white;
  background-color: black;
}

.panel .sidepanel .items .item.cerrar-sesion:hover {
  color: black !important;
  background-color: white !important;
}

.panel .sidepanel .items .item.selected {
  color: var(--sidebar-hover-item-selected-color);
  background-color: var(--sidebar-hover-item-selected-bckg);
}

.panel .sidepanel .items .item.selected:hover {
  color: var(--sidebar-hover-item-color);
  /* background: var(--sidebar-hover-item-bckg); */
}

.panel .sidepanel .items .item .icono {
  height: 35px;
  margin-left: 15px;
  margin-right: 15px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.panel .sidepanel .items .item:hover .icono {
  /* filter: invert(100%); */
}

.panel .sidepanel .items .item.cerrar-sesion .icono {
  /* filter: invert(100%); */
}

.panel .sidepanel .items .item.cerrar-sesion:hover .icono {
  filter: invert(0%);
}

.panel .mainpanel {
  width: 100%;
  transition: all 0.3s ease-in-out;
  height: 100vh;
  height: 100svh;
  overflow: auto;
}

.panel .mainpanel .header {
  width: 100%;
  height: 70px;
  background-color: #e6e7e8;
  display: flex;
  justify-content: center;
  align-items: center;
}

.header-1 {
  width: 100%;
  height: 70px;
  background-color: #ffffff;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.2);
}

.panel .mainpanel .header img {
  height: 90%;
}

.panel .mainpanel .header .items {
  width: 100%;
  height: 100%;
  padding-left: 15px;
  padding-right: 15px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
}

.panel .mainpanel .header .items .item {
  width: 100px;
}

.panel .mainpanel .content {
  width: 100%;
  /* height: calc(100vh - 70px); */
  padding: 0 20px 0 20px;
  background-image: url("../img/fondo-web-9.png");
  background-attachment: fixed;
  background-size: contain;
  background-color: var(--container-color);
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-direction: column;
  color: gray;
  overflow: auto;
}

form {
  background-color: var(--form-color);
}

.formulario {
  background-color: var(--form-color);
  box-shadow: 0px 0px 30px 10px rgba(0, 0, 0, 0.3);
  padding: 50px 20px 50px 20px;
  border-radius: 10px;
  position: relative;
  overflow: hidden;
  min-width: 300px;
  width: 100%;
  max-width: 400px;
}

.formulario .line {
  width: 100%;
  height: 2px;
  background-color: rgb(141, 141, 141);
  border-radius: 5px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 10px;
  margin-bottom: 10px;
}

.load-container-btm button.danger {
  padding: 5px;
  font-size: 12px;
  color: white;
  border-radius: 5px;
  border: none;
  background-color: rgb(255, 66, 66);
}

.line-titulo {
  width: 90%;
  height: 2px;
  margin-top: 40px;
  margin-bottom: 40px;
  background-color: rgb(141, 141, 141);
  border-radius: 5px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.line-titulo p {
  background-color: white;
  padding: 3px;
  border-radius: 5px;
  font-size: 20px;
}

.formulario .line p {
  background-color: var(--form-color);
  padding: 3px;
  border-radius: 5px;
}

.swal2-input {
  margin: 15px auto 3px;
}

.form-fields {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  gap: 15px;
  min-width: 300px;
}

.form-field-checkbox {
  height: 100%;
  width: 100%;
  cursor: pointer;
}

input.form-field {
  padding: 5px;
  border-radius: 5px;
  border: 1px solid darkgray;
  font-size: 20px;
  width: 100%;
  max-width: 100%;
}

input.form-field:disabled {
  background-color: #e7e7e7;
}

input.form-field:focus {
  outline: var(--field-outline);
  box-shadow: var(--field-shdow);
}

input.form-field[type="file"]::file-selector-button {
  border: none;
  border-radius: 20px;
  backdrop-filter: blur(10px);
  padding: 10px;
  font-weight: 600;
  height: 100%;
  cursor: pointer;
  transition: all 0.1s linear;
}

input.form-field[type="file"]::file-selector-button:hover {
  background-color: rgba(0, 0, 0, 0.8);
  color: white;
}

textarea.form-field {
  padding: 5px;
  border-radius: 5px;
  border: 1px solid darkgray;
  font-size: 20px;
  width: 100%;
  max-width: 100%;
}

textarea.form-field:disabled {
  background-color: #e7e7e7;
}

textarea.form-field:focus {
  outline: var(--field-outline);
  box-shadow: var(--field-shdow);
}

select.form-field {
  padding: 5px;
  border-radius: 5px;
  border: 1px solid darkgray;
  font-size: 20px;
}

select.form-field:focus {
  outline: var(--field-outline);
  box-shadow: var(--field-shdow);
}

input.search {
  border-radius: 0 50px 50px 0;
  max-width: 400px;
  margin: auto;
}

.checkbox-wrapper-2 .ikxBAC {
  appearance: none;
  background-color: #dfe1e4;
  border-radius: 72px;
  border-style: none;
  flex-shrink: 0;
  height: 20px;
  margin: 0;
  position: relative;
  width: 30px;
}

.checkbox-wrapper-2 .ikxBAC::before {
  bottom: -6px;
  content: "";
  left: -6px;
  position: absolute;
  right: -6px;
  top: -6px;
}

.checkbox-wrapper-2 .ikxBAC,
.checkbox-wrapper-2 .ikxBAC::after {
  transition: all 100ms ease-out;
}

.checkbox-wrapper-2 .ikxBAC::after {
  background-color: #fff;
  border-radius: 50%;
  content: "";
  height: 14px;
  left: 3px;
  position: absolute;
  top: 3px;
  width: 14px;
}

.checkbox-wrapper-2 .ikxBAC:hover {
  background-color: #c9cbcd;
  transition-duration: 0s;
}

.checkbox-wrapper-2 .ikxBAC:checked {
  background-color: var(--table-button-bck);
}

.checkbox-wrapper-2 .ikxBAC:checked::after {
  background-color: #fff;
  left: 13px;
}

.checkbox-wrapper-2 :focus:not(.focus-visible) {
  outline: 0;
}

.checkbox-wrapper-2 .ikxBAC:checked:hover {
  background-color: var(--table-button-bck);
}

.search-wrap > .icon {
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50px 0 0 50px;
  background-color: black;
  padding: 10px;
  color: white;
}

.field-wrap {
  border: 1px solid darkgray;
  border-radius: 10px;
  padding: 5px;
  padding-top: 0;
  gap: 0px;
  background-color: rgb(234, 241, 245);
  transition: all 0.3s ease-in;
  text-align: center;
  cursor: pointer;
}

.field-wrap:hover {
  box-shadow: 5px 5px 20px rgba(0, 0, 0, 0.3);
  border-color: rgb(63, 214, 209);
  background-color: white;
  color: black;
  z-index: 1;
}

.field-wrap:has(> input:focus),
.field-wrap:has(> select:focus),
.field-wrap:has(> textarea:focus) {
  box-shadow: 5px 5px 20px rgba(0, 0, 0, 0.3);
  border-color: rgb(63, 214, 209);
  background-color: white;
  color: black;
  z-index: 1;
}

.field-wrap input {
  border: none;
  font-size: 13px;
  background-color: rgba(0, 0, 0, 0);
  text-align: center;
  cursor: pointer;
}

.field-wrap select {
  border: none;
  font-size: 13px;
  background-color: rgba(0, 0, 0, 0);
}

.field-wrap input:focus {
  outline: none;
  box-shadow: none;
  /* background-color: rgba(255, 255, 255, 0.5); */
}

.field-wrap select {
  border: none;
  font-size: 13px;
}

.field-wrap select:focus {
  outline: none;
  box-shadow: none;
  /* background-color: rgba(255, 255, 255, 0.1); */
}

.din-form-field {
  min-width: 100px;
}

select.din-form-field {
  min-width: 120px;
}

table input.din-form-field {
  border: none;
  background-color: transparent;
  width: 100%;
  padding: 10px;
  color: inherit;
  font-size: inherit;
  font-family: inherit;
}

table input.din-form-field:focus {
  outline: none;
  background-color: rgba(0, 0, 0, 0.2);
}

table select.din-form-field {
  border: none;
  background-color: transparent;
  width: 100%;
  padding: 10px;
  color: inherit;
  font-size: inherit;
  font-family: inherit;
}

table select.din-form-field:focus {
  outline: none;
  background-color: rgba(0, 0, 0, 0.2);
}
#lada-list {
  display: none;
  position: absolute;
  top: calc(100% + 5px);
  left: 0;
  max-height: 300px;
  width: 100%px;
  background-color: white;
  border-radius: 20px;
  border: 1px solid rgb(196, 196, 196);
  overflow: auto;
  color: black;
}
.lada-code {
  padding: 10px;
  transition: background 0.1s linear;
  cursor: pointer;
}
.lada-code:hover {
  background: rgba(0, 0, 0, 0.2);
}
.lada-code + .lada-code {
  border-top: 1px solid rgb(199, 199, 199);
}
#lada-search {
  position: sticky;
  top: 0;
  padding: 10px;
}
.field-context label {
  font-size: 20px;
  text-shadow: 1px 1px #ffffff, -1px -1px #ffffff, -1px 1px #ffffff,
    1px -1px #ffffff;
}

.borde {
  width: 70%;
  height: 1px;
  background-color: #cacaca;
}

img.logo {
  height: 100%;
  max-width: 150px;
  filter: drop-shadow(0px 0px 4px rgb(63, 214, 209));
  animation: animlogo 3s ease-in-out 0s infinite;
  user-select: none;
}

.drop-shadow {
  filter: drop-shadow(5px 5px 5px #8b8b8b);
}

img.form-logo {
  border-radius: 10px;
}

img.logo.outside {
  position: absolute;
  top: 15px;
  left: 15px;
}

.primario {
  background-color: rgb(0, 0, 0);
  color: white;
  font-size: 17px;
  letter-spacing: 1px;
  transition: all 0.3s ease-in-out;
}
.primario:hover {
  box-shadow: 0 0 10px rgb(0, 0, 0);
}

.primario:focus {
  outline: solid rgb(63, 214, 209) 2px;
}

.primario-anim {
  background-color: black;
  color: #ffffff;
  border-radius: 100px !important;
  height: 50px;
  text-shadow: 0px 0px 5px black;
  position: relative;
  overflow: hidden;
  white-space: nowrap;
  transition: background-color 0.3s linear;
}

.primario-anim:hover {
  background-color: transparent;
}

.primario-anim:before {
  content: "";
  position: absolute;
  width: 401px;
  height: 401px;
  border-radius: 50%;
  top: -175px;
  left: 0;
  z-index: -1;
  background: linear-gradient(
    0deg,
    rgba(34, 193, 195, 1) 0%,
    rgba(253, 187, 45, 1) 100%
  );
  animation: prim-anim 5s infinite;
}

.acciones {
  background-color: rgb(0, 101, 216);
  color: white;
  font-size: 17px;
  letter-spacing: 1px;
}

.secundario {
  background-color: rgb(148, 26, 26);
  color: white;
  font-size: 17px;
  letter-spacing: 1px;
  transition: all 0.3s ease-in-out;
}
.secundario:hover {
  box-shadow: 0 0 10px rgb(148, 26, 26);
}

.opt-trigger {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 100px;
  box-shadow: 3px 3px 5px rgba(0, 0, 0, 0.3);
  padding: 10px;
  background-color: white;
  color: black;
  white-space: nowrap;
  gap: 5px;
  cursor: pointer;
  user-select: none;
}

.opt-layer {
  display: flex;
  position: absolute;
  width: 100%;
  background-color: white;
  border-radius: 20px;
  height: 0px;
  opacity: 0;
  overflow: hidden;
}

.opt-layer.open {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  top: 100%;
  gap: 5px;
  z-index: 101;
  height: unset;
  padding: 10px 5px 10px 5px;
  opacity: 1;
  transition: all 0.3s linear;
  box-shadow: 0px 0px 300px 100px rgba(0, 0, 0, 0.5);
}

.opt-layer.open2 {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  bottom: 100%;
  gap: 5px;
  z-index: 101;
  height: unset;
  padding: 10px 5px 10px 5px;
  opacity: 1;
  transition: all 0.3s linear;
  box-shadow: 0px 0px 300px 100px rgba(0, 0, 0, 0.5);
}

.q-mark {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  box-shadow: 3px 3px 5px rgba(0, 0, 0, 0.3);
  background-color: white;
  color: black !important;
  white-space: nowrap;
  gap: 1px;
  cursor: pointer;
  user-select: none;
}

.q-mark:hover > .sug {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  left: calc(100% + 5px);
  gap: 5px;
  z-index: 101;
  height: unset;
  padding: 5px 5px 5px 5px;
  opacity: 1;
  transition: all 0.3s linear;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.5);
  text-wrap: pretty;
  width: 100px;
}

.q-mark > .sug {
  display: flex;
  position: absolute;
  backdrop-filter: blur(10px);
  border-radius: 20px;
  height: 0px;
  opacity: 0;
  overflow: hidden;
  font-size: 12px !important;
  font-weight: 400 !important;
}

.texto-ejemplo {
  margin-top: 15px;
  margin-left: auto;
  margin-right: auto;
  font-size: 40px;
  color: rgb(105, 105, 105);
  text-shadow: 5px 5px 20px rgba(0, 0, 0, 0.5);
}

.loading {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: rgba(0, 0, 0, 0.15);
  border-radius: 5px;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 200;
}

.loading .loader {
  width: 50px;
  height: 50px;
  border: 5px solid var(--loader-color);
  border-bottom: 5px solid rgba(0, 0, 0, 0);
  border-radius: 50%;
  /* box-shadow: 0 0 20px rgba(0, 0, 0, 0.3), inset 0 0 20px rgba(0, 0, 0, 0.3); */
  animation: 1s load linear infinite;
}

.tabla-container {
  /* max-height: 600px; */
  width: calc(100% - 2px);
  overflow: auto;
  /* padding-top: 15px;
	border: 1px solid lightgray; */
}

.tabla-container .tabla {
  max-height: calc(100svh - 220px);
  min-height: 200px;
}

.tabla-chats {
  width: 100%;
  overflow: auto;
}

table {
  font-family: arial, sans-serif;
  border-collapse: separate;
  border-spacing: 0;
  width: 100%;
  /* overflow: hidden; */
  border-radius: 20px;
  font-size: 15px;
}

table button {
  padding: 10px 15px 10px 15px !important;
  border-radius: 20px !important;
  background-color: var(--table-button-bck) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  border: none !important;
  color: var(--table-button-color) !important;
  white-space: nowrap !important;
  max-width: 200px;
}

td,
th {
  text-align: left;
  padding: 10px;
}

tr {
  border: 1px solid rgb(233, 233, 233);
  border-style: none solid solid none;
  background-color: var(--table-tr);
  color: var(--table-tr-color);
  transition: 0.1s linear;
}
tr:first-child td:first-child {
  border-top-left-radius: 20px;
}
tr:first-child td:last-child {
  border-top-right-radius: 20px;
}
tr:first-child th:first-child {
  border-top-left-radius: 20px;
}
tr:first-child th:last-child {
  border-top-right-radius: 20px;
}

tr:last-child td:first-child {
  border-bottom-left-radius: 20px;
}
tr:last-child td:last-child {
  border-bottom-right-radius: 20px;
}

/* tr:first-child td { border-top-style: solid; }
tr td:first-child { border-left-style: solid; } */

tr:nth-child(even) {
  /* background-color: var(--table-tr-even);
	color: var(--table-tr-even-color); */
}

tr:hover {
  background-color: rgb(212, 231, 230);
  color: black;
}

table .stick-right {
  box-shadow: inset 20px 0px 10px -20px rgba(0, 0, 0, 0.3);
}

.opciones {
  gap: 0px;
  display: table;
  justify-content: center;
  align-items: center;
  margin: auto;
  margin-bottom: 10px;
  border: 1px solid black;
  border-radius: 5px;
}

.paginas button {
  padding: 10px 15px 10px 15px;
  background-color: var(--paginas-button-bck);
  color: var(--paginas-button-color);
  font-size: 17px;
  font-weight: 600;
  cursor: pointer;
  border: none;
  border-left: 1px solid rgb(210, 210, 210);
}

.paginas button:first-child {
  border-radius: 5px 0 0 5px;
  border: none;
}

.paginas button:last-child {
  border-radius: 0 5px 5px 0;
}

.paginas button:disabled {
  border: none;
}

.particles {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  z-index: -1;
  overflow: hidden;
}

.back-desing1,
.back-desing2,
.back-desing5 {
  position: absolute;
  width: 100%;
  height: 20%;
  z-index: 0;
  left: 0;
  right: 0;
}

.back-desing3,
.back-desing4 {
  position: absolute;
  width: 100%;
  height: 20%;
  z-index: 0;
  left: 0;
  right: 0;
}

.back-desing1 {
  bottom: 0;
  background-color: var(--main-color2);
  clip-path: polygon(0 100%, 50% 0%, 100% 0, 0 0);
}

.back-desing2 {
  bottom: 0;
  background-color: var(--main-color1);
  clip-path: polygon(0 100%, 100% 0%, 50% 100%, 0 100%);
}

.back-desing3 {
  top: 0;
  background-color: var(--main-color1);
  clip-path: polygon(0 100%, 50% 0%, 100% 0, 0 0);
}

.back-desing4 {
  top: 0;
  background-color: var(--main-color2);
  clip-path: polygon(41% 0, 100% 60%, 0 100%, 50% 100%);
  /* animation: 20s fluid ease-in-out infinite; */
}

.back-desing5 {
  bottom: 0;
  background-color: var(--sidebar-bckg);
  clip-path: polygon(0 100%, 50% 0%, 100% 0, 0 0);
}

.z0 {
  z-index: 0;
}

.z1 {
  position: relative;
  z-index: 1;
}

.z2 {
  z-index: 2;
}

.siiscom {
  position: absolute;
  z-index: 1;
  bottom: 15px;
  left: 0;
  right: 0;
  text-align: center;
  font-size: 10px;
}

.siiscom a {
  text-decoration: none;
  color: #494949;
}

.download {
  background-color: dodgerblue;
  color: white;
  padding: 10px;
  box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.3);
  text-decoration: none;
}

.chart {
  max-width: 600px;
  max-height: 400px;
  background-color: white;
  border-radius: 10px;
}

.chart2 {
  max-width: 600px;
  max-height: 400px;
  background-color: white;
  border-radius: 10px;
}

.relleno {
  height: 100%;
  background-color: white;
  border-radius: 10px;
  color: black;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 10px;
}

.modal,
.modal2 {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  background-color: var(--modal-bckg);
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

.modal2 {
  z-index: 101;
}

.modal {
  z-index: 100;
}

.modal .cerrar,
.modal2 .cerrar {
  min-width: 40px;
  min-height: 40px;
  position: relative;
  margin: auto;
  margin-bottom: 5px;
  margin-top: 5px;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  /* background-color: red;
	border: 2px black solid; */
  border-radius: 50%;
  padding: 5px;
  transition: all 0.3s;
}

.modal .cerrar:before,
.modal2 .cerrar:before {
  content: "";
  position: absolute;
  width: 40px;
  height: 5px;
  background-color: white;
  transform: rotate(45deg);
  border-radius: 5px;
}

.modal .cerrar:after,
.moda2 .cerrar:after {
  content: "";
  position: absolute;
  width: 40px;
  height: 5px;
  background-color: white;
  transform: rotate(-45deg);
  border-radius: 5px;
}

.modal .cerrar:hover,
.modal2 .cerrar:hover {
  background-color: white;
  border-color: red;
}

.modal .cerrar:hover:after,
.modal .cerrar:hover:before,
.modal2 .cerrar:hover:after,
.modal2 .cerrar:hover:before {
  background-color: red;
}

.modal .modal_content,
.modal2 .modal_content {
  max-width: 90%;
  max-height: 90%;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: auto;
  background-color: white;
  border-radius: 5px;
}

.card {
  width: 250px;
  min-height: 200px;
  max-width: 100%;
  background-color: white;
  border-radius: 10px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.card > img {
  height: 150px;
  border-radius: 10px;
  margin-top: 10px;
  margin-bottom: auto;
}

.card > .nombre {
  width: 100%;
  font-size: 15px;
  color: black;
  text-align: left;
  margin-top: auto;
  padding: 5px;
  word-break: break-all;
}

.card > .control {
  width: 100%;

  display: flex;
  justify-content: center;
  align-items: center;
  justify-content: center;
}

.card > .control > .opcion1 {
  width: 100%;
  background-color: rgb(168, 0, 0);
  color: white;
  margin-right: auto;
  font-size: 15px;
  border-radius: 0 0 0 0;
  text-align: center;
  padding: 8px !important;
}

.card > .control > .opcion2 {
  width: 100%;
  background-color: rgb(30, 96, 194);
  color: white;
  margin-left: auto;
  font-size: 15px;
  border-radius: 0 0 0 0;
  text-align: center;
  padding: 8px !important;
}

.tag {
  background-color: white;
  color: black;
  border-radius: 10px 10px 0 0;
  padding: 5px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
  z-index: 9;
  cursor: pointer;
}

.tag:hover {
  background-color: darkgray;
}

.container > .selection {
  margin-top: -20px;
}

.selection {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.selection > button {
  background-color: #7eaabe;
  color: white;
  font-weight: bold;
  font-size: large;
  width: 100%;
  padding: 10px;
  border: none;
  position: relative;
  cursor: pointer;
  transition: all 0.3s;
}

.selection > button:hover {
  box-shadow: 0px 0px 10px 5px #86b6d1;
  z-index: 1;
  padding-top: 15px;
  padding-bottom: 15px;
  margin-bottom: -10px;
}

.selection > button:active {
  transform: scale(1);
}

.selection > button:last-child {
  border-radius: 0 0 100px 0;
}

.selection > button:first-child {
  border-radius: 0 0 0 100px;
}

.load {
  width: 100%;
  max-width: 600px;
  background: white;
  border-radius: 50px;
}

.load .progres {
  text-align: center;
  color: white;
  margin-left: 0;
  background: #67af45;
  width: 0%;
  border-radius: 50px;
  /*box-shadow: 0 0 10px 2px red;*/
}

.prog {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 99999;
  margin: auto;
  text-align: center;
  font-size: 40px;
  color: white;
}

.warning {
  position: absolute;
  top: 10%;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  max-width: 500px;
  max-height: 400px;
  border-radius: 20px;
  margin: auto;
  font-size: 30px;
  font-weight: 900;
  color: white;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  background-color: rgb(255, 96, 96);
  box-shadow: 0 0 30px rgba(0, 0, 0, 0.3);
  padding: 50px;
  z-index: 9999;
}

.warning .descripcion {
  font-size: 18px;
  font-weight: 300;
  color: rgb(233, 233, 233);
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}

.comentario_cont {
  padding: 10px;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-direction: column;
  background-color: white;
  border-radius: 5px;
  color: black;
  box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.3);
}

.comentario {
  white-space: pre-wrap;
  /* Since CSS 2.1 */
  white-space: -moz-pre-wrap;
  /* Mozilla, since 1999 */
  white-space: -pre-wrap;
  /* Opera 4-6 */
  white-space: -o-pre-wrap;
  /* Opera 7 */
  word-wrap: break-word;
  /* Internet Explorer 5.5+ */
  word-break: break-word;
  max-width: 100%;
  font-size: 18px;
}

.comentario_cont button {
  font-size: 12px;
  padding: 5px;
}

.chat-container-float {
  width: var(--chat-inactivo-size);
  height: 50px;
  position: absolute;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-direction: column;
  right: 30px;
  bottom: 30px;
  overflow: hidden;
  transition: all 0.7s ease;
  z-index: 100;
  border: 0px solid rgb(255, 255, 255);
  border-radius: 25px 25px 0 25px;
}

.chat-container-float::before {
  content: "";
  position: absolute;
  margin-right: -10px;
  border-width: 18px;
  height: 0px;
  width: 0px;
  margin-top: 43px;
  margin-bottom: 0px;
  border-style: solid;
  right: 0;
  bottom: 0;
  transition: all 0.7s ease;
  border-color: transparent rgb(0, 132, 255) rgb(0, 132, 255) transparent;
}

.chat-container-float .cerrar-float {
  width: var(--chat-inactivo-size);
  height: 50px;
  background-color: rgb(0, 132, 255);
  border-radius: 25px;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  margin-right: auto;
  cursor: pointer;
  transition: all 0.7s ease;
}

.chat-container-float .cerrar-float .text {
  margin-left: 40px;
  color: white;
  font-weight: bold;
  font-size: 1.2rem;
}

.chat-container-float .cerrar-float::before {
  content: "";
  position: absolute;
  width: 30px;
  height: 5px;
  background-color: white;
  transform: rotate(90deg);
  border-radius: 5px;
  transition: all 0.7s ease;
  margin-right: 60px;
}

.chat-container-float .cerrar-float::after {
  content: "";
  position: absolute;
  width: 30px;
  height: 5px;
  background-color: white;
  transform: rotate(180deg);
  border-radius: 5px;
  transition: all 0.7s ease;
  margin-right: 60px;
}

.chat-container-float.activo {
  width: var(--chat-activo-size);
  height: calc(100% - 166px);
  background-color: #ebebeb;
  border: 1px solid rgb(0, 132, 255);
  justify-content: flex-start;
  border-radius: 25px;
}

.chat-container-float.activo::before {
  content: "";
  position: absolute;
  margin-right: -10px;
  border-width: 20px;
  height: 0px;
  width: 0px;
  margin-top: 43px;
  margin-bottom: 0px;
  border-style: solid;
  border-color: transparent transparent transparent transparent;
}

.chat-container-float .cerrar-float.activo {
  width: 50px;
  border-radius: 25px 0 25px 0;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}

.chat-container-float .cerrar-float.activo .text {
  display: none;
}

.chat-container-float .cerrar-float.activo::before {
  content: "";
  position: absolute;
  width: 30px;
  height: 5px;
  background-color: white;
  transform: rotate(45deg);
  border-radius: 5px;
  margin: 0;
}

.chat-container-float .cerrar-float.activo::after {
  content: "";
  position: absolute;
  width: 30px;
  height: 5px;
  background-color: white;
  transform: rotate(-45deg);
  border-radius: 5px;
  margin: 0;
}

.chat-content {
  max-width: 100%;
  position: relative;
}

button.success {
  background-color: rgb(46, 126, 63) !important;
}

.circle-load {
  min-width: 20px;
  min-height: 20px;
  max-width: 20px;
  max-height: 20px;
  border: 5px solid rgb(26, 167, 80);
  border-right: 5px solid transparent;
  border-radius: 50%;
  margin: auto;
  animation: load 1s infinite linear;
}

.load-container-btm {
  position: absolute;
  right: 15px;
  bottom: 15px;
  width: 200px;
  height: 75px;
  background-color: white;
  border-radius: 10px;
  padding: 10px;
  transition: all 0.1s linear;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
  z-index: 3;
  text-wrap: pretty;
}
.productos {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 15px;
  margin-top: 15px;
  transition: 3ms all;
}
.productos .producto {
  width: 100%;
  max-width: 340px;
  padding: 10px;
  background-color: white;
  box-shadow: 5px 5px 20px rgba(0, 0, 0, 0.5);
  border-radius: 5px;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 5px;
  overflow: hidden;
  animation: append-animate 0.3s linear;
}
.producto input,
.producto textarea {
  width: 100%;
  min-width: 100%;
  border: none;
  box-shadow: inset 3px 3px 5px rgba(0, 0, 0, 0.3);
  background-color: rgb(241, 241, 241);
  padding: 10px;
  border-radius: 5px;
  font-size: 15px;
}
.producto .borrar {
  background-color: brown;
  color: white;
  font-weight: 900;
  font-size: 15px;
  border: none;
  border-radius: 5px;
  padding: 5px;
}
.producto input:focus,
.producto textarea:focus {
  outline: none;
  background-color: rgb(216, 216, 216);
}
.delout {
  overflow: hidden;
  animation: delete-animate 0.3s linear !important;
}
@keyframes append-animate {
  from {
    width: 0;
    opacity: 0;
  }
  to {
    width: 100%;
    opacity: 1;
  }
}
@keyframes delete-animate {
  from {
    width: 100%;
  }
  to {
    width: 0;
  }
}
@keyframes prim-anim {
  0% {
    transform: rotate(0deg);
  }

  50% {
    transform: rotate(360deg);
  }

  100% {
    transform: rotate(0deg);
  }
}

@keyframes fluid {
  0% {
    clip-path: polygon(41% 0, 100% 60%, 0 100%, 50% 100%);
  }

  50% {
    clip-path: polygon(46% 0, 100% 45%, 0 100%, 55% 100%);
  }

  100% {
    clip-path: polygon(41% 0, 100% 60%, 0 100%, 50% 100%);
  }
}

@keyframes load {
  from {
    transform: rotate(0deg);
  }

  to {
    transform: rotate(360deg);
  }
}

@keyframes animlogo {
  0% {
    filter: drop-shadow(0px 0px 4px rgb(63, 214, 209));
    rotate: 0deg;
  }

  15% {
    rotate: -15deg;
  }

  35% {
    rotate: 360deg;
  }

  50% {
    filter: drop-shadow(0px 0px 0px rgb(63, 214, 209));
    rotate: 375deg;
  }

  70% {
    rotate: 0deg;
  }

  100% {
    filter: drop-shadow(0px 0px 4px rgb(63, 214, 209));
  }
}

@media (max-width: 750px) {
  .back-desing3,
  .back-desing4 {
    height: 10%;
    top: unset;
    bottom: 0;
    display: none;
  }

  .res-wdt100 {
    width: 100% !important;
  }

  .res-wdt200 {
    width: 200px !important;
  }

  .res-wdt80 {
    width: 80% !important;
  }

  .res-nopad {
    padding: 0 !important;
  }

  .res-wrap {
    flex-wrap: wrap !important;
  }

  .res-min-wdt60 {
    min-width: 60% !important;
  }

  .res-wrap {
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
  }

  table tr {
    display: flex;
    flex-direction: column;
  }

  table th {
    display: none;
  }

  table td[data-title] {
    display: flex;
    flex-direction: column;
  }

  table td[data-title]::before {
    content: attr(data-title) ": ";
    font-weight: 900;
  }

  table td input {
    width: 100% !important;
  }
}

@media (max-width: 900px) {
  .selection {
    flex-wrap: wrap;
  }

  .selection > button:last-child {
    border-radius: 0 0 20px 20px;
  }

  .selection > button:first-child {
    border-radius: 0;
  }

  .panel .sidepanel.show {
    transform: translate(0px);
  }

  .panel .sidepanel {
    position: absolute;
    left: 0;
    transform: translateX(calc(var(--sidebar-wdt) * -1));
  }

  .panel .sidepanel:before {
    content: "";
    min-width: 5px;
    height: 100px;
    right: -10px;
    top: var(--sidebar-toggle-top);
    position: absolute;
    justify-content: center;
    align-items: center;
    z-index: 10;
    background: linear-gradient(
      180deg,
      rgba(0, 247, 255, 0.5),
      rgba(183, 0, 255, 0.5),
      rgba(0, 162, 255, 0.5)
    );
    background-size: 200% 200%;
    background-position: 0% 60%;
    border-radius: 100px;
    cursor: pointer;
    backdrop-filter: blur(10px);
    animation: tabbck 3s ease-in-out infinite;
    transition: all 0.3s ease;
  }

  .panel .sidepanel.show:before {
    content: "";
    margin-top: 50px;
    height: 0px;
  }

  .chat-container-float.activo {
    width: 100%;
    height: calc(100% - 166px);
    max-width: 100%;
    max-height: 90vh;
    max-height: 90dvh;
    right: 0;
    bottom: 0;
    border: 1px solid rgb(0, 132, 255);
    justify-content: flex-start;
    border-radius: 25px;
  }

  .res-template-1 {
    grid-template-columns: 100% !important;
  }

  .res-template-2 {
    grid-template-columns: 50% 50% !important;
  }

  .res-template-3 {
    grid-template-columns: 33.33% 33.33% 33.33% !important;
  }

  .res-template-4 {
    grid-template-columns: 25% 25% 25% 25% !important;
  }

  .res-template-5 {
    grid-template-columns: 20% 20% 20% 20% 20% !important;
  }

  .res-template-6 {
    grid-template-columns: 16.66% 16.66% 16.66% 16.66% 16.66% 16.66% !important;
  }
}

/* Comienza estilos del chat */

.ventana-chat {
  width: 100%;
  height: calc(100vh - 70px);
  height: calc(100svh - 70px);
  overflow: hidden;
}

.chat-content > .ventana-chat {
  height: unset !important;
}

.ventana-chat html,
.ventana-chat body {
  padding: 0;
  background: rgba(220, 220, 220, 1);
  font-family: sans-serif;
}

.ventana-chat body {
  margin: auto;
  flex-direction: column;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100vh;
  height: 100svh;
}

.ventana-chat body::-webkit-scrollbar {
  width: 8px;
}

.ventana-chat body::-webkit-scrollbar-track {
  box-shadow: inset 0 0 6px white;
}

.ventana-chat body::-webkit-scrollbar-thumb {
  background-color: darkgrey;
  outline: 1px solid slategrey;
}

.ventana-chat * {
  scrollbar-width: thin;
  scrollbar-color: darkgrey white;
}

.ventana-chat .loader {
  position: relative;
  width: 100%;
  height: 3px;
  background: transparent;
  z-index: 9999;
  top: 0;
}

.ventana-chat .loader .prog {
  height: 3px;
  margin-left: 0;
  background: red;
  width: 0%;
  position: absolute;
  top: 0;
  transition: all 0.1s linear;
  /*box-shadow: 0 0 10px 2px red;*/
}

/*---------POPUP----------*/

.ventana-chat .popup {
  visibility: hidden;
  position: relative;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  height: 0;
  width: 0;
  white-space: nowrap;
  transition-delay: 0.5s;
}

/* The actual popup (appears on top) */

.ventana-chat .mensaje .popup .popuptext {
  background-color: #555;
  color: #fff;
  text-align: center;
  border-radius: 6px;
  padding: 8px 0;
  z-index: 1;
}

.ventana-chat .mensaje-prop .popup .popuptext {
  position: absolute;
  right: 0;
  margin-top: -7px;
  background-color: #555;
  color: #fff;
  text-align: center;
  border-radius: 6px;
  padding: 8px 0;
  z-index: 1;
}

/* Popup arrow */

.ventana-chat .mensaje-prop .popup .popuptext::after {
  content: "";
  position: absolute;
  margin-left: -5px;
  border-width: 5px;
  border-style: solid;
  border-color: #555 transparent transparent transparent;
}

.ventana-chat .mensaje .popup .popuptext::before {
  content: "";
  position: absolute;
  margin-left: -5px;
  border-width: 5px;
  border-style: solid;
  border-color: #555 transparent transparent transparent;
}

@keyframes tabbck {
  0% {
    background-position: 0% 0%;
  }
  50% {
    background-position: 100% 100%;
  }
  100% {
    background-position: 0% 0%;
  }
}

/* Toggle this class when clicking on the popup container (hide and show the popup) */

@keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
    height: 30px;
    margin-top: -50px;
    margin-bottom: 20px;
  }
}

.ventana-chat .responder {
  position: sticky;
  bottom: 0px;
  left: 0;
  right: 0;
  margin: auto;
  margin-bottom: -4px;
  width: 100%;
  max-width: 100%;
  height: 400px;
  display: inline-block;
  word-wrap: break-word;
  padding: 20px;
  border-radius: 25px 25px 0 0;
  color: white;
  font-size: 20px;
  background-color: rgb(0, 0, 0);
  z-index: 9999;
  overflow-y: auto;
  box-shadow: 0 0 50px 0 rgba(0, 0, 0, 0.5);
}

.ventana-chat .responder .respuesta {
  color: rgb(200, 100, 50);
  font-family: sans-serif;
}

.ventana-chat .cerrar {
  background: red;
  color: white;
  width: 90px;
  text-align: center;
  border-radius: 5px;
  cursor: pointer;
  user-select: none;
  padding: 5px;
  margin-left: auto;
}

.ventana-chat .cerrar:active {
  transform: scale(0.95);
}

.ventana-chat .sala-nombre {
  width: 100%;
  max-width: 1368px;
  position: fixed;
  background: rgb(224, 224, 224);
  text-align: center;
  color: white;
  font-weight: 900;
  font-size: 40px;
  border-radius: 0px;
  z-index: 999;
  top: 0;
  height: 50px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 30px;
  text-shadow: rgba(0, 0, 0, 0.5) 0 0 5px;
}

.ventana-chat .activos {
  position: absolute;
  margin-right: auto;
  margin-left: auto;
  opacity: 0.3;
  top: 55px;
  width: 72px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  background-color: white;
  border-radius: 20px;
  padding: 10px;
  overflow: hidden;
  height: 10px;
  transition: all 0.3s ease;
  content: "Conectados";
  box-shadow: 0 0 5px 0 black;
  color: rgba(0, 0, 0, 0);
  z-index: 999;
}

.ventana-chat .activos:hover {
  color: rgba(0, 0, 0, 1);
  opacity: 1;
  height: 180px;
  width: 300px;
  overflow-y: auto;
}

.ventana-chat .activos .titulo {
  font-size: 20px;
  font-weight: 900;
}

.ventana-chat .usuario {
  min-height: 40px;
  width: 100%;
  border: 5px white solid;
  text-align: center;
  border-radius: 30px;
  background-color: rgba(0, 0, 0, 0);
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0;
  font-weight: 900;
  font-size: 20px;
  transition: all 0.3s ease;
}

.ventana-chat .activos .salir {
  width: 100%;
  background-color: black;
  font-size: 20px;
  font-weight: 900;
  color: white;
  border: none;
  border-radius: 20px;
  cursor: pointer;
  margin-bottom: 10px;
  transition: all 0.3s ease;
}

.ventana-chat .activos .salir:active {
  transform: scaleX(0.9);
}

.ventana-chat .activos button {
  opacity: 0;
}

.ventana-chat .activos:hover .usuario {
  margin-top: 8px;
}

.ventana-chat .activos:hover .green {
  background-color: #a0ffa4 !important;
}

.ventana-chat .activos:hover .yellow {
  background-color: #fffea0 !important;
}

.ventana-chat .activos:hover button {
  opacity: 1;
}

.ventana-chat .contenedor {
  width: 100%;
  height: calc(100vh - 134px);
  height: calc(100svh - 134px);
  /* max-height: 1080px; */
  /* max-width: 1368px; */
  box-shadow: 0 0 50px 0 rgba(0, 0, 0, 0.5);
  margin: auto;
  /* margin-top: 50px; */
  overflow-y: auto;
  margin-bottom: 0;
  position: relative;
  display: flex;
  flex-direction: column-reverse;
  justify-content: end;
  background-color: #ebebeb;
}

.chat-content > .ventana-chat .contenedor {
  height: calc(100vh - 233px);
  height: calc(100svh - 233px);
}

.ventana-chat .chat {
  /* margin-top: 85px; */
}

.ventana-chat .form-mensaje {
  position: sticky;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 64px;
  max-height: 144px;
  margin: auto;
  margin-top: 0;
  width: 100%;
  /* max-width: 1368px; */
  bottom: 0;
  background: rgba(0, 0, 0, 1);
  box-shadow: 0 0 5px 0px rgba(0, 0, 0, 1);
}

.ventana-chat .form-mensaje:hover {
  /* box-shadow: 0 0 5px 0px rgba(0, 0, 0, 1.0);*/
}

.ventana-chat .form-mensaje .texto {
  width: 90%;
  width: 1000px;
  padding: 5px;
  height: 40px;
  max-height: 120px;
  border: none;
  border-radius: 25px 0 0 25px;
  font-size: 20px;
  /* z-index: 999; */
  resize: none;
  font-family: sans-serif;
  line-height: 40px;
}

.ventana-chat .form-mensaje .texto:hover {
}

.ventana-chat .form-mensaje .texto:focus {
  outline: none;
}

.ventana-chat .form-mensaje input[type="submit"] {
  background-image: url("../chat/img/enviar2.png") !important;
  background-size: 35px !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  border-radius: 1px;
  border-radius: 0 25px 25px 0;
  width: 50px;
  min-width: 50px;
  height: calc(100% - 14px);
  border: none;
  margin: 0;
  position: relative;
  background: rgba(255, 255, 255, 1);
}

.ventana-chat .form-mensaje input[type="submit"]:hover {
  background: rgba(200, 200, 200, 1);
}

.ventana-chat .form-mensaje input[type="submit"]:active {
  box-shadow: 0 0 5px 0px rgba(0, 0, 0, 1) inset;
}

#btnComenzarGrabacion {
  background-image: url("../chat/img/forma-de-microfono-negro.png") !important;
  background-size: 35px !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  border-radius: 1px;
  border-radius: 0 25px 25px 0;
  width: 50px;
  min-width: 50px;
  height: calc(100% - 14px);
  border: none;
  margin: 0;
  position: relative;
  background: rgba(255, 255, 255, 1);
}

.ventana-chat .form-mensaje #btnComenzarGrabacion:hover {
  background: rgba(200, 200, 200, 1);
}

.ventana-chat .form-mensaje #btnComenzarGrabacion:active {
  box-shadow: 0 0 5px 0px rgba(0, 0, 0, 1) inset;
}

#btnDetenerGrabacion {
  background-image: url("../chat/img/verificado.png") !important;
  background-size: 70% !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  border-radius: 1px;
  border-radius: 0 0px 0px 0;
  width: 50px;
  min-width: 50px;
  height: 50px;
  border: none;
  margin: 0;
  position: relative;
  background: rgba(255, 255, 255, 1);
}

.ventana-chat .form-mensaje #btnDetenerGrabacion:hover {
  background: rgba(200, 200, 200, 1);
}

.ventana-chat .form-mensaje #btnDetenerGrabacion:active {
  box-shadow: 0 0 5px 0px rgba(0, 0, 0, 1) inset;
}

#btnCancelarGrabacion {
  background-image: url("../chat/img/cerrar.png") !important;
  background-size: 70% !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  border-radius: 1px;
  border-radius: 0 50px 50px 0;
  width: 50px;
  min-width: 50px;
  height: 50px;
  border: none;
  margin: 0;
  position: relative;
  background: rgba(255, 255, 255, 1);
}

.ventana-chat .form-mensaje #btnCancelarGrabacion:hover {
  background: rgba(200, 200, 200, 1);
}

.ventana-chat .form-mensaje #btnCancelarGrabacion:active {
  box-shadow: 0 0 5px 0px rgba(0, 0, 0, 1) inset;
}

#duracion {
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 1px;
  border-radius: 0 0px 0px 0;
  width: 60px;
  min-width: 60px;
  height: 50px;
  border: none;
  margin: 0;
  position: relative;
  background: rgba(255, 255, 255, 1);
}

.ventana-chat audio {
  max-width: 100%;
}

.ventana-chat .imagen {
  width: 50px;
  min-width: 50px;
  height: calc(100% - 14px);
  background-color: white;
  background-image: url("../chat/img/insertar-icono-de-imagen.png");
  background-size: 40px 40px;
  background-position: center;
  background-repeat: no-repeat;
  border: none;
  display: inline-block;
  cursor: pointer;
  overflow: hidden;
  cursor: pointer;
}

.ventana-chat .imagen:hover {
  background-color: rgba(200, 200, 200, 1);
}

.ventana-chat .imagen:active {
  box-shadow: 0 0 5px 0px rgba(0, 0, 0, 1) inset;
}

.ventana-chat .imagen input[type="file"] {
  opacity: 0;
  height: 50px;
  width: 100%;
  cursor: pointer;
}

.ventana-chat .archivo-chat {
  width: 50px;
  min-width: 50px;
  height: calc(100% - 14px);
  background-color: white;
  background-image: url("../chat/img/clip.png");
  background-size: 40px 40px;
  background-position: center;
  background-repeat: no-repeat;
  border: none;
  display: inline-block;
  cursor: pointer;
  overflow: hidden;
  cursor: pointer;
}

.ventana-chat .archivo-chat:hover {
  background-color: rgba(200, 200, 200, 1);
}

.ventana-chat .archivo-chat:active {
  box-shadow: 0 0 5px 0px rgba(0, 0, 0, 1) inset;
}

.ventana-chat .archivo-chat input[type="file"] {
  opacity: 0;
  height: 50px;
  width: 100%;
  cursor: pointer;
}

.ventana-chat .chat-img {
  display: block;
  width: auto;
  max-width: 100%;
  height: 300px;
  border-radius: 20px;
  margin: auto;
}

.ventana-chat .msn-cont {
  width: 100%;
  display: inline-block;
  display: table;
  display: flex;
  flex-direction: column;
}

.ventana-chat .mensaje,
.ventana-chat .mensaje-prop {
  cursor: pointer;
  user-select: none;
  font-family: sans-serif;
}

.ventana-chat .mensaje:active,
.ventana-chat .mensaje-prop:active {
  transform: scale(0.95);
}

.ventana-chat .mensaje-aviso {
  border-radius: 20px;
  background: white;
  width: 90%;
  padding: 10px;
  margin: auto;
  margin-top: 10px;
  margin-bottom: 5px;
  text-align: center;
  float: left;
  font-size: 20px;
  transition: all 0.3s ease;
  box-shadow: 0 0 30px 0px rgba(0, 0, 0, 0.5);
}

.ventana-chat .mensaje {
  border-radius: 0px 20px 20px 20px;
  background: white;
  max-width: 90%;
  padding: 10px;
  margin: auto;
  margin-top: 10px;
  margin-bottom: 5px;
  margin-left: 5px;
  text-align: left;
  float: left;
  font-size: 20px;
  transition: all 0.3s ease;
  box-shadow: 0 0 30px 0px rgba(0, 0, 0, 0.5);
}

.ventana-chat .mensaje::before {
  content: "";
  display: flex;
  position: relative;
  margin-left: -15px;
  border-width: 5px;
  height: 0px;
  width: 5px;
  margin-top: -10px;
  margin-bottom: -10px;
  border-style: solid;
  border-color: white transparent transparent transparent;
}

.ventana-chat .mensaje-prop {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-end;
  border-radius: 20px 0px 20px 20px;
  background: var(--chat-bkg-color);
  background-image: var(--chat-bkg-image);
  background-attachment: fixed;
  background-position: center;
  background-size: 100%;
  max-width: 90%;
  padding: 10px;
  margin: auto;
  margin-top: 10px;
  margin-bottom: 5px;
  margin-right: 5px;
  text-align: left;
  float: right;
  font-size: 20px;
  transition: all 0.3s ease;
  box-shadow: 0 0 30px 0px rgba(0, 0, 0, 0.5);
}

.ventana-chat .mensaje-prop::before {
  content: "";
  position: relative;
  margin-right: -15px;
  /* border-width: 5px; */
  height: 5px;
  width: 5px;
  margin-top: -10px;
  margin-bottom: 0px;
  border-style: solid;
  background: var(--chat-bkg-color);
  background-image: var(--chat-bkg-image);
  background-attachment: fixed;
  background-position: center;
  background-size: 100%;
  clip-path: polygon(0 0, 0% 100%, 100% 0);
  border: none;
  /* border-color: rgb(0, 167, 209) transparent transparent transparent; */
}

.ventana-chat .respuestamsn {
  display: inline-block;
  word-wrap: break-word;
  background: gray;
  max-width: 90%;
  padding: 10px;
  margin: auto;
  margin-top: 10px;
  margin-bottom: -20px;
  padding-bottom: 30px;
  text-align: left;
  font-size: 20px;
  transition: all 0.3s ease;
  box-shadow: 0 0 30px 0px rgba(0, 0, 0, 0.5);
  color: white;
  font-family: sans-serif;
  font-style: italic;
}

.ventana-chat .prop {
  border-radius: 20px 20px 0px 20px;
  margin-right: 5px;
  float: right;
}

.ventana-chat .prop::after {
  content: "";
  right: 0;
  position: relative;
  margin-right: -15px;
  border-width: 5px;
  height: 0px;
  width: 5px;
  float: right;
  margin-top: 25px;
  margin-bottom: -10px;
  border-style: solid;
  border-color: transparent transparent transparent transparent;
  transform: rotate(180deg);
}

.ventana-chat .recib {
  border-radius: 20px 20px 20px 0px;
  margin-left: 5px;
  float: left;
}

.ventana-chat .recib::after {
  content: "";
  display: flex;
  position: relative;
  margin-left: -15px;
  border-width: 5px;
  height: 0px;
  width: 5px;
  margin-top: -5px;
  margin-bottom: -10px;
  border-style: solid;
  border-color: transparent transparent transparent transparent;
  transform: rotate(180deg);
}

.ventana-chat .mensaje .nombre {
  margin-top: 10px;
}

.ventana-chat .mensaje-prop .nombre,
.ventana-chat .mensaje .nombre {
  font-size: 14px;
  font-weight: bold;
  font-family: sans-serif;
  color: #adadad;
}

.ventana-chat .mensaje-prop .time,
.ventana-chat .mensaje .time {
  font-size: 12px;
  color: #adadad;
}

.ventana-chat .mensaje-prop .msj {
  color: white;
}

.ventana-chat .mensaje:hover .popup {
  visibility: visible;
  opacity: 1;
  margin-top: -50px;
  margin-bottom: 40px;
}

.ventana-chat .mensaje-prop:hover .popup {
  visibility: visible;
  opacity: 1;
  height: 30px;
  margin-top: -50px;
  margin-bottom: 20px;
}

.ventana-chat .hora {
  transform: scaleY(0);
  height: 0;
  transition: all 0.1s ease;
  transition-delay: 2s;
  font-size: 15px;
  white-space: nowrap;
}

.ventana-chat .mensaje .hora {
  /*float: left;*/
  margin-right: auto;
}

.ventana-chat .mensaje-prop .hora {
  /*float: right;*/
  color: white;
  margin-left: auto;
}

.ventana-chat .mensaje:active .hora,
.ventana-chat .mensaje-prop:active .hora {
  transform: scale(1);
  height: 20px;
  user-select: none;
  transition-delay: 0s;
}

.ventana-chat .out {
  opacity: 0;
  transform: rotate3d(-1, 0, 0, 90deg);
}

.ventana-chat .clipboard {
  height: 0;
  transform: scale(0);
  position: absolute;
}

.ventana-chat .msj pre {
  max-width: 100%;
  /* display: inline-block; */
  white-space: pre-wrap;
  /* Since CSS 2.1 */
  white-space: -moz-pre-wrap;
  /* Mozilla, since 1999 */
  white-space: -pre-wrap;
  /* Opera 4-6 */
  white-space: -o-pre-wrap;
  /* Opera 7 */
  word-wrap: break-word;
  /* Internet Explorer 5.5+ */
  word-break: break-word;
  margin: 0;
  font-family: sans-serif;
  font-size: 1.2rem;
  padding: 10px 0 10px 0;
}

.particles-js-canvas-el {
  position: absolute;
}

.container .particles-js-canvas-el {
  width: 100% !important;
  height: calc(100% - 20px) !important;
}

@media only screen and (max-width: 400px) {
  /* .contenedor {
		margin-top: 0;
		height: calc(100vh - 64px);
	} */
  .ventana-chat .chat-img {
    height: 250px;
  }

  .ventana-chat .responder {
    height: 200px;
  }

  /* .form-mensaje {
		position: absolute;
		bottom: 0;
	} */
  /* .chat {
		margin-bottom: 50px;
	} */
  .ventana-chat body {
    /* display: unset; */
  }
}

@media only screen and (max-height: 500px) and (max-height: 400px) {
  .ventana-chat .chat {
    margin-bottom: 80px;
  }

  .ventana-chat body {
    overflow: hidden;
  }
}
