﻿/* ===== Date View: Mobile friendly (<= 768px) ===== */
@media (max-width: 768px) {
    .date-view-container {
        display: flex !important;
        flex-direction: column !important;
        gap: 12px;
        padding: 12px;
        border: 1px solid #eef0f2;
        border-radius: 12px;
        background: #fff;
    }

    /* Calendar block on top, centered */
    .calendar-icon-container {
        align-self: center;
    }

    .date-container {
        display: flex;
        flex-direction: column;
        align-items: center;
        min-width: 96px;
    }

        .date-container .month {
            font-size: 0.85rem;
            line-height: 1.2;
        }

        .date-container .date {
            font-size: 1.6rem;
            font-weight: 700;
            line-height: 1;
        }

        .date-container .day {
            font-size: 0.85rem;
            line-height: 1.2;
        }

    /* Right content becomes full-width */
    .date-view-content {
        width: 100%;
    }

    .date-view-title h2 {
        font-size: 1rem;
        line-height: 1.35;
        margin: 0 0 6px;
    }

    /* Details list: single column */
    .flex-content {
        display: grid !important;
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .content-title {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        font-size: 0.95rem;
        line-height: 1.3;
    }

        .content-title img {
            width: 18px;
            height: auto;
        }

    .content-description {
        font-size: 0.95rem;
        line-height: 1.6;
    }

    /* Make very long lines wrap even if they contain &nbsp; */
    .content-description-long {
        white-space: normal !important;
        overflow-wrap: anywhere;
        word-break: break-word;
        text-align: justify; /* optional: nicer paragraphs */
    }

    /* Hide the vertical divider on phones */
    .divider {
        display: none !important;
    }

    /* Calendar button: full width & comfy tap target */
    .calendar-btn-container {
        margin-top: 6px;
    }

    .calendar-btn {
        width: 100%;
        padding: 10px 14px;
        font-size: 0.95rem;
    }
}

/* Extra-small phones */
@media (max-width: 420px) {
    .date-container {
        min-width: 84px;
    }

        .date-container .date {
            font-size: 1.4rem;
        }

    .date-view-title h2 {
        font-size: 0.95rem;
    }

    .content-title {
        font-size: 0.9rem;
    }

    .content-description {
        font-size: 0.9rem;
    }
}
@media (max-width: 768px) {
    .page-content.page-content-70 {
        width: 100% !important;
        padding-inline: 12px !important;
    }
}
/* Mobile: calendar button full-width & centered */
@media (max-width: 768px) {
    /* make the wrapper link fill the row */
    .calendar-btn-container a {
        display: block;
        width: 100%;
    }

    /* style the actual button */
    .calendar-btn {
        display: inline-flex;
        justify-content: center;
        align-items: center;
        width: 100%;
        padding: 12px 16px;
        font-size: 0.95rem;
        line-height: 1.2;
        border-radius: 12px;
        text-align: center;
        /* keep your existing colors/borders */
    }

        /* nice focus & tap feedback (optional) */
        .calendar-btn:focus-visible {
            outline: 2px solid #0ea5e9;
            outline-offset: 2px;
        }

        .calendar-btn:active {
            transform: translateY(1px);
        }
}

/* Extra-small phones */
@media (max-width: 420px) {
    .calendar-btn {
        font-size: 0.9rem;
        padding: 11px 14px;
    }
}
