/* Please see documentation at https://learn.microsoft.com/aspnet/core/client-side/bundling-and-minification
for details on configuring this project to bundle and minify static web assets. */

a.navbar-brand {
  white-space: normal;
  text-align: center;
  word-break: break-all;
}

a {
  color: #0077cc;
}

.btn-primary {
  color: #fff;
  background-color: #1b6ec2;
  border-color: #1861ac;
}

.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
  color: #fff;
  background-color: #1b6ec2;
  border-color: #1861ac;
}

.border-top {
  border-top: 1px solid #e5e5e5;
}
.border-bottom {
  border-bottom: 1px solid #e5e5e5;
}

.box-shadow {
  box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.05);
}

button.accept-policy {
  font-size: 1rem;
  line-height: inherit;
}

.footer {
  position: absolute;
  bottom: 0;
  width: 100%;
  white-space: nowrap;
  line-height: 60px;
}

/* -------------------------------------------------- */

:root {
  --color_primario: #004990;
  --color_secundario: #d1dfec;
  --color_terciario: #E1251B;
  --color_svg_nav: #FFFFFF;
  --color_verde: #4bb98b;
  --color_gris: #333217;
  --color_gris_claro: #b1b1b1;
  --color_negro: #010101;
  --color_blanco: #ffffff;
}

/* ###############################################
                    FUENTES                  
############################################### */

@font-face {
  font-family: "Montserrat";
  src: url("../lib/fonts/montserrat/Montserrat-VariableFont_wght.ttf")
    format("truetype");
  font-weight: 100 900;
  font-style: normal;
}

@font-face {
  font-family: "Montserrat";
  src: url("../lib/fonts/montserrat/Montserrat-Italic-VariableFont_wght.ttf")
    format("truetype");
  font-weight: 100 900;
  font-style: italic;
}

/* ###############################################
                    LANDING                  
############################################### */

.lDesktop {
  display: block;
}

.lMobile {
  display: none;
}

#botonInstalarApp,
#botonInstalarAppMobile {
  background-color: transparent;
  border: none;
  cursor: pointer;
}

.contenedorLandingDescarga {
  gap: 40px;
  max-width: 500px;
  text-align: center;
  position: absolute;
  top: 40%;
  right: 20%;
  color: white;
}

.contenedorLandingDescarga .descarga,
.contenedorLandingDescarga .titulo {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 80px;
}

@media (max-width: 768px) {
  .contenedorLandingDescarga {
    justify-content: center;
    gap: 20px;
    top: 80%;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    padding: 20px;
    margin: 0 auto;
  }

  .lDesktop {
    display: none;
  }

  .lMobile,
  .contenedorLandingDescarga .compatible {
    display: flex;
    gap: 10px;
    justify-content: center;
  }

  .contenedorLandingDescarga .descarga {
    position: absolute;
    translate: 0 -120%;
  }
  #qrInstalarApp {
    display: none;
  }
}

/* ###############################################
                    GENERAL                  
############################################### */

html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

.btn:focus,
.btn:active:focus,
.btn-link.nav-link:focus,
.form-control:focus,
.form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
  position: relative;
  min-height: 100%;
  font-family: "Montserrat", sans-serif;
}

body {
  margin: 0 auto;
  height: 100dvh;
  max-width: 1200px;
  font-family: "Montserrat", "Inter", sans-serif;
}

.h-100dvh {
  height: 100dvh;
}

.h-100dvh2 {
  height: calc(100dvh - 135px);
}

.h-100vh {
  height: 100vh;
}

.mbFooter {
  margin-bottom: 180px;
}

/* ###############################################
                    BOTONES                 
############################################### */
.botonNav {
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  width: 100%;
  max-width: 111px;
  aspect-ratio: 1/1;
  padding: 0;
}
.botonNav img,
.botonNav svg {
  width: 100%;
}

.botonNav button {
  border: 0;
  background-color: transparent;
  padding: 0;
}

/* ###############################################
               CONTENEDOR USUARIO                   
############################################### */
.contenedorLogin,
.contenedorRegistro,
.contenedorDatosUsuario,
.contenedorMenuPrincipal {
  text-align: center;
  width: min(350px, 100%);
  margin: 0 auto;
  padding: 20px 20px 30px 20px;
}
.contenedorMenuPrincipal {
  display: flex;
  justify-content: center;
}
.contenedorLogin {
  color: white;
}
.contenedorLogo {
  display: flex;
  justify-content: center;
  align-items: center;
}

/* ###############################################
                  FORM LOGIN                   
############################################### */

.formGrupo {
  display: flex;
  flex-direction: column;
}

.formGrupo input {
  padding: 5px;
  height: 38px;
  width: 100%;
  border-radius: 5px;
  color: #010101;
  background-color: var(--color_blanco);
  border: 0.5px solid var(--color_gris);
  outline: 0.5px;
}

.contenedorLoginInputs {
  display: flex;
  flex-direction: column;
}

.contenedorLoginInputs a {
  color: white;
  text-decoration: none;
  font-size: 14px;
  text-align: end;
}

.contenedorLoginInputs span {
  margin-bottom: 10px;
}

/* ###############################################
                  FORM REGISTRO                  
############################################### */

.contenedorLoginInputs > span {
  text-align: center;
  margin-bottom: 20px;
}
.contenedorDireccionRegistro p {
  margin: 20px 5px 10px 5px;
}

.contenedorUsuarioRegistro p {
  margin: 30px;
  text-align: center;
}

.botonRegistrar {
  margin: 37px 0 0 0;
}

/* ###############################################
                    BOTONES                 
############################################### */

.boton {
  height: 37px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  width: 100%;
  padding: 5px 10px;
  border: 1px solid var(--color_secundario);
  border-radius: 5px;
}
.boton-sm {
  width: 98px;
  height: 42px;
}

.boton-md {
  width: 198px;
  height: 42px;
}

.boton-lg {
  width: 298px;
  height: 42px;
}

.botonPrimario {
  background-color: var(--color_primario);
  color: var(--color_blanco);
}

.botonSecundario {
  background-color: var(--color_secundario);
  color: var(--color_negro);
}

.botonTerciario {
  background-color: var(--color_terciario);
  color: var(--color_blanco);
}

.botonSinEstilos {
  background-color: transparent;
  padding: 5px;
  border: 0;
  color: var(--color_negro);
}

.botonVerde {
  background-color: var(--color_verde);
  color: var(--color_blanco);
}

.contenedorBotonesUsuario {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
#login-submit.boton {
  border-color: transparent;
}
