﻿:root {
    --brand-50: #f4fbfa;
    --brand-100: #eaf7f5;
    --brand-200: #d7f0ea;
    --brand-300: #bde9e1;
    --brand-400: #97dbcf;
    --brand-500: #79d1c1; /* teal principal */
    --brand-500-rgb: 121,209,193;
    --brand-600: #59c5b1;
    --brand-700: #2e8e7f; /* teal oscuro (botón) */
    --brand-800: #216c62;
    --brand-900: #1a5850;
    /* reasignación para que nada tire de “azul” */
    --colorPrimario: var(--brand-500);
    --colorPrimarioOscuro: var(--brand-700);
    --colorSecundario: var(--brand-300);
    --color1: var(--brand-900); /* texto/íconos */
    --color3: var(--brand-100); /* fondos suaves */
    --color4: var(--brand-200);
    --color5: var(--brand-900);
    --color6: var(--brand-400); /* hover/acento claro */
}

@font-face {
	font-family: 'Roboto';
	src: url('../fonts/Roboto-Regular.ttf');
}

@font-face {
	font-family: 'Roboto-Medium';
	src: url('../fonts/Roboto-Medium.ttf');
}

@font-face {
	font-family: 'Roboto-Black';
	src: url('../fonts/Roboto-Black.ttf');
}

@font-face {
	font-family: 'Roboto-Bold';
	src: url('../fonts/Roboto-Bold.ttf');
}

@font-face {
	font-family: 'Roboto-Light';
	src: url('../fonts/Roboto-Light.ttf');
}

@font-face {
	font-family: 'Roboto-Thin';
	src: url('../fonts/Roboto-Thin.ttf');
}

* {
    outline: none;
    box-sizing: border-box;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

input[type=number] {
    -moz-appearance: textfield;
}

html, body {
    font-family: 'Roboto';
    margin: 0;
    padding: 0;
    height: 100%;
}

.userselectnone {
	user-select: none;
	-moz-user-select: none;
	-webkit-user-select: none;
	-ms-user-select: none;
}

.login-container {
    display: flex;
    height: 100%;
}

.slideshow-container {
    display: block;
    flex: 1;
    height: 100%;
    position: relative;
}

.slidelogin {
    height: 100%;
    background-size: cover;
    background-position: center center;
    transition: opacity 3s linear;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.loginwrapper {
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex: 1;
    background: #FFF;
    min-width: 320px;
}

.loginform-wrapper {
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex: 1;
    background: #FFF;
    min-width: 320px;
    flex-direction: column;
}

.lfw-footer {
    width: 100%;
    display: flex;
    align-items: center;
    height: 50px;
    padding: 0 20px;
    border-top: 1px solid #DDD;
    color: #777;
}

.lfwf-separator {
    font-size: 6px;
    color: #CCC;
    margin: 0 10px;
}

.lfwf-left, .lfwf-right {
    flex: 1;
}

.lfwf-right {
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

.lfwf-button {
    cursor: pointer;
    line-height: 50px;
}

.lfwf-button:hover {
    color: #222;
}

.loginform .boton360link {
    text-align: center;
    font-size: var(--fontSize16);
    text-decoration: none;
}

.loginform form, .loginform .form360 {
    flex: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}

.loginform input {
    border: none;
    height: 40px;
    width: 256px;
    border-radius: 0 50px 50px 0;
    font-size: var(--fontSize13);
}

.loginform .btnLogin {
    background: #79d1c1;
    color: #FFF;
    width: 300px;
    height: 40px;
    border-radius: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    font-size: var(--fontSize16);
}

.loginform .btnLogin:hover {
    background: var(--color6);
}

.input-field-login {
    display: flex;
    border: 1px solid #CCC;
    border-radius: 50px;
    margin-bottom: 20px;
}

.input-field-login:hover, .input-field-login:hover input {
    background: #79d1c1;
}

.input-field-login label {
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 40px;
    user-select: none;
	-moz-user-select: none;
	-webkit-user-select: none;
	-ms-user-select: none;
    font-size: var(--fontSize14);
    color: var(--color1);
}

input {
  -webkit-background-clip: text !important;
}

.logologin {
    background: url(/logo.png);
    background-repeat: no-repeat;
    background-size: contain;
    width: 300px;
    height: 300px;
    background-position: center; 
}

@media only screen and (max-width: 768px) {
	.slideshow-container {
		display: none;
	}
}

.errorlogin {
    display: none;
}

.errorlogin {
    background: var(--rojo);
    color: #FFF;
    margin-bottom: 20px;
    border-radius: 5px;
    padding: 10px;
}

.boton360link {
    margin-top: 30px;
    text-decoration: none;
    cursor: pointer;
    color: var(--color1);
}

.errorok, .logininfo {
    background: #f0fae8;
    padding: 20px;
    border-radius: 10px;
    max-width: 310px;
    margin: 10px;
}

.errorok:empty {
    display: none;
}

.logininfo {
    background: #FFF;
    color: #666;
    font-size: var(--fontSize14);
    padding: 10px;
}

#recuperar1,
#recuperar2 {
    justify-content: center;
    display: flex;
    flex-direction: column;
    align-items: center;
}

a {
    color: var(--colorPrimario);
}

.margintop20 {
    margin-top: 20px !important;
}

.absolute-wrapper {
    position: relative;
}

.field-icon {
    position: absolute;
    right: 5px;
    top: 4px;
    display: flex;
    width: 32px;
    height: 32px;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    border-radius: 100%;
    color: var(--color1);
}

.field-icon:hover {
    background: var(--color3);
}

.displaynone {
    display: none !important;
}

.input-confirm {
    width: 100%;
    border: 1px solid #CCC;
    padding: 10px;
    border-radius: 5px;
    background: #FFF;
    cursor: pointer;
}