﻿/*Formato para el inicio de sesion*/

.login-container {
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
}

.login-card {
    width: 850px;
    max-width: 95%;
    background: white;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 20px 40px rgba(0,0,0,0.15);
    display: flex;
}

.login-left {
    width: 45%;
    background: linear-gradient(160deg,#1B9DD9,#0a6fa5);
    color: white;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 40px;
    text-align: center;
    border-radius: 8px;
}

    .login-left i {
        font-size: 70px;
        margin-bottom: 15px;
    }

    .login-left h3 {
        font-weight: 600;
        margin-bottom: 10px;
    }

    .login-left p {
        font-size: 14px;
        opacity: 0.9;
    }

.login-right {
    width: 55%;
    padding: 40px;
}


.form-control {
    border-radius: 10px;
    padding: 10px;
}

.btn-login {
    background: #1B9DD9;
    border: none;
    border-radius: 10px;
    padding: 10px;
    font-weight: 500;
}

    .btn-login:hover {
        background: #1586ba;
    }

.links {
    text-align: center;
    margin-top: 15px;
}

    .links a {
        text-decoration: none;
        font-size: 14px;
    }
/*Formato para el inicio de sesion*/



/*Formato para botones*/
.logout-btn {
    display: flex;
    align-items: center;
    text-align: center;
    background: #e74c3c;
    color: white;
    border: none;
    padding: 7px 7px;
    border-radius: 7px;
    font-size: 20px;
    cursor: pointer;
    transition: all 0.25s ease;
    box-shadow: 0 4px 10px rgba(0,0,0,0.15);
    width: 30px;
    height: 30px;
    margin-top: 15px;
}

.btn-pastel-details {
    background-color: #cde7ff;
    color: #2c5aa0;
    border: none;
    font-size: 16px;
}

    .btn-pastel-details:hover {
        background-color: #b5dbff;
    }



.btn-pastel-edit {
    background-color: #d8f5e6;
    color: #2e7d5b;
    border: none;
    font-size: 16px;
}


    .btn-pastel-edit:hover {
        background-color: #c4efd9;
    }

.btn-pastel-delete {
    background-color: #ffd6d6;
    color: #a94442;
    border: none;
    font-size: 16px;
}

    .btn-pastel-delete:hover {
        background-color: #ffc2c2;
    }

.btn-pastel-add {
    background: linear-gradient(135deg, #bfe7f7, #a8def3);
    color: #000;
    border: none;
    padding: 6px 14px;
    border-radius: 10px;
    font-weight: 600;
    box-shadow: 0 4px 8px rgba(0,0,0,0.15);
    transition: all 0.2s ease;
}

    .btn-pastel-add:hover {
        background: linear-gradient(135deg, #a8def3, #8fd4ef);
        transform: translateY(-2px);
        box-shadow: 0 6px 12px rgba(0,0,0,0.2);
    }

    .btn-pastel-add:active {
        transform: translateY(0);
        box-shadow: 0 3px 6px rgba(0,0,0,0.15);
    }

/*Formato para botones*/



.tabla-pastel th,
.tabla-pastel td {
    padding: 5px;
    vertical-align: middle;
}


/*Formato para recuperar tarjetas*/

.recovery-container {
    display: flex;
    justify-content: center;
    align-items: center;
    /* height: 100%;*/
    height: calc( 100vh - 100px);
    width: 100%;
}

.recovery-card {
    display: flex;
    /* max-width: 900px;*/
    /* width: 100%;*/
    /*height:100%;*/
    min-width: 600px;
    background: white;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 0 15px rgba(0,0,0,0.1);
}




.recovery-left {
    /*  width: 40%;*/
    width: 300px;
    min-width: 300px;
    max-width: 300px;
    background: linear-gradient(160deg,#1B9DD9,#0a6fa5);
    color: white;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 20px;
    text-align: center;
    border-radius: 8px;
}

.rojo {
    background: linear-gradient(160deg, #EF5350, #D32F2F);
}

.verde {
    background: linear-gradient(160deg, #81C784, #388E3C); 
}

    .recovery-left i {
        font-size: 70px;
        margin-bottom: 15px;
    }

    .recovery-left h3 {
        font-weight: 600;
        margin-bottom: 10px;
    }

    .recovery-left p {
        font-size: 14px;
        opacity: 0.9;
    }

.recovery-right {
    /* width: 60%;*/
    /* width: calc(100%-300px);*/
    /* width:1200px;*/
    min-width: 300px;
    padding: 20px;
}

.recovery-title {
    font-weight: 600;
    margin-bottom: 10px;
    text-align: center;
}

.recovery-subtitle {
    font-size: 14px;
    color: #6c757d;
    text-align: center;
    margin-bottom: 25px;
}


/* Contenedor principal con flex horizontal */
.recovery-card {
    display: flex;
    flex-direction: row; /* panel izquierdo y derecho */
    gap: 2rem; /* espacio entre los paneles */
}

.recovery-left {
    flex: 1;
}

.recovery-right {
    display: flex;
    flex-direction: column; /* para poder empujar contenido abajo */
    justify-content: space-between; /* pone contenido arriba y abajo */
}

    .recovery-right form {
        margin-top: auto; /* empuja el form hacia abajo si es necesario */
    }

    .recovery-right .back-link {
        margin-top: 1rem;
    }




/* Contenedor principal con flex horizontal */
.login-card {
    display: flex;
    flex-direction: row; /* panel izquierdo y derecho */
    gap: 2rem; /* espacio entre los paneles */
}


.login-left {
    flex: 1;
}

/* Panel derecho ocupa el mismo alto que el izquierdo y distribuye su contenido */
.login-right {
    flex: 1;
    display: flex;
    flex-direction: column; /* para poder empujar contenido abajo */
    justify-content: space-between; /* pone contenido arriba y abajo */
}

    .login-right form {
        margin-top: auto;
    }

    .login-right .back-link {
        margin-top: 1rem;
    }

.form-control {
    border-radius: 10px;
    padding: 10px;
}

.btn-recovery {
    background: #ffc107;
    border: none;
    border-radius: 10px;
    padding: 10px;
    font-weight: 500;
    color: #000;
}

    .btn-recovery:hover {
        background: #e0a800;
    }

.back-link {
    text-align: center;
    margin-top: 15px;
}

    .back-link a {
        text-decoration: none;
        font-size: 14px;
    }

/*Formato para tarjetas*/


/*Formato para tablas*/

dt {
    white-space: nowrap;
    width:250px;
    text-align:right;
}

dd {
    white-space: nowrap;
    text-align: left;
}

td {
    white-space: nowrap;
}



table {
    table-layout: auto;
}

.tabla-contenedor {
    max-height: calc(100vh - 150px); 
    overflow-y: auto;
    border: 1px solid #ccc;
    border-radius: 8px;
}

.tabla-pastel thead th {
    position: sticky; /* fijo en el scroll */
    top: 0; /* posición superior del contenedor */
    background-color: #1B9DD9; /* azul pastel */
    color: white;
    z-index: 10;
    padding: 8px;
    text-align: left;
}

thead th {
    white-space: nowrap;
}

.tabla-pastel thead {
    background-color: #1B9DD9; /* azul pastel */
    color: white;
}

.tabla-pastel tbody tr:nth-child(odd) {
    background-color: #e6f4ff; /* celeste pastel */
}

.tabla-pastel tbody tr:nth-child(even) {
    background-color: #d6ecff; /* celeste pastel alternado */
}

.tabla-pastel tbody tr:hover {
    background-color: #bfe3ff;
    cursor: pointer;
    transition: background-color 0.2s ease;
}

/*Formato para tablas*/



/*Formato para exportar*/
.btn-exportar {
    border-radius: 10px;
    width: 100px;
    height: 37px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
}

    .btn-exportar i {
        font-size: 2rem;
    }

.gestionar {
    min-width: 120px;
    width: 120px;
    max-width: 120px;
}
/*Formato para exportar*/

.btn-eliminar {
    background: #EF5350; /* ahora el color normal */
    border: none;
    border-radius: 10px;
    padding: 10px;
    font-weight: 500;
    color: white; /* texto legible */
    transition: background 0.3s ease;
}

    .btn-eliminar:hover {
        background: #D32F2F; /* rojo más oscuro al pasar el mouse */
        color: white;
    }

.btn-editar {
    background: #81C784; /* ahora el color normal */
    border: none;
    border-radius: 10px;
    padding: 10px;
    font-weight: 500;
    color: white; /* texto legible */
    transition: background 0.3s ease;
}

    .btn-editar:hover {
        background: #388E3C; /* verde más oscuro al pasar el mouse */
        color: white;
    }

.btn-agregar {
    background: #1B9DD9;
    border: none;
    border-radius: 10px;
    padding: 10px;
    font-weight: 500;
    color: white; /* texto legible */
}

    .btn-agregar:hover {
        background: #1586ba;
        color: white;
    }


.flex-row {
    display: flex;
    justify-content: space-between; /* Alinea los elementos a los lados extremos */
    margin-bottom: 10px; /* Espacio entre las filas */
}

    .flex-row dt, .flex-row dd {
        margin: 0; /* Elimina el margen por defecto */
        padding-right: 10px; /* Espacio entre dt y dd */
        flex: 1; /* Hace que ambos elementos ocupen el mismo ancho */
    }



.select2{
    /*width: 300px;*/
}