@media (max-width: 768px) {
    h1, h2 { font-size: 1.5rem !important; }
    h3 { font-size: 1.1rem !important; }
    .container { padding: 15px !important; }
}

/* Responsive Container */
@media (max-width: 768px) {
    #calendar {
        padding: 5px !important;
        margin: 0 !important;
        width: 100% !important;
        overflow-x: auto !important;
    }
    
    .fc {
        font-size: 0.9rem !important;
    }
    
    /* Improve touch targets */
    .fc .fc-button {
        min-height: 36px;
        min-width: 36px;
    }
    
    /* Better scroll on mobile */
    .fc-scroller {
        -webkit-overflow-scrolling: touch !important;
    }
}

/* Prevent zoom on mobile */
@media (max-width: 768px) {
    html, body {
        touch-action: pan-y;
        -webkit-text-size-adjust: 100%;
    }
}

/* Small phone optimization */
@media (max-width: 360px) {
    .fc .fc-button {
        padding: 4px 6px !important;
        font-size: 0.75rem !important;
    }
    
    .fc .fc-toolbar-title {
        font-size: 1rem !important;
    }
}