@import url('https://fonts.googleapis.com/css2?family=Lato:wght@400;700&display=swap');

:root{
	--Negro: #1f1f1f;
	--Oro: #FFD700;
	--Blanco: #fff;
	--Rojo: #E30022;
	--Azul: #1E5799;
	--Ancho: 520px;
	--Color1: #F8F8F8;
	--Color2: #4C5175;
	--Color3: #E1E8EC;
	--Color4: #BCE7D9;
}
*{
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	font-family: 'Lato', sans-serif;
	font-weight: 300;
}
/* ====================== C L A S E S ====================== */
	.fondo{
		background-color: var(--Azul);
	}
	.main-area{
		width: 100%;
		max-width: var(--Ancho);
		height: auto;
		margin: 0 auto;
		padding: 10px 15px;
		overflow-x: hidden;
		background-color: var(--Azul);
	}
	.user{padding: 10px 0 0 0 !important;}
	.glass{
		box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.8);
	  background: rgba(255, 255, 255, 0.2);
	  border-radius: 12px;
	  backdrop-filter: blur(5px);
	}
	.ingreso{
		color: #22c55e;
	}
	.egreso{
		color: var(--Rojo);
	}
/* ========================================================= */

/* ======================= I N D E X ======================= */
	.main-header, .main-footer{
		width: 100%;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.main-header{
		margin-top: 20px;
	}
	.main-header>img{
		width: auto;
		height: 60%;
		max-height: 150px;
	}
	.main, .main-texto{
		width: 100%;
		height: auto;
		display: flex;
		flex-flow: column nowrap;
		justify-content: center;
		align-items: center;
	}
	.main-texto>p{
		width: 60%;
		text-align: center;
		color: var(--Color1);
		font-size: 1.3em;
	}
	.main>a{
		margin: 20px 0;
		width: 300px;
		padding: 15px;
		text-align: center;
		background-color: var(--Color1);
		font-weight: bold;
		text-decoration: none;
		color: var(--Color2);
		border-radius: 150px;
	}
	.main>i{
		margin-top: 15px;
		font-size: 1.2em;
		color: var(--Color1);
	}
	.main-footer{
		height: 6vh;
		position: absolute;
		bottom: 0;
	}
	.main-footer>p{color: var(--Blanco);}
/* ========================================================= */

/* ==================== L O G  y  R E G ==================== */
	.login-header{
		width: 100%;
		height: auto;
		padding-bottom: 15px;
		background-color: var(--Azul);
	}
	.login-header>div{
		width: 100%;
		max-width: var(--Ancho);
		height: 6vh;
		margin: 0 auto;
		padding: 0 10px;
		display: flex;
		flex-flow: row wrap;
		justify-content: space-between;
		align-items: center;
	}
	.login-header a{height: 80%; color: var(--Blanco);}
	.login-header h1, .user>h1{
		font-size: 1em;
		color: var(--Blanco);
		letter-spacing: 0.1em;
	}
	.login-header h2{color: var(--Blanco);}
	.login-header>div i{font-size: 1em;}

	.login>h1{
		margin: 20px 0 40px 0;
		text-align: center;
		letter-spacing: 0.2em;
		font-size: 1.6em;
		color: var(--Blanco);
		text-shadow: 1px 1px 2px var(--Negro);
	}
	.login>form{
		width: 100%;
		display: flex;
		flex-flow: column wrap;
	}
	.login>form>label{
		margin-bottom: 10px;
		color: var(--Blanco);
		font-stretch: expanded;
		letter-spacing: 0.2em;
	}
	.login>form>input, .login select, .login-boton{
		width: 100%;
		padding: 0.5em 1.0em;
		font-size: 1.2em;
		margin-bottom: 40px;
		border: none;
		border-radius: 80px;
		appearance: none;
	}
	.login>form>input[type=text], .login>form>input[type=tel], .login>form>input[type=email], .login>form>input[type=password], .login>form>input[type=date], .login>form>input[type=time], select{
		background-color: var(--Color1);
		outline: none;
	}
	.login>form>input[type=submit], .login-boton{
		width: 50%;
		margin: 30px auto;
		background-color: var(--Rojo);
		box-shadow: 2px 2px 3px 0px var(--Color2);
		color: var(--Color3);
		cursor: pointer;
		text-decoration: none;
		text-align: center;
	}
	.login-footer{
		width: 100%;
		max-width: var(--Ancho);
		position: absolute;
		bottom: 0;
	}
	.login-footer>p{
		width: 96%;
		text-align: center;
		margin: 0 0 30px 0;
		color: var(--Blanco);
	}
	.login-footer a{
		color: var(--Rojo);
		text-decoration: none;
	}
/* ========================================================= */

/* ===================== U S U A R I O ===================== */
	.lista-users, .usuario-footer{
		width: 100%;
		max-width: var(--Ancho);
	}
	.usuario-footer{
		margin: 15px auto;
		padding: 15px;
	}
	.lista-users{
		margin: 0 auto !important;
		padding: 0 !important;
	}
	.usuario-footer>p{
		text-align: center;
		color: var(--Color1);
	}
	.user-compras{
		padding: 5px;
		height: 60vh;
	}
	.user-data{
		width: 80%;
		max-width: Calc(var(--Ancho)*0.8);
		margin: 0 auto;
		padding: 15px;
		background: var(--Blanco);
		border-radius: 12px;
		display: grid;
		grid-template-areas:
  		"h2 h2 h2 i"
  		"h3 h3 h3 i";
		justify-content: space-between;
		align-items: center;
	}
	.user-data h2{
		grid-area: h2;
		font-size: 0.9em;
		color: var(--Color2);
	}
	.user-data h3{
		grid-area: h3;
		color: var(--Negro);
		font-size: 1.7em;
		font-weight: 700;
		letter-spacing: 0.05em;
	}
	.user-data>i{
		grid-area: i;
		font-size: 2.5em;
		color: var(--Azul);
	}
	.user-compras{
		width: 100%;
		max-width: var(--Ancho);
		margin: auto;
		padding: 10px;
		background: var(--Blanco);
		border-radius: 16px 16px 0 0;
	}
	.user-compras>h2{
		font-size: 1.1em;
		font-weight: 700;
		letter-spacing: 0.05em;
		margin-bottom: 10px;
	}
	.user-compras>.user-compras-lista{
		height: 94%;
		margin: 0;
		padding: 0;
		list-style: none;
		/* background: var(--Blanco); */
		overflow-y: scroll;
	}
	.user-compras-lista::-webkit-scrollbar, .lista-users-data::-webkit-scrollbar{
		width: 2px;
		height: 0px;
	}
	/* .user-compras-lista::-webkit-scrollbar-thumb{background-color: var(--Color3);} */
	.user-compras>ul>li{
		display: flex;
		flex-flow: row wrap;
		justify-content: space-between;
	}
	.user-compras>.user-compras-lista>li{
		padding: 10px 0;
		display: grid;
		grid-template-areas:
  		"dato monto"
  		"fecha monto";
		justify-content: space-between;
		align-items: center;
		border-bottom: 1px solid var(--Color3);
	}
	.user-compras>.user-compras-lista>li>h3{
		grid-area: dato;
		font-size: 0.9em;
		font-weight: bold;
		color: var(--Negro);
	}
	.user-compras>.user-compras-lista>li>h4{
		grid-area: fecha;
		font-size: 0.7em;
		color: var(--Color2);
	}
	.user-compras>.user-compras-lista>li>h2{
		grid-area: monto;
		font-size: 1.1em;
		font-weight: bold;
	}

	.lista-users>.lista-users-data{
		height: 88%;
		overflow-y: scroll;
		border-radius: 8px;
		list-style: none;
	}
	.enlaces{
		width: 100%;
		margin: 20px 0;
		display: flex;
		flex-flow: row wrap;
		justify-content: space-between;
	}
	.enlaces>article{
		width: 23%;
		max-width: 300px;
		/* margin-bottom: 15px; */
	}
	.enlaces>article>a{
		display: block;
		width: 100%;
		padding: 10px 0;
		text-decoration: none;
		color: var(--Color1);
	}
	.enlaces>article>a>i{font-size: 1.5em; margin-bottom: 10px;}
	.enlaces>article>a>h3{font-size: 0.9em;}
	.enlaces>article>a>i, .enlaces>article>a>h3{
		width: 100%;
		text-align: center;
	}
/* ========================================================= */
/* ============ L I S T A  D E  U S U A R I O S ============ */
	.lista-users{
		padding: 5px;
		height: 80vh;
	}
	.lista-users-data>li{
		padding: 10px;
		border-radius: 8px;
		margin: 12px 0;
		background-color: var(--Blanco);
		/* box-shadow: 0px 2px 4px 0 var(--Negro); */
	}
	.lista-users-data>li>a{
		text-decoration: none;
		color: var(--Negro);
		display: grid;
		grid:
		'nombre nombre saldo'
		'telefono telefono saldo';
		align-items: center;
	}
	.lista-users-data>li>a>h3:nth-child(1){
		grid-area: nombre;
		font-style: italic;
		font-size: 1em;
		height: 20px;
	}
	.lista-users-data>li>a>h3:nth-child(2){
		grid-area: telefono;
		font-style: italic;
		font-size: 0.9em;
		height: 20px;
	}
	.lista-users-data>li>a>h3:nth-child(3){
		grid-area: saldo;
		text-align: right;
		font-weight: bold;
		font-size: 1.2em;
	}
/* ========================================================= */
/* ============== E D I T A R   U S U A R I O ============== */
	.user-edit{
		padding: 15px;
	}
	.user-edit>form{
		width: 100%;
		height: 50vh;
		display: flex;
		flex-flow: column wrap;
		justify-content: space-around;
	}
	.user-edit-bloque{
		width: 100%;
	}
	.user-edit-bloque>label, .user-edit-bloque>input, .user-edit-bloque>select{
		width: 100%;
		font-size: 1.1em;
		margin: 10px 0;
	}
	.user-edit-bloque>label{
		color: var(--Color1);
	}
	.user-edit-bloque>input, .user-edit-bloque>select{
		padding: 15px 5px;
		border-radius: 16px;
	}
	.user-edit-bloque>input[type=submit]{
		width: 50%;
		margin-left: 25%;
		background-color: var(--Rojo);
		color: var(--Color1);
		cursor: pointer;
	}
/* ========================================================= */

/* Móviles en horizontal o tablets en vertical
------------------------------------------------------------------------ */
@media screen and (max-width: 768px) {

}

/* Móviles en vertical
------------------------------------------------------------------------ */
@media screen and (max-width: 480px) {

}
