.theme_2 #OrderTypeModal .modal-body {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

.theme_2 #OrderTypeModal .view-cart-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 110px;
    padding: 8px 18px;
    margin: 0;
    border-radius: 6px;
    border: 1px solid var(--current) !important;
    background-color: var(--current) !important;
    color: var(--bg-main) !important;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.2;
    white-space: nowrap;
    box-shadow: 0 1px 3px var(--black-shadows1f);
    transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, transform 0.15s ease;
    cursor: pointer;
}

.theme_2 #OrderTypeModal .view-cart-action:hover:not(:disabled) {
    background-color: var(--bg-main) !important;
    color: var(--current) !important;
    border-color: var(--current) !important;
}

.theme_2 #OrderTypeModal .view-cart-action:active:not(:disabled),
.theme_2 #OrderTypeModal .view-cart-action.active {
    background-color: var(--current) !important;
    color: var(--bg-main) !important;
    transform: translateY(1px) scale(0.98);
    box-shadow: 0 1px 2px var(--black-shadows1f);
}

.theme_2 #OrderTypeModal .view-cart-action:disabled,
.theme_2 #OrderTypeModal .view-cart-action[disabled] {
    opacity: 0.55;
    cursor: not-allowed;
    box-shadow: none;
    transform: none;
}

.theme_2 #LoginModal .view-cart-action:hover {
    background-color: var(--current);
    color: var(--white);
}

.theme_2 label.error {
    color: red !important;
    font-size: 14px !important;
    margin-bottom: 0;
}

.theme_2 .error-ajax {
    color: red !important;
    font-size: 14px !important;
    margin-bottom: 0;
}

.theme_2 #variantListModal #variantListModalLabel,
.theme_2 #addOnListModal #addOnListModalLabel {
    font-size: 16px !important;
    font-weight: 600 !important;
}

.theme_2 #variantListModal .modal-footer,
.theme_2 #addOnListModal .modal-footer {
    box-shadow: 0px 0px 10px var(--color29) !important;
    z-index: 1 !important;
}

.theme_2 #variantListModal .modal-footer .view-cart-action,
.theme_2 #addOnListModal .modal-footer .view-cart-action {
    padding: 6px 16px !important;
    font-size: 14px !important;
}

.page-wrapper {
    padding-top: 25px !important;
}

/* Fit the Bootstrap category column at every iframe/desktop width.
   Fixed px widths overflow the column in the embed iframe (~92vw). */
.theme_2 .menu-list-wrapper {
    position: sticky;
    top: 65px;
    width: 100% !important;
    max-width: 100%;
    box-sizing: border-box;
}

.theme_2 .fixed_menu {
    position: sticky;
    top: 65px;
    z-index: 1;
    width: 100% !important;
    max-width: 100%;
}

@media (min-width: 992px) {
    #menu2-category-sidebar-col {
        min-width: 0;
    }

    .theme_2 #main_menu_list {
        min-width: 0;
    }

    .theme_2 #menu2-category-sidebar-col .menu-list-wrapper,
    .theme_2 #menu2-category-sidebar-col .menu-list-wrap,
    .theme_2 #menu2-category-sidebar-col .menu-list-web {
        width: 100% !important;
        max-width: 100%;
        box-sizing: border-box;
    }
}

/* 992–1500: Bootstrap col-xl-3 is too narrow in the iframe. Widen the
   category column so the sidebar looks proportional without overflowing. */
@media (min-width: 992px) and (max-width: 1099px) {
    .theme_2 #menu2-category-sidebar-col {
        flex: 0 0 40%;
        max-width: 40%;
    }

    .theme_2 #main_menu_list {
        flex: 0 0 60%;
        max-width: 60%;
    }
}

@media (min-width: 1100px) and (max-width: 1199px) {
    .theme_2 #menu2-category-sidebar-col {
        flex: 0 0 38%;
        max-width: 38%;
    }

    .theme_2 #main_menu_list {
        flex: 0 0 62%;
        max-width: 62%;
    }
}

@media (min-width: 1200px) and (max-width: 1299px) {
    .theme_2 #menu2-category-sidebar-col {
        flex: 0 0 33.3333%;
        max-width: 33.3333%;
    }

    .theme_2 #main_menu_list {
        flex: 0 0 66.6667%;
        max-width: 66.6667%;
    }
}

@media (min-width: 1300px) and (max-width: 1500px) {
    .theme_2 #menu2-category-sidebar-col {
        flex: 0 0 30%;
        max-width: 30%;
    }

    .theme_2 #main_menu_list {
        flex: 0 0 70%;
        max-width: 70%;
    }
}

@media screen and (max-width: 814px) {
    .theme_2 .coupon_wrapper .item {
        width: calc((100vw - 3vw * 2) * (1 / 2.2) - 20px * (1 / 2.2 + 1));
    }
}

@media screen and (max-width: 500px) {
    .theme_2 .coupon_wrapper .item {
        width: calc(100vw * (1 / 1.2) - 20px);
        padding: 10px 5px;
        margin: 3px;
    }
}

@media screen and (max-width: 767px) {
    .theme_2 .coupon_slider {
        margin-bottom: 5px !important;
    }

    .theme_2 .d-xss-block {
        display: block !important;
    }

    .theme_2 #toggleSwitch {
        justify-content: flex-start;
        padding-top: 0;
        padding-bottom: 5px;
    }

    .theme_2 .browser-default {
        margin-bottom: 8px;
    }

    .theme_2 #addOnListModal .modal_description {
        margin-top: 0 !important;
    }

    .theme_2 #addOnListModal .modal_title {
        margin-bottom: 3px !important;
    }

    .theme_2 #addOnListModal .item_discription_main .item_name {
        max-width: 60% !important;
        word-break: break-all;
    }

    .theme_2 #addOnListModal .item_discription_main .item_price {
        max-width: 40% !important;
    }

    .nav-footer {
        background-color: var(--current) !important;
    }

    .nav-footer .bottom-action {
        display: flex !important;
        align-items: center !important;
    }

    .bottom-action-text {
        font-size: 16px !important;
        font-weight: 500 !important;
        color: var(--bg-main);
        border-right: 2px solid var(--bg-main);
        padding-right: 5px;
    }

    .bottom-action-subtext {
        margin-top: 0;
        font-size: 13px;
        font-weight: 500;
        padding-left: 3px;
        text-transform: uppercase;
        color: var(--bg-main);
    }

    .bottom-content .view-cart-action {
        background-color: var(--bg-main) !important;
        border: 1px solid var(--bg-main) !important;
        color: var(--current) !important;
        font-weight: 600 !important;
        border-radius: 10px !important;
        font-size: 13px !important;
        padding: 4px 12px !important;
        box-shadow: 0 1px 6px var(--color29);
    }

    .nav-footer .bottom-content {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
}

@media(min-width:768px) and (max-width:991px) {

    .theme_2 .page-wrapper {
        padding-top: 40px;
    }

    .theme_2 .d-xss-block {
        display: block !important;
    }

    .theme_2 .coupon_wrapper .coupon_detail .coupon_detail_item {
        min-height: 250px;
    }

    .nav-header {
        padding: 10px 15px !important;
    }
}

@media only screen and (min-width: 1024px) and (max-height: 1366px) and (orientation: landscape) {
    .theme_2 .coupon_wrapper .coupon_detail .coupon_detail_item {
        min-height: 250px;
    }

    .theme_2 .page-wrapper {
        padding-top: 50px;
    }
}

@media only screen and (min-width: 1024px) and (max-height: 1366px) and (orientation: portrait) and (-webkit-min-device-pixel-ratio: 1.5) {
    .theme_2 .coupon_wrapper .coupon_detail .coupon_detail_item {
        min-height: 236px;
    }
}

@media(min-width:1367px) {
    .coupon_wrapper .coupon_detail .coupon_detail_item {
        min-height: 230px;
    }
}

@media (min-width: 1300px) {
    .theme_2 .menu-right {
        left: 12px !important;
    }
}

@media(min-width:1761px) {
    .theme_2 .menu-right {
        left: 27px !important;
    }
}

.search-bar-wrap .input-group-text {
    border-radius: 10px 0 0 10px;
}

.search-bar-wrap .form-control {
    border-radius: 0 10px 10px 0 !important;
}

/* Container styling */
.menu-list-web {
    background-color: var(--white);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    border-radius: 10px;
    height: calc(100vh - 90px) !important;
    max-height: calc(100dvh - 90px);
}

.menu-list {
    text-align: left !important;
    overflow-y: hidden;
    margin-right: 0;
    max-height: calc(100vh - 120px) !important;
}

.menu-list-web-footer .more,
.menu-list-web-footer .less {
    position: static;
    bottom: auto;
    display: block;
    padding: 12px 18px;
    color: var(--current);
    margin: 0;
    font-weight: 600;
    font-size: 15px;
    cursor: pointer;
    pointer-events: auto;
    width: 100%;
    background: var(--white);
}

@media (min-width: 768px) and (max-width: 991px) {
    .menu-list-web {
        height: calc(100vh - 100px) !important;
        max-height: calc(100dvh - 100px);
    }

    .menu-list {
        max-height: calc(100vh - 130px) !important;
    }
}

@media (min-width: 992px) and (max-width: 1199px) {
    .menu-list-web {
        height: calc(100vh - 95px) !important;
        max-height: calc(100dvh - 95px);
    }

    .menu-list {
        max-height: calc(100vh - 125px) !important;
    }
}

@media (min-width: 1200px) {
    .menu-list-web {
        height: calc(100vh - 90px) !important;
        max-height: calc(100dvh - 90px);
    }
}

@media (max-height: 768px) {
    .menu-list-web {
        height: calc(100vh - 80px) !important;
        max-height: calc(100dvh - 80px);
    }

    .menu-list {
        max-height: calc(100vh - 110px) !important;
    }
}

@media (min-height: 769px) and (max-height: 900px) {
    .menu-list-web {
        height: calc(100vh - 88px) !important;
        max-height: calc(100dvh - 88px);
    }
}

.menu-listing {
    padding: 15px 10px 15px 5px !important;
    text-align: left !important;
}

.menu-list-wrapper .menu-listing li {
    width: 100% !important;
    color: var(--current) !important;
}

/* Individual item styling */
.menu-list-item {
    display: flex;
    align-items: center;
    margin-bottom: 10px;
}

.menu-list-link {
    display: flex;
    align-items: center;
    text-decoration: none;
    color: var(--current) !important;
    font-size: 16px;
    font-weight: 500;
    padding: 8px 10px;
    border-radius: 6px;
    width: 100%;
    transition: background-color 0.3s, color 0.3s;
    /* Smooth transition for background and text color */
}

.menu-listing a span {
    color: var(--current) !important;
}

.menu-list-link:hover,
.menu-list-link.active {
    border-radius: 10px !important;
    background-color: var(--current) !important;
    color: var(--bg-main) !important;
}

.menu-list-link:hover .category-name,
.menu-list-link:hover .item-count,
.menu-list-link.active .category-name,
.menu-list-link.active .item-count {
    color: var(--bg-main) !important;
    /* Replace var(--bg-main) with your desired color */
}

/* Icon styling */
.category-icon img {
    width: 24px;
    height: 24px;
    margin-right: 10px;
    border-radius: 5px;
    /* Optional: rounded corners */
}

/* Category name */
.category-name {
    text-transform: capitalize;
    flex: 1;
    min-width: 0;
    margin-right: 0;
    padding-right: 8px;
}

/* Item count styling */
.item-count {
    font-size: 14px;
    font-weight: 400;
    flex-shrink: 0;
    white-space: nowrap;
}

/* rtl css start */
.search-bar-wrap .input-group-text {
    border-start-end-radius: 0px !important;
    border-end-end-radius: 0px !important;
    border-start-start-radius: 10px !important;
    border-end-start-radius: 10px !important;
}

.search-bar-wrap .form-control {
    border-start-end-radius: 10px !important;
    border-end-end-radius: 10px !important;
    border-start-start-radius: 0px !important;
    border-end-start-radius: 0px !important;
}

.categories-title {
    text-align: start;
}

.category-name {
    text-align: start;
}

.bottom-action-text {
    border-inline-end: 2px solid var(--bg-main);
    border-inline-start: none;
}

.theme_2 .fixed_menu {
    top: 65px !important;
}

.theme_2 .menu-list-wrapper {
    top: 65px;
    margin-top: 0;
}

.menu-list-wrapper:after {
    display: none !important;
}

.menu-list-item {
    margin-bottom: 5px;
}

/* Webkit browsers */
/* Webkit browsers (like Chrome, Safari, Edge) */
.menu-list::-webkit-scrollbar {
    width: 1px;
    /* Set scrollbar width in pixels */
}

.menu-list::-webkit-scrollbar-track {
    background: transparent;
    /* Optional: background of scrollbar track */
}

.menu-list::-webkit-scrollbar-thumb {
    background-color: var(--white);
    /* Color of the scrollbar thumb */
    border-radius: 10px;
    /* Optional: rounded corners */
}

.theme_2 .menu-list-wrapper .menu-list-link {
    min-width: 0;
    overflow: hidden;
}

@media(max-width: 767px) {
    .right-navbar {
        justify-content: center;
        margin-bottom: 10px;
    }

    #main_menu_list {
        padding-left: 10px;
        padding-right: 10px;
    }

    .theme_2 .sticky_part {
        top: -0.5px !important;
    }
}

.categories-title {
    padding: 10px 10px 5px 18px;
    color: var(--current);
    margin: 0px;
    font-weight: 600;
    font-size: 15px;
}


html {
    scroll-behavior: auto;
}
/* start items instruction css */
/* Instruction Container */
.instruction_area{
    font-size:10px;
}

/* Add Instruction Button */
.btn-instruction{
    display:inline-flex;
    align-items:center;
    gap:6px;
    font-size:10px;
    cursor:pointer;
    font-weight:500;
    text-decoration:none;
}

.btn-instruction i{
    font-size:10px;
}

.instruction_view{
    display:flex;
    align-items:center;
    justify-content:space-between;
    background:#f6f6f6;
    border: 1px solid #e0e0e0;
    padding:6px 10px;
    border-radius:6px;
    gap:8px;
}

.instruction_text{
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
    font-weight: 500;
}

/* Delete icon */
.delete_instruction{
    flex-shrink:0;
    font-size:12px !important;
    color:#dc3545 !important;
    cursor:pointer;
}

/* Row layout */
.instruction_row{
    display:flex;
    align-items:center;
    gap:6px;
    width:100%;
}

/* Input */
.instruction_input{
    flex:1;
    height:30px;
    font-size:11px;
}

/* Character counter */
.char_counter{
    font-size:10px;
    color:#888;
    min-width:35px;
    text-align:center;
}

/* Actions */
.instruction_actions{
    display:flex;
    align-items:center;
    gap:8px;
}

/* Cancel icon */
.cancel_instruction{
    font-size:10px;
    cursor:pointer;
    color:#999;
}

/* Save button */
.btn-save{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:#28a745;
    color:#fff !important;
    border:none;
    padding:4px 10px;
    font-size:10px;
    border-radius:4px;
    cursor:pointer;
    text-decoration:none;
    white-space:nowrap;
    height:28px;
}

.btn-save:hover{
    background:#23913d;
    color:#fff;
}

.tooltip_box{
    position:relative;
    cursor:pointer;
}

.tooltip_text{
    visibility:hidden;
    position:absolute;
    bottom:120%;
    left:0;
    background:#333;
    color:#fff;
    font-size:12px;
    padding:6px 8px;
    border-radius:4px;
    white-space:normal;
    width:220px;
    z-index:10;
}

.tooltip_box:hover .tooltip_text{
    visibility:visible;
}
/* end items instruction css */

/* Preorder Notes */
.preorder_note_wrap {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    box-sizing: border-box;
    padding: 8px 16px 0;
    background: var(--bg-main);
}

/* Desktop: header is position:fixed (~55px). Offset sits under the header
   so the note is visible; wrap uses page bg so no white strip shows. */
@media (min-width: 768px) {
    .preorder_note_wrap {
        padding: 62px 16px 0;
    }
}

.preorder_note {
    display: block;
    width: fit-content;
    max-width: min(720px, 100%);
    margin: 0 auto;
    padding: 8px 0px;
    background: transparent;
    /* color: var(--bg-main) !important;
    border-radius: 10px; */
    border: none;
    /* box-shadow: 0 2px 10px var(--black-shadows1f); */
    box-sizing: border-box;
    z-index: 1;
}

.preorder_note__inner {
    display: flex;
    align-items: center;
    gap: 2px;
    padding: 0;
    background: transparent;
    border: none;
    border-radius: 0;
    box-shadow: none;
}

.preorder_note__icon {
    flex-shrink: 0;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: transparent;
    color: #dc2626 !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-shadow: none;
}

.preorder_note__icon i {
    font-size: 14px;
    line-height: 1;
}

.preorder_note__text {
    margin: 0;
    padding: 0;
    flex: 1 1 auto;
    min-width: 0;
    color: #dc2626 !important;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.45;
    text-align: start;
    overflow-wrap: break-word;
    word-wrap: break-word;
    word-break: break-word;
}

.preorder_note_wrap ~ .page-wrapper,
body.menu2-theme .preorder_note_wrap ~ .page-wrapper,
body.menu2-theme .preorder_note_wrap ~ .page-wrapper.theme_2 {
    padding-top: 0 !important;
}

.preorder_note_wrap ~ .page-wrapper > .content,
body.menu2-theme .preorder_note_wrap ~ .page-wrapper > .content {
    padding-top: 4px !important;
}

.preorder_note_wrap ~ .page-wrapper .theme_cupoun_row {
    padding-top: 4px !important;
}

@media (max-width: 991px) {
    .preorder_note {
        padding: 8px 16px;
    }
}

@media (max-width: 767px) {
    .preorder_note_wrap {
        padding: 8px 12px 0;
        background: var(--bg-main);
    }

    .preorder_note {
        width: 100%;
        max-width: 100%;
        margin: 0;
        padding: 0;
        /* padding: 8px 12px;
        border-radius: 10px;
        box-shadow: 0 1px 4px var(--black-shadows, rgba(0, 0, 0, 0.08)); */
    }

    .preorder_note__inner {
        align-items: flex-start;
        gap: 8px;
    }

    .preorder_note__icon {
        width: 20px;
        height: 20px;
        margin-top: 0;
    }

    body.menu2-theme .preorder_note_wrap ~ .page-wrapper,
    body.menu2-theme .preorder_note_wrap ~ .page-wrapper.theme_2,
    .preorder_note_wrap ~ .page-wrapper {
        padding-top: 0 !important;
    }

    body.menu2-theme .preorder_note_wrap ~ .page-wrapper > .content,
    .preorder_note_wrap ~ .page-wrapper > .content {
        padding-top: 6px !important;
    }

    .preorder_note_wrap ~ .page-wrapper .theme_cupoun_row {
        padding-top: 4px !important;
    }
}

@media (max-width: 575px) {
    .preorder_note_wrap {
        padding: 8px 8px 0;
    }
/* 
    .preorder_note {
        padding: 8px 10px;
        border-radius: 10px;
    } */
}

/* Font sizes scale up with resolution */
@media (min-width: 375px) {
    .preorder_note__icon i {
        font-size: 18px;
    }

    .preorder_note__text {
        font-size: 15px;
    }
}

@media (min-width: 992px) {
    .preorder_note__icon i {
        font-size: 15px;
    }

    .preorder_note__text {
        font-size: 14px;
    }
}

@media (min-width: 1200px) {
    .preorder_note__icon i {
        font-size: 16px;
    }

    .preorder_note__text {
        font-size: 15px;
    }
}

@media (min-width: 1400px) {
    .preorder_note__icon i {
        font-size: 17px;
    }

    .preorder_note__text {
        font-size: 16px;
    }
}