/* ===== СТРАНИЦА РАСПИСАНИЯ (schedule.css) ===== */

.page-title {
    text-align: center;
    margin: 30px 0 20px;
    color: #333;
    font-size: 28px;
    padding: 0 15px;
}

.calendar-container {
    background: white;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    overflow: hidden;
    margin: 20px auto;
    max-width: 750px;
    padding: 20px;
    min-height: 80vh;
    display: flex;
    justify-content: center;
    align-items: center;
}

.calendar-container iframe {
    width: 100%;
    max-width: 900px;
    height: 75vh;
    border: 0;
    border-radius: 8px;
}

/* ===== АДАПТИВ ===== */

/* Планшеты (768px - 1024px) */
@media (max-width: 1024px) {
    .page-title {
        font-size: 24px;
        margin: 25px 0 15px;
    }

    .calendar-container {
        max-width: 92%;
        padding: 16px;
        min-height: 65vh;
        margin: 15px auto;
    }

    .calendar-container iframe {
        height: 60vh;
    }
}

/* Телефоны (до 768px) */
@media (max-width: 768px) {
    .page-title {
        font-size: 20px;
        margin: 18px 0 10px;
    }

    .calendar-container {
        max-width: 100%;
        padding: 8px;
        min-height: 50vh;
        border-radius: 6px;
        margin: 8px 0;
        box-shadow: 0 1px 5px rgba(0, 0, 0, 0.08);
    }

    .calendar-container iframe {
        height: 45vh;
        border-radius: 6px;
    }
}

/* Маленькие телефоны (до 480px) */
@media (max-width: 480px) {
    .page-title {
        font-size: 17px;
        margin: 12px 0 8px;
    }

    .calendar-container {
        padding: 4px;
        min-height: 40vh;
        border-radius: 4px;
        margin: 4px 0;
    }

    .calendar-container iframe {
        height: 35vh;
        border-radius: 4px;
    }
}

/* Очень маленькие телефоны (до 360px) */
@media (max-width: 360px) {
    .page-title {
        font-size: 15px;
        margin: 8px 0 6px;
    }

    .calendar-container {
        padding: 2px;
        min-height: 30vh;
    }

    .calendar-container iframe {
        height: 25vh;
    }
}

/* Для альбомной ориентации на телефонах */
@media (max-height: 500px) and (orientation: landscape) {
    .calendar-container {
        min-height: 30vh;
        padding: 4px;
    }

    .calendar-container iframe {
        height: 25vh;
    }

    .page-title {
        font-size: 14px;
        margin: 6px 0 4px;
    }
}

/* Для больших экранов (десктопы, ТВ) */
@media (min-width: 1400px) {
    .page-title {
        font-size: 34px;
    }

    .calendar-container {
        max-width: 900px;
        padding: 30px;
        min-height: 85vh;
    }

    .calendar-container iframe {
        height: 80vh;
        max-width: 1100px;
    }
}