body.active {
    height: 100vh;
    overflow: hidden;
}

menu {
    position: relative;
    display: flex;
    align-items: center;
    padding: 16px 30px;
    margin: 0px;
    justify-content: space-between;
}

menu .logo {
    width: auto;
    height: 45px;
}

menu .logo a {
    text-decoration: none;
}

menu .logo .mobile-logo {
    display: none;
}

menu .logo img {
    width: 180px;
}

menu .right-side {
    display: flex;
    justify-content: center;
    gap: 50px;
    align-items: center;
}

menu .menu-list {
    display: flex;
    flex: 4;
    justify-content: center;
    align-items: center;
}

menu .menu-list .menu-tabs-list {
    margin: 0;
    padding: 8px;
    list-style: none;
    display: flex;
    column-gap: 20px;
    background: var(--color-white);
    border-radius: 100px;
}

menu .menu-list .menu-tabs-list .menu-tab {
    padding: 8px 20px;
    border-radius: 100px;
}

menu .menu-list .menu-tabs-list .menu-tab.active {
    background: var(--color-main);
}

menu .menu-list .menu-tabs-list .menu-tab a {
    text-decoration: none;
    font-size: 18px;
    font-family: 'Roboto', sans-serif;
    color: var(--color-black);
}

menu .menu-list .menu-tabs-list .menu-tab.active a {
    color: var(--color-white);
}

menu .languages {
    position: relative;
}

menu .languages .form {
    display: none;
    position: absolute;
    top: 65px;
    transition: all 0.3s ease-in;
    z-index: 9;
}

menu .languages .form.active {
    display: grid;
}

menu .right-side .nav-user-section .user_profile_img {
    width: 45px;
    height: 45px;
    border-radius: 50%;
    max-width: 45px !important;
}


/* Menu Search Box */

.medicine-page .search-box {
    padding: 5px 12px 5px 20px;
}

.store-header .search-box {
    padding: 5px 10px 5px 20px;
}

.search-box {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    border-radius: var(--br-31xl) !important;
    background-color: var(--color-white)!important;
    box-shadow: var(--normal-box-shadow) !important;
    align-items: center !important;
}

.search-box input {
    width: 100%;
    /* height: 45px; */
    border: none;
    outline: none;
    font-size: 17px;
}

.search-box input:active,
.search-box input:focus {
    border: none;
    --tw-ring-color: none;
}

.search-icon {
    position: relative;
    width: 22px;
    height: 22px;
}

.search-btn {
    border-radius: 50%;
    background-color: var(--color-main);
    padding: 10px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border: none;
    outline: none;
}


/* Search btn or Mic btn */

.search-btn i {
    display: none;
}

.search-btn i.active {
    display: block;
}

.search-btn.mic-btn {
    display: flex;
    position: relative;
    justify-content: center;
    align-items: center;
    padding: 12px;
    width: auto;
    height: auto;
    border-radius: 50%;
    background: var(--color-secondary);
    border: 2px solid #ffffff;
    box-shadow: 0px 2px 5px 0px #E4EEFC;
}

.search-btn.mic-btn.listening::before,
.search-btn.mic-btn.listening::after {
    position: absolute;
    content: "";
    height: 16px;
    width: 16px;
    border-radius: 50%;
    background-color: var(--color-primary);
}

.search-btn.mic-btn.listening::before {
    width: 25px;
    height: 25px;
    z-index: -1;
    background-color: var(--color-primary);
}

.search-btn.mic-btn.listening::after {
    width: 40px;
    height: 40px;
    animation: pulse 1s linear infinite;
}

@keyframes pulse {
    from {
        transform: scale(0.9);
        opacity: 1;
    }
    to {
        transform: scale(1.8);
        opacity: 0;
    }
}

menu .cart-btn .iconsax svg [stroke] {
    stroke: var(--color-primary) !important;
}


/* Mobile Menu */

.mobile-menu-icon {
    display: none;
}

.mobile-menu-icon.hamburger {
    cursor: pointer;
}

.mobile-menu-icon.hamburger input {
    display: none;
}

.mobile-menu-icon.hamburger svg {
    /* The size of the SVG defines the overall size */
    height: 3em;
    /* Define the transition for transforming the SVG */
    transition: transform 600ms cubic-bezier(0.4, 0, 0.2, 1);
}

.mobile-menu-icon .line {
    fill: none;
    stroke: var(--color-main);
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 3;
    /* Define the transition for transforming the Stroke */
    transition: stroke-dasharray 600ms cubic-bezier(0.4, 0, 0.2, 1), stroke-dashoffset 600ms cubic-bezier(0.4, 0, 0.2, 1);
}

.mobile-menu-icon .line-top-bottom {
    stroke-dasharray: 12 63;
}

.mobile-menu-icon.hamburger input:checked+svg {
    transform: rotate(-45deg);
}

.mobile-menu-icon.hamburger input:checked+svg .line-top-bottom {
    stroke-dasharray: 20 300;
    stroke-dashoffset: -32.42;
}

@media only screen and (max-width: 1000px) {
    menu .right-side {
        gap: 40px;
    }
}

@media only screen and (max-width: 950px) {
    menu .logo {
        flex: 1;
        width: auto;
    }
}

@media only screen and (max-width: 850px) {
    menu {
        padding: 16px;
    }
    menu .logo {
        flex: 1;
        width: auto;
        z-index: 2;
    }
    menu .logo .mobile-logo {
        display: block !important;
        width: 40px;
    }
    .mobile-menu-icon {
        display: block;
        z-index: 1;
    }
    menu .menu-list {
        flex: 0;
    }
    menu .right-side {
        gap: 0px;
    }
    menu .right-side .nav-user-section {
        z-index: 1;
    }
    menu .menu-list ul {
        position: fixed;
        flex-flow: column;
        width: 100%;
        height: 100%;
        background: #e2d1ff;
        right: 0px;
        top: 0px;
        padding: 0px;
        padding-top: 75px !important;
        margin: 0px;
        transition: all 0.3s ease-in;
        transform: translateX(100%);
        z-index: 1;
    }
    menu .menu-list.active ul {
        border-radius: 0px;
        transition: all 0.3s ease-in;
        transform: translateX(0%);
    }
    menu .menu-list ul li {
        padding: 5px 30px;
    }
    menu .menu-list ul li a {
        font-size: 30px;
    }
    menu .right-side {
        flex-flow: row-reverse;
    }
    .language-btn {
        padding: 10px !important;
    }
    .language-btn .language-text {
        display: none;
    }
}

@media only screen and (max-width: 450px) {
    menu .logo img {
        width: 40px;
    }
}