#training-calendar{
max-width:900px;
margin:40px auto;
}

.fc-event{
cursor:pointer;
}
/* Bigger day boxes */
.fc-daygrid-day-frame{
min-height:140px !important;
}

/* Event container */
.training-event{
background: linear-gradient(135deg,#4f46e5,#7c3aed);
color:white;
padding:8px;
border-radius:8px;
font-size:12px;
overflow:hidden;
}

/* Time style */
.event-time{
font-weight:bold;
font-size:13px;
margin-bottom:4px;
}

/* Scrolling title */
.event-title{
overflow:hidden;
white-space:nowrap;
}

.event-title span{
display:inline-block;
padding-left:100%;
animation: ticker 8s linear infinite;
}

@keyframes ticker{
0%{transform:translateX(0);}
100%{transform:translateX(-100%);}
}

/* Hover animation */
.fc-event:hover{
transform:scale(1.05);
transition:0.2s;
}

/* Mobile responsive */
@media(max-width:768px){

.fc-daygrid-day-frame{
min-height:110px !important;
}

.training-event{
font-size:11px;
padding:6px;
}

}