﻿/* =========================
   LOGIN LOKER'S (Responsive)
   Fix overflow inputs mobile
   ========================= */

/* 1) MUY IMPORTANTE para que nada se salga por padding/border */
*,
*::before,
*::after {
    box-sizing: border-box;
}

/* Evita scroll lateral por cualquier desborde */
html, body {
    width: 100%;
    overflow-x: hidden;
}

body {
    margin: 0;
    font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
}

/* Fondo / centrado */
.login-wrapper {
    min-height: 100vh;
    display: grid;
    place-items: center;
    padding: 18px; /* espacio seguro en móvil */
    background: linear-gradient(180deg, #0a3e9a 0%, #0a4bc0 60%, #0b5ed7 100%);
}

/* Tarjeta */
.login-card {
    width: 100%;
    max-width: 520px; /* ajusta si quieres */
    background: #ffffff;
    border-radius: 22px;
    box-shadow: 0 18px 60px rgba(0,0,0,.25);
    overflow: hidden; /* por si algo intenta salir */
}

/* Header */
.login-header {
    padding: 28px 22px 16px 22px;
    text-align: center;
}

    .login-header h2 {
        margin: 0;
        font-weight: 900;
        letter-spacing: .5px;
        color: #0a3e9a;
    }

    .login-header p {
        margin: 10px 0 0 0;
        color: #6b7280;
        font-weight: 600;
    }

/* Body */
.login-body {
    padding: 18px 22px 22px 22px;
}

/* Form group */
.form-group {
    margin-bottom: 18px;
}

    /* Labels */
    .form-group label {
        display: block;
        margin-bottom: 8px;
        font-weight: 800;
        color: #0a3e9a;
    }

/* INPUTS - AQUÍ ESTÁ LA CLAVE */
.input-corporativo {
    display: block;
    width: 100%; /* SIEMPRE 100% del contenedor */
    max-width: 100%; /* evita que exceda */
    padding: 14px 14px;
    border-radius: 14px;
    border: 1px solid #e5e7eb;
    outline: none;
    font-size: 16px; /* 16px evita zoom raro en iOS */
    background: #f9fafb;
    color: #111827;
    /* asegura que padding/border no aumenten ancho real */
    box-sizing: border-box;
}

    .input-corporativo:focus {
        border-color: rgba(11, 94, 215, .55);
        box-shadow: 0 0 0 4px rgba(11, 94, 215, .15);
        background: #ffffff;
    }

/* Botón */
.btn-corporativo {
    width: 100%;
    border: none;
    cursor: pointer;
    border-radius: 16px;
    padding: 14px 16px;
    font-size: 16px;
    font-weight: 900;
    color: #fff;
    background: linear-gradient(135deg, #0b5ed7, #0a4bc0);
    box-shadow: 0 12px 30px rgba(11,94,215,.25);
}

    .btn-corporativo:active {
        transform: translateY(1px);
    }

/* Footer */
.login-footer {
    margin-top: 14px;
    text-align: center;
}

.btn-recuperar {
    border: none;
    background: transparent;
    color: #0b5ed7;
    font-weight: 800;
    cursor: pointer;
    padding: 10px 8px;
}

    .btn-recuperar:hover {
        text-decoration: underline;
    }

/* =========================
   RESPONSIVE
   ========================= */
@media (max-width: 420px) {
    .login-wrapper {
        padding: 14px;
    }

    .login-header {
        padding: 22px 18px 12px 18px;
    }

    .login-body {
        padding: 14px 18px 18px 18px;
    }

    .input-corporativo {
        border-radius: 14px;
    }

    .btn-corporativo {
        border-radius: 14px;
    }
}
