/*@media only screen and (max-width:  768px){
    .orders-filters{
        display: none;
    }
}

@media only screen and (max-width:  991px){
    .orders-filters{
        display: none;
    }
}*/
html, body {
    overflow-x: hidden;
    max-width: 100%;
    font-family: 'Work Sans', sans-serif !important;
}

/* Css for menu items images*/
.card-img-top{
    height: 242.2px;
    width: 100%;
    object-fit: cover;
}

.img-fluid{
 width: 100%;
 height: 200px;
 object-fit: cover;
}

.fileinput .img-thumbnail > img{
    width: 100%;
    height: 189.83px !important;
    object-fit: cover;
}

.img-fluid{
    height: 195.41px !important;
    object-fit: cover !important;
    width: 100% !important;
}

#modalImg{
    width: 100%;
    height: 251.52px;
    object-fit: cover;
}

/* here is css for modifier tabs starts */

#readMoreBtn {
    color: #007bff;
    cursor: pointer;
    text-decoration: underline;
}

#readMoreBtn:hover {
    text-decoration: none;
}


#modifierTabs .nav-item {
    margin-bottom: 10px;
}

#modifierTabsContent {
    overflow-y: auto;
    max-height: 400px;
    padding-left: 20px;
}

.modifierTabs .nav-item a{
    background-image: linear-gradient(310deg, #7928CA 0%, #FF0080 100%);
    color: #FFFFFF;
    font-family: 'Work Sans', sans-serif !important;
    border-top-left-radius:0px !important;
    border-top-right-radius:0px !important;
}

.modifierTabs {
    border-bottom: none !important;
}

.modifier-content {
    margin-bottom: 20px;
}

.modifier-items label {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.modifier-items .btn {
    margin: 0 5px;
}

/* here is css for modifier tabs ends */
.grayscale-05:before{
  position: absolute;
    z-index: 0;
    width: 100%;
    height: 100%;
    display: block;
    left: 0;
    top: 0;
    content: "";
    background-color: rgba(0, 0, 0, .4)
}

a {
  color: #32325d;
  text-decoration: none;
  background-color: transparent;
}

a:hover {
  color: #32325d;
  text-decoration: none;
  background-color: transparent;
}

@media only screen and (max-width:  768px){
    .pos-logo{
        width: 100%;
    }
    .card-status-history-driver{
        display: none;
    }

    .orders-filters{
        display: none;
    }

    .table-web{
        display: none;
    }
    .copyright{
        text-align: center;
    }
}

/*@media only screen and (min-width: 992px){
    .table-mobile{
        display: none;
    }
}*/

#hide-filters{
    display: none;
}

.timeline
{
    position: relative;
}
.timeline:before
{
    position: absolute;
    top: 0;
    left: 1rem;

    height: 100%;

    content: '';

    border-right: 2px solid #e9ecef;
}

[data-timeline-axis-style='dashed']:before
{
    border-right-style: dashed !important;
}

[data-timeline-axis-style='dotted']:before
{
    border-right-style: dotted !important;
}

.timeline-block
{
    position: relative;

    margin: 2em 0;
}
.timeline-block:after
{
    display: table;
    clear: both;

    content: '';
}
.timeline-block:first-child
{
    margin-top: 0;
}
.timeline-block:last-child
{
    margin-bottom: 0;
}

.timeline-step
{
    font-size: 1rem;
    font-weight: 600;

    position: absolute;
    z-index: 1;
    left: 0;

    display: inline-flex;

    width: 33px;
    height: 33px;

    transform: translateX(-50%);
    text-align: center;

    border-radius: 50%;

    align-items: center;
    justify-content: center;
}
.timeline-step svg,
.timeline-step i
{
    line-height: 1.4;
}

.timeline-step-icon
{
    border: 2px solid #e9ecef;
    background: #fff;
}

.timeline-step-xs
{
    font-size: .75rem;

    width: 17px;
    height: 17px;
}

.timeline-step-sm
{
    font-size: .75rem;

    width: 23px;
    height: 23px;
}

.timeline-step-lg
{
    font-size: 1.75rem;

    width: 47px;
    height: 47px;
}

.timeline-content
{
    position: relative;
    position: relative;
    top: -6px;

    margin-left: 60px;
    padding-top: .5rem;
}
.timeline-content:after
{
    display: table;
    clear: both;

    content: '';
}

.timeline-body
{
    padding: 1.5rem;
}

@media (min-width: 992px)
{
    .timeline:before
    {
        left: 50%;

        margin-left: -2px;
    }
    .timeline-step
    {
        left: 50%;
    }
    .timeline-content
    {
        width: 38%;
    }
    .timeline-body
    {
        padding: 1.5rem;
    }
    .timeline-block:nth-child(even) .timeline-content
    {
        float: right;
    }
    [data-timeline-axis-color='primary']:before
    {
        border-color: #5e72e4;
    }
    [data-timeline-axis-color='secondary']:before
    {
        border-color: #f7fafc;
    }
    [data-timeline-axis-color='success']:before
    {
        border-color: #2dce89;
    }
    [data-timeline-axis-color='info']:before
    {
        border-color: #11cdef;
    }
    [data-timeline-axis-color='warning']:before
    {
        border-color: #fb6340;
    }
    [data-timeline-axis-color='danger']:before
    {
        border-color: #f5365c;
    }
    [data-timeline-axis-color='light']:before
    {
        border-color: #adb5bd;
    }
    [data-timeline-axis-color='dark']:before
    {
        border-color: #212529;
    }
    [data-timeline-axis-color='default']:before
    {
        border-color: #172b4d;
    }
    [data-timeline-axis-color='white']:before
    {
        border-color: #fff;
    }
    [data-timeline-axis-color='neutral']:before
    {
        border-color: #fff;
    }
    [data-timeline-axis-color='darker']:before
    {
        border-color: black;
    }
}

.timeline-one-side:before
{
    left: 1rem;
    display:inline-block;
}

.timeline-one-side .timeline-step
{
    left: 1rem;
}

.timeline-one-side .timeline-content
{
    width: auto;
}

@media (min-width: 992px)
{
    .timeline-one-side .timeline-content
    {
        max-width: 30rem;
    }
}

.timeline-one-side .timeline-block:nth-child(even) .timeline-content
{
    float: none;
}

.custom-nav{
    background-color: #fff;
    background: rgba(255, 255, 255, 0.95);
    -webkit-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.5);
            box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.5);
    z-index: 9999;
}
.select2 {
    min-width: max-content !important;
}

.sidenav-cart {
    height: 100%;
    width: 100%;
    position: fixed;
    z-index: 1;
    top: 0;
    right: 0;
    background-color: #fff;
    overflow-x: hidden;
    transition: 0.5s;
    padding-top: 60px;
    /*opacity: 0.95;*/
    background: rgba(255, 255, 255, 0.95);
    -webkit-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.5);
            box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.5);
    z-index: 9999;
  }

  #cartList{
    overflow-y: auto;
    max-height: 470px;
  }

  #new_address_checkout_body{
    overflow-y: auto;
    max-height: 600px;
  }

  .sidenav-cart-open{
      display: block;
  }

  .sidenav-cart-close{
      display: none;
  }

  .sidenav-cart a {
    padding: 8px 8px 8px 32px;
    text-decoration: none;
    font-size: 25px;
    color: #818181;
    display: block;
    transition: 0.3s;
  }

  .sidenav-cart a:hover {
    color: #f1f1f1;
  }

  .sidenav-cart .closebtn {
    position: absolute;
    top: 0;
    right: 25px;
    font-size: 36px;
    margin-left: 50px;
  }

  /*@media screen and (max-height: 450px) {
    .sidenav-cart {padding-top: 15px;}
    .sidenav-cart a {font-size: 18px;}
  }*/

@media (min-width: 576px)
{
    .sidenav-cart
    {
        max-width: 430px;
    }
}
@media (min-width: 768px)
{
    .sidenav-cart
    {
        max-width: 430px;
    }
}
@media (min-width: 992px)
{
    .sidenav-cart
    {
        max-width: 430px;
    }
}
@media (min-width: 1200px)
{
    .sidenav-cart
    {
        max-width: 430px;
    }
}


 .minicart-content .minicart-heading > h4 {
    margin-bottom: 0;
    padding-bottom: 25px;
  }

.minicart-content .minicart-list {
    max-height: 310px;
    position: relative;
    overflow: auto;
  }

  .minicart-content .minicart-list > li {
    padding-bottom: 30px;
  }

.minicart-content .minicart-list > li:last-child {
    padding-bottom: 0;
  }

.minicart-content .minicart-list > li.minicart-product {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }

  .minicart-content .minicart-list > li.minicart-product > a.product-item_remove {
    position: absolute;
    right: 15px;
  }

.minicart-content .minicart-list > li.minicart-product .product-item_img {
    -webkit-flex-basis: 70px;
    -ms-flex-preferred-size: 70px;
    flex-basis: 70px;
    max-width: 70px;
  }

 .minicart-content .minicart-list > li.minicart-product .product-item_content {
    -webkit-flex-basis: calc(100% - 70px);
    -ms-flex-preferred-size: calc(100% - 70px);
    flex-basis: calc(100% - 70px);
    max-width: calc(100% - 70px);
    padding-left: 20px;
    padding-right: 10px;
  }

  @media (max-width: 479px) {
    .minicart-content .minicart-list > li.minicart-product .product-item_content a.product-item_title {
      font-size: 14px;
    }
  }

  .minicart-content .minicart-list > li.minicart-product .product-item_content .product-item_quantity {
    display: block;
    padding-top: 10px;
  }
  /*.offcanvas-menu-inner{*/
  /*  padding: 0 52px 0 52px;*/
  /*}*/

.glyphicon-lg{
    font-size:4em
}

.info-block{
    border-right:5px solid #E6E6E6;margin-bottom:25px
}

.info-block .square-box{
    width:100px;
    /*min-height:90px;*/
    min-height:105px;
    height: 80px;
    margin-right:22px;
    text-align:center!important;
    background-color:#676767;
    /*padding:20px 0*/
}

.info-block.block-info{
    border-color: #5e72e4;
}

.info-block.block-info .square-box{
    background-color:#5e72e4;color:#FFF
}

.btn-cart{
    color: #5e72e4 !important;
}

.btn-cart:hover{
    color: #212529 !important;
    border-color: white !important;
    background-color: white !important;
}


/*-------- 2.3 Strip item --------*/
.strip {
    position: relative;
    margin-bottom: 30px;
  }
  .strip figure {
    margin-bottom: 5px;
    overflow: hidden;
    position: relative;
    height: 200px;
    background-color: #ededed;
  }

  .strip_city figure {
    margin-bottom: 5px;
    overflow: hidden;
    position: relative;
    height: 300px;
    background-color: #ededed;
  }

  .strip figure img {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%) scale(1);
    -moz-transform: translate(-50%, -50%) scale(1);
    -ms-transform: translate(-50%, -50%) scale(1);
    -o-transform: translate(-50%, -50%) scale(1);
    transform: translate(-50%, -50%) scale(1);
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -ms-backface-visibility: hidden;
    -o-backface-visibility: hidden;
    backface-visibility: hidden;
    width: 100%;
    z-index: 1;
    -moz-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    -webkit-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
  .strip figure:hover img {
    -webkit-transform: translate(-50%, -50%) scale(1.1);
    -moz-transform: translate(-50%, -50%) scale(1.1);
    -ms-transform: translate(-50%, -50%) scale(1.1);
    -o-transform: translate(-50%, -50%) scale(1.1);
    transform: translate(-50%, -50%) scale(1.1);
  }

  .strip figure a.strip_info {
    position: absolute;
    left: 0;
    bottom: 0;
    right: 0;
    height: 100%;
    width: 100%;
    z-index: 5;
    display: block;
  }
  .strip figure a.strip_info > small {
    position: absolute;
    background-color: black;
    background-color: black;
    left: 15px;
    top: 15px;
    text-transform: uppercase;
    color: #fff;
    font-weight: 600;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    border-radius: 3px;
    padding: 6px 8px 4px 8px;
    line-height: 1;
    font-size: 11px;
    font-size: 0.6875rem;
  }
  .strip figure .item_title {
    width: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    padding: 65px 15px 10px 15px;

  }
  .strip figure .item_title h3 {
    font-size: 16px;
    font-size: 1rem;
    margin: 0;
    font-weight: 500;
    color: #fff;
    margin: 0;
    padding: 0;
    line-height: 1;
  }

  .strip_item_title h3 {
    font-size: 16px;
    font-size: 1rem;
    margin: 0;
    font-weight: 500;
    color: #fff;
    margin: 0;
    padding: 0;
    line-height: 1;
  }

  .strip figure .item_title small {
    font-weight: 500;
    line-height: 1;
    font-size: 13px;
    font-size: 0.8125rem;
    color: rgba(255, 255, 255, 0.8);
  }
  .strip ul {
    padding: 0;
    margin: 0;
  }
  .strip ul li {
    display: inline-block;
    padding-top: 12px;
    font-size: 13px;
    font-size: 0.8125rem;
  }
  .strip ul li:last-child {
    padding: 0;
    float: right;
  }

  .ribbon {
    color: #fff;
    display: inline-block;
    font-size: 12px;
    font-size: 0.75rem;
    line-height: 1;
    position: absolute;
    top: 12px;
    right: 15px;
    padding: 7px 8px 4px 8px;
    font-weight: 600;
    min-width: 40px;
    z-index: 9;
  }
  .ribbon.off {
    background-color: #ff3300;
  }

  .score strong {
    background-color: #f0f0f0;
    line-height: 1;
    -webkit-border-radius: 5px 5px 5px 0;
    -moz-border-radius: 5px 5px 5px 0;
    -ms-border-radius: 5px 5px 5px 0;
    border-radius: 5px 5px 5px 0;
    padding: 10px 10px 8px 10px;
    display: inline-block;
    font-size: 15px;
    font-size: 0.9375rem;
  }
  .score span {
    display: inline-block;
    position: relative;
    top: 7px;
    margin-right: 8px;
    font-size: 12px;
    font-size: 0.75rem;
    text-align: right;
    line-height: 1.1;
    font-weight: 500;
  }
  .score span em {
    display: block;
    font-weight: normal;
    font-size: 11px;
    font-size: 0.6875rem;
  }

  .loc_open, .loc_closed {
    position: relative;
    top: -2px;
    font-size: 12px;
    font-size: 0.75rem;
    font-weight: 500;
    padding: 2px 8px;
    line-height: 1;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    border-radius: 3px;
  }

  .loc_open {
    color: #32a067;
    border: 1px solid #32a067;
  }

  .loc_closed {
    color: #eb5c65;
    border: 1px solid #eb5c65;
  }

  .take, .deliv {
    font-size: 12px;
    font-size: 0.75rem;
    position: relative;
    padding-left: 20px;
    margin-right: 10px;
    font-weight: 500;
    color: #444;
  }
  .take:before, .deliv:before {
    font-size: 16px;
    font-size: 1rem;
    font-family: "ElegantIcons";
    content: "\e013";
    position: absolute;
    line-height: 1;
    font-weight: normal;
  }
  .take.no, .deliv.no {
    text-decoration: line-through;
    color: #bbb;
  }

  .take:before {
    content: "\e013";
    left: 0;
    top: -1px;
  }
  .take.no {
    text-decoration: line-through;
    color: #bbb;
  }

  .deliv {
    padding-left: 30px;
    margin-right: 0;
  }
  .deliv:before {
    font-size: 24px;
    font-size: 1.5rem;
    font-family: 'food';
    content: '\0074';
    left: 0;
    top: -4px;
  }

/*Mobile menu front*/
.mobile-menu{
    display: none;
}

@media (max-width: 991.98px){
    .mobile-menu{
        display: block;
    }

    .web-menu{
        display: none;
    }
}

.masthead {
    height: 400px;
    min-height: 400px;
    /*background-image: url('https://source.unsplash.com/BtbjCFUvBXs/1920x1080');*/
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }

.avatar-custom{
    font-size: 1rem;

    display: inline-flex;

    width: 48px;
    height: 48px;

    color: #fff;

    background-color: #adb5bd;

    align-items: center;
    justify-content: center;
}

.avatar-custom img{
    width: 100%;
}

#map_location, #map_area{
    height: 500px !important;
    width: 100% !important;
}

#map2{
    height: 400px !important;
    width: 100% !important;
}

#map3{
    height: 220px !important;
    width: 100% !important;
}

.container-pages, #container-restorant{
    min-height: 300px !important;
}

#address-complete-order{
    padding-top: 45px;
}

[v-cloak] {
    display: none;
}

.container-payment{
    min-height: 550px !important;
}

.payment-image {
    transition: transform .2s; /* Animation */
    margin: 0 auto;
  }

.payment-image:hover {
    transform: scale(1.3); /* (150% zoom - Note: if the zoom is too large, it will go outside of the viewport) */
    cursor: pointer;
  }


  .blob {
    background: black;
    border-radius: 50%;
    box-shadow: 0 0 0 0 rgba(0, 0, 0, 1);
    margin: 10px;
    height: 10px;
    width: 10px;
    transform: scale(1);
    animation: pulse-black 2s infinite;
  }

  .blob.red {
    background: rgba(255, 82, 82, 1);
    box-shadow: 0 0 0 0 rgba(255, 82, 82, 1);
    animation: pulse-red 2s infinite;
  }

  .blob.redstatic {
    background: rgba(255, 82, 82, 1);
    box-shadow: 0 0 0 0 rgba(255, 82, 82, 1);
  }

  @keyframes pulse-red {
    0% {
      transform: scale(0.95);
      box-shadow: 0 0 0 0 rgba(255, 82, 82, 0.7);
    }

    70% {
      transform: scale(1);
      box-shadow: 0 0 0 10px rgba(255, 82, 82, 0);
    }

    100% {
      transform: scale(0.95);
      box-shadow: 0 0 0 0 rgba(255, 82, 82, 0);
    }
  }

  .blob.green {
    background: rgba(51, 217, 178, 1);
    box-shadow: 0 0 0 0 rgba(51, 217, 178, 1);
    animation: pulse-green 2s infinite;
  }

  .blob.greenstatic {
    background: rgba(51, 217, 178, 1);
    box-shadow: 0 0 0 0 rgba(51, 217, 178, 1);
  }

  @keyframes pulse-green {
    0% {
      transform: scale(0.95);
      box-shadow: 0 0 0 0 rgba(51, 217, 178, 0.7);
    }

    70% {
      transform: scale(1);
      box-shadow: 0 0 0 10px rgba(51, 217, 178, 0);
    }

    100% {
      transform: scale(0.95);
      box-shadow: 0 0 0 0 rgba(51, 217, 178, 0);
    }
  }


  .blob.orange {
    background: rgba(255, 121, 63, 1);
    box-shadow: 0 0 0 0 rgba(255, 121, 63, 1);
    animation: pulse-orange 2s infinite;
  }
  .blob.orangestatic {
    background: rgba(255, 121, 63, 1);
    box-shadow: 0 0 0 0 rgba(255, 121, 63, 1);
  }

  @keyframes pulse-orange {
    0% {
      transform: scale(0.95);
      box-shadow: 0 0 0 0 rgba(255, 121, 63, 0.7);
    }

    70% {
      transform: scale(1);
      box-shadow: 0 0 0 10px rgba(255, 121, 63, 0);
    }

    100% {
      transform: scale(0.95);
      box-shadow: 0 0 0 0 rgba(255, 121, 63, 0);
    }
  }


  /**
 * The CSS shown here will not be introduced in the Quickstart guide, but shows
 * how you can use CSS to style your Element's container.
 */
.StripeElement {
  box-sizing: border-box;

  height: 40px;

  padding: 10px 12px;

  border: 1px solid transparent;
  border-radius: 4px;
  background-color: white;

  box-shadow: 0 1px 3px 0 #e6ebf1;
  -webkit-transition: box-shadow 150ms ease;
  transition: box-shadow 150ms ease;
}

.StripeElement--focus {
  box-shadow: 0 1px 3px 0 #cfd7df;
}

.StripeElement--invalid {
  border-color: #fa755a;
}

.StripeElement--webkit-autofill {
  background-color: #fefde5 !important;
}


#address_map, #new_address_map {
    height: 280px;
}

/*Pagination mobile responsive*/
@media screen and ( max-width: 520px ){

    li.page-item {

        display: none;
    }

    .page-item:first-child,
    .page-item:last-child,
    .page-item.active {

        display: block;
    }
}
/*Pagination mobile responsive end here*/

/*Restaurant content*/
/*#restaurant-content{
    min-height: 350px !important;
}

@media screen and ( max-width: 520px ){
    #restaurant-content{
        min-height: 650px !important;
        margin: auto;
    }
}*/

/* Make restaurant-content section full width - matching home page style */
#restaurant-content {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    position: relative;
    box-sizing: border-box;
}

/* Override Bootstrap container constraints at all breakpoints - FULL WIDTH */
/* Target both .container and .container-restorant with maximum specificity */
#restaurant-content .container.container-restorant,
#restaurant-content .container-restorant.container,
#restaurant-content .container,
#restaurant-content .container-restorant,
section#restaurant-content .container.container-restorant,
section#restaurant-content .container-restorant.container,
section#restaurant-content .container,
section#restaurant-content .container-restorant,
#restaurant-content section .container.container-restorant,
#restaurant-content section .container-restorant.container,
#restaurant-content section .container,
#restaurant-content section .container-restorant {
    max-width: 100vw !important;
    width: 100vw !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

/* Add padding to inner elements instead of container - but NOT slider rows */
#restaurant-content .container-restorant > nav.tabbable {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

#restaurant-content .container-restorant > div[id] {
    padding-left: 1.25rem !important;
    padding-right: 1.25rem !important;
}

/* Override at all media query breakpoints - FULL WIDTH */
@media (min-width: 576px) {
    #restaurant-content .container.container-restorant,
    #restaurant-content .container-restorant.container,
    #restaurant-content .container,
    #restaurant-content .container-restorant,
    section#restaurant-content .container.container-restorant,
    section#restaurant-content .container-restorant.container,
    section#restaurant-content .container,
    section#restaurant-content .container-restorant {
        max-width: 100vw !important;
        width: 100vw !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        padding: 0 !important;
    }
    #restaurant-content .container-restorant > nav.tabbable {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    #restaurant-content .container-restorant > div[id] {
        padding-left: 1.25rem !important;
        padding-right: 1.25rem !important;
    }
}

@media (min-width: 768px) {
    #restaurant-content .container.container-restorant,
    #restaurant-content .container-restorant.container,
    #restaurant-content .container,
    #restaurant-content .container-restorant,
    section#restaurant-content .container.container-restorant,
    section#restaurant-content .container-restorant.container,
    section#restaurant-content .container,
    section#restaurant-content .container-restorant {
        max-width: 100vw !important;
        width: 100vw !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        padding: 0 !important;
    }
    #restaurant-content .container-restorant > nav.tabbable {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    #restaurant-content .container-restorant > div[id] {
        padding-left: 1.5rem !important;
        padding-right: 1.5rem !important;
    }
}

@media (min-width: 992px) {
    #restaurant-content .container.container-restorant,
    #restaurant-content .container-restorant.container,
    #restaurant-content .container,
    #restaurant-content .container-restorant,
    section#restaurant-content .container.container-restorant,
    section#restaurant-content .container-restorant.container,
    section#restaurant-content .container,
    section#restaurant-content .container-restorant {
        max-width: 100vw !important;
        width: 100vw !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        padding: 0 !important;
    }
    #restaurant-content .container-restorant > nav.tabbable {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    #restaurant-content .container-restorant > div[id] {
        padding-left: 2rem !important;
        padding-right: 2rem !important;
    }
}

@media (min-width: 1200px) {
    #restaurant-content .container.container-restorant,
    #restaurant-content .container-restorant.container,
    #restaurant-content .container,
    #restaurant-content .container-restorant,
    section#restaurant-content .container.container-restorant,
    section#restaurant-content .container-restorant.container,
    section#restaurant-content .container,
    section#restaurant-content .container-restorant {
        max-width: 100vw !important;
        width: 100vw !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        padding: 0 !important;
    }
    #restaurant-content .container-restorant > nav.tabbable {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    #restaurant-content .container-restorant > div[id] {
        padding-left: 2rem !important;
        padding-right: 2rem !important;
    }
}

/* Ensure all child elements respect full width */
#restaurant-content .row {
    margin-left: 0 !important;
    margin-right: 0 !important;
}

#restaurant-content [class*="col-"] {
    padding-left: 0.75rem;
    padding-right: 0.75rem;
}

/* CRITICAL: Override Bootstrap's row flex-wrap for category rows on desktop */
@media (min-width: 992px) {
    #restaurant-content .container-restorant > .row:not(.tabbable):not(.sticky),
    #restaurant-content div[id] + .row {
        flex-wrap: nowrap !important;
    }
}


/* Restaurant menu category sliders - Horizontal on desktop, Grid on mobile */
/* SIMPLE DIRECT APPROACH: Target all rows in restaurant-content that contain menu items */
/* Works for ALL restaurants - no hardcoded category names */

/* Target rows that come after category heading divs (div with id attribute) */
/* Also target rows inside container-restorant that are NOT navigation */
#restaurant-content div[id] + .row,
#restaurant-content .container-restorant > .row:not(.tabbable):not(.sticky) {
    display: flex !important;
    flex-direction: row !important;
    overflow-x: auto !important;
    overflow-y: visible !important;
    gap: 1.5rem !important;
    padding: 0.5rem 0 !important;
    scroll-behavior: smooth;
    scrollbar-width: none;
    -ms-overflow-style: none;
    flex-wrap: nowrap !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

/* Hide scrollbar */
#restaurant-content div[id] + .row::-webkit-scrollbar,
#restaurant-content .container-restorant > .row:not(.tabbable):not(.sticky)::-webkit-scrollbar {
    display: none;
}

/* Menu item cards in slider - fixed width on desktop */
@media (min-width: 992px) {
    #restaurant-content div[id] + .row > [class*="col-"],
    #restaurant-content .container-restorant > .row:not(.tabbable):not(.sticky) > [class*="col-"] {
        flex: 0 0 280px !important;
        min-width: 280px !important;
        max-width: 280px !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        width: 280px !important;
    }
}

/* Large desktop (1200px+) - slightly larger cards */
@media (min-width: 1200px) {
    #restaurant-content div[id] + .row > [class*="col-"],
    #restaurant-content .container-restorant > .row:not(.tabbable):not(.sticky) > [class*="col-"] {
        flex: 0 0 300px !important;
        min-width: 300px !important;
        max-width: 300px !important;
        width: 300px !important;
    }
}

/* Mobile - keep grid layout */
@media (max-width: 991.98px) {
    #restaurant-content div[id] + .row,
    #restaurant-content .container-restorant .row:not(nav):not(.tabbable):not(.sticky) {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: wrap !important;
        overflow-x: visible !important;
        gap: 1rem !important;
    }
    
    #restaurant-content div[id] + .row > [class*="col-"],
    #restaurant-content .container-restorant > .row:not(.tabbable):not(.sticky) > [class*="col-"] {
        flex: 0 0 auto !important;
        min-width: auto !important;
        max-width: 100% !important;
        width: auto !important;
        padding-left: 0.75rem !important;
        padding-right: 0.75rem !important;
    }
}

/* Make restaurant title section full width */
section.section.pt-lg-0.mb--5.mt--9.d-none.d-md-none.d-lg-block.d-lx-block {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

section.section.pt-lg-0.mb--5.mt--9.d-none.d-md-none.d-lg-block.d-lx-block .container {
    max-width: 100% !important;
    width: 100% !important;
    padding-left: 15px;
    padding-right: 15px;
}

/*Restaurant content end here*/

#clear_area{
    display: none;
}

#search_location:hover{
    color: #ec0c38;
}

.search-icon {
  display: inline;
  vertical-align: text-bottom;
  min-width: 10px;
  margin-right: 20px;
}

.search {
  color: #b80d55;
  fill: #b80d55;
}

.pac-container {
    background-color: #FFF;
    z-index: 100001 !important;
    position: absolute !important;
    display: block !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3) !important;
    border-radius: 4px !important;
    margin-top: 2px !important;
    font-family: Roboto, Arial, sans-serif !important;
    font-size: 15px !important;
    overflow: visible !important;
}

.pac-item {
    padding: 10px 12px !important;
    cursor: pointer !important;
    border-top: 1px solid #e6e6e6 !important;
}

.pac-item:first-child {
    border-top: none !important;
}

.pac-item:hover {
    background-color: #f1f1f1 !important;
}

.pac-item-selected {
    background-color: #e6e6e6 !important;
}

.pac-icon {
    width: 15px;
    height: 20px;
    margin-right: 8px;
    margin-top: 6px;
    display: inline-block;
    vertical-align: top;
    background-image: url(https://maps.gstatic.com/mapfiles/api-3/images/autocomplete-icons.png);
    background-size: 34px;
}
.modal{
    z-index: 100001;
}
.modal-backdrop{
    z-index: 100000;
}

.sticky {
    position: -webkit-sticky;
    position: sticky;
    top: 88px;
    z-index: 1000;
  }

  @media only screen and (max-width: 950px) {
    .sticky {
      top: 70px;
    }
 }


.nav-item-category{
    padding-bottom: 10px;
    padding-top: 8px;
}

.tabbable .nav-pills {
    overflow-x: auto;
    overflow-y: hidden;
    flex-wrap: nowrap;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
 }
 .tabbable .nav-pills .nav-link {
   white-space: nowrap;
 }

 .callOutShoppingButtonBottom {
    position: fixed;
    bottom: 0px;
    right: 20px;
    z-index: 1000;
 }


  .btn-time-to-prepare{
    margin-top: 5px;
    width: 69px !important;
  }

  .city_title{
    position: absolute;
    bottom: 0px;
    left: 0px;
    margin: 16px;
    font-size: 1.5rem;
  }

  .city_letter{
    position: absolute;
    bottom: 0px;
    display: block;
    left: 0px;
    margin-left: -16px;
    margin-bottom: -90px;
    font-size: 14rem;
    font-weight:700;
    font-family: sans-serif;
  }

  .strip figure .city_letter {
    opacity: 0%;
    text-transform:uppercase;
    transition:opacity 0.8s;
    z-index: 1;
  }

  .strip figure:hover .city_letter {
    opacity: 70%;

    transition:opacity 0.8s
  }



  .strip figure .city_title {
    opacity: 100%;
    transition:opacity 0.8s;
    z-index: 1;
  }
  .strip figure:hover .city_title {
    opacity: 50%;
    transition:opacity 0.8s
  }

  .super_title {
    font-size: 11rem;
    opacity: 6%;
    margin-top: -11rem;
    padding: 0;
    margin-bottom: -5.8rem;
  }

  #form-group-price_fixed, #form-group-price_percentage, #promo_code_succ, #promo_code_war{
      display: none;
  }

  #form-group-page_id, #form-group-vendor_id{
    display: none;
  }


/*Swall icon on success order*/

@-webkit-keyframes swal2-show{
    0%{
        -webkit-transform:scale(.7);
        transform:scale(.7)
    }
    45%{
        -webkit-transform:scale(1.05);
        transform:scale(1.05)
    }
    80%{
        -webkit-transform:scale(.95);
        transform:scale(.95)
    }
    100%{
        -webkit-transform:scale(1);
        transform:scale(1)
    }
}
@keyframes swal2-show{
    0%{
        -webkit-transform:scale(.7);
        transform:scale(.7)
    }
    45%{
        -webkit-transform:scale(1.05);
        transform:scale(1.05)
    }
    80%{
        -webkit-transform:scale(.95);
        transform:scale(.95)
    }
    100%{
        -webkit-transform:scale(1);
        transform:scale(1)
    }
}
@-webkit-keyframes swal2-hide{
    0%{
        -webkit-transform:scale(1);
        transform:scale(1);
        opacity:1
    }
    100%{
        -webkit-transform:scale(.5);
        transform:scale(.5);
        opacity:0
    }
}
@keyframes swal2-hide{
    0%{
        -webkit-transform:scale(1);
        transform:scale(1);
        opacity:1
    }
    100%{
        -webkit-transform:scale(.5);
        transform:scale(.5);
        opacity:0
    }
}
@-webkit-keyframes swal2-animate-success-line-tip{
    0%{
        top:1.1875em;
        left:.0625em;
        width:0
    }
    54%{
        top:1.0625em;
        left:.125em;
        width:0
    }
    70%{
        top:2.1875em;
        left:-.375em;
        width:3.125em
    }
    84%{
        top:3em;
        left:1.3125em;
        width:1.0625em
    }
    100%{
        top:2.8125em;
        left:.875em;
        width:1.5625em
    }
}
@keyframes swal2-animate-success-line-tip{
    0%{
        top:1.1875em;
        left:.0625em;
        width:0
    }
    54%{
        top:1.0625em;
        left:.125em;
        width:0
    }
    70%{
        top:2.1875em;
        left:-.375em;
        width:3.125em
    }
    84%{
        top:3em;
        left:1.3125em;
        width:1.0625em
    }
    100%{
        top:2.8125em;
        left:.875em;
        width:1.5625em
    }
}
@-webkit-keyframes swal2-animate-success-line-long{
    0%{
        top:3.375em;
        right:2.875em;
        width:0
    }
    65%{
        top:3.375em;
        right:2.875em;
        width:0
    }
    84%{
        top:2.1875em;
        right:0;
        width:3.4375em
    }
    100%{
        top:2.375em;
        right:.5em;
        width:2.9375em
    }
}
@keyframes swal2-animate-success-line-long{
    0%{
        top:3.375em;
        right:2.875em;
        width:0
    }
    65%{
        top:3.375em;
        right:2.875em;
        width:0
    }
    84%{
        top:2.1875em;
        right:0;
        width:3.4375em
    }
    100%{
        top:2.375em;
        right:.5em;
        width:2.9375em
    }
}
@-webkit-keyframes swal2-rotate-success-circular-line{
    0%{
        -webkit-transform:rotate(-45deg);
        transform:rotate(-45deg)
    }
    5%{
        -webkit-transform:rotate(-45deg);
        transform:rotate(-45deg)
    }
    12%{
        -webkit-transform:rotate(-405deg);
        transform:rotate(-405deg)
    }
    100%{
        -webkit-transform:rotate(-405deg);
        transform:rotate(-405deg)
    }
}
@keyframes swal2-rotate-success-circular-line{
    0%{
        -webkit-transform:rotate(-45deg);
        transform:rotate(-45deg)
    }
    5%{
        -webkit-transform:rotate(-45deg);
        transform:rotate(-45deg)
    }
    12%{
        -webkit-transform:rotate(-405deg);
        transform:rotate(-405deg)
    }
    100%{
        -webkit-transform:rotate(-405deg);
        transform:rotate(-405deg)
    }
}
@-webkit-keyframes swal2-animate-error-x-mark{
    0%{
        margin-top:1.625em;
        -webkit-transform:scale(.4);
        transform:scale(.4);
        opacity:0
    }
    50%{
        margin-top:1.625em;
        -webkit-transform:scale(.4);
        transform:scale(.4);
        opacity:0
    }
    80%{
        margin-top:-.375em;
        -webkit-transform:scale(1.15);
        transform:scale(1.15)
    }
    100%{
        margin-top:0;
        -webkit-transform:scale(1);
        transform:scale(1);
        opacity:1
    }
}
@keyframes swal2-animate-error-x-mark{
    0%{
        margin-top:1.625em;
        -webkit-transform:scale(.4);
        transform:scale(.4);
        opacity:0
    }
    50%{
        margin-top:1.625em;
        -webkit-transform:scale(.4);
        transform:scale(.4);
        opacity:0
    }
    80%{
        margin-top:-.375em;
        -webkit-transform:scale(1.15);
        transform:scale(1.15)
    }
    100%{
        margin-top:0;
        -webkit-transform:scale(1);
        transform:scale(1);
        opacity:1
    }
}
@-webkit-keyframes swal2-animate-error-icon{
    0%{
        -webkit-transform:rotateX(100deg);
        transform:rotateX(100deg);
        opacity:0
    }
    100%{
        -webkit-transform:rotateX(0);
        transform:rotateX(0);
        opacity:1
    }
}
@keyframes swal2-animate-error-icon{
    0%{
        -webkit-transform:rotateX(100deg);
        transform:rotateX(100deg);
        opacity:0
    }
    100%{
        -webkit-transform:rotateX(0);
        transform:rotateX(0);
        opacity:1
    }
}
body.swal2-toast-shown.swal2-has-input>.swal2-container>.swal2-toast{
    flex-direction:column;
    align-items:stretch
}
body.swal2-toast-shown.swal2-has-input>.swal2-container>.swal2-toast .swal2-actions{
    flex:1;
    align-self:stretch;
    justify-content:flex-end;
    height:2.2em
}
body.swal2-toast-shown.swal2-has-input>.swal2-container>.swal2-toast .swal2-loading{
    justify-content:center
}
body.swal2-toast-shown.swal2-has-input>.swal2-container>.swal2-toast .swal2-input{
    height:2em;
    margin:.3125em auto;
    font-size:1em
}
body.swal2-toast-shown.swal2-has-input>.swal2-container>.swal2-toast .swal2-validationerror{
    font-size:1em
}
body.swal2-toast-shown>.swal2-container{
    position:fixed;
    background-color:transparent
}
body.swal2-toast-shown>.swal2-container.swal2-shown{
    background-color:transparent
}
body.swal2-toast-shown>.swal2-container.swal2-top{
    top:0;
    right:auto;
    bottom:auto;
    left:50%;
    -webkit-transform:translateX(-50%);
    transform:translateX(-50%)
}
body.swal2-toast-shown>.swal2-container.swal2-top-end,body.swal2-toast-shown>.swal2-container.swal2-top-right{
    top:0;
    right:0;
    bottom:auto;
    left:auto
}
body.swal2-toast-shown>.swal2-container.swal2-top-left,body.swal2-toast-shown>.swal2-container.swal2-top-start{
    top:0;
    right:auto;
    bottom:auto;
    left:0
}
body.swal2-toast-shown>.swal2-container.swal2-center-left,body.swal2-toast-shown>.swal2-container.swal2-center-start{
    top:50%;
    right:auto;
    bottom:auto;
    left:0;
    -webkit-transform:translateY(-50%);
    transform:translateY(-50%)
}
body.swal2-toast-shown>.swal2-container.swal2-center{
    top:50%;
    right:auto;
    bottom:auto;
    left:50%;
    -webkit-transform:translate(-50%,-50%);
    transform:translate(-50%,-50%)
}
body.swal2-toast-shown>.swal2-container.swal2-center-end,body.swal2-toast-shown>.swal2-container.swal2-center-right{
    top:50%;
    right:0;
    bottom:auto;
    left:auto;
    -webkit-transform:translateY(-50%);
    transform:translateY(-50%)
}
body.swal2-toast-shown>.swal2-container.swal2-bottom-left,body.swal2-toast-shown>.swal2-container.swal2-bottom-start{
    top:auto;
    right:auto;
    bottom:0;
    left:0
}
body.swal2-toast-shown>.swal2-container.swal2-bottom{
    top:auto;
    right:auto;
    bottom:0;
    left:50%;
    -webkit-transform:translateX(-50%);
    transform:translateX(-50%)
}
body.swal2-toast-shown>.swal2-container.swal2-bottom-end,body.swal2-toast-shown>.swal2-container.swal2-bottom-right{
    top:auto;
    right:0;
    bottom:0;
    left:auto
}
.swal2-popup.swal2-toast{
    flex-direction:row;
    align-items:center;
    width:auto;
    padding:.625em;
    box-shadow:0 0 .625em #d9d9d9;
    overflow-y:hidden
}
.swal2-popup.swal2-toast .swal2-header{
    flex-direction:row
}
.swal2-popup.swal2-toast .swal2-title{
    justify-content:flex-start;
    margin:0 .6em;
    font-size:1em
}
.swal2-popup.swal2-toast .swal2-close{
    position:initial
}
.swal2-popup.swal2-toast .swal2-content{
    justify-content:flex-start;
    font-size:1em
}
.swal2-popup.swal2-toast .swal2-icon{
    width:2em;
    min-width:2em;
    height:2em;
    margin:0
}
.swal2-popup.swal2-toast .swal2-icon-text{
    font-size:2em;
    font-weight:700;
    line-height:1em
}
.swal2-popup.swal2-toast .swal2-icon.swal2-success .swal2-success-ring{
    width:2em;
    height:2em
}
.swal2-popup.swal2-toast .swal2-icon.swal2-error [class^=swal2-x-mark-line]{
    top:.875em;
    width:1.375em
}
.swal2-popup.swal2-toast .swal2-icon.swal2-error [class^=swal2-x-mark-line][class$=left]{
    left:.3125em
}
.swal2-popup.swal2-toast .swal2-icon.swal2-error [class^=swal2-x-mark-line][class$=right]{
    right:.3125em
}
.swal2-popup.swal2-toast .swal2-actions{
    height:auto;
    margin:0 .3125em
}
.swal2-popup.swal2-toast .swal2-styled{
    margin:0 .3125em;
    padding:.3125em .625em;
    font-size:1em
}
.swal2-popup.swal2-toast .swal2-styled:focus{
    box-shadow:0 0 0 .0625em #fff,0 0 0 .125em rgba(50,100,150,.4)
}
.swal2-popup.swal2-toast .swal2-success{
    border-color:#a5dc86
}
.swal2-popup.swal2-toast .swal2-success [class^=swal2-success-circular-line]{
    position:absolute;
    width:2em;
    height:2.8125em;
    -webkit-transform:rotate(45deg);
    transform:rotate(45deg);
    border-radius:50%
}
.swal2-popup.swal2-toast .swal2-success [class^=swal2-success-circular-line][class$=left]{
    top:-.25em;
    left:-.9375em;
    -webkit-transform:rotate(-45deg);
    transform:rotate(-45deg);
    -webkit-transform-origin:2em 2em;
    transform-origin:2em 2em;
    border-radius:4em 0 0 4em
}
.swal2-popup.swal2-toast .swal2-success [class^=swal2-success-circular-line][class$=right]{
    top:-.25em;
    left:.9375em;
    -webkit-transform-origin:0 2em;
    transform-origin:0 2em;
    border-radius:0 4em 4em 0
}
.swal2-popup.swal2-toast .swal2-success .swal2-success-ring{
    width:2em;
    height:2em
}
.swal2-popup.swal2-toast .swal2-success .swal2-success-fix{
    top:0;
    left:.4375em;
    width:.4375em;
    height:2.6875em
}
.swal2-popup.swal2-toast .swal2-success [class^=swal2-success-line]{
    height:.3125em
}
.swal2-popup.swal2-toast .swal2-success [class^=swal2-success-line][class$=tip]{
    top:1.125em;
    left:.1875em;
    width:.75em
}
.swal2-popup.swal2-toast .swal2-success [class^=swal2-success-line][class$=long]{
    top:.9375em;
    right:.1875em;
    width:1.375em
}
.swal2-popup.swal2-toast.swal2-show{
    -webkit-animation:showSweetToast .5s;
    animation:showSweetToast .5s
}
.swal2-popup.swal2-toast.swal2-hide{
    -webkit-animation:hideSweetToast .2s forwards;
    animation:hideSweetToast .2s forwards
}
.swal2-popup.swal2-toast .swal2-animate-success-icon .swal2-success-line-tip{
    -webkit-animation:animate-toast-success-tip .75s;
    animation:animate-toast-success-tip .75s
}
.swal2-popup.swal2-toast .swal2-animate-success-icon .swal2-success-line-long{
    -webkit-animation:animate-toast-success-long .75s;
    animation:animate-toast-success-long .75s
}
@-webkit-keyframes showSweetToast{
    0%{
        -webkit-transform:translateY(-.625em) rotateZ(2deg);
        transform:translateY(-.625em) rotateZ(2deg);
        opacity:0
    }
    33%{
        -webkit-transform:translateY(0) rotateZ(-2deg);
        transform:translateY(0) rotateZ(-2deg);
        opacity:.5
    }
    66%{
        -webkit-transform:translateY(.3125em) rotateZ(2deg);
        transform:translateY(.3125em) rotateZ(2deg);
        opacity:.7
    }
    100%{
        -webkit-transform:translateY(0) rotateZ(0);
        transform:translateY(0) rotateZ(0);
        opacity:1
    }
}
@keyframes showSweetToast{
    0%{
        -webkit-transform:translateY(-.625em) rotateZ(2deg);
        transform:translateY(-.625em) rotateZ(2deg);
        opacity:0
    }
    33%{
        -webkit-transform:translateY(0) rotateZ(-2deg);
        transform:translateY(0) rotateZ(-2deg);
        opacity:.5
    }
    66%{
        -webkit-transform:translateY(.3125em) rotateZ(2deg);
        transform:translateY(.3125em) rotateZ(2deg);
        opacity:.7
    }
    100%{
        -webkit-transform:translateY(0) rotateZ(0);
        transform:translateY(0) rotateZ(0);
        opacity:1
    }
}
@-webkit-keyframes hideSweetToast{
    0%{
        opacity:1
    }
    33%{
        opacity:.5
    }
    100%{
        -webkit-transform:rotateZ(1deg);
        transform:rotateZ(1deg);
        opacity:0
    }
}
@keyframes hideSweetToast{
    0%{
        opacity:1
    }
    33%{
        opacity:.5
    }
    100%{
        -webkit-transform:rotateZ(1deg);
        transform:rotateZ(1deg);
        opacity:0
    }
}
@-webkit-keyframes animate-toast-success-tip{
    0%{
        top:.5625em;
        left:.0625em;
        width:0
    }
    54%{
        top:.125em;
        left:.125em;
        width:0
    }
    70%{
        top:.625em;
        left:-.25em;
        width:1.625em
    }
    84%{
        top:1.0625em;
        left:.75em;
        width:.5em
    }
    100%{
        top:1.125em;
        left:.1875em;
        width:.75em
    }
}
@keyframes animate-toast-success-tip{
    0%{
        top:.5625em;
        left:.0625em;
        width:0
    }
    54%{
        top:.125em;
        left:.125em;
        width:0
    }
    70%{
        top:.625em;
        left:-.25em;
        width:1.625em
    }
    84%{
        top:1.0625em;
        left:.75em;
        width:.5em
    }
    100%{
        top:1.125em;
        left:.1875em;
        width:.75em
    }
}
@-webkit-keyframes animate-toast-success-long{
    0%{
        top:1.625em;
        right:1.375em;
        width:0
    }
    65%{
        top:1.25em;
        right:.9375em;
        width:0
    }
    84%{
        top:.9375em;
        right:0;
        width:1.125em
    }
    100%{
        top:.9375em;
        right:.1875em;
        width:1.375em
    }
}
@keyframes animate-toast-success-long{
    0%{
        top:1.625em;
        right:1.375em;
        width:0
    }
    65%{
        top:1.25em;
        right:.9375em;
        width:0
    }
    84%{
        top:.9375em;
        right:0;
        width:1.125em
    }
    100%{
        top:.9375em;
        right:.1875em;
        width:1.375em
    }
}
body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown){
    overflow-y:hidden
}
body.swal2-height-auto{
    height:auto!important
}
body.swal2-no-backdrop .swal2-shown{
    top:auto;
    right:auto;
    bottom:auto;
    left:auto;
    background-color:transparent
}
body.swal2-no-backdrop .swal2-shown>.swal2-modal{
    box-shadow:0 0 10px rgba(0,0,0,.4)
}
body.swal2-no-backdrop .swal2-shown.swal2-top{
    top:0;
    left:50%;
    -webkit-transform:translateX(-50%);
    transform:translateX(-50%)
}
body.swal2-no-backdrop .swal2-shown.swal2-top-left,body.swal2-no-backdrop .swal2-shown.swal2-top-start{
    top:0;
    left:0
}
body.swal2-no-backdrop .swal2-shown.swal2-top-end,body.swal2-no-backdrop .swal2-shown.swal2-top-right{
    top:0;
    right:0
}
body.swal2-no-backdrop .swal2-shown.swal2-center{
    top:50%;
    left:50%;
    -webkit-transform:translate(-50%,-50%);
    transform:translate(-50%,-50%)
}
body.swal2-no-backdrop .swal2-shown.swal2-center-left,body.swal2-no-backdrop .swal2-shown.swal2-center-start{
    top:50%;
    left:0;
    -webkit-transform:translateY(-50%);
    transform:translateY(-50%)
}
body.swal2-no-backdrop .swal2-shown.swal2-center-end,body.swal2-no-backdrop .swal2-shown.swal2-center-right{
    top:50%;
    right:0;
    -webkit-transform:translateY(-50%);
    transform:translateY(-50%)
}
body.swal2-no-backdrop .swal2-shown.swal2-bottom{
    bottom:0;
    left:50%;
    -webkit-transform:translateX(-50%);
    transform:translateX(-50%)
}
body.swal2-no-backdrop .swal2-shown.swal2-bottom-left,body.swal2-no-backdrop .swal2-shown.swal2-bottom-start{
    bottom:0;
    left:0
}
body.swal2-no-backdrop .swal2-shown.swal2-bottom-end,body.swal2-no-backdrop .swal2-shown.swal2-bottom-right{
    right:0;
    bottom:0
}
.swal2-container{
    display:flex;
    position:fixed;
    top:0;
    right:0;
    bottom:0;
    left:0;
    flex-direction:row;
    align-items:center;
    justify-content:center;
    padding:10px;
    background-color:transparent;
    z-index:1060;
    overflow-x:hidden;
    -webkit-overflow-scrolling:touch
}
.swal2-container.swal2-top{
    align-items:flex-start
}
.swal2-container.swal2-top-left,.swal2-container.swal2-top-start{
    align-items:flex-start;
    justify-content:flex-start
}
.swal2-container.swal2-top-end,.swal2-container.swal2-top-right{
    align-items:flex-start;
    justify-content:flex-end
}
.swal2-container.swal2-center{
    align-items:center
}
.swal2-container.swal2-center-left,.swal2-container.swal2-center-start{
    align-items:center;
    justify-content:flex-start
}
.swal2-container.swal2-center-end,.swal2-container.swal2-center-right{
    align-items:center;
    justify-content:flex-end
}
.swal2-container.swal2-bottom{
    align-items:flex-end
}
.swal2-container.swal2-bottom-left,.swal2-container.swal2-bottom-start{
    align-items:flex-end;
    justify-content:flex-start
}
.swal2-container.swal2-bottom-end,.swal2-container.swal2-bottom-right{
    align-items:flex-end;
    justify-content:flex-end
}
.swal2-container.swal2-grow-fullscreen>.swal2-modal{
    display:flex!important;
    flex:1;
    align-self:stretch;
    justify-content:center
}
.swal2-container.swal2-grow-row>.swal2-modal{
    display:flex!important;
    flex:1;
    align-content:center;
    justify-content:center
}
.swal2-container.swal2-grow-column{
    flex:1;
    flex-direction:column
}
.swal2-container.swal2-grow-column.swal2-bottom,.swal2-container.swal2-grow-column.swal2-center,.swal2-container.swal2-grow-column.swal2-top{
    align-items:center
}
.swal2-container.swal2-grow-column.swal2-bottom-left,.swal2-container.swal2-grow-column.swal2-bottom-start,.swal2-container.swal2-grow-column.swal2-center-left,.swal2-container.swal2-grow-column.swal2-center-start,.swal2-container.swal2-grow-column.swal2-top-left,.swal2-container.swal2-grow-column.swal2-top-start{
    align-items:flex-start
}
.swal2-container.swal2-grow-column.swal2-bottom-end,.swal2-container.swal2-grow-column.swal2-bottom-right,.swal2-container.swal2-grow-column.swal2-center-end,.swal2-container.swal2-grow-column.swal2-center-right,.swal2-container.swal2-grow-column.swal2-top-end,.swal2-container.swal2-grow-column.swal2-top-right{
    align-items:flex-end
}
.swal2-container.swal2-grow-column>.swal2-modal{
    display:flex!important;
    flex:1;
    align-content:center;
    justify-content:center
}
.swal2-container:not(.swal2-top):not(.swal2-top-start):not(.swal2-top-end):not(.swal2-top-left):not(.swal2-top-right):not(.swal2-center-start):not(.swal2-center-end):not(.swal2-center-left):not(.swal2-center-right):not(.swal2-bottom):not(.swal2-bottom-start):not(.swal2-bottom-end):not(.swal2-bottom-left):not(.swal2-bottom-right)>.swal2-modal{
    margin:auto
}
@media all and (-ms-high-contrast:none),(-ms-high-contrast:active){
    .swal2-container .swal2-modal{
        margin:0!important
    }
}
.swal2-container.swal2-fade{
    transition:background-color .1s
}
.swal2-container.swal2-shown{
    background-color:rgba(0,0,0,.4)
}
.swal2-popup{
    display:none;
    position:relative;
    flex-direction:column;
    justify-content:center;
    width:32em;
    max-width:100%;
    padding:1.25em;
    border-radius:.3125em;
    background:#fff;
    font-family:inherit;
    font-size:1rem;
    box-sizing:border-box
}
.swal2-popup:focus{
    outline:0
}
.swal2-popup.swal2-loading{
    overflow-y:hidden
}
.swal2-popup .swal2-header{
    display:flex;
    flex-direction:column;
    align-items:center
}
.swal2-popup .swal2-title{
    display:block;
    position:relative;
    max-width:100%;
    margin:0 0 .4em;
    padding:0;
    color:#595959;
    font-size:1.875em;
    font-weight:600;
    text-align:center;
    text-transform:none;
    word-wrap:break-word
}
.swal2-popup .swal2-actions{
    align-items:center;
    justify-content:center;
    margin:1.25em auto 0
}
.swal2-popup .swal2-actions:not(.swal2-loading) .swal2-styled[disabled]{
    opacity:.4
}
.swal2-popup .swal2-actions:not(.swal2-loading) .swal2-styled:hover{
    background-image:linear-gradient(rgba(0,0,0,.1),rgba(0,0,0,.1))
}
.swal2-popup .swal2-actions:not(.swal2-loading) .swal2-styled:active{
    background-image:linear-gradient(rgba(0,0,0,.2),rgba(0,0,0,.2))
}
.swal2-popup .swal2-actions.swal2-loading .swal2-styled.swal2-confirm{
    width:2.5em;
    height:2.5em;
    margin:.46875em;
    padding:0;
    border:.25em solid transparent;
    border-radius:100%;
    border-color:transparent;
    background-color:transparent!important;
    color:transparent;
    cursor:default;
    box-sizing:border-box;
    -webkit-animation:swal2-rotate-loading 1.5s linear 0s infinite normal;
    animation:swal2-rotate-loading 1.5s linear 0s infinite normal;
    -webkit-user-select:none;
    -moz-user-select:none;
    -ms-user-select:none;
    user-select:none
}
.swal2-popup .swal2-actions.swal2-loading .swal2-styled.swal2-cancel{
    margin-right:30px;
    margin-left:30px
}
.swal2-popup .swal2-actions.swal2-loading :not(.swal2-styled).swal2-confirm::after{
    display:inline-block;
    width:15px;
    height:15px;
    margin-left:5px;
    border:3px solid #999;
    border-radius:50%;
    border-right-color:transparent;
    box-shadow:1px 1px 1px #fff;
    content:'';
    -webkit-animation:swal2-rotate-loading 1.5s linear 0s infinite normal;
    animation:swal2-rotate-loading 1.5s linear 0s infinite normal
}
.swal2-popup .swal2-styled{
    margin:0 .3125em;
    padding:.625em 2em;
    font-weight:500;
    box-shadow:none
}
.swal2-popup .swal2-styled:not([disabled]){
    cursor:pointer
}
.swal2-popup .swal2-styled.swal2-confirm{
    border:0;
    border-radius:.25em;
    background:initial;
    background-color:#3085d6;
    color:#fff;
    font-size:1.0625em
}
.swal2-popup .swal2-styled.swal2-cancel{
    border:0;
    border-radius:.25em;
    background:initial;
    background-color:#aaa;
    color:#fff;
    font-size:1.0625em
}
.swal2-popup .swal2-styled:focus{
    outline:0;
    box-shadow:0 0 0 2px #fff,0 0 0 4px rgba(50,100,150,.4)
}
.swal2-popup .swal2-styled::-moz-focus-inner{
    border:0
}
.swal2-popup .swal2-footer{
    justify-content:center;
    margin:1.25em 0 0;
    padding-top:1em;
    border-top:1px solid #eee;
    color:#545454;
    font-size:1em
}
.swal2-popup .swal2-image{
    max-width:100%;
    margin:1.25em auto
}
.swal2-popup .swal2-close{
    position:absolute;
    top:0;
    right:0;
    justify-content:center;
    width:1.2em;
    height:1.2em;
    padding:0;
    transition:color .1s ease-out;
    border:none;
    border-radius:0;
    background:0 0;
    color:#ccc;
    font-family:serif;
    font-size:2.5em;
    line-height:1.2;
    cursor:pointer;
    overflow:hidden
}
.swal2-popup .swal2-close:hover{
    -webkit-transform:none;
    transform:none;
    color:#f27474
}
.swal2-popup>.swal2-checkbox,.swal2-popup>.swal2-file,.swal2-popup>.swal2-input,.swal2-popup>.swal2-radio,.swal2-popup>.swal2-select,.swal2-popup>.swal2-textarea{
    display:none
}
.swal2-popup .swal2-content{
    justify-content:center;
    margin:0;
    padding:0;
    color:#545454;
    font-size:1.125em;
    font-weight:300;
    line-height:normal;
    word-wrap:break-word
}
.swal2-popup #swal2-content{
    text-align:center
}
.swal2-popup .swal2-checkbox,.swal2-popup .swal2-file,.swal2-popup .swal2-input,.swal2-popup .swal2-radio,.swal2-popup .swal2-select,.swal2-popup .swal2-textarea{
    margin:1em auto
}
.swal2-popup .swal2-file,.swal2-popup .swal2-input,.swal2-popup .swal2-textarea{
    width:100%;
    transition:border-color .3s,box-shadow .3s;
    border:1px solid #d9d9d9;
    border-radius:.1875em;
    font-size:1.125em;
    box-shadow:inset 0 1px 1px rgba(0,0,0,.06);
    box-sizing:border-box
}
.swal2-popup .swal2-file.swal2-inputerror,.swal2-popup .swal2-input.swal2-inputerror,.swal2-popup .swal2-textarea.swal2-inputerror{
    border-color:#f27474!important;
    box-shadow:0 0 2px #f27474!important
}
.swal2-popup .swal2-file:focus,.swal2-popup .swal2-input:focus,.swal2-popup .swal2-textarea:focus{
    border:1px solid #b4dbed;
    outline:0;
    box-shadow:0 0 3px #c4e6f5
}
.swal2-popup .swal2-file::-webkit-input-placeholder,.swal2-popup .swal2-input::-webkit-input-placeholder,.swal2-popup .swal2-textarea::-webkit-input-placeholder{
    color:#ccc
}
.swal2-popup .swal2-file:-ms-input-placeholder,.swal2-popup .swal2-input:-ms-input-placeholder,.swal2-popup .swal2-textarea:-ms-input-placeholder{
    color:#ccc
}
.swal2-popup .swal2-file::-ms-input-placeholder,.swal2-popup .swal2-input::-ms-input-placeholder,.swal2-popup .swal2-textarea::-ms-input-placeholder{
    color:#ccc
}
.swal2-popup .swal2-file::placeholder,.swal2-popup .swal2-input::placeholder,.swal2-popup .swal2-textarea::placeholder{
    color:#ccc
}
.swal2-popup .swal2-range input{
    width:80%
}
.swal2-popup .swal2-range output{
    width:20%;
    font-weight:600;
    text-align:center
}
.swal2-popup .swal2-range input,.swal2-popup .swal2-range output{
    height:2.625em;
    margin:1em auto;
    padding:0;
    font-size:1.125em;
    line-height:2.625em
}
.swal2-popup .swal2-input{
    height:2.625em;
    padding:.75em
}
.swal2-popup .swal2-input[type=number]{
    max-width:10em
}
.swal2-popup .swal2-file{
    font-size:1.125em
}
.swal2-popup .swal2-textarea{
    height:6.75em;
    padding:.75em
}
.swal2-popup .swal2-select{
    min-width:50%;
    max-width:100%;
    padding:.375em .625em;
    color:#545454;
    font-size:1.125em
}
.swal2-popup .swal2-checkbox,.swal2-popup .swal2-radio{
    align-items:center;
    justify-content:center
}
.swal2-popup .swal2-checkbox label,.swal2-popup .swal2-radio label{
    margin:0 .6em;
    font-size:1.125em
}
.swal2-popup .swal2-checkbox input,.swal2-popup .swal2-radio input{
    margin:0 .4em
}
.swal2-popup .swal2-validationerror{
    display:none;
    align-items:center;
    justify-content:center;
    padding:.625em;
    background:#f0f0f0;
    color:#666;
    font-size:1em;
    font-weight:300;
    overflow:hidden
}
.swal2-popup .swal2-validationerror::before{
    display:inline-block;
    width:1.5em;
    min-width:1.5em;
    height:1.5em;
    margin:0 .625em;
    border-radius:50%;
    background-color:#f27474;
    color:#fff;
    font-weight:600;
    line-height:1.5em;
    text-align:center;
    content:'!';
    zoom:normal
}
@supports (-ms-accelerator:true){
    .swal2-range input{
        width:100%!important
    }
    .swal2-range output{
        display:none
    }
}
@media all and (-ms-high-contrast:none),(-ms-high-contrast:active){
    .swal2-range input{
        width:100%!important
    }
    .swal2-range output{
        display:none
    }
}
@-moz-document url-prefix(){
    .swal2-close:focus{
        outline:2px solid rgba(50,100,150,.4)
    }
}
.swal2-icon{
    position:relative;
    justify-content:center;
    width:5em;
    height:5em;
    margin:1.25em auto 1.875em;
    border:.25em solid transparent;
    border-radius:50%;
    line-height:5em;
    cursor:default;
    box-sizing:content-box;
    -webkit-user-select:none;
    -moz-user-select:none;
    -ms-user-select:none;
    user-select:none;
    zoom:normal
}
.swal2-icon-text{
    font-size:3.75em
}
.swal2-icon.swal2-error{
    border-color:#f27474
}
.swal2-icon.swal2-error .swal2-x-mark{
    position:relative;
    flex-grow:1
}
.swal2-icon.swal2-error [class^=swal2-x-mark-line]{
    display:block;
    position:absolute;
    top:2.3125em;
    width:2.9375em;
    height:.3125em;
    border-radius:.125em;
    background-color:#f27474
}
.swal2-icon.swal2-error [class^=swal2-x-mark-line][class$=left]{
    left:1.0625em;
    -webkit-transform:rotate(45deg);
    transform:rotate(45deg)
}
.swal2-icon.swal2-error [class^=swal2-x-mark-line][class$=right]{
    right:1em;
    -webkit-transform:rotate(-45deg);
    transform:rotate(-45deg)
}
.swal2-icon.swal2-warning{
    border-color:#facea8;
    color:#f8bb86
}
.swal2-icon.swal2-info{
    border-color:#9de0f6;
    color:#3fc3ee
}
.swal2-icon.swal2-question{
    border-color:#c9dae1;
    color:#87adbd
}
.swal2-icon.swal2-success{
    border-color:#a5dc86
}
.swal2-icon.swal2-success [class^=swal2-success-circular-line]{
    position:absolute;
    width:3.75em;
    height:7.5em;
    -webkit-transform:rotate(45deg);
    transform:rotate(45deg);
    border-radius:50%
}
.swal2-icon.swal2-success [class^=swal2-success-circular-line][class$=left]{
    top:-.4375em;
    left:-2.0635em;
    -webkit-transform:rotate(-45deg);
    transform:rotate(-45deg);
    -webkit-transform-origin:3.75em 3.75em;
    transform-origin:3.75em 3.75em;
    border-radius:7.5em 0 0 7.5em
}
.swal2-icon.swal2-success [class^=swal2-success-circular-line][class$=right]{
    top:-.6875em;
    left:1.875em;
    -webkit-transform:rotate(-45deg);
    transform:rotate(-45deg);
    -webkit-transform-origin:0 3.75em;
    transform-origin:0 3.75em;
    border-radius:0 7.5em 7.5em 0
}
.swal2-icon.swal2-success .swal2-success-ring{
    position:absolute;
    top:-.25em;
    left:-.25em;
    width:100%;
    height:100%;
    border:.25em solid rgba(165,220,134,.3);
    border-radius:50%;
    z-index:2;
    box-sizing:content-box
}
.swal2-icon.swal2-success .swal2-success-fix{
    position:absolute;
    top:.5em;
    left:1.625em;
    width:.4375em;
    height:5.625em;
    -webkit-transform:rotate(-45deg);
    transform:rotate(-45deg);
    z-index:1
}
.swal2-icon.swal2-success [class^=swal2-success-line]{
    display:block;
    position:absolute;
    height:.3125em;
    border-radius:.125em;
    background-color:#a5dc86;
    z-index:2
}
.swal2-icon.swal2-success [class^=swal2-success-line][class$=tip]{
    top:2.875em;
    left:.875em;
    width:1.5625em;
    -webkit-transform:rotate(45deg);
    transform:rotate(45deg)
}
.swal2-icon.swal2-success [class^=swal2-success-line][class$=long]{
    top:2.375em;
    right:.5em;
    width:2.9375em;
    -webkit-transform:rotate(-45deg);
    transform:rotate(-45deg)
}
.swal2-progresssteps{
    align-items:center;
    margin:0 0 1.25em;
    padding:0;
    font-weight:600
}
.swal2-progresssteps li{
    display:inline-block;
    position:relative
}
.swal2-progresssteps .swal2-progresscircle{
    width:2em;
    height:2em;
    border-radius:2em;
    background:#3085d6;
    color:#fff;
    line-height:2em;
    text-align:center;
    z-index:20
}
.swal2-progresssteps .swal2-progresscircle:first-child{
    margin-left:0
}
.swal2-progresssteps .swal2-progresscircle:last-child{
    margin-right:0
}
.swal2-progresssteps .swal2-progresscircle.swal2-activeprogressstep{
    background:#3085d6
}
.swal2-progresssteps .swal2-progresscircle.swal2-activeprogressstep~.swal2-progresscircle{
    background:#add8e6
}
.swal2-progresssteps .swal2-progresscircle.swal2-activeprogressstep~.swal2-progressline{
    background:#add8e6
}
.swal2-progresssteps .swal2-progressline{
    width:2.5em;
    height:.4em;
    margin:0 -1px;
    background:#3085d6;
    z-index:10
}
[class^=swal2]{
    -webkit-tap-highlight-color:transparent
}
.swal2-show{
    -webkit-animation:swal2-show .3s;
    animation:swal2-show .3s
}
.swal2-show.swal2-noanimation{
    -webkit-animation:none;
    animation:none
}
.swal2-hide{
    -webkit-animation:swal2-hide .15s forwards;
    animation:swal2-hide .15s forwards
}
.swal2-hide.swal2-noanimation{
    -webkit-animation:none;
    animation:none
}
[dir=rtl] .swal2-close{
    right:auto;
    left:0
}
.swal2-animate-success-icon .swal2-success-line-tip{
    -webkit-animation:swal2-animate-success-line-tip .75s;
    animation:swal2-animate-success-line-tip .75s
}
.swal2-animate-success-icon .swal2-success-line-long{
    -webkit-animation:swal2-animate-success-line-long .75s;
    animation:swal2-animate-success-line-long .75s
}
.swal2-animate-success-icon .swal2-success-circular-line-right{
    -webkit-animation:swal2-rotate-success-circular-line 4.25s ease-in;
    animation:swal2-rotate-success-circular-line 4.25s ease-in
}
.swal2-animate-error-icon{
    -webkit-animation:swal2-animate-error-icon .5s;
    animation:swal2-animate-error-icon .5s
}
.swal2-animate-error-icon .swal2-x-mark{
    -webkit-animation:swal2-animate-error-x-mark .5s;
    animation:swal2-animate-error-x-mark .5s
}
@-webkit-keyframes swal2-rotate-loading{
    0%{
        -webkit-transform:rotate(0);
        transform:rotate(0)
    }
    100%{
        -webkit-transform:rotate(360deg);
        transform:rotate(360deg)
    }
}
@keyframes swal2-rotate-loading{
    0%{
        -webkit-transform:rotate(0);
        transform:rotate(0)
    }
    100%{
        -webkit-transform:rotate(360deg);
        transform:rotate(360deg)
    }
}

/*Banners slider*/
.blog .carousel-indicators {
	left: 0;
	top: auto;
    bottom: -40px;

}

/* The colour of the indicators */
.blog .carousel-indicators li {
    background: #a3a3a3;
    border-radius: 50%;
    width: 8px;
    height: 8px;
}

.blog .carousel-indicators .active {
background: #707070;
}


.custom-toggle-slider:before {
    position: absolute;
    content: "";
    height: 18px;
    width: 18px;
    left: 2px;
    bottom: 2px;
    border-radius: 50%!important;
    background-color: #94a3b8;
    transition: all .2s cubic-bezier(.68,-.55,.265,1.55);
}

.custom-toggle-slider {
    background-color: #e2e8f0 !important;
    border-color: #cbd5e1 !important;
}

.swal-footer, .swal-text {
    text-align: center;
  }

.btn-cart-icon{
    font-size: 10px !important;
}

.btn-cart-radius{
    border-radius: 50%!important;
}

/*landing page admin panel*/
.image-in-card {
    margin-bottom: 15px;
    width: 128px;
}

.imgHolderInCard {
    display: flex;
    align-items: center;
    justify-content: center;
}

.cardWithShadow{
    box-shadow: 0 0.75rem 1.5rem rgba(18, 38, 63, 0.03)
}

.cardWithShadowAnimated:hover {
    transition-duration: 0.4s;
    transform: translateY(-10px) !important;
    box-shadow: 0 1rem 3rem rgba(31, 45, 61, 0.125) !important;
}

.testimonialCard {
    width: 90%;
}

.testimonials-item-author {
    display: flex;
    align-items: center;
}

.testimonials-item-author-image-container {
    margin-right: 16px;
    overflow: hidden;
}

.testimonials-item-stars {
    align-self: baseline;
    margin-left: 16px;
    white-space: nowrap;
    display: inline-flex;
    margin-top: 2px;
}

.testimonials-item-stars-item {
    display: inline-block;
    margin-right: 2px;
    width: 14px;
    height: 14px;
}

.testimonials-item-stars-item svg {
    fill: #ffb400;
    display: block;
}

.tetimonial_text {
    margin-top: 12px;
}

/*notify-laravel-css*/
.inset-0 {
    z-index: 999 !important;
}

.closed_time {
    color:#fb6340;
}

.fieldImage {
    flex: 0 0 auto;
    width: 48px;
    height: 48px;
    border-radius: 4px;
    background-color: rgba(0,0,0,.1);
    background-size: cover;
    background-position: 50%;
    background-repeat: no-repeat;
}

lottie-player {
    margin: 0 auto;
}

/* alllergen */
.item-offer-horizontal > .info > .allergens{display: flex;gap: 0;align-items: center;}
.item-offer-horizontal > .info > .allergens > .price{color: var(--hfont-color);font-weight: var(--font-weight-bold);}
.allergen{
    display: inline-flex;
    font-size: calc(var(--font-size) - 5px);
    font-weight: var(--font-weight-bold);
    letter-spacing: 1px;
    line-height: 1;
    padding: 6px 6px;
    background: pink;
    border-radius: var(--border-radius);
    background: #eee;
    color: #00bc8b;
}
.allergen img {
    height: 15px;
}
.allergen.disabled{background:#EEE;color: #CCC;}

.iti{
    width: 100%;
  }

  .itemsSearchHolder {
    margin-right: 5px !important;
}

.itemsSearch .select2-container {
    width: 100% !important;
  }

  .itemsSearch .select2-container--default .select2-selection--single {
    width: 100% !important;
    display: flex;
    align-items: center;
    padding: 0 30px;
    height: 50px;
    line-height: 50px;
    font-weight: 500;
    font-size: 16px;
    background-color: #fafafa;
    border: 1px solid #eeeeee;
    border-radius: 25px;
    transition: 0.1s;
    cursor: text !important;
  }
  
  /* Make the selection area look like an input field */
  .itemsSearch .select2-container--default .select2-selection--single .select2-selection__rendered {
    cursor: text !important;
  }
  
  /* Make it look like a search input - hide arrow when not open */
  .itemsSearch .select2-container--default .select2-selection--single .select2-selection__arrow {
    cursor: pointer !important;
  }

  /* Always show search input in dropdown */
  .itemsSearch .select2-dropdown .select2-search {
    display: block !important;
    padding: 8px !important;
  }
  
  /* Make search input visible and styled like a search box */
  .itemsSearch .select2-search__field {
    width: 100% !important;
    padding: 8px 12px !important;
    border: 1px solid #ddd !important;
    border-radius: 4px !important;
    outline: none !important;
    background: #fff !important;
    font-size: 16px !important;
    color: #1a202c !important;
    box-shadow: none !important;
  }
  
  .itemsSearch .select2-search__field:focus {
    border-color: #dc3545 !important;
    box-shadow: 0 0 0 2px rgba(220, 53, 69, 0.1) !important;
  }

  .itemsSearch .select2-results__option {
    display: flex;
    align-items: center;
  }

  .itemsSearch .select2-results__option .img-flag {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    object-fit: cover;
    margin-right: 10px;
  }

  .itemsSearch .select2-container--default.select2-container--focus .select2-selection--single {
    border: 1px solid #c9c9c9 !important;
    outline: 0;
  }

  .itemsSearch span.select2-selection.select2-selection--single {
    outline: none;
  }

  .itemsSearch .select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 35px;
    top: 50%;
    transform: translateY(-50%);
    right: 10px;
    width: 35px;
    background-color: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 5px 20px rgba(35, 49, 45, 0.14);
  }

.itemsSearchHolder .select2-container--default .select2-selection--single .select2-selection__arrow b {
    background-image: url(https://cdn4.iconfinder.com/data/icons/ionicons/512/icon-ios7-search-48.png);
    background-color: transparent;
    background-size: contain;
    border: none !important;
    height: 20px !important;
    width: 20px !important;
    margin: auto !important;
    top: auto !important;
    left: auto !important;
  }
.input-group .form-control:not(:last-child){
        padding-right: 10px;
}


/* Suggestion List Styles */
#searchResults {
    list-style-type: none;
    margin: 0;
    padding: 0;
    position: absolute;
    width: 695px;
    background-color: #fff;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    border: 1px solid #ccc;
    border-radius: 5px;
    display: none;
    z-index: 999;
}

.autocomplete-item {
    padding: 10px;
    cursor: pointer;
}

.autocomplete-item:hover {
    background-color: #f0f0f0;
}

/*Dish landing page css*/
.categories-img {
    padding-top:100%;
    background-size:cover;
    background-position: 50% 50%;
    background-repeat:no-repeat;
    transition:all ease.8s;
}

.categories-img:hover{
    transform:scale(1.1);
}

/* Placeholder effect */
.placeholder {
    background: #eee;
    background: linear-gradient(110deg, #ececec 8%, #f5f5f5 18%, #ececec 33%);
    border-radius: 5px;
    background-size: 200% 100%;
    animation: 1.5s shine linear infinite;
    color: rgba(0, 0, 0, 0);
    width: 100%;
    margin-right: 1.7rem;
    min-height: 1.5rem;
}
img.placeholder {
    min-height: 230px;
}

@keyframes shine {
    to {
        background-position-x: -200%;
    }
}


/*footer {
      position: fixed;
      left: 0;
      bottom: 0;
      width: 100%;
      background-color: #f8f9fa;
      padding: 20px;
}*/

.navbar .navbar-brand {
    max-width: 50%;
}


/* Default logo style (for desktop or large screens) */
.nav-logo {
    padding-top: 1px;
    width: 250px;
}

@media (max-width: 992px) {
    .nav-logo {
           padding-bottom: 1px;
}






/*}*/

 /*Media query for tablets (768px and below) */
 
/* @media (max-width: 1700px) {*/
/*    .nav-logo {*/
/*        width: 52%;*/
/*    }*/
/*}*/
/*@media (max-width: 1370px) {*/
/*    .nav-logo {*/
/*        width:140px;*/
/*    }*/
/*}*/


/*@media (max-width: 768px) {*/
/*    .logo {*/
/*          width:240px;*/
/*    }*/
/*}*/



/*@media (max-width: 480px) {*/
/*    .nav-logo {*/
/*         width: 228px;*/
/*    }*/
/*}*/


        


/* RESTAURANT MENU SLIDERS - Match popular-slider-wrapper styles exactly */
/* Apply same wrapper and slider styles as home page popular restaurants */

/* Wrapper styles - match .popular-slider-wrapper */
#restaurant-content .popular-slider-wrapper,
#restaurant-content .col-12.popular-slider-wrapper {
    position: relative !important;
    width: 100% !important;
    display: block !important;
    overflow: visible !important;
}

/* FORCE SLIDER TO WORK ON DESKTOP - HIGHEST PRIORITY - PLACED FIRST */
@media (min-width: 992px) {
    /* Absolute override for slider - must work */
    #restaurant-content .col-12.popular-slider-wrapper > div.popular-slider,
    #restaurant-content .popular-slider-wrapper > div.popular-slider,
    #restaurant-content div.popular-slider,
    #restaurant-content div[class*="popular-slider"]:not(.popular-slider-wrapper):not(.popular-slider-arrow) {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        overflow-y: visible !important;
        gap: 1.5rem !important;
        width: 100% !important;
        padding: 0.5rem 0 !important;
        scroll-behavior: smooth !important;
        scrollbar-width: none !important;
        -ms-overflow-style: none !important;
    }
    
    #restaurant-content div.popular-slider > [class*="col-"],
    #restaurant-content .popular-slider > div[class*="col-"] {
        flex: 0 0 260px !important;
        min-width: 260px !important;
        max-width: 260px !important;
        width: 260px !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    
    #restaurant-content div.popular-slider::-webkit-scrollbar {
        display: none !important;
    }
}

/* Navigation arrows - match .popular-slider-arrow */
#restaurant-content .popular-slider-arrow {
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    z-index: 2 !important;
    border-radius: 999px !important;
}

#restaurant-content .popular-slider-arrow-left {
    left: 0 !important;
}

#restaurant-content .popular-slider-arrow-right {
    right: 0 !important;
}

/* Wrapper styles for rows - match .popular-slider-wrapper */
#restaurant-content .container-restorant > div[id] ~ .row,
#restaurant-content .container-restorant > .row:not(.tabbable):not(.sticky) {
    position: relative !important;
    width: 100% !important;
}

/* Desktop: Horizontal slider - match .popular-slider */
@media (min-width: 992px) {
    /* Wrapper padding/margin rules - match .section-popular .popular-slider-wrapper */
    #restaurant-content .popular-slider-wrapper,
    #restaurant-content .col-12.popular-slider-wrapper {
        padding-left: 0 !important;
        padding-right: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        width: 100% !important;
        position: relative !important;
        display: block !important;
    }
    
    /* CRITICAL: Override Bootstrap and force slider to display as flex row */
    #restaurant-content .popular-slider,
    #restaurant-content .container-restorant .popular-slider,
    #restaurant-content .container-restorant > div[id] ~ .popular-slider,
    #restaurant-content .container-restorant > .popular-slider,
    #restaurant-content .popular-slider-wrapper > .popular-slider,
    #restaurant-content .col-12.popular-slider-wrapper > .popular-slider,
    #restaurant-content [class*="popular-slider"]:not(.popular-slider-wrapper):not(.popular-slider-arrow) {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        overflow-y: visible !important;
        gap: 1.5rem !important;
        padding: 0.5rem 0 0.5rem 0 !important;
        scroll-behavior: smooth !important;
        scrollbar-width: none !important;
        -ms-overflow-style: none !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        width: 100% !important;
        -webkit-overflow-scrolling: touch !important;
        min-height: auto !important;
        height: auto !important;
    }
    
    /* Hide scrollbar - match .popular-slider */
    #restaurant-content .popular-slider::-webkit-scrollbar,
    #restaurant-content .container-restorant .popular-slider::-webkit-scrollbar,
    #restaurant-content .container-restorant > div[id] ~ .popular-slider::-webkit-scrollbar {
        display: none !important;
    }
    
    /* Card widths - match .popular-card (260px default) - FORCE ALL COL CLASSES */
    #restaurant-content .popular-slider > [class*="col-"],
    #restaurant-content .container-restorant .popular-slider > [class*="col-"],
    #restaurant-content .container-restorant > div[id] ~ .popular-slider > [class*="col-"],
    #restaurant-content .popular-slider > div[class*="col-"],
    #restaurant-content .popular-slider-wrapper .popular-slider > [class*="col-"],
    #restaurant-content .col-12.popular-slider-wrapper .popular-slider > [class*="col-"],
    #restaurant-content .popular-slider > .col-xl-3,
    #restaurant-content .popular-slider > .col-lg-6,
    #restaurant-content .popular-slider > .col-md-6,
    #restaurant-content .popular-slider > .col-sm-6 {
        flex: 0 0 260px !important;
        min-width: 260px !important;
        max-width: 260px !important;
        width: 260px !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }
}

/* Desktop 1200px+ - match .popular-card at 1200px+ (280px) */
@media (min-width: 1200px) {
    #restaurant-content .popular-slider > [class*="col-"],
    #restaurant-content .container-restorant .popular-slider > [class*="col-"],
    #restaurant-content .container-restorant > div[id] ~ .popular-slider > [class*="col-"],
    #restaurant-content .popular-slider > div[class*="col-"],
    #restaurant-content .col-12.popular-slider-wrapper .popular-slider > [class*="col-"],
    #restaurant-content .popular-slider > .col-xl-3,
    #restaurant-content .popular-slider > .col-lg-6 {
        flex: 0 0 280px !important;
        min-width: 280px !important;
        max-width: 280px !important;
        width: 280px !important;
    }
    
    /* At 1200px+, slider padding stays 0.5rem 0 (matches home page) */
    /* No additional padding needed - matches .popular-slider behavior */
}

/* Mobile: Vertical layout - match .popular-slider mobile */
@media (max-width: 991.98px) {
    /* Hide arrows on mobile */
    #restaurant-content .popular-slider-arrow {
        display: none !important;
    }
        margin: 0 !important;
    }
    /* Wrapper - match mobile popular-slider-wrapper */
    #restaurant-content .popular-slider-wrapper,
    #restaurant-content .col-12.popular-slider-wrapper {
        position: relative !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    
    /* Slider - match mobile .popular-slider */
    #restaurant-content .popular-slider,
    #restaurant-content .container-restorant > div[id] ~ .row.popular-slider,
    #restaurant-content .container-restorant > .row.popular-slider {
        display: flex !important;
        flex-direction: column !important;
        overflow-x: visible !important;
        overflow-y: visible !important;
        gap: 1.5rem !important;
        padding: 0.5rem 0 !important;
        -webkit-overflow-scrolling: touch !important;
        scroll-snap-type: none !important;
    }
    
    /* Cards - match mobile .popular-card */
    #restaurant-content .popular-slider > [class*="col-"],
    #restaurant-content .container-restorant > div[id] ~ .row.popular-slider > [class*="col-"],
    #restaurant-content .container-restorant > .row.popular-slider > [class*="col-"] {
        flex: 0 0 auto !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 100% !important;
        margin-right: 0 !important;
        margin-bottom: 0 !important;
        scroll-snap-align: none !important;
        padding-left: 0.75rem !important;
        padding-right: 0.75rem !important;
    }
}

/* FINAL OVERRIDE - FORCE FULL WIDTH CONTAINER - HIGHEST PRIORITY */
/* Override ALL Bootstrap container max-width rules at ALL breakpoints */
#restaurant-content section.section.pt-lg-0 .container.container-restorant,
#restaurant-content section.section .container.container-restorant,
#restaurant-content .container.container-restorant,
#restaurant-content .container-restorant.container,
#restaurant-content .container-restorant,
#restaurant-content .container {
    max-width: none !important;
    max-width: 100% !important;
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
}

@media (min-width: 576px) {
    #restaurant-content section.section.pt-lg-0 .container.container-restorant,
    #restaurant-content section.section .container.container-restorant,
    #restaurant-content .container.container-restorant,
    #restaurant-content .container-restorant.container,
    #restaurant-content .container-restorant,
    #restaurant-content .container {
        max-width: none !important;
        max-width: 100% !important;
        width: 100% !important;
    }
}

@media (min-width: 768px) {
    #restaurant-content section.section.pt-lg-0 .container.container-restorant,
    #restaurant-content section.section .container.container-restorant,
    #restaurant-content .container.container-restorant,
    #restaurant-content .container-restorant.container,
    #restaurant-content .container-restorant,
    #restaurant-content .container {
        max-width: none !important;
        max-width: 100% !important;
        width: 100% !important;
    }
}

@media (min-width: 992px) {
    #restaurant-content section.section.pt-lg-0 .container.container-restorant,
    #restaurant-content section.section .container.container-restorant,
    #restaurant-content .container.container-restorant,
    #restaurant-content .container-restorant.container,
    #restaurant-content .container-restorant,
    #restaurant-content .container {
        max-width: none !important;
        max-width: 100% !important;
        width: 100% !important;
    }
}

@media (min-width: 1200px) {
    #restaurant-content section.section.pt-lg-0 .container.container-restorant,
    #restaurant-content section.section .container.container-restorant,
    #restaurant-content .container.container-restorant,
    #restaurant-content .container-restorant.container,
    #restaurant-content .container-restorant,
    #restaurant-content .container {
        max-width: none !important;
        max-width: 100% !important;
        width: 100% !important;
    }
}

@media (min-width: 1300px) {
    #restaurant-content section.section.pt-lg-0 .container.container-restorant,
    #restaurant-content section.section .container.container-restorant,
    #restaurant-content .container.container-restorant,
    #restaurant-content .container-restorant.container,
    #restaurant-content .container-restorant,
    #restaurant-content .container {
        max-width: none !important;
        max-width: 100% !important;
        width: 100% !important;
    }
}

}

/* RESTAURANT PAGE BRANDING - Match Home Page Fonts and Colors */
/* Ensure restaurant page uses same branding as home page */
#restaurant-content {
    font-family: 'Open Sans', sans-serif !important;
    color: #212529 !important;
}

/* Typography - Match home page */
#restaurant-content h1,
#restaurant-content h2,
#restaurant-content h3,
#restaurant-content h4,
#restaurant-content h5,
#restaurant-content h6,
#restaurant-content .h1,
#restaurant-content .h2,
#restaurant-content .h3,
#restaurant-content .h4,
#restaurant-content .h5,
#restaurant-content .h6 {
    font-family: 'Open Sans', sans-serif !important;
    color: #1a202c !important;
    font-weight: 600 !important;
}

/* Category headings - Center aligned with higher specificity */
/* Override any padding that might affect alignment */
#restaurant-content .container-restorant > div[id],
#restaurant-content .container-restorant > div[id] h1,
#restaurant-content div[id] h1,
#restaurant-content .breakfast0 h1,
#restaurant-content div[id].breakfast0 h1,
#restaurant-content div[class*="breakfast"] h1,
#restaurant-content div[id="breakfast0"] h1,
#restaurant-content #breakfast0 h1 {
    font-family: 'Open Sans', sans-serif !important;
    color: #1a202c !important;
    font-weight: 600 !important;
    font-size: 1.75rem !important;
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
    display: block !important;
    width: 100% !important;
}

/* Center align category heading containers - override padding */
#restaurant-content .container-restorant > div[id],
#restaurant-content div[id],
#restaurant-content .breakfast0,
#restaurant-content div[id].breakfast0,
#restaurant-content div[id="breakfast0"],
#restaurant-content #breakfast0 {
    text-align: center !important;
    display: block !important;
    width: 100% !important;
    padding-left: 2rem !important;
    padding-right: 2rem !important;
}

/* Links - Match home page colors */
#restaurant-content a {
    color: #32325d !important;
    font-family: 'Open Sans', sans-serif !important;
}

#restaurant-content a:hover {
    color: #dc3545 !important;
}

/* Text colors - Match home page */
#restaurant-content .text-muted {
    color: #6c757d !important;
}

#restaurant-content .res_title,
#restaurant-content .res_title a {
    font-family: 'Open Sans', sans-serif !important;
    color: #1a202c !important;
    font-weight: 600 !important;
}

#restaurant-content .res_title a:hover {
    color: #dc3545 !important;
}

/* Buttons - Match home page styling */
#restaurant-content .btn {
    font-family: 'Open Sans', sans-serif !important;
}

#restaurant-content .btn-primary {
    background-color: var(--dash-primary, #6366f1) !important;
    border-color: var(--dash-primary, #6366f1) !important;
    color: #ffffff !important;
}

#restaurant-content .btn-primary:hover {
    background-color: #4f46e5 !important;
    border-color: #4f46e5 !important;
}

/* Navigation tabs - Match home page */
#restaurant-content .nav-link {
    font-family: 'Open Sans', sans-serif !important;
    color: #4a5568 !important;
}

#restaurant-content .nav-link.active {
    color: #dc3545 !important;
    font-weight: 600 !important;
}

#restaurant-content .nav-link:hover {
    color: #dc3545 !important;
}

/* Item price - Match home page */
#restaurant-content .item-price {
    font-family: 'Open Sans', sans-serif !important;
    color: #ffffff !important;
    font-weight: 600 !important;
}

/* Body text */
#restaurant-content p,
#restaurant-content span,
#restaurant-content div:not([class*="strip"]):not([class*="card"]) {
    font-family: 'Open Sans', sans-serif !important;
}

/* Ensure common text elements use Open Sans */
#restaurant-content p,
#restaurant-content span:not([class*="fa"]):not([class*="icon"]),
#restaurant-content div,
#restaurant-content label,
#restaurant-content input,
#restaurant-content textarea,
#restaurant-content select,
#restaurant-content button {
    font-family: 'Open Sans', sans-serif !important;
}

/* Restaurant Header Section - Match home page styling */
.section-profile-cover,
.section-shaped {
    font-family: 'Open Sans', sans-serif !important;
}

/* Apply home page gradient branding to restaurant page */
.section-profile-cover {
    background: radial-gradient(circle at top left, #ffe9e0 0, #ffffff 45%, #f2f8ff 100%) !important;
}

/* Apply gradient to section below cover image */
.section.pt-lg-0.mb--5.mt--9 {
    background: radial-gradient(circle at top left, #ffe9e0 0, #ffffff 45%, #f2f8ff 100%) !important;
}

/* Apply gradient to restaurant content section */
#restaurant-content.section,
.section.pt-lg-0#restaurant-content {
    background: radial-gradient(circle at top left, #ffe9e0 0, #ffffff 45%, #f2f8ff 100%) !important;
}

/* Apply gradient to mobile section */
.section.section-lg.d-md-block {
    background: radial-gradient(circle at top left, #ffe9e0 0, #ffffff 45%, #f2f8ff 100%) !important;
}

/* Mobile view - Add top padding to prevent touching main menu */
@media (max-width: 991.98px) {
    .section.section-lg.d-md-block.d-lg-none.d-lx-none {
        padding-top: 100px !important;
    }
}

.section-profile-cover .title h1,
.section-profile-cover .display-3 {
    font-family: 'Open Sans', sans-serif !important;
    font-weight: 800 !important;
    color: #ffffff !important;
}

.section-profile-cover .title .display-4 {
    font-family: 'Open Sans', sans-serif !important;
    color: #ffffff !important;
}

/* Section styling - Match home page */
#restaurant-content.section,
.section.pt-lg-0 {
    font-family: 'Open Sans', sans-serif !important;
    background: radial-gradient(circle at top left, #ffe9e0 0, #ffffff 45%, #f2f8ff 100%) !important;
}

/* Navigation tabs styling - Match home page */
#restaurant-content .tabbable,
#restaurant-content .tabbable.sticky,
.tabbable.sticky {
    font-family: 'Open Sans', sans-serif !important;
    background-color: #ffffff !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

#restaurant-content .nav-pills,
#restaurant-content .tabbable .nav-pills,
.tabbable .nav-pills,
#restaurant-content .tabbable.sticky .nav-pills,
.tabbable.sticky .nav-pills,
#restaurant-content .tabbable.sticky ul.nav,
.tabbable.sticky ul.nav,
#restaurant-content .tabbable.sticky ul.nav-pills,
.tabbable.sticky ul.nav-pills {
    font-family: 'Open Sans', sans-serif !important;
    justify-content: center !important;
    text-align: center !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    list-style: none !important;
}

#restaurant-content .nav-pills .nav-link {
    font-family: 'Open Sans', sans-serif !important;
    color: #4a5568 !important;
    font-weight: 400 !important;
    border-radius: 8px !important;
    transition: all 0.2s ease !important;
}

#restaurant-content .nav-pills .nav-link:hover {
    color: #dc3545 !important;
    background-color: rgba(220, 53, 69, 0.08) !important;
}

#restaurant-content .nav-pills .nav-link.active {
    color: #dc3545 !important;
    background-color: rgba(220, 53, 69, 0.08) !important;
    font-weight: 600 !important;
}

/* Strip/Card styling - Match home page */
#restaurant-content .strip {
    font-family: 'Open Sans', sans-serif !important;
    background-color: #ffffff !important;
    border-radius: 1.25rem !important;
    box-shadow: 0 10px 24px rgba(15, 23, 42, 0.06) !important;
    transition: transform 0.18s ease, box-shadow 0.18s ease !important;
}

#restaurant-content .strip:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 18px 36px rgba(15, 23, 42, 0.12) !important;
}

/* Item images */
#restaurant-content .strip img {
    border-radius: 1.25rem 1.25rem 0 0 !important;
}

/* Background colors - Match home page with gradient */
#restaurant-content,
#restaurant-content .container-restorant {
    background: radial-gradient(circle at top left, #ffe9e0 0, #ffffff 45%, #f2f8ff 100%) !important;
}

/* Section headings spacing - Match home page */
#restaurant-content .section h2,
#restaurant-content .section h1 {
    margin-bottom: 1rem !important;
    padding: 0 1rem !important;
}

/* Mobile section heading */
.section.section-lg h1.display-3 {
    font-family: 'Open Sans', sans-serif !important;
    font-weight: 800 !important;
    color: #1a202c !important;
}

/* Button styling - Match home page exactly */
#restaurant-content .btn-light {
    background-color: #ffffff !important;
    border-color: #e2e8f0 !important;
    color: #4a5568 !important;
    font-family: 'Open Sans', sans-serif !important;
}

#restaurant-content .btn-light:hover {
    background-color: #f7fafc !important;
    border-color: #dc3545 !important;
    color: #dc3545 !important;
}

/* Popular slider arrows - Match home page */
#restaurant-content .popular-slider-arrow {
    background-color: #ffffff !important;
    border-color: #e2e8f0 !important;
    color: #4a5568 !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1) !important;
}

#restaurant-content .popular-slider-arrow:hover {
    background-color: #f7fafc !important;
    border-color: #dc3545 !important;
    color: #dc3545 !important;
    box-shadow: 0 4px 12px rgba(220, 53, 69, 0.2) !important;
}

/* Text colors throughout */
#restaurant-content .text-white {
    color: #ffffff !important;
}

#restaurant-content .text-dark {
    color: #1a202c !important;
}

/* Ensure all inputs and form elements match */
#restaurant-content input,
#restaurant-content textarea,
#restaurant-content select {
    font-family: 'Open Sans', sans-serif !important;
    color: #212529 !important;
}

/* Modal and popup styling */
#restaurant-content .modal,
#restaurant-content .modal-content {
    font-family: 'Open Sans', sans-serif !important;
}

#restaurant-content .modal-header h5 {
    font-family: 'Open Sans', sans-serif !important;
    font-weight: 600 !important;
    color: #1a202c !important;
}

/* FINAL OVERRIDE - Category headings center alignment - Highest priority */
#restaurant-content .container-restorant > div[id] h1,
#restaurant-content .container.container-restorant > div[id] h1,
#restaurant-content section#restaurant-content .container-restorant > div[id] h1,
#restaurant-content section#restaurant-content .container-restorant div[id] h1 {
    text-align: center !important;
    margin: 0 auto !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
    display: block !important;
    width: 100% !important;
}

#restaurant-content .container-restorant > div[id],
#restaurant-content .container.container-restorant > div[id],
#restaurant-content section#restaurant-content .container-restorant > div[id] {
    text-align: center !important;
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}

/* Sticky category headings - Position below navigation menu */
.category-heading-sticky,
#restaurant-content .category-heading-sticky,
#restaurant-content .container-restorant > div[id].category-heading-sticky,
#restaurant-content div[id].category-heading-sticky,
.container-restorant > div[id].category-heading-sticky {
    position: -webkit-sticky !important;
    position: sticky !important;
    top: 138px !important; /* Default - will be overridden by JavaScript */
    z-index: 999 !important; /* Below nav (z-index: 1000) but above content */
    background: radial-gradient(circle at top left, #ffe9e0 0, #ffffff 45%, #f2f8ff 100%) !important;
    padding: 0 !important;
    margin-bottom: 0 !important;
    width: 100% !important;
    display: block !important;
}

/* Ensure parent containers don't prevent sticky */
#restaurant-content,
#restaurant-content .container-restorant,
.container-restorant {
    overflow: visible !important;
}

/* Center align restaurant info section */
.container .col-lg-12 .display-4,
.container .col-lg-12 p {
    text-align: center !important;
}

/* Center align social links */
.list-inline {
    text-align: center !important;
    justify-content: center !important;
    display: flex !important;
}

.list-inline-item {
    display: inline-block !important;
}

/* Category Navigation Slider Styles */
.category-nav-slider {
    scrollbar-width: none !important; /* Firefox */
    -ms-overflow-style: none !important; /* IE and Edge */
}

.category-nav-slider::-webkit-scrollbar {
    display: none !important; /* Chrome, Safari, Opera */
}

.category-nav-slider .nav-item {
    flex-shrink: 0 !important;
}

.category-nav-slider .category-nav-link {
    border-radius: 8px !important;
    transition: all 0.2s ease !important;
    text-decoration: none !important;
    white-space: nowrap !important;
}

.category-nav-slider .category-nav-link:hover {
    background-color: rgba(220, 53, 69, 0.08) !important;
    transform: translateY(-2px) !important;
}

.category-nav-slider .category-nav-link.active {
    background-color: rgba(220, 53, 69, 0.15) !important;
    font-weight: 600 !important;
}

.category-nav-slider .category-nav-link img {
    transition: transform 0.2s ease !important;
}

.category-nav-slider .category-nav-link:hover img {
    transform: scale(1.05) !important;
}

/* Search Box on Cover Image - Modern Styling */
.section-profile-cover {
    position: relative !important;
    min-height: 500px !important;
    overflow: hidden !important;
}

.section-profile-cover .bg-image {
    width: 100% !important;
    height: auto !important;
    display: block !important;
    object-fit: cover !important;
}

.section-profile-cover .itemsSearchHolder {
    width: 100% !important;
    max-width: 600px !important;
    margin: 0 auto !important;
}

.section-profile-cover .itemsSearchHolder .select2-container {
    width: 100% !important;
    max-width: 600px !important;
}

/* Enhanced Modern Search Box Styling */
.section-profile-cover .itemsSearch .select2-container--default .select2-selection--single {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.98) 0%, rgba(255, 255, 255, 0.95) 100%) !important;
    backdrop-filter: blur(25px) saturate(180%) !important;
    -webkit-backdrop-filter: blur(25px) saturate(180%) !important;
    box-shadow: 
        0 10px 40px rgba(0, 0, 0, 0.15),
        0 4px 12px rgba(0, 0, 0, 0.1),
        inset 0 1px 0 rgba(255, 255, 255, 0.6) !important;
    border: 2px solid rgba(255, 255, 255, 0.8) !important;
    border-radius: 60px !important;
    height: 64px !important;
    padding: 0 70px 0 28px !important;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
    position: relative !important;
    overflow: hidden !important;
}

.section-profile-cover .itemsSearch .select2-container--default .select2-selection--single::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: -100% !important;
    width: 100% !important;
    height: 100% !important;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.3), transparent) !important;
    transition: left 0.5s ease !important;
}

.section-profile-cover .itemsSearch .select2-container--default.select2-container--focus .select2-selection--single::before {
    left: 100% !important;
}

.section-profile-cover .itemsSearch .select2-container--default.select2-container--focus .select2-selection--single {
    border-color: rgba(220, 53, 69, 0.6) !important;
    box-shadow: 
        0 12px 48px rgba(220, 53, 69, 0.2),
        0 6px 16px rgba(220, 53, 69, 0.15),
        inset 0 1px 0 rgba(255, 255, 255, 0.8) !important;
    transform: translateY(-3px) scale(1.01) !important;
    background: linear-gradient(135deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0.98) 100%) !important;
}

.section-profile-cover .itemsSearch .select2-container--default .select2-selection--single .select2-selection__rendered {
    line-height: 60px !important;
    color: #1a202c !important;
    font-size: 17px !important;
    font-weight: 500 !important;
    padding-left: 0 !important;
    letter-spacing: 0.3px !important;
}

.section-profile-cover .itemsSearch .select2-container--default .select2-selection--single .select2-selection__placeholder {
    color: #718096 !important;
    font-weight: 400 !important;
    opacity: 0.8 !important;
}

.section-profile-cover .itemsSearch .select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 52px !important;
    width: 52px !important;
    right: 6px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    background: linear-gradient(135deg, #dc3545 0%, #c82333 100%) !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: 
        0 6px 20px rgba(220, 53, 69, 0.4),
        0 2px 8px rgba(220, 53, 69, 0.3),
        inset 0 1px 0 rgba(255, 255, 255, 0.2) !important;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
    position: relative !important;
    overflow: hidden !important;
}

.section-profile-cover .itemsSearch .select2-container--default .select2-selection--single .select2-selection__arrow::before {
    content: '' !important;
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    width: 0 !important;
    height: 0 !important;
    background: rgba(255, 255, 255, 0.3) !important;
    border-radius: 50% !important;
    transform: translate(-50%, -50%) !important;
    transition: width 0.4s ease, height 0.4s ease !important;
}

.section-profile-cover .itemsSearch .select2-container--default.select2-container--focus .select2-selection--single .select2-selection__arrow::before,
.section-profile-cover .itemsSearch .select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow::before {
    width: 100px !important;
    height: 100px !important;
}

.section-profile-cover .itemsSearch .select2-container--default.select2-container--focus .select2-selection--single .select2-selection__arrow,
.section-profile-cover .itemsSearch .select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow {
    transform: translateY(-50%) scale(1.08) rotate(90deg) !important;
    box-shadow: 
        0 8px 24px rgba(220, 53, 69, 0.5),
        0 4px 12px rgba(220, 53, 69, 0.4),
        inset 0 1px 0 rgba(255, 255, 255, 0.3) !important;
    background: linear-gradient(135deg, #e74c3c 0%, #dc3545 100%) !important;
}

.section-profile-cover .itemsSearchHolder .select2-container--default .select2-selection--single .select2-selection__arrow b {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cpath d='m21 21-4.35-4.35'%3E%3C/path%3E%3C/svg%3E") !important;
    background-color: transparent !important;
    background-size: 22px 22px !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    border: none !important;
    height: 22px !important;
    width: 22px !important;
    margin: auto !important;
    top: auto !important;
    left: auto !important;
    position: relative !important;
    z-index: 1 !important;
    transition: transform 0.3s ease !important;
}

.section-profile-cover .itemsSearch .select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {
    transform: scale(1.1) !important;
}

/* Make search input visible and styled for section-profile-cover */
.section-profile-cover .itemsSearch .select2-dropdown .select2-search {
    display: block !important;
}

.section-profile-cover .itemsSearch .select2-search__field {
    width: 100% !important;
    padding: 10px 15px !important;
    border: none !important;
    outline: none !important;
    background: transparent !important;
    font-size: 17px !important;
    color: #1a202c !important;
}

/* Make selection area look like input field */
.section-profile-cover .itemsSearch .select2-container--default .select2-selection--single {
    cursor: text !important;
}

.section-profile-cover .itemsSearch .select2-container--default .select2-selection--single .select2-selection__rendered {
    cursor: text !important;
}

/* Enhanced Dropdown Results Styling */
.section-profile-cover .itemsSearch .select2-dropdown {
    background: rgba(255, 255, 255, 0.98) !important;
    backdrop-filter: blur(20px) saturate(180%) !important;
    -webkit-backdrop-filter: blur(20px) saturate(180%) !important;
    border: 1px solid rgba(255, 255, 255, 0.8) !important;
    border-radius: 20px !important;
    box-shadow: 
        0 20px 60px rgba(0, 0, 0, 0.15),
        0 8px 24px rgba(0, 0, 0, 0.1) !important;
    margin-top: 8px !important;
    overflow: hidden !important;
}

.section-profile-cover .itemsSearch .select2-results__option {
    padding: 14px 20px !important;
    font-size: 15px !important;
    transition: all 0.2s ease !important;
    border-bottom: 1px solid rgba(0, 0, 0, 0.05) !important;
}

.section-profile-cover .itemsSearch .select2-results__option:last-child {
    border-bottom: none !important;
}

.section-profile-cover .itemsSearch .select2-results__option--highlighted {
    background: linear-gradient(90deg, rgba(220, 53, 69, 0.1) 0%, rgba(220, 53, 69, 0.05) 100%) !important;
    color: #dc3545 !important;
    font-weight: 600 !important;
    padding-left: 28px !important;
}

.section-profile-cover .itemsSearch .select2-results__group {
    background: rgba(220, 53, 69, 0.08) !important;
    color: #dc3545 !important;
    font-weight: 700 !important;
    font-size: 13px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    padding: 12px 20px !important;
    border-bottom: 2px solid rgba(220, 53, 69, 0.2) !important;
}

.section-profile-cover .title.white {
    position: relative !important;
    z-index: 5 !important;
}

.section-profile-cover .title.white h1,
.section-profile-cover .title.white .display-3 {
    text-shadow: 2px 2px 8px rgba(0, 0, 0, 0.7), 0 0 20px rgba(0, 0, 0, 0.3) !important;
    color: #ffffff !important;
    font-weight: 700 !important;
    margin-bottom: 0 !important;
}

/* Restaurant name at top of cover image */
.section-profile-cover [style*="top: 30px"] .title.white h1,
.section-profile-cover [style*="top: 30px"] h1 {
    font-size: 2.5rem !important;
    line-height: 1.2 !important;
    text-shadow: 2px 2px 10px rgba(0, 0, 0, 0.8), 0 0 30px rgba(0, 0, 0, 0.4) !important;
}

@media (min-width: 1200px) {
    .section-profile-cover [style*="top: 30px"] .title.white h1,
    .section-profile-cover [style*="top: 30px"] h1 {
        font-size: 3rem !important;
    }
}

/* FINAL OVERRIDE - Remove ALL padding from container-restorant - Maximum specificity */
#restaurant-content .container.container-restorant,
#restaurant-content .container-restorant.container,
#restaurant-content .container-restorant,
#restaurant-content .container,
section#restaurant-content .container.container-restorant,
section#restaurant-content .container-restorant.container,
section#restaurant-content .container-restorant,
section#restaurant-content .container,
#restaurant-content section .container.container-restorant,
#restaurant-content section .container-restorant.container,
#restaurant-content section .container-restorant,
#restaurant-content section .container,
.container.container-restorant,
.container-restorant.container,
.container-restorant {
    padding-left: 0 !important;
    padding-right: 0 !important;
    padding: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    margin: 0 !important;
    max-width: 100vw !important;
    width: 100vw !important;
    width: 100% !important;
    box-sizing: border-box !important;
    position: relative !important;
}

/* Use negative margins to break out of any parent padding - Fixed values */
#restaurant-content .container.container-restorant,
#restaurant-content .container-restorant {
    margin-left: -15px !important;
    margin-right: -15px !important;
    width: calc(100% + 30px) !important;
    max-width: calc(100% + 30px) !important;
}

/* If parent has padding, use viewport width */
body #restaurant-content .container.container-restorant,
body #restaurant-content .container-restorant,
html body #restaurant-content .container.container-restorant,
html body #restaurant-content .container-restorant {
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* Also ensure the section has no padding */
#restaurant-content.section,
section#restaurant-content,
#restaurant-content section {
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

/* FINAL OVERRIDE - Remove all padding from navigation menu - Maximum specificity */
#restaurant-content .container-restorant > nav.tabbable.sticky,
#restaurant-content .container.container-restorant > nav.tabbable.sticky,
section#restaurant-content .container-restorant > nav.tabbable.sticky,
section#restaurant-content .container-restorant nav.tabbable.sticky,
nav.tabbable.sticky,
#restaurant-content .container-restorant nav.tabbable,
#restaurant-content .container.container-restorant nav.tabbable {
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

#restaurant-content .container-restorant > nav.tabbable.sticky > ul,
#restaurant-content .container-restorant > nav.tabbable.sticky ul.nav,
#restaurant-content .container-restorant > nav.tabbable.sticky ul.nav-pills,
#restaurant-content .container-restorant nav.tabbable > ul,
#restaurant-content .container-restorant nav.tabbable ul.nav,
#restaurant-content .container-restorant nav.tabbable ul.nav-pills,
section#restaurant-content .container-restorant > nav.tabbable.sticky > ul,
section#restaurant-content .container-restorant > nav.tabbable.sticky ul.nav,
section#restaurant-content .container-restorant > nav.tabbable.sticky ul.nav-pills,
section#restaurant-content .container-restorant nav.tabbable > ul,
section#restaurant-content .container-restorant nav.tabbable ul.nav,
section#restaurant-content .container-restorant nav.tabbable ul.nav-pills,
nav.tabbable.sticky > ul,
nav.tabbable.sticky ul.nav,
nav.tabbable.sticky ul.nav-pills,
nav.tabbable > ul,
nav.tabbable ul.nav,
nav.tabbable ul.nav-pills {
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    list-style: none !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

/* Break nav out of container padding using negative margins if needed */
#restaurant-content .container-restorant:has(> nav.tabbable),
#restaurant-content .container.container-restorant:has(> nav.tabbable) {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* Nav is now outside container - ensure full width with no padding */
#restaurant-content > nav.tabbable.sticky,
section#restaurant-content > nav.tabbable.sticky,
#restaurant-content nav.tabbable.sticky {
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

#restaurant-content > nav.tabbable.sticky > ul,
#restaurant-content > nav.tabbable.sticky ul.nav,
#restaurant-content > nav.tabbable.sticky ul.nav-pills,
section#restaurant-content > nav.tabbable.sticky > ul,
section#restaurant-content > nav.tabbable.sticky ul.nav,
section#restaurant-content > nav.tabbable.sticky ul.nav-pills {
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

/* ============================================
   FINAL ABSOLUTE OVERRIDE FOR SLIDER - MUST WORK
   ============================================ */
@media (min-width: 992px) {
    /* Force slider to display as horizontal flex container */
    #restaurant-content .col-12.popular-slider-wrapper > .popular-slider,
    #restaurant-content .popular-slider-wrapper > .popular-slider,
    #restaurant-content .popular-slider,
    #restaurant-content div[class*="popular-slider"]:not(.popular-slider-wrapper):not(.popular-slider-arrow):not(.popular-slider-arrow-left):not(.popular-slider-arrow-right) {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        overflow-y: visible !important;
        gap: 1.5rem !important;
        width: 100% !important;
        padding: 0.5rem 0 !important;
        scroll-behavior: smooth !important;
        scrollbar-width: none !important;
        -ms-overflow-style: none !important;
        margin: 0 !important;
    }
    
    /* Force slider items to fixed width */
    #restaurant-content .popular-slider > [class*="col-"],
    #restaurant-content .popular-slider > div[class*="col-"],
    #restaurant-content .col-12.popular-slider-wrapper .popular-slider > [class*="col-"] {
        flex: 0 0 260px !important;
        min-width: 260px !important;
        max-width: 260px !important;
        width: 260px !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    
    /* Hide scrollbar */
    #restaurant-content .popular-slider::-webkit-scrollbar {
        display: none !important;
    }
}

@media (min-width: 1200px) {
    #restaurant-content .popular-slider > [class*="col-"],
    #restaurant-content .popular-slider > div[class*="col-"] {
        flex: 0 0 280px !important;
        min-width: 280px !important;
        max-width: 280px !important;
        width: 280px !important;
    }
}

/* ============================================
   OUT OF STOCK ITEM STYLING
   ============================================ */
/* Gray out out-of-stock images */
.item-out-of-stock .out-of-stock-image {
    filter: grayscale(100%) brightness(0.6) !important;
    opacity: 0.7 !important;
}

/* Disable pointer and cursor for out of stock items */
.item-out-of-stock a.disabled {
    cursor: not-allowed !important;
    pointer-events: none !important;
}

/* Out of Stock Overlay on Image */
.out-of-stock-overlay {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    background: rgba(0, 0, 0, 0.5) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    z-index: 10 !important;
    border-radius: 0.5rem !important;
}

.out-of-stock-badge {
    background: linear-gradient(135deg, #dc3545 0%, #c82333 100%) !important;
    color: white !important;
    padding: 12px 24px !important;
    border-radius: 8px !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    box-shadow: 0 4px 12px rgba(220, 53, 69, 0.4) !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
}

.out-of-stock-badge i {
    font-size: 16px !important;
}

/* Out of Stock Price Styling */
.out-of-stock-price {
    opacity: 0.5 !important;
    text-decoration: line-through !important;
}

/* Out of Stock Title Styling */
.out-of-stock-title {
    text-align: center !important;
    padding: 0.5rem 0.75rem 0 !important;
}

.out-of-stock-title b {
    display: block !important;
    color: #6c757d !important;
    margin-bottom: 4px !important;
}

.out-of-stock-label {
    display: inline-block !important;
    background: #dc3545 !important;
    color: white !important;
    padding: 4px 12px !important;
    border-radius: 4px !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    margin-top: 4px !important;
}

/* Bootstrap 5 Compatibility Classes for Bootstrap 4 CSS */
/* Margin Start (ms-*) = Margin Left (ml-*) */
.ms-0 { margin-left: 0 !important; }
.ms-1 { margin-left: 0.25rem !important; }
.ms-2 { margin-left: 0.5rem !important; }
.ms-3 { margin-left: 1rem !important; }
.ms-4 { margin-left: 1.5rem !important; }
.ms-5 { margin-left: 3rem !important; }
.ms-auto { margin-left: auto !important; }
.ms-lg-auto { margin-left: auto !important; }

/* Margin End (me-*) = Margin Right (mr-*) */
.me-0 { margin-right: 0 !important; }
.me-1 { margin-right: 0.25rem !important; }
.me-2 { margin-right: 0.5rem !important; }
.me-3 { margin-right: 1rem !important; }
.me-4 { margin-right: 1.5rem !important; }
.me-5 { margin-right: 3rem !important; }
.me-auto { margin-right: auto !important; }

/* Padding Start (ps-*) = Padding Left (pl-*) */
.ps-0 { padding-left: 0 !important; }
.ps-1 { padding-left: 0.25rem !important; }
.ps-2 { padding-left: 0.5rem !important; }
.ps-3 { padding-left: 1rem !important; }
.ps-4 { padding-left: 1.5rem !important; }
.ps-5 { padding-left: 3rem !important; }

/* Padding End (pe-*) = Padding Right (pr-*) */
.pe-0 { padding-right: 0 !important; }
.pe-1 { padding-right: 0.25rem !important; }
.pe-2 { padding-right: 0.5rem !important; }
.pe-3 { padding-right: 1rem !important; }
.pe-4 { padding-right: 1.5rem !important; }
.pe-5 { padding-right: 3rem !important; }

/* Text alignment */
.text-start { text-align: left !important; }
.text-end { text-align: right !important; }

/* Float */
.float-start { float: left !important; }
.float-end { float: right !important; }

/* Responsive margin start auto */
@media (min-width: 576px) {
    .ms-sm-auto { margin-left: auto !important; }
}
@media (min-width: 768px) {
    .ms-md-auto { margin-left: auto !important; }
}
@media (min-width: 992px) {
    .ms-lg-auto { margin-left: auto !important; }
}
@media (min-width: 1200px) {
    .ms-xl-auto { margin-left: auto !important; }
}


/* ==========================================================================
   MODERN DASHBOARD UI OVERRIDES
   ========================================================================== */

:root {
    --dash-font: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    --dash-bg: #f0f2f5;
    --dash-surface: #ffffff;
    --dash-border: #e2e8f0;
    --dash-text: #1e293b;
    --dash-text-muted: #64748b;
    --dash-primary: #6366f1;
    --dash-primary-light: rgba(99, 102, 241, 0.08);
    --dash-shadow-sm: 0 1px 3px rgba(0,0,0,0.06), 0 1px 2px rgba(0,0,0,0.04);
    --dash-shadow-md: 0 4px 6px -1px rgba(0,0,0,0.07), 0 2px 4px -2px rgba(0,0,0,0.05);
    --dash-shadow-lg: 0 10px 25px -3px rgba(0,0,0,0.08), 0 4px 6px -4px rgba(0,0,0,0.05);
    --dash-radius: 8px;
    --dash-transition: 0.2s ease;
}

/* Global Font Override */
body, .main-content, .navbar, .card, .btn, input, select, textarea, label, h1, h2, h3, h4, h5, h6, p, span, a, li, td, th {
    font-family: var(--dash-font) !important;
}

/* Dashboard Header */
.dash-header {
    background: linear-gradient(135deg, #4f46e5 0%, #7c3aed 50%, #6366f1 100%) !important;
    position: relative;
}

.dash-header::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.03'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
    pointer-events: none;
}

.dash-header > .container-fluid {
    position: relative;
    z-index: 1;
}

/* Dashboard Filters */
.dash-filters .select2-container.form-control {
    background: rgba(255, 255, 255, 0.15) !important;
    border: 1px solid rgba(255, 255, 255, 0.3) !important;
    border-radius: 10px !important;
    height: 40px !important;
    padding: 0 !important;
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
    transition: all 0.2s ease !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.08) !important;
}
.dash-filters .select2-container.form-control:hover {
    background: rgba(255, 255, 255, 0.22) !important;
    border-color: rgba(255, 255, 255, 0.45) !important;
}
.dash-filters .select2-container--default .select2-selection--single {
    background: transparent !important;
    border: none !important;
    height: 40px !important;
    border-radius: 10px !important;
}
.dash-filters .select2-container--default .select2-selection--single .select2-selection__rendered {
    color: #fff !important;
    line-height: 40px !important;
    padding-left: 14px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    letter-spacing: 0.3px !important;
}
.dash-filters .select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 40px !important;
    right: 8px !important;
    top: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 24px !important;
    position: absolute !important;
}
.dash-filters .select2-container--default .select2-selection--single .select2-selection__arrow b {
    border: none !important;
    width: 7px !important;
    height: 7px !important;
    border-right: 2px solid rgba(255,255,255,0.75) !important;
    border-bottom: 2px solid rgba(255,255,255,0.75) !important;
    transform: rotate(45deg) !important;
    position: static !important;
    margin: -2px 0 0 0 !important;
    display: block !important;
    transition: transform 0.2s ease !important;
}
.dash-filters .select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {
    transform: rotate(-135deg) !important;
    margin: 2px 0 0 0 !important;
}

/* Dashboard filter Select2 dropdown panel */
.dash-filters .select2-container--open + .select2-container--open .select2-dropdown,
.select2-container--default .select2-dropdown {
    border: none !important;
    border-radius: 12px !important;
    box-shadow: 0 8px 32px rgba(0,0,0,0.12), 0 2px 8px rgba(0,0,0,0.06) !important;
    overflow: hidden !important;
    margin-top: 4px !important;
}
.select2-container--default .select2-search--dropdown {
    padding: 10px 12px !important;
    background: #f8fafc !important;
    border-bottom: 1px solid #e2e8f0 !important;
}
.select2-container--default .select2-search--dropdown .select2-search__field {
    border: 1px solid #e2e8f0 !important;
    border-radius: 8px !important;
    padding: 6px 10px !important;
    font-size: 13px !important;
    outline: none !important;
    transition: border-color 0.2s ease !important;
}
.select2-container--default .select2-search--dropdown .select2-search__field:focus {
    border-color: #6366f1 !important;
    box-shadow: 0 0 0 3px rgba(99,102,241,0.1) !important;
}
.select2-container--default .select2-results__option {
    padding: 10px 14px !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    color: #334155 !important;
    transition: all 0.15s ease !important;
    border-bottom: 1px solid #f1f5f9 !important;
}
.select2-container--default .select2-results__option:last-child {
    border-bottom: none !important;
}
.select2-container--default .select2-results__option--highlighted[aria-selected] {
    background: linear-gradient(135deg, #6366f1 0%, #818cf8 100%) !important;
    color: #fff !important;
}
.select2-container--default .select2-results__option[aria-selected="true"] {
    background: #f0f0ff !important;
    color: #6366f1 !important;
    font-weight: 600 !important;
}
.dash-filters .reload {
    background: rgba(255, 255, 255, 0.15) !important;
    border: 1px solid rgba(255, 255, 255, 0.3) !important;
    border-radius: 10px !important;
    height: 40px !important;
    display: inline-flex !important;
    align-items: center !important;
    padding: 0 16px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
    transition: all 0.2s ease !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.08) !important;
    white-space: nowrap !important;
}
.dash-filters .reload:hover {
    background: rgba(255, 255, 255, 0.25) !important;
    border-color: rgba(255, 255, 255, 0.5) !important;
    transform: translateY(-1px) !important;
}
.dash-filters .dash-select {
    background: rgba(255, 255, 255, 0.12) !important;
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
    color: white !important;
    border-radius: 6px !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    padding: 8px 12px !important;
    max-width: 180px;
    backdrop-filter: blur(4px);
}

.dash-filters .dash-select option {
    background: #1e293b;
    color: white;
}

.dash-filters .reload {
    background: rgba(255, 255, 255, 0.12) !important;
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
    color: white !important;
    border-radius: 6px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    padding: 8px 16px !important;
    white-space: nowrap;
    backdrop-filter: blur(4px);
    transition: all var(--dash-transition);
}

.dash-filters .reload:hover {
    background: rgba(255, 255, 255, 0.2) !important;
}

.dash-filters .dash-input {
    background: rgba(255, 255, 255, 0.15) !important;
    border: 1px solid rgba(255, 255, 255, 0.3) !important;
    color: white !important;
    border-radius: 10px !important;
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.08) !important;
    transition: all 0.2s ease !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    padding: 8px 14px !important;
    width: auto !important;
    min-width: 110px;
    max-width: 160px;
    flex: 1 1 auto !important;
    height: 40px !important;
}
.dash-filters .dash-input:hover,
.dash-filters .dash-input:focus {
    background: rgba(255, 255, 255, 0.22) !important;
    border-color: rgba(255, 255, 255, 0.45) !important;
}

.dash-filters .dash-input::placeholder {
    color: rgba(255, 255, 255, 0.6) !important;
}

.dash-header-date-filter {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 8px !important;
    flex-wrap: nowrap !important;
}

@media (max-width: 575px) {
    .dash-header-date-filter {
        flex-wrap: wrap !important;
        justify-content: flex-start !important;
    }
}

.dash-filters .dash-filter-btn {
    background: rgba(255, 255, 255, 0.95) !important;
    color: #4f46e5 !important;
    border: none !important;
    border-radius: 10px !important;
    height: 40px !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1) !important;
    border-radius: 6px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    padding: 8px 18px !important;
    transition: all var(--dash-transition);
}

.dash-filters .dash-filter-btn:hover {
    background: #ffffff !important;
    box-shadow: 0 4px 12px rgba(0,0,0,0.15) !important;
    transform: translateY(-1px);
}

/* Stats Card Container */
.dash-stats-card {
    border: none !important;
    border-radius: var(--dash-radius) !important;
    box-shadow: var(--dash-shadow-md) !important;
    overflow: hidden;
}

.dash-stats-card .card-header {
    background: transparent !important;
    border-bottom: 1px solid var(--dash-border) !important;
    padding: 16px 20px !important;
}

.dash-stats-card .card-header .card-title {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: var(--dash-text) !important;
}

.dash-stats-card .card-body {
    padding: 16px 12px !important;
}

/* Stats Row */
.stats-row {
    margin: 0 -6px !important;
    display: flex !important;
    flex-wrap: wrap !important;
}

.stats-row > [class*="col-"] {
    padding: 0 6px !important;
}

@media (min-width: 992px) {
    .stats-row > .stat-col {
        flex: 0 0 14.2857% !important;
        max-width: 14.2857% !important;
    }
}
@media (min-width: 768px) and (max-width: 991px) {
    .stats-row > .stat-col {
        flex: 0 0 14.2857% !important;
        max-width: 14.2857% !important;
    }
}

/* Stat Items - Modern Individual Colors */
.stat-item {
    border-radius: var(--dash-radius) !important;
    padding: 12px 8px 10px !important;
    text-align: center !important;
    height: 100% !important;
    transition: all var(--dash-transition) !important;
    position: relative;
    overflow: hidden;
}

.stat-item:hover {
    transform: translateY(-2px);
}

.stat-item .stat-icon {
    width: 28px;
    height: 28px;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 8px;
    font-size: 14px;
}

.stat-item .stat-label {
    display: block !important;
    font-size: 9px !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    letter-spacing: 0.5px !important;
    font-weight: 600 !important;
    margin-bottom: 4px !important;
}

.stat-item .stat-value {
    display: block !important;
    font-size: 20px !important;
    font-weight: 800 !important;
    line-height: 1.2;
}

/* Individual stat colors */
.stat-gross {
    background: linear-gradient(135deg, #10b981 0%, #059669 100%) !important;
    box-shadow: 0 4px 14px rgba(16, 185, 129, 0.3) !important;
}
.stat-gross .stat-icon { background: rgba(255,255,255,0.2); color: white; }
.stat-gross .stat-label { color: rgba(255,255,255,0.85) !important; }
.stat-gross .stat-value { color: white !important; }

.stat-discount {
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%) !important;
    box-shadow: 0 4px 14px rgba(245, 158, 11, 0.3) !important;
}
.stat-discount .stat-icon { background: rgba(255,255,255,0.2); color: white; }
.stat-discount .stat-label { color: rgba(255,255,255,0.85) !important; }
.stat-discount .stat-value { color: white !important; }

.stat-net {
    background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%) !important;
    box-shadow: 0 4px 14px rgba(59, 130, 246, 0.3) !important;
}
.stat-net .stat-icon { background: rgba(255,255,255,0.2); color: white; }
.stat-net .stat-label { color: rgba(255,255,255,0.85) !important; }
.stat-net .stat-value { color: white !important; }

.stat-tax {
    background: linear-gradient(135deg, #8b5cf6 0%, #7c3aed 100%) !important;
    box-shadow: 0 4px 14px rgba(139, 92, 246, 0.3) !important;
}
.stat-tax .stat-icon { background: rgba(255,255,255,0.2); color: white; }
.stat-tax .stat-label { color: rgba(255,255,255,0.85) !important; }
.stat-tax .stat-value { color: white !important; }

.stat-after-tax {
    background: linear-gradient(135deg, #06b6d4 0%, #0891b2 100%) !important;
    box-shadow: 0 4px 14px rgba(6, 182, 212, 0.3) !important;
}
.stat-after-tax .stat-icon { background: rgba(255,255,255,0.2); color: white; }
.stat-after-tax .stat-label { color: rgba(255,255,255,0.85) !important; }
.stat-after-tax .stat-value { color: white !important; }

.stat-orders {
    background: linear-gradient(135deg, #ec4899 0%, #db2777 100%) !important;
    box-shadow: 0 4px 14px rgba(236, 72, 153, 0.3) !important;
}
.stat-orders .stat-icon { background: rgba(255,255,255,0.2); color: white; }
.stat-orders .stat-label { color: rgba(255,255,255,0.85) !important; }
.stat-orders .stat-value { color: white !important; }

.stat-avg {
    background: linear-gradient(135deg, #6366f1 0%, #4f46e5 100%) !important;
    box-shadow: 0 4px 14px rgba(99, 102, 241, 0.3) !important;
}
.stat-avg .stat-icon { background: rgba(255,255,255,0.2); color: white; }
.stat-avg .stat-label { color: rgba(255,255,255,0.85) !important; }
.stat-avg .stat-value { color: white !important; }

@media (max-width: 767px) {
    .stat-item {
        padding: 12px 8px 10px !important;
    }
    .stat-item .stat-icon {
        width: 28px;
        height: 28px;
        font-size: 12px;
    }
    .stat-item .stat-label {
        font-size: 9.5px !important;
    }
    .stat-item .stat-value {
        font-size: 18px !important;
    }
}

/* Dashboard Main Content Cards */
.container-fluid.mt-5.mt--7 > .card {
    border: none !important;
    border-radius: var(--dash-radius) !important;
    box-shadow: var(--dash-shadow-md) !important;
    overflow: hidden;
}

.container-fluid.mt-5.mt--7 > .card > .card-body {
    padding: 20px !important;
}

/* Chart Section Filter Panels */
.container-fluid.mt-5.mt--7 .card-body .form-group label {
    font-size: 12px !important;
    font-weight: 600 !important;
    color: var(--dash-text-muted) !important;
    margin-bottom: 4px !important;
}

.container-fluid.mt-5.mt--7 .card-body .form-control {
    border: 1px solid var(--dash-border) !important;
    border-radius: 6px !important;
    font-size: 13px !important;
    padding: 8px 12px !important;
    background: var(--dash-surface) !important;
    color: var(--dash-text) !important;
    transition: border-color var(--dash-transition), box-shadow var(--dash-transition);
}

.iti .form-control {
    padding-top: 8px !important;
    padding-bottom: 8px !important;
    padding-right: 36px !important;
}

.container-fluid.mt-5.mt--7 .card-body .form-control:focus {
    border-color: var(--dash-primary) !important;
    box-shadow: 0 0 0 3px var(--dash-primary-light) !important;
}

.container-fluid.mt-5.mt--7 .card-body .btn-primary {
    background: var(--dash-primary) !important;
    border: none !important;
    border-radius: 6px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    padding: 8px 18px !important;
    transition: all var(--dash-transition);
}

.container-fluid.mt-5.mt--7 .card-body .btn-primary:hover {
    background: #4f46e5 !important;
    box-shadow: 0 4px 12px rgba(99, 102, 241, 0.3) !important;
    transform: translateY(-1px);
}

/* ApexCharts Container Styling */
.apexcharts-canvas {
    font-family: var(--dash-font) !important;
}

.apexcharts-title-text {
    font-family: var(--dash-font) !important;
    font-weight: 700 !important;
    fill: var(--dash-text) !important;
}

.apexcharts-legend-text {
    font-family: var(--dash-font) !important;
    font-weight: 500 !important;
}

/* Sidebar Modernization */
#sidenav-main {
    background: var(--dash-surface) !important;
    border-right: 1px solid var(--dash-border) !important;
    box-shadow: none !important;
}

#sidenav-main .navbar-brand-img {
    max-height: 38px;
}

/* Sidebar Group Headers */
.sidebar-group-header {
    font-family: var(--dash-font) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: var(--dash-text) !important;
    padding: 10px 16px !important;
    border-radius: 6px !important;
    transition: all var(--dash-transition) !important;
}

.sidebar-group-header:hover {
    background-color: var(--dash-primary-light) !important;
    color: var(--dash-primary) !important;
}

.sidebar-group-header.active {
    background-color: var(--dash-primary-light) !important;
    color: var(--dash-primary) !important;
}

/* Sidebar Nav Links */
.sidebar-group-items .nav-link {
    font-family: var(--dash-font) !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    color: var(--dash-text-muted) !important;
    padding: 8px 16px 8px 40px !important;
    border-radius: 6px !important;
    transition: all var(--dash-transition) !important;
}

.sidebar-group-items .nav-link:hover {
    color: var(--dash-primary) !important;
    background-color: var(--dash-primary-light) !important;
}

.sidebar-group-items .nav-link.active {
    color: var(--dash-primary) !important;
    font-weight: 600 !important;
    background-color: var(--dash-primary-light) !important;
}

.sidebar-group-items .nav-link i {
    font-size: 14px !important;
    width: 20px !important;
}

/* Sidebar Pinned Items */
.sidebar-pinned-items .nav-link {
    font-family: var(--dash-font) !important;
    font-weight: 500 !important;
    border-radius: 6px !important;
    color: var(--dash-text-muted) !important;
}

.sidebar-pinned-items .nav-link.active {
    color: var(--dash-primary) !important;
    background: var(--dash-primary-light) !important;
    font-weight: 600 !important;
}

.sidebar-pinned-items .nav-link:hover {
    color: var(--dash-primary) !important;
    background: var(--dash-primary-light) !important;
}

/* Top Navbar Modernization */
#navbar-main {
    background: transparent !important;
    padding: 16px 24px !important;
}

#navbar-main .h4 {
    font-size: 16px !important;
    font-weight: 700 !important;
    letter-spacing: 0.3px;
}

#navbar-main .avatar {
    border: 2px solid rgba(255,255,255,0.3) !important;
}

#navbar-main .font-weight-bold {
    font-size: 13px !important;
    font-weight: 600 !important;
}

#navbar-main .dropdown-menu {
    border: 1px solid var(--dash-border) !important;
    border-radius: var(--dash-radius) !important;
    box-shadow: var(--dash-shadow-lg) !important;
    padding: 8px !important;
}

#navbar-main .dropdown-item {
    border-radius: 6px !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    padding: 8px 12px !important;
    transition: background var(--dash-transition);
}

#navbar-main .dropdown-item:hover {
    background: var(--dash-primary-light) !important;
}

/* Responsive adjustments */
@media (max-width: 991px) {
    .dash-filters .col-md-6:first-child {
        margin-bottom: 12px;
    }
}

/* Category Select in Filters */
.container-fluid.mt-5.mt--7 select#category {
    border: 1px solid var(--dash-border) !important;
    border-radius: 6px !important;
    font-size: 13px !important;
    padding: 8px 12px !important;
    background: var(--dash-surface) !important;
    color: var(--dash-text) !important;
    min-width: 160px;
}

/* Card separator between chart sections */
.container-fluid.mt-5.mt--7 > .card > .card-body + .card-body {
    border-top: 1px solid var(--dash-border) !important;
}

/* Footer */
.footer {
    font-family: var(--dash-font) !important;
}


/* ==========================================================================
   GLOBAL UI MODERNIZATION - ALL PAGES
   ========================================================================== */

/* --- Page Header (Purple Gradient) --- */
.header.bg-gradient-primary {
    background: linear-gradient(135deg, #4f46e5 0%, #7c3aed 50%, #6366f1 100%) !important;
    position: relative;
}

/* --- Main Content Cards --- */
.container-fluid .card.shadow,
.container-fluid .card {
    border: 1px solid var(--dash-border, #e2e8f0) !important;
    border-radius: var(--dash-radius, 8px) !important;
    box-shadow: var(--dash-shadow-md, 0 4px 6px -1px rgba(0,0,0,0.07)) !important;
    overflow: hidden;
}

/* --- Card Header --- */
.card-header.border-0,
.card .card-header {
    background: var(--dash-surface, #fff) !important;
    border-bottom: 1px solid var(--dash-border, #e2e8f0) !important;
    padding: 16px 20px !important;
}

.card-header h3,
.card-header .mb-0 {
    font-family: var(--dash-font, 'Inter', sans-serif) !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    color: var(--dash-text, #1e293b) !important;
}

/* --- Data Tables --- */
.table.align-items-center,
.table-flush {
    font-family: var(--dash-font, 'Inter', sans-serif) !important;
}

.table thead th,
.thead-light th {
    font-family: var(--dash-font, 'Inter', sans-serif) !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    color: var(--dash-text-muted, #64748b) !important;
    background: #f8fafc !important;
    border-bottom: 2px solid var(--dash-border, #e2e8f0) !important;
    padding: 12px 16px !important;
    white-space: nowrap;
}

.table tbody td {
    font-family: var(--dash-font, 'Inter', sans-serif) !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    color: var(--dash-text, #1e293b) !important;
    padding: 12px 16px !important;
    border-bottom: 1px solid #f1f5f9 !important;
    vertical-align: middle !important;
    transition: background 0.15s ease;
}

.table tbody tr:hover td {
    background: var(--dash-primary-light, rgba(99, 102, 241, 0.04)) !important;
}

.table tbody tr:last-child td {
    border-bottom: none !important;
}

/* --- Card Footer & Pagination --- */
.card-footer {
    background: var(--dash-surface, #fff) !important;
    border-top: 1px solid var(--dash-border, #e2e8f0) !important;
    padding: 12px 20px !important;
}

.card-footer h4 {
    font-family: var(--dash-font, 'Inter', sans-serif) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    color: var(--dash-text-muted, #64748b) !important;
    text-align: center;
}

.pagination {
    gap: 4px;
}

.pagination .page-item .page-link {
    font-family: var(--dash-font, 'Inter', sans-serif) !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    border: 1px solid var(--dash-border, #e2e8f0) !important;
    border-radius: 6px !important;
    padding: 6px 12px !important;
    color: var(--dash-text, #1e293b) !important;
    background: var(--dash-surface, #fff) !important;
    transition: all 0.15s ease;
    min-width: 36px;
    text-align: center;
}

.pagination .page-item .page-link:hover {
    background: var(--dash-primary-light, rgba(99, 102, 241, 0.08)) !important;
    color: var(--dash-primary, #6366f1) !important;
    border-color: var(--dash-primary, #6366f1) !important;
}

.pagination .page-item.active .page-link {
    background: var(--dash-primary, #6366f1) !important;
    border-color: var(--dash-primary, #6366f1) !important;
    color: white !important;
    font-weight: 600 !important;
}

.pagination .page-item.disabled .page-link {
    color: #cbd5e1 !important;
    background: #f8fafc !important;
    border-color: #e2e8f0 !important;
}

/* --- Global Buttons --- */
.btn {
    font-family: var(--dash-font, 'Inter', sans-serif) !important;
    font-weight: 600 !important;
    border-radius: 6px !important;
    transition: all 0.2s ease !important;
    letter-spacing: 0.2px;
}

.btn-sm {
    font-size: 12px !important;
    padding: 6px 14px !important;
}

.btn-md {
    font-size: 13px !important;
}

.btn-primary,
.btn-primary:focus {
    background: var(--dash-primary, #6366f1) !important;
    border-color: var(--dash-primary, #6366f1) !important;
    color: white !important;
}

.btn-primary:hover {
    background: #4f46e5 !important;
    border-color: #4f46e5 !important;
    box-shadow: 0 4px 12px rgba(99, 102, 241, 0.3) !important;
    transform: translateY(-1px);
}

.btn-danger,
.btn-danger:focus {
    background: #ef4444 !important;
    border-color: #ef4444 !important;
    color: white !important;
}

.btn-danger:hover {
    background: #dc2626 !important;
    border-color: #dc2626 !important;
    box-shadow: 0 4px 12px rgba(239, 68, 68, 0.3) !important;
    transform: translateY(-1px);
}

.btn-success,
.btn-success:focus {
    background: #10b981 !important;
    border-color: #10b981 !important;
    color: white !important;
}

.btn-success:hover {
    background: #059669 !important;
    border-color: #059669 !important;
    box-shadow: 0 4px 12px rgba(16, 185, 129, 0.3) !important;
    transform: translateY(-1px);
}

.btn-warning,
.btn-warning:focus {
    background: #f59e0b !important;
    border-color: #f59e0b !important;
    color: white !important;
}

.btn-warning:hover {
    background: #d97706 !important;
    border-color: #d97706 !important;
    box-shadow: 0 4px 12px rgba(245, 158, 11, 0.3) !important;
}

.btn-info,
.btn-info:focus {
    background: #06b6d4 !important;
    border-color: #06b6d4 !important;
    color: white !important;
}

.btn-info:hover {
    background: #0891b2 !important;
    border-color: #0891b2 !important;
    box-shadow: 0 4px 12px rgba(6, 182, 212, 0.3) !important;
}

.btn-secondary,
.btn-secondary:focus {
    background: #64748b !important;
    border-color: #64748b !important;
    color: white !important;
}

.btn-secondary:hover {
    background: #475569 !important;
    border-color: #475569 !important;
    box-shadow: 0 4px 12px rgba(100, 116, 139, 0.3) !important;
    transform: translateY(-1px);
}

.btn-outline-secondary {
    border-color: var(--dash-border, #e2e8f0) !important;
    color: var(--dash-text-muted, #64748b) !important;
    background: transparent !important;
}

.btn-outline-secondary:hover {
    background: #f8fafc !important;
    color: var(--dash-text, #1e293b) !important;
}

.btn-outline-primary {
    border: 1px solid var(--dash-primary, #6366f1) !important;
    color: var(--dash-primary, #6366f1) !important;
    background: transparent !important;
}

.btn-outline-primary:hover {
    background: var(--dash-primary, #6366f1) !important;
    color: #fff !important;
}

.btn-outline-success {
    border: 1px solid #10b981 !important;
    color: #10b981 !important;
    background: transparent !important;
}

.btn-outline-success:hover {
    background: #10b981 !important;
    color: #fff !important;
}

.btn-outline-danger {
    border: 1px solid #ef4444 !important;
    color: #ef4444 !important;
    background: transparent !important;
}

.btn-outline-danger:hover {
    background: #ef4444 !important;
    color: #fff !important;
}

.btn-outline-warning {
    border: 1px solid #f59e0b !important;
    color: #f59e0b !important;
    background: transparent !important;
}

.btn-outline-warning:hover {
    background: #f59e0b !important;
    color: #fff !important;
}

.btn-outline-info {
    border: 1px solid #06b6d4 !important;
    color: #06b6d4 !important;
    background: transparent !important;
}

.btn-outline-info:hover {
    background: #06b6d4 !important;
    color: #fff !important;
}

/* --- Global Form Elements --- */
.form-control {
    font-family: var(--dash-font, 'Inter', sans-serif) !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    border: 1px solid var(--dash-border, #e2e8f0) !important;
    border-radius: 6px !important;
    padding: 8px 12px !important;
    color: var(--dash-text, #1e293b) !important;
    background: var(--dash-surface, #fff) !important;
    transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
    height: auto !important;
}

.form-control:focus {
    border-color: var(--dash-primary, #6366f1) !important;
    box-shadow: 0 0 0 3px var(--dash-primary-light, rgba(99, 102, 241, 0.08)) !important;
}

.form-control-label,
label {
    font-family: var(--dash-font, 'Inter', sans-serif) !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    color: var(--dash-text-muted, #64748b) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.3px !important;
    margin-bottom: 4px !important;
}

.input-group-alternative {
    border: 1px solid var(--dash-border, #e2e8f0) !important;
    border-radius: 6px !important;
    box-shadow: none !important;
    transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
    overflow: hidden;
}

.input-group-alternative:focus-within {
    border-color: var(--dash-primary, #6366f1) !important;
    box-shadow: 0 0 0 3px var(--dash-primary-light, rgba(99, 102, 241, 0.08)) !important;
}

.input-group-text {
    background: #f8fafc !important;
    border: none !important;
    color: var(--dash-text-muted, #64748b) !important;
}

/* --- Select Dropdowns --- */
select.form-control {
    appearance: none;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e") !important;
    background-position: right 10px center !important;
    background-repeat: no-repeat !important;
    background-size: 16px !important;
    padding-right: 32px !important;
}

/* --- Badges & Labels --- */
.badge {
    font-family: var(--dash-font, 'Inter', sans-serif) !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    padding: 4px 10px !important;
    border-radius: 20px !important;
    letter-spacing: 0.3px;
}

.badge-success,
.badge.bg-success {
    background: #dcfce7 !important;
    color: #15803d !important;
}

.badge-danger,
.badge.bg-danger {
    background: #fee2e2 !important;
    color: #dc2626 !important;
}

.badge-warning,
.badge.bg-warning {
    background: #fef3c7 !important;
    color: #b45309 !important;
}

.badge-info,
.badge.bg-info {
    background: #dbeafe !important;
    color: #1d4ed8 !important;
}

.badge-primary,
.badge.bg-primary {
    background: #e0e7ff !important;
    color: #4338ca !important;
}

/* --- Modals --- */
.modal-content {
    border: none !important;
    border-radius: var(--dash-radius, 8px) !important;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.15) !important;
    overflow: hidden;
}

.modal-header {
    background: #f8fafc !important;
    border-bottom: 1px solid var(--dash-border, #e2e8f0) !important;
    padding: 16px 20px !important;
}

.modal-title {
    font-family: var(--dash-font, 'Inter', sans-serif) !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    color: var(--dash-text, #1e293b) !important;
}

.modal-body {
    padding: 20px !important;
}

.modal-footer {
    border-top: 1px solid var(--dash-border, #e2e8f0) !important;
    padding: 12px 20px !important;
    background: #f8fafc !important;
}

/* --- Alerts --- */
.alert {
    font-family: var(--dash-font, 'Inter', sans-serif) !important;
    border-radius: var(--dash-radius, 8px) !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    border: none !important;
    padding: 12px 16px !important;
}

/* --- Breadcrumbs --- */
.breadcrumb {
    font-family: var(--dash-font, 'Inter', sans-serif) !important;
    font-size: 13px !important;
    background: transparent !important;
    padding: 0 !important;
}

.breadcrumb-item a {
    color: rgba(255, 255, 255, 0.7) !important;
    font-weight: 500 !important;
}

.breadcrumb-item.active {
    color: white !important;
    font-weight: 600 !important;
}

/* --- Empty State Improvements --- */
.card-footer h4:not(.StatsHeader),
.card-body h4:only-child {
    font-family: var(--dash-font, 'Inter', sans-serif) !important;
    font-weight: 500 !important;
    color: var(--dash-text-muted, #64748b) !important;
    font-size: 14px !important;
    text-align: center;
    padding: 24px 0 !important;
}

/* --- Action Icon Button --- */
.btn-icon-only {
    width: 32px !important;
    height: 32px !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 6px !important;
    transition: all 0.15s ease !important;
}

.btn-icon-only.text-light {
    color: var(--dash-text-muted, #94a3b8) !important;
}

.btn-icon-only.text-light:hover {
    background: var(--dash-primary-light, rgba(99, 102, 241, 0.08)) !important;
    color: var(--dash-primary, #6366f1) !important;
}

/* --- Dropdown Menus --- */
.dropdown-menu {
    font-family: var(--dash-font, 'Inter', sans-serif) !important;
    border: 1px solid var(--dash-border, #e2e8f0) !important;
    border-radius: var(--dash-radius, 8px) !important;
    box-shadow: var(--dash-shadow-lg, 0 10px 25px -3px rgba(0,0,0,0.08)) !important;
    padding: 6px !important;
}

.dropdown-item {
    font-size: 13px !important;
    font-weight: 500 !important;
    padding: 8px 12px !important;
    border-radius: 6px !important;
    transition: background 0.15s ease !important;
}

.dropdown-item:hover {
    background: var(--dash-primary-light, rgba(99, 102, 241, 0.08)) !important;
    color: var(--dash-primary, #6366f1) !important;
}

/* --- Custom Toggle / Switch --- */
.custom-toggle input:checked + .custom-toggle-slider {
    background: #10b981 !important;
    border-color: #10b981 !important;
}

.custom-toggle input:checked + .custom-toggle-slider:before {
    background-color: #fff !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);
}

/* --- Table Action Buttons --- */
.table .btn-sm {
    font-size: 12px !important;
    font-weight: 600 !important;
    padding: 5px 12px !important;
    border-radius: 6px !important;
    white-space: nowrap !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
    transition: all 0.15s ease !important;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05) !important;
    line-height: 1.5 !important;
    text-decoration: none !important;
    margin-bottom: 3px !important;
    margin-right: 4px !important;
    vertical-align: middle !important;
}

.table .btn-sm:hover {
    transform: translateY(-1px) !important;
    box-shadow: 0 3px 8px rgba(0, 0, 0, 0.1) !important;
    text-decoration: none !important;
}

.table .btn-sm i,
.table .btn-sm .fas,
.table .btn-sm .ni,
.table .btn-sm .btn-inner--icon i {
    font-size: 11px !important;
    line-height: 1 !important;
}

.table .btn-sm.btn-danger {
    background: transparent !important;
    border: 1.5px solid #ef4444 !important;
    color: #ef4444 !important;
}

.table .btn-sm.btn-danger:hover {
    background: #ef4444 !important;
    color: #fff !important;
    box-shadow: 0 3px 8px rgba(239, 68, 68, 0.3) !important;
}

.table .btn-sm.btn-primary {
    background: var(--dash-primary, #6366f1) !important;
    border-color: var(--dash-primary, #6366f1) !important;
    color: #fff !important;
}

.table .btn-sm.btn-primary:hover {
    background: #4f46e5 !important;
    border-color: #4f46e5 !important;
    box-shadow: 0 3px 8px rgba(99, 102, 241, 0.3) !important;
}

.table .btn-sm.btn-success {
    background: #10b981 !important;
    border-color: #10b981 !important;
    color: #fff !important;
}

.table .btn-sm.btn-success:hover {
    background: #059669 !important;
    border-color: #059669 !important;
    box-shadow: 0 3px 8px rgba(16, 185, 129, 0.3) !important;
}

.table .btn-sm.btn-warning {
    background: #f59e0b !important;
    border-color: #f59e0b !important;
    color: #fff !important;
}

.table .btn-sm.btn-warning:hover {
    background: #d97706 !important;
    border-color: #d97706 !important;
    box-shadow: 0 3px 8px rgba(245, 158, 11, 0.3) !important;
}

.table .btn-sm.btn-info {
    background: #06b6d4 !important;
    border-color: #06b6d4 !important;
    color: #fff !important;
}

.table .btn-sm.btn-info:hover {
    background: #0891b2 !important;
    border-color: #0891b2 !important;
    box-shadow: 0 3px 8px rgba(6, 182, 212, 0.3) !important;
}

.table .btn-sm.btn-outline-success {
    background: transparent !important;
    border: 1.5px solid #10b981 !important;
    color: #10b981 !important;
}

.table .btn-sm.btn-outline-success:hover {
    background: #10b981 !important;
    color: #fff !important;
}

.table .btn-sm.btn-outline-danger {
    background: transparent !important;
    border: 1.5px solid #ef4444 !important;
    color: #ef4444 !important;
}

.table .btn-sm.btn-outline-danger:hover {
    background: #ef4444 !important;
    color: #fff !important;
}

.table td {
    vertical-align: middle !important;
}

/* --- Order Action Buttons --- */
.order-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    align-items: center;
}

.order-actions .btn {
    font-size: 12px !important;
    font-weight: 600 !important;
    padding: 6px 14px !important;
    border-radius: 6px !important;
    white-space: nowrap !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    letter-spacing: 0.2px !important;
    transition: all 0.15s ease !important;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06) !important;
    line-height: 1.4 !important;
    text-decoration: none !important;
}

.order-actions .btn:hover {
    transform: translateY(-1px) !important;
    box-shadow: 0 3px 8px rgba(0, 0, 0, 0.12) !important;
}

.order-actions .btn i,
.order-actions .btn .fas,
.order-actions .btn .ni {
    font-size: 11px !important;
}

.order-actions .btn-success {
    background: #10b981 !important;
    border-color: #10b981 !important;
    color: #fff !important;
}

.order-actions .btn-success:hover {
    background: #059669 !important;
    border-color: #059669 !important;
    box-shadow: 0 3px 8px rgba(16, 185, 129, 0.35) !important;
}

.order-actions .btn-danger {
    background: transparent !important;
    border: 1.5px solid #ef4444 !important;
    color: #ef4444 !important;
}

.order-actions .btn-danger:hover {
    background: #ef4444 !important;
    color: #fff !important;
    box-shadow: 0 3px 8px rgba(239, 68, 68, 0.35) !important;
}

.order-actions .btn-primary {
    background: var(--dash-primary, #6366f1) !important;
    border-color: var(--dash-primary, #6366f1) !important;
    color: #fff !important;
}

.order-actions .btn-primary:hover {
    background: #4f46e5 !important;
    border-color: #4f46e5 !important;
    box-shadow: 0 3px 8px rgba(99, 102, 241, 0.35) !important;
}

/* --- Filter Panel Styling --- */
#filters-area {
    background: #f8fafc;
    border-radius: var(--dash-radius, 8px);
    padding: 16px 20px;
    margin: 0 20px 16px;
    border: 1px solid var(--dash-border, #e2e8f0);
}

/* --- Select2 Overrides (Global) --- */
.select2-container--default .select2-selection--single {
    border: 1px solid var(--dash-border, #e2e8f0) !important;
    border-radius: 6px !important;
    height: 38px !important;
    font-family: var(--dash-font, 'Inter', sans-serif) !important;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
    line-height: 38px !important;
    font-size: 13px !important;
    color: var(--dash-text, #1e293b) !important;
    font-weight: 500 !important;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 38px !important;
}

.select2-dropdown {
    border: 1px solid var(--dash-border, #e2e8f0) !important;
    border-radius: 6px !important;
    box-shadow: var(--dash-shadow-md, 0 4px 6px -1px rgba(0,0,0,0.07)) !important;
}

.select2-results__option {
    font-size: 13px !important;
    padding: 8px 12px !important;
    font-weight: 500 !important;
}

.select2-container--default .select2-results__option--highlighted[aria-selected] {
    background: var(--dash-primary, #6366f1) !important;
}

/* --- Smooth Scrollbar / Scrollbar Styling --- */
.main-content::-webkit-scrollbar {
    width: 6px;
}

.main-content::-webkit-scrollbar-track {
    background: transparent;
}

.main-content::-webkit-scrollbar-thumb {
    background: #cbd5e1;
    border-radius: 3px;
}

.main-content::-webkit-scrollbar-thumb:hover {
    background: #94a3b8;
}

/* --- Table Responsive on Small Screens --- */
.table-responsive {
    border-radius: 0 !important;
}

/* --- Argon Icon Override --- */
.icon-shape {
    border-radius: 8px !important;
}

/* --- Datepicker Modernization --- */
.datepicker {
    font-family: var(--dash-font, 'Inter', sans-serif) !important;
    border-radius: var(--dash-radius, 8px) !important;
    border: 1px solid var(--dash-border, #e2e8f0) !important;
    box-shadow: var(--dash-shadow-lg, 0 10px 25px -3px rgba(0,0,0,0.08)) !important;
}

.datepicker table tr td.active,
.datepicker table tr td.active.highlighted,
.datepicker table tr td span.active {
    background: var(--dash-primary, #6366f1) !important;
    border-color: var(--dash-primary, #6366f1) !important;
}

/* --- SweetAlert Modernization --- */
.swal-modal {
    font-family: var(--dash-font, 'Inter', sans-serif) !important;
    border-radius: var(--dash-radius, 8px) !important;
}

.swal-title {
    font-family: var(--dash-font, 'Inter', sans-serif) !important;
    font-weight: 700 !important;
}

.swal-text {
    font-family: var(--dash-font, 'Inter', sans-serif) !important;
    font-weight: 500 !important;
}

.swal-button {
    font-family: var(--dash-font, 'Inter', sans-serif) !important;
    border-radius: 6px !important;
    font-weight: 600 !important;
}

/* --- Sidebar Dividers & Headings --- */
#sidenav-main hr {
    border-color: var(--dash-border, #e2e8f0) !important;
    opacity: 1;
}

#sidenav-main .navbar-heading {
    font-family: var(--dash-font, 'Inter', sans-serif) !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.8px !important;
    color: #94a3b8 !important;
}

/* --- Navbar Top User Dropdown --- */
#navbar-main .nav-link-inner--text {
    font-family: var(--dash-font, 'Inter', sans-serif) !important;
    font-weight: 600 !important;
    font-size: 13px !important;
}

/* --- Card Stats (Finances, etc.) --- */
.card-stats .card-body {
    padding: 16px 20px !important;
}

.card-stats .card-title {
    font-family: var(--dash-font, 'Inter', sans-serif) !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    color: var(--dash-text-muted, #64748b) !important;
}

.card-stats .h2 {
    font-family: var(--dash-font, 'Inter', sans-serif) !important;
    font-size: 20px !important;
    font-weight: 800 !important;
    color: var(--dash-text, #1e293b) !important;
}

/* --- Live Orders Kanban --- */
.order-kanban-column {
    background: #f8fafc;
    border-radius: var(--dash-radius, 8px);
    border: 1px solid var(--dash-border, #e2e8f0);
    min-height: 300px;
}

/* --- Tab Navigation --- */
.nav-tabs .nav-link {
    font-family: var(--dash-font, 'Inter', sans-serif) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: var(--dash-text-muted, #64748b) !important;
    border-radius: 6px 6px 0 0 !important;
    padding: 10px 16px !important;
    transition: all 0.2s ease;
}

.nav-tabs .nav-link.active {
    color: var(--dash-primary, #6366f1) !important;
    border-color: var(--dash-border, #e2e8f0) var(--dash-border, #e2e8f0) transparent !important;
}

.nav-pills .nav-link {
    font-family: var(--dash-font, 'Inter', sans-serif) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    border-radius: 6px !important;
    padding: 8px 16px !important;
}

.nav-pills .nav-link.active {
    background: var(--dash-primary, #6366f1) !important;
    color: white !important;
}

/* --- Tooltip --- */
.tooltip-inner {
    font-family: var(--dash-font, 'Inter', sans-serif) !important;
    font-size: 12px !important;
    border-radius: 6px !important;
    padding: 6px 10px !important;
}

/* --- Progress Bars --- */
.progress {
    border-radius: 20px !important;
    height: 8px !important;
    background: #e2e8f0 !important;
}

.progress-bar {
    border-radius: 20px !important;
    background: var(--dash-primary, #6366f1) !important;
}

/* --- Jasny File Input --- */
.fileinput .thumbnail {
    border-radius: var(--dash-radius, 8px) !important;
    border: 2px dashed var(--dash-border, #e2e8f0) !important;
}

/* --- Toast Notifications --- */
.notifyjs-corner {
    font-family: var(--dash-font, 'Inter', sans-serif) !important;
}

/* --- Live Orders Kanban Board --- */
.live-kanban-card {
    border: none !important;
    border-radius: var(--dash-radius, 8px) !important;
    box-shadow: var(--dash-shadow-md, 0 4px 6px -1px rgba(0,0,0,0.07)) !important;
    overflow: hidden;
    min-height: 350px;
}

.live-kanban-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 14px 18px !important;
    border-bottom: none !important;
}

.live-kanban-header h5 {
    color: white !important;
    font-size: 14px !important;
    font-weight: 700 !important;
}

.card .card-header.live-kanban-new,
.live-kanban-card .card-header.live-kanban-new {
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%) !important;
    border-bottom: none !important;
}

.card .card-header.live-kanban-accepted,
.live-kanban-card .card-header.live-kanban-accepted {
    background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%) !important;
    border-bottom: none !important;
}

.card .card-header.live-kanban-done,
.live-kanban-card .card-header.live-kanban-done {
    background: linear-gradient(135deg, #10b981 0%, #059669 100%) !important;
    border-bottom: none !important;
}

.live-kanban-body {
    padding: 12px !important;
    background: #f8fafc !important;
    min-height: 280px;
}

.live-kanban-body .list-group-item {
    background: var(--dash-surface, #fff) !important;
    border: 1px solid var(--dash-border, #e2e8f0) !important;
    border-radius: 6px !important;
    margin-bottom: 8px !important;
    padding: 12px !important;
    transition: all 0.2s ease;
}

.live-kanban-body .list-group-item:hover {
    box-shadow: var(--dash-shadow-sm, 0 1px 3px rgba(0,0,0,0.06)) !important;
    transform: translateY(-1px);
}

.live-kanban-body .list-group-item h4 a {
    font-size: 14px !important;
    font-weight: 700 !important;
    color: var(--dash-text, #1e293b) !important;
}

.live-kanban-body .list-group-item small {
    font-size: 12px !important;
    color: var(--dash-text-muted, #64748b) !important;
}

/* --- Drivers Map Card --- */
.drivers-map #map_location {
    border-radius: var(--dash-radius, 8px) !important;
    min-height: 350px;
}

/* ============================================ */
/* GLOBAL EMPTY STATE                           */
/* ============================================ */
.empty-state {
    padding: 48px 24px !important;
}

.empty-state-icon {
    width: 72px;
    height: 72px;
    border-radius: 50%;
    background: linear-gradient(135deg, #ede9fe 0%, #e0e7ff 100%);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 16px;
}

.empty-state-icon i {
    font-size: 28px;
    color: var(--dash-primary, #6366f1);
}

.empty-state-title {
    font-family: var(--dash-font, 'Inter', sans-serif) !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    color: var(--dash-text, #1e293b) !important;
    margin-bottom: 6px !important;
}

.empty-state-text {
    font-family: var(--dash-font, 'Inter', sans-serif) !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    color: var(--dash-text-muted, #94a3b8) !important;
    max-width: 360px;
    margin: 0 auto !important;
}

/* ============================================ */
/* ENHANCED PAGE HEADER                         */
/* ============================================ */
.dash-page .header.bg-gradient-primary,
.dash-page .header.dash-header {
    background: linear-gradient(135deg, #6366f1 0%, #4f46e5 50%, #4338ca 100%) !important;
    position: relative;
}

.card-header .mb-0,
.card-header h3 {
    font-family: var(--dash-font, 'Inter', sans-serif) !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    color: var(--dash-text, #1e293b) !important;
}

/* ============================================ */
/* ENHANCED CARD STYLING                        */
/* ============================================ */
.dash-page .card.shadow {
    border: 1px solid var(--dash-border, #e2e8f0) !important;
    border-radius: var(--dash-radius, 8px) !important;
    box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.04), 0 1px 2px -1px rgba(0, 0, 0, 0.04) !important;
    overflow: hidden;
}

.dash-page .card-header.border-0 {
    background: var(--dash-surface, #fff) !important;
    border-bottom: 1px solid var(--dash-border, #e2e8f0) !important;
    padding: 16px 20px !important;
}

/* ============================================ */
/* FILTER PANEL ENHANCEMENTS                    */
/* ============================================ */
.orders-filters,
.tab-content.orders-filters {
    background: #f8fafc;
    border-radius: 8px;
    padding: 16px;
    border: 1px solid var(--dash-border, #e2e8f0);
    margin-top: 12px;
}

.orders-filters .form-group {
    margin-bottom: 12px !important;
}

.orders-filters .form-control-label,
.orders-filters label {
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    color: var(--dash-text-muted, #64748b) !important;
    letter-spacing: 0.5px !important;
    margin-bottom: 4px !important;
}

/* ============================================ */
/* TABLE LINK COLORS                            */
/* ============================================ */
.table tbody td a {
    color: var(--dash-primary, #6366f1) !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    transition: color 0.15s ease;
}

.table tbody td a:hover {
    color: #4338ca !important;
    text-decoration: underline !important;
}

/* ============================================ */
/* ORDER STATUS BADGES                          */
/* ============================================ */
.badge-order-status {
    font-size: 10px !important;
    font-weight: 700 !important;
    padding: 4px 8px !important;
    border-radius: 4px !important;
    letter-spacing: 0.3px;
    text-transform: uppercase;
}

/* ============================================ */
/* CARD HEADER ACTION BUTTONS                   */
/* ============================================ */
.card-header .btn-sm.btn-primary {
    font-size: 12px !important;
    padding: 6px 14px !important;
    border-radius: 6px !important;
    font-weight: 600 !important;
}

/* ============================================ */
/* FORM GROUP WITHIN FILTER ROWS                */
/* ============================================ */
.card-header form .form-group {
    margin-bottom: 12px !important;
}

.card-header form .row {
    row-gap: 0;
}

/* ============================================ */
/* GENERAL INDEX CARD GRID (Slides, Pages, FAQ) */
/* ============================================ */
.cardWithShadow {
    border: 1px solid var(--dash-border, #e2e8f0) !important;
    border-radius: var(--dash-radius, 8px) !important;
    transition: all 0.2s ease !important;
    overflow: hidden;
}

.cardWithShadowAnimated:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.08) !important;
}

.cardWithShadow .card-title {
    font-family: var(--dash-font, 'Inter', sans-serif) !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    color: var(--dash-text, #1e293b) !important;
    margin-top: 12px !important;
}

.cardWithShadow .card-text {
    font-family: var(--dash-font, 'Inter', sans-serif) !important;
    font-size: 13px !important;
    color: var(--dash-text-muted, #64748b) !important;
}

.imgHolderInCard {
    border-radius: 6px;
    overflow: hidden;
}

.image-in-card {
    border-radius: 6px !important;
    border: none !important;
    width: 100%;
    height: 180px;
    object-fit: cover;
}

/* ============================================ */
/* RESTAURANT SETTINGS TABS                     */
/* ============================================ */
.nav-pills-restaurant .nav-link,
.nav-pills.nav-pills-icons .nav-link {
    font-family: var(--dash-font, 'Inter', sans-serif) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    border-radius: 8px !important;
    padding: 10px 20px !important;
    transition: all 0.2s ease;
}

/* ============================================ */
/* FINANCE STAT CARDS                           */
/* ============================================ */
.card-stats .card-body .row {
    align-items: center;
}

/* ============================================ */
/* INLINE STYLE OVERRIDES FOR LABELS            */
/* ============================================ */
.dash-page label.form-control-label,
.dash-page .form-group > label {
    text-transform: capitalize !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    color: var(--dash-text-muted, #64748b) !important;
    letter-spacing: 0.2px !important;
}

/* Keep uppercase only for filter labels */
.orders-filters label,
.card-header form label {
    text-transform: uppercase !important;
    font-size: 11px !important;
    letter-spacing: 0.5px !important;
}

/* ============================================ */
/* TABLE ACTION BUTTON CONSISTENCY              */
/* ============================================ */
.table td .btn {
    font-size: 11px !important;
    padding: 4px 12px !important;
    border-radius: 5px !important;
    font-weight: 600 !important;
    margin: 1px 2px !important;
}

/* ============================================ */
/* STAFF FILTER ROW STYLING                     */
/* ============================================ */
.card-header form.row {
    background: #f8fafc;
    border-radius: 8px;
    padding: 12px;
    border: 1px solid var(--dash-border, #e2e8f0);
    margin-top: 12px;
}

/* ============================================ */
/* RESTAURANT EDIT PAGE                         */
/* ============================================ */

/* Header gradient override for info header */
.dash-page .header.bg-gradient-info {
    background: linear-gradient(135deg, #6366f1 0%, #4f46e5 50%, #4338ca 100%) !important;
}

/* Tab pills in header */
.dash-page .header .nav-pills .nav-link {
    background: rgba(255, 255, 255, 0.12) !important;
    color: rgba(255, 255, 255, 0.85) !important;
    border: 1px solid rgba(255, 255, 255, 0.15) !important;
    backdrop-filter: blur(8px);
    font-size: 13px !important;
    font-weight: 600 !important;
    padding: 10px 18px !important;
    border-radius: 8px !important;
    transition: all 0.2s ease;
}

.dash-page .header .nav-pills .nav-link:hover {
    background: rgba(255, 255, 255, 0.2) !important;
    color: #fff !important;
}

.dash-page .header .nav-pills .nav-link.active {
    background: rgba(255, 255, 255, 0.95) !important;
    color: var(--dash-primary, #6366f1) !important;
    border-color: transparent !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

/* Section Headers */
.heading-small.text-muted {
    font-family: var(--dash-font, 'Inter', sans-serif) !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    color: var(--dash-primary, #6366f1) !important;
    margin-top: 24px !important;
    margin-bottom: 16px !important;
    padding-bottom: 10px !important;
    border-bottom: 2px solid #e0e7ff !important;
    display: flex;
    align-items: center;
    gap: 8px;
}

.heading-small.text-muted::before {
    content: '';
    display: inline-block;
    width: 4px;
    height: 16px;
    background: var(--dash-primary, #6366f1);
    border-radius: 2px;
}

/* Restaurant edit card */
.dash-page .card.bg-secondary {
    background: var(--dash-surface, #fff) !important;
    border: 1px solid var(--dash-border, #e2e8f0) !important;
    border-radius: var(--dash-radius, 8px) !important;
}

.dash-page .card.bg-secondary > .card-header.bg-white {
    background: var(--dash-surface, #fff) !important;
    border-bottom: 1px solid var(--dash-border, #e2e8f0) !important;
    padding: 16px 24px !important;
}

.dash-page .card.bg-secondary > .card-body {
    padding: 24px !important;
}

/* Amenities / Meals / Categories checkbox tables - multi-column */
.dash-page .card.card-profile > .table-responsive {
    max-height: 400px;
    overflow-y: auto;
    padding: 16px;
}

.dash-page .card.card-profile > .table-responsive table.table,
.dash-page .card.card-profile > .table-responsive > form > table.table {
    display: block !important;
    border-collapse: separate !important;
    border: none !important;
    margin: 0 !important;
}

.dash-page .card.card-profile > .table-responsive table.table > thead,
.dash-page .card.card-profile > .table-responsive > form > table.table > thead {
    display: none !important;
}

.dash-page .card.card-profile > .table-responsive table.table > tbody,
.dash-page .card.card-profile > .table-responsive > form > table.table > tbody {
    display: block !important;
    column-count: 3;
    column-gap: 16px;
}

@media (max-width: 992px) {
    .dash-page .card.card-profile > .table-responsive table.table > tbody,
    .dash-page .card.card-profile > .table-responsive > form > table.table > tbody {
        column-count: 2;
    }
}

@media (max-width: 576px) {
    .dash-page .card.card-profile > .table-responsive table.table > tbody,
    .dash-page .card.card-profile > .table-responsive > form > table.table > tbody {
        column-count: 1;
    }
}

.dash-page .card.card-profile > .table-responsive table.table > tbody > tr,
.dash-page .card.card-profile > .table-responsive > form > table.table > tbody > tr {
    display: flex !important;
    align-items: center;
    padding: 7px 12px;
    border-radius: 6px;
    border: none !important;
    gap: 8px;
    cursor: pointer;
    break-inside: avoid;
    transition: background 0.15s ease;
}

.dash-page .card.card-profile > .table-responsive table.table > tbody > tr:hover,
.dash-page .card.card-profile > .table-responsive > form > table.table > tbody > tr:hover {
    background: rgba(99, 102, 241, 0.06);
}

.dash-page .card.card-profile > .table-responsive table.table > tbody > tr > th,
.dash-page .card.card-profile > .table-responsive > form > table.table > tbody > tr > th {
    display: inline !important;
    border: none !important;
    padding: 0 !important;
    font-weight: 500 !important;
    font-size: 13px !important;
    color: var(--dash-text, #1e293b) !important;
    background: none !important;
}

.dash-page .card.card-profile > .table-responsive table.table > tbody > tr > th:last-child,
.dash-page .card.card-profile > .table-responsive > form > table.table > tbody > tr > th:last-child {
    order: -1;
    flex-shrink: 0;
}

/* Checkbox styling in tables */
.dash-page .card.card-profile input[type="checkbox"] {
    width: 16px;
    height: 16px;
    accent-color: var(--dash-primary, #6366f1);
    cursor: pointer;
    flex-shrink: 0;
}

/* Card profile header */
.dash-page .card.card-profile .card-header {
    background: #f8fafc !important;
    border-bottom: 1px solid var(--dash-border, #e2e8f0) !important;
    padding: 14px 20px !important;
}

.dash-page .card.card-profile .card-header h5 {
    font-family: var(--dash-font, 'Inter', sans-serif) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    color: var(--dash-text, #1e293b) !important;
}

/* Card profile container */
.dash-page .card.card-profile {
    border: 1px solid var(--dash-border, #e2e8f0) !important;
    border-radius: var(--dash-radius, 8px) !important;
    box-shadow: none !important;
    margin: 0 !important;
    overflow: hidden;
}

/* Image upload areas (legacy) */
.dash-page .fileinput {
    margin-bottom: 16px;
}

.dash-page .fileinput .thumbnail {
    border: 2px dashed var(--dash-border, #e2e8f0) !important;
    border-radius: 8px !important;
    padding: 4px !important;
    background: #f8fafc !important;
    transition: border-color 0.2s ease;
}

.dash-page .fileinput .thumbnail:hover {
    border-color: var(--dash-primary, #6366f1) !important;
}

.dash-page .fileinput .btn-file {
    border-radius: 6px !important;
    font-size: 12px !important;
    font-weight: 600 !important;
}

/* ---- Setup Wizard Sections ---- */
.setup-wizard {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.wizard-section {
    border: 1px solid var(--dash-border, #e2e8f0);
    border-radius: 10px;
    background: #fff;
    overflow: hidden;
    transition: box-shadow 0.2s, border-color 0.2s;
}
.wizard-section:hover {
    border-color: #c7d2fe;
}
.wizard-section.open {
    border-color: var(--dash-primary, #6366f1);
    box-shadow: 0 2px 12px rgba(99,102,241,0.08);
}
.wizard-section-header {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 16px;
    cursor: pointer;
    user-select: none;
    transition: background 0.15s;
}
.wizard-section-header:hover {
    background: #f8f9fe;
}
.wizard-step-indicator {
    width: 36px;
    height: 36px;
    border-radius: 10px;
    background: linear-gradient(135deg, #6366f1 0%, #818cf8 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
.wizard-step-indicator--admin {
    background: linear-gradient(135deg, #f59e0b 0%, #fbbf24 100%);
}
.wizard-step-num {
    color: #fff;
    font-weight: 700;
    font-size: 14px;
    line-height: 1;
}
.wizard-step-info {
    flex: 1;
    min-width: 0;
}
.wizard-step-title {
    display: block;
    font-weight: 600;
    font-size: 14px;
    color: #1e293b;
    line-height: 1.3;
}
.wizard-step-desc {
    display: block;
    font-size: 12px;
    color: #94a3b8;
    line-height: 1.3;
    margin-top: 1px;
}
.wizard-chevron {
    color: #94a3b8;
    font-size: 12px;
    transition: transform 0.25s;
    flex-shrink: 0;
}
.wizard-section.open .wizard-chevron {
    transform: rotate(180deg);
    color: var(--dash-primary, #6366f1);
}

/* Collapse/expand body */
.wizard-section-body {
    max-height: 0;
    overflow: hidden;
    padding: 0 16px;
    transition: max-height 0.35s ease, padding 0.25s ease;
}
.wizard-section.open .wizard-section-body {
    max-height: 2000px;
    padding: 4px 16px 16px;
    overflow: visible;
}

/* Admin section styling */
.wizard-section--admin {
    border-color: #fde68a;
    background: #fffdf5;
}
.wizard-section--admin:hover {
    border-color: #f59e0b;
}
.wizard-section--admin.open {
    border-color: #f59e0b;
    box-shadow: 0 2px 12px rgba(245,158,11,0.1);
}

/* ---- Image Upload Cards (Logos & Images) ---- */
.img-upload-grid {
    margin: 0 -8px;
}
.img-upload-grid > [class*="col-"] {
    padding-left: 8px;
    padding-right: 8px;
}
.img-upload-card {
    background: #fff;
    border: 1px solid var(--dash-border, #e2e8f0);
    border-radius: 10px;
    overflow: hidden;
    transition: box-shadow 0.2s, border-color 0.2s;
}
.img-upload-card:hover {
    border-color: var(--dash-primary, #6366f1);
    box-shadow: 0 4px 16px rgba(99,102,241,0.10);
}
.img-upload-header {
    display: flex;
    align-items: center;
    padding: 10px 14px;
    background: #f8f9fe;
    border-bottom: 1px solid var(--dash-border, #e2e8f0);
    gap: 10px;
}
.img-upload-title-wrap {
    min-width: 0;
    flex: 1;
    display: flex;
    flex-direction: column;
}
.img-upload-icon {
    width: 28px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #6366f1 0%, #818cf8 100%);
    color: #fff;
    border-radius: 7px;
    font-size: 12px;
    flex-shrink: 0;
}
.img-upload-label {
    display: block;
    font-weight: 600;
    font-size: 12.5px;
    color: #1e293b;
    line-height: 1.3;
}
.img-upload-sublabel {
    display: block;
    font-size: 11px;
    color: #94a3b8;
    font-weight: 400;
    line-height: 1.2;
    margin-top: 1px;
}
.img-upload-badge {
    display: inline-block;
    font-size: 10px;
    font-weight: 600;
    color: #6366f1;
    background: rgba(99,102,241,0.08);
    padding: 2px 7px;
    border-radius: 20px;
    white-space: nowrap;
    letter-spacing: 0.3px;
    text-transform: uppercase;
    margin-top: 3px;
    align-self: flex-start;
}

/* Upload Zone */
.img-upload-card .fileinput {
    margin-bottom: 0 !important;
}
.img-upload-zone {
    position: relative;
    cursor: pointer;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fafbff;
    transition: background 0.2s;
}
.img-upload-zone:hover {
    background: #f0f1ff;
}

/* Ratio-specific heights */
.img-upload-preview--wide {
    min-height: 90px;
    max-height: 90px;
}
.img-upload-preview--square {
    min-height: 180px;
    max-height: 180px;
}
.img-upload-preview--cover {
    min-height: 120px;
    max-height: 120px;
}
.img-upload-preview {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    overflow: hidden;
    border: none !important;
    border-radius: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}
.img-upload-preview img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
}

/* Placeholder (no image selected) */
.img-upload-placeholder {
    position: absolute;
    inset: 0;
    display: none;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 6px;
    color: #94a3b8;
    pointer-events: none;
    z-index: 2;
}
.fileinput-new .img-upload-placeholder {
    display: flex;
}
.img-upload-placeholder i {
    font-size: 28px;
    color: #c7d2fe;
    transition: color 0.2s;
}
.img-upload-zone:hover .img-upload-placeholder i {
    color: #6366f1;
}
.img-upload-placeholder span {
    font-size: 12px;
    font-weight: 500;
}

/* Change Overlay (image exists) */
.img-upload-overlay {
    position: absolute;
    inset: 0;
    display: none;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    background: rgba(99,102,241,0.7);
    color: #fff;
    opacity: 0;
    transition: opacity 0.25s;
    z-index: 3;
    pointer-events: none;
}
.fileinput-exists .img-upload-overlay {
    display: flex;
}
.fileinput-exists .img-upload-zone:hover .img-upload-overlay {
    opacity: 1;
}
.img-upload-overlay i {
    font-size: 20px;
}
.img-upload-overlay span {
    font-size: 12px;
    font-weight: 600;
}

/* Action buttons */
.img-upload-actions {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 8px 14px;
    border-top: 1px solid var(--dash-border, #e2e8f0);
    background: #fcfcff;
}
.img-upload-btn {
    font-size: 12px !important;
    font-weight: 600 !important;
    border-radius: 6px !important;
    padding: 4px 12px !important;
}

/* Error message */
.img-upload-error {
    font-size: 12px;
    color: #ef4444;
    font-weight: 500;
    padding: 6px 14px;
    background: #fef2f2;
    border-top: 1px solid #fecaca;
}

/* Form control alternative */
.form-control-alternative {
    border: 1px solid var(--dash-border, #e2e8f0) !important;
    box-shadow: none !important;
    border-radius: 6px !important;
}

.form-control-alternative:focus {
    border-color: var(--dash-primary, #6366f1) !important;
    box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.08) !important;
}

/* Toggle switches */
.custom-toggle {
    margin-top: 0 !important;
}

/* HR separators */
.dash-page .card.bg-secondary hr {
    border-color: var(--dash-border, #e2e8f0) !important;
    margin: 24px 0 !important;
}

/* Save button */
.dash-page .btn-success.mt-4 {
    padding: 10px 40px !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    border-radius: 8px !important;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

/* Owner info section readonly fields */
.dash-page input[readonly].form-control-alternative {
    background: #f1f5f9 !important;
    color: var(--dash-text-muted, #64748b) !important;
    cursor: not-allowed;
}

/* Working hours tab */
.dash-page .table .flatpickr-input {
    font-size: 13px !important;
    padding: 6px 10px !important;
}

/* Scrollbar for checkbox lists */
.dash-page .card.card-profile .table-responsive::-webkit-scrollbar {
    width: 5px;
}
.dash-page .card.card-profile .table-responsive::-webkit-scrollbar-track {
    background: transparent;
}
.dash-page .card.card-profile .table-responsive::-webkit-scrollbar-thumb {
    background: #cbd5e1;
    border-radius: 3px;
}
.dash-page .card.card-profile .table-responsive::-webkit-scrollbar-thumb:hover {
    background: #94a3b8;
}

/* Working hours day rows */
.dash-page .card.card-profile .card-body .row .custom-control-label {
    font-weight: 600 !important;
    font-size: 13px !important;
    color: var(--dash-text, #1e293b) !important;
}

/* Working hours shift tabs */
.dash-page .card.card-profile .nav-pills .nav-link {
    font-size: 13px !important;
    font-weight: 600 !important;
    border-radius: 6px !important;
}

/* Radius Generator Bar */
.radius-generator-bar {
    padding: 10px 14px;
    background: linear-gradient(135deg, #f0f1ff 0%, #e8f4fd 100%);
    border-bottom: 1px solid var(--dash-border, #e2e8f0);
    border-radius: 8px 8px 0 0;
}
.radius-label {
    font-weight: 600;
    font-size: 13px;
    color: var(--dash-primary, #6366f1);
    white-space: nowrap;
}
.radius-input {
    width: 80px !important;
    text-align: center;
    font-weight: 600;
    border-radius: 6px !important;
}
.radius-unit-select {
    width: 80px !important;
    font-weight: 500;
    border-radius: 6px !important;
    cursor: pointer;
}
.radius-generate-btn {
    white-space: nowrap;
    font-weight: 600;
    border-radius: 6px !important;
    padding: 4px 14px !important;
    background: var(--dash-primary, #6366f1) !important;
    border-color: var(--dash-primary, #6366f1) !important;
    transition: all 0.2s;
}
.radius-generate-btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 2px 8px rgba(99,102,241,0.3);
}
.radius-divider {
    color: #cbd5e1;
    font-size: 16px;
}

/* Location & Delivery Area map containers */
.location-map-container {
    width: 100% !important;
    height: 450px !important;
    min-height: 350px;
    border-radius: 8px 8px 0 0 !important;
    position: relative;
}
.dash-page #map_location,
.dash-page #map_area {
    height: 450px !important;
    border-radius: 8px 8px 0 0 !important;
    border: none !important;
}
.map-loading-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 5;
    background: #f8f9fe;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px 8px 0 0;
}
.map-loading-overlay.d-none { display: none !important; }
#tabs-icons-text .nav-link {
    font-weight: 500;
    font-size: 13px;
    border-radius: 6px;
    transition: all 0.2s;
}
#tabs-icons-text .nav-link.active {
    background: var(--dash-primary, #6366f1) !important;
    color: #fff !important;
}

/* Restaurant edit - bg-secondary card body card-profile override to have no margin-right */
.dash-page .card.bg-secondary .card-body > .card.card-profile {
    margin-right: 0 !important;
}

/* Fix the blockquote-footer link in header */
.dash-page .card-header .blockquote-footer {
    font-size: 12px !important;
    color: var(--dash-text-muted, #64748b) !important;
    margin-top: 4px;
}

/* Badge in card-profile headers */
.dash-page .card.card-profile .badge {
    font-size: 11px !important;
    font-weight: 600 !important;
    padding: 4px 10px !important;
    border-radius: 20px !important;
}

/* ============================================ */
/* ITEM EDIT PAGE                               */
/* ============================================ */

/* Allergen items grid */
.allergen-item {
    background: #f8fafc;
}
.allergen-item:hover {
    background: #eef2ff !important;
    border-color: var(--dash-primary, #6366f1) !important;
}
.allergen-item:has(input:checked) {
    background: #eef2ff !important;
    border-color: var(--dash-primary, #6366f1) !important;
    box-shadow: 0 0 0 1px var(--dash-primary, #6366f1);
}

/* Item edit card-profile sections */
.dash-page .card.card-profile .card-header h5 i {
    font-size: 16px;
}

/* Delete item btn outline */
.dash-page .btn-outline-danger {
    border: 1px solid #ef4444;
    color: #ef4444;
    background: transparent;
}
.dash-page .btn-outline-danger:hover {
    background: #ef4444;
    color: #fff;
}

/* Gap utility for older bootstrap */
.gap-3 { gap: 1rem; }

/* ============================================ */
/* MODIFIER CARDS - MODERN REDESIGN            */
/* ============================================ */

.newModifierSettingsContainer {
    border: 1px solid var(--dash-border, #e2e8f0) !important;
    border-radius: var(--dash-radius, 8px) !important;
    box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.04) !important;
    overflow: hidden;
    transition: box-shadow 0.2s ease, border-color 0.2s ease;
}

.newModifierSettingsContainer:hover {
    box-shadow: 0 4px 12px -2px rgba(0, 0, 0, 0.08) !important;
    border-color: #cbd5e1 !important;
}

/* ═══════════════════════════════════════════════
   ENTERPRISE MODIFIER SYSTEM STYLES
   ═══════════════════════════════════════════════ */

/* --- Group Card Container --- */
.newModifierSettingsContainer {
    border: 1px solid var(--dash-border, #e2e8f0) !important;
    border-radius: 10px !important;
    box-shadow: 0 1px 3px rgba(0,0,0,0.04) !important;
    transition: box-shadow 0.2s ease, border-color 0.2s ease;
    overflow: hidden;
}
.newModifierSettingsContainer:hover {
    box-shadow: 0 4px 12px rgba(0,0,0,0.06) !important;
    border-color: #cbd5e1 !important;
}

/* --- Group Header --- */
.newModifierSettingsContainer .card-header.newModifierSettingsHeader {
    background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%) !important;
    border-bottom: 1px solid var(--dash-border, #e2e8f0) !important;
    padding: 14px 16px !important;
}
.modifier-group-title {
    font-family: var(--dash-font, 'Inter', sans-serif) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    color: var(--dash-text, #1e293b) !important;
    line-height: 1.3;
}

/* --- Badges --- */
.modifier-badge-limit {
    font-size: 10px !important;
    font-weight: 600 !important;
    padding: 2px 8px !important;
    border-radius: 20px !important;
    background: #e0e7ff !important;
    color: #4338ca !important;
    letter-spacing: 0.2px;
}
.modifier-badge-count {
    font-size: 10px !important;
    font-weight: 600 !important;
    padding: 2px 8px !important;
    border-radius: 20px !important;
    background: #f0fdf4 !important;
    color: #15803d !important;
    letter-spacing: 0.2px;
}
.modifier-badge-qty {
    font-size: 10px !important;
    font-weight: 600 !important;
    padding: 2px 8px !important;
    border-radius: 20px !important;
    background: #fef3c7 !important;
    color: #92400e !important;
    letter-spacing: 0.2px;
}

/* --- Header Actions (collapse + settings) --- */
.modifier-header-actions {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-shrink: 0;
}
.modifier-collapse-btn {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 6px;
    color: var(--dash-text-muted, #94a3b8) !important;
    font-size: 12px;
    transition: all 0.15s ease;
    text-decoration: none !important;
}
.modifier-collapse-btn:hover {
    background: rgba(0,0,0,0.04);
    color: var(--dash-text, #1e293b) !important;
}

/* --- Drag Handles (Group + Item) --- */
.modifier-drag-handle {
    color: #cbd5e1;
    font-size: 14px;
    cursor: grab;
    flex-shrink: 0;
    transition: color 0.15s ease;
}
.newModifierSettingsContainer:hover .modifier-drag-handle {
    color: #94a3b8;
}
.modifier-item-drag-handle {
    color: #d1d5db;
    font-size: 12px;
    cursor: grab;
    transition: color 0.15s ease;
}
.modifier-item-row:hover .modifier-item-drag-handle {
    color: #94a3b8;
}
.modifier-item-drag-handle:active {
    cursor: grabbing;
    color: var(--dash-primary, #6366f1);
}

/* --- Drag Ghost & Chosen --- */
.modifier-drag-ghost {
    opacity: 0.4;
    background: #e0e7ff !important;
    border-radius: 8px;
}
.modifier-drag-chosen {
    box-shadow: 0 4px 16px rgba(99, 102, 241, 0.15) !important;
}

/* --- Settings Button --- */
.modifier-settings-btn {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 6px !important;
    background: var(--dash-surface, #fff) !important;
    border: 1px solid var(--dash-border, #e2e8f0) !important;
    color: var(--dash-text-muted, #64748b) !important;
    font-size: 13px !important;
    transition: all 0.15s ease;
    flex-shrink: 0;
    text-decoration: none !important;
}
.modifier-settings-btn:hover {
    background: var(--dash-primary-light, rgba(99, 102, 241, 0.08)) !important;
    border-color: var(--dash-primary, #6366f1) !important;
    color: var(--dash-primary, #6366f1) !important;
}

/* --- Collapsible Body --- */
.modifier-collapsible {
    transition: max-height 0.3s ease;
    overflow: hidden;
}

/* --- Add-item Row --- */
.modifier-add-row {
    padding: 12px 16px !important;
    background: var(--dash-surface, #fff) !important;
    border-bottom: 1px solid var(--dash-border, #e2e8f0) !important;
}
.modifier-add-row .form-control-sm {
    font-size: 12px !important;
    padding: 6px 10px !important;
    border-radius: 6px !important;
}
.modifier-add-btn {
    width: 34px !important;
    height: 34px !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    border-radius: 6px !important;
    font-size: 13px !important;
}

/* --- Items Footer & Header --- */
.modifier-items-footer {
    padding: 0 !important;
    background: var(--dash-surface, #fff) !important;
    border-top: none !important;
}

/* Items footer has no extra header row - items are self-descriptive */

/* --- Items Scroll --- */
.modifier-items-scroll {
    border-top: none !important;
    margin-top: 0 !important;
    max-height: 280px;
    overflow-y: auto;
    overflow-x: hidden;
    padding: 2px 0;
}
.modifier-items-scroll::-webkit-scrollbar { width: 4px; }
.modifier-items-scroll::-webkit-scrollbar-track { background: transparent; }
.modifier-items-scroll::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 2px; }

/* --- Item Rows --- */
.modifier-item-row {
    padding: 6px 12px !important;
    border-top: none !important;
    border-bottom: 1px solid rgba(0, 0, 0, 0.03);
    transition: background 0.15s ease;
    line-height: 1.4;
}
.modifier-item-row:hover {
    background: #f8fafc;
}
.modifier-item-row:last-child {
    border-bottom: none;
}
.modifier-item-row.modifier-editing {
    background: #eff6ff !important;
    border-bottom-color: rgba(99, 102, 241, 0.1);
}

/* --- Item Name --- */
.modifier-item-name-container {
    position: relative;
    min-height: 28px;
    display: flex;
    align-items: center;
}
.modifier-item-name {
    font-size: 13px !important;
    font-weight: 500 !important;
    color: var(--dash-text, #1e293b) !important;
    cursor: default;
    padding: 2px 0;
    border-bottom: 1px dashed transparent;
    transition: border-color 0.15s ease;
}
.modifier-item-row:hover .modifier-item-name {
    border-bottom-color: #cbd5e1;
}
.modifier-item-name-input {
    font-size: 13px !important;
    font-weight: 500 !important;
    padding: 4px 8px !important;
    border-radius: 5px !important;
    border: 1.5px solid var(--dash-primary, #6366f1) !important;
    box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.1) !important;
    background: #fff !important;
    width: 100%;
}

/* --- Price Input --- */
.modifier-price-input {
    width: 72px !important;
    font-size: 12px !important;
    padding: 4px 8px !important;
    border: 1px solid var(--dash-border, #e2e8f0) !important;
    border-radius: 5px !important;
    background: #f8fafc !important;
    text-align: center !important;
    transition: all 0.15s ease;
}
.modifier-price-input:focus {
    background: var(--dash-surface, #fff) !important;
    border-color: var(--dash-primary, #6366f1) !important;
    box-shadow: 0 0 0 2px rgba(99, 102, 241, 0.1) !important;
}
.modifier-price-input.modifier-saving {
    border-color: #fbbf24 !important;
    background: #fffbeb !important;
}
.modifier-price-input.modifier-saved {
    border-color: #10b981 !important;
    background: #f0fdf4 !important;
}

/* --- Action Buttons --- */
.modifier-item-actions {
    display: flex;
    align-items: center;
    gap: 4px;
    justify-content: flex-end;
}
.modifier-action-btn {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 5px;
    font-size: 12px;
    transition: all 0.15s ease;
    text-decoration: none !important;
    color: #94a3b8 !important;
    opacity: 0.6;
}
.modifier-item-row:hover .modifier-action-btn {
    opacity: 1;
}
.modifier-item-edit-name-btn:hover {
    background: #eff6ff !important;
    color: #3b82f6 !important;
}
.modifier-item-recipe-btn:hover {
    background: #f0fdf4 !important;
    color: #16a34a !important;
}
.modifier-action-delete:hover {
    background: #fef2f2 !important;
    color: #ef4444 !important;
}

/* --- No Items Placeholder --- */
.no-modifier-items {
    padding: 24px 16px !important;
    text-align: center;
    color: var(--dash-text-muted, #94a3b8) !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    font-style: italic;
}

/* --- Section Wrapper --- */
#modifiers-section-container .modifier-items {
    padding: 12px !important;
}

/* --- Toast Notifications --- */
#modifier-toast-container {
    position: fixed;
    top: 20px;
    right: 20px;
    z-index: 99999;
    display: flex;
    flex-direction: column;
    gap: 8px;
    pointer-events: none;
}
.modifier-toast {
    display: flex;
    align-items: center;
    padding: 10px 18px;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 500;
    color: #fff;
    background: #1e293b;
    box-shadow: 0 4px 20px rgba(0,0,0,0.15);
    opacity: 0;
    transform: translateX(20px);
    transition: opacity 0.25s ease, transform 0.25s ease;
    pointer-events: auto;
    max-width: 340px;
}
.modifier-toast.show {
    opacity: 1;
    transform: translateX(0);
}
.modifier-toast-success { background: #059669; }
.modifier-toast-danger { background: #dc2626; }
.modifier-toast-info { background: #2563eb; }

/* Gap utilities */
.gap-1 { gap: 0.25rem; }
.gap-2 { gap: 0.5rem; }

/* Address autocomplete dropdown */
.address-ac-dropdown {
    display: none;
    position: absolute;
    left: 0;
    right: 0;
    top: 100%;
    z-index: 100001;
    background: #fff;
    border: 1px solid var(--dash-border, #e2e8f0);
    border-top: none;
    border-radius: 0 0 8px 8px;
    box-shadow: 0 8px 24px rgba(0,0,0,0.12);
    max-height: 260px;
    overflow-y: auto;
}
.address-ac-item {
    padding: 10px 14px;
    cursor: pointer;
    font-size: 13px;
    color: var(--dash-text, #334155);
    border-bottom: 1px solid #f1f5f9;
    transition: background 0.15s;
    line-height: 1.4;
}
.address-ac-item:last-child { border-bottom: none; }
.address-ac-item:hover {
    background: var(--dash-primary-light, #eff6ff);
}
.address-ac-item .fa-map-marker-alt {
    color: var(--dash-primary, #6366f1) !important;
    font-size: 12px;
}


/* ============================================ */
/* PLAN / PRICING PAGE                          */
/* ============================================ */
.plan-card {
    border: 2px solid var(--dash-border, #e2e8f0) !important;
    border-radius: 12px !important;
    transition: all 0.25s ease !important;
    overflow: hidden;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.plan-card:hover {
    border-color: var(--dash-primary, #6366f1) !important;
    box-shadow: 0 8px 30px rgba(99, 102, 241, 0.15) !important;
    transform: translateY(-4px);
}

.plan-card.plan-current {
    border-color: var(--dash-primary, #6366f1) !important;
    box-shadow: 0 4px 20px rgba(99, 102, 241, 0.12) !important;
}

.plan-card .card-header {
    background: #fff !important;
    border-bottom: 1px solid var(--dash-border, #e2e8f0) !important;
    padding: 20px 20px 16px !important;
    text-align: center !important;
}

.plan-card .plan-name {
    font-size: 14px !important;
    font-weight: 700 !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase !important;
    color: var(--dash-text-muted, #64748b) !important;
    margin-bottom: 8px !important;
    white-space: nowrap !important;
}

.plan-card .plan-price {
    font-size: 32px !important;
    font-weight: 800 !important;
    color: var(--dash-text, #1e293b) !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
}

.plan-card .plan-price small {
    font-size: 14px !important;
    font-weight: 500 !important;
    color: var(--dash-text-muted, #94a3b8) !important;
}

.plan-card .plan-current-badge {
    display: inline-block;
    background: var(--dash-primary, #6366f1);
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.5px;
    padding: 3px 10px;
    border-radius: 20px;
    margin-top: 8px;
}

.plan-card .table {
    margin-bottom: 0 !important;
}

.plan-card .table thead th {
    font-size: 11px !important;
    letter-spacing: 1px !important;
    text-transform: uppercase !important;
    color: var(--dash-text-muted, #94a3b8) !important;
    padding: 10px 16px !important;
}

.plan-card .table tbody td {
    font-size: 13px !important;
    padding: 10px 16px !important;
    color: var(--dash-text, #334155) !important;
    white-space: normal !important;
    word-break: break-word !important;
}

.plan-card .table tbody td::before {
    content: "\f00c";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: #10b981;
    margin-right: 8px;
    font-size: 11px;
}

.plan-card .card-footer {
    background: #f8fafc !important;
    border-top: 1px solid var(--dash-border, #e2e8f0) !important;
    padding: 16px 20px !important;
    text-align: center !important;
    margin-top: auto !important;
}

.plan-card .card-footer:not(:has(.btn)):not(:has(a)):not(:has(button)) {
    display: none !important;
}

.plan-card .card-footer .btn {
    width: 100% !important;
    padding: 10px 20px !important;
    font-weight: 600 !important;
    border-radius: 8px !important;
    font-size: 13px !important;
    transition: all 0.2s ease !important;
}

.plan-card .card-footer .btn:not(.disabled):hover {
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 12px rgba(99, 102, 241, 0.35) !important;
}

.plan-card .card-footer .btn.disabled {
    background: var(--dash-primary, #6366f1) !important;
    border-color: var(--dash-primary, #6366f1) !important;
    color: #fff !important;
    opacity: 0.7 !important;
    cursor: not-allowed !important;
}

.plan-grid-col {
    margin-bottom: 24px !important;
    display: flex !important;
}

/* Current Plan Info Card */
.plan-info-card,
.plan-info-card.card {
    border-radius: 12px !important;
    border: none !important;
    background: linear-gradient(135deg, #6366f1 0%, #818cf8 100%) !important;
    color: #fff !important;
    overflow: hidden !important;
}

.plan-info-card .card-header,
.plan-info-card.card .card-header,
.plan-info-card .card-header.border-0,
.dash-page .plan-info-card .card-header,
.dash-page .plan-info-card .card-header.border-0 {
    background: transparent !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.15) !important;
    padding: 18px 24px !important;
}

.plan-info-card .card-header h3,
.plan-info-card .card-header .mb-0,
.dash-page .plan-info-card .card-header h3,
.dash-page .plan-info-card .card-header .mb-0 {
    color: #fff !important;
    font-size: 17px !important;
    font-weight: 700 !important;
    letter-spacing: 0.3px !important;
}

.plan-info-card .card-header h3 i,
.plan-info-card .card-header .mb-0 i {
    font-size: 18px !important;
    opacity: 0.9;
}

.plan-info-card .card-body,
.plan-info-card.card .card-body {
    color: rgba(255, 255, 255, 0.95) !important;
    padding: 24px !important;
}

.plan-info-card .card-body p {
    color: rgba(255, 255, 255, 0.9) !important;
    font-size: 15px !important;
    line-height: 1.5 !important;
}

.plan-info-card .alert {
    background: rgba(255, 255, 255, 0.15) !important;
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
    color: #fff !important;
    border-radius: 8px !important;
    font-size: 13px !important;
    padding: 12px 16px !important;
    line-height: 1.5 !important;
}

.plan-info-card .alert i {
    opacity: 0.85;
}

.plan-info-card .plan-status-badge {
    display: inline-block;
    background: rgba(255, 255, 255, 0.2);
    color: #fff;
    padding: 6px 14px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.3px;
}

.plan-info-card .card-footer,
.plan-info-card.card .card-footer {
    background: transparent !important;
    border-top: 1px solid rgba(255, 255, 255, 0.15) !important;
    padding: 14px 24px !important;
}

/* Plan Page Responsive */
@media (max-width: 992px) {
    .plan-card .plan-price {
        font-size: 26px !important;
    }
}

@media (max-width: 768px) {
    .plan-card .card-header {
        padding: 16px 14px 12px !important;
    }
    .plan-card .plan-name {
        font-size: 12px !important;
        letter-spacing: 1px !important;
    }
    .plan-card .plan-price {
        font-size: 22px !important;
    }
    .plan-card .plan-price small {
        font-size: 12px !important;
    }
    .plan-card .table tbody td {
        font-size: 12px !important;
        padding: 8px 12px !important;
    }
    .plan-card .table thead th {
        font-size: 10px !important;
        padding: 8px 12px !important;
    }
    .plan-card .card-footer .btn {
        font-size: 12px !important;
        padding: 8px 14px !important;
    }
    .plan-info-card .card-header {
        padding: 14px 16px !important;
    }
    .plan-info-card .card-header h3,
    .plan-info-card .card-header .mb-0,
    .dash-page .plan-info-card .card-header h3 {
        font-size: 14px !important;
    }
    .plan-info-card .card-body {
        padding: 16px !important;
    }
    .plan-info-card .card-body p {
        font-size: 13px !important;
    }
    .plan-info-card .alert {
        font-size: 12px !important;
        padding: 10px 12px !important;
    }
    .plan-grid-col {
        margin-bottom: 16px !important;
    }
}

@media (max-width: 576px) {
    .plan-card .plan-price {
        font-size: 20px !important;
    }
    .plan-card .card-footer {
        padding: 12px 14px !important;
    }
}

/* Payment modal fixes */
.modal .modal-content.bg-gradient-danger {
    border-radius: 12px !important;
}

/* ============================================ */
/* MENU MANAGEMENT PAGE                         */
/* ============================================ */

/* Category header bar */
.menu-category-bar {
    background: linear-gradient(135deg, #1e293b 0%, #334155 100%) !important;
    border: none !important;
    border-radius: 10px !important;
    padding: 14px 20px !important;
    margin-bottom: 20px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
}

.menu-category-bar .category-name {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: #fff !important;
    letter-spacing: 0.3px !important;
    margin: 0 !important;
}

.menu-category-bar .category-actions {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    flex-wrap: wrap !important;
}

.menu-category-bar .category-actions .btn {
    width: 34px !important;
    height: 34px !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 8px !important;
    font-size: 13px !important;
    border: none !important;
    transition: all 0.15s ease !important;
}

.menu-category-bar .category-actions .btn:hover {
    transform: translateY(-1px) !important;
    box-shadow: 0 3px 8px rgba(0,0,0,0.2) !important;
}

.menu-category-bar .category-actions .btn-primary {
    background: var(--dash-primary, #6366f1) !important;
    color: #fff !important;
}

.menu-category-bar .category-actions .btn-warning {
    background: #f59e0b !important;
    color: #fff !important;
}

.menu-category-bar .category-actions .btn-danger {
    background: #ef4444 !important;
    color: #fff !important;
}

.menu-category-bar .category-actions .btn-success {
    background: #10b981 !important;
    color: #fff !important;
}

.menu-category-bar .category-actions .cat-divider {
    width: 1px;
    height: 24px;
    background: rgba(255,255,255,0.2);
    margin: 0 4px;
}

/* Menu items grid */
.menu-items-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)) !important;
    gap: 20px !important;
    margin-bottom: 30px !important;
    padding: 0 !important;
}

.menu-items-grid > div {
    max-width: 100% !important;
    flex: none !important;
    width: 100% !important;
    padding: 0 !important;
}

/* Menu item card */
.menu-item-card {
    border: 1px solid var(--dash-border, #e2e8f0) !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    transition: all 0.2s ease !important;
    background: #fff !important;
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    box-shadow: 0 1px 3px rgba(0,0,0,0.05) !important;
}

.menu-item-card:hover {
    border-color: var(--dash-primary, #6366f1) !important;
    box-shadow: 0 8px 24px rgba(99, 102, 241, 0.12) !important;
    transform: translateY(-3px) !important;
}

.menu-item-card .card-img-top {
    height: 160px !important;
    width: 100% !important;
    object-fit: cover !important;
    border-radius: 0 !important;
}

.menu-item-card .card-body {
    padding: 14px !important;
    flex: 1 !important;
    display: flex !important;
    flex-direction: column !important;
}

.menu-item-card .item-name {
    font-size: 14px !important;
    font-weight: 700 !important;
    color: var(--dash-text, #1e293b) !important;
    margin-bottom: 4px !important;
    line-height: 1.3 !important;
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
}

.menu-item-card .item-name .veg-icon {
    width: 18px !important;
    height: 18px !important;
    flex-shrink: 0 !important;
}

.menu-item-card .item-description {
    font-size: 12px !important;
    color: var(--dash-text-muted, #94a3b8) !important;
    line-height: 1.4 !important;
    margin-bottom: 8px !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    flex: 1 !important;
}

.menu-item-card .item-footer {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    margin-top: auto !important;
}

.menu-item-card .item-price {
    font-size: 14px !important;
    font-weight: 700 !important;
    color: var(--dash-primary, #6366f1) !important;
    background: rgba(99, 102, 241, 0.08) !important;
    padding: 3px 10px !important;
    border-radius: 6px !important;
    border: none !important;
}

.menu-item-card .item-status {
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: 0.5px !important;
    padding: 3px 8px !important;
    border-radius: 4px !important;
}

.menu-item-card .item-status.available {
    color: #059669 !important;
    background: rgba(16, 185, 129, 0.1) !important;
}

.menu-item-card .item-status.unavailable {
    color: #dc2626 !important;
    background: rgba(239, 68, 68, 0.1) !important;
}

/* Add item card */
.menu-item-card.add-item-card {
    border: 2px dashed var(--dash-border, #cbd5e1) !important;
    background: #f8fafc !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 200px !important;
    cursor: pointer !important;
}

.menu-item-card.add-item-card:hover {
    border-color: var(--dash-primary, #6366f1) !important;
    background: rgba(99, 102, 241, 0.04) !important;
}

.menu-item-card.add-item-card .add-item-content {
    text-align: center;
    padding: 20px;
}

.menu-item-card.add-item-card .add-item-icon {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: var(--dash-primary, #6366f1);
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    margin-bottom: 10px;
}

.menu-item-card.add-item-card .add-item-text {
    font-size: 13px;
    font-weight: 600;
    color: var(--dash-text-muted, #64748b);
}

/* Menu page header buttons */
.menu-header-actions .btn {
    font-size: 13px !important;
    font-weight: 600 !important;
    padding: 8px 16px !important;
    border-radius: 8px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    transition: all 0.15s ease !important;
}

.menu-header-actions .btn:hover {
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 12px rgba(0,0,0,0.15) !important;
}

/* Menu page main card */
.menu-main-card {
    background: var(--dash-surface, #fff) !important;
    border: 1px solid var(--dash-border, #e2e8f0) !important;
    border-radius: 12px !important;
    box-shadow: 0 1px 3px rgba(0,0,0,0.04) !important;
}

.menu-main-card > .card-header {
    background: var(--dash-surface, #fff) !important;
    border-bottom: 1px solid var(--dash-border, #e2e8f0) !important;
    padding: 18px 24px !important;
    border-radius: 12px 12px 0 0 !important;
}

.menu-main-card > .card-header h3 {
    font-size: 16px !important;
    font-weight: 700 !important;
    color: var(--dash-text, #1e293b) !important;
}

.menu-main-card > .card-body {
    padding: 24px !important;
}

/* Empty state for first category */
.menu-empty-state {
    border: 2px dashed var(--dash-border, #cbd5e1) !important;
    border-radius: 12px !important;
    padding: 40px 20px !important;
    text-align: center !important;
    background: #f8fafc !important;
    max-width: 300px !important;
}

.menu-empty-state img {
    width: 80px !important;
    height: 80px !important;
    object-fit: cover !important;
    border-radius: 12px !important;
    margin-bottom: 12px !important;
}

.menu-empty-state h3 {
    font-size: 14px !important;
    font-weight: 600 !important;
    color: var(--dash-primary, #6366f1) !important;
}

@media (max-width: 768px) {
    .menu-items-grid {
        grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)) !important;
        gap: 12px !important;
    }
    .menu-item-card .card-img-top {
        height: 120px !important;
    }
    .menu-category-bar {
        padding: 12px 14px !important;
    }
    .menu-category-bar .category-name {
        font-size: 15px !important;
    }
}

/* ============================================ */
/* DASHBOARD CHART SECTION CARDS                */
/* ============================================ */

.dash-charts-wrapper {
    padding-top: 20px !important;
    position: relative !important;
    z-index: 2 !important;
}

.dash-chart-card {
    background: #fff !important;
    border-radius: 14px !important;
    box-shadow: 0 1px 3px rgba(0,0,0,0.06), 0 4px 16px rgba(0,0,0,0.04) !important;
    border: 1px solid #e2e8f0 !important;
    margin-bottom: 20px !important;
    overflow: hidden !important;
    transition: box-shadow 0.2s ease !important;
}

.dash-chart-card:hover {
    box-shadow: 0 2px 8px rgba(0,0,0,0.08), 0 8px 24px rgba(0,0,0,0.06) !important;
}

.dash-chart-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 14px 20px !important;
    background: #f8fafc !important;
    border-bottom: 1px solid #e2e8f0 !important;
    flex-wrap: nowrap !important;
    gap: 12px !important;
}

.dash-chart-title {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #1e293b !important;
    white-space: nowrap !important;
    flex-shrink: 0 !important;
}

.dash-chart-title i {
    width: 32px !important;
    height: 32px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 8px !important;
    background: linear-gradient(135deg, #6366f1, #818cf8) !important;
    color: #fff !important;
    font-size: 13px !important;
    flex-shrink: 0 !important;
}

.dash-chart-filters {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    flex-wrap: nowrap !important;
    flex-shrink: 1 !important;
    min-width: 0 !important;
}

.dash-chart-input {
    height: 34px !important;
    padding: 4px 10px !important;
    font-size: 12px !important;
    border: 1px solid #d1d5db !important;
    border-radius: 8px !important;
    background: #fff !important;
    color: #374151 !important;
    width: 115px !important;
    min-width: 0 !important;
    max-width: 115px !important;
    flex-shrink: 1 !important;
    transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}

.dash-chart-input:focus {
    border-color: #6366f1 !important;
    box-shadow: 0 0 0 3px rgba(99,102,241,0.1) !important;
    outline: none !important;
}

.dash-chart-input::placeholder {
    color: #9ca3af !important;
    font-size: 11px !important;
}

.dash-chart-select {
    height: 34px !important;
    padding: 4px 10px !important;
    font-size: 12px !important;
    border: 1px solid #d1d5db !important;
    border-radius: 8px !important;
    background: #fff !important;
    color: #374151 !important;
    width: 130px !important;
    min-width: 0 !important;
    max-width: 130px !important;
    flex-shrink: 1 !important;
    cursor: pointer !important;
    transition: border-color 0.2s ease !important;
}

.dash-chart-select:focus {
    border-color: #6366f1 !important;
    box-shadow: 0 0 0 3px rgba(99,102,241,0.1) !important;
    outline: none !important;
}

.dash-chart-filter-btn {
    height: 34px !important;
    padding: 0 14px !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    border-radius: 8px !important;
    background: var(--dash-primary, #6366f1) !important;
    color: #fff !important;
    border: none !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
    white-space: nowrap !important;
    transition: all 0.2s ease !important;
    cursor: pointer !important;
    flex-shrink: 0 !important;
}

.dash-chart-filter-btn:hover {
    background: #4f46e5 !important;
    color: #fff !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 12px rgba(99,102,241,0.3) !important;
}

.dash-chart-body {
    padding: 16px 20px 20px !important;
    min-height: 120px !important;
    position: relative !important;
}

/* Chart loading skeleton */
.dash-chart-loading {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 200px;
    color: #94a3b8;
    font-size: 13px;
    gap: 8px;
}
.dash-chart-loading i {
    animation: spin 1s linear infinite;
}
@keyframes spin {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

/* ============================================ */
/* APEXCHARTS MODERN STYLING                    */
/* ============================================ */

/* Tooltip */
.apexcharts-tooltip {
    border: none !important;
    border-radius: 12px !important;
    box-shadow: 0 10px 40px rgba(0,0,0,0.12), 0 2px 8px rgba(0,0,0,0.06) !important;
    font-family: 'Inter', 'Segoe UI', system-ui, sans-serif !important;
    overflow: hidden !important;
}
.apexcharts-tooltip-title {
    background: #f8fafc !important;
    border-bottom: 1px solid #f1f5f9 !important;
    font-weight: 600 !important;
    padding: 10px 14px !important;
    font-size: 13px !important;
    color: #1e293b !important;
}
.apexcharts-tooltip-series-group {
    padding: 6px 14px !important;
}
.apexcharts-tooltip-text-y-value {
    font-weight: 600 !important;
    color: #1e293b !important;
}
.apexcharts-tooltip-text-y-label {
    color: #64748b !important;
}
.apexcharts-tooltip-marker {
    border-radius: 4px !important;
    width: 10px !important;
    height: 10px !important;
}

/* Legend */
.apexcharts-legend {
    padding: 8px 0 0 !important;
}
.apexcharts-legend-marker {
    border-radius: 4px !important;
}
.apexcharts-legend-text {
    font-weight: 500 !important;
    color: #64748b !important;
    font-size: 13px !important;
}

/* Y-Axis title */
.apexcharts-yaxis-title text {
    fill: #94a3b8 !important;
    font-weight: 600 !important;
}

/* X-Axis title */
.apexcharts-xaxis-title text {
    fill: #94a3b8 !important;
    font-weight: 600 !important;
}

/* Grid lines */
.apexcharts-gridline {
    stroke: #f1f5f9 !important;
}

/* Toolbar icon */
.apexcharts-toolbar {
    top: 2px !important;
    right: 4px !important;
}
.apexcharts-menu-icon {
    color: #94a3b8 !important;
    transform: scale(0.9);
    transition: color 0.2s ease !important;
}
.apexcharts-menu-icon:hover {
    color: #6366f1 !important;
}
.apexcharts-menu-icon svg {
    fill: #94a3b8 !important;
}
.apexcharts-menu-icon:hover svg {
    fill: #6366f1 !important;
}

/* ============================================ */
/* APEXCHARTS TOOLBAR MENU CUSTOMIZATION        */
/* ============================================ */
.apexcharts-menu {
    border: none !important;
    border-radius: 10px !important;
    box-shadow: 0 6px 24px rgba(0,0,0,0.12), 0 2px 6px rgba(0,0,0,0.06) !important;
    padding: 4px !important;
    min-width: 160px !important;
    background: #fff !important;
}
.apexcharts-menu-item {
    padding: 9px 14px !important;
    border-radius: 6px !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    transition: all 0.15s ease !important;
    color: #334155 !important;
}
.apexcharts-menu-item:hover {
    background: #f0f0ff !important;
    color: #4f46e5 !important;
}
.apexcharts-menu-item.exportSVG,
.apexcharts-menu-item.exportPNG {
    display: none !important;
}
.apexcharts-menu-item.exportCSV {
    font-size: 0 !important;
    line-height: 0 !important;
}
.apexcharts-menu-item.exportCSV::before {
    content: '\f1c3';
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    font-size: 13px !important;
    line-height: normal !important;
    margin-right: 8px;
    color: #22863a;
}
.apexcharts-menu-item.exportCSV::after {
    content: 'Download Excel';
    font-size: 13px !important;
    line-height: normal !important;
    font-weight: 500 !important;
}

/* ============================================ */
/* DASHBOARD HEADER RESPONSIVE FIXES            */
/* ============================================ */

.dash-filters .col-md-6:last-child form {
    flex-wrap: wrap !important;
}

/* FIX #1: Sidebar hidden below lg (992px), full mobile menu instead */
@media (max-width: 991px) {
    .main-content {
        margin-left: 0 !important;
        width: 100% !important;
    }
    .navbar-vertical.navbar-expand-md.fixed-left + .main-content,
    .navbar-vertical.navbar-expand-lg.fixed-left + .main-content {
        margin-left: 0 !important;
    }
    #sidenav-main.navbar-vertical {
        position: relative !important;
        width: 100% !important;
        max-width: 100% !important;
    }
    #sidenav-main .navbar-collapse:not(.show) {
        display: none !important;
    }
}
@media (min-width: 992px) {
    .navbar-vertical.navbar-expand-lg.fixed-left {
        left: 0 !important;
        position: fixed !important;
        top: 0 !important;
        bottom: 0 !important;
        width: 100% !important;
        max-width: 250px !important;
        overflow-y: auto !important;
        border-width: 0 1px 0 0 !important;
    }
    .navbar-vertical.navbar-expand-lg.fixed-left + .main-content {
        margin-left: 250px !important;
    }
    .navbar-vertical.navbar-expand-lg .navbar-collapse {
        display: flex !important;
        flex-direction: column !important;
        flex: 1 1 !important;
        align-items: stretch !important;
    }
    .navbar-vertical.navbar-expand-lg .navbar-nav {
        flex-direction: column !important;
    }
}

/* FIX #6: Reduce purple gradient dead space */
.dash-header.pb-8 {
    padding-bottom: 5rem !important;
}

@media (max-width: 575px) {
    .dash-filters .col-md-6:first-child .d-flex {
        flex-direction: column !important;
        width: 100% !important;
    }
    .dash-filters .dash-select {
        width: 100% !important;
        margin-bottom: 8px !important;
    }
    .dash-filters .reload {
        width: 100% !important;
        text-align: center !important;
        margin-left: 0 !important;
    }
    .dash-filters .col-md-6:last-child form {
        flex-direction: column !important;
        align-items: stretch !important;
    }
    .dash-filters .col-md-6:last-child .form-group {
        width: 100% !important;
        margin-bottom: 8px !important;
    }
    .dash-filters .dash-input {
        width: 100% !important;
    }
    .dash-filters .dash-filter-btn {
        width: 100% !important;
    }
    .dash-header-date-filter {
        flex-wrap: wrap !important;
    }
    .dash-header-date-filter .dash-input {
        flex: 1 1 40% !important;
        max-width: none !important;
        min-width: 0 !important;
    }

    .dash-chart-header {
        flex-direction: column !important;
        align-items: flex-start !important;
        padding: 12px 14px !important;
    }
    .dash-chart-title {
        font-size: 13px !important;
    }
    .dash-chart-title i {
        width: 28px !important;
        height: 28px !important;
        font-size: 12px !important;
    }
    .dash-chart-filters {
        width: 100% !important;
        flex-wrap: wrap !important;
    }
    .dash-chart-input {
        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;
        flex: 1 1 40% !important;
    }
    .dash-chart-select {
        min-width: 0 !important;
        max-width: none !important;
        width: 100% !important;
        flex: 1 1 100% !important;
    }
    .dash-chart-filter-btn {
        flex: 0 0 auto !important;
    }
    .dash-chart-body {
        padding: 10px 10px 14px !important;
    }

    .dash-stats-card .card-header {
        padding: 12px 14px !important;
    }
    .dash-stats-card .card-body {
        padding: 10px 8px !important;
    }
}

@media (max-width: 767px) {
    .stats-row > .stat-col {
        flex: 0 0 33.333% !important;
        max-width: 33.333% !important;
    }
    .stat-item {
        padding: 10px 6px 8px !important;
        min-height: 0 !important;
    }
    .stat-item .stat-icon {
        width: 24px !important;
        height: 24px !important;
        font-size: 11px !important;
        border-radius: 6px !important;
        margin: 0 auto 4px !important;
    }
    .stat-item .stat-label {
        font-size: 8px !important;
        letter-spacing: 0.3px !important;
        margin-bottom: 2px !important;
        line-height: 1.2 !important;
        white-space: normal !important;
        overflow: visible !important;
        text-overflow: clip !important;
        word-break: break-word !important;
        hyphens: auto !important;
    }
    .stat-item .stat-value {
        font-size: 16px !important;
        line-height: 1.1 !important;
    }
    .stats-row {
        margin: 0 -4px !important;
    }
    .stats-row > [class*="col-"] {
        padding: 0 4px !important;
    }
}

@media (max-width: 400px) {
    .stats-row > .stat-col {
        flex: 0 0 50% !important;
        max-width: 50% !important;
    }
    .stat-item .stat-label {
        font-size: 7.5px !important;
    }
    .stat-item .stat-value {
        font-size: 14px !important;
    }
}

@media (min-width: 576px) and (max-width: 767px) {
    .dash-chart-input {
        width: 100px !important;
        max-width: 100px !important;
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    .dash-chart-header {
        padding: 12px 16px !important;
    }
    .dash-chart-title {
        font-size: 14px !important;
    }
    .dash-chart-input {
        width: 100px !important;
        max-width: 100px !important;
    }
    .dash-chart-select {
        width: 110px !important;
        max-width: 110px !important;
    }
}

/* Stats card header responsive */
@media (max-width: 767px) {
    .dash-stats-card .card-header .card-title {
        font-size: 13px !important;
    }
    .StatsHeader {
        font-size: 13px !important;
        word-break: break-word !important;
    }
}

/* ============================================ */
/* DISCOUNT COUPON MODAL                        */
/* ============================================ */
.coupon-modal-content {
    border: none !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    box-shadow: 0 20px 60px rgba(0,0,0,0.15) !important;
}
.coupon-modal-header {
    background: linear-gradient(135deg, #6366f1, #8b5cf6) !important;
    border-bottom: none !important;
    padding: 18px 24px !important;
}
.coupon-modal-header .modal-title {
    color: #fff !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    letter-spacing: 0.3px !important;
}
.coupon-modal-body {
    padding: 24px !important;
    background: #f8fafc !important;
}
.coupon-card-link {
    text-decoration: none !important;
    display: block !important;
}
.coupon-card-modern {
    background: #fff !important;
    border: 2px solid #e2e8f0 !important;
    border-radius: 14px !important;
    padding: 20px 12px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    min-height: 110px !important;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
    cursor: pointer !important;
    position: relative !important;
    overflow: hidden !important;
}
.coupon-card-modern::before {
    content: '' !important;
    position: absolute !important;
    inset: 0 !important;
    background: linear-gradient(135deg, rgba(99,102,241,0.08), rgba(139,92,246,0.08)) !important;
    opacity: 0 !important;
    transition: opacity 0.25s ease !important;
    border-radius: 12px !important;
}
.coupon-card-modern:hover {
    border-color: #6366f1 !important;
    transform: translateY(-3px) !important;
    box-shadow: 0 8px 24px rgba(99,102,241,0.18) !important;
}
.coupon-card-modern:hover::before {
    opacity: 1 !important;
}
.coupon-card-modern:active {
    transform: translateY(0) scale(0.97) !important;
    box-shadow: 0 2px 8px rgba(99,102,241,0.15) !important;
}
.coupon-icon {
    width: 40px !important;
    height: 40px !important;
    border-radius: 10px !important;
    background: linear-gradient(135deg, #6366f1, #8b5cf6) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-bottom: 10px !important;
    position: relative !important;
    z-index: 1 !important;
}
.coupon-icon i {
    color: #fff !important;
    font-size: 16px !important;
}
.coupon-name {
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #334155 !important;
    line-height: 1.3 !important;
    text-transform: capitalize !important;
    position: relative !important;
    z-index: 1 !important;
    word-break: break-word !important;
}

/* ============================================ */
/* POS CART COUPON SECTION                      */
/* ============================================ */
.pos-coupon-section {
    background: #fff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 10px !important;
    padding: 10px !important;
    margin-bottom: 0 !important;
}
.pos-coupon-input-row {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    margin-bottom: 8px !important;
}
.pos-coupon-input-wrap {
    flex: 1 !important;
    position: relative !important;
    display: flex !important;
    align-items: center !important;
}
.pos-coupon-icon {
    position: absolute !important;
    left: 10px !important;
    color: #94a3b8 !important;
    font-size: 12px !important;
    pointer-events: none !important;
    z-index: 1 !important;
}
.pos-coupon-input {
    width: 100% !important;
    height: 34px !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 8px !important;
    padding: 0 10px 0 30px !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    color: #334155 !important;
    background: #f8fafc !important;
    outline: none !important;
    transition: border-color 0.2s ease !important;
}
.pos-coupon-input::placeholder {
    color: #94a3b8 !important;
    font-weight: 400 !important;
}
.pos-coupon-input:not(:placeholder-shown) {
    background: #f0fdf4 !important;
    border-color: #86efac !important;
    color: #166534 !important;
    font-weight: 600 !important;
}
.pos-coupon-clear-btn {
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
    border: none !important;
    border-radius: 8px !important;
    background: #fee2e2 !important;
    color: #dc2626 !important;
    font-size: 13px !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.2s ease !important;
    padding: 0 !important;
}
.pos-coupon-clear-btn:hover {
    background: #fca5a5 !important;
    color: #991b1b !important;
}
.pos-coupon-apply-btn {
    width: 100% !important;
    height: 36px !important;
    border: none !important;
    border-radius: 8px !important;
    background: linear-gradient(135deg, #6366f1, #8b5cf6) !important;
    color: #fff !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    letter-spacing: 0.3px !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: 0 2px 8px rgba(99,102,241,0.25) !important;
}
.pos-coupon-apply-btn:hover {
    background: linear-gradient(135deg, #4f46e5, #7c3aed) !important;
    box-shadow: 0 4px 12px rgba(99,102,241,0.35) !important;
    transform: translateY(-1px) !important;
}
.pos-coupon-apply-btn:active {
    transform: translateY(0) !important;
    box-shadow: 0 1px 4px rgba(99,102,241,0.2) !important;
}

/* ============================================ */
/* POS SIDEBAR UNIFORM LAYOUT                   */
/* ============================================ */
.pos-empty-cart {
    text-align: center !important;
    padding: 20px 12px !important;
    color: #94a3b8 !important;
}
.pos-empty-cart i {
    font-size: 24px !important;
    display: block !important;
    margin-bottom: 8px !important;
}
.pos-totals-card {
    background: #fff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 10px !important;
    padding: 10px 12px !important;
    margin-bottom: 8px !important;
}
.pos-totals-row {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding: 4px 0 !important;
    font-size: 12px !important;
    color: #475569 !important;
}
.pos-totals-row + .pos-totals-row {
    border-top: 1px solid #f1f5f9 !important;
}
.pos-totals-row strong {
    color: #1e293b !important;
    font-size: 13px !important;
}
.pos-totals-discount {
    color: #dc2626 !important;
}
.pos-totals-discount strong {
    color: #dc2626 !important;
}
.pos-totals-total {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding: 8px 0 4px !important;
    border-top: 2px solid #e2e8f0 !important;
    margin-top: 4px !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #1e293b !important;
}
.pos-totals-total strong {
    font-size: 15px !important;
    color: #1e293b !important;
}
.pos-loyalty-section {
    margin-top: 8px !important;
    margin-bottom: 8px !important;
}

/* ============================================ */
/* POS TOP BAR & SEARCH                         */
/* ============================================ */
.pos-topbar {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 10px 12px !important;
    background: #1e293b !important;
    border-radius: 10px !important;
    margin-bottom: 2px !important;
}
.pos-search-wrap {
    flex: 1 !important;
    position: relative !important;
    min-width: 0 !important;
}
.pos-search-icon {
    position: absolute !important;
    left: 12px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    color: #94a3b8 !important;
    font-size: 14px !important;
    z-index: 2 !important;
    pointer-events: none !important;
}
.pos-search-wrap .select2-container {
    width: 100% !important;
}
.pos-search-wrap .select2-container--default .select2-selection--single {
    height: 42px !important;
    border: 1px solid #334155 !important;
    border-radius: 8px !important;
    background: #0f172a !important;
    padding: 0 12px 0 36px !important;
    display: flex !important;
    align-items: center !important;
    transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}
.pos-search-wrap .select2-container--default .select2-selection--single:hover {
    border-color: #475569 !important;
}
.pos-search-wrap .select2-container--default.select2-container--focus .select2-selection--single,
.pos-search-wrap .select2-container--default.select2-container--open .select2-selection--single {
    border-color: #6366f1 !important;
    box-shadow: 0 0 0 2px rgba(99,102,241,0.25) !important;
    outline: none !important;
}
.pos-search-wrap .select2-container--default .select2-selection--single .select2-selection__rendered {
    color: #e2e8f0 !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 42px !important;
    padding-left: 0 !important;
    padding-right: 28px !important;
}
.pos-search-wrap .select2-container--default .select2-selection--single .select2-selection__placeholder {
    color: #64748b !important;
    font-size: 14px !important;
}
.pos-search-wrap .select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 42px !important;
    width: 28px !important;
    right: 4px !important;
    top: 0 !important;
    transform: none !important;
}
.pos-search-wrap .select2-container--default .select2-selection--single .select2-selection__arrow b {
    border-color: #64748b transparent transparent transparent !important;
    border-width: 5px 4px 0 4px !important;
    margin-top: -2px !important;
}
.pos-search-wrap .select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {
    border-color: transparent transparent #818cf8 transparent !important;
    border-width: 0 4px 5px 4px !important;
}

/* Dropdown styles */
.pos-search-wrap .select2-dropdown {
    border: 1px solid #334155 !important;
    border-radius: 8px !important;
    background: #1e293b !important;
    box-shadow: 0 8px 24px rgba(0,0,0,0.3) !important;
    margin-top: 4px !important;
    overflow: hidden !important;
}
.pos-search-wrap .select2-dropdown .select2-search {
    padding: 8px !important;
    background: #0f172a !important;
}
.pos-search-wrap .select2-dropdown .select2-search__field {
    background: #1e293b !important;
    border: 1px solid #334155 !important;
    border-radius: 6px !important;
    color: #e2e8f0 !important;
    padding: 8px 12px !important;
    font-size: 14px !important;
}
.pos-search-wrap .select2-dropdown .select2-search__field:focus {
    border-color: #6366f1 !important;
    box-shadow: 0 0 0 2px rgba(99,102,241,0.2) !important;
    outline: none !important;
}
.pos-search-wrap .select2-results__option {
    padding: 8px 12px !important;
    font-size: 13px !important;
    color: #cbd5e1 !important;
    transition: background 0.1s ease !important;
}
.pos-search-wrap .select2-results__option--highlighted[aria-selected] {
    background: #6366f1 !important;
    color: #fff !important;
}
.pos-search-wrap .select2-results__option[aria-selected="true"] {
    background: #334155 !important;
    color: #a5b4fc !important;
}
.pos-search-wrap .select2-results__group {
    padding: 6px 12px !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    color: #6366f1 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    background: #0f172a !important;
}
.pos-search-wrap .select2-results {
    max-height: 300px !important;
}
.pos-search-wrap .select2-results::-webkit-scrollbar { width: 4px; }
.pos-search-wrap .select2-results::-webkit-scrollbar-track { background: transparent; }
.pos-search-wrap .select2-results::-webkit-scrollbar-thumb { background: #475569; border-radius: 2px; }

/* Categories button */
.pos-categories-btn {
    flex-shrink: 0 !important;
    height: 42px !important;
    padding: 0 16px !important;
    border: none !important;
    border-radius: 8px !important;
    background: linear-gradient(135deg, #6366f1, #4f46e5) !important;
    color: #fff !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    gap: 4px !important;
    white-space: nowrap !important;
    transition: all 0.2s ease !important;
}
.pos-categories-btn:hover {
    background: linear-gradient(135deg, #818cf8, #6366f1) !important;
    box-shadow: 0 2px 8px rgba(99,102,241,0.35) !important;
}
.pos-categories-btn:active {
    transform: scale(0.97) !important;
}

/* ============================================ */
/* POS CART ITEM CARDS                          */
/* ============================================ */
.pos-cart-list {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    display: flex !important;
    flex-direction: column-reverse !important;
}
.pos-cart-item {
    margin-bottom: 8px !important;
    list-style: none !important;
}
.pos-cart-item-inner {
    background: #fff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 10px !important;
    padding: 10px 12px !important;
    transition: box-shadow 0.2s ease, border-color 0.2s ease !important;
}
.pos-cart-item-inner:hover {
    border-color: #c7d2fe !important;
    box-shadow: 0 2px 8px rgba(99,102,241,0.1) !important;
}

/* Header row: item name + actions */
.pos-cart-item-header {
    display: flex !important;
    align-items: flex-start !important;
    gap: 8px !important;
    margin-bottom: 6px !important;
}
.pos-item-name {
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #1e293b !important;
    display: block !important;
    line-height: 1.3 !important;
}
.pos-item-name-done {
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #94a3b8 !important;
    text-decoration: line-through !important;
    display: block !important;
    line-height: 1.3 !important;
}
.pos-item-variant {
    font-size: 11px !important;
    color: #64748b !important;
    display: block !important;
    margin-top: 2px !important;
}

/* Action buttons */
.pos-cart-item-actions {
    display: flex !important;
    gap: 3px !important;
    flex-shrink: 0 !important;
}
.pos-cart-btn {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 6px !important;
    background: #f8fafc !important;
    color: #64748b !important;
    font-size: 11px !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.15s ease !important;
    padding: 0 !important;
}
.pos-cart-btn:hover {
    background: #eef2ff !important;
    border-color: #a5b4fc !important;
    color: #4f46e5 !important;
}
.pos-cart-btn-danger:hover {
    background: #fef2f2 !important;
    border-color: #fca5a5 !important;
    color: #dc2626 !important;
}
.pos-cart-btn-edit:hover {
    background: #f0fdf4 !important;
    border-color: #86efac !important;
    color: #16a34a !important;
}

/* Modifiers section */
.pos-cart-modifiers {
    background: #f8fafc !important;
    border-radius: 6px !important;
    padding: 6px 8px !important;
    margin-bottom: 8px !important;
    border: 1px solid #f1f5f9 !important;
}
.pos-mod-group {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: baseline !important;
    gap: 4px !important;
    padding: 2px 0 !important;
}
.pos-mod-group + .pos-mod-group {
    border-top: 1px solid #e2e8f0 !important;
    margin-top: 3px !important;
    padding-top: 5px !important;
}
.pos-mod-key {
    font-size: 10px !important;
    font-weight: 700 !important;
    color: #6366f1 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    flex-shrink: 0 !important;
    min-width: 42px !important;
}
.pos-mod-value {
    font-size: 11px !important;
    color: #475569 !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
}
.pos-mod-price {
    font-size: 10px !important;
    color: #6366f1 !important;
    font-weight: 600 !important;
    white-space: nowrap !important;
}

/* Footer: price + qty */
.pos-cart-item-footer {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding-top: 6px !important;
    border-top: 1px solid #f1f5f9 !important;
}
.pos-cart-price {
    font-size: 14px !important;
    font-weight: 800 !important;
    color: #1e293b !important;
    letter-spacing: -0.3px !important;
}
.pos-cart-qty {
    font-size: 12px !important;
    font-weight: 600 !important;
    color: #6366f1 !important;
    background: #eef2ff !important;
    padding: 1px 8px !important;
    border-radius: 10px !important;
}
.pos-cart-note {
    font-size: 10px !important;
    color: #f59e0b !important;
    margin-left: auto !important;
    max-width: 100px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}
.pos-cart-note i {
    font-size: 9px !important;
    margin-right: 2px !important;
}
