@media (max-height: 1160px) {
    :root {
        --cell-height: 65px;
    }

    .course-info {
        font-size: 13px;
    }


    header {
        margin-bottom: 0;
    }

    h2, h3 {
        margin: 0;
        font-size: 1.2em;
    }

    .bar-comp{
        padding: 19px;
    }

    .calfooter {
        margin-top: 8px;
    }

    #make-popup {
        overflow: hidden;
    }

    .form {
        overflow-y: scroll;
        height: 90%;
        padding-bottom: 8px;
        margin-bottom: 8px;
    }

    .wrapper {
        width: 100%;
    }

    .title {
        font-size: 36px;
        margin-bottom: 0px;
    }

    .no-scroll {
        /* position: fixed; */
        overflow: hidden;
    }
}

@media (max-height: 960px) {
    :root {
        --cell-height: 55px;
    }


    .calfooter {
        margin-top: 4px;
    }

    h2, h3 {
        display: contents;
    }

    .label {
        margin-bottom: 24px !important;
    }

    

}

@media (max-height: 850px) {
    :root {
        --cell-height: 55px;
    }

    .calfooter {
        margin-top: 4px;
    }

    h2, h3 {
        display: contents;
    }

    header {
        transition: transform 0.3s ease, opacity 0.3s ease;
        will-change: transform, opacity;
    }

    header.folded {
        transform: translateY(-30%);
        opacity: 0;
    }

    /* #make-popup {
        overflow: hidden;
    }

    .form {
        overflow-y: scroll;
        height: 90%;
        padding-bottom: 8px;
        margin-bottom: 8px;
    }*/

    .label * {
        font-size: 18px;
    }

    .label {
        margin-bottom: 8px !important;
    }

    /*.wrapper {
        width: 100%;
    }

    .title {
        font-size: 36px;
        margin-bottom: 0px;
    }

    .no-scroll {
        /* position: fixed; 
        overflow: hidden;
    } */

}




@media (max-width: 1380px) {
    :root {
        --cell-width: 120px;
    }

    .course-title {
        font-size: 12px;
        line-height: 1;
        font-weight: 100;
    }

    h2, h3 {
        font-size: 0.9em;
    }

    .largeImage > img {
        height: 64px;
    }


}

@media (max-width: 1180px) {
    :root {
        --cell-width: 160px;
    }
    .course-title {
        font-size: 13px;
        line-height: 1.2;
        font-weight: 700;
    }
    
    .calendar-main {
        flex-direction: column;
    }

    .cal {
        align-items: flex-end;
    }

    h2, h3 {
        font-size: 1.1em;
    }

    .calfooter {
        width: 75%;
        margin-bottom: 16px;
    }
    .filter {
        width: 100%;
    }

    .shadow {
        align-content: normal;
        padding-top: 40%;
        box-sizing: border-box;
    }
}


@media (max-width: 980px) {
    :root {
        --cell-width: 140px;
    }
    
    .calendar-main {
        flex-direction: column;
    }

    .cal {
        align-items: flex-end;
    }

    .calfooter {
        width: 75%;
        margin-bottom: 16px;
    }

    .largeImage > img {
        height: 50px;
    }

    header {
        padding: 16px 16px;
    }
}

@media (max-width: 890px) {
    :root {
        --cell-width: 110px;
    }

    h2, h3 {
        font-size: 0.9em;
    }

    .course-time {
        font-size: 9px;
    }

    .course-details {
        height: 100%;
    }

    .course-info{
        height: 100%;
        justify-content: space-around;
    }

    .course-title {
        font-size: 12px;
        line-height: 1;
        font-weight: 100;
    }

    .course-block {
        padding: 4px;
    }

    .popup-container {
        min-width: 500px;
    }
    
}

@media (max-width: 740px) {
    :root {
        --cell-width: 90px;
        --cell-height: 65px;   
    }

    h2, h3 {
        font-size: 0.9em;
    }

    .course-title {
        font-size: 16px;
        line-height: 1;
        font-weight: 100;
    }

    .course-time {
        display: none;
    }

    .highlight {
        font-size: 21px !important;
    }

    .prepare {
        width: 430px !important;
    }
    
}

@media (max-width: 640px) {
    :root {
        --cell-width: 75px;
    }

    .course-title {
        font-size: 16px;
        margin-bottom: 20px;
    }

    .course-info {
        /* transform: rotate(270deg); */
        height: 50%;
    }

    .action-buttons {
        margin-left: 0;
    }

    .details {
        font-size: 12px;
    }

    .btn {
        padding: 8px 10px;
    }

    .table {
        font-size: 18px;
    }

    .popup-container {
        min-width: 300px;
    }

    .shadow {
        box-shadow: #000000b3 0px 0px 20px 20px;
        background: #000000b3;
        width: 90%;
    }

    .footer-content * {
        margin: 28px auto;
    }
    
    .footer-content {
        grid-template-columns:none;
    }

    /* phone header */
    header {
        /* position: fixed;
        top: 0;
        right: 0;
        height: 100%;
        width: 100%;
        display: none; */
        
        
        margin: 0;
        padding-bottom: 0;
        
        flex-direction: column;
        justify-content: flex-start;

        position: fixed;
        top: 10px;
        left: 10px;
        width: 60px;
        height: 60px;
        border-radius: 50%;
        background: #1a1e2aab;
        backdrop-filter: blur(32px);
        -webkit-backdrop-filter: blur(32px); /* Safari */
        overflow: hidden;
        z-index: 100;
        transform: scale(1);
        transition: all 0.5s ease-in-out;

        backdrop-filter: blur(0px);
        background-color: rgba(26, 30, 42, 0);
    }
    
    header.active {
        top: 0;
        left: 0;
        width: 100vw;
        height: 100vh;
        border-radius: 0;
        transform: scale(1);
        padding: 75px 0;
        background-color: 	#1a1e2aab;
        backdrop-filter: blur(32px);
        -webkit-backdrop-filter: blur(16px); /* Safari */
    }
    @supports (height: 100dvh) {
        header.active {
            height: 100dvh; /* Use dynamic viewport height if supported */
        }
    }

    body.modal-open {
        overflow: hidden;
        position: fixed;
        width: 100%;
    }

    body.header-active {
        overflow: hidden;
    }

    header * {
        font-size: 12px !important;
        transition: all 5s;
        text-wrap: nowrap;
    }

    header.active * {
        font-size: 24px !important;
        transition: all 1s;
    }

    header > .largeImage > img {
        height: 10px !important;
        transition: height .7s;
    }

    header.active > .largeImage > img {
        height: 64px !important;
        transition: height 1s;
    }

    .header-bar {
        flex-direction: column;
    }

    .bar-comp {
        width: 80%;
        margin: 16px 0;
        /* padding: 0; */
    }

    .border {
        height: 6px;
        width: 75%;
    }

    .largeImage > img {
        height: 80px;
    }

    .largeImage {
        margin-bottom: 10%;
    }

    .menu-icon {
        display: flex !important;
    }

}

@media (max-width:520px) {
    :root {
        /* --cell-height: 70px;
        --cell-width: 60px; */
        --cell-height: 65px;
        --cell-width: 55px;
    }

    .day-header {
        padding: 26px 0 0 0;
    }

    .day-header span {
        transform: rotate(-45deg);
        display: inline-block;
    }

    .calendar {
        grid-template-columns: 50px repeat(5, var(--cell-width));
    }

    .filter {
        min-width: 0;
    }


    .course-block {
        width: calc(var(--cell-width) - 4px);
        /* padding: .125rem; */
        padding: 0;
    }

    .course-title {
        /* font-size: 15px;
        margin: 6px 0 20px 0;
        transform: rotate(270deg); */
        font-size: 11px;
        margin: .5rem 1px 1rem 0;
    }

    .calendar.chromium .course-title {
        margin-bottom: 4px !important;
    }

    .course-info {
        transform: rotate(0deg);
    }

    .nav {
        margin-right: 50px;
        z-index: 1;
    }
    .calfooter {
        width: 100% !important;
        margin: 24px 0 0 0;
        flex-direction: column;
        align-items: center;
    }

    .action-buttons {
        width: 100%;
        margin: -48px 0 0 0;
        justify-content: space-between;
    }
    .details {
        margin: 0;
    }

    .filter {
        width: 95%;
    }

    .prepare {
        width: 396px !important;
        height: 90vh !important;
    }

    #pre-filter .filterComp {
        font-size: 0.80rem;
    }
}