/* Aca puedo agregar el css necesario para el documento */
html, body {
    background-image: url('https://www.revistapresencia.net/wp-content/uploads/2020/11/FONDO-PAGINA-WEB.png');
    background-size: cover;
    background-position: center;
    background-repeat: repeat-y;
    height: 100vh;
    margin: 0;
    min-height: 100vh; /* Asegura que el body ocupe toda la altura de la ventana */

    display: flex;
    flex-direction: column;
}

h1:focus {
    outline: none;
}

.home-container {
    text-align: center;
    padding: 50px 20px;
}

.home-title {
    font-size: 2.5rem;
    font-weight: bold;
    color: #333;
    margin-bottom: 20px;
}

.home-row {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 2rem;
}

.home-image-column {
    display: flex;
    justify-content: center;
    align-items: center;
}

.home-image {
    width: 100%;
    max-width: 600px;
    height: auto;
    border-radius: 12px;
    box-shadow: 0px 4px 12px rgba(0, 0, 0, 0.1);
}

.home-text-column {
    text-align: left;
    padding: 20px;
    position: relative;
}

.home-subtitle {
    font-size: 1.8rem;
    font-weight: bold;
    color: #0056b3;
}

.home-description {
    font-size: 1.2rem;
    color: #555;
    line-height: 1.6;
}

.home-button-container {
    display: flex;
    justify-content: flex-end; /* Alinea a la derecha */
    margin-top: 20px;
}

.home-button {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 20px;
    font-size: 1.2rem;
    color: white;
    background-color: #25d366;
    text-decoration: none;
    border-radius: 8px;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.2);
    transition: background 0.3s;
}

    .home-button i {
        font-size: 1.5rem;
    }

    .home-button:hover {
        background-color: #1da851;
    }

.login-title {
    text-align: center;
    font-size: 2rem;
    font-weight: bold;
    color: #333;
    margin-bottom: 20px;
}

.login-form {
    background: #ffffff;
    padding: 30px;
    border-radius: 12px;
    box-shadow: 0px 4px 12px rgba(0, 0, 0, 0.1);
}

.custom-input {
    border-radius: 8px;
    border: 1px solid #ced4da;
    padding: 12px;
    font-size: 1rem;
    transition: all 0.3s ease-in-out;
}

    .custom-input:focus {
        border-color: #007bff;
        box-shadow: 0 0 8px rgba(0, 123, 255, 0.2);
    }

.login-button {
    width: 100%;
    padding: 12px;
    font-size: 1.2rem;
    border-radius: 8px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
}

    .login-button i {
        font-size: 1.2rem;
    }

.text-center a {
    color: #007bff;
    font-weight: 500;
    text-decoration: none;
}

    .text-center a:hover {
        text-decoration: underline;
    }

.reset-title {
    text-align: center;
    font-size: 2rem;
    font-weight: bold;
    color: #333;
    margin-bottom: 20px;
}

.reset-form {
    background: #ffffff;
    padding: 30px;
    border-radius: 12px;
    box-shadow: 0px 4px 12px rgba(0, 0, 0, 0.1);
}

.custom-input {
    border-radius: 8px;
    border: 1px solid #ced4da;
    padding: 12px;
    font-size: 1rem;
    transition: all 0.3s ease-in-out;
}

    .custom-input:focus {
        border-color: #007bff;
        box-shadow: 0 0 8px rgba(0, 123, 255, 0.2);
    }

.reset-button {
    width: 100%;
    padding: 12px;
    font-size: 1.2rem;
    border-radius: 8px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
}

    .reset-button i {
        font-size: 1.2rem;
    }

.text-center {
    text-align: center;
}

.text-muted {
    color: #6c757d;
}


.register-form {
    background: #ffffff;
    padding: 30px;
    border-radius: 12px;
    box-shadow: 0px 4px 12px rgba(0, 0, 0, 0.1);
}

.register-title {
    text-align: center;
    font-size: 1.8rem;
    font-weight: bold;
    color: #333;
    margin-bottom: 20px;
}

.form-group {
    margin-bottom: 15px;
}

.custom-input {
    border-radius: 8px;
    border: 1px solid #ced4da;
    padding: 12px;
    font-size: 1rem;
    transition: all 0.3s ease-in-out;
}

    .custom-input:focus {
        border-color: #007bff;
        box-shadow: 0 0 8px rgba(0, 123, 255, 0.2);
    }

.register-button {
    width: 100%;
    padding: 12px;
    font-size: 1.2rem;
    border-radius: 8px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
}

    .register-button i {
        font-size: 1.2rem;
    }


.site-footer {
    background-color: #26272b;
    padding: 45px 0 20px;
    font-size: 15px;
    line-height: 24px;
    color: #737373;
}
.site-footer hr
{
  border-top-color:#bbb;
  opacity:0.5
}
.site-footer hr.small
{
  margin:20px 0
}
.site-footer h6
{
  color:#fff;
  font-size:16px;
  text-transform:uppercase;
  margin-top:5px;
  letter-spacing:2px
}
.site-footer a
{
  color:#737373;
}
.site-footer a:hover
{
  color:#3366cc;
  text-decoration:none;
}
.footer-links
{
  padding-left:0;
  list-style:none
}
.footer-links li
{
  display:block
}
.footer-links a
{
  color:#737373
}
.footer-links a:active,.footer-links a:focus,.footer-links a:hover
{
  color:#3366cc;
  text-decoration:none;
}
.footer-links.inline li
{
  display:inline-block
}
.site-footer .social-icons
{
  text-align:right
}
.site-footer .social-icons a
{
  width:40px;
  height:40px;
  line-height:40px;
  margin-left:6px;
  margin-right:0;
  border-radius:100%;
  background-color:#33353d
}
.copyright-text
{
  margin:0
}


@media (max-width:991px)
{
  .site-footer [class^=col-]
  {
    margin-bottom:30px
  }
}
@media (max-width:767px)
{
  .site-footer
  {
    padding-bottom:0
  }
  .site-footer .copyright-text,.site-footer .social-icons
  {
    text-align:center
  }
}
.social-icons
{
  padding-left:0;
  margin-bottom:0;
  list-style:none
}
.social-icons li
{
  display:inline-block;
  margin-bottom:4px
}
.social-icons li.title
{
  margin-right:15px;
  text-transform:uppercase;
  color:#96a2b2;
  font-weight:700;
  font-size:13px
}
.social-icons a{
  background-color:#eceeef;
  color:#818a91;
  font-size:16px;
  display:inline-block;
  line-height:44px;
  width:44px;
  height:44px;
  text-align:center;
  margin-right:8px;
  border-radius:100%;
  -webkit-transition:all .2s linear;
  -o-transition:all .2s linear;
  transition:all .2s linear
}
.social-icons a:active,.social-icons a:focus,.social-icons a:hover
{
  color:#fff;
  background-color:#29aafe
}
.social-icons.size-sm a
{
  line-height:34px;
  height:34px;
  width:34px;
  font-size:14px
}
.social-icons a.facebook:hover
{
  background-color:#3b5998
}
.social-icons a.twitter:hover
{
  background-color:#00aced
}
.social-icons a.linkedin:hover
{
  background-color:#007bb6
}
.social-icons a.dribbble:hover
{
  background-color:#ea4c89
}
@media (max-width:767px)
{
  .social-icons li.title
  {
    display:block;
    margin-right:0;
    font-weight:600
  }
}

/* Aplicar tipografía general de la navbar */
.rz-label, .rz-textbox, .rz-dropdown, .rz-numeric, .rz-datepicker, .rz-upload, .rz-button {
    font-family: 'Poppins', sans-serif;
    font-size: 16px;
}

/* Estilizar etiquetas y campos de entrada */
.rz-label {
    font-weight: 600;
    color: #1f2937; /* Color oscuro para contrastar con fondo claro */
}

.rz-textbox, .rz-dropdown, .rz-numeric, .rz-datepicker, .rz-upload {
    background-color: #ffffff; /* Fondo claro */
    color: #1f2937;
    border: 1px  #3b82f6;
    border-radius: 8px;
    padding: 10px;
}

    .rz-textbox::placeholder, .rz-dropdown::placeholder {
        color: #6b7280;
    }

/* Estilizar botones */
.rz-button {
    font-weight: bold;
    border-radius: 8px;
    transition: all 0.3s;
}

    /* Confirmar - Botón principal */
    .rz-button[icon="save"] {
        background-color: #3b82f6;
        border: none;
        color: white;
    }

        .rz-button[icon="save"]:hover {
            background-color: #2563eb;
            transform: scale(1.05);
        }

    /* Cancelar - Botón secundario */
    .rz-button[icon="cancel"] {
        background-color: transparent;
        border: 2px solid #ef4444;
        color: #ef4444;
    }

        .rz-button[icon="cancel"]:hover {
            background-color: #ef4444;
            color: white;
            transform: scale(1.05);
        }

/* Mejorar espaciado de filas */
.rz-row {
    margin-bottom: 15px;
}

/* Estilizar fieldsets */
.rz-fieldset {
    border: 2px solid #3b82f6;
    border-radius: 10px;
    padding: 20px;
    background-color: rgba(255, 255, 255, 0.5); /* Fondo más claro */
}

    .rz-fieldset > legend {
        font-size: 18px;
        font-weight: bold;
        color: #1f2937; /* Color oscuro para mejor contraste */
    }

/* Estilizar errores de validación */
.rz-validation-message {
    color: #ef4444;
    font-weight: bold;
}

.rz-datepicker input:focus,
.rz-datepicker input:active {
    outline: none !important;
    box-shadow: none !important;
    border-color: #3b82f6 !important;
}

/* Aplicar tipografía general de la navbar */
.rz-label, .rz-textbox, .rz-dropdown, .rz-numeric, .rz-datepicker, .rz-upload, .rz-button {
    font-family: 'Poppins', sans-serif;
    font-size: 16px;
}

/* Estilizar etiquetas y campos de entrada */
.rz-label {
    font-weight: 600;
    color: #1f2937; /* Color oscuro para contrastar con fondo claro */
}

.rz-textbox, .rz-dropdown, .rz-numeric, .rz-datepicker, .rz-upload {
    background-color: #ffffff; /* Fondo claro */
    color: #1f2937;
    
    border-radius: 8px;
    padding: 10px;
}

    .rz-textbox::placeholder, .rz-dropdown::placeholder {
        color: #6b7280;
    }

/* Estilizar botones */
.rz-button {
    font-weight: bold;
    border-radius: 8px;
    transition: all 0.3s;
}

    /* Confirmar - Botón principal */
    .rz-button[icon="save"] {
        background-color: #3b82f6;
        border: none;
        color: white;
    }

        .rz-button[icon="save"]:hover {
            background-color: #2563eb;
            transform: scale(1.05);
        }

    /* Cancelar - Botón secundario */
    .rz-button[icon="cancel"] {
        background-color: transparent;
        border: 2px solid #ef4444;
        color: #ef4444;
    }

        .rz-button[icon="cancel"]:hover {
            background-color: #ef4444;
            color: white;
            transform: scale(1.05);
        }

/* Mejorar espaciado de filas */
.rz-row {
    margin-bottom: 15px;
}

/* Estilizar fieldsets */
.rz-fieldset {
    border: 2px solid #3b82f6;
    border-radius: 10px;
    padding: 20px;
    background-color: rgba(255, 255, 255, 0.5); /* Fondo más claro */
}

    .rz-fieldset > legend {
        font-size: 18px;
        font-weight: bold;
        color: #1f2937; /* Color oscuro para mejor contraste */
    }

/* Estilizar errores de validación */
.rz-validation-message {
    color: #ef4444;
    font-weight: bold;
    font-size: 18px;
}




/*Esto es para ocultar las columnas en "Mis Turnos" */
@media (max-width: 1200px) {
    .tabla-grande {
        display: none !important;
    }
    /* Ocultar tabla grande */
    .tabla-pequena {
        display: block !important;
    }
    /* Mostrar tabla pequeña */
}

@media (min-width: 1201px) {
    .tabla-grande {
        display: block !important;
    }
    /* Mostrar tabla grande */
    .tabla-pequena {
        display: none !important;
    }
    /* Ocultar tabla pequeña */
}

/* Aumenta el tamaño del texto en TODA la tabla grande */
.tabla-grande .rz-datatable {
    font-size: 2.3rem !important;
}

/* Aumenta el tamaño de las celdas específicamente */
.tabla-grande .rz-datatable-body {
    font-size: 2.3rem !important;
}

/* Aumenta el tamaño del encabezado de la tabla */
.tabla-grande .rz-datatable-thead {
    font-size: 2.3rem !important;
    font-weight: bold;
}
.mensaje-turnos {
    font-size: 1.2rem;
    font-weight: bold;
    margin-top: 10px;
    padding: 8px 12px;
    border-radius: 8px;
    display: inline-block;
   
    right: 10%; /* Ajusta este valor para moverlo más a la derecha */
    top: 20%; /* Ajusta la altura si es necesario */
}


.mensaje-pendientes {
    color: #1b5e20; /* Verde oscuro */
    background: #c8e6c9; /* Verde claro */
    padding: 8px 12px;
    border-radius: 8px;
}

.mensaje-cancelados {
    color: #b71c1c; /* Rojo oscuro */
    background: #ffcdd2; /* Rojo claro */
    padding: 8px 12px;
    border-radius: 8px;
}


/* Oculta la lista de archivos subidos */
.rz-fileupload-files {
    display: none !important;
}