@import url('https://fonts.googleapis.com/css2?family=Poppins&display=swap');

*,
::after,
::before {
    box-sizing: border-box;
}

body {
    font-family: Arial,Helvetica,sans-serif;
    margin: 0;
    background-image: url("images/background-image.jpg");
    background-repeat: no-repeat;
    background-position: center bottom;
    background-size: cover;
}

h3 {
    font-size: 1.2375rem;
    color: #FFF;
}

a {
    cursor: pointer;
    text-decoration: none;
    font-family: Arial,Helvetica,sans-serif;
}

li {
    list-style: none;
}

/* Layout skeleton */

.wrapper {
    align-items: stretch;
    display: flex;
    width: 100%;
}

#sidebar {
    max-width: var(--sidebar_width);
    min-width: var(--sidebar_width);
    transition: all 0.35s ease-in-out;
    box-shadow: 0 0 35px 0 rgba(49, 57, 66, 0.5);
    z-index: 1111;
}

/* Sidebar collapse */

#sidebar.collapsed {
    margin-left: calc( 0px - var(--sidebar_width) ) ;
}

.main {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    width: 100%;
    overflow: hidden;
    transition: all 0.35s ease-in-out;
}

.sidebar-logo {
    padding: 1.15rem 1.5rem;
}

.sidebar-logo a {
    color: #e9ecef;
    font-size: 1.25rem;
    font-weight: 600;
}

.sidebar-food-list-title {
    color: #e9ecef;
    font-size: 1.20rem;
    font-weight: 600;
    padding-left: 1.625rem;
}

.sidebar-nav {
    padding: 0;
    /* border: 10px solid green; */
    overflow-y: auto;
}

.sidebar-header {
    color: #e9ecef;
    font-size: .75rem;
    padding: 1.5rem 1.5rem .375rem;
}

a.sidebar-link {
    padding: .625rem 1.625rem;
    color: #e9ecef;
    position: relative;
    display: block;
    font-size: 1rem;
}

.sidebar-link[data-bs-toggle="collapse"]::after {
    border: solid;
    border-width: 0 .075rem .075rem 0;
    content: "";
    display: inline-block;
    padding: 2px;
    position: absolute;
    right: 1.5rem;
    top: 1.4rem;
    transform: rotate(-135deg);
    transition: all .2s ease-out;
}

.sidebar-link[data-bs-toggle="collapse"].collapsed::after {
    transform: rotate(45deg);
    transition: all .2s ease-out;
}

.content {
    flex: 1;
    max-width: 100vw;
    width: 100vw;
}

/* Responsive */

@media (min-width:768px) {
    .content {
        width: auto;
    }
}

/* =============================================== */
:root {
    --app-height: 100%;
    --nav-height:0px;
    /* --sidebar_width: 264px; */
    --sidebar_width: 357px;
    --post_show_delay_second:0.5s;
    --side-bar-transition-duration:0.35s;
    --post-title-top:54px;
    --background-opacity:#3333335c;
    --right-content-max-width:800px;
    --sidebar_sidebar_toggle_btn:37px;
    --main-color-blue:#219CD6CC;
    --sidebar-bg-opacity:95%;
    --main-color-yellow:#FFCE72;
    --bottom-bar-height:55px;
}
body, html { 
    background-color: green !important;
}
.div-touch-action-one {
    touch-action: none;  
    -webkit-overflow-scrolling: unset;
}
#sidebar {
    max-width: var(--sidebar_width);
    min-width: var(--sidebar_width);
    /* transition: all 0.35s ease-in-out; */
    transition-property: all;
    transition-duration: var(--side-bar-transition-duration);
    transition-timing-function: ease-in-out;
    background: var(--main-color-blue);
    opacity: var(--sidebar-bg-opacity);
    position: absolute;
    height: 100%;
    /* -webkit-user-drag: none; */
}  
#sidebar .sidebar-inner{
    /* border: 5px solid red; */
    flex-direction: column;
    padding: 5px 10px;
}
#sidebar.collapsed {
    margin-left: calc( 0px - var(--sidebar_width) );
    /* margin-left: -500px; */
}  
#sidebar .sidebar_toggle_btn{
    position: absolute;
    /* border: 5px solid green; */
    right: calc( 0px - var(--sidebar_sidebar_toggle_btn) );
    bottom: 20%;
    background: var(--main-color-blue);
    opacity: var(--sidebar-bg-opacity);
    height: 109px;
    width: var(--sidebar_sidebar_toggle_btn);
    padding: 0;
    border-radius: 0px 10px 10px 0px;
}
#sidebar.collapsed .sidebar_toggle_btn img{
    rotate: 180deg;
}
#sidebar .sidebar_toggle_btn img{
    height: 100%;
    max-height: 38px;
}
#accordionSidebarFoodsList{
    
}
#accordionSidebarFoodsList .accordion-item{
    border: none;
}
a.sidebar-link{
    /* padding: 0.625rem 1.625rem; */
    padding-top: 0.2rem ;
    padding-bottom: 0.2rem ;
    padding-left: 0px;
    padding-right: 1.625rem;
    font-size: 15px;
}
.sidebar-link[data-bs-toggle="collapse"]::after {
    display: none;
}
.sidebar-logo {
    /* background-color: tan; */
    height: 200px;
    padding: 0 !important;

}
.sidebar-logo img{
    
}
#foods_list_sidebar_item .sidebar-link .icon svg{
    position: absolute;
    /* background: tan; */
    top: 0.625rem;
    right: 1.625rem;
    /* rotate: 45deg; */
    color: red;
    font-weight: bold;
}
#foods_list_sidebar_item .sidebar-link .icon svg.bi-x-lg{
    display: none;
}
#foods_list_sidebar_item .sidebar-link.collapsed .icon svg.bi-x-lg{
    display: block;
}

/* Custom style */
.accordion-button::after {
    background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='%23FFCE72' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill-rule='evenodd' d='M8 0a1 1 0 0 1 1 1v6h6a1 1 0 1 1 0 2H9v6a1 1 0 1 1-2 0V9H1a1 1 0 0 1 0-2h6V1a1 1 0 0 1 1-1z' clip-rule='evenodd'/%3e%3c/svg%3e");
    transform: scale(.7) !important;
}
.accordion-button:not(.collapsed)::after {
    background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='%23FFCE72' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill-rule='evenodd' d='M0 8a1 1 0 0 1 1-1h14a1 1 0 1 1 0 2H1a1 1 0 0 1-1-1z' clip-rule='evenodd'/%3e%3c/svg%3e");
}
#myAccordion{
    height: 100%;
    /* border: 3px solid green; */
    overflow: hidden;
}
#myAccordion .accordion-item{
    border-left: none;
    border-right: none;
    max-height: 100% !important;
    display: flex;
    flex-direction: column;
}
#myAccordion .accordion-item .foods_list_ul li{
    border-top: var(--bs-accordion-border-width) solid var(--bs-accordion-border-color);
}
span.sidebar-link-span{

}
#collapseOne, #collapseThree{
    overflow: auto;
}
.accordion-collapse{
    margin-top: -1px;
}
#myAccordion .accordion-item:first-of-type , #myAccordion .accordion-item:last-of-type{
    border-radius: 0 !important;
}
#myAccordion .accordion-button{
    color:var(--main-color-yellow) ;
    box-shadow: none;
    text-transform: capitalize;
    padding: 8px;
}
#myAccordion .accordion-item, #myAccordion .accordion-button{
    background: transparent;
    
}
#foods_list_by_region .accordion-item:last-child, #ocops_list_by_region .accordion-item:last-child{
    border-bottom: none;
}
.popup-title.popup-food-name{
    font-size:13pt;
}
.popup-title.popup-region-name{
    font-size:12pt;
}
.accordion-button:focus{
    box-shadow:none;
}
main.content{
    overflow: hidden;
    /* border: 10px solid red; */
}
#DanPhuongMap {
    width: 100vw;
    height:100%;
    
    position: absolute;
    right: 0px;
    top: 0px;
    /* border: 1px solid orange; */
}
/* main.content, .main-right--- */
.div-full-height{
    min-height: calc(var(--app-height)   ) !important;
    max-height: calc(var(--app-height)   ) !important;
}

.map-popup-content {
    width: 300px;
}

.map-popup-content .left {
    /* float:left;
    width: 40%; */
}
.map-popup-content .left img {
    width: 100%;
    /* height: 100px; */
    /* margin: -15px 0 -15px -20px; */
    border-radius: 12px;
    /* position: absolute; */
    width: 100%;
}

.map-popup-content .right {
    /* float:left;
    width: 60%; */
    text-align: justify;
}
.map-popup-content .right span{
    font-size: 12px !important;
    font: 12px/1.5 "Helvetica Neue", Arial, Helvetica, sans-serif !important;
}
.clearfix {
    clear:both;
}
 /* ---------------------------------------------- */

 .navbar-expand{
    position: absolute;
    z-index: 999999999;
    /* left: 0; */
    border-radius: 0 0 5px 0;
    box-sizing: border-box;
    /* width: var(--sidebar_width); */
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    background: var(--background-opacity);
    height: auto;
    /* border-bottom: 5px solid red !important;*/
    transition-property: margin-top, margin-left, background ;
    transition-duration: 0.5s;
    transition-timing-function: ease-in-out;
 }
#sidebar .sidebar-link.active {
    background-color: var(--main-color-yellow);
} 
#foods_list_sidebar_item {
    /* border: 3px solid orange; */
    max-height: 100%;
    display: flex;
    flex-direction: column;
}
.foods_list_ul{
    /* border: 3px solid green; */
    /* height: auto; */
    /* max-height: 50%; */
    overflow: auto;
    padding-left: 0;
    /* background: tan; */
}
#food-post{
    /* position: absolute;  */
    z-index: 99999;
    /* border: 2px solid orange; */
    /* right: 0; */
    /* background: #fff; */
    /* width: 50%; */
    transform: translateX(-100%);
    left: 0;
    /* transform: translateX(0px); */
    transition-property: transform;
    transition-duration: 0.5s;
    overflow-y: auto;
    background-color: var(--background-opacity);
}
#food-post .post-text p{
    text-align: justify;
}
#food-post .post-text span{
    font-family: Arial,Helvetica,sans-serif !important;
}
.transform-translateX-0{
    transform: translateX(0px) !important;
    transition-delay: var(--post_show_delay_second);    
    transition-timing-function: ease-in-out;    
}
#food-post .close-btn{
    color: red;
    background: transparent;
    border: 1px solid var(--background-opacity);
    width: 50px;
    height: 50px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    position: absolute;
    right: 0;
    top: 0;
    cursor: pointer;
    border-radius: 5px;
}

#food-post .close-btn:hover{
    background: #33333380;
}

.post-title{
    flex-direction: column;
    justify-content: center;
    /* border: 1px solid; */
    
}
.post-title > .h-div{
    /* background: tan; */
    /* max-width: calc(100% - 180px); */
    margin: auto;
}

#food-post [post_id]{
    display: none;
}
#food-post [post_id].active{
    display: block;
}
#food-post .post-images{
    display: flex;
    flex-direction: row;
    justify-content: center;
}
#food-post .post-images .carousel,#food-post .post-video iframe{
    width: 100%;
    max-width: var(--right-content-max-width);
    background: #000;
}
#food-post .post-video iframe , .carousel-item{
    height: 250px;   
}

.carousel-item{
    /* height: 250px; */
    /* border: 5px solid green; */
    overflow: hidden;
}

.carousel-item img{
    /* vertical-align: middle; */
    position: absolute;
    /* border: 10px solid red; */
    transform: translate(0, -50%);
    top: 50%;    
} 
.post-text img{
    margin-top: 5px;
    margin-bottom: 5px;
    max-width:100%;
    height: auto !important;
}
.post-text li {
    list-style: disc;
}

#food-post .inner-div{
    margin-top: 0;
    padding-top: var(--post-title-top);
    /* margin-bottom: var(--post-title-top); */
    background: #fff;
    min-height: calc(100% - 0*var(--post-title-top));
    position: relative;
}

.post-btn-close{
    position: absolute;
    background: tan;
    border: 2px solid brown;
    background: var(--background-opacity);
    color: brown;
    top: 0;
    right: 0;
}

.maker_popup_div img{
    /* border: 2px solid red; */
}
.right b{
    display: block;
    padding: 5px;
    text-align: center;
    font-size: 20px;
}
.leaflet-popup-content-wrapper{
    padding-top: 1.5rem !important;
    padding-right: 1rem !important;
    padding-bottom: 1.5rem !important;
    padding-left: 1rem !important;
}
.leaflet-popup-content{
    margin: unset !important;
    width: 100% !important;
}
.leaflet-popup-content p{
    margin:0 !important;
}

.carousel-control-next-icon, .carousel-control-prev-icon , .carousel-indicators{
    background-color: var(--background-opacity);
}


.bottom-bar{
    position: fixed;
    height: var(--bottom-bar-height);
    max-width: 400px;
    bottom: 15px;
    background-color: #fff;
    z-index: 999;
    left: 50%;
    transform: translateX(-50%);
    overflow: hidden;
    border-radius: 30px;
    border: 2px solid #219CD6;
    width: calc(100vw - 20px);
    flex-direction: row;
    justify-content: space-between;
}
.bottom-bar-col{
    flex-direction: column;
    justify-content: center;
    
}
.bottom-bar-col.left, .bottom-bar-col.right{
    max-width: calc(  var(--bottom-bar-height) - 4px );
} 
.bottom-bar-col.center{
    max-width: 220px;
}
.bottom-bar-col img{
    width: auto;
    height: 100%;
    cursor: pointer;
}
.modal-body .a-food{
    justify-content: space-between;
    flex-direction: column;
}

.modal-body .a-food .thumb{
    height: 200px;
    border: 1px solid #ccc;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    border-radius: 5px;
}
.modal-body .a-food .thumb img{
    position: absolute;
    /* border: 10px solid red; */
    transform: translate(0, -50%);
    top: 50%;
    width:100%;
}
.modal-body .a-food .title{
    background-color: tan;
}
.sidbar-bottom-div{
    height: 50px;
    /* background: tan; */
    flex-direction: row;
    justify-content: center;
}

.sidbar-bottom-div img{
    max-width: 50px;
}

.right-corner-div{
    display: none;
}
/* // X-Small devices (portrait phones, less than 576px)
// No media query for `xs` since this is the default in Bootstrap */

/* // Small devices (landscape phones, 576px and up) */
@media (min-width: 576px) { 
    .modal-body .a-food .thumb{
        height: 100px;
    }
  }

/* // Medium devices (tablets, 768px and up) */
@media (min-width: 768px) {
    .navbar-expand{
        border: none !important;
    } 
    
    #food-post .post-video iframe , .carousel-item{
        height: 450px;   
    }
    
    
    .post-btn-close:hover {
        background: brown;
        color: #fff;
    }
    .sidebar-nav {
        overflow-y: hidden;
        /* scrollbar-gutter: stable both-edges; */
    }
    .right-corner-div{
        display: block;
        position: fixed;
        bottom: 0px;
        z-index: 999;
        height: 200px;
        right: 0;
    }
}



/* // Large devices (desktops, 992px and up) */
@media (min-width: 992px) {  
    :root {
        
        
    }
    .modal-body .a-food{
        cursor: pointer;
    }
    .sidebar-logo{
        height: 271px;
    }
    #sidebar .sidebar-inner{
       padding: 16px 35px;
    }
    .sidebar-link:hover{
        background-color: var(--main-color-yellow);
        color: var(--main-color-blue);
    } 
    .post-text img{
        max-width:80%;
    }  
 }

/* // X-Large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) { 
    
  }

/* // XX-Large devices (larger desktops, 1400px and up) */
@media (min-width: 1400px) {  
    .post-btn-close{
                
    }
    #food-post .inner-div{
        max-width: var(--right-content-max-width);
         margin: auto;
         border-radius: 5px;
         margin-bottom: 20px;
         margin-top: 20px;
         min-height: calc(100% - 40px);
     }
 }

