﻿@media (max-width: 768px), (min-width: 768px) and (max-width: 1024px),(min-width: 1024px) and (max-width: 1200px) {
    :root {
        --avn_content-width: calc(100vw -4px); /* chiều ngang màn hình */
        --avn_footer-height: 12vh;
        --avn-screen-width: 100vw;
    }

    .menu-icon {
        font-size: 28px;
        padding: 10px 15px;
        cursor: pointer;
    }

    .textTooltip {
        display: none;
    }

    .mobile-menu {
        display: unset;
        position: fixed;
        top: 0;
        left: -100%; /* Ẩn ngoài màn hình */
        width: 100%; /* Chiều ngang bằng màn hình */
        height: 100vh;
        /*        background-color: #fae6e6;*/
        background-color: #fff;
        box-shadow: 2px 0 8px rgba(0,0,0,0.3);
        transition: left 0.3s ease-in-out;
        z-index: 9999999;
        font-size: 14px;
        font-weight: 500;
        color: #404557;
        overflow-y: auto;
    }

        .mobile-menu.active {
            left: 0; /* Trượt vào màn hình */
        }

        .mobile-menu .menu-header {
            display: flex;
            justify-content: end;
            align-items: center;
            padding: 15px;
            /*            border-bottom: 1px solid #ddd;*/
        }

        .mobile-menu .btn-regis {
            width: 92%;
            margin: 4%;
            padding: 0.6rem;
        }

        .mobile-menu .user-info-mobile {
            padding: 0px 15px 0px 15px;
        }

            .mobile-menu .user-info-mobile hr {
                margin-bottom: 10px !important;
            }

            .mobile-menu .user-info-mobile i {
                margin-right: 0.5rem;
                font-size: 1.5rem
            }


        .mobile-menu #closeMenu {
            border: none;
            background-color: transparent;
            font-size: 1.5rem;
            font-weight: bold;
            color: #333;
        }

        .mobile-menu ul {
            list-style: none;
            margin: 0;
            padding: 0px 11px 0px 11px;
            display: grid;
            justify-content: normal;
        }

        .mobile-menu li {
            margin-bottom: 15px;
        }

        .mobile-menu a {
            text-decoration: none;
            color: #333;
        }

            .mobile-menu a:hover {
                color: #ed1c25;
                cursor: pointer;
            }

        .mobile-menu .nav-item .nav-link {
            color: #333;
            font-size: 1.1rem;
            font-weight: 500;
        }

    .sidebar-nav .nav-group-mobile {
        /*        background-color: #FFF6F6;
        padding: 10px 8px 10px 8px;
        border-radius: 8px;*/
    }

    .sidebar-nav .nav-group-toggle-mobile {
        /*        background-color: #FFF6F6;*/
        padding: 16px 8px 16px 8px !important;
        border-radius: 8px !important;
        color: #404557 !important;
        text-transform: uppercase;
        font-weight: 600;
        font-size: 14px !important;
    }

    .sidebar-nav .nav-group-mobile .nav-group-items .nav-item-border {
        margin-bottom: 20px !important;
        width: 94%;
        border: 1px dashed #cccccc; /* nhạt */
    }

    .nav-link.active {
        background-color: #ED1C25 !important;
        color: white !important;
    }

    .nav-group .nav-link.active {
        background-color: unset !important;
        color: #ED1C25 !important;
        font-weight: 600;
    }

    .sidebar-nav .nav-group-mobile .nav-link:hover {
        background: #ed1c25 !important;
        color: white !important;
    }

    .sidebar-nav .nav-group-mobile .nav-group-items .nav-link:hover {
        background: none !important;
        color: #ed1c25 !important;
        border-radius: 8px !important;
    }

    .sidebar-nav .nav-group.show {
        background-color: #fff !important;
    }

    .sidebar-nav .nav-group .nav-group-toggle::after {
        transform: scale(1.5) rotate(-90deg) !important;
    }

    .sidebar-nav .nav-group.show > .nav-group-toggle::after {
        transform: scale(1.5) rotate(0deg) !important;
    }

    .sidebar-nav .nav-group .nav-group-toggle-bottom-top::after {
        transform: scale(1.5) rotate(-90deg) !important;
    }

    .sidebar-nav .nav-group.show > .nav-group-toggle::after {
        transform: scale(1.5) rotate(0deg) !important;
    }

    .sidebar-nav .nav-group .nav-group-toggle-mobile-bottom-top::after {
        background: #404557 !important
    }

    .sidebar-nav .nav-group.show > .nav-group-toggle-mobile {
        background-color: #FFF6F6 !important;
        color: #ED1C25 !important;
    }

        .sidebar-nav .nav-group.show > .nav-group-toggle-mobile::after {
            background-color: #FFF6F6 !important;
            color: #ED1C25 !important;
        }

        .sidebar-nav .nav-group.show > .nav-group-toggle-mobile::after {
            background-color: #ED1C25 !important;
            transform: scale(1.5) rotate(-180deg);
            transform-origin: center;
        }

    .nav-group-mobile .menu-group-title {
        font-size: 12px !important;
        margin: 0px !important;
        min-width: 300px;
        width: 100%;
        text-align: start;
    }

    .nav-group-mobile .nav-group-items .nav-item .nav-link {
        color: #404557 !important;
        text-transform: uppercase;
        font-weight: 500;
        padding: 16px 8px 16px 8px !important;
        font-size: 14px !important;
        text-align: start;
    }

    .nav-group-mobile .nav-group-items {
        background-color: #fff !important;
    }

    .sub_menu.active {
        color: #ED1C25 !important;
    }

    .navigation > a {
        display: block;
        padding: 10px;
        color: #333;
        text-decoration: none;
    }

        .navigation > a:hover {
            background-color: #f2f2f2;
        }

    .menu-mobile {
        display: block;
    }

    .avn_body {
        background: unset;
        height: auto;
    }

    .header-container {
        margin-bottom: unset;
        background-color: white;
/*        min-height: var(--avn_header-height);*/
    }

    .dropdown-menu-mobile {
        display: none; /* Hidden by default */
        position: absolute;
        top: 100%; /* Aligns below the parent */
        right: 0;
        width: 280px;
        background-color: #fff;
        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
        border: 1px solid #ddd;
        border-radius: 5px;
        z-index: 9999;
        padding: 0;
    }

        .dropdown-menu-mobile ul {
            list-style: none;
            margin: 0;
            padding: 0;
        }

            .dropdown-menu-mobile ul li {
                padding: 5px;
                font-size: 16px;
                display: flex;
                align-items: center;
                color: #333;
                /* border-bottom: 1px solid #ddd; */
                transition: background-color 0.3s ease;
            }

                .dropdown-menu-mobile ul li:hover {
                    color: red;
                    background-color: #FFF0F0;
                }

                .dropdown-menu-mobile ul li:last-child {
                    border-bottom: none;
                }

                .dropdown-menu-mobile ul li i {
                    margin-right: 10px;
                    color: #a98e8e;
                }

                .dropdown-menu-mobile ul li a {
                    text-decoration: none;
                    color: inherit;
                    flex-grow: 1;
                }

                .dropdown-menu-mobile ul li:hover {
                    background-color: #FFF0F0;
                    cursor: pointer;
                }

    .avn_top {
        height: auto;
        display: flex;
        flex-direction: column-reverse;
        margin: 0px;
    }

        .avn_top .avn_top_logo, .avn_top .avn_top_logo2 {
            flex: unset;
            max-width: unset;
            width: 100%;
            margin: 0.5rem 0;
        }

        .avn_top .avn_top_logo {
            background-size: auto 61% !important; /* giữ tỉ lệ width tự động, giảm height còn 50px */
            background-position: center center;
            aspect-ratio: 25/3;
            display: flex;
            justify-content: space-around;
        }

            .avn_top .avn_top_logo .menu-mobile {
                display: flex;
                justify-content: center;
                align-items: center;
            }

                .avn_top .avn_top_logo .menu-mobile i {
                    font-size: 2rem;
                    margin: 0.3rem;
                }

            .avn_top .avn_top_logo .menu-mobile-left {
                margin-right: 0.8rem;
                cursor: pointer;
            }

            .avn_top .avn_top_logo .menu-mobile-right {
                margin-left: 2rem;
                cursor: pointer;
            }

        .avn_top .avn_top_logo2 {
            background-position: center center;
/*            margin: 0.2rem 0px;*/
            height: 8vh;
            background-size: auto 56px !important; /* giữ tỉ lệ width tự động, giảm height còn 50px */
        }

            .avn_top .avn_top_logo2 a {
                width: 29%;
                margin: 0 2% !important;
            }

    .avn_menu_mid {
        display: none !important;
    }

    .pen_overlay, .divider-horizontal {
        display: none;
    }

    .wrapper {
        overflow: hidden;
    }

    .avn_body {
        margin-top: 10px;
    }

    .avn_content {
        margin: 2px;
        padding: 0.2rem;
        border: solid 0.5rem #312920;
        height: auto;
    }

    .avn_footer {
        display: flex;
        justify-content: center;
        margin-top: 10px;
        margin-bottom: 26px;
    }

    .avn_signal {
        font-size: 1rem;
        font-weight: 600;
    }

    .sidebar {
        position: relative;
        margin: auto !important;
        height: auto !important;
    }

    .div-sidebar-mobile {
        height: auto !important;
        margin-bottom: 1rem;
    }

    .col-sidebar, .col-content-body {
        width: 100%;
    }

    .thumnnail-container {
        display: grid !important;
        justify-items: center;
    }

    .listSampleKitchen {
        max-height: unset;
    }

        .listSampleKitchen .sampleKitchen .title{
            font-size: 1.2rem !important;
            text-align: justify;
        }
    .menu-noti-count-mobile {
        color: white;
        position: absolute;
        top: -3px;
        left: 1rem;
        border: solid 1px #fff;
        border-radius: 30px;
        padding: 3px 5px;
        font-weight: 600;
        font-size: 0.9rem;
        background-color: #da0012;
    }

    .article-container .article-header {
        display: grid;
        align-items: center;
    }

    .div1,
    .div2,
    .div3,
    .div4 {
        border-radius: 16px;
        box-shadow: 0 0.5rem 1rem rgba(8, 10, 12, 0.15);
    }

        .div1 .row {
            margin: auto;
        }
    /*
    .list-articles .card{
        padding: 0px !important;
        height: 366px;
        width: 100%;
    }*/
    /*        .list-articles .card .card-content {
            flex-direction: column;
            height: 100%;
        }*/

    /*            .list-articles .card .card-content .article-image {
                height: 249px;
                width: 100%;
                border-bottom-left-radius: 0px;
                border-bottom-right-radius: 0px;
                object-fit: fill !important;
            }
            .list-articles .card .card-content .card-feature {
                text-align: center;
                min-width: 286px;
                width: 100%;
                display: flex;
                flex-direction: column;
                justify-content: flex-end;
                margin: 0px !important;
            }
        .list-articles .card .card-content .article-title {
            margin-top: 8px;
            text-align: justify;
            margin-left: 10px;
            margin-right: 10px;
        }
            .list-articles .card .card-content .card-feature button {
                margin-bottom: 10px;
                margin-left: 10px;
                margin-right: 10px;
            }*/

    .list-articles .group-header-article {
        display: flex;
        flex-direction: column;
    }

        .list-articles .group-header-article .group-article {
            margin: 0px !important;
            margin-bottom: 10px !important;
        }

        .list-articles .group-header-article .article-detail-img {
            width: 310px;
            height: 249px;
            border-radius: 8px !important;
            border: none;
            object-fit: fill !important;
            padding: 0px !important;
        }

        .list-articles .group-header-article .article-detail-title {
            text-align: justify;
        }


    .group-content-related {
        box-shadow: 2px 0 8px rgba(0, 0, 0, 0.3);
        border-radius: 8px;
    }

    .label-required::before {
        content: unset !important;
    }

    .label-required::after {
        content: '*';
        margin-left: 8px;
        color: red;
    }
    /*    .content .title{
        text-align: center;
        margin: 10px 0px 10px 0px;
    }*/

    .bmi-section {
        padding: 2rem 1rem 2rem 1rem;
    }

    .bmi-calc-section .bmi-div-info {
        box-shadow: none !important;
    }

    .button-cal-bmi {
        width: 100%;
    }

    .bmi-calc-section .bmi-div-info:nth-child(3) {
        /*            background-color: white;
            width: 300px;
            margin: auto;
            margin-bottom: 10px;
            border-radius: 8px;*/
    }

    #gender, #weight, #height {
        padding: 0.575rem 0.75rem !important;
    }

    #date {
/*        padding: 0.475rem 0.75rem !important;*/
    }

    .nutritionEducation {
        margin: auto;
    }

    .project-description {
        font-weight: 600 !important;
        margin: 0px;
        margin-bottom: 10px;
    }

    .project-image-container {
        box-shadow: 2px 0 8px rgba(0,0,0,0.3);
        margin-top: 10px;
        margin-bottom: 10px;
    }

    .introduction .checklist {
        margin: 0px 16px 0px 16px !important;
        padding: 0px !important;
    }

        .introduction .checklist::before {
            display: none !important;
        }

    .checklist .item {
        border: solid 2px #EFEEEE;
        border-radius: 15px;
        display: flex;
        padding: 10px 0px 10px 10px;
        height: 70px;
    }

    .introduction .item::before {
        position: unset !important;
        height: fit-content;
        margin-right: 10px;
    }

    .introduction .item .content .title {
        text-align: start;
    }

    .section-title .menu-mobile {
        margin-bottom: 10px;
    }

    .video-div1 {
        margin-bottom: 10px;
    }

    .video-div3 button {
        margin-top: 10px;
    }

    .section-title {
        margin-bottom: 10px;
    }

    .snack-menu label {
        margin-top: 10px !important;
        margin-bottom: 22px;
    }

    .label-instruct, .content p {
        word-wrap: break-word;
        word-break: break-word; /* mạnh hơn, chia từ nếu quá dài */
        white-space: normal; /* đảm bảo xuống dòng */
    }

    .poster .relatedPoster {
        border: 0px !important;
    }

        .poster .relatedPoster .title-related {
            margin-left: 10px !important;
        }

    .poster .relatedTitle {
        font-size: 14px !important;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .border-content {
        border: none !important;
        border-radius: 15px !important;
        box-shadow: 0 0.5rem 1rem rgba(8, 10, 12, 0.15) !important;
        /*        height: fit-content !important;*/
    }

    .traditional-corner .title,
    .training-document .title {
        text-align: center;
        text-transform: uppercase;
        margin-bottom: 15px;
    }

    .family-group .list-articles-wrapper,
    .family-list .list-articles-wrapper,
    .vegetable-list .list-articles-wrapper,
    .vegetable-group .list-articles-wrapper {
        box-shadow: none !important;
        border: 0px !important;
        border-radius: 0px !important;
    }

    .long-placeholder::placeholder {
        white-space: pre-wrap;
        line-height: 1.2;
    }

    .ingredientList #dataTable_wrapper {
        min-width: 800px;
    }

    .snack-menu-table #table-ingredient_wrapper {
        min-width: 800px;
    }
    .calc-bmi label{
/*        margin-left: 10px;*/
    }
    .calc-bmi .div-bmi p {
        text-align: justify !important;
        margin-left: 0px !important;
        margin-right: 0px !important;
    }
    .calc-bmi .div-bmi button {
        text-align: start !important;
    }
    #StudentTable_wrapper .dt-length {
        margin-bottom: 10px;
    }
}

@media (max-width: 576px) {
    : root {
        --avn_header-height: 110px;
    }

    .ingredientList label {
        color: #ED1C25;
    }

    .group-training-button button {
        width: 100%;
    }

    .training-document .ThumbnailImage,
    .traditional-corner .ThumbnailImage {
        padding: 0px;
    }

        .training-document .ThumbnailImage img,
        .traditional-corner .ThumbnailImage img {
            aspect-ratio: 3 / 3 !important;
        }

    .group-traditional-button button {
        width: 100%;
    }
    .calc-bmi .div-btn{
        flex-direction: column;
        gap: 3px;
    }
    #btn-dowload-result,
    #btn-view-result,
    #btn-delete-year {
        text-align: center !important;
        justify-content: center;
    }

    #btn-view-result {
        padding: 10px 20px;
    }

    .filter-year, .filter-times,
    .filter-grade, .filter-class {
        flex-direction: row !important;
        justify-content: space-between;
        align-items: center !important;
    }

        .filter-year input, .filter-times input,
        .filter-grade input, .filter-class input {
            width: 100%;
        }
    .calc-bmi .filter-container-student-list .form-multi-select {
        width: 70% !important;
    }
    .group-btn-edit-student .btn-cancel,
    .group-btn-edit-student .btn-save {
        width: 100%;
        margin-right: 0px !important;
        margin-left: 0px !important;
    }
    .avn_top .avn_top_logo2{
        margin-bottom: 4.2rem;
    }
    .avn_top_logo2 a label{
        text-align: center;
    }
}

@media (max-width: 768px) {
    :root {
        --avn_header-height: 110px;
    }

    .snack-item .group-image,
    .snack-item .group-content {
        width: 100% !important;
    }

    .snack-menu .snack-item .btn-recipe {
        position: unset !important;
        top: 0px !important;
        right: 0px !important;
        margin: 20px auto 20px auto;
        width: 90%;
        border-radius: 10px;
    }
    .btn-function {
        text-align: center;
        align-items: start;
    }

    .snack-menu .snack-item .snack-image{
        margin:auto !important;
        padding: 0px !important;
        border-bottom-left-radius: 0px;
        border-bottom-right-radius: 0px;
    }
    .snack-item .group-image {
        padding: 0px !important;

    }

    .snack-menu h4{
        text-align: center;
    }

    .btn-recipe img{
        margin-right: 2px;
    }
    .snack-menu .snack-item .btn-function-item {
        width: 100%;
    }
    .label-instruct p {
        overflow-x: auto;
    }
    .student-count{
        gap: 1.5rem;
    }
    .student-count .item {
        flex-direction: row !important;
    }
    .cost-input{
        width: 120px;
    }
    .summary label{
        width: 50%;
    }
    #table-ingredient {
        table-layout: auto !important;
        width: 100%;
    }
    .snack-button {
        flex: 1 1 auto;
        margin: 0px !important;
    }
    .poster .title {
        font-size: 1.4rem !important;
    }
/*    .nutritionEducation .ThumbnailImage img {
        aspect-ratio: 5 / 3 !important;
    }*/

    .container-button-poster .btn-download{
        border-radius: 8px !important;
    }
    .poster{
        margin: auto;
    }
    .schoolHealth{
        margin: auto;
    }
    .schoolHealth .list-content{
        padding: 0px;
    }
        .schoolHealth .content {
            border: solid 1px #ED1C25 !important;
        }
        .schoolHealth .btn-readmore {
            width: 100%;
            margin-bottom: 10px;
        }
        .schoolHealth .title {
            text-align: justify;
/*            color: #DD0123;*/
        }
        .schoolHealth .ThumbnailImage img {
            width: 100% !important;
            border-radius: 14px !important;
            border-bottom-left-radius: 0px !important;
            border-bottom-right-radius: 0px !important;
            object-fit: cover !important;
        }
    .family-group .ThumbnailImage img,
    .vegetable-group .ThumbnailImage img,
    .sampleKitchen .ThumbnailImage img {
        border-radius: 8px !important;
        border-bottom-left-radius: 0px !important;
        border-bottom-right-radius: 0px !important;
        object-fit: cover !important;
        aspect-ratio: 4 / 3 !important;
        width: 100% !important;
        height: 100% !important;
        border: 0px !important;
        margin: 0px !important;
    }
    .family-group .article-title,
    .vegetable-group .article-title {
        text-align: justify;
    }
    .family-group .btn-readmore,
    .vegetable-group .btn-readmore {
        width: 100% !important;
    }
    .article-detail-title {
        text-align: center !important;
    }

    .listSampleKitchen .btn-readmore {
        margin-bottom: 1rem;
        width: 100%;
    }

    .group-profile-button button{
        width: 93%;
    }
    .calc-bmi table td:first-child {
        white-space: nowrap !important;
    }
    .calc-bmi #div-select-grade .form-multi-select,
    .calc-bmi #div-select-school .form-multi-select,
    .calc-bmi #div-select-student .form-multi-select {
        width: 100% !important;
    }
}

@media (max-width: 992px) {
    :root {
        --avn_header-height: 140px;
    }
    #emailInput {
        padding-bottom: 28px !important;
    }
    #AverageFee {
        padding-bottom: 65px !important;
    }
    .img-login {
        margin: 0px !important;
    }
    .change-password-container .form-section {
        padding-left: 30px;
        padding-right: 30px;
    }
    .input-forgot-group{
        gap: 0px !important;
    }
    .selectStudent .arrow-red{
        transform: rotate(90deg);
    }
    #date .date-picker-input {
        padding: 7px 9px;
    }
}

@media (max-width: 1024px){
    .student-count .item {
        flex-direction: column;
        width: 100%;
    }

    .student-count .group-input {
       margin: auto;
       flex: 1;

    }
        .student-count .group-input input {
            flex: 1;
        }

    .student-count .item span {
        width: 200px;
    }
    .traditional-corner .ThumbnailImage img,
    .training-document .ThumbnailImage img,
    .poster .ThumbnailImage img {
        width: 100% !important;
        height: 100% !important;
    }

    .poster .ThumbnailImage img {
        aspect-ratio: 3 / 3 !important;
    }
    .btn-login {
        width: 100% !important;
    }
    
}
@media (max-width: 1200px) {
    :root {
        --avn_header-height: 160px;
    }
    .change-password-footer,
    .forgot-password-footer {
        display: block !important;
    }
    .avn_top_logo2 a label {
        height: 10%;
    }
    .avn_top .avn_top_logo2 {
        justify-content: center;
    }
    .avn_top .avn_top_logo2 {
        padding: 0px;
    }
}

@media (min-width: 576px) and (max-width: 768px) {
    :root {
        --avn_header-height: 110px;
    }
    .calc-bmi .filter-container-student-list .form-multi-select {
        width: 100% !important;
    }
}

@media (min-width: 768px) and (max-width: 992px) {
    :root {
        --avn_header-height: 140px;
    }
    .calc-bmi .filter-container-student-list .form-multi-select {
        width: 100% !important;
    }
}

@media (min-width: 992px) and (max-width: 1200px) {
    :root {
        --avn_header-height: 140px;
    }

    #date .date-picker-input{
        padding: 8px 9px;
    }
}


@media (min-width: 992px) and (max-width: 1024px) {
    :root {
        --avn_header-height: 140px;
    }
    .nav-pills {
        width: 45% !important;
        align-items: center;
    }
}

@media (min-width: 1024px) and (max-width: 1200px) {
    :root {
        --avn_header-height: 160px;
    }
    
}
