/* estilos TOTEM LABCIUDAD*/

@import url("animate.css");
@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');
@import url("icons.css");


div#app {
  width: 100%;
}





/* Estilos para el modo claro */

:root {
  --bs-blue: #0d6efd;
  --bs-indigo: #6610f2;
  --bs-purple: #6f42c1;
  --bs-pink: #d63384;
  --bs-red: #dc3545;
  --bs-orange: #fd7e14;
  --bs-yellow: #ffc107;
  --bs-green: #292e7a;
  --bs-teal: #20c997;
  --bs-cyan: #0dcaf0;
  --bs-black: #000000;
  --bs-white: #ffffff;
  --bs-gray: #78829D;
  --bs-gray-dark: #0b141a;
  --bs-gray-100: #F9F9F9;
  --bs-gray-200: #45b8b3;
  --bs-gray-300: #DBDFE9;
  --bs-gray-400: #C4CADA;
  --bs-gray-500: #99A1B7;
  --bs-gray-600: #78829D;
  --bs-gray-700: #4B5675;
  --bs-gray-800: #2d3448;
  --bs-gray-900: #181f34;
  --bs-light: #F9F9F9;
  --bs-primary: #292e7a;
  --bs-primary-dark: #2d334c;
    --bs-primary-light-md: #abadcc;

  --bs-secondary: #45b8b3;
  --bs-primary-light-ligth: #eff0fa;
  --bs-success: #50cd89;
  --bs-info: #555fef;
  --bs-warning: #ffc700;
  --bs-danger: #f1416c;
  --bs-dark: #1E2129;
  --bs-body-bg: #ffffff;
  --bs-secondary-bg: #45b8b3;
  --bs-tertiary-bg: #F9F9F9;
  --bs-primary-active: #292e7a;
  --bs-secondary-active: #C4CADA;
  --bs-light-active: #45b8b3;
  --bs-success-active: #47be7d;
  --bs-info-active: #5014d0;
  --bs-warning-active: #f1bc00;
  --bs-danger-active: #d9214e;
  --bs-dark-active: #111318;
  --bs-primary-light: #847cb9;
  --bs-secondary-light: #F9F9F9;
  --bs-success-light: #e8fff3;
  --bs-info-light: #f8f5ff;
  --bs-warning-light: #fff8dd;
  --bs-danger-light: #fff5f8;
  --bs-dark-light: #F9F9F9;
  --bs-light-light: #ffffff;
  --bs-primary-inverse: #ffffff;
  --bs-secondary-inverse: #252F4A;
  --bs-light-inverse: #252F4A;
  --bs-success-inverse: #ffffff;
  --bs-info-inverse: #ffffff;
  --bs-warning-inverse: #ffffff;
  --bs-danger-inverse: #ffffff;
  --bs-dark-inverse: #ffffff;
  --bs-primary-clarity: rgba(27, 132, 255, 0.2);
  --bs-secondary-clarity: rgba(249, 249, 249, 0.2);
  --bs-success-clarity: rgba(23, 198, 83, 0.2);
  --bs-info-clarity: rgba(114, 57, 234, 0.2);
  --bs-warning-clarity: rgba(246, 192, 0, 0.2);
  --bs-danger-clarity: rgba(248, 40, 90, 0.2);
  --bs-dark-clarity: rgba(30, 33, 41, 0.2);
  --bs-light-clarity: rgba(255, 255, 255, 0.2);

  --bs-success-disabled: #8aa596;
  --bs-danger-disabled: #8d7e82;
  --bs-info-disabled: #9d91b5;

  --bs-primary-disabled: #70918a;

  --bs-font-sans-serif: "Poppins", sans-serif;

  --bs-link-color-inverse: #cfd5ff;
  
  --bs-link-color-inverse-hover: #31354d;
  --bs-link-color: #292e7a;

  --bs-link-decoration: none;
  --bs-link-hover-color: #2d334c;

  --bs-link-hover-decoration: none;

  --bs-form-valid-color: #50cd89;
  --bs-form-valid-border-color: #50cd89;
  --bs-form-invalid-color: #f1416c;
  --bs-form-invalid-border-color: #f1416c;

  --bs-text-white: #ffffff;
  --bs-text-primary: #292e7a;
  --bs-text-secondary: #363843;
  --bs-text-light: #1B1C22;
  --bs-text-success: #00A261;
  --bs-text-info: #883FFF;
  --bs-text-warning: #C59A00;
  --bs-text-danger: #E42855;
  --bs-text-dark: #202229;
  --bs-text-muted: #636674;
  --bs-text-gray-1000: #000000;
  --bs-text-gray-900: #1B1C22;
  --bs-text-gray-800: #26272F;
  --bs-text-gray-700: #363843;
  --bs-text-gray-600: #464852;
  --bs-text-gray-500: #636674;
  --bs-text-gray-400: #808290;
  --bs-text-gray-300: #9A9CAE;
  --bs-text-gray-200: #B5B7C8;
  --bs-text-gray-100: #F5F5F5;
  --bs-border-color: #e0e0e6;
  --bs-border-dashed-color: #D4D9E4;

  --bs-page-bg: #ffffff;
  --bs-app-blank-bg: #ffffff;
  --bs-header-bg-color: #ffffff;
  --bs-header-border-bottom: 0;
  --bs-header-box-shadow: 0px 3px 4px 0px rgba(0, 0, 0, 0.03);

  --bs-menu-900: #1B1C22;
  --bs-header-menu-900: #0F1014;
  --bs-text-brand-menu: #0F1014;
  --bs-menu-heading-color: #99A1B7;

  --bs-menu-dropdown-box-shadow: 1px 1px 15px 1px rgba(5, 5, 5, 0.10);
  --bs-menu-dropdown-bg-color: var(--bs-body-bg);

  --card-title-color: var(--bs-gray-900);
  --card-border-width: 1px;
  --card-border-color: #45b8b3;
  --card-border-radius: 0.525rem;
  --card-box-shadow: 0px 3px 4px 0px rgba(0, 0, 0, 0.05);
  --card-bg: var(--bs-body-bg);
  --card-title-color: var(--bs-gray-900);
  --card-cap-bg: transparent;
  --btn-close-color: var(--bs-gray-300);
  --logo-header: #000;
  --mapaOSM: grayscale(100%) invert(0%) hue-rotate(0deg) brightness(100%) contrast(100%);

  --bg-light: #ffffff
}


/* Estilos para el modo oscuro */

[tema="dark"] {
  --mapaOSM: grayscale(100%) invert(100%) hue-rotate(200deg) brightness(80%) contrast(100%);
  --btn-close-color: var(--bs-gray-700);
  --bs-card-title-color: var(--bs-gray-900);
  --bs-card-border-width: 8px;
  --card-border-color: #1e2027;
  --card-box-shadow: none;
  --card-bg: var(--bs-body-bg);
  --card-title-color: var(--bs-gray-900);



  --bs-page-bg: #0F1014;
  --bs-app-blank-bg: #0F1014;
  --bs-header-bg-color: #0F1014;
  --bs-header-border-bottom: 0;
  --bs-header-box-shadow: 0px 3px 4px 0px rgba(216, 216, 216, 0.05);

  --bs-body-color: #F5F5F5;
  --bs-body-color-rgb: 245, 245, 245;
  --bs-body-bg: #16181b;
  --bs-body-bg-rgb: 21, 23, 28;
  --bs-emphasis-color: #ffffff;
  --bs-emphasis-color-rgb: 255, 255, 255;
  --bs-secondary-color: rgba(245, 245, 245, 0.75);
  --bs-secondary-color-rgb: 245, 245, 245;
  --bs-secondary-bg: #252F4A;
  --bs-secondary-bg-rgb: 37, 47, 74;
  --bs-tertiary-color: rgba(245, 245, 245, 0.5);
  --bs-tertiary-color-rgb: 245, 245, 245;
  --bs-tertiary-bg: #162241;
  --bs-tertiary-bg-rgb: 22, 34, 65;
  --bs-primary-text-emphasis: #66c5fa;
  --bs-secondary-text-emphasis: #f7f7f8;
  --bs-success-text-emphasis: #96e1b8;
  --bs-info-text-emphasis: #aa88f2;
  --bs-warning-text-emphasis: #ffdd66;
  --bs-danger-text-emphasis: #c51818;
  --bs-light-text-emphasis: #F9F9F9;
  --bs-dark-text-emphasis: #DBDFE9;
  --bs-primary-bg-subtle: #002031;
  --bs-secondary-bg-subtle: #303031;
  --bs-success-bg-subtle: #10291b;
  --bs-info-bg-subtle: #170b2f;
  --bs-warning-bg-subtle: #332800;
  --bs-danger-bg-subtle: #300d16;
  --bs-light-bg-subtle: #252F4A;
  --bs-dark-bg-subtle: #131825;
  --bs-primary-border-subtle: #005f94;
  --bs-secondary-border-subtle: #919192;
  --bs-success-border-subtle: #307b52;
  --bs-info-border-subtle: #44228c;
  --bs-warning-border-subtle: #997700;
  --bs-danger-border-subtle: #912741;
  --bs-light-border-subtle: #4B5675;
  --bs-dark-border-subtle: #252F4A;
  --bs-heading-color: #F5F5F5;

  --bs-link-hover-color-rgb: 51, 136, 235;
  --bs-code-color: #b93993;
  --bs-highlight-color: #F5F5F5;
  --bs-highlight-bg: #664d03;
  --bs-border-color: #26272F;
  --bs-border-color-translucent: rgba(255, 255, 255, 0.15);
  --bs-form-valid-color: #75b798;
  --bs-form-valid-border-color: #75b798;
  --bs-form-invalid-color: #ea868f;
  --bs-form-invalid-border-color: #ea868f;
  --bs-text-white: #ffffff;
  --bs-text-primary: #292e7a;
  --bs-text-secondary: #363843;
  --bs-text-light: #1B1C22;
  --bs-text-success: #00A261;
  --bs-text-info: #883FFF;
  --bs-text-warning: #C59A00;
  --bs-text-danger: #E42855;
  --bs-text-dark: #272A34;
  --bs-text-muted: #636674;
  --bs-text-gray-100: #1B1C22;
  --bs-text-gray-200: #26272F;
  --bs-text-gray-300: #363843;
  --bs-text-gray-400: #464852;
  --bs-text-gray-500: #636674;
  --bs-text-gray-600: #808290;
  --bs-text-gray-700: #9A9CAE;
  --bs-text-gray-800: #B5B7C8;
  --bs-text-gray-900: #F5F5F5;
  --bs-text-gray-1000: #ffffff;


  --bs-gray-900: #F5F5F5;
  --bs-gray-800: #B5B7C8;
  --bs-gray-700: #9A9CAE;
  --bs-gray-600: #808290;
  --bs-gray-500: #636674;
  --bs-gray-400: #464852;
  --bs-gray-300: #363843;
  --bs-gray-200: #26272F;
  --bs-gray-100: #1B1C22;

  --bg-light: #26272F --bs-menu-900: #1B1C22;
  --bs-header-menu-900: #F5F5F5;
  --bs-text-brand-menu: #F5F5F5;
  --bs-menu-heading-color: #99A1B7;




  --bs-menu-dropdown-box-shadow: 0px 0px 30px rgba(0, 0, 0, 0.3);
  --bs-menu-dropdown-bg-color: #1C1D22;
  --logo-header: #fff
}



.leaflet-layer,
.leaflet-control-zoom-in,
.leaflet-control-zoom-out,
.leaflet-control-attribution {
  /* filter:  invert(100%) hue-rotate(200deg) brightness(80%) contrast(100%);*/
  filter: var(--mapaOSM)
}


body {
  font-size: 1rem;
  -webkit-font-smoothing: antialiased;
  background: var(--bs-page-bg);
  color: var(--bs-text-gray-900) !important;
  position: relative;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 400;
  font-family: var(--bs-font-sans-serif);
  font-size: 14px !important;
   height: 100%;
 background: #45B8B3;
background: linear-gradient(0deg,rgba(41, 46, 122, 1 ) 70%, rgba(69, 184, 179,  1) 100%);
}
main {
  height: 100vh;
}
a {
  text-decoration: none;
  color: var(--bs-link-color);
  background-color: transparent;
  outline: none !important;
  text-decoration: var(--bs-link-decoration);
}

a:hover {
  text-decoration: var(--bs-link-decoration);
  color: var(--bs-link-hover-color);
  background-color: transparent;
}

a.inverse {
  text-decoration: none;
  color: var(--bs-link-color-inverse);
  background-color: transparent;
  outline: none !important;
  text-decoration: var(--bs-link-decoration);
}

a.inverse:hover {
  text-decoration: var(--bs-link-decoration);
  color: var(--bs-link-hover-color);
  background-color: transparent;
}

::-moz-selection {
  /* Code for Firefox */
  color: var(--bs-text-white);
  background: var(--bs-primary);
}

::selection {
  color: var(--bs-text-white);
  background: var(--bs-primary);
}


.form-control::placeholder {

  /* Firefox, Chrome, Opera */
  color: #ccc;
}

.form-control:-ms-input-placeholder {

  /* Internet Explorer 10-11 */
  color: var(--bs-gray-200);
}

.form-control::-ms-input-placeholder {

  /* Microsoft Edge */
  color: var(--bs-gray-200);
}


#e-Logo {
  fill: var(--logo-header);
}

.border-radius-15{
  border-radius: 15px;
}

/*************
 Color Textos 
 ************/
.text-muted {
  color: var(--bs-text-muted) !important
}

.text-hover-muted {
  transition: color .2s ease
}

.text-hover-muted i {
  transition: color .2s ease
}

.text-hover-muted:hover {
  transition: color .2s ease;
  color: var(--bs-text-muted) !important
}

.text-hover-muted:hover i {
  transition: color .2s ease;
  color: var(--bs-text-muted) !important
}

.text-hover-muted:hover .svg-icon {
  color: var(--bs-text-muted) !important
}

.text-active-muted {
  transition: color .2s ease
}

.text-active-muted i {
  transition: color .2s ease
}

.text-active-muted.active {
  transition: color .2s ease;
  color: var(--bs-text-muted) !important
}

.text-active-muted.active i {
  transition: color .2s ease;
  color: var(--bs-text-muted) !important
}

.text-active-muted.active .svg-icon {
  color: var(--bs-text-muted) !important
}

.text-gray-100 {
  color: var(--bs-text-gray-100) !important
}

.text-hover-gray-100 {
  transition: color .2s ease
}

.text-hover-gray-100 i {
  transition: color .2s ease
}

.text-hover-gray-100:hover {
  transition: color .2s ease;
  color: var(--bs-text-gray-100) !important
}

.text-hover-gray-100:hover i {
  transition: color .2s ease;
  color: var(--bs-text-gray-100) !important
}

.text-hover-gray-100:hover .svg-icon {
  color: var(--bs-text-gray-100) !important
}

.text-active-gray-100 {
  transition: color .2s ease
}

.text-active-gray-100 i {
  transition: color .2s ease
}

.text-active-gray-100.active {
  transition: color .2s ease;
  color: var(--bs-text-gray-100) !important
}

.text-active-gray-100.active i {
  transition: color .2s ease;
  color: var(--bs-text-gray-100) !important
}

.text-active-gray-100.active .svg-icon {
  color: var(--bs-text-gray-100) !important
}

.text-gray-200 {
  color: var(--bs-text-gray-200) !important
}

.text-hover-gray-200 {
  transition: color .2s ease
}

.text-hover-gray-200 i {
  transition: color .2s ease
}

.text-hover-gray-200:hover {
  transition: color .2s ease;
  color: var(--bs-text-gray-200) !important
}

.text-hover-gray-200:hover i {
  transition: color .2s ease;
  color: var(--bs-text-gray-200) !important
}

.text-hover-gray-200:hover .svg-icon {
  color: var(--bs-text-gray-200) !important
}

.text-active-gray-200 {
  transition: color .2s ease
}

.text-active-gray-200 i {
  transition: color .2s ease
}

.text-active-gray-200.active {
  transition: color .2s ease;
  color: var(--bs-text-gray-200) !important
}

.text-active-gray-200.active i {
  transition: color .2s ease;
  color: var(--bs-text-gray-200) !important
}

.text-active-gray-200.active .svg-icon {
  color: var(--bs-text-gray-200) !important
}

.text-gray-300 {
  color: var(--bs-text-gray-300) !important
}

.text-hover-gray-300 {
  transition: color .2s ease
}

.text-hover-gray-300 i {
  transition: color .2s ease
}

.text-hover-gray-300:hover {
  transition: color .2s ease;
  color: var(--bs-text-gray-300) !important
}

.text-hover-gray-300:hover i {
  transition: color .2s ease;
  color: var(--bs-text-gray-300) !important
}

.text-hover-gray-300:hover .svg-icon {
  color: var(--bs-text-gray-300) !important
}

.text-active-gray-300 {
  transition: color .2s ease
}

.text-active-gray-300 i {
  transition: color .2s ease
}

.text-active-gray-300.active {
  transition: color .2s ease;
  color: var(--bs-text-gray-300) !important
}

.text-active-gray-300.active i {
  transition: color .2s ease;
  color: var(--bs-text-gray-300) !important
}

.text-active-gray-300.active .svg-icon {
  color: var(--bs-text-gray-300) !important
}

.text-gray-400 {
  color: var(--bs-text-gray-400) !important
}

.text-hover-gray-400 {
  transition: color .2s ease
}

.text-hover-gray-400 i {
  transition: color .2s ease
}

.text-hover-gray-400:hover {
  transition: color .2s ease;
  color: var(--bs-text-gray-400) !important
}

.text-hover-gray-400:hover i {
  transition: color .2s ease;
  color: var(--bs-text-gray-400) !important
}

.text-hover-gray-400:hover .svg-icon {
  color: var(--bs-text-gray-400) !important
}

.text-active-gray-400 {
  transition: color .2s ease
}

.text-active-gray-400 i {
  transition: color .2s ease
}

.text-active-gray-400.active {
  transition: color .2s ease;
  color: var(--bs-text-gray-400) !important
}

.text-active-gray-400.active i {
  transition: color .2s ease;
  color: var(--bs-text-gray-400) !important
}

.text-active-gray-400.active .svg-icon {
  color: var(--bs-text-gray-400) !important
}

.text-gray-500 {
  color: var(--bs-text-gray-500) !important
}

.text-hover-gray-500 {
  transition: color .2s ease
}

.text-hover-gray-500 i {
  transition: color .2s ease
}

.text-hover-gray-500:hover {
  transition: color .2s ease;
  color: var(--bs-text-gray-800) !important
}

.text-hover-gray-500:hover i {
  transition: color .2s ease;
  color: var(--bs-text-gray-800) !important
}

.text-hover-gray-500:hover .svg-icon {
  color: var(--bs-text-gray-800) !important
}

.text-active-gray-500 {
  transition: color .2s ease
}

.text-active-gray-500 i {
  transition: color .2s ease
}

.text-active-gray-500.active {
  transition: color .2s ease;
  color: var(--bs-text-gray-800) !important
}

.text-active-gray-500.active i {
  transition: color .2s ease;
  color: var(--bs-text-gray-800) !important
}

.text-active-gray-500.active .svg-icon {
  color: var(--bs-text-gray-500) !important
}

.text-gray-600 {
  color: var(--bs-text-gray-600) !important
}

.text-hover-gray-600 {
  transition: color .2s ease
}

.text-hover-gray-600 i {
  transition: color .2s ease
}

.text-hover-gray-600:hover {
  transition: color .2s ease;
  color: var(--bs-text-gray-600) !important
}

.text-hover-gray-600:hover i {
  transition: color .2s ease;
  color: var(--bs-text-gray-600) !important
}

.text-hover-gray-600:hover .svg-icon {
  color: var(--bs-text-gray-600) !important
}

.text-active-gray-600 {
  transition: color .2s ease
}

.text-active-gray-600 i {
  transition: color .2s ease
}

.text-active-gray-600.active {
  transition: color .2s ease;
  color: var(--bs-text-gray-600) !important
}

.text-active-gray-600.active i {
  transition: color .2s ease;
  color: var(--bs-text-gray-600) !important
}

.text-active-gray-600.active .svg-icon {
  color: var(--bs-text-gray-600) !important
}

.text-gray-700 {
  color: var(--bs-text-gray-700) !important
}

.text-hover-gray-700 {
  transition: color .2s ease
}

.text-hover-gray-700 i {
  transition: color .2s ease
}

.text-hover-gray-700:hover {
  transition: color .2s ease;
  color: var(--bs-text-gray-700) !important
}

.text-hover-gray-700:hover i {
  transition: color .2s ease;
  color: var(--bs-text-gray-700) !important
}

.text-hover-gray-700:hover .svg-icon {
  color: var(--bs-text-gray-700) !important
}

.text-active-gray-700 {
  transition: color .2s ease
}

.text-active-gray-700 i {
  transition: color .2s ease
}

.text-active-gray-700.active {
  transition: color .2s ease;
  color: var(--bs-text-gray-700) !important
}

.text-active-gray-700.active i {
  transition: color .2s ease;
  color: var(--bs-text-gray-700) !important
}

.text-active-gray-700.active .svg-icon {
  color: var(--bs-text-gray-700) !important
}

.text-gray-800 {
  color: var(--bs-text-gray-800) !important
}

.text-hover-gray-800 {
  transition: color .2s ease
}

.text-hover-gray-800 i {
  transition: color .2s ease
}

.text-hover-gray-800:hover {
  transition: color .2s ease;
  color: var(--bs-text-gray-200) !important
}

.text-hover-gray-800:hover i {
  transition: color .2s ease;
  color: var(--bs-text-gray-200) !important
}

.text-hover-gray-800:hover .svg-icon {
  color: var(--bs-text-gray-800) !important
}

.text-active-gray-800 {
  transition: color .2s ease
}

.text-active-gray-800 i {
  transition: color .2s ease
}

.text-active-gray-800.active {
  transition: color .2s ease;
  color: var(--bs-text-gray-800) !important
}

.text-active-gray-800.active i {
  transition: color .2s ease;
  color: var(--bs-text-gray-800) !important
}

.text-active-gray-800.active .svg-icon {
  color: var(--bs-text-gray-800) !important
}

.text-gray-900 {
  color: var(--bs-text-gray-900) !important
}

.text-hover-gray-900 {
  transition: color .2s ease
}

.text-hover-gray-900 i {
  transition: color .2s ease
}

.text-hover-gray-900:hover {
  transition: color .2s ease;
  color: var(--bs-text-gray-900) !important
}

.text-hover-gray-900:hover i {
  transition: color .2s ease;
  color: var(--bs-text-gray-900) !important
}

.text-hover-gray-900:hover .svg-icon {
  color: var(--bs-text-gray-900) !important
}

.text-active-gray-900 {
  transition: color .2s ease
}

.text-active-gray-900 i {
  transition: color .2s ease
}

.text-active-gray-900.active {
  transition: color .2s ease;
  color: var(--bs-text-gray-900) !important
}

.text-active-gray-900.active i {
  transition: color .2s ease;
  color: var(--bs-text-gray-900) !important
}

.text-active-gray-900.active .svg-icon {
  color: var(--bs-text-gray-900) !important
}




.text-bs-cyan {
  color: var(--bs-cyan);
}

/*fondos*/
.bg-w-b {
  background-color: var(--bg-light);
}

.bg-light {
  background-color: var(--bs-dark-light);
}

.bg-primary {
  background-color: var(--bs-primary) !important;
}

.bg-primary-light {
  background-color: var(--bs-secondary-light) !important;
}

.bg-secondary-light {
  background-color: var( --bs-primary-light-ligth) !important;
}

.bg-gray-500 {
  background-color: var(--bs-gray-500) !important;
}

.text-primary {
  color: var(--bs-text-primary) !important
}

.text-inverse-primary {
  color: var(--bs-primary-inverse) !important
}

.text-light-primary {
  color: var(--bs-primary-light) !important
}

.text-hover-primary {
  transition: color .2s ease
}

.text-hover-primary i {
  transition: color .2s ease
}

.text-hover-primary:hover {
  transition: color .2s ease;
  color: var(--bs-text-primary) !important
}

.text-hover-primary:hover i {
  transition: color .2s ease;
  color: var(--bs-text-primary) !important
}



/***********
*/

/*************
 weight tamaños
 ************/
.fw-100 {
  font-weight: 100;
}

.fw-200 {
  font-weight: 200;
}

.fw-300 {
  font-weight: 300;
}

.fw-400 {
  font-weight: 400;
}

.fw-500 {
  font-weight: 500;
}

.fw-600 {
  font-weight: 600;
}

.fw-700 {
  font-weight: 700;
}

/*texto tachado*/
.text-through {
  text-decoration: line-through;
}

/*************
 Textos tamaños
 ************/
.text-8 {
  font-size: 8px !important;
}

.text-9 {
  font-size: 9px !important;
}

.text-10 {
  font-size: 10px !important;
}

.text-11 {
  font-size: 11px !important;
}

.text-12 {
  font-size: 12px !important;
  ;
}

.text-13 {
  font-size: 13px !important;
}

.text-14 {
  font-size: 14px !important;
}

.text-15 {
  font-size: 15px;
}

.text-16 {
  font-size: 16px !important;
}

.text-18 {
  font-size: 18px !important;
}

.text-20 {
  font-size: 20px !important;
}

.text-22 {
  font-size: 22px !important;
}

.text-24 {
  font-size: 24px !important;
}

.text-25 {
  font-size: 25px !important;
}

.text-30 {
  font-size: 30px !important;
}
.text-35 {
  font-size: 35px !important;
}
.text-40 {
  font-size: 40px !important;
}

.text-45 {
  font-size: 45px !important;
}

.text-50 {
  font-size: 50px !important;
}

.text-60 {
  font-size: 60px !important;
}

.text-70 {
  font-size: 70px !important;
}

.text-100 {
  font-size: 100px !important;
}


/*********
bordes
************/
.border-dashed {
  border-style: dashed !important;
  border-color: var(--bs-border-dashed-color);
}

.border-gray-300 {
  border-color: var(--bs-gray-300) !important;
}


/* anchos y altos*/
.w-90px {
  width: 90px !important;
}

.w-90porc {
  width: 90% !important;
}

.min-w-125px {
  min-width: 125px !important;
}

.min-w-75px {
  min-width: 75px !important;
}



@media (min-width: 320px) {
  .w-md-325px {
    min-width: 275px !important;
  }
}

@media (min-width: 720px) {
  .w-md-325px {
    min-width: 325px !important;
  }

}



.rounded {
  border-radius: .475rem !important;
}

/***************
imagenes avatar
****************/
.img-circle {
  border-radius: 50%;
}


.img-circle-xs {
  border-radius: 50%;
  width: 35px;
  height: 35px;
  object-fit: cover;
  position: relative;
}


.user-avatar {
  border-radius: 0.35rem;
  width: 50px;
  height: 50px;
  object-fit: cover;
  position: relative;


}

.user-avatar img {
  width: 50px;
  height: 50px;
  object-fit: cover;
}


.user-avatar-xl {
  width: 90px;
  height: 90px;
  object-fit: cover;
  position: relative;
  border-radius: 0.35rem;

}

.user-avatar-xl img {
  width: 90px;
  height: 90px;
  object-fit: cover;
}

.user-avatar-xs {
  width: 20px;
  height: 20px;
  object-fit: cover;
  position: relative;
  border-radius: .475rem;

}

.user-avatar-xs img {
  width: 20px;
  height: 20px;
  object-fit: cover;
}



.user-avatar-sm {
  width: 35px;
  height: 35px;
  object-fit: cover;
  position: relative;
  border-radius: .475rem;

}

.user-avatar-sm img {
  width: 35px;
  height: 35px;
  object-fit: cover;
}


/************************
empty states
**********************/

/*empty state*/




.empty {

  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

.empty-height {
  height: 85vh;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

.empty-height-400 {
  height: 400px;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

.empty-height-350 {
  height: 300px;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

.empty-height-100 {
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}




/**************
dropdownmenu
************/
.dropdown-menu {
  border: 0px;
  border-radius: 0px;
  box-shadow: var(--bs-menu-dropdown-box-shadow);
}


.dropdown-item:focus,
.dropdown-item:hover {
  color: var(--bs-primary);
  background: transparent;
}

.btn-group>.btn-group:not(:last-child)>.btn,
.btn-group>.btn.dropdown-toggle-split:first-child,
.btn-group>.btn:not(:last-child):not(.dropdown-toggle) {


  border-top-right-radius: 0.25rem !important;
  border-bottom-right-radius: 0.25rem;
}

.dropdown-menu li {
  padding: 8px 0;
}

.dropdown-menu-footer {
  border-top: var(--bs-border-color);

  padding: 15px;

}

/*************
MENU
 ************/

/*notificacion campana*/

.bullet-notification {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: var(--bs-danger-active);
  position: absolute;
  right: 5px;
  top: 8px;
}

.btn-menu i {
  -webkit-transition: all 0.3s ease-out;
  -moz-transition: all 0.3s ease-out;
  -ms-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.btn-menu i:hover {
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}

.menu-aside {
  background-color: var(--bs-menu-900);
}

.flex-row-fluid {
  flex: 1 auto;
  min-width: 0;
}

.text-brand-menu {
  color: var(--bs-text-brand-menu);

}

.subtext-brand-menu {
  color: var(--bs-text-brand-menu);
  letter-spacing: 6px;

}

.bullet {
  display: inline-block;
  background-color: var(--bs-bullet-bg-color);
  border-radius: 6px;
  width: 8px;
  height: 4px;
  flex-shrink: 0
}

.bullet-dot {
  width: 4px;
  height: 4px;
  border-radius: 100% !important
}

.offcanvas.offcanvas-start {
  top: 0;
  left: 0;
  width: 320px;
}

/*----------------------sidebar-menu-------------------------*/


.offcanvas-body {
  padding: 0px;
  overflow: hidden;
  background-color: var(--bs-gray-200);
}

.offcanvas-header {
  background-color: var(--bs-gray-200);
}

.offcanvas-header .btn-close {
  color: var(--bs-text-gray-300);
}

.sidebar-menu {
  padding-bottom: 10px;


}

.sidebar-header {
  padding: 20px
}

/*boton cerrar menu*/
.btn-close-menu {
  background: transparent;
  border: 0px;
  box-shadow: none;
  font-size: 20px;
  color: var(--bs-gray-600);
  -webkit-transition: all 0.3s ease-out;
  -moz-transition: all 0.3s ease-out;
  -ms-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.btn-close-menu:hover {
  text-decoration: none;
  outline: none;
  -webkit-transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  -o-transform: rotate(90deg);
  transform: rotate(90deg);
}

.menu-content {
  padding: 10px 20px
}

.menu-heading {
  color: var(--bs-menu-heading-color);
}

.sidebar-menu ul li a {
  display: flex;
  align-items: center;

  text-decoration: none;
  position: relative;
  padding: 20px;
  color: var(--bs-gray-700);
  font-size: 13px;

  border-radius: .475rem;
  padding-top: .75rem;
  padding-bottom: .75rem;

}

.sidebar-menu ul li a .menu-bullet {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;

  margin-right: .5rem;
  background-color: #e2e2e8;

  display: inline-block;

  width: 4px;
  height: 4px;
  border-radius: 100% !important
}




.sidebar-menu ul li a:hover,
.sidebar-menu ul li a:active,
.sidebar-menu ul li a:focus {
  color: var(--bs-text-gray-800)
}


.sidebar-menu ul li a i {
  margin-right: 10px;

  color: var(--main-color);
  font-size: 16px;
  text-align: center;

}

.sidebar-menu ul li a.active {
  transition: color .2s ease;
  background-color: var(--bs-primary);
  color: #fff;
  margin-left: 20px;
  margin-right: 20px;
  position: relative;


}




.sidebar-menu .sidebar-dropdown>a:after {
  font-family: 'Linearicons-Free';
  font-weight: 900;
  content: "\e876";
  font-style: normal;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-align: center;
  background: 0 0;
  position: absolute;
  right: 15px;
  top: 15px;
  font-size: 13px;
}



.sidebar-menu .sidebar-dropdown .sidebar-submenu ul {
  padding: 5px 0;
}

.sidebar-menu .sidebar-dropdown .sidebar-submenu li {
  padding-left: 25px;
  font-size: 13px;
}




.sidebar-menu ul {

  padding-left: 0px;
}

.sidebar-menu ul li a span.label,
.sidebar-menu ul li a span.badge {
  float: right;
  margin-top: 8px;
  margin-left: 5px;
}

.sidebar-menu .sidebar-dropdown .sidebar-submenu li a .badge,
.sidebar-menu .sidebar-dropdown .sidebar-submenu li a .label {
  float: right;
  margin-top: 0px;
}

.sidebar-menu .sidebar-submenu {
  display: none;
}

.sidebar-menu .sidebar-dropdown.active>a:after {
  transform: rotate(90deg);
  right: 17px;
}


.sidebar-footer {
  position: absolute;
  width: 100%;
  bottom: 0;
  display: flex;
  background-color: var(--bs-primary);

}

.sidebar-footer>a {
  flex-grow: 1;
  text-align: center;

  line-height: 30px;
  position: relative;
  color: #fff;
  padding: 20px;
  display: block;
}



/**************
file upload
*****************/

.inputfile {
  width: 0.1px;
  height: 0.1px;
  opacity: 0;
  overflow: hidden;
  position: absolute;
  z-index: -1;
}

.inputfile+label {
  width: 100%;
  font-size: 1.25rem;
  /* 20px */
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
  cursor: pointer;
  display: inline-block;
  overflow: hidden;
  /* padding: 0.625rem 1.25rem; */
  /* 10px 20px */
  position: relative;
  border: 0px;
  background-color: var(--bs-gray-200);
  border-radius: 6px;
}

.inputfile:focus+label,
.inputfile.has-focus+label {
  outline: 1px dotted var(--bs-border-color);
  outline: -webkit-focus-ring-color auto 5px;
}

.inputfile+label * {
  /* pointer-events: none; */
  /* in case of FastClick lib use */
}

.inputfile-green+label {
  color: #d9dcdf;
}

.box.is-invalid .inputfile-green {
  border: 1px solid #23272b;
  /* background-color: #f1e5e6;*/
  padding: 0;
  border-radius: .25rem;
  height: 40px;
  margin: 0px;
}


.is-invalid .inputfile-green+label {
  border: 1px solid #FF5370;
  background-color: #f1e5e6;
  padding: 0;
  border-radius: .25rem;
  height: 40px;
  margin: 0px;
}

.inputfile-green:focus+label,
.inputfile-green.has-focus+label,
.inputfile-green+label:hover {
  border: 0px;

}

.inputfile-green+label span,
.inputfile-green+label p {
  padding: 0.625rem 1.25rem;
  /* 10px 20px */
}

.inputfile-green+label span {
  width: 250px;
  min-height: 40px;
  display: inline-block;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
  vertical-align: top;
  font-size: 15px;
  color: var(--bs-text-gray-1000);
  font-weight: 400;
}

.inputfile-green+label p {
  height: 100%;
  color: var(--bs-text-gray-100);
  background-color: var(--bs-primary);
  display: inline-block;
  font-size: 13px;
  position: absolute;
  right: 0px;
  top: 0px;
  font-weight: 500;
  font-size: 15px;
}

.inputfile-green:focus+label p,
.inputfile-green.has-focus+label p,
.inputfile-green+label:hover p {
  background-color: var(--bs-primary-dark);
  color: var(--bs-text-gray-200);
  outline: none;
}

.inputfile-green:focus+label,
.inputfile-green.has-focus+label,
.inputfile-green+label:hover {
  background-color: var(--bs-gray-300);
  outline: none;

}

@media screen and (max-width: 50em) {
  .inputfile-green+label p {
    display: block;
  }
}



/*************
Modales
 ************/

 .modal-icon-circle {
  position: absolute;
  top: -80px;
  left: 50%;
  transform: translateX(-50%);
  
  width: 150px;
  height: 150px;
  background-color: #ffffff;
  border-radius: 50%;
  
  display: flex;
  align-items: center;
  justify-content: center;
z-index: 1;

}



.modal-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  min-height: 70px;
  padding: 1.5rem 2.0rem;
  color: var(--card-cap-color);
  background-color: var(--card-cap-bg);
  border-bottom:0px;
}

.modal-footer {
 border-top:0px!important;
  justify-content: center;
}

.modal-content {
  border: 0px
}

.btn-close {
  --bs-btn-close-color: var(--btn-close-color);
}



/************
 preloader 
***********/

div#preloader {
  position: fixed;
  left: 0;
  top: 0;
  z-index: 99999;
  width: 100%;
  height: 100%;
  overflow: visible;
  background: rgba(24, 26, 30, 0.8) url(../img/preload.svg) no-repeat center center;
}



.preload-spinner {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 3;
  width: 100%;
  height: 100%;
  overflow: visible;
  background: rgba(24, 26, 30, 0.8) url(../img/preloadSpinner.svg) no-repeat center center;
  border-radius: 5px;
}

/*************
 Botones 
 ************/

.btn-check:active+.btn.btn-active-light-primary,
.btn-check:checked+.btn.btn-active-light-primary,
.btn.btn-active-light-primary.active,
.btn.btn-active-light-primary.show,
.btn.btn-active-light-primary:active:not(.btn-active),
.btn.btn-active-light-primary:focus:not(.btn-active),
.btn.btn-active-light-primary:hover:not(.btn-active),
.show>.btn.btn-active-light-primary {
  color: var(--bs-primary);
  border-color: var(--bs-primary-light);
  background-color: var(--bs-primary-light) !important
}

.btn-check:active+.btn.btn-active-light-primary .svg-icon,
.btn-check:active+.btn.btn-active-light-primary i,
.btn-check:checked+.btn.btn-active-light-primary .svg-icon,
.btn-check:checked+.btn.btn-active-light-primary i,
.btn.btn-active-light-primary.active .svg-icon,
.btn.btn-active-light-primary.active i,
.btn.btn-active-light-primary.show .svg-icon,
.btn.btn-active-light-primary.show i,
.btn.btn-active-light-primary:active:not(.btn-active) .svg-icon,
.btn.btn-active-light-primary:active:not(.btn-active) i,
.btn.btn-active-light-primary:focus:not(.btn-active) .svg-icon,
.btn.btn-active-light-primary:focus:not(.btn-active) i,
.btn.btn-active-light-primary:hover:not(.btn-active) .svg-icon,
.btn.btn-active-light-primary:hover:not(.btn-active) i,
.show>.btn.btn-active-light-primary .svg-icon,
.show>.btn.btn-active-light-primary i {
  color: var(--bs-primary)
}

.btn-check:active+.btn.btn-active-light-primary.dropdown-toggle:after,
.btn-check:checked+.btn.btn-active-light-primary.dropdown-toggle:after,
.btn.btn-active-light-primary.active.dropdown-toggle:after,
.btn.btn-active-light-primary.show.dropdown-toggle:after,
.btn.btn-active-light-primary:active:not(.btn-active).dropdown-toggle:after,
.btn.btn-active-light-primary:focus:not(.btn-active).dropdown-toggle:after,
.btn.btn-active-light-primary:hover:not(.btn-active).dropdown-toggle:after,
.show>.btn.btn-active-light-primary.dropdown-toggle:after {
  color: var(--bs-primary)
}


.btn-check:active+.btn.btn-active-light-danger,
.btn-check:checked+.btn.btn-active-light-danger,
.btn.btn-active-light-danger.active,
.btn.btn-active-light-danger.show,
.btn.btn-active-light-danger:active:not(.btn-active),
.btn.btn-active-light-danger:focus:not(.btn-active),
.btn.btn-active-light-danger:hover:not(.btn-active),
.show>.btn.btn-active-light-danger {
  color: var(--bs-danger);
  border-color: var(--bs-danger-light);
  background-color: var(--bs-danger-light) !important
}

.btn-check:active+.btn.btn-active-light-danger .svg-icon,
.btn-check:active+.btn.btn-active-light-danger i,
.btn-check:checked+.btn.btn-active-light-danger .svg-icon,
.btn-check:checked+.btn.btn-active-light-danger i,
.btn.btn-active-light-danger.active .svg-icon,
.btn.btn-active-light-danger.active i,
.btn.btn-active-light-danger.show .svg-icon,
.btn.btn-active-light-danger.show i,
.btn.btn-active-light-danger:active:not(.btn-active) .svg-icon,
.btn.btn-active-light-danger:active:not(.btn-active) i,
.btn.btn-active-light-danger:focus:not(.btn-active) .svg-icon,
.btn.btn-active-light-danger:focus:not(.btn-active) i,
.btn.btn-active-light-danger:hover:not(.btn-active) .svg-icon,
.btn.btn-active-light-danger:hover:not(.btn-active) i,
.show>.btn.btn-active-light-danger .svg-icon,
.show>.btn.btn-active-light-danger i {
  color: var(--bs-danger)
}

.btn-check:active+.btn.btn-active-light-danger.dropdown-toggle:after,
.btn-check:checked+.btn.btn-active-light-danger.dropdown-toggle:after,
.btn.btn-active-light-danger.active.dropdown-toggle:after,
.btn.btn-active-light-danger.show.dropdown-toggle:after,
.btn.btn-active-light-danger:active:not(.btn-active).dropdown-toggle:after,
.btn.btn-active-light-danger:focus:not(.btn-active).dropdown-toggle:after,
.btn.btn-active-light-danger:hover:not(.btn-active).dropdown-toggle:after,
.show>.btn.btn-active-light-danger.dropdown-toggle:after {
  color: var(--bs-danger)
}




.btn.btn-rounded {
  border-radius: 50px;
}

.btn.btn-icon {
  width: 36px;
  height: 37px;
  padding: 0;
  line-height: 42px;
  justify-content: center;
  align-items: center;
  display: flex;
}


.btn.btn-icon:hover,
.btn.btn-icon:active,
.btn.btn-icon:focus {
  border: 0px
}


.btn.btn-icon-sm {
  width: 30px;
  height: 30px;
  padding: 0;
  line-height: 30px;
}

.btn.btn-icon-xs {
  width: 20px;
  height: 20px;
  padding: 0;
  line-height: 20px;
}



.btn-icon-text {
  justify-content: center;
  align-items: center;
  display: flex;
}

/*btn PRIMARY*/

.btn-light {
  background-color: var(--bs-gray-200);
  border-color: var(--bs-gray-200);
  color: var(--bs-text-gray-500);

}

.btn-light:hover,
.btn-light:focus,
.btn-light:active {
  background-color: var(--bs-gray-400);
  border-color: var(--bs-gray-400);
  color: var(--bs-text-gray-500);

  box-shadow: none !important;
}
.btn-outline-dark:visited {
  background-color: transparent!important;
  border-color: var(--bs-black);




}
.btn.btn-outline-primary.btn-outline-dashed{
  border: 1px dashed var(--bs-gray-700);
  color: var(--bs-text-gray-900);

}

.btn.btn-outline-primary.btn-outline-dashed:hover{
  border: 1px dashed var(--bs-primary);

}

.btn.btn-outline-primary.btn-outline-dashed.active{
  background-color: var(--bs-primary-light)!important;
  border: 1px dashed var(--bs-primary)!important;
  color: var(--bs-text-primary);
}


.btn-outline-white {
  background-color: transparent;
  border-color: var(--bs-white);
  color: var(--bs-white);



}


.btn-outline-white:hover,
.btn-outline-white:focus,
.btn-outline-white:active {
 background-color: transparent;
  border-color: var(--bs-gray-800);
  color: var(--bs-text-gray-800);

}
.btn-outline-light {
  background-color: transparent;
  border-color: var(--bs-gray-600);
  color: var(--bs-text-gray-600);
  width: 35px;
  height: 35px;
  font-size: 18px;
  padding: 5px;


}


.btn-outline-light:hover,
.btn-outline-light:focus,
.btn-outline-light:active {
  background-color: var(--bs-gray-800);
  border-color: var(--bs-gray-800);
  color: var(--bs-text-gray-200);

}


.btn-outline-inverse:hover,
.btn-outline-inverse:focus,
.btn-outline-inverse:active {
  background-color: var(--bs-gray-200);
  border-color: var(--bs-gray-200);
  color: var(--bs-text-gray-500);

  box-shadow: none !important;
}


.btn-primary-dark {
  background-color: var(--bs-primary-dark);
  border-color: var(--bs-primary-dark);
  color: var(--bs-text-white);

}

.btn-primary-dark:hover,
.btn-primary-dark:focus,
.btn-primary-dark:active {
  background-color: var(--bs-black) ;
  color: var(--bs-text-white);
  box-shadow: none !important;
  border-color: var(--bs-black)
  ;
}

.btn-primary-dark.disabled {
  background-color: var(--bs-primary-disabled);
  border-color: var(--bs-primary-disabled);
  color: var(--bs-text-white);

}




.btn-primary {
  background-color: var(--bs-primary);
  border-color: var(--bs-primary);

}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active {
  background-color: var(--bs-primary-dark) !important;
  color: var(--bs-text-white);
  box-shadow: none !important;
  border-color: var(--bs-primary-dark) !important;
  ;
}

.btn-primary.disabled {
  background-color: var(--bs-primary-disabled);
  border-color: var(--bs-primary-disabled);
  color: var(--bs-text-white);

}


.btn-outline-primary {
  border-color: var(--bs-primary);
  background-color: transparent;
  color: var(--bs-primary);
  box-shadow: none !important;

}

.btn-outline-primary:hover,
.btn-outline-primary:focus,
.btn-outline-primary:active {
  border-color: var(--bs-primary-dark);
  background-color: transparent;
  color: var(--bs-primary-dark);
  box-shadow: none !important;

}



.btn-primary-light {
  background-color: var(--bs-primary-light);
  border-color: var(--bs-primary-light);
  color: var(--bs-primary);

}

.btn-primary-light:hover,
.btn-primary-light:focus,
.btn-primary-light:active {
  background-color: var(--bs-primary);
  color: var(--bs-text-white);
  border: 1px solid var(--bs-primary);
  box-shadow: none !important;
}

.btn-success {
  background-color: var(--bs-success-active);
  border-color: var(--bs-success-active);
  color: var(--bs-text-white);
  -webkit-transition: all ease-in 0.3s;
  transition: all ease-in 0.3s;
  box-shadow: none !important;
}

.btn-success:hover,
.btn-success:active,
.btn-success:focus {
  background-color: var(--bs-success-bg-subtle);
  border-color: var(--bs-success-bg-subtle);
  color: var(--bs-text-white);
  -webkit-transition: all ease-in 0.3s;
  transition: all ease-in 0.3s;
  box-shadow: none !important;
}

.btn-success.disabled {
  background-color: var(--bs-success-disabled);
  border-color: var(--bs-success-disabled);
  color: var(--bs-text-white);
}

.btn-warning {
  background-color: var(--bs-warning-active);
  border-color: var(--bs-warning-active);
  color: var(--bs-text-white);
  -webkit-transition: all ease-in 0.3s;
  transition: all ease-in 0.3s;
  box-shadow: none !important;
}

.btn-warning:hover,
.btn-warning:active,
.btn-warning:focus {
  background-color: var(--bs-warning-bg-subtle);
  border-color: var(--bs-warning-bg-subtle);
  color: var(--bs-text-white);
  -webkit-transition: all ease-in 0.3s;
  transition: all ease-in 0.3s;
  box-shadow: none !important;
}



.btn-warning-light {
  background-color: var(--bs-warning-light);
  border-color: var(--bs-warning-light);
  color: var(--bs-warning);

}

.btn-warning-light:hover,
.btn-warning-light:focus,
.btn-warning-light:active {
  background-color: var(--bs-warning);
  color: var(--bs-text-white);
  border: 1px solid var(--bs-warning);
  box-shadow: none !important;
}

.btn-danger {
  background-color: var(--bs-danger-active);
  border-color: var(--bs-danger-active);
  color: var(--bs-text-white);
  -webkit-transition: all ease-in 0.3s;
  transition: all ease-in 0.3s;
  box-shadow: none !important;
}

.btn-danger:hover,
.btn-danger:active,
.btn-danger:focus {
  background-color: var(--bs-danger-bg-subtle);
  border-color: var(--bs-danger-bg-subtle);
  color: var(--bs-text-white);
  -webkit-transition: all ease-in 0.3s;
  transition: all ease-in 0.3s;
  box-shadow: none !important;
}

.btn-danger.disabled {
  background-color: var(--bs-danger-disabled);
  border-color: var(--bs-danger-disabled);
  color: var(--bs-text-white);
}



.btn-danger-light {
  background-color: var(--bs-danger-light);
  border-color: var(--bs-danger-light);
  color: var(--bs-danger);

}

.btn-danger-light:hover,
.btn-danger-light:focus,
.btn-danger-light:active {
  background-color: var(--bs-danger);
  color: var(--bs-text-white);
  border: 1px solid var(--bs-danger);
  box-shadow: none !important;
}

.btn-tile-menor {
  width: 80%;
   height: auto;
  padding: 70px 100px;
  border-radius: 18px;
  background-color: #f3f3f3;
  border: none;
  transition: all .2s ease;
}

.btn-tile-menor:hover {
  background-color: #ececff;
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(0,0,0,.08);
}

.btn-tile {
  width: 80%;
   height: auto;
  padding: 100px 100px;
  border-radius: 18px;
  background-color: #f3f3f3;
  border: none;
  transition: all .2s ease;
}

.btn-tile:hover {
  background-color: #ececff;
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(0,0,0,.08);
}

.btn-icon {
  font-size: 36px;
  color: var(--bs-secondary);
}

.btn-title {
  font-size: 16px;
  font-weight: 600;
  color: var(--bs-primary);
}

.btn-subtitle {
  font-size: 13px;
  color: var(--bs-primary-light);
}




/*************
 margenes y paddings
 ************/

.mr-5 {
  margin-right: 5px;
}

.mt-33 {
  margin-top: 33px;
}

.mt-15 {
  margin-top: 15px;
}

.mt-50 {
  margin-top: 50px;
}


.pt-15 {
  padding-top: 15px !important;
}

.pt-20 {
  padding-top: 20px !important;
}

.pb-15 {
  padding-bottom: 15px !important;
}

.pb-20 {
  padding-bottom: 20px !important;
}

.p-10 {
  padding: 10px;
}

.margin-bo-0 {
  margin-bottom: 0px;
}

/*************
 Imagenes 
 ************/

.img-lg {
  width: 92px;
  height: 92px;
}

.img-md {
  width: 60px;
  height: 60px;
}

.img-sm {
  width: 43px;
  height: 43px;
}

.img-xs {
  width: 35px;
  height: 35px;
}

.img-ss {
  width: 26px;
  height: 26px;
}



.pointer {
  cursor: ponter
}

/* ********************
Gradientes
 **************/












/******circles*********/

.circle-xs {
  width: 28px;
  height: 28px;
  line-height: 28px;
  text-align: center;
  border-radius: 50%;
  display: inline-block;
}

.circle-sm {
  width: 40px;
  height: 40px;
  line-height: 35px;
  text-align: center;
  border-radius: 50%;
  display: inline-block;
}

.circle-md {
  width: 60px;
  height: 60px;
  line-height: 40px;
  text-align: center;
  border-radius: 50%;
  display: inline-block;
}

.circle-lg {
  width: 75px;
  height: 75px;
  line-height: 75px;
  text-align: center;
  border-radius: 50%;
  display: inline-block;
}

.circle-xlg {
  width: 180px;
  height: 180px;
  line-height: 75px;
  text-align: center;
  border-radius: 50%;
  display: inline-block;
}


/**********
badges labels
***************/

.label-danger {
  background: #FF5370
}

.label-success {
  background: var(--bs-success)
}

.label-grey {
  background: var(--bs-gray-400)
}

.label {
  border-radius: 4px;
  font-size: 12px;
  padding: .40rem 7px;
  font-weight: 500;
  text-transform: capitalize;
  display: inline-flex;
  align-items: center;


}



.label-inverse-primary {
  border: 1px solid;
  border-color: var(--bs-primary);
  color: var(--bs-primary) !important;
}

.label-inverse-success {
  border: 1px solid;
  border-color: var(--bs-success);
  color: var(--bs-success) !important;
}

.label-primary-light {
  color: var(--bs-success);
  background-color: var(--bs-success-light);
}

.label-danger-light {
  color: var(--bs-danger);
  background-color: var(--bs-danger-light);
}

.label-gray-light {
  color: var(--bs-gray-700);
  background-color: var(--bs-gray-200);
}

.label-inverse-warning {
  border: 1px solid;
  border-color: var(--bs-warning);
  color: var(--bs-warning) !important;
}

.label-inverse-danger {
  border: 1px solid;
  border-color: var(--bs-danger);
  color: var(--bs-danger) !important;
}








.label-inverse-info {
  border: 1px solid;
  border-color: var(--bs-info);
  color: var(--bs-info) !important;
}

.label-inverse-info-border {
  border: 1px solid;
  border-color: var(--bs-info);
  color: var(--bs-info) !important;
}




.label-tecnologia {
  background-color: var(--bs-primary-light);
  color: var(--bs-primary);
}


.label-diseno {
  background-color: #fae6ee;
  color: #fe085a;
}


.label-pmo {
  background-color: #fff7dc;
  color: #c66419;
}

.label-desarrollo {
  background-color: #d4eefe;
  color: #1739e4;
}

.label-analisis {
  background-color: #c7f8ea;
  color: #024b44;
}


.label-administracion {
  background-color: #f2e3fd;
  color: #a900e6;
  flex-wrap: wrap;
}

.label-mesadeayuda {
  background-color: #ffe2e2;
  color: #e60000;
}

.label-direccion {
  background-color: #f2ffe0;
  color: #69ae09;
}

.label-basedesatos {
  background-color: #ffe5d3;
  color: #f57d27;
}

.label-otros {
  background-color: #cbcbcb;
  color: #171717;
}


.label-rol {
  background-color: #cbcbcb;
  color: #171717;
}

.label-permiso {
  background-color: #d2d1ff;
  color: #1d0e90;
}




/************formularios***********/

.lupaSearch {
  top: 10px;
  font-size: 20px;
  right: 15px;
  color: var(--bs-gray-500);
}

.cambiarModo {
  display: none
}

.dropdown-item.active,
.dropdown-item:active {
  color: #000 !important;
  text-decoration: none;
  background-color: #adc5e8
}

.form-label {
  font-size: 13px;
  color: var(--bs-gray-700);
}

.checkbox-md .form-check-input {
  width: 1.15rem;
  height: 1.15rem;
  box-shadow: none;
}

.checkbox-md.form-check-input {
  width: 1.15rem;
  height: 1.15rem;
  box-shadow: none;
}

.checkbox-md .form-check-label {
  margin-left: 10px;
  margin-top: 5px;
  box-shadow: none;
}

.checkbox-lg .form-check-input {
  width: 1.55rem;
  height: 1.55rem;
  box-shadow: none;
}

.checkbox-lg.form-check-input {
  width: 1.55rem;
  height: 1.55rem;
  box-shadow: none;
}

.checkbox-lg .form-check-label {
  margin-left: 10px;
  margin-top: 5px;
  box-shadow: none;
}

select.form-control {
  -webkit-appearance: menulist;
}


select option[selected] {
  margin: 40px;
  background: var(--bs-primary-active);
  color: #fff;

}

.form-check-input.check-info:checked {
  background-color: var(--info-color-light) !important;
  border-color: var(--info-color-light) !important;
}

.form-check-input.check-success:checked {
  background-color: var(--bs-success) !important;
  border-color: var(--bs-success) !important;
}

.form-check-input:checked {
  background-color: var(--bs-primary);
  border-color: var(--bs-primary);
}

.input-icon {
  position: absolute;
  top: 10px;
  left: 15px;
}


.form-switch .form-check-input {
  width: 3rem;
  height: 25px;
}

.form-control.is-invalid,
.was-validated .form-control:invalid {
  border-color: var(--bs-form-invalid-border-color) !important;
}

.form-control.form-control-solid {
  background-color: var(--bs-gray-100);
  border-color: var(--bs-gray-100);
  color: var(--bs-text-gray-1000);
  transition: color .2s ease;

}

.form-control.form-control-solid::placeholder {
  color: var(--bs-gray-500)
}

.form-control.form-control-solid::-moz-placeholder {
  color: var(--bs-gray-500);
  opacity: 1
}

.dropdown.show>.form-control.form-control-solid,
.form-control.form-control-solid.active,
.form-control.form-control-solid.focus,
.form-control.form-control-solid:active,
.form-control.form-control-solid:focus {
  background-color: var(--bs-gray-200);
  border-color: var(--bs-gray-200);
  color: var(--bs-gray-700);
  transition: color .2s ease;
  box-shadow: none;
}

.form-control-solid-bg {
  background-color: var(--bs-gray-100)
}

.form-control-plaintext {
  color: var(--bs-gray-700)
}

.placeholder-gray-500::placeholder {
  color: var(--bs-gray-500)
}

.placeholder-gray-500::-moz-placeholder {
  color: var(--bs-gray-500);
  opacity: 1
}

.placeholder-white::placeholder {
  color: #fff
}

.placeholder-white::-moz-placeholder {
  color: #fff;
  opacity: 1
}



.form-control {
  border-color: #495057;
}






/*********
login
***********/

.showPass {
  position: absolute;
  top: 35%;
  right: 20px;
  cursor: pointer;

}

.showPass-invalid {
  position: absolute;
  top: 26%;
  right: 20px;
  cursor: pointer;
  font-size: 25px;
}

.img.js-background-size {

  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
}




/*******
card
**********/

.card {
  box-shadow: var(--bs-card-box-shadow);
  border: 1px solid var(--card-border-color);
  color: #000;
  background-color: var(--card-bg);
  border-radius: var(--card-border-radius);

}

.card .card-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  min-height: 70px;

  color: var(--card-cap-color);
  background-color: var(--card-cap-bg);
  border-bottom: 1px solid var(--card-border-color);
}

.card .card-header h2 {
  font-size: 20px;
  margin-bottom: 0px;
}


.card .card-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  min-height: 70px;

  color: var(--card-cap-color);
  background-color: var(--card-cap-bg);
  border-top: 1px solid var(--card-border-color);
}

@media (min-width: 320px) {
  .card .card-body {
    padding: 1.0rem;
  }

  .card .card-header {

    padding: 1.5rem 1.0rem;

  }
}

@media (min-width: 720px) {
  .card .card-body {
    padding: 2.0rem;
  }

  .card .card-header {

    padding: 1.5rem 2.0rem;

  }

}

.card.card-flush>.card-header {
  border-bottom: 0 !important;
}

.card-header:first-child {
  border-radius: var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius) 0 0;
}



/*********
ellipsis
*********/
.ellipsis-150 {
  max-width: 400px;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}
/*******
titulo
************/
.title-page{
  font-weight: 600;
  color: var(--bs-gray-800);
  font-size: 18px;
 
}

.section-title-uppercase {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 24px 0;
  
}

.section-title-uppercase span {
  font-size: 12px;
  letter-spacing: 5px;
  color: #4b4bbd; /* ajustá al color del sistema */
  font-weight: 600;
  white-space: nowrap;
  
}

.section-title-uppercase::after {
  content: "";
  flex: 1;
  height: 1px;
  background-color: #4b4bbd;
}




/************
SKELETON
***********/

.skeleton-img,
.skeleton-avatar,
.list-loading-footer,
.list-loading-text,
.list-loading-header {
  -webkit-animation: skeleton 2.5s ease-in-out forwards infinite;
  animation: skeleton 2.5s ease-in-out forwards infinite;
  -webkit-animation-direction: alternate;
  animation-direction: alternate;
}

@-webkit-keyframes skeleton {
  0% {
    opacity: 0.2;
    transform: translateY(6px) scale(0.98);
  }

  85%,
  100% {
    opacity: 1;
    transform: translateY(0px) scale(1);
  }
}

@keyframes skeleton {
  0% {
    opacity: 0.2;
    transform: translateY(6px) scale(0.98);
  }

  85%,
  100% {
    opacity: 1;
    transform: translateY(0px) scale(1);
  }
}


.list-loading {
  /*background-color: var(--bs-gray-200);*/

  margin: 0 auto;
  width: 100%;
  border: 0px;
  border-radius: 0.5rem;
  overflow: hidden;
}

.list-loading-content {
  margin-left: calc(48px + 10px);
}

.list-loading-header {
  transform-origin: bottom;
}

.list-loading-text {
  -webkit-animation-delay: 200ms;
  animation-delay: 200ms;
}

.list-loading-footer {
  display: flex;
  margin-top: 1rem;
  transform-origin: bottom;
  -webkit-animation-delay: 400ms;
  animation-delay: 400ms;
}

.skeleton {
  /*background-color: var(--bs-gray-200);*/
  margin-bottom: 15px
}

.skeleton-avatar {
  width: 40px;
  height: 40px;
  background-color: var(--bs-gray-400);
  border-radius: 100%;
  float: left;
}

.skeleton-line {
  height: 0.5rem;
  background-color: var(--bs-gray-400);
  border-radius: 3px;
  margin-bottom: 0.3rem;
}

.skeleton-line.heading {
  height: 0.8rem;
  margin-bottom: 0.5rem;
}


.skeleton-button.rounded {
  border-radius: 100%;
}


/************
 alertas
***********/

.alert {
  border: 1px dashed;
}

.alert-danger i {
  color: var(--bs-danger-active);
}

.alert-danger {
  border-color: var(--bs-danger-active);
  color: var(--bs-danger-active);
}

.alert-warning i {
  color: var(--bs-warning);
}

.alert-warning {
  border-color: var(--bs-warning);
}


.alert-info i {
  color: var(--bs-info);
}

.alert-info {
  border-color: var(--bs-info);
}




/***********
LOGIN
************/
.container-login100 {
  width: 100%;
  min-height: 100vh;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  padding: 15px;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  position: relative;
  z-index: 1
}



.rounded-4 {
  border-radius: 1rem !important;
}


/**/

.iconList {
  background-color: var(--bs-primary-light);
  width: 38px;
  height: 38px;
  line-height: 38px;
  text-align: center;
  font-size: 18px;
  color: var(--bs-primary-dark);
  border-radius: 4px;
}


.iconList.active {
  background-color: var(--bs-primary);
  width: 38px;
  height: 38px;
  line-height: 32px;
  text-align: center;
  border-radius: 4px;

}

.iconList.inactive {
  background-color: var(--bs-white);
  width: 38px;
  height: 38px;
  line-height: 32px;
  text-align: center;
  border-radius: 4px;
  border: 1px solid var(--bs-gray-300);

}

/********svg icons*/
.svg-icon.svg-icon-gray svg g [fill] {
  -webkit-transition: fill 0.3s ease;
  transition: fill 0.3s ease;
  fill: var(--bs-gray-600) !important;
}

.svg-icon.svg-icon-primary svg g [fill] {
  -webkit-transition: fill 0.3s ease;
  transition: fill 0.3s ease;
  fill: var(--bs-primary) !important;
}

.svg-icon.svg-icon-primary svg:hover g [fill] {
  -webkit-transition: fill 0.3s ease;
  transition: fill 0.3s ease;
}

.svg-icon.svg-logo-primary svg path {
  fill: #3d5af1 !important;
}

.svg-icon.svg-icon-success svg g [fill] {
  -webkit-transition: fill 0.3s ease;
  transition: fill 0.3s ease;
  fill: var(--bs-success) !important;
}

.svg-icon.svg-icon-warning svg g [fill] {
  -webkit-transition: fill 0.3s ease;
  transition: fill 0.3s ease;
  fill: var(--bs-warning) !important;
}


.svg-icon.svg-icon-info svg g [fill] {
  -webkit-transition: fill 0.3s ease;
  transition: fill 0.3s ease;
  fill: #3d5af1 !important;
}

.svg-icon.svg-icon-danger svg g [fill] {
  -webkit-transition: fill 0.3s ease;
  transition: fill 0.3s ease;
  fill: #dc3545 !important;
}

.svg-icon.svg-icon-grey svg g [fill] {
  -webkit-transition: fill 0.3s ease;
  transition: fill 0.3s ease;
  fill: #bbc0c3 !important;
}

.svg-icon.svg-icon-white svg g [fill] {
  -webkit-transition: fill 0.3s ease;
  transition: fill 0.3s ease;
  fill: #ffffff !important;
}



.svg-icon.svg-icon-sm svg {
  height: 1.25rem !important;
  width: 1.25rem !important;
}

.svg-icon.svg-icon-md svg {
  height: 1.5rem !important;
  width: 1.5rem !important;
}

.svg-icon.svg-icon-lg svg {
  height: 1.75rem !important;
  width: 1.75rem !important;
}

.svg-icon.svg-icon-xl svg {
  height: 2rem !important;
  width: 2rem !important;
}

.svg-icon.svg-icon-xxl svg {
  height: 2.25rem !important;
  width: 2.25rem !important;
}

.svg-icon.svg-icon-1x svg {
  height: 1rem !important;
  width: 1rem !important;
}

.svg-icon.svg-icon-2x svg {
  height: 2rem !important;
  width: 2rem !important;
}

.svg-icon.svg-icon-3x svg {
  height: 3rem !important;
  width: 3rem !important;
}

.svg-icon.svg-icon-4x svg {
  height: 4rem !important;
  width: 4rem !important;
}

.svg-icon.svg-icon-5x svg {
  height: 5rem !important;
  width: 5rem !important;
}

.svg-icon.svg-icon-6x svg {
  height: 6rem !important;
  width: 6rem !important;
}

.svg-icon.svg-icon-7x svg {
  height: 7rem !important;
  width: 7rem !important;
}

.svg-icon.svg-icon-8x svg {
  height: 8rem !important;
  width: 8rem !important;
}

.svg-icon.svg-icon-9x svg {
  height: 9rem !important;
  width: 9rem !important;
}

.svg-icon.svg-icon-10x svg {
  height: 10rem !important;
  width: 10rem !important;
}










.text-ind-1 {
  text-indent: 30px;
}







.buttonBack{
  bottom: 150px;position: absolute;
}





/*qr*/

.qr-wrapper {
  position: relative;
  width: 400px;
  height: 400px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff;
}

.qr-img {
  width: 380px;
  height: 380px;
}

/* Corners */
.corner {
  position: absolute;
  width: 28px;
  height: 28px;
  border: 4px solid #7EDC8A;
}

/* Top left */
.tl {
  top: 0;
  left: 0;
  border-right: none;
  border-bottom: none;
}

/* Top right */
.tr {
  top: 0;
  right: 0;
  border-left: none;
  border-bottom: none;
}

/* Bottom left */
.bl {
  bottom: 0;
  left: 0;
  border-right: none;
  border-top: none;
}

/* Bottom right */
.br {
  bottom: 0;
  right: 0;
  border-left: none;
  border-top: none;
}











/*splash*/
.splash-screen {
  position: fixed;
  inset: 0;
  z-index: 9999;

  display: flex;
  align-items: center;
  justify-content: center;

  background: linear-gradient(
    135deg,
    #52b26e,
    #1bb7d0,
    #386fb4,
    #3c3c3c
  );
}

.logo-lc {
  width: 550px;
}

/* TODOS los paths del logo */
.logo-group path {
  fill: transparent;                 /* importante */
  stroke: #ffffff;
  stroke-width: 3;
  stroke-linecap: round;
  stroke-linejoin: round;

  stroke-dasharray: 3000;             /* grande a propósito */
  stroke-dashoffset: 3000;

  animation: drawLogo 2.6s ease forwards;
}

/* Animación de dibujo */
@keyframes drawLogo {
  to {
    stroke-dashoffset: 0;
  }
}

/* Relleno posterior */
.logo-group path {
  animation:
    drawLogo 2.6s ease forwards,
    fillLogo 0.6s ease forwards;
  animation-delay: 0s, 2.4s;
}

@keyframes fillLogo {
  to {
    fill: #ffffff;
    stroke: transparent;
  }
}


.lab-ciudad {
  opacity: 0;
  transform: translateY(8px);
  animation: showText 0.6s ease forwards;
  animation-delay: 2.8s;
}

@keyframes showText {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}






.progress-wrapper {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
  max-width: 900px;
  margin: 10px auto;
}

.progress-line {
  position: absolute;
  top: 35px;
  left: 5%;
  right: 5%;
  height: 4px;
  background: #9aa0ad;
  z-index: 1;
}

.step {
  position: relative;
  text-align: center;
  z-index: 2;
  color: #000000;
  flex: 1;
}

.step .icon {
  width: 60px;
  height: 60px;
  background: #fff;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 26px;
  margin: 0 auto 10px;
  border: 1px dashed #999;
}

.step span {
  display: block;
  font-size: 16px;
}

.step.completed .icon {
  background: var(--bs-primary-light-md);
  color: #000;
 
}




.step.completed span {
  color: #000000;
}

.step.active .icon {
  background: #fff;
  border: 2px solid var(--bs-primary);
  color: white;
  box-shadow: 0 0 0 4px rgba(50, 64, 146, 0.3);
}

.step.active span {
  color: var(--bs-primary);
}


.progress-line {
  position: absolute;
  top: 35px;
  left: 10%;
  right: 10%;
  height: 4px;
  background: #9aa0ad;
  z-index: 1;
  overflow: hidden;
}

.progress-fill {
  height: 100%;
  width: 0%;
  background: var(--bs-primary);
  transition: width .4s ease;
}