/* ==============================================================
 * MOBILE OPTIMIZATIONS FOR FULLCALENDAR ADMIN CALENDAR
 * ==============================================================
 */

/* ─── Generale: miglior leggibilità su piccoli schermi ───── */
@media (max-width: 768px) {

    /* Vista mensile: eventi più alti e testo su 2 righe */
    #wpappsws-fullcalendar .fc-daygrid-event {
        min-height: 28px !important;
        padding: 2px 4px !important;
        font-size: 11px !important;
        line-height: 1.2 !important;
        border-radius: 4px !important;
    }

    #wpappsws-fullcalendar .fc-daygrid-event-title {
        white-space: normal !important;
        overflow: hidden !important;
        text-overflow: clip !important;
        display: -webkit-box !important;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        max-height: 2.4em !important;
    }

    /* Vista giornaliera / settimanale */
    #wpappsws-fullcalendar .fc-timegrid-event {
        min-height: 32px !important;
        padding: 4px 6px !important;
        font-size: 12px !important;
        border-radius: 5px !important;
    }

    /* Toolbar */
    #wpappsws-fullcalendar .fc-toolbar-title {
        font-size: 16px !important;
        padding: 0 4px !important;
    }

    #wpappsws-fullcalendar .fc-button {
        padding: 4px 8px !important;
        font-size: 13px !important;
        height: auto !important;
    }
}

/* ==============================================================
 * MODAL APPOINTMENT – Mobile
 * ==============================================================
 */

@media (max-width: 576px) {

    #wpappsws-appointment-modal {
        width: 96vw !important;
        max-width: none !important;
        margin: 0 8px !important;
        padding: 16px !important;
        border-radius: 12px !important;
        font-size: 14px !important;
    }

    #wpappsws-appointment-modal h3 {
        font-size: 18px !important;
        margin-top: 0 !important;
    }

    #wpappsws-appointment-modal button {
        min-height: 44px !important;
        padding: 8px 16px !important;
        font-size: 15px !important;
        border-radius: 8px !important;
    }

    #wpappsws-appointment-details div {
        font-size: 14px !important;
        line-height: 1.5 !important;
        padding: 4px 0 !important;
    }
}

/* ==============================================================
 * MODAL CONFIRM (cancel / restore)
 * ==============================================================
 */

@media (max-width: 500px) {

    #wpappsws-confirm-modal {
        width: 94vw !important;
        padding: 16px !important;
        font-size: 14px !important;
    }

    #wpappsws-confirm-modal h3 {
        font-size: 17px !important;
    }

    #wpappsws-confirm-modal textarea {
        font-size: 14px !important;
        padding: 8px !important;
        height: 60px !important;
    }

    #wpappsws-confirm-modal button {
        min-height: 44px !important;
        font-size: 15px !important;
        padding: 8px 16px !important;
        border-radius: 8px !important;
    }
}

/* ==============================================================
 * LIST VIEW – Mobile (FIX DEFINITIVO)
 * ==============================================================
 */

@media (max-width: 768px) {

    /* Trasforma ogni evento in card verticale */
    #wpappsws-fullcalendar .fc-list-event {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        padding: 12px 14px !important;
        margin-bottom: 10px !important;
        border-radius: 10px;
        background: #f9f9f9;
        border: 1px solid #e0e0e0;
    }

    /* Orario */
    #wpappsws-fullcalendar .fc-list-event-time {
        order: 1;
        font-size: 13px !important;
        color: #666;
        margin-bottom: 4px;
    }

    /* Stato (dot) */
    #wpappsws-fullcalendar .fc-list-event-graphic {
        order: 2;
        margin-bottom: 6px;
    }

    #wpappsws-fullcalendar .fc-list-event-dot {
        width: 12px !important;
        height: 12px !important;
        border-radius: 50%;
        display: inline-block !important;
    }

    /* Titolo */
    #wpappsws-fullcalendar .fc-list-event-title {
        order: 3;
        font-size: 14px !important;
        font-weight: 600;
        line-height: 1.4;
    }

    /* Header giorno */
    #wpappsws-fullcalendar .fc-list-day-cushion {
        padding: 8px 10px;
        font-weight: 700;
    }
}