﻿body {
    
}

.text-box {
    width: 800px; /* Ancho del rectángulo */
    height: 1500px; /* Alto del rectángulo */
    border: 2px solid #fff; /* Borde negro de 2px */
    padding: 10px; /* Espacio interior entre borde y texto */
    overflow: auto; /* Añade scroll si el texto es muy largo */
    background-color: #20bee9;
    
}


/* Contenedor principal que oculta lo que queda fuera de su tamaño */
.carousel-wrapper {
    position: relative;
    width: 100%;
    max-width: 1000px; /* Ajusta esto según tus necesidades */
    margin: 0 auto;
    overflow:auto;
    border-radius: 30px; /* Opcional: bordes redondeados */
}
/* La pista que contiene todas las imágenes en fila */
.carousel-track {
    display: flex;
    transition: transform 0.4s ease-in-out; /* La magia de la animación */
}
/* Cada diapositiva ocupa el 100% del contenedor padre */
.carousel-slide {
    min-width: 100%;
    box-sizing: border-box;
}
    /* Ajuste de las imágenes para que sean responsivas */
    .carousel-slide img {
        width: 100%;
        height: auto;
        display: block;
        object-fit: cover;
    }
/* Estilos básicos para los botones de navegación */
.nav-btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background-color: rgba(0, 0, 0, 0.5);
    color: white;
    border: none;
    padding: 10px 15px;
    cursor: pointer;
    font-size: 18px;
    border-radius: 50%;
    transition: background-color 0.3s;
}

    .nav-btn:hover:not(:disabled) {
        background-color: rgba(0, 0, 0, 0.8);
    }

    .nav-btn:disabled {
        background-color: rgba(0, 0, 0, 0.2);
        cursor: not-allowed;
    }
/* Posicionamiento específico de cada flecha */
.prev {
    left: 10px;
}

.next {
    right: 10px;
}

/* Contenedor principal del calendario */
.calendario-contenedor {
    max-width: 350px;
    margin: 0 auto;
    font-family: Arial, sans-serif;
    background-color: #ffffff;
    padding: 15px;
    border-radius: 8px;
    box-shadow: 0 4px 8px rgba(0,0,0,0.1);
}

/* Controles de mes y año */
.calendario-cabecera {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 15px;
    font-weight: bold;
    font-size: 1.2rem;
}

.btn-mes {
    background-color: #052767;
    color: white;
    border: none;
    border-radius: 4px;
    padding: 5px 10px;
    cursor: pointer;
}

    .btn-mes:hover {
        background-color: #3a0647;
    }

/* --- LA CLAVE PARA QUE NO SEA UNA HILERA --- */
.calendario-grid {
    display: grid;
    grid-template-columns: repeat(7, 1fr); /* Crea exactamente 7 columnas iguales */
    gap: 5px; /* Espacio entre los días */
    text-align: center;
}

/* Cabecera de los días de la semana (L, M, X...) */
.dia-semana {
    font-weight: bold;
    color: #333;
    margin-bottom: 5px;
}

/* Diseño base de las celdas de los números */
.dia-celda {
    padding: 8px 0;
    border-radius: 4px;
    font-size: 0.95rem;
}

/* Días vacíos al principio del mes */
.dia-vacio {
    background-color: transparent;
}

/* Colores para disponibilidad */
.dia-libre {
    background-color: #e6f8e0;
    color: #2d7a17;
    border: 1px solid #c3e6cb;
}

.dia-ocupado {
    background-color: #ffe6e6;
    color: #a94442;
    border: 1px solid #ebccd1;
    text-decoration: line-through;
    opacity: 0.6;
}
