/*==================================================
FUENTE Y CONFIGURACIÓN GENERAL
==================================================*/

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    font-family:Arial, Helvetica, sans-serif;
}

body{

    background-image:url("img/nitro.gif"); /* Cambia aquí tu imagen */
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;
    background-attachment:fixed;

    min-height:100vh;

    display:flex;
    justify-content:center;
    align-items:center;

    overflow:hidden;
}


/*==================================================
BOTÓN REGRESAR
==================================================*/

.boton-regresar{

    position:absolute;

    top:20px;
    left:20px;

    text-decoration:none;

    background:#d60000;
    color:white;

    padding:12px 25px;

    border-radius:10px;

    font-weight:bold;

    transition:.3s;

    box-shadow:0px 0px 10px rgba(0,0,0,.4);

}

.boton-regresar:hover{

    background:#ff2a2a;

    transform:scale(1.05);

}


/*==================================================
CONTENEDOR PRINCIPAL
==================================================*/

.calendar-container{

    width:900px;
    max-width:95%;

    border-radius:25px;

    overflow:hidden;

    background:rgba(255,255,255,.15);

    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);

    border:1px solid rgba(255,255,255,.3);

    box-shadow:
    0px 20px 40px rgba(0,0,0,.35);

}


/*==================================================
ENCABEZADO
==================================================*/

.calendar-header{

    background:#d60000;

    color:white;

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:18px;

}

.calendar-header h2{

    font-size:30px;

    letter-spacing:2px;

}

.calendar-header button{

    background:white;

    color:#d60000;

    border:none;

    width:45px;
    height:45px;

    border-radius:50%;

    cursor:pointer;

    font-size:22px;

    transition:.3s;

}

.calendar-header button:hover{

    transform:scale(1.15);

}


/*==================================================
DÍAS DE LA SEMANA
==================================================*/

.calendar-grid-header{

    display:grid;

    grid-template-columns:repeat(7,1fr);

    background:rgba(255,255,255,.08);

    color:white;

    font-weight:bold;

    text-align:center;

    padding:15px 0;

    font-size:18px;

}


/*==================================================
CUADRÍCULA
==================================================*/

.calendar-grid{

    display:grid;

    grid-template-columns:repeat(7,1fr);

}


/*==================================================
DÍAS
==================================================*/

.calendar-grid div{

    min-height:110px;

    border:1px solid rgba(255,255,255,.15);

    color:white;

    padding:10px;

    font-size:24px;

    font-weight:bold;

    position:relative;

    transition:.25s;

}


/*==================================================
EFECTO HOVER
==================================================*/

.calendar-grid div:hover{

    border:2px solid rgba(0,170,255,.75);

    box-shadow:
    0px 0px 12px rgba(0,170,255,.45);

    cursor:pointer;

}


/*==================================================
NÚMEROS MÁS VISIBLES
==================================================*/

.calendar-grid div{

    text-shadow:

    0px 0px 4px black,
    0px 0px 10px black;

}


/*==================================================
ESTRELLA DE EVENTO
==================================================*/

.event{

    position:absolute;

    bottom:8px;
    right:8px;

    font-size:22px;

    animation:destello 1.3s infinite;

}


/*==================================================
ANIMACIÓN DESTELLO
==================================================*/

@keyframes destello{

0%{

transform:scale(1);

filter:drop-shadow(0px 0px 2px gold);

}

50%{

transform:scale(1.35);

filter:drop-shadow(0px 0px 12px yellow);

}

100%{

transform:scale(1);

filter:drop-shadow(0px 0px 2px gold);

}

}


/*==================================================
MODAL
==================================================*/

.modal{

    display:none;

    position:fixed;

    top:0;
    left:0;

    width:100%;
    height:100%;

    background:rgba(0,0,0,.55);

    justify-content:center;
    align-items:center;

}

.modal-content{

    background:rgba(255,255,255,.15);

    backdrop-filter:blur(15px);

    padding:30px;

    border-radius:20px;

    color:white;

    width:min(92vw,350px);

    text-align:center;

    border:1px solid rgba(255, 0, 0, 0.73);

}

.modal-content input{

    width:100%;

    padding:12px;

    margin-top:15px;

    border:none;

    border-radius:10px;

    outline:none;

}

.modal-content button{

    margin-top:20px;

    width:100%;

    padding:12px;

    background:#33ff00;

    color:white;

    border:none;

    border-radius:10px;

    cursor:pointer;

    transition:.3s;

}

.modal-content button:hover{

    background:#ff2f2f;

}

/*==================================================
RESPONSIVE
==================================================*/

/* Pantallas grandes */

@media (max-width:1200px){

.calendar-container{

    width:95%;

}

.calendar-grid div{

    min-height:95px;

    font-size:20px;

}

}

/* Tablets */

@media (max-width:992px){

.boton-regresar{

    top:10px;
    left:10px;

    padding:10px 18px;

    font-size:14px;

}

.calendar-header{

    padding:15px;

}

.calendar-header h2{

    font-size:24px;

}

.calendar-header button{

    width:40px;
    height:40px;

    font-size:18px;

}

.calendar-grid-header{

    font-size:16px;

}

.calendar-grid div{

    min-height:80px;

    font-size:18px;

}

}

/* Celulares */

@media (max-width:768px){

body{

    align-items:flex-start;

    padding-top:70px;

}

.calendar-container{

    width:100%;

    border-radius:15px;

}

.calendar-header{

    padding:12px;

}

.calendar-header h2{

    font-size:20px;

    text-align:center;

}

.calendar-header button{

    width:36px;
    height:36px;

    font-size:16px;

}

.calendar-grid-header{

    font-size:13px;

    padding:10px 0;

}

.calendar-grid div{

    min-height:65px;

    padding:5px;

    font-size:15px;

}

.event{

    font-size:16px;

    bottom:4px;
    right:4px;

}

.modal-content{

    width:92%;

    padding:20px;

}

.modal-content input{

    font-size:16px;

}

}

/* Celulares pequeños */

@media (max-width:480px){

.boton-regresar{

    padding:8px 12px;

    font-size:11px;

}

.calendar-header h2{

    font-size:17px;

}

.calendar-grid-header{

    font-size:11px;

}

.calendar-grid div{

    min-height:52px;

    font-size:13px;

}

.event{

    font-size:14px;

}

.modal-content{

    width:96%;

    padding:15px;

}

.modal-content button{

    padding:10px;

}

}

/* Monitores grandes */

@media (min-width:1600px){

.calendar-container{

    max-width:1100px;

}

.calendar-grid div{

    min-height:130px;

}

}