/* Gurmeat runtime CSS. Hand-maintained project layer. */
:root{--primary:185 28 28;--primary-slate:220 38 38;--primary-light:254 242 242;--client-font:'Rubik',sans-serif;--admin-font:'Rubik',sans-serif;--gmcss-shadow-color:rgba(31,31,57,0.18);}
*,::before,::after{box-sizing:border-box;--gmcss-translate-x:0;--gmcss-translate-y:0;--gmcss-rotate:0;--gmcss-skew-x:0;--gmcss-skew-y:0;--gmcss-scale-x:1;--gmcss-scale-y:1;--gmcss-ring-offset-shadow:0 0 #0000;--gmcss-ring-shadow:0 0 #0000;--gmcss-shadow:0 0 #0000;--gmcss-content:'';}
html{line-height:1.5;-webkit-text-size-adjust:100%;tab-size:4;}
body{margin:0;font-family:'Rubik',sans-serif;background:#fff;color:#6e7191;}
a{color:inherit;text-decoration:none;}button,input,optgroup,select,textarea{font:inherit;color:inherit;}button,[role=button]{cursor:pointer;}img,video{max-width:100%;height:auto;}[hidden]{display:none!important;}
ul,ol,menu{list-style:none;margin:0;padding:0;}
h1,h2,h3,h4,h5,h6,p,figure,blockquote,dl,dd{margin:0;}
button{appearance:none;border:0;background:transparent;padding:0;}
input,textarea,select{border-radius:0;}
table{border-collapse:collapse;border-spacing:0;}

:root {
    --primary: 185 28 28;
    --primary-slate: 220 38 38;
    --primary-light: 254 242 242;
    --client-font: 'Rubik', sans-serif;
    --admin-font: 'Rubik', sans-serif;
}

a,
button,
label,
span {
    display: inline-block; font-style: initial;
}

input,
select,
textarea {
    background-color: transparent;
    font-size: 15px;
}

input::-moz-placeholder, select::-moz-placeholder, textarea::-moz-placeholder {
    font-size: 0.875rem;
    line-height: 1.25rem;
    --gmcss-text-opacity: 1;
    color: rgb(160 163 189 / var(--gmcss-text-opacity, 1));
}

input::placeholder,
select::placeholder,
textarea::placeholder {
    font-size: 0.875rem;
    line-height: 1.25rem;
    --gmcss-text-opacity: 1;
    color: rgb(160 163 189 / var(--gmcss-text-opacity, 1));
}

input:focus-within,
select:focus-within,
textarea:focus-within {
    outline: 2px solid transparent;
    outline-offset: 2px;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    --gmcss-text-opacity: 1;
    color: rgb(31 31 57 / var(--gmcss-text-opacity, 1)); font-style: initial;
}

body {
    scroll-behavior: smooth;
    --gmcss-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--gmcss-bg-opacity, 1));
    font-family: 'Rubik', sans-serif;
    font-size: 1rem;
    line-height: 1.5rem;
    font-weight: 400;
    --gmcss-text-opacity: 1;
    color: rgb(110 113 145 / var(--gmcss-text-opacity, 1));
}
.container {
    width: 100%;
}
@media (min-width: 0px) {

    .container {
        max-width: 0px;
    }
}
@media (min-width: 640px) {

    .container {
        max-width: 640px;
    }
}
@media (min-width: 768px) {

    .container {
        max-width: 768px;
    }
}
@media (min-width: 1024px) {

    .container {
        max-width: 1024px;
    }
}
@media (min-width: 1280px) {

    .container {
        max-width: 1280px;
    }
}
@media (min-width: 1536px) {

    .container {
        max-width: 1536px;
    }
}
.container {
    margin-left: auto;
    margin-right: auto;
    max-width: 72rem;
    padding-left: 0.625rem;
    padding-right: 0.625rem;
}
@media (min-width: 640px) {

    .container {
        padding-left: 1rem;
        padding-right: 1rem;
    }
}
.row {
    margin: -0.75rem;
    display: flex;
    flex-wrap: wrap;
}
.col-12 {
    width: 100%;
    padding: 0.75rem;
}
.ql-editor h1 {
    margin-bottom: 1rem;
    font-size: 2.25rem;
    line-height: 2.5rem;
    font-weight: 700;
}
.ql-editor h2 {
    margin-bottom: 0.75rem;
    font-size: 1.875rem;
    line-height: 2.25rem;
    font-weight: 600;
}
.ql-editor h3 {
    margin-bottom: 0.5rem;
    font-size: 1.5rem;
    line-height: 2rem;
    font-weight: 600;
}
.ql-editor h4 {
    margin-bottom: 0.5rem;
    font-size: 1.25rem;
    line-height: 1.75rem;
    font-weight: 500;
}
.ql-editor h5 {
    margin-bottom: 0.25rem;
    font-size: 1.125rem;
    line-height: 1.75rem;
    font-weight: 500;
}
.ql-editor h6 {
    margin-bottom: 0.25rem;
    font-size: 1rem;
    line-height: 1.5rem;
    font-weight: 500;
}
.form-row {
    margin-left: -0.25rem;
    margin-right: -0.25rem;
    margin-top: -0.5rem;
    margin-bottom: -0.5rem;
    display: flex;
    flex-wrap: wrap;
}
.form-col-12 {
    width: 100%;
    padding-left: 0.25rem;
    padding-right: 0.25rem;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}
/*===================================
              LAYOUT PART START
    ====================================*/
/* HEADER */
.db-header {
    position: fixed;
    top: 0px;
    left: 0px;
    z-index: 30;
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: space-between;
    --gmcss-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--gmcss-bg-opacity, 1));
    padding: 1rem;
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
    transition-timing-function: linear;
}
@media (min-width: 1024px) {

    .db-header {
        gap: 9rem;
    }
}
/* SIDEBAR */
.db-sidebar {
    overflow-y: auto;
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
    transition-timing-function: linear;
}
.db-sidebar:hover::-webkit-scrollbar-thumb {
    --gmcss-bg-opacity: 1;
    background-color: rgb(0 0 0 / var(--gmcss-bg-opacity, 1));
}
.db-sidebar::-webkit-scrollbar {
    width: 3px;
    border-radius: 1rem;
    background-color: transparent;
}
.db-sidebar {
    scrollbar-color: rgb(185 28 28);
    position: fixed;
    top: 0px;
    z-index: 39;
    height: 100dvh;
    width: 260px;
    overflow-y: auto;
    --gmcss-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--gmcss-bg-opacity, 1));
    padding: 1rem;
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
    transition-timing-function: linear;
}
@media (min-width: 1024px) {

    .db-sidebar {
        top: 4rem;
        height: calc(100vh - 64px);
    }
}
.db-sidebar:where([dir="ltr"], [dir="ltr"] *) {
    left: 0px;
    --gmcss-translate-x: -100%;
    transform: translate(var(--gmcss-translate-x), var(--gmcss-translate-y)) rotate(var(--gmcss-rotate)) skewX(var(--gmcss-skew-x)) skewY(var(--gmcss-skew-y)) scaleX(var(--gmcss-scale-x)) scaleY(var(--gmcss-scale-y));
    --gmcss-shadow: 0 0.125rem 0.375rem 0 rgb(161 172 184 / 12%);
    --gmcss-shadow-colored: 0 0.125rem 0.375rem 0 var(--gmcss-shadow-color);
    box-shadow: var(--gmcss-ring-offset-shadow, 0 0 #0000), var(--gmcss-ring-shadow, 0 0 #0000), var(--gmcss-shadow);
}
@media (min-width: 1024px) {

    .db-sidebar:where([dir="ltr"], [dir="ltr"] *) {
        --gmcss-translate-x: 0px;
        transform: translate(var(--gmcss-translate-x), var(--gmcss-translate-y)) rotate(var(--gmcss-rotate)) skewX(var(--gmcss-skew-x)) skewY(var(--gmcss-skew-y)) scaleX(var(--gmcss-scale-x)) scaleY(var(--gmcss-scale-y));
    }
}
.db-sidebar:where([dir="rtl"], [dir="rtl"] *) {
    right: 0px;
    --gmcss-translate-x: 100%;
    transform: translate(var(--gmcss-translate-x), var(--gmcss-translate-y)) rotate(var(--gmcss-rotate)) skewX(var(--gmcss-skew-x)) skewY(var(--gmcss-skew-y)) scaleX(var(--gmcss-scale-x)) scaleY(var(--gmcss-scale-y));
    --gmcss-shadow: 0 0.125rem -0.375rem 0 rgb(161 172 184 / 12%);
    --gmcss-shadow-colored: 0 0.125rem -0.375rem 0 var(--gmcss-shadow-color);
    box-shadow: var(--gmcss-ring-offset-shadow, 0 0 #0000), var(--gmcss-ring-shadow, 0 0 #0000), var(--gmcss-shadow);
}
@media (min-width: 1024px) {

    .db-sidebar:where([dir="rtl"], [dir="rtl"] *) {
        --gmcss-translate-x: -0px;
        transform: translate(var(--gmcss-translate-x), var(--gmcss-translate-y)) rotate(var(--gmcss-rotate)) skewX(var(--gmcss-skew-x)) skewY(var(--gmcss-skew-y)) scaleX(var(--gmcss-scale-x)) scaleY(var(--gmcss-scale-y));
    }
}
.db-sidebar.active {
    --gmcss-shadow: 15px 0px 25px 0px rgba(0, 0, 0, 0.08);
    --gmcss-shadow-colored: 15px 0px 25px 0px var(--gmcss-shadow-color);
    box-shadow: var(--gmcss-ring-offset-shadow, 0 0 #0000), var(--gmcss-ring-shadow, 0 0 #0000), var(--gmcss-shadow);
}
@media (min-width: 1024px) {

    .db-sidebar.active {
        --gmcss-shadow: 0 0 #0000;
        --gmcss-shadow-colored: 0 0 #0000;
        box-shadow: var(--gmcss-ring-offset-shadow, 0 0 #0000), var(--gmcss-ring-shadow, 0 0 #0000), var(--gmcss-shadow);
    }
}
.db-sidebar.active:where([dir="ltr"], [dir="ltr"] *) {
    --gmcss-translate-x: 0px;
    transform: translate(var(--gmcss-translate-x), var(--gmcss-translate-y)) rotate(var(--gmcss-rotate)) skewX(var(--gmcss-skew-x)) skewY(var(--gmcss-skew-y)) scaleX(var(--gmcss-scale-x)) scaleY(var(--gmcss-scale-y));
}
@media (min-width: 1024px) {

    .db-sidebar.active:where([dir="ltr"], [dir="ltr"] *) {
        --gmcss-translate-x: -100%;
        transform: translate(var(--gmcss-translate-x), var(--gmcss-translate-y)) rotate(var(--gmcss-rotate)) skewX(var(--gmcss-skew-x)) skewY(var(--gmcss-skew-y)) scaleX(var(--gmcss-scale-x)) scaleY(var(--gmcss-scale-y));
    }
}
.db-sidebar.active:where([dir="rtl"], [dir="rtl"] *) {
    --gmcss-translate-x: -0px;
    transform: translate(var(--gmcss-translate-x), var(--gmcss-translate-y)) rotate(var(--gmcss-rotate)) skewX(var(--gmcss-skew-x)) skewY(var(--gmcss-skew-y)) scaleX(var(--gmcss-scale-x)) scaleY(var(--gmcss-scale-y));
}
@media (min-width: 1024px) {

    .db-sidebar.active:where([dir="rtl"], [dir="rtl"] *) {
        --gmcss-translate-x: 100%;
        transform: translate(var(--gmcss-translate-x), var(--gmcss-translate-y)) rotate(var(--gmcss-rotate)) skewX(var(--gmcss-skew-x)) skewY(var(--gmcss-skew-y)) scaleX(var(--gmcss-scale-x)) scaleY(var(--gmcss-scale-y));
    }
}
.db-sidebar-header {
    margin-bottom: 2rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
@media (min-width: 1024px) {

    .db-sidebar-header {
        display: none;
    }
}
.db-sidebar-nav {
    margin-bottom: 1.5rem;
}
.db-sidebar-nav:last-child {
    margin-bottom: 0px;
}
.db-sidebar-nav-title {
    margin-bottom: 0.75rem;
    font-size: 0.75rem;
    line-height: 1rem;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 2px;
    --gmcss-text-opacity: 1;
    color: rgb(156 163 175 / var(--gmcss-text-opacity, 1));
}
.db-sidebar-nav-item.active .db-sidebar-nav-menu {
    background-color: rgb(0 0 0 / 0.05);
    --gmcss-text-opacity: 1;
    color: rgb(0 0 0 / var(--gmcss-text-opacity, 1));
}
.db-sidebar-nav-item.router-link-active .db-sidebar-nav-menu {
    background-color: rgb(0 0 0 / 0.05);
    --gmcss-text-opacity: 1;
    color: rgb(0 0 0 / var(--gmcss-text-opacity, 1));
}
.db-sidebar-nav-menu.router-link-active {
    background-color: rgb(0 0 0 / 0.05);
    --gmcss-text-opacity: 1;
    color: rgb(0 0 0 / var(--gmcss-text-opacity, 1));
}
.db-sidebar-nav-menu {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: flex-start;
    gap: 0.75rem;
    border-radius: 0.5rem;
    padding-top: 0.625rem;
    padding-bottom: 0.625rem;
    padding-left: 0.75rem;
    padding-right: 0.75rem;
    text-align: left;
    text-transform: capitalize;
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
    transition-timing-function: linear;
}
.db-sidebar-nav-menu:hover {
    --gmcss-bg-opacity: 1;
    background-color: rgb(243 244 246 / var(--gmcss-bg-opacity, 1));
}
.db-sidebar-nav-menu i {
    font-size: 0.875rem;
    line-height: 1.25rem;
}
.db-sidebar-nav-menu span {
    flex: 1 1 auto;
    font-size: 1rem;
    line-height: 1.5rem;
}
.db-sidebar-nav-menu span:where([dir="ltr"], [dir="ltr"] *) {
    text-align: left;
}
.db-sidebar-nav-menu span:where([dir="rtl"], [dir="rtl"] *) {
    text-align: right;
}
.db-sidebar-nav-menu.downarrow::after {
    font-family: 'Font Awesome 6 Free';
    font-size: 10px;
    font-weight: 700;
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    --gmcss-content: '\f054'; content: var(--gmcss-content); transition-property: all; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 300ms; transition-timing-function: linear;
}
.db-sidebar-nav-item.active .downarrow::after {
    content: var(--gmcss-content);
    --gmcss-rotate: 90deg;
    transform: translate(var(--gmcss-translate-x), var(--gmcss-translate-y)) rotate(var(--gmcss-rotate)) skewX(var(--gmcss-skew-x)) skewY(var(--gmcss-skew-y)) scaleX(var(--gmcss-scale-x)) scaleY(var(--gmcss-scale-y));
}
.db-message-list .active {
    background-color: rgb(0 0 0 / 0.05) !important;
}
.db-message-list .active h4 {
    --gmcss-text-opacity: 1;
    color: rgb(0 0 0 / var(--gmcss-text-opacity, 1));
}
/*===================================
              LAYOUT PART END
    ====================================*/
/*===================================
            COMPONENTS PART START
    ====================================*/
.ff-header .container {
    height: 118px;
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
}
@media (min-width: 1024px) {

    .ff-header .container {
        height: 74px;
        padding-top: 0px;
        padding-bottom: 0px;
    }
}
.ff-header.active {
    position: fixed;
    top: 0px;
    left: 0px;
    z-index: 60;
    width: 100%;
}
#cart.active {
    visibility: visible;
    opacity: 1;
}
#cart.active > div:where([dir="ltr"], [dir="ltr"] *) {
    --gmcss-translate-x: 0px;
    transform: translate(var(--gmcss-translate-x), var(--gmcss-translate-y)) rotate(var(--gmcss-rotate)) skewX(var(--gmcss-skew-x)) skewY(var(--gmcss-skew-y)) scaleX(var(--gmcss-scale-x)) scaleY(var(--gmcss-scale-y));
}
#cart.active > div:where([dir="rtl"], [dir="rtl"] *) {
    --gmcss-translate-x: -0px;
    transform: translate(var(--gmcss-translate-x), var(--gmcss-translate-y)) rotate(var(--gmcss-rotate)) skewX(var(--gmcss-skew-x)) skewY(var(--gmcss-skew-y)) scaleX(var(--gmcss-scale-x)) scaleY(var(--gmcss-scale-y));
}
.fd-backdrop.active {
    visibility: visible;
    opacity: 1;
}
.cart-switch:checked + label {
    --gmcss-bg-opacity: 1;
    background-color: rgb(0 139 186 / var(--gmcss-bg-opacity, 1));
    --gmcss-text-opacity: 1;
    color: rgb(255 255 255 / var(--gmcss-text-opacity, 1));
}
.size-tabs .active {
    --gmcss-border-opacity: 1;
    border-color: rgb(0 0 0 / var(--gmcss-border-opacity, 1));
    --gmcss-bg-opacity: 1;
    background-color: rgb(220 234 255 / var(--gmcss-bg-opacity, 1));
}
.size-tabs .active .custom-radio-field:checked + .custom-radio-span {
    --gmcss-border-opacity: 1;
    border-color: rgb(0 0 0 / var(--gmcss-border-opacity, 1));
}
.extra .custom-checkbox-field {
    z-index: 0;
}
.extra.active {
    --gmcss-border-opacity: 1 !important;
    border-color: rgb(0 0 0 / var(--gmcss-border-opacity, 1)) !important;
    --gmcss-bg-opacity: 1 !important;
    background-color: rgb(220 234 255 / var(--gmcss-bg-opacity, 1)) !important;
}
.extra.active .custom-checkbox-field:checked + .custom-checkbox-icon {
    --gmcss-border-opacity: 1;
    border-color: rgb(0 0 0 / var(--gmcss-border-opacity, 1));
    --gmcss-bg-opacity: 1;
    background-color: rgb(0 0 0 / var(--gmcss-bg-opacity, 1));
}
.addon.active {
    --gmcss-border-opacity: 1 !important;
    border-color: rgb(0 0 0 / var(--gmcss-border-opacity, 1)) !important;
    --gmcss-bg-opacity: 1 !important;
    background-color: rgb(220 234 255 / var(--gmcss-bg-opacity, 1)) !important;
}
.branch-navs .active {
    --gmcss-bg-opacity: 1;
    background-color: rgb(0 0 0 / var(--gmcss-bg-opacity, 1));
    font-weight: 500;
    --gmcss-text-opacity: 1;
    color: rgb(255 255 255 / var(--gmcss-text-opacity, 1));
}
.branch-navs .active:hover {
    --gmcss-bg-opacity: 1;
    background-color: rgb(0 0 0 / var(--gmcss-bg-opacity, 1));
    --gmcss-text-opacity: 1;
    color: rgb(255 255 255 / var(--gmcss-text-opacity, 1));
}
.active-group .active {
    border-color: rgb(0 0 0 / 0.5) !important;
    background-color: rgb(0 0 0 / 0.05) !important;
}
.active-group .active .fa-check {
    --gmcss-border-opacity: 1 !important;
    border-color: rgb(0 0 0 / var(--gmcss-border-opacity, 1)) !important;
    --gmcss-bg-opacity: 1 !important;
    background-color: rgb(0 0 0 / var(--gmcss-bg-opacity, 1)) !important;
}
.active-group .active input:checked + .custom-radio-span {
    border-width: 3px !important;
    --gmcss-border-opacity: 1 !important;
    border-color: rgb(0 0 0 / var(--gmcss-border-opacity, 1)) !important;
}
.paper-link svg {
    stroke: #6E7191;
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
    transition-timing-function: linear;
}
.paper-link span {
    --gmcss-text-opacity: 1;
    color: rgb(31 31 57 / var(--gmcss-text-opacity, 1));
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
    transition-timing-function: linear;
}
.paper-link:hover svg,
.paper-link:hover span {
    stroke: rgb(0 0 0 / 1);
    --gmcss-text-opacity: 1;
    color: rgb(0 0 0 / var(--gmcss-text-opacity, 1));
}
.address-btn:hover svg,
.address-btn:hover span {
    fill: #fff;
    --gmcss-text-opacity: 1;
    color: rgb(255 255 255 / var(--gmcss-text-opacity, 1));
}
.cookie-paper {
    visibility: hidden;
    --gmcss-translate-y: 100%;
    transform: translate(var(--gmcss-translate-x), var(--gmcss-translate-y)) rotate(var(--gmcss-rotate)) skewX(var(--gmcss-skew-x)) skewY(var(--gmcss-skew-y)) scaleX(var(--gmcss-scale-x)) scaleY(var(--gmcss-scale-y));
    opacity: 0;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 500ms;
    transition-timing-function: linear;
}
.cookie-paper.active {
    visibility: visible;
    --gmcss-translate-y: 0px;
    transform: translate(var(--gmcss-translate-x), var(--gmcss-translate-y)) rotate(var(--gmcss-rotate)) skewX(var(--gmcss-skew-x)) skewY(var(--gmcss-skew-y)) scaleX(var(--gmcss-scale-x)) scaleY(var(--gmcss-scale-y));
    opacity: 1;
}
.add-btn:hover svg {
    fill: #fff;
}
.add-btn:hover span {
    --gmcss-text-opacity: 1;
    color: rgb(255 255 255 / var(--gmcss-text-opacity, 1));
}
.info-btn:hover svg {
    fill: rgb(0 0 0 / 1);
}
#profile.active {
    --gmcss-translate-x: 0px;
    transform: translate(var(--gmcss-translate-x), var(--gmcss-translate-y)) rotate(var(--gmcss-rotate)) skewX(var(--gmcss-skew-x)) skewY(var(--gmcss-skew-y)) scaleX(var(--gmcss-scale-x)) scaleY(var(--gmcss-scale-y));
}
.profile-paper {
    visibility: hidden;
    --gmcss-scale-x: 0;
    --gmcss-scale-y: 0;
    transform: translate(var(--gmcss-translate-x), var(--gmcss-translate-y)) rotate(var(--gmcss-rotate)) skewX(var(--gmcss-skew-x)) skewY(var(--gmcss-skew-y)) scaleX(var(--gmcss-scale-x)) scaleY(var(--gmcss-scale-y));
    opacity: 0;
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
    transition-timing-function: linear;
}
.profile-paper.active {
    visibility: visible;
    --gmcss-scale-x: 1;
    --gmcss-scale-y: 1;
    transform: translate(var(--gmcss-translate-x), var(--gmcss-translate-y)) rotate(var(--gmcss-rotate)) skewX(var(--gmcss-skew-x)) skewY(var(--gmcss-skew-y)) scaleX(var(--gmcss-scale-x)) scaleY(var(--gmcss-scale-y));
    opacity: 1;
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
    transition-timing-function: linear;
}
.veg-navs .veg-active {
    --gmcss-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--gmcss-bg-opacity, 1));
    --gmcss-shadow: 0px 8px 16px rgba(23, 31, 70, 0.08);
    --gmcss-shadow-colored: 0px 8px 16px var(--gmcss-shadow-color);
    box-shadow: var(--gmcss-ring-offset-shadow, 0 0 #0000), var(--gmcss-ring-shadow, 0 0 #0000), var(--gmcss-shadow);
}
.veg-navs .veg-active i {
    opacity: 1;
}
.veg-navs .veg-active i:where([dir="ltr"], [dir="ltr"] *) {
    margin-left: 0px;
}
.veg-navs .veg-active i:where([dir="rtl"], [dir="rtl"] *) {
    margin-right: 0px;
}
.menu-slides .menu-category-active {
    --gmcss-border-opacity: 1;
    border-color: rgb(0 0 0 / var(--gmcss-border-opacity, 1));
    --gmcss-bg-opacity: 1;
    background-color: rgb(220 234 255 / var(--gmcss-bg-opacity, 1));
}
.ff-header.landing-header.active {
    --gmcss-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--gmcss-bg-opacity, 1));
    --gmcss-shadow: 0px 6px 32px 0px rgba(0, 0, 0, 0.04);
    --gmcss-shadow-colored: 0px 6px 32px 0px var(--gmcss-shadow-color);
    box-shadow: var(--gmcss-ring-offset-shadow, 0 0 #0000), var(--gmcss-ring-shadow, 0 0 #0000), var(--gmcss-shadow);
}
/* PAYMENT CARD */
.payment-fieldset {
    margin-bottom: 3rem;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    justify-content: center;
    gap: 1.5rem;
}
@media (min-width: 768px) {

    .payment-fieldset {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}
.payment-label {
    position: relative;
    display: flex;
    width: 100%;
    cursor: pointer;
    flex-direction: column;
    align-items: center;
    gap: 0.75rem;
    border-radius: 0.5rem;
    border-width: 1px;
    --gmcss-border-opacity: 1;
    border-color: rgb(255 255 255 / var(--gmcss-border-opacity, 1));
    --gmcss-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--gmcss-bg-opacity, 1));
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
    padding-left: 0.75rem;
    padding-right: 0.75rem;
    text-align: center;
    --gmcss-shadow: 0px 6px 32px 0px rgba(0, 0, 0, 0.04);
    --gmcss-shadow-colored: 0px 6px 32px 0px var(--gmcss-shadow-color);
    box-shadow: var(--gmcss-ring-offset-shadow, 0 0 #0000), var(--gmcss-ring-shadow, 0 0 #0000), var(--gmcss-shadow);
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
}
.payment-label.active {
    --gmcss-border-opacity: 1;
    border-color: rgb(0 0 0 / var(--gmcss-border-opacity, 1));
    --gmcss-bg-opacity: 1;
    background-color: rgb(220 234 255 / var(--gmcss-bg-opacity, 1));
}
.payment-label input {
    position: absolute;
    top: 0.625rem;
    left: 0.625rem;
    accent-color: rgb(0 0 0 / 1);
}
.payment-label img {
    height: 2rem;
}
.payment-label span {
    font-size: 0.875rem;
    line-height: 1.25rem;
    text-transform: capitalize;
    --gmcss-text-opacity: 1;
    color: rgb(31 31 57 / var(--gmcss-text-opacity, 1));
}
/* PRODUCT CARD GRID */
.product-card-grid {
    position: relative;
    display: flex;
    flex-direction: column;
    border-radius: 1rem;
    border-width: 1px;
    --gmcss-border-opacity: 1;
    border-color: rgb(239 240 246 / var(--gmcss-border-opacity, 1));
    --gmcss-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--gmcss-bg-opacity, 1));
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
    transition-timing-function: linear;
}
.product-card-grid:hover {
    --gmcss-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
    --gmcss-shadow-colored: 0 20px 25px -5px var(--gmcss-shadow-color), 0 8px 10px -6px var(--gmcss-shadow-color);
    box-shadow: var(--gmcss-ring-offset-shadow, 0 0 #0000), var(--gmcss-ring-shadow, 0 0 #0000), var(--gmcss-shadow);
}
.product-card-grid-image {
    width: 100%;
    border-top-left-radius: 1rem;
    border-top-right-radius: 1rem;
}
.product-card-grid-content-group {
    display: flex;
    height: 100%;
    flex-direction: column;
    justify-content: space-between;
    border-bottom-right-radius: 1rem;
    border-bottom-left-radius: 1rem;
    padding-top: 1rem;
    padding-bottom: 1rem;
    padding-left: 0.75rem;
    padding-right: 0.75rem;
}
.product-card-grid-header-group {
    margin-bottom: 0.5rem;
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
}
.product-card-grid-title {
    width: -moz-fit-content;
    width: fit-content;
    max-width: 200px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 0.875rem;
    line-height: 1.25rem;
    font-weight: 600;
    text-transform: capitalize;
}
.product-card-grid-describe {
    margin-bottom: 0.75rem;
    text-overflow: ellipsis;
    font-size: 0.75rem;
    line-height: 1rem;
}
.product-card-grid-footer-group {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
}
.product-card-grid-price-group {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    -moz-column-gap: 0.5rem;
    column-gap: 0.5rem;
}
.product-card-grid-price-previous {
    font-size: 0.875rem;
    line-height: 1.25rem;
    font-weight: 500;
}
.product-card-grid-price-current {
    font-size: 1.125rem;
    line-height: 1.75rem;
    font-weight: 500;
}
.product-card-grid-cart-btn {
    display: flex;
    height: 1.5rem;
    align-items: center;
    gap: 0.375rem;
    border-radius: 1.5rem;
    --gmcss-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--gmcss-bg-opacity, 1));
    padding-left: 0.5rem;
    padding-right: 0.5rem;
    font-size: 0.875rem;
    line-height: 1.25rem;
    font-weight: 500;
    text-transform: capitalize;
    --gmcss-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
    --gmcss-shadow-colored: 0 4px 6px -1px var(--gmcss-shadow-color), 0 2px 4px -2px var(--gmcss-shadow-color);
    box-shadow: var(--gmcss-ring-offset-shadow, 0 0 #0000), var(--gmcss-ring-shadow, 0 0 #0000), var(--gmcss-shadow);
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
    transition-timing-function: linear;
}
.product-card-grid-cart-btn:hover {
    --gmcss-bg-opacity: 1;
    background-color: rgb(0 0 0 / var(--gmcss-bg-opacity, 1));
}
/* PRODUCT CARD LIST */
.product-card-list {
    position: relative;
    display: flex;
    align-items: center;
    border-radius: 0.5rem;
    border-width: 1px;
    --gmcss-border-opacity: 1;
    border-color: rgb(239 240 246 / var(--gmcss-border-opacity, 1));
    --gmcss-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--gmcss-bg-opacity, 1));
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
    transition-timing-function: linear;
}
.product-card-list:hover {
    --gmcss-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
    --gmcss-shadow-colored: 0 20px 25px -5px var(--gmcss-shadow-color), 0 8px 10px -6px var(--gmcss-shadow-color);
    box-shadow: var(--gmcss-ring-offset-shadow, 0 0 #0000), var(--gmcss-ring-shadow, 0 0 #0000), var(--gmcss-shadow);
}
.product-card-list-image {
    height: 100%;
    width: 7rem;
    flex-shrink: 0;
    -o-object-fit: cover;
    object-fit: cover;
}
.product-card-list-image:where([dir="ltr"], [dir="ltr"] *) {
    border-top-left-radius: 0.5rem;
    border-bottom-left-radius: 0.5rem;
}
.product-card-list-image:where([dir="rtl"], [dir="rtl"] *) {
    border-top-right-radius: 0.5rem;
    border-bottom-right-radius: 0.5rem;
}
.product-card-list-content-group {
    display: flex;
    height: 100%;
    width: 100%;
    flex-direction: column;
    justify-content: space-between;
    border-top-right-radius: 0.5rem;
    border-bottom-right-radius: 0.5rem;
    padding: 0.75rem;
}
.product-card-list-header-group {
    margin-bottom: 0.5rem;
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
}
.product-card-list-title {
    font-size: 0.875rem;
    line-height: 1.25rem;
    font-weight: 600;
    text-transform: capitalize;
}
.product-card-list-describe {
    margin-bottom: 0.75rem;
    text-overflow: ellipsis;
    font-size: 0.75rem;
    line-height: 1rem;
}
.product-card-list-footer-group {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
}
.product-card-list-price-group {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    -moz-column-gap: 0.5rem;
    column-gap: 0.5rem;
}
.product-card-list-price-current {
    font-size: 1.125rem;
    line-height: 1.75rem;
    font-weight: 500;
}
.product-card-list-cart-btn {
    display: flex;
    height: 1.5rem;
    align-items: center;
    gap: 0.375rem;
    border-radius: 1.5rem;
    --gmcss-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--gmcss-bg-opacity, 1));
    padding-left: 0.5rem;
    padding-right: 0.5rem;
    font-size: 0.875rem;
    line-height: 1.25rem;
    font-weight: 500;
    text-transform: capitalize;
    --gmcss-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
    --gmcss-shadow-colored: 0 4px 6px -1px var(--gmcss-shadow-color), 0 2px 4px -2px var(--gmcss-shadow-color);
    box-shadow: var(--gmcss-ring-offset-shadow, 0 0 #0000), var(--gmcss-ring-shadow, 0 0 #0000), var(--gmcss-shadow);
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
    transition-timing-function: linear;
}
.product-card-list-cart-btn:hover {
    --gmcss-bg-opacity: 1;
    background-color: rgb(0 0 0 / var(--gmcss-bg-opacity, 1));
}
/* CHAT MESSAGE */
.chat-list {
    display: flex;
    flex-direction: column-reverse;
    gap: 1.25rem;
    overflow-y: auto;
    overflow-x: hidden;
    padding: 1rem;
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
    transition-timing-function: linear;
}
.chat-list.frontend {
    height: calc(100vh - 260px);
}
@media (min-width: 640px) {

    .chat-list.frontend {
        height: calc(100vh - 250px);
    }
}
.chat-list.backend {
    height: 400px;
}
@media (min-width: 640px) {

    .chat-list.backend {
        height: calc(100vh - 315px);
    }
}
.chat-list.frontend.change {
    height: calc(100vh - 320px);
}
@media (min-width: 640px) {

    .chat-list.frontend.change {
        height: calc(100vh - 300px);
    }
}
.chat-list.backend.change {
    height: 400px;
}
@media (min-width: 640px) {

    .chat-list.backend.change {
        height: calc(100vh - 380px);
    }
}
.chat-item {
    display: flex;
    align-items: flex-end;
    gap: 0.75rem;
}
.chat-avatar {
    margin-bottom: 1.25rem;
    height: 1.75rem;
    width: 1.75rem;
    flex-shrink: 0;
    border-radius: 9999px;
}
.chat-group {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}
.chat-group-text {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}
.chat-text {
    width: -moz-fit-content;
    width: fit-content;
    max-width: 24rem;
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
    padding-left: 1rem;
    padding-right: 1rem;
    font-size: 0.875rem;
    line-height: 1.25rem;
    --gmcss-text-opacity: 1;
    color: rgb(31 31 57 / var(--gmcss-text-opacity, 1));
}
.chat-group-meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 0.25rem;
}
.chat-meta {
    font-size: 0.75rem;
    line-height: 1rem;
}
.chat-user {
    flex-direction: row-reverse;
}
.chat-admin .chat-text {
    border-radius: 1rem;
    --gmcss-bg-opacity: 1;
    background-color: rgb(239 240 246 / var(--gmcss-bg-opacity, 1));
}
.chat-admin .chat-text:nth-child(odd):where([dir="ltr"], [dir="ltr"] *) {
    border-bottom-left-radius: 0.25rem;
}
.chat-admin .chat-text:nth-child(even):where([dir="ltr"], [dir="ltr"] *) {
    border-top-left-radius: 0.25rem;
}
.chat-admin .chat-text:nth-child(odd):where([dir="rtl"], [dir="rtl"] *) {
    border-bottom-right-radius: 0.25rem;
}
.chat-admin .chat-text:nth-child(even):where([dir="rtl"], [dir="rtl"] *) {
    border-top-right-radius: 0.25rem;
}
.chat-user .chat-text {
    border-radius: 1rem;
    --gmcss-bg-opacity: 1;
    background-color: rgb(220 234 255 / var(--gmcss-bg-opacity, 1));
}
.chat-user .chat-text:nth-child(odd):where([dir="ltr"], [dir="ltr"] *) {
    border-bottom-right-radius: 0.25rem;
}
.chat-user .chat-text:nth-child(even):where([dir="ltr"], [dir="ltr"] *) {
    border-top-right-radius: 0.25rem;
}
.chat-user .chat-text:nth-child(odd):where([dir="rtl"], [dir="rtl"] *) {
    border-bottom-left-radius: 0.25rem;
}
.chat-user .chat-text:nth-child(even):where([dir="rtl"], [dir="rtl"] *) {
    border-top-left-radius: 0.25rem;
}
.chat-user .chat-group-text {
    align-items: flex-end;
}
.chat-user .chat-group-meta {
    flex-direction: row-reverse;
}
.chat-list::-webkit-scrollbar {
    width: 0.5rem;
    background-color: transparent;
}
.chat-list::-webkit-scrollbar-thumb {
    border-radius: 0.75rem;
    border-width: 2px;
    border-style: solid;
    --gmcss-border-opacity: 1;
    border-color: rgb(255 255 255 / var(--gmcss-border-opacity, 1));
    --gmcss-bg-opacity: 1;
    background-color: rgb(156 163 175 / var(--gmcss-bg-opacity, 1));
}
.chat-footer {
    display: flex;
    width: 100%;
    align-items: center;
    gap: 1.25rem;
    padding: 1rem;
}
.chat-footer-file-label {
    position: relative;
    isolation: isolate;
    height: -moz-fit-content;
    height: fit-content;
    width: -moz-fit-content;
    width: fit-content;
    flex-shrink: 0;
    cursor: pointer;
}
.chat-footer-file-input {
    position: absolute;
    top: 0px;
    left: 0px;
    z-index: -10;
    height: 100%;
    width: 100%;
    opacity: 0;
}
.chat-footer-data {
    width: 100%;
    overflow: hidden;
    border-radius: 1.5rem;
    --gmcss-bg-opacity: 1;
    background-color: rgb(247 247 252 / var(--gmcss-bg-opacity, 1));
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    padding-left: 1rem;
    padding-right: 1rem;
}
.chat-footer-data-list {
    display: flex;
    gap: 0.75rem;
    overflow-x: auto;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}
.chat-footer-data-list::-webkit-scrollbar {
    height: 0.5rem;
    border-radius: 0.75rem;
    --gmcss-bg-opacity: 1;
    background-color: rgb(229 231 235 / var(--gmcss-bg-opacity, 1));
}
.chat-footer-data-list::-webkit-scrollbar-thumb {
    border-radius: 0.75rem;
    border-width: 2px;
    border-style: solid;
    --gmcss-border-opacity: 1;
    border-color: rgb(226 232 240 / var(--gmcss-border-opacity, 1));
    --gmcss-bg-opacity: 1;
    background-color: rgb(156 163 175 / var(--gmcss-bg-opacity, 1));
}
.chat-footer-data-input {
    height: 100%;
    width: 100%;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}
.chat-footer-sent {
    flex-shrink: 0;
}
/* THIN SCROLL BAR */
.thin-scrolling {
    overflow-y: auto;
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
    transition-timing-function: linear;
}
.thin-scrolling:hover::-webkit-scrollbar-thumb {
    --gmcss-bg-opacity: 1;
    background-color: rgb(0 0 0 / var(--gmcss-bg-opacity, 1));
}
.thin-scrolling::-webkit-scrollbar {
    width: 3px;
    border-radius: 1rem;
    background-color: transparent;
}
.thin-scrolling {
    scrollbar-color: rgb(185 28 28);
}
/* OTHER */
.db-image {
    width: 100%;
    border-radius: 10px;
    border-width: 5px;
    --gmcss-border-opacity: 1;
    border-color: rgb(255 255 255 / var(--gmcss-border-opacity, 1));
    --gmcss-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
    --gmcss-shadow-colored: 0 1px 3px 0 var(--gmcss-shadow-color), 0 1px 2px -1px var(--gmcss-shadow-color);
    box-shadow: var(--gmcss-ring-offset-shadow, 0 0 #0000), var(--gmcss-ring-shadow, 0 0 #0000), var(--gmcss-shadow);
}
.db-light-text {
    font-size: 1rem;
    line-height: 1.5rem;
    font-weight: 300;
    letter-spacing: 0.025em;
}
/* ORDER STATUS */
.db-order-status.check::before {
    --gmcss-bg-opacity: 1;
    background-color: rgb(0 0 0 / var(--gmcss-bg-opacity, 1));
    text-align: center;
    font-family: 'Font Awesome 6 Free';
    font-size: 0.75rem;
    line-height: 1rem;
    font-weight: 700;
    --gmcss-text-opacity: 1;
    color: rgb(255 255 255 / var(--gmcss-text-opacity, 1));
    --gmcss-content: '\f00c';
    content: var(--gmcss-content);
}
.db-order-status.active::before {
    content: var(--gmcss-content);
    border-width: 5px;
}
/* COMMON CLASS */
.invalid {
    --gmcss-border-opacity: 1 !important;
    border-color: rgb(252 165 165 / var(--gmcss-border-opacity, 1)) !important;
}
.invalid::before {
    content: var(--gmcss-content) !important;
    --gmcss-bg-opacity: 1 !important;
    background-color: rgb(252 165 165 / var(--gmcss-bg-opacity, 1)) !important;
}
/* MAIN CONTENT */
.db-main {
    height: 100vh;
    overflow: auto;
    --gmcss-bg-opacity: 1;
    background-color: rgb(247 247 252 / var(--gmcss-bg-opacity, 1));
    padding-left: 0.75rem;
    padding-right: 0.75rem;
    padding-bottom: 1rem;
    padding-top: 80px;
    font-family: 'Public Sans', sans-serif;
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
    transition-timing-function: linear;
}
@media (min-width: 640px) {

    .db-main {
        padding-left: 1rem;
        padding-right: 1rem;
    }
}
@media (min-width: 1024px) {

    .db-main {
        padding-top: 84px;
        padding-bottom: 1.25rem;
    }
}
@media (min-width: 0px) and (max-width: 767px) {

    .db-main {
        padding-top: 170px;
    }
}
@media (min-width: 1024px) {

    .db-main:where([dir="ltr"], [dir="ltr"] *) {
        padding-left: 280px;
        padding-right: 1.25rem;
    }

    .db-main:where([dir="rtl"], [dir="rtl"] *) {
        padding-right: 280px;
        padding-left: 1.25rem;
    }

    .db-main.expand:where([dir="ltr"], [dir="ltr"] *) {
        padding-left: 1.25rem;
    }

    .db-main.expand:where([dir="rtl"], [dir="rtl"] *) {
        padding-right: 1.25rem;
    }
}
/* BACKLDROP */
.backdrop {
    visibility: hidden;
    position: fixed;
    top: 0px;
    left: 0px;
    z-index: 40;
    height: 100%;
    width: 100%;
    background-color: rgb(0 0 0 / 0.6);
    opacity: 0;
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
    transition-timing-function: linear;
}
.backdrop.active {
    visibility: visible;
    opacity: 1;
}
/* BUTTON */
.db-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    border-radius: 0.375rem;
    padding-top: 0.625rem;
    padding-bottom: 0.625rem;
    padding-left: 1rem;
    padding-right: 1rem;
    font-size: 0.875rem;
    line-height: 1.25rem;
    font-weight: 400;
    text-transform: capitalize;
    --gmcss-shadow: 0 2px 6px 0 rgb(67 89 113 / 12%);
    --gmcss-shadow-colored: 0 2px 6px 0 var(--gmcss-shadow-color);
    box-shadow: var(--gmcss-ring-offset-shadow, 0 0 #0000), var(--gmcss-ring-shadow, 0 0 #0000), var(--gmcss-shadow);
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
    transition-timing-function: linear;
}
.xmark-btn {
    height: 1.5rem;
    width: 1.5rem;
    border-radius: 9999px;
    --gmcss-bg-opacity: 1;
    background-color: rgb(243 244 246 / var(--gmcss-bg-opacity, 1));
    text-align: center;
    font-size: 1rem;
    line-height: 1.5rem;
    --gmcss-text-opacity: 1;
    color: rgb(107 114 128 / var(--gmcss-text-opacity, 1));
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
    transition-timing-function: linear;
}
.xmark-btn:hover {
    --gmcss-bg-opacity: 1;
    background-color: rgb(254 226 226 / var(--gmcss-bg-opacity, 1));
    --gmcss-text-opacity: 1;
    color: rgb(0 0 0 / var(--gmcss-text-opacity, 1));
}
.db-btn-outline {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.375rem;
    border-radius: 0.375rem;
    border-width: 1px;
    --gmcss-border-opacity: 1;
    border-color: rgb(229 231 235 / var(--gmcss-border-opacity, 1));
    --gmcss-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--gmcss-bg-opacity, 1));
    padding-top: 0.375rem;
    padding-bottom: 0.375rem;
    padding-left: 0.75rem;
    padding-right: 0.75rem;
    font-size: 0.875rem;
    line-height: 1.25rem;
    font-weight: 400;
    text-transform: capitalize;
    --gmcss-text-opacity: 1;
    color: rgb(55 65 81 / var(--gmcss-text-opacity, 1));
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
    transition-timing-function: linear;
}
.db-btn-outline:hover {
    border-color: rgb(0 0 0 / 0.2);
    background-color: rgb(0 0 0 / 0.05);
    --gmcss-text-opacity: 1;
    color: rgb(0 0 0 / var(--gmcss-text-opacity, 1));
}
.db-btn-outline i {
    font-size: 0.75rem;
    line-height: 1rem;
}
.db-btn-outline.primary {
    --gmcss-border-opacity: 1;
    border-color: rgb(0 0 0 / var(--gmcss-border-opacity, 1));
    --gmcss-text-opacity: 1;
    color: rgb(0 0 0 / var(--gmcss-text-opacity, 1));
}
.db-btn-outline.primary:hover {
    background-color: rgb(0 0 0 / 0.1);
}
.db-btn-outline.warning {
    --gmcss-border-opacity: 1;
    border-color: rgb(246 166 9 / var(--gmcss-border-opacity, 1));
    --gmcss-text-opacity: 1;
    color: rgb(246 166 9 / var(--gmcss-text-opacity, 1));
}
.db-btn-outline.warning:hover {
    background-color: rgb(246 166 9 / 0.1);
}
.db-btn-outline.success {
    --gmcss-border-opacity: 1;
    border-color: rgb(34 197 94 / var(--gmcss-border-opacity, 1));
    --gmcss-text-opacity: 1;
    color: rgb(22 163 74 / var(--gmcss-text-opacity, 1));
}
.db-btn-outline.success:hover {
    --gmcss-bg-opacity: 1;
    background-color: rgb(240 253 244 / var(--gmcss-bg-opacity, 1));
}
.db-btn-outline.danger {
    --gmcss-border-opacity: 1;
    border-color: rgb(239 68 68 / var(--gmcss-border-opacity, 1));
    --gmcss-text-opacity: 1;
    color: rgb(220 38 38 / var(--gmcss-text-opacity, 1));
}
.db-btn-outline.danger:hover {
    --gmcss-bg-opacity: 1;
    background-color: rgb(254 242 242 / var(--gmcss-bg-opacity, 1));
}
.db-btn-outline.info {
    --gmcss-border-opacity: 1;
    border-color: rgb(6 182 212 / var(--gmcss-border-opacity, 1));
    --gmcss-text-opacity: 1;
    color: rgb(8 145 178 / var(--gmcss-text-opacity, 1));
}
.db-btn-outline.info:hover {
    --gmcss-bg-opacity: 1;
    background-color: rgb(236 254 255 / var(--gmcss-bg-opacity, 1));
}
.db-btn-outline.sm {
    gap: 0.25rem !important;
    border-radius: 0.25rem !important;
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
    padding-left: 0.5rem !important;
    padding-right: 0.5rem !important;
    font-size: 0.75rem !important;
    line-height: 1rem !important;
}
.db-btn-outline.sm i {
    font-size: 10px !important;
}
.db-btn-fill.primary {
    background-color: rgb(0 0 0 / 0.1);
    --gmcss-text-opacity: 1;
    color: rgb(0 0 0 / var(--gmcss-text-opacity, 1));
}
.db-btn-fill.primary:hover {
    background-color: rgb(0 0 0 / 0.2);
}
.db-btn-fill.sm {
    gap: 0.25rem !important;
    border-radius: 0.25rem !important;
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
    padding-left: 0.5rem !important;
    padding-right: 0.5rem !important;
    font-size: 0.75rem !important;
    line-height: 1rem !important;
}
.db-btn-fill.sm i {
    font-size: 10px !important;
}
/* CARD */
.db-card {
    border-radius: 0.25rem;
    border-style: none;
    --gmcss-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--gmcss-bg-opacity, 1));
    --gmcss-shadow: 0 2px 6px 0 rgb(67 89 113 / 12%);
    --gmcss-shadow-colored: 0 2px 6px 0 var(--gmcss-shadow-color);
    box-shadow: var(--gmcss-ring-offset-shadow, 0 0 #0000), var(--gmcss-ring-shadow, 0 0 #0000), var(--gmcss-shadow);
}
.db-card-body {
    padding: 1.25rem;
}
.db-card-header {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 1.25rem;
    border-bottom-width: 1px;
    --gmcss-border-opacity: 1;
    border-color: rgb(229 231 235 / var(--gmcss-border-opacity, 1));
    padding: 1.25rem;
}
@media (min-width: 640px) {

    .db-card-header {
        flex-direction: row;
        justify-content: space-between;
    }
}
.db-card-title {
    font-family: 'Public Sans', sans-serif;
    font-size: 18px;
    font-weight: 500;
    text-transform: capitalize;
    --gmcss-text-opacity: 1;
    color: rgb(110 113 145 / var(--gmcss-text-opacity, 1));
}
.db-card-filter {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 0.625rem;
}
@media (min-width: 640px) {

    .db-card-filter {
        align-items: flex-start;
    }
}
.db-card-filter-btn {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 0.375rem;
    border-radius: 0.375rem;
    border-width: 1px;
    --gmcss-border-opacity: 1;
    border-color: rgb(0 0 0 / var(--gmcss-border-opacity, 1));
    --gmcss-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--gmcss-bg-opacity, 1));
    padding-left: 0.625rem;
    padding-right: 0.625rem;
    padding-top: 0.5rem;
    padding-bottom: 0.375rem;
    font-size: 0.875rem;
    line-height: 1.25rem;
    text-transform: capitalize;
    line-height: 1;
    --gmcss-text-opacity: 1;
    color: rgb(110 113 145 / var(--gmcss-text-opacity, 1));
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
    transition-timing-function: linear;
}
.db-card-filter-btn:hover {
    border-color: rgb(0 0 0 / 0.1);
    background-color: rgb(0 0 0 / 0.05);
    --gmcss-text-opacity: 1;
    color: rgb(0 0 0 / var(--gmcss-text-opacity, 1));
}
.db-card-filter-btn i {
    font-size: 0.875rem;
    line-height: 1.25rem;
    --gmcss-text-opacity: 1;
    color: rgb(0 0 0 / var(--gmcss-text-opacity, 1));
}
.db-card-filter-btn span {
    --gmcss-text-opacity: 1;
    color: rgb(0 0 0 / var(--gmcss-text-opacity, 1));
}
.db-card-filter-btn span:where([dir="ltr"], [dir="ltr"] *) {
    padding-right: 0.25rem;
}
.db-card-filter-btn span:where([dir="rtl"], [dir="rtl"] *) {
    padding-left: 0.25rem;
}
.db-card-filter .db-field-down-arrow {
    --gmcss-text-opacity: 1;
    color: rgb(0 0 0 / var(--gmcss-text-opacity, 1));
}
.db-card-filter-dropdown-list {
    position: absolute;
    top: 2.5rem;
    right: 0px;
    z-index: 20;
    border-radius: 0.375rem;
    --gmcss-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--gmcss-bg-opacity, 1));
    padding: 0.5rem;
    --gmcss-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
    --gmcss-shadow-colored: 0 10px 15px -3px var(--gmcss-shadow-color), 0 4px 6px -4px var(--gmcss-shadow-color);
    box-shadow: var(--gmcss-ring-offset-shadow, 0 0 #0000), var(--gmcss-ring-shadow, 0 0 #0000), var(--gmcss-shadow);
}
.db-card-filter-dropdown-menu {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 0.625rem;
    white-space: nowrap;
    border-radius: 0.375rem;
    padding-left: 0.75rem;
    padding-right: 0.75rem;
    padding-top: 0.375rem;
    padding-bottom: 0.375rem;
    font-size: 0.875rem;
    line-height: 1.25rem;
    text-transform: capitalize;
    --gmcss-text-opacity: 1;
    color: rgb(107 114 128 / var(--gmcss-text-opacity, 1));
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
    transition-timing-function: linear;
}
.db-card-filter-dropdown-menu:hover {
    background-color: rgb(0 0 0 / 0.05);
    --gmcss-text-opacity: 1;
    color: rgb(0 0 0 / var(--gmcss-text-opacity, 1));
}
.db-card-filter-dropdown-menu i {
    width: 1rem;
    flex-shrink: 0;
}
.dropdown-btn i ,.table-filter-btn i,.custom-dropdown .dropdown-btn i{
    transition: transform 0.3s ease;
}
.dropdown-btn.rotated i:last-child ,.table-filter-btn.rotated i:last-child,.custom-dropdown .dropdown-btn.rotated i{
    transform: rotate(180deg);
}
/* BREADCRUMB */
.db-breadcrumb {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    row-gap: 0.5rem;
    -moz-column-gap: 1.25rem;
    column-gap: 1.25rem;
    padding-top: 14px;
}
@media (min-width: 640px) {

    .db-breadcrumb {
        flex-direction: row;
        justify-content: space-between;
    }
}
.db-breadcrumb-list {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
}
@media (min-width: 640px) {

    .db-breadcrumb-list {
        justify-content: flex-end;
    }
}
.db-breadcrumb-item {
    font-size: 22px;
    text-transform: capitalize;
    --gmcss-text-opacity: 1;
    color: rgb(148 163 184 / var(--gmcss-text-opacity, 1));
}
.db-breadcrumb-link {
    --gmcss-text-opacity: 1;
    color: rgb(71 85 105 / var(--gmcss-text-opacity, 1));
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
    transition-timing-function: linear;
}
.db-breadcrumb-link::after {
    padding-left: 0.375rem;
    padding-right: 0.375rem;
    --gmcss-text-opacity: 1;
    color: rgb(110 113 145 / var(--gmcss-text-opacity, 1));
    --gmcss-content: '/';
    content: var(--gmcss-content);
}
.db-breadcrumb-link:hover {
    --gmcss-text-opacity: 1;
    color: rgb(0 0 0 / var(--gmcss-text-opacity, 1));
}
/* TABS */
.db-tab-btn {
    display: flex;
    width: 100%;
    align-items: center;
    gap: 0.75rem;
    border-radius: 0.25rem;
    border-bottom-width: 1px;
    --gmcss-border-opacity: 1;
    border-color: rgb(241 245 249 / var(--gmcss-border-opacity, 1));
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    padding-left: 0.75rem;
    padding-right: 0.75rem;
    text-align: left;
    font-size: 15px;
    text-transform: capitalize;
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
    transition-timing-function: linear;
}
.db-tab-btn:last-child {
    border-style: none;
}
.db-tab-btn:hover {
    --gmcss-bg-opacity: 1;
    background-color: rgb(241 245 249 / var(--gmcss-bg-opacity, 1));
}
.db-tab-btn i {
    font-size: 0.875rem;
    line-height: 1.25rem;
}
.db-tab-btn.active {
    background-color: rgb(0 0 0 / 0.05) !important;
    --gmcss-text-opacity: 1 !important;
    color: rgb(0 0 0 / var(--gmcss-text-opacity, 1)) !important;
}
.db-tab-div {
    display: none;
}
.db-tab-div.active {
    display: block;
}
.db-tab-sub-div {
    display: none;
}
.db-tab-sub-div.active {
    display: block;
}
.db-tab-sub-btn.active {
    --gmcss-bg-opacity: 1 !important;
    background-color: rgb(0 0 0 / var(--gmcss-bg-opacity, 1)) !important;
    --gmcss-text-opacity: 1 !important;
    color: rgb(255 255 255 / var(--gmcss-text-opacity, 1)) !important;
}
.db-tabBtn {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    border-radius: 0.25rem;
    border-width: 1px;
    border-color: transparent;
    padding-top: 0.625rem;
    padding-bottom: 0.625rem;
    padding-left: 0.75rem;
    padding-right: 0.75rem;
    font-size: 0.875rem;
    line-height: 1.25rem;
    text-transform: capitalize;
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
    transition-timing-function: linear;
}
.db-tabBtn:hover {
    --gmcss-bg-opacity: 1;
    background-color: rgb(243 244 246 / var(--gmcss-bg-opacity, 1));
    --gmcss-text-opacity: 1;
    color: rgb(0 0 0 / var(--gmcss-text-opacity, 1));
}
@media (min-width: 640px) {

    .db-tabBtn {
        border-bottom-right-radius: 0px;
        border-bottom-left-radius: 0px;
        border-top-left-radius: 0.25rem;
        border-top-right-radius: 0.25rem;
        border-bottom-color: rgb(0 0 0 / 0.5);
        padding-top: 0.75rem;
        padding-bottom: 0.75rem;
    }
}
.db-tabBtn.active {
    border-color: rgb(0 0 0 / 0.5);
    background-color: rgb(0 0 0 / 0.05);
    --gmcss-text-opacity: 1;
    color: rgb(0 0 0 / var(--gmcss-text-opacity, 1));
}
@media (min-width: 640px) {

    .db-tabBtn.active {
        --gmcss-border-opacity: 1;
        border-bottom-color: rgb(255 255 255 / var(--gmcss-border-opacity, 1));
        --gmcss-bg-opacity: 1;
        background-color: rgb(255 255 255 / var(--gmcss-bg-opacity, 1));
    }
}
.db-tabDiv {
    display: none;
    border-radius: 0.25rem;
    border-width: 1px;
    border-color: rgb(0 0 0 / 0.5);
    --gmcss-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--gmcss-bg-opacity, 1));
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
    padding-left: 1rem;
    padding-right: 1rem;
    font-size: 0.875rem;
    line-height: 1.5rem;
    --gmcss-shadow: 0 2px 6px 0 rgb(67 89 113 / 12%);
    --gmcss-shadow-colored: 0 2px 6px 0 var(--gmcss-shadow-color);
    box-shadow: var(--gmcss-ring-offset-shadow, 0 0 #0000), var(--gmcss-ring-shadow, 0 0 #0000), var(--gmcss-shadow);
}
@media (min-width: 640px) {

    .db-tabDiv {
        border-top-left-radius: 0px;
        border-top-right-radius: 0px;
        border-bottom-right-radius: 0.25rem;
        border-bottom-left-radius: 0.25rem;
        border-left-width: 1px;
        border-right-width: 1px;
        border-bottom-width: 1px;
        --gmcss-border-opacity: 1;
        border-top-color: rgb(255 255 255 / var(--gmcss-border-opacity, 1));
        padding-top: 1rem;
        padding-bottom: 1rem;
        padding-left: 1.25rem;
        padding-right: 1.25rem;
    }
}
.db-tabDiv.active {
    display: block;
}
.db-tabBtn span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.data-tab {
    display: none;
}
.data-tab.active {
    display: block !important;
}
.profile-tabBtn.active {
    --gmcss-bg-opacity: 1;
    background-color: rgb(0 0 0 / var(--gmcss-bg-opacity, 1));
    stroke: #fff;
    --gmcss-text-opacity: 1;
    color: rgb(255 255 255 / var(--gmcss-text-opacity, 1));
    --gmcss-shadow: 0px 6px 10px rgba(185, 28, 28, 0.22);
    --gmcss-shadow-colored: 0px 6px 10px var(--gmcss-shadow-color);
    box-shadow: var(--gmcss-ring-offset-shadow, 0 0 #0000), var(--gmcss-ring-shadow, 0 0 #0000), var(--gmcss-shadow);
}
.profile-tabDiv {
    display: none;
}
.profile-tabDiv.active {
    display: block;
}
/* DROPDOWN */
.dropdown-group {
    position: relative;
    line-height: 0px;
}
.dropdown-btn {
    cursor: pointer;
}
.dropdown-list {
    --gmcss-scale-y: 0;
    transform: translate(var(--gmcss-translate-x), var(--gmcss-translate-y)) rotate(var(--gmcss-rotate)) skewX(var(--gmcss-skew-x)) skewY(var(--gmcss-skew-y)) scaleX(var(--gmcss-scale-x)) scaleY(var(--gmcss-scale-y));
}
.dropdown-list.active {
    transform-origin: top;
    --gmcss-scale-y: 1;
    transform: translate(var(--gmcss-translate-x), var(--gmcss-translate-y)) rotate(var(--gmcss-rotate)) skewX(var(--gmcss-skew-x)) skewY(var(--gmcss-skew-y)) scaleX(var(--gmcss-scale-x)) scaleY(var(--gmcss-scale-y));
}
/* FIELDS */
.db-field-title {
    margin-bottom: 0.5rem;
    display: block;
    font-family: 'Public Sans', sans-serif;
    font-size: 0.75rem;
    line-height: 1rem;
    font-weight: 500;
    text-transform: uppercase;
    --gmcss-text-opacity: 1;
    color: rgb(86 106 127 / var(--gmcss-text-opacity, 1));
}
.db-field-title.required::after {
    --gmcss-text-opacity: 1;
    color: rgb(239 68 68 / var(--gmcss-text-opacity, 1));
    --gmcss-content: '*';
    content: var(--gmcss-content);
}
.db-field-title.required:where([dir="ltr"], [dir="ltr"] *)::after {
    content: var(--gmcss-content);
    margin-left: 0.25rem;
}
.db-field-title.required:where([dir="rtl"], [dir="rtl"] *)::after {
    content: var(--gmcss-content);
    margin-right: 0.25rem;
}
.db-field-control {
    display: block;
    height: 2.5rem;
    width: 100%;
    border-radius: 0.375rem;
    border-width: 1px;
    --gmcss-border-opacity: 1;
    border-color: rgb(229 231 235 / var(--gmcss-border-opacity, 1));
    --gmcss-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--gmcss-bg-opacity, 1));
    padding-left: 0.75rem;
    padding-right: 0.75rem;
    padding-bottom: 2px;
    font-family: 'Public Sans', sans-serif;
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
    transition-timing-function: linear;
}
.db-field-control:focus-within {
    border-color: rgb(0 0 0 / 0.2);
}
.db-multiple-field {
    display: flex;
    height: 2.5rem;
    width: 100%;
    align-items: center;
    border-radius: 0.375rem;
    border-width: 1px;
    --gmcss-border-opacity: 1;
    border-color: rgb(229 231 235 / var(--gmcss-border-opacity, 1));
    --gmcss-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--gmcss-bg-opacity, 1));
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
    transition-timing-function: linear;
}
.db-multiple-field:focus-within {
    border-color: rgb(0 0 0 / 0.2);
}
.db-multiple-field input {
    height: 100%;
    width: 50%;
    --gmcss-border-opacity: 1;
    border-color: rgb(229 231 235 / var(--gmcss-border-opacity, 1));
    padding-left: 0.75rem;
    padding-right: 0.75rem;
    padding-bottom: 2px;
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
    transition-timing-function: linear;
}
.db-multiple-field input:first-child {
    border-style: none;
}
.db-multiple-field input:where([dir="ltr"], [dir="ltr"] *) {
    border-left-width: 1px;
}
.db-multiple-field input:where([dir="rtl"], [dir="rtl"] *) {
    border-right-width: 1px;
}
.db-multiple-field button {
    height: 2rem;
    border-radius: 0.375rem;
    background-color: rgb(0 0 0 / 0.1);
    padding-left: 1rem;
    padding-right: 1rem;
    font-size: 1rem;
    line-height: 1.5rem;
    --gmcss-text-opacity: 1;
    color: rgb(0 0 0 / var(--gmcss-text-opacity, 1));
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
    transition-timing-function: linear;
}
.db-multiple-field button:hover {
    --gmcss-bg-opacity: 1;
    background-color: rgb(0 0 0 / var(--gmcss-bg-opacity, 1));
    --gmcss-text-opacity: 1;
    color: rgb(255 255 255 / var(--gmcss-text-opacity, 1));
}
.db-multiple-field button:where([dir="ltr"], [dir="ltr"] *) {
    margin-right: 3px;
}
.db-multiple-field button:where([dir="rtl"], [dir="rtl"] *) {
    margin-left: 3px;
}
.db-field-alert {
    margin-left: 0.25rem;
    font-family: 'Public Sans', sans-serif;
    --gmcss-text-opacity: 1;
    color: rgb(239 68 68 / var(--gmcss-text-opacity, 1));
}
.db-field-radio-group {
    display: flex;
    align-items: center;
    gap: 1.25rem;
    padding-top: 0.5rem;
}
.db-field-radio {
    display: flex;
    width: -moz-fit-content;
    width: fit-content;
    cursor: pointer;
    align-items: center;
    padding-top: 0.25rem;
}
.db-field-checkbox {
    display: flex;
    width: -moz-fit-content;
    width: fit-content;
    cursor: pointer;
    align-items: center;
    padding-top: 0.25rem;
}
.db-field-label {
    cursor: pointer;
    font-family: 'Public Sans', sans-serif;
    font-size: 15px;
    text-transform: capitalize;
    line-height: 1rem;
}
.db-field-label:where([dir="ltr"], [dir="ltr"] *) {
    padding-left: 0.5rem;
}
.db-field-label:where([dir="rtl"], [dir="rtl"] *) {
    padding-right: 0.5rem;
}
textarea.db-field-control {
    height: 9rem;
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
}
.db-field-control[type=file] {
    position: relative;
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
    transition-timing-function: linear;
}
.db-field-control[type=file]::before {
    position: absolute;
    top: 0px;
    z-index: 10;
    height: 100%;
    width: 1px;
    --gmcss-bg-opacity: 1;
    background-color: rgb(229 231 235 / var(--gmcss-bg-opacity, 1));
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    --gmcss-content: ''; content: var(--gmcss-content); transition-property: all; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 300ms; transition-timing-function: linear;
}
.db-field-control[type=file]:focus-within::before {
    content: var(--gmcss-content);
    background-color: rgb(0 0 0 / 0.2);
}
.db-field-control[type=file]:where([dir="ltr"], [dir="ltr"] *) {
    padding-left: 0px;
}
.db-field-control[type=file]:where([dir="ltr"], [dir="ltr"] *)::before {
    content: var(--gmcss-content);
    left: 107px;
}
.db-field-control[type=file]:where([dir="rtl"], [dir="rtl"] *) {
    padding-right: 0px;
}
.db-field-control[type=file]:where([dir="rtl"], [dir="rtl"] *)::before {
    content: var(--gmcss-content);
    right: 113px;
}
.db-field-control[type=file]::-webkit-file-upload-button,
.db-field-control[type=file]::file-selector-button {
    height: 2.5rem;
    cursor: pointer;
    border-top-left-radius: 0.5rem;
    border-bottom-left-radius: 0.5rem;
    border-style: none;
    --gmcss-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--gmcss-bg-opacity, 1));
    padding-left: 1rem;
    padding-bottom: 0.25rem;
    padding-right: 1.75rem;
    font-size: 0.875rem;
    line-height: 1.25rem;
    --gmcss-text-opacity: 1;
    color: rgb(110 113 145 / var(--gmcss-text-opacity, 1));
    -webkit-transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    -webkit-transition-property: all;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
    transition-timing-function: linear;
}
.checkbox:checked {
    border-style: none;
}
.checkbox:checked + .check-icon {
    display: flex;
}
.checkbox:checked + .checkmark {
    --gmcss-border-opacity: 1;
    border-color: rgb(0 0 0 / var(--gmcss-border-opacity, 1));
    --gmcss-bg-opacity: 1;
    background-color: rgb(0 0 0 / var(--gmcss-bg-opacity, 1));
}
input:checked + div {
    --gmcss-border-opacity: 1;
    border-color: rgb(0 0 0 / var(--gmcss-border-opacity, 1));
}
input:checked + div svg {
    display: block;
}
.custom-switch input {
    height: 0.75rem;
    width: 1.5rem;
    cursor: pointer;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border-radius: 9999px;
    --gmcss-bg-opacity: 1;
    background-color: rgb(110 113 145 / var(--gmcss-bg-opacity, 1));
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
}
.custom-switch input:checked {
    --gmcss-bg-opacity: 1;
    background-color: rgb(0 0 0 / var(--gmcss-bg-opacity, 1));
}
.custom-switch .btn {
    pointer-events: none;
    position: absolute;
    top: 0.5rem;
    height: 0.375rem;
    width: 0.375rem;
    cursor: pointer;
    border-radius: 9999px;
    border-width: 1px;
    --gmcss-border-opacity: 1;
    border-color: rgb(203 213 225 / var(--gmcss-border-opacity, 1));
    --gmcss-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--gmcss-bg-opacity, 1));
    --gmcss-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
    --gmcss-shadow-colored: 0 1px 2px 0 var(--gmcss-shadow-color);
    box-shadow: var(--gmcss-ring-offset-shadow, 0 0 #0000), var(--gmcss-ring-shadow, 0 0 #0000), var(--gmcss-shadow);
    transition-property: transform;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
}
.custom-switch .btn:where([dir="ltr"], [dir="ltr"] *) {
    left: 0.125rem;
}
.custom-switch .btn:where([dir="rtl"], [dir="rtl"] *) {
    right: 0.125rem;
}
.custom-checkbox {
    position: relative;
    height: 1rem;
    width: 1rem;
    cursor: pointer;
}
.custom-checkbox-field {
    position: absolute;
    z-index: 10;
    height: 100%;
    width: 100%;
    cursor: pointer;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    opacity: 0;
}
.custom-checkbox-icon {
    position: absolute;
    top: 0px;
    left: 0px;
    height: 100%;
    width: 100%;
    cursor: pointer;
    border-radius: 0.25rem;
    border-width: 1px;
    --gmcss-border-opacity: 1;
    border-color: rgb(217 222 227 / var(--gmcss-border-opacity, 1));
    text-align: center;
    font-size: 10px;
    line-height: 14px;
    --gmcss-text-opacity: 1;
    color: rgb(255 255 255 / var(--gmcss-text-opacity, 1));
}
.custom-checkbox-field:checked + .custom-checkbox-icon {
    --gmcss-border-opacity: 1;
    border-color: rgb(0 0 0 / var(--gmcss-border-opacity, 1));
    --gmcss-bg-opacity: 1;
    background-color: rgb(0 0 0 / var(--gmcss-bg-opacity, 1));
    --gmcss-shadow: 0 2px 4px 0 rgb(105 108 255 / 40%);
    --gmcss-shadow-colored: 0 2px 4px 0 var(--gmcss-shadow-color);
    box-shadow: var(--gmcss-ring-offset-shadow, 0 0 #0000), var(--gmcss-ring-shadow, 0 0 #0000), var(--gmcss-shadow);
}
.custom-radio {
    position: relative;
    height: 1rem;
    width: 1rem;
    cursor: pointer;
}
.custom-radio-field {
    position: absolute;
    z-index: 10;
    height: 100%;
    width: 100%;
    cursor: pointer;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    opacity: 0;
}
.custom-radio-span {
    position: absolute;
    top: 0px;
    left: 0px;
    height: 100%;
    width: 100%;
    cursor: pointer;
    border-radius: 9999px;
    border-width: 1px;
    --gmcss-border-opacity: 1;
    border-color: rgb(217 222 227 / var(--gmcss-border-opacity, 1));
    text-align: center;
}
.custom-radio-field:checked + .custom-radio-span {
    border-width: 5px;
    --gmcss-border-opacity: 1;
    border-color: rgb(0 0 0 / var(--gmcss-border-opacity, 1));
    --gmcss-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--gmcss-bg-opacity, 1));
    --gmcss-shadow: 0 2px 4px 0 rgb(105 108 255 / 40%);
    --gmcss-shadow-colored: 0 2px 4px 0 var(--gmcss-shadow-color);
    box-shadow: var(--gmcss-ring-offset-shadow, 0 0 #0000), var(--gmcss-ring-shadow, 0 0 #0000), var(--gmcss-shadow);
}
.custom-radio.sm {
    height: 0.75rem;
    width: 0.75rem;
}
.custom-radio.sm .custom-radio-field:checked + .custom-radio-span {
    border-width: 3px;
}
/* TABLE */
.db-table-responsive {
    width: 100%;
    overflow: auto;
}
.db-table {
    width: 100%;
    table-layout: auto;
    white-space: nowrap;
    text-align: left;
}
.db-table.stripe .db-table-body-tr:nth-child(odd) {
    --gmcss-bg-opacity: 1 !important;
    background-color: rgb(249 250 251 / var(--gmcss-bg-opacity, 1)) !important;
}
.db-table-head {
    border-bottom-width: 2px;
    border-top-width: 1px;
    --gmcss-border-opacity: 1;
    border-color: rgb(229 231 235 / var(--gmcss-border-opacity, 1));
}
.db-table-head:where([dir="ltr"], [dir="ltr"] *) {
    text-align: left;
}
.db-table-head:where([dir="rtl"], [dir="rtl"] *) {
    text-align: right;
}
.db-table-body:where([dir="ltr"], [dir="ltr"] *) {
    text-align: left;
}
.db-table-body:where([dir="rtl"], [dir="rtl"] *) {
    text-align: right;
}
.db-table-head-th {
    padding-left: 1rem;
    padding-right: 1rem;
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
    font-family: 'Public Sans', sans-serif !important;
    font-size: 0.75rem;
    line-height: 1rem;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 1px;
    --gmcss-text-opacity: 1;
    color: rgb(86 106 127 / var(--gmcss-text-opacity, 1));
}
.db-table-body-tr {
    border-bottom-width: 1px;
    --gmcss-border-opacity: 1;
    border-color: rgb(229 231 235 / var(--gmcss-border-opacity, 1));
    font-family: 'Public Sans', sans-serif;
}
.db-table-body-tr:last-child {
    border-style: none;
}
.db-table-body-td {
    padding-left: 1rem;
    padding-right: 1rem;
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
    font-family: 'Public Sans', sans-serif;
    font-size: 0.875rem;
    line-height: 1.25rem;
}
.db-table-badge {
    border-radius: 0.375rem;
    padding-top: 0.25rem;
    padding-bottom: 0.25rem;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
    font-family: 'Public Sans', sans-serif;
    text-transform: capitalize;
}
.db-table-action {
    position: relative;
}
.db-table-action i {
    margin: 0.125rem;
    border-radius: 0.25rem;
    padding: 0.5rem;
    padding-top: 0.25rem;
    padding-bottom: 0.25rem;
    font-size: 0.875rem;
    line-height: 1.25rem;
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
    transition-timing-function: linear;
}
.db-table-action.view i {
    background-color: rgb(0 0 0 / 0.1);
    --gmcss-text-opacity: 1;
    color: rgb(0 0 0 / var(--gmcss-text-opacity, 1));
}
.db-table-action.view i:hover {
    background-color: rgb(0 0 0 / 0.2);
}
.db-table-action.edit i {
    --gmcss-bg-opacity: 1;
    background-color: rgb(220 252 231 / var(--gmcss-bg-opacity, 1));
    --gmcss-text-opacity: 1;
    color: rgb(34 197 94 / var(--gmcss-text-opacity, 1));
}
.db-table-action.edit i:hover {
    --gmcss-bg-opacity: 1;
    background-color: rgb(187 247 208 / var(--gmcss-bg-opacity, 1));
}
.db-table-action.delete i {
    --gmcss-bg-opacity: 1;
    background-color: rgb(254 226 226 / var(--gmcss-bg-opacity, 1));
    --gmcss-text-opacity: 1;
    color: rgb(239 68 68 / var(--gmcss-text-opacity, 1));
}
.db-table-action.delete i:hover {
    --gmcss-bg-opacity: 1;
    background-color: rgb(254 202 202 / var(--gmcss-bg-opacity, 1));
}
.table-filter-div {
    height: 0px;
    overflow: hidden;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 500ms;
    transition-timing-function: linear;
}
/* TOOLTIP */
.db-tooltip {
    visibility: hidden;
    position: absolute;
    left: 50%;
    top: -1.25rem;
    --gmcss-translate-x: -50%;
    transform: translate(var(--gmcss-translate-x), var(--gmcss-translate-y)) rotate(var(--gmcss-rotate)) skewX(var(--gmcss-skew-x)) skewY(var(--gmcss-skew-y)) scaleX(var(--gmcss-scale-x)) scaleY(var(--gmcss-scale-y));
    white-space: nowrap;
    border-radius: 0.25rem;
    --gmcss-bg-opacity: 1;
    background-color: rgb(55 65 81 / var(--gmcss-bg-opacity, 1));
    padding-left: 7px;
    padding-right: 7px;
    padding-top: 1px;
    padding-bottom: 2px;
    font-size: 10px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.025em;
    --gmcss-text-opacity: 1;
    color: rgb(255 255 255 / var(--gmcss-text-opacity, 1));
    opacity: 0;
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
    transition-timing-function: linear;
}
.db-tooltip::after {
    position: absolute;
    bottom: -3px;
    left: 50%;
    --gmcss-translate-x: -50%;
    --gmcss-rotate: 45deg;
    transform: translate(var(--gmcss-translate-x), var(--gmcss-translate-y)) rotate(var(--gmcss-rotate)) skewX(var(--gmcss-skew-x)) skewY(var(--gmcss-skew-y)) scaleX(var(--gmcss-scale-x)) scaleY(var(--gmcss-scale-y));
    border-radius: 0.125rem;
    border-width: 4px;
    border-top-width: 4px;
    border-style: solid;
    border-top-color: transparent;
    border-left-color: transparent;
    border-right-color: rgb(55 65 81 / var(--gmcss-border-opacity, 1));
    --gmcss-border-opacity: 1;
    border-bottom-color: rgb(55 65 81 / var(--gmcss-border-opacity, 1));
    --gmcss-content: '';
    content: var(--gmcss-content);
}
.db-table-action:hover .db-tooltip {
    visibility: visible;
    top: -100%;
    opacity: 1;
}
/* MODAL */
.modal {
    visibility: hidden;
    position: fixed;
    top: 0px;
    left: 50%;
    z-index: 60;
    height: 100%;
    width: 100%;
    --gmcss-translate-x: -50%;
    transform: translate(var(--gmcss-translate-x), var(--gmcss-translate-y)) rotate(var(--gmcss-rotate)) skewX(var(--gmcss-skew-x)) skewY(var(--gmcss-skew-y)) scaleX(var(--gmcss-scale-x)) scaleY(var(--gmcss-scale-y));
    overflow-y: auto;
    background-color: rgb(0 0 0 / 0.6);
    opacity: 0;
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
    transition-timing-function: linear;
    pointer-events: none;
}
@media (min-width: 1024px) {

    .ff-modal {
        top: 74px;
    }
}
.info-modal {
    z-index: 70;
}
@media (min-width: 1024px) {

    .modal.ff-modal.active .modal-dialog {
        margin-top: 2.5rem;
        margin-bottom: 8rem;
    }
}
.modal.active {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
}
.modal-dialog {
    margin-left: auto;
    margin-right: auto;
    width: 100%;
    max-width: 32rem;
    border-radius: 0.5rem;
    --gmcss-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--gmcss-bg-opacity, 1));
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
    transition-timing-function: linear;
}
.modal.active .modal-dialog {
    margin-top: 2.5rem;
    margin-bottom: 2.5rem;
}
.modal-header {
    display: flex;
    justify-content: space-between;
    gap: 1.25rem;
    border-bottom-width: 1px;
    --gmcss-border-opacity: 1;
    border-color: rgb(226 232 240 / var(--gmcss-border-opacity, 1));
    padding: 1rem;
}
.modal-title {
    font-size: 1.125rem;
    line-height: 1.75rem;
    font-weight: 500;
    text-transform: capitalize;
}
.modal-body {
    padding: 1rem;
}
.modal-footer {
    border-top-width: 1px;
    --gmcss-border-opacity: 1;
    border-color: rgb(226 232 240 / var(--gmcss-border-opacity, 1));
    padding: 1rem;
}
.modal-btns {
    margin-top: 0.75rem;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 0.75rem;
}
.modal-btn-outline {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    border-radius: 0.375rem;
    border-width: 1px;
    --gmcss-border-opacity: 1;
    border-color: rgb(229 231 235 / var(--gmcss-border-opacity, 1));
    --gmcss-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--gmcss-bg-opacity, 1));
    padding-top: 0.375rem;
    padding-bottom: 0.375rem;
    padding-left: 0.75rem;
    padding-right: 0.75rem;
    font-size: 0.875rem !important;
    line-height: 1.25rem !important;
    text-transform: capitalize;
    --gmcss-text-opacity: 1 !important;
    color: rgb(75 85 99 / var(--gmcss-text-opacity, 1)) !important;
}
.modal-close {
    font-size: 1.25rem;
    line-height: 1.75rem;
    line-height: 1;
    --gmcss-text-opacity: 1;
    color: rgb(251 78 78 / var(--gmcss-text-opacity, 1));
}
/* PAGINATION */
.db-pagination-menu.active {
    background-color: rgb(0 0 0 / 0.2);
    --gmcss-text-opacity: 1;
    color: rgb(0 0 0 / var(--gmcss-text-opacity, 1));
}
/* LIST */
.db-list {
    margin-top: -0.375rem;
    margin-bottom: -0.375rem;
    display: flex;
    flex-direction: column;
}
.db-list-item {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    border-radius: 0.375rem;
    padding-top: 0.375rem;
    padding-bottom: 0.375rem;
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
    transition-timing-function: linear;
}
@media (min-width: 640px) {

    .db-list-item {
        flex-direction: row;
        align-items: center;
    }
}
.db-list-item-title {
    white-space: nowrap;
    font-size: 0.875rem;
    line-height: 1.25rem;
    font-weight: 600;
    text-transform: capitalize;
    --gmcss-text-opacity: 1;
    color: rgb(31 31 57 / var(--gmcss-text-opacity, 1));
}
.db-list-item-title::after {
    display: inline-block;
    padding-left: 0.25rem;
    --gmcss-content: ':';
    content: var(--gmcss-content);
}
@media (min-width: 640px) {

    .db-list-item-title::after {
        content: var(--gmcss-content);
        display: none;
    }
}
.db-list-item-title:where([dir="ltr"], [dir="ltr"] *) {
    text-align: left;
}
.db-list-item-title:where([dir="rtl"], [dir="rtl"] *) {
    text-align: right;
}
.db-list-item-text {
    font-size: 0.875rem;
    line-height: 1.25rem;
}
.db-list-item-text:where([dir="ltr"], [dir="ltr"] *) {
    text-align: left;
}
.db-list-item-text:where([dir="rtl"], [dir="rtl"] *) {
    text-align: right;
}
.db-list.single .db-list-item-title {
    width: 100%;
    max-width: 100%;
}
@media (min-width: 640px) {

    .db-list.single .db-list-item-title {
        max-width: 180px;
    }
}
.db-list.single .db-list-item-text {
    width: 100%;
}
.db-list.multiple {
    flex-direction: row;
    flex-wrap: wrap;
}
.db-list.multiple .db-list-item {
    width: 100%;
}
@media (min-width: 640px) {

    .db-list.multiple .db-list-item {
        width: 50%;
    }
}
.db-list.multiple .db-list-item-title {
    width: 100%;
}
@media (min-width: 640px) {

    .db-list.multiple .db-list-item-title {
        width: 50%;
    }
}
.db-list.multiple .db-list-item-text {
    width: 100%;
}
@media (min-width: 640px) {

    .db-list.multiple .db-list-item-text {
        width: 50%;
    }
}
/* BADGE */
.db-badge {
    border-radius: 0.25rem;
    padding-top: 0.25rem;
    padding-bottom: 0.25rem;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
    font-size: 0.75rem;
    line-height: 1rem;
    text-transform: uppercase;
    letter-spacing: 0.025em;
}
.db-badge.yellow {
    --gmcss-bg-opacity: 1;
    background-color: rgb(254 249 195 / var(--gmcss-bg-opacity, 1));
    --gmcss-text-opacity: 1;
    color: rgb(202 138 4 / var(--gmcss-text-opacity, 1));
}
.db-badge.green {
    --gmcss-bg-opacity: 1;
    background-color: rgb(220 252 231 / var(--gmcss-bg-opacity, 1));
    --gmcss-text-opacity: 1;
    color: rgb(22 163 74 / var(--gmcss-text-opacity, 1));
}
.db-badge.blue {
    --gmcss-bg-opacity: 1;
    background-color: rgb(219 234 254 / var(--gmcss-bg-opacity, 1));
    --gmcss-text-opacity: 1;
    color: rgb(37 99 235 / var(--gmcss-text-opacity, 1));
}
.db-badge.red {
    --gmcss-bg-opacity: 1;
    background-color: rgb(254 226 226 / var(--gmcss-bg-opacity, 1));
    --gmcss-text-opacity: 1;
    color: rgb(220 38 38 / var(--gmcss-text-opacity, 1));
}
/* DRAWER */
.drawer {
    position: fixed;
    top: 0px;
    z-index: 50;
    height: 100vh;
    width: 100%;
    max-width: 36rem;
    overflow-y: auto;
    --gmcss-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--gmcss-bg-opacity, 1));
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
    transition-timing-function: linear;
}
.drawer:where([dir="ltr"], [dir="ltr"] *) {
    right: 0px;
    --gmcss-translate-x: 100%;
    transform: translate(var(--gmcss-translate-x), var(--gmcss-translate-y)) rotate(var(--gmcss-rotate)) skewX(var(--gmcss-skew-x)) skewY(var(--gmcss-skew-y)) scaleX(var(--gmcss-scale-x)) scaleY(var(--gmcss-scale-y));
}
.drawer:where([dir="rtl"], [dir="rtl"] *) {
    left: 0px;
    --gmcss-translate-x: -100%;
    transform: translate(var(--gmcss-translate-x), var(--gmcss-translate-y)) rotate(var(--gmcss-rotate)) skewX(var(--gmcss-skew-x)) skewY(var(--gmcss-skew-y)) scaleX(var(--gmcss-scale-x)) scaleY(var(--gmcss-scale-y));
}
.drawer.active:where([dir="ltr"], [dir="ltr"] *) {
    --gmcss-translate-x: 0px;
    transform: translate(var(--gmcss-translate-x), var(--gmcss-translate-y)) rotate(var(--gmcss-rotate)) skewX(var(--gmcss-skew-x)) skewY(var(--gmcss-skew-y)) scaleX(var(--gmcss-scale-x)) scaleY(var(--gmcss-scale-y));
}
.drawer.active:where([dir="rtl"], [dir="rtl"] *) {
    --gmcss-translate-x: -0px;
    transform: translate(var(--gmcss-translate-x), var(--gmcss-translate-y)) rotate(var(--gmcss-rotate)) skewX(var(--gmcss-skew-x)) skewY(var(--gmcss-skew-y)) scaleX(var(--gmcss-scale-x)) scaleY(var(--gmcss-scale-y));
}
.drawer-header {
    display: flex;
    justify-content: space-between;
    gap: 1.25rem;
    border-bottom-width: 1px;
    --gmcss-border-opacity: 1;
    border-color: rgb(226 232 240 / var(--gmcss-border-opacity, 1));
    padding: 1rem;
}
.drawer-title {
    font-size: 1.125rem;
    line-height: 1.75rem;
    font-weight: 500;
    text-transform: capitalize;
}
.drawer-body {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
    padding-top: 2rem;
    padding-bottom: 2rem;
}
/* DB PRODUCT CARD */
.db-product-cart:hover svg,
.db-product-cart:hover span {
    fill: #fff;
    --gmcss-text-opacity: 1;
    color: rgb(255 255 255 / var(--gmcss-text-opacity, 1));
}
.db-pos-cartDiv {
    --gmcss-translate-x: 100%;
    transform: translate(var(--gmcss-translate-x), var(--gmcss-translate-y)) rotate(var(--gmcss-rotate)) skewX(var(--gmcss-skew-x)) skewY(var(--gmcss-skew-y)) scaleX(var(--gmcss-scale-x)) scaleY(var(--gmcss-scale-y));
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
    transition-timing-function: linear;
}
@media (min-width: 768px) {

    .db-pos-cartDiv {
        --gmcss-translate-x: 0px;
        transform: translate(var(--gmcss-translate-x), var(--gmcss-translate-y)) rotate(var(--gmcss-rotate)) skewX(var(--gmcss-skew-x)) skewY(var(--gmcss-skew-y)) scaleX(var(--gmcss-scale-x)) scaleY(var(--gmcss-scale-y));
    }
}
.db-pos-cartDiv.active {
    --gmcss-translate-x: 0px;
    transform: translate(var(--gmcss-translate-x), var(--gmcss-translate-y)) rotate(var(--gmcss-rotate)) skewX(var(--gmcss-skew-x)) skewY(var(--gmcss-skew-y)) scaleX(var(--gmcss-scale-x)) scaleY(var(--gmcss-scale-y));
}
.pos-group .active {
    --gmcss-border-opacity: 1;
    border-color: rgb(0 0 0 / var(--gmcss-border-opacity, 1));
    --gmcss-bg-opacity: 1;
    background-color: rgb(220 234 255 / var(--gmcss-bg-opacity, 1));
}
/* FOOTER */
.footer-part {
    --gmcss-bg-opacity: 1;
    background-color: rgb(0 0 0 / var(--gmcss-bg-opacity, 1));
}
.unread-message h4 {
    position: relative;
}
.unread-message h4::after {
    position: absolute;
    top: 0px;
    display: inline-block;
    height: 0.5rem;
    width: 0.5rem;
    border-radius: 9999px;
    --gmcss-bg-opacity: 1;
    background-color: rgb(0 0 0 / var(--gmcss-bg-opacity, 1));
    --gmcss-content: '';
    content: var(--gmcss-content);
}
.unread-message h4:where([dir="ltr"], [dir="ltr"] *)::after {
    content: var(--gmcss-content);
    right: -0.75rem;
}
.unread-message h4:where([dir="rtl"], [dir="rtl"] *)::after {
    content: var(--gmcss-content);
    left: -0.75rem;
}
/*===================================
            COMPONENTS PART END
    ====================================*/
.pointer-events-none {
    pointer-events: none;
}
.visible {
    visibility: visible;
}
.invisible {
    visibility: hidden;
}
.collapse {
    visibility: collapse;
}
/* Gurmeat utility layer. */
.\!bg-white{background-color: #ffffff !important;}
.\!border-\[\#1AB759\]{border-color: #1AB759 !important;}
.\!justify-start{justify-content: flex-start !important;}
.\!text-\[\#1AB759\]{color: #1AB759 !important;}
.-left-3{left: -0.75rem;}
.\[\&_li\]\:font-semibold{font-weight: 600;}
.\[\&_li\]\:leading-10{line-height: 2.5rem;}
.\[\&_li\]\:mb-6{margin-bottom: 1.5rem;}
.\[\&_li\]\:text-\[40px\]{color: 40px;}
.absolute{position: absolute;}
.appearance-none{appearance: none;}
.bg-\[\#1AB759\]{background-color: #1AB759;}
.bg-\[\#4caf50\]{background-color: #4caf50;}
.bg-\[\#BDEFFF\]{background-color: #BDEFFF;}
.bg-\[\#D6F5FF\]{background-color: #D6F5FF;}
.bg-\[\#EFF0F6\]{background-color: #EFF0F6;}
.bg-\[\#F7F7FC\]{background-color: #F7F7FC;}
.bg-\[\#FFDB1F\]{background-color: #FFDB1F;}
.bg-\[\#FEF2F2\]{background-color: #FEF2F2;}
.bg-\[\#ff5252\]{background-color: #ff5252;}
.bg-blue-50{background-color: #eff6ff;}
.bg-gray-100{background-color: #f3f4f6;}
.bg-gray-200{background-color: #e5e7eb;}
.bg-heading{background-color: #1f1f39;}
.bg-primary{background-color: #000000;}
.bg-primary\/10{background-color: rgb(0 0 0 / 0.1);}
.bg-primary\/5{background-color: rgb(0 0 0 / 0.05);}
.bg-red-100{background-color: #fee2e2;}
.bg-red-50{background-color: #fef2f2;}
.bg-red-500{background-color: #ef4444;}
.bg-white{background-color: #ffffff;}
.block{display: block;}
.border{border-width: 1px;}
.border-\[\#6E7191\]{border-color: #6E7191;}
.border-\[\#D9DBE9\]{border-color: #D9DBE9;}
.border-\[\#EFF0F6\]{border-color: #EFF0F6;}
.border-\[\#F7F7FC\]{border-color: #F7F7FC;}
.border-blue-500{border-color: #3b82f6;}
.border-gray-100{border-color: #f3f4f6;}
.border-gray-200{border-color: #e5e7eb;}
.border-gray-300{border-color: #d1d5db;}
.border-gray-400{border-color: #9ca3af;}
.border-primary{border-color: #000000;}
.border-primary\/30{border-color: rgb(0 0 0 / 0.3);}
.border-red-400{border-color: #f87171;}
.border-red-500{border-color: #ef4444;}
.bottom-0{bottom: 0;}
.capitalize{text-transform: capitalize;}
.col-12{width: 100%;padding: 0.75rem;}
.col-span-1{grid-column: span 1 / span 1;}
.col-span-2{grid-column: span 2 / span 2;}
.container{width: 100%;max-width: 72rem;margin-left: auto;margin-right: auto;padding-left: 0.625rem;padding-right: 0.625rem;}
.cursor-pointer{cursor: pointer;}
.disabled\:opacity-70:disabled{opacity: 0.7;}
.duration-300{transition-duration: 300ms;}
.first-letter\:capitalize::first-letter{text-transform: capitalize;}
.fixed{position: fixed;}
.flex{display: flex;}
.flex-auto{flex: 1 1 auto;}
.flex-col{flex-direction: column;}
.flex-shrink-0{flex-shrink: 0;}
.flex-wrap{flex-wrap: wrap;}
.font-bold{font-weight: 700;}
.font-medium{font-weight: 500;}
.font-normal{font-weight: 400;}
.font-semibold{font-weight: 600;}
.gap-1{gap: 0.25rem;}
.gap-11{gap: 2.75rem;}
.gap-2{gap: 0.5rem;}
.gap-3{gap: 0.75rem;}
.gap-4{gap: 1rem;}
.gap-5{gap: 1.25rem;}
.gap-6{gap: 1.5rem;}
.gap-x-3{gap: null;}
.gap-x-6{gap: null;}
.gap-y-1{gap: null;}
.gap-y-2{gap: null;}
.gap-y-4{gap: null;}
.gap-y-5{gap: null;}
.grid{display: grid;}
.grid-cols-1{grid-template-columns: repeat(1, minmax(0, 1fr));}
.grid-cols-2{grid-template-columns: repeat(2, minmax(0, 1fr));}
.h-0{height: 0;}
.h-10{height: 2.5rem;}
.h-11{height: 2.75rem;}
.h-12{height: 3rem;}
.h-16{height: 4rem;}
.h-3{height: 0.75rem;}
.h-5{height: 1.25rem;}
.h-6{height: 1.5rem;}
.h-8{height: 2rem;}
.h-\[102px\]{height: 102px;}
.h-\[26px\]{height: 26px;}
.h-\[37px\]{height: 37px;}
.h-\[38px\]{height: 38px;}
.h-auto{height: auto;}
.h-full{height: 100%;}
.h-screen{height: 100vh;}
.hidden{display: none;}
.hover\:bg-\[\#00749B\]:hover{background-color: #00749B;}
.hover\:bg-gray-50:hover{background-color: #f9fafb;}
.hover\:bg-primary:hover{background-color: #000000;}
.hover\:bg-primary\/5:hover{background-color: rgb(0 0 0 / 0.05);}
.hover\:bg-white:hover{background-color: #ffffff;}
.hover\:border-primary\/30:hover{border-color: rgb(0 0 0 / 0.3);}
.hover\:border-red-500:hover{border-color: #ef4444;}
.hover\:text-primary:hover{color: #000000;}
.hover\:text-red-500:hover{color: #ef4444;}
.hover\:text-white:hover{color: #ffffff;}
.inline-block{display: inline-block;}
.inline-flex{display: inline-flex;}
.items-center{align-items: center;}
.items-end{align-items: flex-end;}
.items-start{align-items: flex-start;}
.justify-between{justify-content: space-between;}
.justify-center{justify-content: center;}
.justify-start{justify-content: flex-start;}
.last\:mb-0:last-child{margin-bottom: 0;}
.last\:pb-0:last-child{padding-bottom: 0;}
.leading-10{line-height: 2.5rem;}
.leading-4{line-height: 1rem;}
.leading-5{line-height: 1.25rem;}
.leading-6{line-height: 1.5rem;}
.leading-\[26px\]{line-height: 26px;}
.leading-\[34px\]{line-height: 34px;}
.leading-\[40px\]{line-height: 40px;}
.leading-\[9px\]{line-height: 9px;}
.leading-none{line-height: 1;}
.left-0{left: 0;}
.left-14{left: 3.5rem;}
@media (min-width:1024px){.lg\:block{display: block;}}
@media (min-width:1024px){.lg\:col-6{width: 50%;padding: 0.75rem;}}
@media (min-width:1024px){.lg\:flex{display: flex;}}
@media (min-width:1024px){.lg\:grid-cols-3{grid-template-columns: repeat(3, minmax(0, 1fr));}}
@media (min-width:1024px){.lg\:hidden{display: none;}}
@media (min-width:1024px){.lg\:mt-0{margin-top: 0;}}
.ltr\:ml-3:where([dir="ltr"], [dir="ltr"] *){margin-left: 0.75rem;}
.ltr\:right-0:where([dir="ltr"], [dir="ltr"] *){right: 0;}
.ltr\:rounded-l-lg:where([dir="ltr"], [dir="ltr"] *){border-top-left-radius: 0.5rem;border-bottom-left-radius: 0.5rem;}
.ltr\:rounded-r-lg:where([dir="ltr"], [dir="ltr"] *){border-top-right-radius: 0.5rem;border-bottom-right-radius: 0.5rem;}
.max-w-3xl{max-width: 48rem;}
.max-w-\[148px\]{max-width: 148px;}
.max-w-\[200px\]{max-width: 200px;}
.max-w-\[250px\]{max-width: 250px;}
.max-w-\[340px\]{max-width: 340px;}
.max-w-\[350px\]{max-width: 350px;}
.max-w-\[360px\]{max-width: 360px;}
.max-w-\[600px\]{max-width: 600px;}
.mb-1{margin-bottom: 0.25rem;}
.mb-12{margin-bottom: 3rem;}
.mb-16{margin-bottom: 4rem;}
.mb-2{margin-bottom: 0.5rem;}
.mb-20{margin-bottom: 5rem;}
.mb-3{margin-bottom: 0.75rem;}
.mb-4{margin-bottom: 1rem;}
.mb-5{margin-bottom: 1.25rem;}
.mb-6{margin-bottom: 1.5rem;}
.mb-7{margin-bottom: 1.75rem;}
.mb-8{margin-bottom: 2rem;}
@media (min-width:768px){.md\:block{display: block;}}
@media (min-width:768px){.md\:gap-6{gap: 1.5rem;}}
@media (min-width:768px){.md\:grid-cols-4{grid-template-columns: repeat(4, minmax(0, 1fr));}}
@media (min-width:768px){.md\:h-\[calc\(100dvh-117px\)\]{height: calc(100dvh-117px);}}
@media (min-width:768px){.md\:h-\[calc\(100vh-117px\)\]{height: calc(100vh-117px);}}
@media (min-width:768px){.md\:mt-4{margin-top: 1rem;}}
.min-h-16{min-height: 4rem;}
.min-w-\[326px\]{min-width: 326px;}
.mt-12{margin-top: 3rem;}
.mt-2{margin-top: 0.5rem;}
.mt-4{margin-top: 1rem;}
.mt-5{margin-top: 1.25rem;}
.mt-6{margin-top: 1.5rem;}
.mt-8{margin-top: 2rem;}
.mx-auto{margin-left: auto;margin-right: auto;}
.object-cover{object-fit: cover;}
.opacity-0{opacity: 0;}
.opacity-100{opacity: 1;}
.opacity-50{opacity: 0.5;}
.opacity-70{opacity: 0.7;}
.overflow-auto{overflow: auto;}
.overflow-hidden{overflow: hidden;}
.overflow-y-auto{overflow-y: auto;}
.p-0{padding: 0;}
.p-1{padding: 0.25rem;}
.p-2{padding: 0.5rem;}
.p-3{padding: 0.75rem;}
.p-4{padding: 1rem;}
.p-8{padding: 2rem;}
.pb-0{padding-bottom: 0;}
.pb-1{padding-bottom: 0.25rem;}
.pb-16{padding-bottom: 4rem;}
.pb-2{padding-bottom: 0.5rem;}
.pb-20{padding-bottom: 5rem;}
.pb-3{padding-bottom: 0.75rem;}
.peer-checked\:ltr\:translate-x-3:where([dir="ltr"], [dir="ltr"] *){transform: translateX(0.75rem);}
.peer-checked\:rtl\:-translate-x-3:where([dir="rtl"], [dir="rtl"] *){transform: translateX(-0.75rem);}
.peer-checked\:translate-x-6{transform: translateX(1.5rem);}
.pl-2{padding-left: 0.5rem;}
.pl-3{padding-left: 0.75rem;}
.pl-4{padding-left: 1rem;}
.placeholder\:text-xs::placeholder{font-size: 0.75rem;line-height: 1rem;}
.pointer-events-none{pointer-events: none;}
.pr-4{padding-right: 1rem;}
.pt-6{padding-top: 1.5rem;}
.pt-8{padding-top: 2rem;}
.px-2{padding-left: 0.5rem;padding-right: 0.5rem;}
.px-3{padding-left: 0.75rem;padding-right: 0.75rem;}
.px-4{padding-left: 1rem;padding-right: 1rem;}
.px-5{padding-left: 1.25rem;padding-right: 1.25rem;}
.px-6{padding-left: 1.5rem;padding-right: 1.5rem;}
.px-7{padding-left: 1.75rem;padding-right: 1.75rem;}
.py-1{padding-top: 0.25rem;padding-bottom: 0.25rem;}
.py-2{padding-top: 0.5rem;padding-bottom: 0.5rem;}
.py-3{padding-top: 0.75rem;padding-bottom: 0.75rem;}
.py-4{padding-top: 1rem;padding-bottom: 1rem;}
.py-6{padding-top: 1.5rem;padding-bottom: 1.5rem;}
.py-\[22px\]{padding-top: 22px;padding-bottom: 22px;}
.relative{position: relative;}
.right-4{right: 1rem;}
.right-5{right: 1.25rem;}
.rotate-180{transform: rotate(180deg);}
.rounded{border-radius: 0.25rem;}
.rounded-2xl{border-radius: 1rem;}
.rounded-3xl{border-radius: 1.5rem;}
.rounded-\[10px\]{border-radius: 10px;}
.rounded-\[3px\]{border-radius: 3px;}
.rounded-bl-lg{border-bottom-left-radius: 0.5rem;}
.rounded-full{border-radius: 9999px;}
.rounded-l-lg{border-top-left-radius: 0.5rem;border-bottom-left-radius: 0.5rem;}
.rounded-lg{border-radius: 0.5rem;}
.rounded-md{border-radius: 0.375rem;}
.rounded-t-\[10px\]{border-top-left-radius: 10px;border-top-right-radius: 10px;}
.rounded-tr-lg{border-top-right-radius: 0.5rem;}
.rounded-xl{border-radius: 0.75rem;}
.row{display: flex;flex-wrap: wrap;margin: -0.75rem;}
.rtl\:left-0:where([dir="rtl"], [dir="rtl"] *){left: 0;}
.rtl\:mr-3:where([dir="rtl"], [dir="rtl"] *){margin-right: 0.75rem;}
.rtl\:rotate-180:where([dir="rtl"], [dir="rtl"] *){transform: rotate(180deg);}
.rtl\:rounded-l-lg:where([dir="rtl"], [dir="rtl"] *){border-top-left-radius: 0.5rem;border-bottom-left-radius: 0.5rem;}
.rtl\:rounded-r-lg:where([dir="rtl"], [dir="rtl"] *){border-top-right-radius: 0.5rem;border-bottom-right-radius: 0.5rem;}
.shadow-sm{box-shadow: 0 1px 2px rgb(0 0 0 / 0.05);}
.shadow-xs{box-shadow: 0 1px 2px rgb(0 0 0 / 0.05);}
@media (min-width:640px){.sm\:col-12{width: 100%;padding: 0.75rem;}}
@media (min-width:640px){.sm\:col-6{width: 50%;padding: 0.75rem;}}
@media (min-width:640px){.sm\:flex-row{flex-direction: row;}}
@media (min-width:640px){.sm\:grid-cols-2{grid-template-columns: repeat(2, minmax(0, 1fr));}}
@media (min-width:640px){.sm\:grid-cols-3{grid-template-columns: repeat(3, minmax(0, 1fr));}}
@media (min-width:640px){.sm\:grid-cols-\[1fr_120px_100px_42px\]{grid-template-columns: 1fr 120px 100px 42px;}}
@media (min-width:640px){.sm\:inline{display: inline;}}
@media (min-width:640px){.sm\:items-start{align-items: flex-start;}}
@media (min-width:640px){.sm\:justify-center{justify-content: center;}}
@media (min-width:640px){.sm\:justify-start{justify-content: flex-start;}}
@media (min-width:640px){.sm\:mt-8{margin-top: 2rem;}}
@media (min-width:640px){.sm\:px-4{padding-left: 1rem;padding-right: 1rem;}}
@media (min-width:640px){.sm\:px-6{padding-left: 1.5rem;padding-right: 1.5rem;}}
@media (min-width:640px){.sm\:text-left{text-align: left;}}
@media (min-width:640px){.sm\:w-fit{width: fit-content;}}
.table{display: table;}
.text-2xl{font-size: 1.5rem;line-height: 2rem;}
.text-\[\#00749B\]{color: #00749B;}
.text-\[\#0084FF\]{color: #0084FF;}
.text-\[\#008BBA\]{color: #008BBA;}
.text-\[\#1AB759\]{color: #1AB759;}
.text-\[\#1F1F39\]{color: #1F1F39;}
.text-\[\#2AC769\]{color: #2AC769;}
.text-\[\#6E7191\]{color: #6E7191;}
.text-\[\#747792\]{color: #747792;}
.text-\[\#A0A3BD\]{color: #A0A3BD;}
.text-\[\#FB4E4E\]{color: #FB4E4E;}
.text-\[10px\]{color: 10px;}
.text-\[11px\]{color: 11px;}
.text-\[22px\]{color: 22px;}
.text-\[26px\]{color: 26px;}
.text-\[9px\]{color: 9px;}
.text-base{font-size: 1rem;line-height: 1.5rem;}
.text-black{color: #000000;}
.text-center{text-align: center;}
.text-gray-300{color: #d1d5db;}
.text-gray-400{color: #9ca3af;}
.text-gray-500{color: #6b7280;}
.text-gray-700{color: #374151;}
.text-heading{color: #1f1f39;}
.text-left{text-align: left;}
.text-lg{font-size: 1.125rem;line-height: 1.75rem;}
.text-paragraph{color: #6e7191;}
.text-primary{color: #000000;}
.text-red-500{color: #ef4444;}
.text-red-700{color: #b91c1c;}
.text-right{text-align: right;}
.text-sm{font-size: 0.875rem;line-height: 1.25rem;}
.text-white{color: #ffffff;}
.text-xl{font-size: 1.25rem;line-height: 1.75rem;}
.text-xs{font-size: 0.75rem;line-height: 1rem;}
.top-0{top: 0;}
.top-4{top: 1rem;}
.top-5{top: 1.25rem;}
.transition{transition-property: color, background-color, border-color, opacity, box-shadow, transform;transition-duration: 150ms;transition-timing-function: ease;}
.translate-x-0{transform: translateX(0);}
.translate-x-full{transform: translateX(100%);}
.w-11{width: 2.75rem;}
.w-16{width: 4rem;}
.w-3{width: 0.75rem;}
.w-36{width: 9rem;}
.w-5{width: 1.25rem;}
.w-6{width: 1.5rem;}
.w-8{width: 2rem;}
.w-\[120px\]{width: 120px;}
.w-\[26px\]{width: 26px;}
.w-fit{width: fit-content;}
.w-full{width: 100%;}
.whitespace-nowrap{white-space: nowrap;}
@media (min-width:1280px){.xl\:col-6{width: 50%;padding: 0.75rem;}}
@media (min-width:1280px){.xl\:grid-cols-4{grid-template-columns: repeat(4, minmax(0, 1fr));}}
.z-0{z-index: 0;}
.z-\[80\]{z-index: 80;}
.z-\[9999\]{z-index: 9999;}

/* Home banner navigation: keep Swiper controls inside the circular buttons. */
.banner-swiper .swiper-button-prev,
.banner-swiper .swiper-button-next {
    overflow: hidden !important;
    color: transparent !important;
}

.banner-swiper .swiper-button-prev::after,
.banner-swiper .swiper-button-next::after {
    display: block !important;
    width: 0.78rem !important;
    height: 0.78rem !important;
    border-top: 0.22rem solid #007aff !important;
    border-right: 0.22rem solid #007aff !important;
    font-family: inherit !important;
    font-size: 0 !important;
    line-height: 1 !important;
    content: "" !important;
}

.banner-swiper .swiper-button-prev::after {
    transform: rotate(-135deg) translate(-1px, -1px) !important;
}

.banner-swiper .swiper-button-next::after {
    transform: rotate(45deg) translate(-1px, 1px) !important;
}

.banner-swiper .swiper-button-prev:hover::after,
.banner-swiper .swiper-button-next:hover::after {
    border-color: #ffffff !important;
}

.gm-storefront-shell {
    padding-bottom: calc(106px + env(safe-area-inset-bottom));
}

.gm-storefront-content {
    min-height: calc(100dvh - 104px);
}

@media (min-width: 1024px) {
    .gm-storefront-shell {
        padding-bottom: 0;
    }

    .gm-storefront-content {
        min-height: auto;
    }
}

/* Mobile app style bottom navigation. */
.gm-mobile-tabbar {
    z-index: 80;
    display: grid;
    left: 10px !important;
    right: 10px;
    bottom: calc(10px + env(safe-area-inset-bottom)) !important;
    width: auto !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 62px minmax(0, 1.08fr) minmax(0, 1fr);
    align-items: center;
    min-height: 66px;
    padding: 6px;
    border: 1px solid rgba(239, 240, 246, 0.94);
    border-radius: 24px;
    background: rgba(255, 255, 255, 0.97) !important;
    box-shadow: 0 -2px 8px rgba(23, 31, 70, 0.04), 0 16px 46px rgba(23, 31, 70, 0.18);
    backdrop-filter: saturate(180%) blur(14px);
    isolation: isolate;
}

/* Final profile menu guard: keep the shared storefront header visible. */
.gm-storefront-shell:has(.gm-storefront-profile-page) .gm-premium-header {
    display: block !important;
}

.gm-storefront-shell:has(.gm-storefront-profile-page) .gm-storefront-content {
    padding-top: 0 !important;
    background: var(--gm-app-bg) !important;
}

.gm-storefront-profile-page {
    padding: 0 0 calc(76px + env(safe-area-inset-bottom)) !important;
    background: transparent !important;
}

.gm-storefront-profile-container {
    width: min(100%, 920px) !important;
    max-width: 920px !important;
    box-sizing: border-box !important;
    margin-inline: auto !important;
    padding-inline: clamp(18px, 4vw, 44px) !important;
}

.gm-storefront-profile-card,
.gm-storefront-content .gm-storefront-profile-card,
.gm-storefront-content .shadow-xs.rounded-2xl.bg-white.gm-storefront-profile-card,
.gm-storefront-profile-container > .gm-storefront-profile-card {
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
}

.gm-storefront-profile-card > .hidden.border-b {
    display: none !important;
}

@media (max-width: 767px) {
    .gm-storefront-profile-container {
        padding-inline: 18px !important;
    }
}

.gm-mobile-tab,
.gm-mobile-cart-tab {
    appearance: none;
    border: 0;
    background: transparent;
    font: inherit;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
}

.gm-mobile-tab {
    position: relative;
    display: flex;
    min-width: 0;
    min-height: 54px;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 5px;
    padding: 7px 3px 6px;
    border-radius: 17px;
    color: #71748f;
    text-align: center;
    transition: color 180ms ease, background-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.gm-mobile-tab span {
    max-width: 100%;
    overflow: hidden;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.1;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.gm-mobile-tab-icon {
    width: 23px;
    height: 23px;
    stroke: currentColor;
}

.gm-mobile-tab.active {
    color: #b91c1c;
    background: rgba(185, 28, 28, 0.08);
    box-shadow: inset 0 0 0 1px rgba(185, 28, 28, 0.08);
}

.gm-mobile-tab.active .gm-mobile-tab-icon {
    color: #b91c1c;
}

.gm-mobile-cart-tab {
    position: relative;
    display: flex;
    width: 58px;
    height: 58px;
    align-items: center;
    justify-content: center;
    justify-self: center;
    margin-top: -28px;
    border-radius: 999px;
    color: #ffffff;
    background: linear-gradient(180deg, #111111 0%, #050505 100%);
    box-shadow: 0 11px 22px rgba(5, 5, 5, 0.32), 0 0 0 6px rgba(255, 255, 255, 0.96);
    transition: transform 180ms ease, box-shadow 180ms ease;
}

.gm-mobile-cart-tab:active,
.gm-mobile-tab:active {
    transform: translateY(1px) scale(0.98);
}

.gm-mobile-cart-icon {
    width: 26px;
    height: 26px;
    stroke: currentColor;
}

.gm-mobile-cart-tab.active {
    box-shadow: 0 11px 22px rgba(5, 5, 5, 0.32), 0 0 0 6px rgba(255, 255, 255, 0.96), 0 0 0 9px rgba(185, 28, 28, 0.18);
}

.gm-mobile-cart-label {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.gm-mobile-cart-dot {
    position: absolute;
    top: 0px;
    right: 10px;
    width: 8px;
    height: 8px;
    border: 1.5px solid #ffffff;
    border-radius: 999px;
    background: #ffdb1f;
}

@media (max-width: 374px) {
    .gm-mobile-tabbar {
        left: 8px !important;
        right: 8px;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 58px minmax(0, 1.08fr) minmax(0, 1fr);
        padding-left: 6px;
        padding-right: 6px;
    }

    .gm-mobile-tab span {
        font-size: 10px;
    }

    .gm-mobile-cart-tab {
        width: 56px;
        height: 56px;
    }
}

/* Gurmeat runtime completions start */
@keyframes gm-spin{to{transform:rotate(360deg)}}
.space-y-2>:not([hidden])~:not([hidden]){margin-top:.5rem;}
.-space-x-px>:not([hidden])~:not([hidden]){margin-left:-1px;}
.dropdown-list.active{--gmcss-scale-y:1;transform:translate(var(--gmcss-translate-x),var(--gmcss-translate-y)) rotate(var(--gmcss-rotate)) skewX(var(--gmcss-skew-x)) skewY(var(--gmcss-skew-y)) scaleX(var(--gmcss-scale-x)) scaleY(var(--gmcss-scale-y));}
.-bottom-12{bottom:calc(3rem * -1);}
.-left-3{left:calc(0.75rem * -1);}
.-mt-2{margin-top:calc(0.5rem * -1);}
.-right-2{right:calc(0.5rem * -1);}
.-top-2{top:calc(0.5rem * -1);}
.-z-10{z-index:-10;}
.absolute{position:absolute;}
.accent-primary{accent-color:rgb(var(--primary));}
.after\:hidden::after{display:none;}
.align-top{vertical-align:top;}
.animate-spin{animation:gm-spin 1s linear infinite;}
.basis-full{flex-basis:100%;}
.before\:-z-10::before{z-index:-10;}
.before\:absolute::before{position:absolute;}
.before\:bg-primary::before{background-color:rgb(var(--primary));}
.before\:bg-white::before{background-color:rgb(255 255 255);}
.before\:h-1::before{height:0.25rem;}
.before\:h-24::before{height:6rem;}
.before\:inset-0::before{inset:0px;}
.before\:left-0::before{left:0px;}
.before\:rounded-full::before{border-radius:9999px;}
.before\:top-0::before{top:0px;}
.before\:w-24::before{width:6rem;}
.before\:w-full::before{width:100%;}
.bg-\[\#00749B\]{background-color:#00749B;}
.bg-\[\#008BBA\]{background-color:#008BBA;}
.bg-\[\#1AB759\]{background-color:#1AB759;}
.bg-\[\#2AC769\]{background-color:#2AC769;}
.bg-\[\#567DFF\]{background-color:#567DFF;}
.bg-\[\#8262FE\]{background-color:#8262FE;}
.bg-\[\#A953FF\]{background-color:#A953FF;}
.bg-\[\#BDEFFF\]{background-color:#BDEFFF;}
.bg-\[\#D6F5FF\]{background-color:#D6F5FF;}
.bg-\[\#EFF0F6\]{background-color:#EFF0F6;}
.bg-\[\#F7F7F7\]{background-color:#F7F7F7;}
.bg-\[\#F7F7FC\]{background-color:#F7F7FC;}
.bg-\[\#FB4E4E\]{background-color:#FB4E4E;}
.bg-\[\#DC2626\]{background-color:#DC2626;}
.bg-\[\#FFDADA\]{background-color:#FFDADA;}
.bg-\[\#FFDB1F\]{background-color:#FFDB1F;}
.bg-\[\#FFEBD8\]{background-color:#FFEBD8;}
.bg-\[\#FEF2F2\]{background-color:#FEF2F2;}
.bg-\[\#FFF5DE\]{background-color:#FFF5DE;}
.bg-\[\#fcfcfc\]{background-color:#fcfcfc;}
.bg-\[\#ff5252\]{background-color:#ff5252;}
.bg-black{background-color:rgb(0 0 0);}
.bg-black\/40{background-color:rgb(0 0 0 / 0.4);}
.bg-blue-50{background-color:rgb(239 246 255);}
.bg-gradient-to-t{background-image:linear-gradient(to top,var(--gmcss-gradient-stops));}
.bg-gray-100{background-color:rgb(243 244 246);}
.bg-gray-600{background-color:rgb(75 85 99);}
.bg-green-100{background-color:rgb(220 252 231);}
.bg-green-50{background-color:rgb(240 253 244);}
.bg-heading{background-color:rgb(31 31 57);}
.bg-primary{background-color:rgb(var(--primary));}
.bg-primary\/10{background-color:rgb(var(--primary) / 0.1);}
.bg-primary\/5{background-color:rgb(var(--primary) / 0.05);}
.bg-red-100{background-color:rgb(254 226 226);}
.bg-slate-100{background-color:rgb(241 245 249);}
.bg-transparent{background-color:transparent;}
.bg-white{background-color:rgb(255 255 255);}
.bg-white\/40{background-color:rgb(255 255 255 / 0.4);}
.bg-white\/60{background-color:rgb(255 255 255 / 0.6);}
.bg-white\/90{background-color:rgb(255 255 255 / 0.9);}
.block{display:block;}
.border{border-width:1px;}
.border-0{border-width:0px;}
.border-2{border-width:2px;}
.border-4{border-width:4px;}
.border-\[\#6E7191\]{border-color:#6E7191;}
.border-\[\#D9DBE9\]{border-color:#D9DBE9;}
.border-\[\#DBDEE0\]{border-color:#DBDEE0;}
.border-\[\#EFF0F6\]{border-color:#EFF0F6;}
.border-\[\#F7F7FC\]{border-color:#F7F7FC;}
.border-\[\#b91c1c\]{border-color:#b91c1c;}
.border-b{border-bottom-width:1px;}
.border-b-2{border-bottom-width:2px;}
.border-dashed{border-style:dashed;}
.border-dotted{border-style:dotted;}
.border-gray-100{border-color:rgb(243 244 246);}
.border-gray-200{border-color:rgb(229 231 235);}
.border-gray-300{border-color:rgb(209 213 219);}
.border-gray-400{border-color:rgb(156 163 175);}
.border-l{border-left-width:1px;}
.border-none{border-style:none;}
.border-primary{border-color:rgb(var(--primary));}
.border-slate-100{border-color:rgb(241 245 249);}
.border-slate-200{border-color:rgb(226 232 240);}
.border-slate-300{border-color:rgb(203 213 225);}
.border-solid{border-style:solid;}
.border-t{border-top-width:1px;}
.border-transparent{border-color:transparent;}
.border-white{border-color:rgb(255 255 255);}
.bottom-0{bottom:0px;}
.break-words{overflow-wrap:break-word;}
.capitalize{text-transform:capitalize;}
.checked\:bg-primary{background-color:rgb(var(--primary));}
.col-span-1{grid-column:span 1 / span 1;}
.col-span-2{grid-column:span 2 / span 2;}
.content-wrapper{align-content:wrapper;}
.cursor-default{cursor:default;}
.cursor-move{cursor:move;}
.cursor-pointer{cursor:pointer;}
.disabled\:opacity-60:disabled{opacity:0.6;}
.disabled\:opacity-70:disabled{opacity:0.7;}
.duration-300{transition-duration:300ms;}
.duration-500{transition-duration:500ms;}
.filter{filter:var(--gmcss-blur) var(--gmcss-brightness) var(--gmcss-contrast) var(--gmcss-grayscale) var(--gmcss-hue-rotate) var(--gmcss-invert) var(--gmcss-saturate) var(--gmcss-sepia) var(--gmcss-drop-shadow);}
.first-letter\:capitalize::first-letter{text-transform:capitalize;}
.first-letter\:uppercase::first-letter{text-transform:uppercase;}
.fixed{position:fixed;}
.flex{display:flex;}
.flex-1{flex:1 1 0%;}
.flex-auto{flex:1 1 auto;}
.flex-col{flex-direction:column;}
.flex-col-reverse{flex-direction:column-reverse;}
.flex-grow{flex-grow:1;}
.flex-shrink-0{flex-shrink:0;}
.flex-wrap{flex-wrap:wrap;}
.focus-within\:bg-white:focus-within{background-color:rgb(255 255 255);}
.focus-within\:border-primary:focus-within{border-color:rgb(var(--primary));}
.focus-within\:border-primary\/20:focus-within{border-color:rgb(var(--primary) / 0.2);}
.focus\:border-primary:focus{border-color:rgb(var(--primary));}
.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px;}
.font-bold{font-weight:700;}
.font-client{font-family:'Rubik',sans-serif;}
.font-light{font-weight:300;}
.font-medium{font-weight:500;}
.font-normal{font-weight:400;}
.font-rubik{font-family:'Rubik',sans-serif;}
.font-semibold{font-weight:600;}
.from-\[\#FF7A00\]{--gmcss-gradient-from:#FF7A00;--gmcss-gradient-to:rgb(255 255 255 / 0);--gmcss-gradient-stops:var(--gmcss-gradient-from),var(--gmcss-gradient-to);}
.gap-0\.5{gap:0.125rem;}
.gap-1{gap:0.25rem;}
.gap-1\.5{gap:0.375rem;}
.gap-11{gap:2.75rem;}
.gap-2{gap:0.5rem;}
.gap-2\.5{gap:0.625rem;}
.gap-3{gap:0.75rem;}
.gap-3\.5{gap:0.875rem;}
.gap-4{gap:1rem;}
.gap-5{gap:1.25rem;}
.gap-6{gap:1.5rem;}
.gap-8{gap:2rem;}
.gap-\[18px\]{gap:18px;}
.gap-x-3{column-gap:0.75rem;}
.gap-x-4{column-gap:1rem;}
.gap-x-6{column-gap:1.5rem;}
.gap-y-1{row-gap:0.25rem;}
.gap-y-2{row-gap:0.5rem;}
.gap-y-3\.5{row-gap:0.875rem;}
.gap-y-4{row-gap:1rem;}
.gap-y-5{row-gap:1.25rem;}
.grid{display:grid;}
.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr));}
.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr));}
.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr));}
.group-hover\:text-primary{color:rgb(var(--primary));}
.h-10{height:2.5rem;}
.h-11{height:2.75rem;}
.h-12{height:3rem;}
.h-14{height:3.5rem;}
.h-16{height:4rem;}
.h-20{height:5rem;}
.h-3{height:0.75rem;}
.h-32{height:8rem;}
.h-4{height:1rem;}
.h-5{height:1.25rem;}
.h-6{height:1.5rem;}
.h-7{height:1.75rem;}
.h-8{height:2rem;}
.h-80{height:20rem;}
.h-9{height:2.25rem;}
.h-\[102px\]{height:102px;}
.h-\[120px\]{height:120px;}
.h-\[180px\]{height:180px;}
.h-\[188px\]{height:188px;}
.h-\[18px\]{height:18px;}
.h-\[26px\]{height:26px;}
.h-\[270px\]{height:270px;}
.h-\[300px\]{height:300px;}
.h-\[37px\]{height:37px;}
.h-\[38px\]{height:38px;}
.h-\[400px\]{height:400px;}
.h-\[50px\]{height:50px;}
.h-\[52px\]{height:52px;}
.h-\[68px\]{height:68px;}
.h-\[72px\]{height:72px;}
.h-\[90px\]{height:90px;}
.h-\[98px\]{height:98px;}
.h-auto{height:auto;}
.h-fit{height:fit-content;}
.h-full{height:100%;}
.h-screen{height:100vh;}
.hidden{display:none;}
.hover\:bg-\[\#00749B\]:hover{background-color:#00749B;}
.hover\:bg-\[\#FEF2F2\]:hover{background-color:#FEF2F2;}
.hover\:bg-gray-100:hover{background-color:rgb(243 244 246);}
.hover\:bg-primary:hover{background-color:rgb(var(--primary));}
.hover\:bg-primary\/5:hover{background-color:rgb(var(--primary) / 0.05);}
.hover\:bg-primary\/90:hover{background-color:rgb(var(--primary) / 0.9);}
.hover\:border-primary:hover{border-color:rgb(var(--primary));}
.hover\:border-primary\/30:hover{border-color:rgb(var(--primary) / 0.3);}
.hover\:opacity-80:hover{opacity:0.8;}
.hover\:text-primary:hover{color:rgb(var(--primary));}
.hover\:text-red-500:hover{color:rgb(239 68 68);}
.hover\:text-white:hover{color:rgb(255 255 255);}
.inline-block{display:inline-block;}
.inline-flex{display:inline-flex;}
.inset-0{inset:0px;}
.items-center{align-items:center;}
.items-end{align-items:flex-end;}
.items-start{align-items:flex-start;}
.justify-between{justify-content:space-between;}
.justify-center{justify-content:center;}
.justify-end{justify-content:flex-end;}
.justify-start{justify-content:flex-start;}
.last\:border-b-0:last-child{border-bottom-width:0px;}
.last\:border-none:last-child{border-style:none;}
.last\:mb-0:last-child{margin-bottom:0px;}
.last\:pb-0:last-child{padding-bottom:0px;}
.last\:pr-3:last-child{padding-right:0.75rem;}
.leading-10{line-height:2.5rem;}
.leading-3{line-height:.75rem;}
.leading-4{line-height:1rem;}
.leading-5{line-height:1.25rem;}
.leading-6{line-height:1.5rem;}
.leading-7{line-height:1.75rem;}
.leading-8{line-height:2rem;}
.leading-\[10px\]{line-height:10px;}
.leading-\[14px\]{line-height:14px;}
.leading-\[16px\]{line-height:16px;}
.leading-\[17px\]{line-height:17px;}
.leading-\[26px\]{line-height:26px;}
.leading-\[34px\]{line-height:34px;}
.leading-\[38px\]{line-height:38px;}
.leading-\[40px\]{line-height:40px;}
.leading-\[46px\]{line-height:46px;}
.leading-\[9px\]{line-height:9px;}
.leading-none{line-height:1;}
.leading-relaxed{line-height:1.625;}
.left-0{left:0px;}
@media (min-width:1024px){.lg\:block{display:block;}}
@media (min-width:1024px){.lg\:flex{display:flex;}}
@media (min-width:1024px){.lg\:flex-row{flex-direction:row;}}
@media (min-width:1024px){.lg\:gap-6{gap:1.5rem;}}
@media (min-width:1024px){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media (min-width:1024px){.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr));}}
@media (min-width:1024px){.lg\:hidden{display:none;}}
@media (min-width:1024px){.lg\:justify-start{justify-content:flex-start;}}
@media (min-width:1024px){.lg\:mt-0{margin-top:0px;}}
@media (min-width:1024px){.lg\:mx-14{margin-left:3.5rem;margin-right:3.5rem;}}
@media (min-width:1024px){.lg\:pb-0{padding-bottom:0px;}}
@media (min-width:1024px){.lg\:pb-4{padding-bottom:1rem;}}
@media (min-width:1024px){.lg\:w-52{width:13rem;}}
@media (min-width:1024px){.lg\:w-\[930px\]{width:930px;}}
@media (min-width:1024px){.lg\:w-\[calc\(100\%-320px\)\]{width:calc(100%-320px);}}
@media (min-width:1024px){.lg\:w-fit{width:fit-content;}}
.ltr\:-left-3:where([dir="ltr"],[dir="ltr"] *){left:calc(0.75rem * -1);}
.ltr\:-ml-8:where([dir="ltr"],[dir="ltr"] *){margin-left:calc(2rem * -1);}
.ltr\:pl-2:where([dir="ltr"],[dir="ltr"] *){padding-left:0.5rem;}
.ltr\:right-0:where([dir="ltr"],[dir="ltr"] *){right:0px;}
.ltr\:right-2\.5:where([dir="ltr"],[dir="ltr"] *){right:0.625rem;}
.ltr\:right-3:where([dir="ltr"],[dir="ltr"] *){right:0.75rem;}
.ltr\:right-5:where([dir="ltr"],[dir="ltr"] *){right:1.25rem;}
@media (min-width:640px){.ltr\:sm\:border-r:where([dir="ltr"],[dir="ltr"] *){border-right-width:1px;}}
.ltr\:text-left:where([dir="ltr"],[dir="ltr"] *){text-align:left;}
.m-0\.5{margin:0.125rem;}
.max-h-64{max-height:16rem;}
.max-h-\[420px\]{max-height:420px;}
.max-h-\[calc\(100dvh_-_550px\)\]{max-height:calc(100dvh - 550px);}
.max-w-2xl{max-width:42rem;}
.max-w-3xl{max-width:48rem;}
.max-w-\[100px\]{max-width:100px;}
.max-w-\[120px\]{max-width:120px;}
.max-w-\[148px\]{max-width:148px;}
.max-w-\[200px\]{max-width:200px;}
.max-w-\[230px\]{max-width:230px;}
.max-w-\[250px\]{max-width:250px;}
.max-w-\[265px\]{max-width:265px;}
.max-w-\[300px\]{max-width:300px;}
.max-w-\[340px\]{max-width:340px;}
.max-w-\[350px\]{max-width:350px;}
.max-w-\[360px\]{max-width:360px;}
.max-w-\[428px\]{max-width:428px;}
.max-w-\[550px\]{max-width:550px;}
.max-w-\[600px\]{max-width:600px;}
.max-w-\[630px\]{max-width:630px;}
.max-w-\[647px\]{max-width:647px;}
.max-w-\[965px\]{max-width:965px;}
.max-w-xs{max-width:20rem;}
.mb-0\.5{margin-bottom:0.125rem;}
.mb-1{margin-bottom:0.25rem;}
.mb-1\.5{margin-bottom:0.375rem;}
.mb-12{margin-bottom:3rem;}
.mb-16{margin-bottom:4rem;}
.mb-2{margin-bottom:0.5rem;}
.mb-2\.5{margin-bottom:0.625rem;}
.mb-20{margin-bottom:5rem;}
.mb-3{margin-bottom:0.75rem;}
.mb-4{margin-bottom:1rem;}
.mb-5{margin-bottom:1.25rem;}
.mb-6{margin-bottom:1.5rem;}
.mb-7{margin-bottom:1.75rem;}
.mb-8{margin-bottom:2rem;}
.mb-9{margin-bottom:2.25rem;}
.mb-\[1px\]{margin-bottom:1px;}
.mb-\[22px\]{margin-bottom:22px;}
.mb-\[70px\]{margin-bottom:70px;}
@media (min-width:768px){.md\:block{display:block;}}
@media (min-width:768px){.md\:flex-row{flex-direction:row;}}
@media (min-width:768px){.md\:gap-4{gap:1rem;}}
@media (min-width:768px){.md\:gap-6{gap:1.5rem;}}
@media (min-width:768px){.md\:grid{display:grid;}}
@media (min-width:768px){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (min-width:768px){.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media (min-width:768px){.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr));}}
@media (min-width:768px){.md\:grid-flow-row{grid-auto-flow:row;}}
@media (min-width:768px){.md\:h-\[calc\(100dvh-117px\)\]{height:calc(100dvh-117px);}}
@media (min-width:768px){.md\:h-\[calc\(100vh-117px\)\]{height:calc(100vh-117px);}}
@media (min-width:768px){.md\:h-\[calc\(100vh-127px\)\]{height:calc(100vh-127px);}}
@media (min-width:768px){.md\:hidden{display:none;}}
@media (min-width:768px){.md\:justify-center{justify-content:center;}}
@media (min-width:768px){.md\:max-h-\[calc\(100dvh_-_600px\)\]{max-height:calc(100dvh - 600px);}}
@media (min-width:768px){.md\:mb-0{margin-bottom:0px;}}
@media (min-width:768px){.md\:mt-0{margin-top:0px;}}
@media (min-width:768px){.md\:mt-4{margin-top:1rem;}}
@media (min-width:768px){.md\:pl-0{padding-left:0px;}}
@media (min-width:768px){.md\:pl-8{padding-left:2rem;}}
@media (min-width:768px){.md\:w-80{width:20rem;}}
@media (min-width:768px){.md\:w-\[calc\(100\%-340px\)\]{width:calc(100%-340px);}}
@media (min-width:768px){.md\:w-auto{width:auto;}}
@media (min-width:768px){.md\:w-fit{width:fit-content;}}
.min-h-16{min-height:4rem;}
.min-h-40{min-height:10rem;}
.min-h-\[260px\]{min-height:260px;}
.min-w-0{min-width:0px;}
.min-w-\[120px\]{min-width:120px;}
.min-w-\[150px\]{min-width:150px;}
.min-w-\[160px\]{min-width:160px;}
.min-w-\[326px\]{min-width:326px;}
.ml-1\.5{margin-left:0.375rem;}
.ml-2{margin-left:0.5rem;}
.ml-3{margin-left:0.75rem;}
.ml-auto{margin-left:auto;}
.mr-1{margin-right:0.25rem;}
.mr-4{margin-right:1rem;}
.mt-0\.5{margin-top:0.125rem;}
.mt-1{margin-top:0.25rem;}
.mt-1\.5{margin-top:0.375rem;}
.mt-12{margin-top:3rem;}
.mt-16{margin-top:4rem;}
.mt-2{margin-top:0.5rem;}
.mt-3{margin-top:0.75rem;}
.mt-4{margin-top:1rem;}
.mt-5{margin-top:1.25rem;}
.mt-6{margin-top:1.5rem;}
.mt-8{margin-top:2rem;}
.mt-\[-20px\]{margin-top:-20px;}
.mt-\[22px\]{margin-top:22px;}
.mx-1{margin-left:0.25rem;margin-right:0.25rem;}
.mx-2{margin-left:0.5rem;margin-right:0.5rem;}
.mx-auto{margin-left:auto;margin-right:auto;}
.my-0{margin-top:0px;margin-bottom:0px;}
.my-1\.5{margin-top:0.375rem;margin-bottom:0.375rem;}
.my-12{margin-top:3rem;margin-bottom:3rem;}
.my-3{margin-top:0.75rem;margin-bottom:0.75rem;}
.my-4{margin-top:1rem;margin-bottom:1rem;}
.normal-case{text-transform:none;}
.object-cover{object-fit:cover;}
.opacity-0{opacity:0;}
.opacity-70{opacity:0.7;}
.outline-none{outline:2px solid transparent;outline-offset:2px;}
.overflow-auto{overflow:auto;}
.overflow-hidden{overflow:hidden;}
.overflow-visible{overflow:visible;}
.overflow-x-auto{overflow:x-auto;}
.overflow-x-hidden{overflow:x-hidden;}
.overflow-y-auto{overflow:y-auto;}
.p-0{padding:0px;}
.p-0\.5{padding:0.125rem;}
.p-1{padding:0.25rem;}
.p-2{padding:0.5rem;}
.p-2\.5{padding:0.625rem;}
.p-3{padding:0.75rem;}
.p-4{padding:1rem;}
.p-6{padding:1.5rem;}
.p-8{padding:2rem;}
.pb-0{padding-bottom:0px;}
.pb-1{padding-bottom:0.25rem;}
.pb-12{padding-bottom:3rem;}
.pb-16{padding-bottom:4rem;}
.pb-2{padding-bottom:0.5rem;}
.pb-20{padding-bottom:5rem;}
.pb-24{padding-bottom:6rem;}
.pb-3{padding-bottom:0.75rem;}
.pb-3\.5{padding-bottom:0.875rem;}
.pb-4{padding-bottom:1rem;}
.peer-checked\:translate-x-6{--gmcss-translate-x:1.5rem;transform:translate(var(--gmcss-translate-x),var(--gmcss-translate-y)) rotate(var(--gmcss-rotate)) skewX(var(--gmcss-skew-x)) skewY(var(--gmcss-skew-y)) scaleX(var(--gmcss-scale-x)) scaleY(var(--gmcss-scale-y));}
.pl-2{padding-left:0.5rem;}
.pl-3{padding-left:0.75rem;}
.pl-4{padding-left:1rem;}
.pl-5{padding-left:1.25rem;}
.pl-7{padding-left:1.75rem;}
.pl-\[18px\]{padding-left:18px;}
.placeholder\:font-normal{font-weight:400;}
.placeholder\:font-rubik{font-family:'Rubik',sans-serif;}
.placeholder\:text-\[\#6E7191\]{color:#6E7191;}
.placeholder\:text-\[\#A0A3BD\]{color:#A0A3BD;}
.placeholder\:text-paragraph{color:rgb(110 113 145);}
.placeholder\:text-xs{font-size:0.75rem;line-height:1rem;}
.pr-1{padding-right:0.25rem;}
.pr-2{padding-right:0.5rem;}
.pr-2\.5{padding-right:0.625rem;}
.pr-28{padding-right:7rem;}
.pr-4{padding-right:1rem;}
.pt-1{padding-top:0.25rem;}
.pt-12{padding-top:3rem;}
.pt-2{padding-top:0.5rem;}
.pt-3{padding-top:0.75rem;}
.pt-4{padding-top:1rem;}
.pt-5{padding-top:1.25rem;}
.pt-6{padding-top:1.5rem;}
.pt-7{padding-top:1.75rem;}
.pt-8{padding-top:2rem;}
.px-0{padding-left:0px;padding-right:0px;}
.px-2{padding-left:0.5rem;padding-right:0.5rem;}
.px-2\.5{padding-left:0.625rem;padding-right:0.625rem;}
.px-3{padding-left:0.75rem;padding-right:0.75rem;}
.px-3\.5{padding-left:0.875rem;padding-right:0.875rem;}
.px-4{padding-left:1rem;padding-right:1rem;}
.px-5{padding-left:1.25rem;padding-right:1.25rem;}
.px-6{padding-left:1.5rem;padding-right:1.5rem;}
.py-0{padding-top:0px;padding-bottom:0px;}
.py-0\.5{padding-top:0.125rem;padding-bottom:0.125rem;}
.py-1{padding-top:0.25rem;padding-bottom:0.25rem;}
.py-1\.5{padding-top:0.375rem;padding-bottom:0.375rem;}
.py-12{padding-top:3rem;padding-bottom:3rem;}
.py-14{padding-top:3.5rem;padding-bottom:3.5rem;}
.py-2{padding-top:0.5rem;padding-bottom:0.5rem;}
.py-2\.5{padding-top:0.625rem;padding-bottom:0.625rem;}
.py-3{padding-top:0.75rem;padding-bottom:0.75rem;}
.py-3\.5{padding-top:0.875rem;padding-bottom:0.875rem;}
.py-4{padding-top:1rem;padding-bottom:1rem;}
.py-5{padding-top:1.25rem;padding-bottom:1.25rem;}
.py-6{padding-top:1.5rem;padding-bottom:1.5rem;}
.py-8{padding-top:2rem;padding-bottom:2rem;}
.py-\[22px\]{padding-top:22px;padding-bottom:22px;}
.relative{position:relative;}
.resize-none{resize:none;}
.right-0{right:0px;}
.right-2{right:0.5rem;}
.right-3{right:0.75rem;}
.right-4{right:1rem;}
.right-5{right:1.25rem;}
.rounded{border-radius:0.25rem;}
.rounded-2xl{border-radius:1rem;}
.rounded-3xl{border-radius:1.5rem;}
.rounded-\[10px\]{border-radius:10px;}
.rounded-\[3px\]{border-radius:3px;}
.rounded-full{border-radius:9999px;}
.rounded-lg{border-radius:0.5rem;}
.rounded-md{border-radius:0.375rem;}
.rounded-none{border-radius:0px;}
.rounded-xl{border-radius:0.75rem;}
.row-span-2{grid-row:span 2 / span 2;}
.rtl\:-mr-8:where([dir="rtl"],[dir="rtl"] *){margin-right:calc(2rem * -1);}
.rtl\:-right-3:where([dir="rtl"],[dir="rtl"] *){right:calc(0.75rem * -1);}
.rtl\:left-0:where([dir="rtl"],[dir="rtl"] *){left:0px;}
.rtl\:left-2\.5:where([dir="rtl"],[dir="rtl"] *){left:0.625rem;}
.rtl\:left-3:where([dir="rtl"],[dir="rtl"] *){left:0.75rem;}
.rtl\:left-5:where([dir="rtl"],[dir="rtl"] *){left:1.25rem;}
.rtl\:pr-2:where([dir="rtl"],[dir="rtl"] *){padding-right:0.5rem;}
@media (min-width:640px){.rtl\:sm\:border-l:where([dir="rtl"],[dir="rtl"] *){border-left-width:1px;}}
.rtl\:text-right:where([dir="rtl"],[dir="rtl"] *){text-align:right;}
.shadow-lg{box-shadow:0 10px 15px -3px rgb(0 0 0 / .1),0 4px 6px -4px rgb(0 0 0 / .1);}
@media (min-width:640px){.sm\:bg-\[\#FF3B8E\]{background-color:#FF3B8E;}}
@media (min-width:640px){.sm\:bg-white{background-color:rgb(255 255 255);}}
@media (min-width:640px){.sm\:border-t-0{border-top-width:0px;}}
@media (min-width:640px){.sm\:flex{display:flex;}}
@media (min-width:640px){.sm\:flex-1{flex:1 1 0%;}}
@media (min-width:640px){.sm\:flex-row{flex-direction:row;}}
@media (min-width:640px){.sm\:gap-6{gap:1.5rem;}}
@media (min-width:640px){.sm\:gap-\[18px\]{gap:18px;}}
@media (min-width:640px){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (min-width:640px){.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media (min-width:640px){.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr));}}
@media (min-width:640px){.sm\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr));}}
@media (min-width:640px){.sm\:h-\[calc\(100vh_-_290px\)\]{height:calc(100vh - 290px);}}
@media (min-width:640px){.sm\:hidden{display:none;}}
@media (min-width:640px){.sm\:inline{display:inline;}}
@media (min-width:640px){.sm\:inline-block{display:inline-block;}}
@media (min-width:640px){.sm\:items-center{align-items:center;}}
@media (min-width:640px){.sm\:items-start{align-items:flex-start;}}
@media (min-width:640px){.sm\:justify-between{justify-content:space-between;}}
@media (min-width:640px){.sm\:justify-end{justify-content:flex-end;}}
@media (min-width:640px){.sm\:justify-start{justify-content:flex-start;}}
@media (min-width:640px){.sm\:max-w-xs{max-width:20rem;}}
@media (min-width:640px){.sm\:mb-0{margin-bottom:0px;}}
@media (min-width:640px){.sm\:mt-8{margin-top:2rem;}}
@media (min-width:640px){.sm\:mx-0{margin-left:0px;margin-right:0px;}}
@media (min-width:640px){.sm\:mx-auto{margin-left:auto;margin-right:auto;}}
@media (min-width:640px){.sm\:p-5{padding:1.25rem;}}
@media (min-width:640px){.sm\:pt-0{padding-top:0px;}}
@media (min-width:640px){.sm\:px-10{padding-left:2.5rem;padding-right:2.5rem;}}
@media (min-width:640px){.sm\:px-4{padding-left:1rem;padding-right:1rem;}}
@media (min-width:640px){.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem;}}
@media (min-width:640px){.sm\:py-6{padding-top:1.5rem;padding-bottom:1.5rem;}}
@media (min-width:640px){.sm\:rounded-xl{border-radius:0.75rem;}}
@media (min-width:640px){.sm\:text-left{text-align:left;}}
@media (min-width:640px){.sm\:text-white{color:rgb(255 255 255);}}
@media (min-width:640px){.sm\:w-36{width:9rem;}}
@media (min-width:640px){.sm\:w-48{width:12rem;}}
@media (min-width:640px){.sm\:w-60{width:15rem;}}
@media (min-width:640px){.sm\:w-fit{width:fit-content;}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0;}
.text-2xl{font-size:1.5rem;line-height:2rem;}
.text-3xl{font-size:1.875rem;line-height:2.25rem;}
.text-\[\#00749B\]{color:#00749B;}
.text-\[\#0084FF\]{color:#0084FF;}
.text-\[\#008BBA\]{color:#008BBA;}
.text-\[\#1AB759\]{color:#1AB759;}
.text-\[\#1F1F39\]{color:#1F1F39;}
.text-\[\#2E2F38\]{color:#2E2F38;}
.text-\[\#374151\]{color:#374151;}
.text-\[\#6E7191\]{color:#6E7191;}
.text-\[\#747792\]{color:#747792;}
.text-\[\#A0A3BD\]{color:#A0A3BD;}
.text-\[\#E89806\]{color:#E89806;}
.text-\[\#FB4E4E\]{color:#FB4E4E;}
.text-base{font-size:1rem;line-height:1.5rem;}
.text-black{color:rgb(0 0 0);}
.text-blue-700{color:rgb(29 78 216);}
.text-center{text-align:center;}
.text-ellipsis{text-overflow:ellipsis;}
.text-end{text-align:end;}
.text-gray-700{color:rgb(55 65 81);}
.text-green-600{color:rgb(22 163 74);}
.text-green-700{color:rgb(21 128 61);}
.text-heading{color:rgb(31 31 57);}
.text-left{text-align:left;}
.text-lg{font-size:1.125rem;line-height:1.75rem;}
.text-paragraph{color:rgb(110 113 145);}
.text-primary{color:rgb(var(--primary));}
.text-red-500{color:rgb(239 68 68);}
.text-red-700{color:rgb(185 28 28);}
.text-right{text-align:right;}
.text-slate-400{color:rgb(148 163 184);}
.text-slate-500{color:rgb(100 116 139);}
.text-sm{font-size:0.875rem;line-height:1.25rem;}
.text-start{text-align:start;}
.text-white{color:rgb(255 255 255);}
.text-xl{font-size:1.25rem;line-height:1.75rem;}
.text-xs{font-size:0.75rem;line-height:1rem;}
.text-yellow-400{color:rgb(250 204 21);}
.to-\[\#B91C1C\]{--gmcss-gradient-to:#B91C1C;}
.top-0{top:0px;}
.top-2{top:0.5rem;}
.top-3{top:0.75rem;}
.top-4{top:1rem;}
.top-5{top:1.25rem;}
.top-9{top:2.25rem;}
.tracking-wide{letter-spacing:.025em;}
.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-duration:150ms;transition-timing-function:cubic-bezier(.4,0,.2,1);}
.transition-all{transition-property:all;transition-duration:150ms;transition-timing-function:cubic-bezier(.4,0,.2,1);}
.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:150ms;transition-timing-function:cubic-bezier(.4,0,.2,1);}
.transition-transform{transition-property:transform;transition-duration:150ms;transition-timing-function:cubic-bezier(.4,0,.2,1);}
.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.uppercase{text-transform:uppercase;}
.w-10{width:2.5rem;}
.w-11{width:2.75rem;}
.w-12{width:3rem;}
.w-16{width:4rem;}
.w-20{width:5rem;}
.w-24{width:6rem;}
.w-28{width:7rem;}
.w-3{width:0.75rem;}
.w-32{width:8rem;}
.w-36{width:9rem;}
.w-4{width:1rem;}
.w-40{width:10rem;}
.w-48{width:12rem;}
.w-5{width:1.25rem;}
.w-6{width:1.5rem;}
.w-7{width:1.75rem;}
.w-8{width:2rem;}
.w-9{width:2.25rem;}
.w-\[120px\]{width:120px;}
.w-\[18px\]{width:18px;}
.w-\[240px\]{width:240px;}
.w-\[26px\]{width:26px;}
.w-\[270px\]{width:270px;}
.w-\[38px\]{width:38px;}
.w-\[46px\]{width:46px;}
.w-\[68px\]{width:68px;}
.w-\[72px\]{width:72px;}
.w-\[76px\]{width:76px;}
.w-\[90px\]{width:90px;}
.w-\[98px\]{width:98px;}
.w-fit{width:fit-content;}
.w-full{width:100%;}
.w-max{width:max-content;}
.whitespace-nowrap{white-space:nowrap;}
.whitespace-pre-wrap{white-space:pre-wrap;}
@media (max-width:767px){.xh\:bg-white{background-color:rgb(255 255 255);}}
@media (max-width:767px){.xh\:border-\[\#EFF0F6\]{border-color:#EFF0F6;}}
@media (max-width:767px){.xh\:fixed{position:fixed;}}
@media (max-width:767px){.xh\:left-0{left:0px;}}
@media (max-width:767px){.xh\:p-4{padding:1rem;}}
@media (max-width:767px){.xh\:top-10{top:2.5rem;}}
@media (max-width:767px){.xh\:w-full{width:100%;}}
@media (min-width:1280px){.xl\:flex-row{flex-direction:row;}}
@media (min-width:1280px){.xl\:gap-8{gap:2rem;}}
@media (min-width:1280px){.xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr));}}
@media (min-width:1280px){.xl\:w-\[calc\(100\%-377px\)\]{width:calc(100%-377px);}}
@media (max-width:575px){.xst\:absolute{position:absolute;}}
@media (max-width:575px){.xst\:bottom-12{bottom:3rem;}}
@media (max-width:575px){.xst\:bottom-5{bottom:1.25rem;}}
@media (max-width:575px){.xst\:fixed{position:fixed;}}
@media (max-width:575px){.xst\:pb-16{padding-bottom:4rem;}}
@media (max-width:575px){.xst\:w-full{width:100%;}}
@media (max-width:575px){.xst\:z-10{z-index:10;}}
.z-0{z-index:0;}
.z-10{z-index:10;}
.z-30{z-index:30;}
.z-50{z-index:50;}
.z-\[100\]{z-index:100;}
.z-\[80\]{z-index:80;}
.z-\[90\]{z-index:90;}
.z-\[9999\]{z-index:9999;}
/* Gurmeat runtime completions end */

/* Gurmeat visual restoration layer. */
:root {
    --primary: 185 28 28;
    --primary-slate: 220 38 38;
    --primary-light: 254 242 242;
    --gm-brand-red: #b91c1c;
    --gm-brand-red-strong: #991b1b;
    --gm-brand-red-soft: #fef2f2;
    --gm-brand-red-line: #fee2e2;
    --gm-ink: #1f1f39;
    --gm-muted: #6e7191;
    --gm-surface: #ffffff;
    --gm-admin-bg: #f7f7fc;
}

.bg-primary { background-color: rgb(var(--primary)) !important; }
.text-primary { color: rgb(var(--primary)) !important; }
.border-primary { border-color: rgb(var(--primary)) !important; }
.bg-primary\/5 { background-color: rgb(var(--primary) / 0.055) !important; }
.bg-primary\/10 { background-color: rgb(var(--primary) / 0.1) !important; }
.bg-primary\/90 { background-color: rgb(var(--primary) / 0.9) !important; }
.border-primary\/20 { border-color: rgb(var(--primary) / 0.2) !important; }
.border-primary\/30 { border-color: rgb(var(--primary) / 0.3) !important; }
.hover\:bg-primary:hover { background-color: rgb(var(--primary)) !important; }
.hover\:bg-primary\/5:hover { background-color: rgb(var(--primary) / 0.055) !important; }
.hover\:bg-primary\/90:hover { background-color: rgb(var(--primary) / 0.9) !important; }
.hover\:text-primary:hover { color: rgb(var(--primary)) !important; }
.hover\:border-primary:hover { border-color: rgb(var(--primary)) !important; }
.hover\:border-primary\/30:hover { border-color: rgb(var(--primary) / 0.3) !important; }
.focus\:border-primary:focus,
.focus-within\:border-primary:focus-within,
.focus-within\:border-primary\/20:focus-within { border-color: rgb(var(--primary)) !important; }
.accent-primary { accent-color: rgb(var(--primary)) !important; }

.bg-\[\#FEF2F2\],
.hover\:bg-\[\#FEF2F2\]:hover { background-color: var(--gm-brand-red-soft) !important; }
.bg-\[\#FEE2E2\] { background-color: var(--gm-brand-red-line) !important; }
.bg-black\/60 { background-color: rgb(0 0 0 / 0.6) !important; }
.border-\[\#b91c1c\],
.border-\[\#B91C1C\] { border-color: var(--gm-brand-red) !important; }
.to-\[\#B91C1C\] { --gmcss-gradient-to: var(--gm-brand-red) !important; }

.font-fill-primary,
.font-fill-primary-toggle,
.lab-color-red {
    color: rgb(var(--primary)) !important;
    fill: rgb(var(--primary)) !important;
}

.db-main {
    background:
        radial-gradient(circle at 12% 8%, rgb(var(--primary) / 0.045), transparent 28rem),
        linear-gradient(180deg, #ffffff 0%, var(--gm-admin-bg) 16rem) !important;
}

.db-header.gm-admin-header {
    min-height: 74px !important;
    padding: 0.75rem 1rem !important;
    border-bottom: 1px solid rgba(226, 232, 240, 0.9) !important;
    background: rgba(255, 255, 255, 0.96) !important;
    box-shadow: 0 10px 30px rgba(31, 31, 57, 0.06) !important;
    backdrop-filter: saturate(170%) blur(14px);
}

.gm-admin-header-logo {
    height: 44px !important;
}

.gm-admin-header-logo img {
    object-fit: contain;
}

.gm-admin-header-subbar .bg-\[\#FEF2F2\],
.gm-admin-square-action,
.gm-admin-menu-toggle,
.gm-admin-branch-button {
    border: 1px solid rgb(var(--primary) / 0.08);
    background: var(--gm-brand-red-soft) !important;
}

.gm-admin-square-action,
.gm-admin-menu-toggle {
    box-shadow: 0 8px 18px rgb(var(--primary) / 0.08);
}

.gm-admin-profile-button {
    padding: 0.25rem 0.5rem;
    border-radius: 0.875rem;
    background: #ffffff;
    box-shadow: 0 10px 24px rgba(31, 31, 57, 0.08);
}

.db-sidebar-nav-menu:hover,
.db-sidebar-nav-menu.router-link-active,
.db-sidebar-nav-item.router-link-active .db-sidebar-nav-menu,
.db-sidebar-nav-item.active .db-sidebar-nav-menu {
    background: var(--gm-brand-red-soft) !important;
    color: rgb(var(--primary)) !important;
}

.db-card,
.db-card-filter,
.db-card-body,
.paper,
.drawer-dialog,
.modal {
    border: 1px solid rgba(226, 232, 240, 0.72);
    box-shadow: 0 18px 45px rgba(31, 31, 57, 0.055) !important;
}

.db-btn,
.db-btn-fill.primary {
    box-shadow: 0 12px 24px rgb(var(--primary) / 0.18) !important;
}

.db-btn:hover,
.db-btn-fill.primary:hover {
    background-color: var(--gm-brand-red-strong) !important;
}

.db-tabBtn.active,
.profile-tabBtn.active {
    background-color: rgb(var(--primary)) !important;
    box-shadow: 0 10px 22px rgb(var(--primary) / 0.18) !important;
}

.gm-mobile-tab.active {
    background: rgb(var(--primary) / 0.08) !important;
    color: var(--gm-ink) !important;
    box-shadow: inset 0 0 0 1px rgb(var(--primary) / 0.08) !important;
}

.gm-mobile-cart-tab.active {
    box-shadow:
        0 11px 22px rgba(5, 5, 5, 0.32),
        0 0 0 6px rgba(255, 255, 255, 0.96),
        0 0 0 9px rgb(var(--primary) / 0.18) !important;
}

.ff-header.active,
.ff-header {
    position: sticky;
    top: 0;
    z-index: 150;
    background: rgba(255, 255, 255, 0.96);
    backdrop-filter: saturate(170%) blur(14px);
}

.ff-header {
    border-bottom: 1px solid rgba(226, 232, 240, 0.82);
    box-shadow: 0 10px 28px rgba(31, 31, 57, 0.045);
}

.header-search-group {
    justify-content: flex-start !important;
    height: 36px !important;
    padding: 0 0.55rem !important;
    border-color: rgba(226, 232, 240, 0.95) !important;
    background: #f8fafc !important;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.68);
}

.header-search-group:focus-within {
    border-color: rgb(var(--primary) / 0.45) !important;
    background: #ffffff !important;
    box-shadow: 0 10px 22px rgba(31, 31, 57, 0.075);
}

.header-search-submit {
    display: inline-flex;
    width: 26px;
    height: 26px;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    border: 0 !important;
    border-radius: 999px;
    background: transparent !important;
    color: #6e7191;
}

.header-search-field {
    min-width: 0;
    border: 0 !important;
    outline: 0 !important;
    background: transparent !important;
}

.webcart {
    min-width: 104px;
    border: 0 !important;
    background: #1f1f39 !important;
    box-shadow: 0 10px 22px rgba(31, 31, 57, 0.16);
}

.webcart:hover {
    background: #111124 !important;
    transform: translateY(-1px);
}

.storefront-account-dropdown {
    z-index: 220 !important;
    width: min(384px, calc(100vw - 24px)) !important;
    max-height: min(760px, calc(100vh - 86px));
    overflow-y: auto;
    border-radius: 22px !important;
    border: 1px solid rgba(226, 232, 240, 0.82);
    box-shadow: 0 24px 60px rgba(31, 31, 57, 0.14) !important;
    transform: scaleY(0) !important;
    transform-origin: top right !important;
    pointer-events: none;
    opacity: 0;
}

.storefront-account-dropdown.active {
    transform: scaleY(1) !important;
    pointer-events: auto;
    opacity: 1;
}

.storefront-account-dropdown .storefront-account-summary {
    gap: 22px !important;
    padding: 28px 32px 22px !important;
    margin-bottom: 8px !important;
}

.storefront-account-dropdown .storefront-account-avatar {
    width: 82px !important;
    height: 82px !important;
}

.storefront-account-avatar {
    border: 1px solid rgba(24, 24, 24, 0.08) !important;
    background: #F6F4EF !important;
    box-shadow: none !important;
}

.storefront-account-avatar::before {
    display: none !important;
}

.storefront-account-avatar-frame {
    display: flex !important;
    align-items: center;
    justify-content: center;
    background: #F7F4EF;
    box-shadow: inset 0 0 0 1px rgba(24, 24, 24, 0.04);
}

.storefront-account-avatar-initial {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #181818;
    font-size: 30px;
    font-weight: 560;
    line-height: 1;
}

.storefront-account-avatar-upload {
    right: -1px;
    bottom: -1px;
    z-index: 2;
    width: 25px;
    height: 25px;
    border-radius: 999px;
    border: 1px solid rgba(24, 24, 24, 0.12);
    background: rgba(255, 255, 255, 0.72);
    color: #181818;
    box-shadow: none;
    backdrop-filter: blur(12px);
    transition: transform 160ms ease, background 160ms ease, border-color 160ms ease;
}

.storefront-account-avatar-upload:hover {
    transform: translateY(-1px);
    border-color: rgba(24, 24, 24, 0.24);
    background: rgba(255, 255, 255, 0.96);
}

.storefront-account-avatar-upload svg {
    width: 14px;
    height: 14px;
}

.storefront-account-dropdown .storefront-account-name {
    margin-bottom: 7px !important;
    font-size: 18px !important;
    line-height: 1.25 !important;
    font-weight: 500 !important;
    letter-spacing: 0 !important;
}

.storefront-account-dropdown .storefront-account-email {
    margin-bottom: 9px !important;
    font-size: 15px !important;
    line-height: 1.35 !important;
    font-weight: 400 !important;
    color: #747792 !important;
    letter-spacing: 0 !important;
}

.storefront-account-dropdown .storefront-account-balance {
    font-size: 18px !important;
    line-height: 1.25 !important;
    font-weight: 500 !important;
    letter-spacing: 0 !important;
}

.storefront-account-dropdown .storefront-account-links {
    padding: 0 32px 28px !important;
}

.storefront-account-dropdown .storefront-account-link {
    min-height: 56px !important;
    gap: 22px !important;
    padding: 15px 0 !important;
    border-color: #e8eaf2 !important;
    font-weight: 400 !important;
}

.storefront-account-dropdown .storefront-account-link-icon {
    width: 24px !important;
    height: 24px !important;
    color: #747792 !important;
}

.storefront-account-dropdown .storefront-account-link-label {
    font-size: 18px !important;
    line-height: 1.3 !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
}

.ff-header .dropdown-btn,
.ff-header a.bg-primary,
.ff-header span.bg-primary {
    border: 0 !important;
    box-shadow: 0 12px 24px rgb(var(--primary) / 0.2);
}

#cart {
    width: 100vw !important;
    z-index: 230 !important;
}

#cart > div {
    width: min(100vw, 430px) !important;
    z-index: 231;
    box-shadow: -24px 0 70px rgba(17, 24, 39, 0.22);
}

@media (max-width: 767px) {
    #cart > div.gm-storefront-cart-panel {
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        max-width: none !important;
        box-shadow: none !important;
    }
}

.w-screen { width: 100vw; }

.product-category-card,
.category-card,
.menu-category-card {
    transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
}

.product-category-card:hover,
.category-card:hover,
.menu-category-card:hover {
    transform: translateY(-2px);
    border-color: rgb(var(--primary) / 0.18) !important;
    box-shadow: 0 18px 34px rgba(31, 31, 57, 0.08) !important;
}

/* Gurmeat storefront refinement layer. */
.gm-storefront-shell {
    min-height: 100vh;
    background:
        radial-gradient(circle at 16% 8%, rgb(var(--primary) / 0.04), transparent 30rem),
        radial-gradient(circle at 88% 28%, rgba(31, 31, 57, 0.045), transparent 26rem),
        linear-gradient(180deg, #ffffff 0%, #ffffff 18rem, #fafafa 100%);
    color: var(--gm-muted);
}

.gm-storefront-content {
    isolation: isolate;
}

.gm-storefront-content section {
    position: relative;
}

.gm-storefront-content .container {
    max-width: 1180px;
}

.gm-auth-section {
    display: grid !important;
    place-items: start center !important;
    width: min(1180px, calc(100% - 32px)) !important;
    margin: 44px auto 72px !important;
    padding: 0 !important;
}

.gm-auth-card {
    width: min(420px, 100%) !important;
    max-width: 420px !important;
    padding: 30px 32px !important;
    border: 1px solid rgba(226, 232, 240, 0.9) !important;
    border-radius: 24px !important;
    background: #ffffff !important;
    box-shadow: 0 24px 64px rgba(31, 31, 57, 0.1) !important;
}

.gm-auth-card--wide {
    width: min(560px, 100%) !important;
    max-width: 560px !important;
}

.gm-auth-card h2 {
    margin-bottom: 24px !important;
}

@media (max-width: 767px) {
    .gm-auth-section {
        width: min(100% - 20px, 420px) !important;
        margin: 22px auto 88px !important;
    }

    .gm-auth-card,
    .gm-auth-card--wide {
        width: 100% !important;
        max-width: 100% !important;
        padding: 22px 18px !important;
        border-radius: 20px !important;
    }
}

.ff-header .container {
    max-width: 1180px;
    min-height: 74px;
    gap: 1.25rem;
}

.ff-header img[alt="Логотип Gurmeat"] {
    width: 136px !important;
    height: auto;
    object-fit: contain;
}

.ff-header nav a {
    position: relative;
    padding: 0.45rem 0;
    font-weight: 700 !important;
    color: var(--gm-ink) !important;
    transition: color 180ms ease;
}

.ff-header nav a::after {
    position: absolute;
    left: 50%;
    bottom: 0;
    width: 0;
    height: 2px;
    border-radius: 999px;
    background: rgb(var(--primary));
    content: "";
    transform: translateX(-50%);
    transition: width 180ms ease;
}

.ff-header nav a:hover::after {
    width: 100%;
}

.banner-swiper {
    position: relative;
    z-index: 0 !important;
    overflow: hidden !important;
    border-radius: 24px !important;
    background: #111124;
    box-shadow: 0 24px 55px rgba(31, 31, 57, 0.14);
}

.banner-swiper img {
    display: block;
    width: 100%;
    min-height: 240px;
    max-height: 420px;
    border-radius: 0 !important;
    object-fit: cover;
}

.banner-swiper .swiper-button-prev,
.banner-swiper .swiper-button-next {
    width: 42px;
    height: 42px;
    border: 1px solid rgba(255, 255, 255, 0.72);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.9);
    color: rgb(var(--primary)) !important;
    box-shadow: 0 14px 26px rgba(31, 31, 57, 0.18);
    backdrop-filter: blur(12px);
}

.banner-swiper .swiper-button-prev::after,
.banner-swiper .swiper-button-next::after {
    font-size: 16px;
    font-weight: 800;
}

.banner-swiper .swiper-pagination-bullet {
    width: 7px;
    height: 7px;
    background: rgba(255, 255, 255, 0.76);
    opacity: 1;
}

.banner-swiper .swiper-pagination-bullet-active {
    width: 22px;
    border-radius: 999px;
    background: rgb(var(--primary));
}

.menu-swiper {
    padding: 0.2rem 0.15rem 0.8rem;
}

.menu-slides a {
    min-height: 118px;
    border: 1px solid rgba(226, 232, 240, 0.82) !important;
    border-bottom-width: 1px !important;
    background: rgba(255, 255, 255, 0.9) !important;
    box-shadow: 0 14px 34px rgba(31, 31, 57, 0.06);
    backdrop-filter: blur(10px);
}

.menu-slides a:hover {
    transform: translateY(-3px);
    border-color: rgb(var(--primary) / 0.2) !important;
    background: var(--gm-brand-red-soft) !important;
    box-shadow: 0 20px 42px rgba(31, 31, 57, 0.1);
}

.menu-slides img {
    width: 54px;
    height: 54px !important;
    object-fit: contain;
}

.menu-slides h3 {
    color: var(--gm-ink);
    font-weight: 700;
    line-height: 1.25;
}

.menu-category-active {
    border-color: rgb(var(--primary) / 0.22) !important;
    background: rgb(var(--primary)) !important;
    color: #ffffff !important;
    box-shadow: 0 18px 36px rgb(var(--primary) / 0.2) !important;
}

.menu-slides a.menu-category-active {
    border-color: rgb(var(--primary) / 0.2) !important;
    background:
        radial-gradient(circle at 50% 12%, rgba(255, 255, 255, 0.18), transparent 3.6rem),
        linear-gradient(135deg, rgb(var(--primary)) 0%, var(--gm-brand-red-strong) 100%) !important;
}

.menu-category-active h3 {
    color: #ffffff !important;
}

.menu-category-active img {
    filter: drop-shadow(0 10px 16px rgba(0, 0, 0, 0.22));
}

.gm-storefront-content .menu-swiper:has(.menu-category-active) {
    margin-bottom: 2rem !important;
}

.veg-navs button {
    min-height: 42px;
    border: 1px solid rgba(226, 232, 240, 0.88);
    background: rgba(255, 255, 255, 0.94) !important;
    box-shadow: 0 10px 24px rgba(31, 31, 57, 0.055);
}

.veg-navs button.veg-active {
    border-color: rgb(var(--primary) / 0.28);
    background: var(--gm-brand-red-soft) !important;
}

.product-card-grid,
.product-card-list {
    overflow: hidden;
    border: 1px solid rgba(226, 232, 240, 0.86) !important;
    border-radius: 20px !important;
    background: rgba(255, 255, 255, 0.96) !important;
    box-shadow: 0 16px 38px rgba(31, 31, 57, 0.06);
    backdrop-filter: blur(10px);
}

.product-card-grid:hover,
.product-card-list:hover {
    transform: translateY(-4px);
    border-color: rgb(var(--primary) / 0.2) !important;
    box-shadow: 0 24px 54px rgba(31, 31, 57, 0.12) !important;
}

.product-card-grid-image {
    aspect-ratio: 1.1 / 1;
    height: auto !important;
    border-radius: 0;
    background: #f8fafc;
    object-fit: cover;

}

.product-card-list {
    min-height: 136px;
}

.product-card-list-image {
    width: 132px !important;
    min-height: 136px;
    border-radius: 18px 0 0 18px !important;
}

.product-card-grid-content-group,
.product-card-list-content-group {
    padding: 1rem !important;
}

.product-card-grid-title,
.product-card-list-title {
    max-width: 100%;
    color: var(--gm-ink);
    font-size: 0.96rem;
    font-weight: 800;
    letter-spacing: 0;
}

.product-card-grid-describe,
.product-card-list-describe {
    color: var(--gm-muted);
    line-height: 1.45;
}

.product-card-grid-price-current,
.product-card-list-price-current {
    color: rgb(var(--primary));
    font-size: 1.12rem;
    font-weight: 800;
}

.product-card-grid-cart-btn,
.product-card-list-cart-btn {
    min-width: 34px;
    height: 34px !important;
    justify-content: center;
    border: 1px solid rgb(var(--primary) / 0.1);
    border-radius: 999px !important;
    background: var(--gm-brand-red-soft) !important;
    color: rgb(var(--primary)) !important;
    box-shadow: 0 10px 20px rgb(var(--primary) / 0.12) !important;
}

.product-card-grid-cart-btn:hover,
.product-card-list-cart-btn:hover {
    background: rgb(var(--primary)) !important;
    color: #ffffff !important;
    transform: translateY(-1px);
}

.gm-storefront-content section > .container > .grid.grid-cols-1.md\:grid-cols-2 {
    align-items: start;
    padding: 1rem;
    border: 1px solid rgba(226, 232, 240, 0.82);
    border-radius: 28px;
    background: rgba(255, 255, 255, 0.94);
    box-shadow: 0 24px 60px rgba(31, 31, 57, 0.085);
}

.gm-storefront-content section > .container > .grid.grid-cols-1.md\:grid-cols-2 > .flex-shrink-0 {
    position: sticky;
    top: 96px;
}

.gm-storefront-content section > .container > .grid.grid-cols-1.md\:grid-cols-2 > .flex-shrink-0 img {
    height: min(46vw, 440px) !important;
    border-radius: 24px !important;
    box-shadow: 0 20px 42px rgba(31, 31, 57, 0.12);
}

.gm-storefront-content section > .container > .grid.grid-cols-1.md\:grid-cols-2 > .flex.flex-col.justify-center {
    min-height: 100%;
    padding: 0.5rem 0.25rem 0.25rem;
}

.gm-storefront-content h1.text-2xl {
    color: var(--gm-ink);
    font-size: clamp(1.6rem, 2vw, 2.25rem) !important;
    line-height: 1.14 !important;
}

.gm-storefront-content h2.text-3xl {
    color: rgb(var(--primary));
    font-size: clamp(2rem, 2.7vw, 2.8rem) !important;
    letter-spacing: 0;
}

.gm-storefront-content textarea,
.gm-storefront-content select {
    border: 1px solid rgba(226, 232, 240, 0.92) !important;
    border-radius: 16px !important;
    background: #ffffff !important;
    box-shadow: inset 0 1px 0 rgba(31, 31, 57, 0.02);
}

.gm-storefront-content textarea:focus,
.gm-storefront-content select:focus {
    border-color: rgb(var(--primary) / 0.42) !important;
    box-shadow: 0 12px 26px rgba(31, 31, 57, 0.07);
}

.gm-storefront-content label:has(input[type="checkbox"]),
.gm-storefront-content label:has(input[type="radio"]) {
    transition: border-color 180ms ease, box-shadow 180ms ease, background 180ms ease;
}

.gm-storefront-content label:has(input[type="checkbox"]:checked),
.gm-storefront-content label:has(input[type="radio"]:checked) {
    border-color: rgb(var(--primary) / 0.32) !important;
    background: var(--gm-brand-red-soft) !important;
    box-shadow: 0 12px 26px rgb(var(--primary) / 0.08);
}

.indec-group {
    min-height: 36px;
    gap: 0.45rem !important;
    border: 1px solid rgba(226, 232, 240, 0.9);
    border-radius: 999px !important;
    background: #ffffff !important;
    box-shadow: 0 10px 24px rgba(31, 31, 57, 0.055);
}

.indec-minus,
.indec-plus {
    display: inline-flex !important;
    width: 28px !important;
    height: 28px !important;
    align-items: center !important;
    justify-content: center !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: rgb(var(--primary)) !important;
    color: #ffffff !important;
    line-height: 1 !important;
    box-shadow: 0 8px 16px rgb(var(--primary) / 0.16);
}

.indec-value {
    width: 36px !important;
    min-width: 36px;
    height: 28px !important;
    border: 0 !important;
    border-radius: 999px;
    color: var(--gm-ink) !important;
    font-size: 0.95rem !important;
    font-weight: 800 !important;
    line-height: 28px !important;
    text-align: center;
}

.db-btn.bg-primary,
.gm-storefront-content button.bg-primary {
    border: 0;
    background: linear-gradient(135deg, rgb(var(--primary)) 0%, var(--gm-brand-red-strong) 100%) !important;
    color: #ffffff !important;
    box-shadow: 0 16px 32px rgb(var(--primary) / 0.22) !important;
}

.db-btn.bg-primary:hover,
.gm-storefront-content button.bg-primary:hover {
    transform: translateY(-1px);
    box-shadow: 0 20px 42px rgb(var(--primary) / 0.28) !important;
}

.footer-part {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(circle at 12% 0%, rgb(var(--primary) / 0.25), transparent 25rem),
        linear-gradient(135deg, #181824 0%, #050506 100%) !important;
}

.footer-part::before {
    position: absolute;
    inset: 0;
    pointer-events: none;
    background-image: linear-gradient(rgba(255, 255, 255, 0.045) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.045) 1px, transparent 1px);
    background-size: 44px 44px;
    content: "";
    mask-image: linear-gradient(180deg, transparent 0%, black 24%, black 100%);
}

.footer-part > * {
    position: relative;
}

.footer-part {
    padding-top: 2rem !important;
    padding-bottom: 0 !important;
}

.footer-part .container,
.storefront-footer-container {
    max-width: 1180px;
}

.storefront-footer-grid {
    display: grid;
    grid-template-columns: minmax(180px, 0.62fr) minmax(310px, 1fr) minmax(260px, 0.82fr);
    align-items: start;
    gap: clamp(1.25rem, 3vw, 3.25rem);
}

.storefront-footer-brand,
.storefront-footer-newsletter,
.storefront-footer-contact {
    min-width: 0;
}

.footer-part img[alt="Логотип Gurmeat"] {
    width: 148px !important;
    max-width: 100%;
    padding: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.footer-part h3 {
    color: #ffffff !important;
    margin-bottom: 0.85rem !important;
    font-size: 1rem !important;
    font-weight: 720 !important;
    line-height: 1.25 !important;
}

.footer-part p,
.footer-part a,
.footer-part li,
.footer-part span {
    color: rgba(255, 255, 255, 0.86) !important;
}

.footer-part a:hover {
    color: #ffffff !important;
}

.storefront-footer-newsletter p {
    max-width: 420px;
    margin-bottom: 0.7rem !important;
    color: rgba(255, 255, 255, 0.72) !important;
    font-size: 0.86rem !important;
    line-height: 1.45 !important;
}

.footer-part form {
    height: 46px !important;
    max-width: 420px !important;
    margin-bottom: 0 !important;
    padding: 0.28rem !important;
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.98) !important;
    box-shadow: 0 14px 28px rgba(0, 0, 0, 0.18);
}

.footer-part form input {
    min-width: 0;
    border: 0 !important;
    color: var(--gm-ink) !important;
    outline: 0 !important;
}

.footer-part form input::placeholder {
    color: #8a8da8 !important;
}

.footer-part input,
.footer-part button {
    border: 0 !important;
    border-radius: 999px !important;
}

.footer-part button.bg-primary {
    min-height: 38px;
    padding-left: 0.95rem !important;
    padding-right: 0.95rem !important;
    background: linear-gradient(135deg, rgb(var(--primary)) 0%, var(--gm-brand-red-strong) 100%) !important;
    color: #ffffff !important;
    box-shadow: 0 10px 18px rgb(var(--primary) / 0.2);
}

.storefront-footer-contact ul {
    gap: 0.8rem !important;
}

.storefront-footer-contact span {
    font-size: 1rem !important;
    line-height: 1.3 !important;
}

.footer-part ul li {
    align-items: center;
}

.footer-part ul li i {
    width: 30px;
    height: 30px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.08);
    line-height: 30px !important;
    text-align: center;
}

.storefront-footer-bottom {
    margin-top: 1.45rem;
    padding: 1rem 1rem 1.05rem;
    border-top: 1px solid rgba(185, 28, 28, 0.72);
}

.storefront-footer-bottom p {
    font-size: 0.84rem !important;
    line-height: 1.4 !important;
}

@media (max-width: 767px) {
    .footer-part {
        padding-top: 1.55rem !important;
        padding-bottom: 5.25rem !important;
    }

    .storefront-footer-grid {
        grid-template-columns: 1fr;
        gap: 1.35rem;
    }

    .footer-part img[alt="Логотип Gurmeat"] {
        width: 132px !important;
    }

    .footer-part form {
        max-width: 100% !important;
    }

    .storefront-footer-bottom {
        margin-top: 1.15rem;
        padding-top: 0.85rem;
        padding-bottom: 0.9rem;
    }
}

.gm-mobile-tabbar {
    left: 50% !important;
    bottom: 12px !important;
    width: calc(100% - 24px) !important;
    /*max-width: 520px;*/
    z-index: 180 !important;
    transform: translateX(-50%);
    border: 1px solid rgba(226, 232, 240, 0.84);
    border-radius: 24px !important;
    background: rgba(255, 255, 255, 0.94) !important;
    box-shadow: 0 18px 46px rgba(23, 31, 70, 0.22) !important;
    backdrop-filter: blur(18px) saturate(160%);
}

.gm-mobile-tab {
    color: #717498 !important;
    font-weight: 700;
}

.gm-mobile-tab-icon {
    color: currentColor;
}

.gm-mobile-cart-tab {
    border: 0 !important;
    background: #0a0a0d !important;
    box-shadow:
        0 12px 26px rgba(5, 5, 5, 0.28),
        0 0 0 8px rgba(255, 255, 255, 0.96) !important;
}

@media (max-width: 767px) {
    .ff-header .container {
        min-height: auto;
        padding-top: 0.65rem;
        padding-bottom: 0.8rem;
    }

    .gm-storefront-content {
        padding-top: 0.25rem;
    }

    .banner-swiper {
        border-radius: 18px !important;
    }

    .banner-swiper img {
        min-height: 190px;
    }

    .product-card-grid,
    .product-card-list {
        border-radius: 18px !important;
    }

    .product-card-list {
        align-items: stretch;
    }

    .product-card-list-image {
        width: 112px !important;
        min-height: 132px;
    }

    .gm-storefront-content section > .container > .grid.grid-cols-1.md\:grid-cols-2 {
        padding: 0.75rem;
        border-radius: 22px;
    }

    .gm-storefront-content section > .container > .grid.grid-cols-1.md\:grid-cols-2 > .flex-shrink-0 {
        position: static;
    }

    .gm-storefront-content section > .container > .grid.grid-cols-1.md\:grid-cols-2 > .flex-shrink-0 img {
        height: 260px !important;
        border-radius: 20px !important;
    }
}

/* Gurmeat admin refinement layer. */
.db-card {
    overflow: hidden;
    border-radius: 18px !important;
    background: rgba(255, 255, 255, 0.96) !important;
}

.db-card-header {
    gap: 0.9rem !important;
    border-color: rgba(226, 232, 240, 0.78) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 252, 0.72)) !important;
}

.db-card-title {
    color: var(--gm-ink) !important;
    font-size: 1rem !important;
    font-weight: 800 !important;
    letter-spacing: 0;
}

.db-card-body {
    padding: clamp(1rem, 1.35vw, 1.35rem) !important;
}

.db-card-filter {
    gap: 0.75rem !important;
}

.db-card-filter-btn,
.db-field-control,
.db-multiple-field {
    border-color: rgba(226, 232, 240, 0.92) !important;
    border-radius: 12px !important;
    background: #ffffff !important;
    color: var(--gm-ink) !important;
    box-shadow: inset 0 1px 0 rgba(31, 31, 57, 0.02);
}

.db-field-control:focus,
.db-field-control:focus-within,
.db-multiple-field:focus-within {
    border-color: rgb(var(--primary) / 0.42) !important;
    box-shadow: 0 12px 26px rgba(31, 31, 57, 0.065) !important;
}

.db-field-title {
    color: #5b607e !important;
    font-size: 0.72rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.035em;
}

.db-table-responsive {
    border: 1px solid rgba(226, 232, 240, 0.82);
    border-radius: 16px;
    background: #ffffff;
    box-shadow: 0 12px 28px rgba(31, 31, 57, 0.04);
}

.db-table {
    border-collapse: separate;
    border-spacing: 0;
}

.db-table-head {
    border: 0 !important;
    background: #f8fafc;
}

.db-table-head-th {
    border-bottom: 1px solid rgba(226, 232, 240, 0.82);
    color: #5b607e !important;
    font-size: 0.72rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.035em !important;
}

.db-table-body-tr {
    border-color: rgba(226, 232, 240, 0.72) !important;
    transition: background 160ms ease;
}

.db-table.stripe .db-table-body-tr:nth-child(odd) {
    background: rgba(248, 250, 252, 0.7) !important;
}

.db-table-body-tr:hover {
    background: var(--gm-brand-red-soft) !important;
}

.db-table-body-td {
    color: #30334f;
    vertical-align: middle;
}

.db-table-badge {
    border-radius: 999px !important;
    font-weight: 800;
}

.db-table-action i {
    min-width: 30px;
    height: 30px;
    border-radius: 10px !important;
    text-align: center;
    line-height: 22px !important;
}

.db-table-action.view i {
    background: rgb(var(--primary) / 0.08) !important;
    color: rgb(var(--primary)) !important;
}

.db-table-action.edit i {
    background: rgba(37, 99, 235, 0.09) !important;
    color: #2563eb !important;
}

.db-table-action.delete i {
    background: rgba(220, 38, 38, 0.09) !important;
    color: #dc2626 !important;
}

.db-list {
    overflow: hidden;
    border: 1px solid rgba(226, 232, 240, 0.78);
    border-radius: 16px;
    background: #ffffff;
}

.db-list-item {
    border-color: rgba(226, 232, 240, 0.72) !important;
}

.db-list-item-title {
    color: #5b607e !important;
    font-weight: 800 !important;
}

.db-list-item-text {
    color: var(--gm-ink) !important;
}

.drawer-dialog,
.modal-dialog {
    border-radius: 20px !important;
    border: 1px solid rgba(226, 232, 240, 0.82);
    box-shadow: 0 28px 70px rgba(31, 31, 57, 0.18) !important;
}

/* Gurmeat final restoration layer: replaces missing framework preflight safely. */
*, ::before, ::after {
    border-color: #e5e7eb;
    border-style: solid;
    border-width: 0;
}

button,
input,
select,
textarea {
    outline: 0;
}

input,
select,
textarea {
    min-width: 0;
    border-color: rgba(217, 219, 233, 0.96);
    background: #ffffff;
    color: var(--gm-ink);
}

input:focus,
select:focus,
textarea:focus,
.chat-footer-data:focus-within,
.header-search-group:focus-within {
    border-color: rgb(var(--primary) / 0.42) !important;
    box-shadow: 0 12px 28px rgba(31, 31, 57, 0.075) !important;
}

input.invalid,
select.invalid,
textarea.invalid,
.invalid {
    border-color: #dc2626 !important;
}

.db-sidebar {
    width: 260px !important;
    padding: 0.9rem 0.75rem 1.25rem !important;
    border-right: 1px solid rgba(226, 232, 240, 0.84);
    background: rgba(255, 255, 255, 0.98) !important;
    box-shadow: 10px 0 32px rgba(31, 31, 57, 0.045) !important;
}

.db-sidebar-nav {
    margin-bottom: 0 !important;
}

.db-sidebar-nav-list {
    margin: 0 0 0.18rem !important;
    padding: 0 !important;
    list-style: none !important;
}

.db-sidebar-nav-item {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.db-sidebar-nav-title {
    display: block !important;
    width: 100%;
    margin: 0.8rem 0.55rem 0.35rem !important;
    padding: 0 !important;
    color: #9aa0b8 !important;
    font-size: 0.68rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.16em !important;
    line-height: 1.1 !important;
    text-transform: uppercase !important;
}

.db-sidebar-nav-menu {
    min-height: 40px !important;
    gap: 0.72rem !important;
    border-radius: 12px !important;
    padding: 0.52rem 0.72rem !important;
    color: #747792 !important;
    font-weight: 700 !important;
}

.db-sidebar-nav-menu i {
    width: 22px !important;
    min-width: 22px;
    font-size: 1rem !important;
    line-height: 1 !important;
    text-align: center;
}

.db-sidebar-nav-menu span {
    min-width: 0;
    font-size: 0.88rem !important;
    line-height: 1.25 !important;
}

.db-sidebar-nav-menu:hover,
.db-sidebar-nav-menu.router-link-active,
.db-sidebar-nav-item.router-link-active .db-sidebar-nav-menu,
.db-sidebar-nav-item.active .db-sidebar-nav-menu {
    background: var(--gm-brand-red-soft) !important;
    color: rgb(var(--primary)) !important;
}

.db-header.gm-admin-header {
    min-height: 68px !important;
    padding: 0.55rem 1rem !important;
    gap: clamp(1rem, 4vw, 4rem) !important;
}

.gm-admin-header-logo {
    height: 40px !important;
}

.gm-admin-header-toolbar,
.gm-admin-header-subbar,
.gm-admin-quick-actions,
.gm-admin-action-group {
    gap: 0.8rem !important;
}

.gm-admin-branch-button,
.gm-admin-square-action,
.gm-admin-menu-toggle,
.gm-admin-profile-button {
    border: 1px solid rgba(226, 232, 240, 0.92) !important;
    background: #ffffff !important;
    box-shadow: 0 10px 24px rgba(31, 31, 57, 0.065) !important;
}

.gm-admin-branch-button {
    min-height: 44px !important;
    min-width: 166px;
    padding: 0.4rem 0.7rem !important;
    border-radius: 13px !important;
}

.gm-admin-square-action,
.gm-admin-menu-toggle {
    height: 42px !important;
    min-width: 42px !important;
    border-radius: 13px !important;
}

.gm-admin-square-action {
    padding-left: 0.75rem !important;
    padding-right: 0.75rem !important;
}

.gm-admin-profile-button {
    min-height: 46px !important;
    max-width: 260px;
    padding: 0.3rem 0.65rem !important;
    border-radius: 16px !important;
}

.gm-admin-profile-avatar {
    width: 38px !important;
    height: 38px !important;
    border-radius: 12px !important;
}

.gm-admin-profile > .dropdown-list {
    position: absolute !important;
    top: calc(100% + 0.65rem) !important;
    right: 0 !important;
    left: auto !important;
    z-index: 240 !important;
    width: min(360px, calc(100vw - 24px)) !important;
    height: auto !important;
    max-height: calc(100vh - 96px) !important;
    overflow-y: auto !important;
    padding: 1rem !important;
    border: 1px solid rgba(226, 232, 240, 0.86) !important;
    border-radius: 20px !important;
    background: #ffffff !important;
    box-shadow: 0 28px 70px rgba(31, 31, 57, 0.18) !important;
}

.gm-admin-profile > .dropdown-list figure {
    width: 74px !important;
    height: 74px !important;
}

.gm-admin-profile > .dropdown-list figure::before {
    width: 72px !important;
    height: 72px !important;
}

.gm-admin-profile > .dropdown-list figure img {
    width: 68px !important;
    height: 68px !important;
}

.gm-admin-profile > .dropdown-list nav a,
.gm-admin-profile > .dropdown-list nav button {
    min-height: 42px !important;
    padding: 0.55rem 0.65rem !important;
    border-radius: 12px !important;
    color: var(--gm-ink) !important;
}

.gm-admin-profile > .dropdown-list nav a:hover,
.gm-admin-profile > .dropdown-list nav button:hover {
    background: var(--gm-brand-red-soft) !important;
    color: rgb(var(--primary)) !important;
}

.chat-footer {
    align-items: center !important;
    gap: 0.75rem !important;
    padding: 0.85rem 1rem !important;
    border-radius: 20px !important;
    background: rgba(255, 255, 255, 0.98) !important;
    box-shadow: 0 18px 48px rgba(31, 31, 57, 0.08) !important;
}

.chat-footer-file-label,
.chat-footer-sent {
    display: inline-flex !important;
    width: 44px !important;
    height: 44px !important;
    flex: 0 0 44px !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 14px !important;
}

.chat-footer-file-label {
    background: var(--gm-brand-red-soft) !important;
    color: rgb(var(--primary)) !important;
}

.chat-footer-data {
    min-height: 46px !important;
    border: 1px solid rgba(226, 232, 240, 0.92) !important;
    border-radius: 999px !important;
    background: #f8fafc !important;
}

.chat-footer-data-input {
    height: 44px !important;
    padding: 0 1rem !important;
    border: 0 !important;
    background: transparent !important;
    color: var(--gm-ink) !important;
}

.chat-footer-sent {
    background: #1f1f39 !important;
    color: #ffffff !important;
    box-shadow: 0 12px 24px rgba(31, 31, 57, 0.18) !important;
}

.modal,
.ff-modal {
    z-index: 230 !important;
}

.modal.active,
.ff-modal.active {
    display: block !important;
}

.modal-dialog {
    max-height: calc(100dvh - 3rem) !important;
    overflow: hidden !important;
}

.modal-body {
    max-height: calc(100dvh - 9rem);
    overflow-y: auto;
}

.address-modal .modal-dialog,
.address.ff-modal .modal-dialog {
    width: min(92vw, 640px) !important;
    max-width: min(92vw, 640px) !important;
    border-radius: 22px !important;
}

.address-modal .modal-header,
.address.ff-modal .modal-header {
    align-items: center !important;
    padding: 1rem 1.2rem 0.25rem !important;
}

.address-modal .modal-body,
.address.ff-modal .modal-body {
    padding: 1rem 1.2rem 1.2rem !important;
}

body.gm-address-picker-open .ff-header,
body.gm-address-picker-open .gm-mobile-tabbar,
body.gm-address-picker-open .footer-part {
    display: none !important;
}

.gm-address-modern-modal.active {
    position: fixed !important;
    inset: 0 !important;
    top: 0 !important;
    left: 0 !important;
    z-index: 1200 !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 100vw !important;
    height: 100dvh !important;
    padding: 1rem;
    transform: none !important;
    overflow: hidden !important;
    background: rgba(12, 12, 18, 0.62);
    backdrop-filter: blur(3px);
    isolation: isolate;
}

.gm-address-modern-modal .modal-dialog {
    width: min(1120px, calc(100vw - 2rem)) !important;
    max-width: min(1120px, calc(100vw - 2rem)) !important;
    height: min(830px, calc(100dvh - 2rem)) !important;
    max-height: min(830px, calc(100dvh - 2rem)) !important;
    margin: 0 !important;
    overflow: hidden !important;
    border: 0 !important;
    border-radius: 30px !important;
    background: #ffffff;
    box-shadow: 0 34px 110px rgba(10, 10, 16, 0.38);
}

.gm-address-modern-modal .gm-address-back-button {
    position: absolute;
    bottom: 2rem;
    left: 2rem;
    z-index: 12;
    pointer-events: auto;
    display: inline-flex !important;
    width: 44px !important;
    height: 44px !important;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.94) !important;
    color: #23243d !important;
    box-shadow: 0 14px 34px rgba(31, 31, 57, 0.16);
}

.gm-address-modern-modal .modal-header.gm-address-modal-header .modal-close {
    display: none !important;
}

.gm-address-modern-modal .modal-body {
    height: 100% !important;
    max-height: none !important;
    overflow: hidden !important;
    padding: 0 !important;
}

.gm-address-flow {
    display: grid;
    grid-template-columns: minmax(0, 1.12fr) minmax(370px, 0.88fr);
    height: 100%;
    min-height: 0;
    background: #ffffff;
}

.gm-address-map-stage {
    position: relative;
    min-width: 0;
    min-height: 0;
    overflow: hidden;
    background: #eaf3f8;
}

.gm-address-map-stage::after {
    position: absolute;
    inset: 0;
    z-index: 2;
    content: "";
    pointer-events: none;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.28), transparent 25%),
        radial-gradient(circle at 50% 48%, transparent 0 82px, rgba(31, 31, 57, 0.09) 83px 84px, transparent 85px);
}

.gm-address-mode-tabs {
    position: absolute;
    top: 1.55rem;
    left: 50%;
    z-index: 8;
    display: grid;
    width: min(500px, calc(100% - 5rem));
    grid-template-columns: 1fr 1fr;
    gap: 0.18rem;
    transform: translateX(-50%);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.96);
    padding: 0.28rem;
    box-shadow: 0 16px 38px rgba(31, 31, 57, 0.12);
}

.gm-address-mode-tabs button {
    display: inline-flex;
    min-height: 42px;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    border-radius: 999px;
    color: #747895;
    font-size: 0.9rem;
    font-weight: 520;
    line-height: 1;
    transition: background 0.18s ease, color 0.18s ease, box-shadow 0.18s ease;
}

.gm-address-mode-tabs button.active {
    background: #b91c1c;
    color: #ffffff;
    box-shadow: 0 12px 28px rgba(185, 28, 28, 0.26);
}

.gm-address-mode-tabs button[aria-disabled="true"] {
    cursor: default;
}

.gm-address-map-picker {
    position: relative;
    width: 100%;
    height: 100%;
    min-height: 420px;
    overflow: hidden;
    background: #eef6fb;
}

.gm-address-modern-modal .gm-address-searchbar {
    position: absolute;
    top: 5.65rem;
    left: 2.25rem;
    right: 2.25rem;
    z-index: 9;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 0.65rem;
    min-height: 52px;
    border: 1px solid rgba(226, 232, 240, 0.72);
    border-radius: 17px;
    background: rgba(255, 255, 255, 0.9);
    padding: 0.45rem 0.55rem 0.45rem 0.78rem;
    box-shadow: 0 14px 34px rgba(31, 31, 57, 0.08);
    backdrop-filter: blur(10px);
}

.gm-address-modern-modal .gm-address-searchbar > i {
    color: #747895;
    font-size: 1.34rem;
}

.gm-address-search-field {
    display: grid !important;
    min-width: 0;
    width: 100%;
    gap: 0.1rem;
}

.gm-address-search-field span {
    color: #9da3b6;
    font-size: 0.72rem;
    font-weight: 460;
    line-height: 1.1;
}

.gm-address-modern-modal #map-autocomplete-input.gm-address-search-input {
    width: 100% !important;
    height: 24px !important;
    min-height: 24px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    padding: 0 !important;
    color: #23243d !important;
    font-size: 0.9rem !important;
    font-weight: 400 !important;
    line-height: 1.25 !important;
    box-shadow: none !important;
}

.gm-address-modern-modal #map-autocomplete-input.gm-address-search-input::placeholder {
    color: #a0a3bd;
    font-size: 0.9rem;
}

.gm-address-modern-modal .gm-map-search-button {
    min-width: 62px !important;
    height: 36px !important;
    border-radius: 13px !important;
    background: #b91c1c !important;
    color: #ffffff !important;
    font-size: 0.78rem !important;
    font-weight: 560 !important;
    box-shadow: 0 10px 22px rgba(185, 28, 28, 0.18) !important;
}

.gm-address-location-button {
    position: absolute;
    right: 2rem;
    bottom: 2rem;
    z-index: 9;
    display: inline-flex;
    width: 60px;
    height: 60px;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: #b91c1c !important;
    color: #ffffff;
    box-shadow: 0 18px 42px rgba(185, 28, 28, 0.34);
    transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
}

.gm-address-location-button:hover {
    transform: translateY(-1px);
    background: #991b1b !important;
    box-shadow: 0 22px 50px rgba(185, 28, 28, 0.4);
}

.gm-address-location-button i {
    color: #ffffff !important;
    font-size: 1.35rem;
}

.gm-address-modern-modal #the-google-map.gm-address-map-canvas {
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    margin: 0 !important;
    border-radius: 0 !important;
    background: #eef6fb !important;
}

.gm-address-modern-modal #the-google-map.gm-address-map-canvas .mapboxgl-map,
.gm-address-modern-modal #the-google-map.gm-address-map-canvas .mapboxgl-canvas-container,
.gm-address-modern-modal #the-google-map.gm-address-map-canvas .mapboxgl-canvas,
.gm-address-modern-modal #the-google-map.gm-address-map-canvas .gm-osm-map-card,
.gm-address-modern-modal #the-google-map.gm-address-map-canvas .gm-osm-tile-layer {
    min-height: 100% !important;
    border-radius: 0 !important;
}

.gm-address-modern-modal #the-google-map .mapboxgl-ctrl-bottom-right {
    right: 1.35rem !important;
    bottom: 6.4rem !important;
}

.gm-address-modern-modal .gm-map-search-results {
    position: absolute;
    top: 11.1rem;
    left: 3rem;
    right: 3rem;
    z-index: 10;
    max-height: 180px;
    margin: 0;
    border: 1px solid rgba(226, 232, 240, 0.9);
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.97);
    padding: 0.45rem;
    box-shadow: 0 20px 54px rgba(31, 31, 57, 0.14);
}

.gm-address-modern-modal .gm-map-message {
    position: absolute;
    top: 11.1rem;
    left: 3rem;
    right: 3rem;
    z-index: 10;
    margin: 0;
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.95);
    padding: 0.65rem 0.9rem;
    box-shadow: 0 14px 32px rgba(31, 31, 57, 0.12);
}

.gm-address-sheet {
    min-width: 0;
    overflow-y: auto;
    background: #ffffff;
    padding: 2.4rem 2.25rem 2.2rem;
}

.gm-address-sheet-handle {
    display: none;
}

.gm-address-sheet-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
}

.gm-address-sheet-head h3 {
    color: #1f1f39;
    font-size: clamp(1.28rem, 1.55vw, 1.65rem);
    font-weight: 560;
    letter-spacing: 0;
    line-height: 1.16;
}

.gm-address-sheet-head p {
    max-width: 360px;
    margin-top: 0.45rem;
    color: #747895;
    font-size: 0.9rem;
    line-height: 1.45;
}

.gm-address-provider-badge {
    display: none;
}

.gm-address-selected-card {
    display: block;
    margin-bottom: 0.82rem;
    border: 1px solid rgba(217, 219, 233, 0.9);
    border-radius: 16px;
    background: #ffffff;
    padding: 0.72rem 0.92rem;
}

.gm-address-selected-card i {
    display: none;
}

.gm-address-selected-card label {
    display: block;
    color: #a0a3bd;
    font-size: 0.74rem;
    font-weight: 400;
    line-height: 1.2;
}

.gm-address-modern-modal .gm-address-line-input {
    display: block;
    width: 100% !important;
    min-height: 38px !important;
    margin-top: 0.25rem;
    border: 0 !important;
    border-radius: 14px !important;
    background: transparent !important;
    padding: 0.12rem 0 !important;
    color: #23243d;
    font-size: 1rem !important;
    font-weight: 400 !important;
    line-height: 1.42 !important;
    resize: none;
    outline: none !important;
    box-shadow: none !important;
}

.gm-address-modern-modal .gm-address-line-input::placeholder {
    color: #8a8fa8;
}

.gm-address-modern-modal .gm-address-line-input:focus {
    color: #1f1f39;
}

.gm-address-field {
    margin-bottom: 0.82rem;
}

.gm-address-field label,
.gm-address-label-block h3 {
    display: block;
    margin-bottom: 0.38rem;
    color: #6f728a;
    font-size: 0.76rem;
    font-weight: 430;
    line-height: 1.2;
}

.gm-address-modern-modal .gm-address-field label {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
}

.gm-address-modern-modal .gm-address-field textarea,
.gm-address-modern-modal .gm-address-custom-label input {
    width: 100% !important;
    min-height: 54px !important;
    border: 1px solid rgba(217, 219, 233, 0.9) !important;
    border-radius: 16px !important;
    background: #ffffff !important;
    padding: 0.86rem 0.92rem !important;
    color: #23243d !important;
    font-size: 0.96rem !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;
    box-shadow: inset 0 1px 0 rgba(31, 31, 57, 0.02) !important;
}

.gm-address-modern-modal .gm-address-field textarea {
    resize: vertical;
}

.gm-address-label-block {
    margin-bottom: 1rem;
}

.gm-address-labels {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.65rem;
}

.gm-address-labels button {
    display: inline-flex;
    min-height: 42px;
    align-items: center;
    justify-content: center;
    gap: 0.48rem;
    border: 1px solid rgba(226, 232, 240, 0.92);
    border-radius: 999px;
    background: #ffffff;
    color: #747895;
    font-size: 0.82rem;
    font-weight: 430;
    line-height: 1;
    transition: border-color 0.18s ease, background 0.18s ease, color 0.18s ease, box-shadow 0.18s ease;
}

.gm-address-labels button.active,
.gm-address-labels button:hover {
    border-color: rgba(185, 28, 28, 0.36) !important;
    background: rgba(185, 28, 28, 0.08) !important;
    color: #b91c1c;
    box-shadow: 0 12px 28px rgba(185, 28, 28, 0.1);
}

.gm-address-custom-label {
    display: grid;
    grid-template-rows: 0fr;
    overflow: hidden;
    transition: grid-template-rows 0.2s ease, margin-top 0.2s ease;
}

.gm-address-custom-label > * {
    min-height: 0;
}

.gm-address-custom-label.active {
    grid-template-rows: 1fr;
    margin-top: 0.8rem;
}

.gm-address-submit {
    display: inline-flex;
    width: 100%;
    min-height: 54px;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: #b91c1c;
    color: #ffffff;
    font-size: 0.96rem;
    font-weight: 560;
    line-height: 1;
    box-shadow: 0 18px 42px rgba(185, 28, 28, 0.24);
    transition: background 0.18s ease, transform 0.18s ease, box-shadow 0.18s ease, opacity 0.18s ease;
}

.gm-address-submit:hover {
    transform: translateY(-1px);
    background: #991b1b;
    box-shadow: 0 22px 50px rgba(185, 28, 28, 0.32);
}

.gm-address-submit:disabled {
    cursor: not-allowed;
    background: #e7e7ef;
    color: #ffffff;
    opacity: 1;
    transform: none;
    box-shadow: none;
}

@media (max-width: 767px) {
    .gm-address-modern-modal.active {
        /*align-items: stretch;*/
        /*justify-content: stretch;*/
        padding: 0;
    }

    .gm-address-modern-modal .modal-dialog {
        width: 100vw !important;
        max-width: 100vw !important;
        height: 100dvh !important;
        max-height: 100dvh !important;
        border-radius: 0 !important;
    }

    .gm-address-modern-modal .gm-address-back-button {
        bottom: calc(4.2rem + 7px);
        left: 1.2rem;
        width: 42px !important;
        height: 42px !important;
    }

    .gm-address-modern-modal .modal-body {
        overflow-y: auto !important;
        background: #ffffff;
    }

    .gm-address-flow {
        display: flex;
        min-height: 100%;
        flex-direction: column;
    }

    .gm-address-map-stage {
        flex: 0 0 60dvh;
        min-height: 460px;
    }

    .gm-address-mode-tabs {
        top: 1rem;
        width: calc(100% - 5.5rem);
        min-width: 0;
    }

    .gm-address-mode-tabs button {
        min-height: 42px;
        font-size: 0.88rem;
    }

    .gm-address-modern-modal .gm-address-searchbar {
        top: 4.85rem;
        left: 1rem;
        right: 1rem;
        gap: 0.65rem;
        min-height: 58px;
        border-radius: 19px;
        padding: 0.52rem 0.62rem 0.52rem 0.82rem;
    }

    .gm-address-modern-modal .gm-address-searchbar > i {
        font-size: 1.35rem;
    }

    .gm-address-modern-modal #map-autocomplete-input.gm-address-search-input,
    .gm-address-modern-modal #map-autocomplete-input.gm-address-search-input::placeholder {
        font-size: 0.94rem !important;
    }

    .gm-address-modern-modal .gm-map-search-button {
        min-width: 58px !important;
        height: 38px !important;
        padding: 0 0.7rem !important;
        font-size: 0.8rem !important;
    }

    .gm-address-location-button {
        right: 1.2rem;
        bottom: 4.2rem;
        width: 56px;
        height: 56px;
    }

    .gm-address-modern-modal #the-google-map .mapboxgl-ctrl-bottom-right {
        bottom: 8rem !important;
    }

    .gm-address-modern-modal .gm-map-search-results,
    .gm-address-modern-modal .gm-map-message {
        top: 9.2rem;
        left: 1.5rem;
        right: 1.5rem;
    }

    .gm-address-sheet {
        position: relative;
        z-index: 7;
        flex: 1 0 auto;
        margin-top: -2rem;
        overflow: visible;
        border-left: 0;
        border-radius: 30px 30px 0 0;
        padding: 0.85rem 1.1rem 1.25rem;
        box-shadow: 0 -22px 60px rgba(31, 31, 57, 0.14);
    }

    .gm-address-sheet-handle {
        display: block;
        width: 52px;
        height: 5px;
        margin: 0 auto 1rem;
        border-radius: 999px;
        background: #d9dbe9;
    }

    .gm-address-sheet-head {
        align-items: flex-start;
        margin-bottom: 1rem;
    }

    .gm-address-sheet-head h3 {
        font-size: 1.34rem;
    }

    .gm-address-sheet-head p {
        font-size: 0.82rem;
    }

    .gm-address-provider-badge {
        display: none;
    }

    .gm-address-selected-card {
        padding: 0.85rem;
    }

    .gm-address-modern-modal .gm-address-line-input {
        min-height: 58px !important;
        font-size: 0.92rem !important;
    }

    .gm-address-labels {
        gap: 0.5rem;
    }

    .gm-address-labels button {
        min-height: 50px;
        border-radius: 16px;
        font-size: 0.84rem;
    }

    .gm-address-submit {
        min-height: 54px;
        font-size: 0.96rem;
    }
}

.gm-address-modern-modal.active {
    background: rgba(18, 18, 18, 0.54) !important;
    backdrop-filter: blur(6px);
}

.gm-address-modern-modal .modal-dialog {
    width: min(1060px, calc(100vw - 2rem)) !important;
    max-width: min(1060px, calc(100vw - 2rem)) !important;
    height: min(720px, calc(100dvh - 2rem)) !important;
    max-height: min(720px, calc(100dvh - 2rem)) !important;
    border-radius: 24px !important;
    box-shadow: 0 28px 80px rgba(18, 18, 18, 0.28);
}

.gm-address-flow {
    grid-template-columns: minmax(0, 1fr) minmax(360px, 420px);
}

.gm-address-map-stage {
    background: #f4f3ef;
}

.gm-address-map-stage::after {
    background: linear-gradient(90deg, rgba(255, 255, 255, 0.08), transparent 42%) !important;
}

.gm-address-mode-tabs,
.gm-address-provider-badge,
.gm-address-modern-modal .gm-address-back-button {
    display: none !important;
}

.gm-address-map-control {
    position: absolute;
    bottom: 1.25rem;
    z-index: 12;
    display: inline-flex;
    width: 44px;
    height: 44px;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(24, 24, 24, 0.18);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.58);
    color: #181818;
    box-shadow: 0 10px 28px rgba(18, 18, 18, 0.12);
    backdrop-filter: blur(14px) saturate(1.35);
    transition: background 0.16s ease, transform 0.16s ease, box-shadow 0.16s ease;
}

.gm-address-map-control:hover {
    background: rgba(255, 255, 255, 0.76);
    transform: translateY(-1px);
    box-shadow: 0 14px 30px rgba(18, 18, 18, 0.14);
}

.gm-address-map-control i {
    color: currentColor !important;
    line-height: 1;
}

.gm-address-map-back {
    left: 1.25rem;
}

.gm-address-modern-modal .gm-address-searchbar {
    top: 1.25rem;
    left: 1.25rem;
    right: 1.25rem;
    min-height: 54px;
    border: 1px solid rgba(24, 24, 24, 0.1);
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.94);
    box-shadow: 0 10px 26px rgba(18, 18, 18, 0.08);
}

.gm-address-search-field span {
    color: #75716a;
    font-size: 0.72rem;
    font-weight: 500;
}

.gm-address-modern-modal #map-autocomplete-input.gm-address-search-input {
    color: #181818 !important;
    font-size: 0.95rem !important;
}

.gm-address-modern-modal #map-autocomplete-input.gm-address-search-input::placeholder {
    color: #8c8982;
    font-size: 0.95rem;
}

.gm-address-modern-modal .gm-map-search-button {
    min-width: 58px !important;
    height: 38px !important;
    border-radius: 11px !important;
    background: #181818 !important;
    box-shadow: none !important;
}

.gm-address-location-button {
    right: 1.25rem;
    bottom: 1.25rem;
    width: 48px;
    height: 48px;
    border: 1px solid rgba(24, 24, 24, 0.18);
    background: rgba(255, 255, 255, 0.58) !important;
    color: #181818;
    box-shadow: 0 10px 28px rgba(18, 18, 18, 0.12);
    backdrop-filter: blur(14px) saturate(1.35);
}

.gm-address-location-button:hover {
    background: rgba(255, 255, 255, 0.76) !important;
    box-shadow: 0 14px 30px rgba(18, 18, 18, 0.16);
}

.gm-address-location-button i {
    color: #181818 !important;
    font-size: 1.14rem;
}

.gm-address-modern-modal #the-google-map.gm-address-map-canvas,
.gm-address-modern-modal .gm-address-map-picker {
    background: #f4f3ef !important;
}

.gm-address-modern-modal #the-google-map.gm-address-map-canvas .gm-osm-map-card {
    position: relative !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    overflow: hidden !important;
    background: #ece9e2 !important;
    cursor: crosshair;
}

.gm-address-modern-modal #the-google-map.gm-address-map-canvas .gm-osm-tile-layer {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    overflow: hidden !important;
}

.gm-address-modern-modal #the-google-map.gm-address-map-canvas .gm-osm-tile {
    position: absolute !important;
    width: 256px !important;
    max-width: none !important;
    height: 256px !important;
    user-select: none;
}

.gm-address-modern-modal #the-google-map.gm-address-map-canvas .gm-osm-map-pin {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 3;
    display: inline-flex;
    width: 40px;
    height: 40px;
    align-items: center;
    justify-content: center;
    transform: translate(-50%, -100%);
    color: #181818;
    filter: drop-shadow(0 8px 18px rgba(18, 18, 18, 0.18));
}

.gm-address-modern-modal #the-google-map.gm-address-map-canvas .gm-osm-map-pin i {
    color: currentColor;
    font-size: 1.72rem;
}

.gm-address-modern-modal #the-google-map.gm-address-map-canvas .gm-osm-map-pin.is-preview {
    opacity: 0.84;
}

.gm-address-modern-modal #the-google-map.gm-address-map-canvas .gm-osm-map-card > a {
    position: absolute;
    right: 0.75rem;
    bottom: 0.7rem;
    z-index: 4;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.82);
    padding: 0.2rem 0.45rem;
    color: #6f6b63;
    font-size: 0.66rem;
    font-weight: 600;
}

.gm-address-modern-modal #the-google-map.gm-address-map-canvas .gm-osm-map-card,
.gm-address-modern-modal #the-google-map.gm-address-map-canvas .gm-osm-tile-layer {
    filter: saturate(0.72) contrast(0.98);
}

.gm-address-modern-modal .gm-map-search-results,
.gm-address-modern-modal .gm-map-message {
    top: 5.65rem;
    left: 1.25rem;
    right: 1.25rem;
    border-radius: 14px;
    box-shadow: 0 16px 38px rgba(18, 18, 18, 0.12);
}

.gm-address-sheet {
    display: flex;
    flex-direction: column;
    border-left: 1px solid rgba(226, 222, 214, 0.78);
    padding: 2rem;
}

.gm-address-sheet-head {
    align-items: center;
    margin-bottom: 1rem;
}

.gm-address-sheet-head h3 {
    color: #181818;
    font-size: 1.32rem;
    font-weight: 620;
    line-height: 1.18;
}

.gm-address-sheet-close {
    display: inline-flex;
    width: 38px;
    height: 38px;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: #f4f3ef;
    color: #181818;
    transition: background 0.16s ease, transform 0.16s ease;
}

.gm-address-sheet-close:hover {
    background: #ece8df;
    transform: translateY(-1px);
}

.gm-address-selected-card {
    margin-bottom: 0.7rem;
    border-color: #e7e2d9;
    border-radius: 12px;
    padding: 0.75rem 0.85rem;
}

.gm-address-selected-card label,
.gm-address-field label,
.gm-address-label-block h3 {
    color: #6f6b63;
    font-size: 0.75rem;
    font-weight: 500;
}

.gm-address-modern-modal .gm-address-line-input {
    min-height: 44px !important;
    color: #181818 !important;
    font-size: 0.95rem !important;
}

.gm-address-modern-modal .gm-address-field input,
.gm-address-modern-modal .gm-address-field textarea,
.gm-address-modern-modal .gm-address-custom-label input {
    min-height: 48px !important;
    border-color: #e7e2d9 !important;
    border-radius: 12px !important;
    background: #ffffff !important;
    padding: 0.78rem 0.85rem !important;
    color: #181818 !important;
    font-size: 0.94rem !important;
    box-shadow: none !important;
}

.gm-address-modern-modal .gm-address-field input:focus,
.gm-address-modern-modal .gm-address-field textarea:focus,
.gm-address-modern-modal .gm-address-custom-label input:focus,
.gm-address-modern-modal .gm-address-line-input:focus {
    border-color: rgba(24, 24, 24, 0.42) !important;
    outline: none !important;
}

.gm-address-modern-modal .gm-address-field textarea {
    resize: none;
}

.gm-address-label-block {
    margin-bottom: 0.85rem;
}

.gm-address-custom-label:not(.active) {
    margin-top: 0;
}

.gm-address-custom-label:not(.active) input,
.gm-address-custom-label:not(.active) small {
    height: 0 !important;
    min-height: 0 !important;
    border-width: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    opacity: 0;
    pointer-events: none;
}

.gm-address-labels {
    gap: 0.45rem;
}

.gm-address-labels button {
    min-height: 42px;
    border-color: #e7e2d9;
    border-radius: 12px;
    background: #faf9f7;
    color: #5f5b53;
    font-size: 0.82rem;
    font-weight: 500;
    box-shadow: none !important;
}

.gm-address-labels button.active,
.gm-address-labels button:hover {
    border-color: #181818 !important;
    background: #181818 !important;
    color: #ffffff !important;
    box-shadow: none !important;
}

.gm-address-submit {
    min-height: 52px;
    border-radius: 12px;
    background: #181818;
    font-size: 0.95rem;
    font-weight: 620;
    box-shadow: none;
}

.gm-address-submit:hover {
    background: #000000;
    box-shadow: none;
}

.gm-address-submit:disabled {
    background: #e7e4dd;
    color: #a6a098;
}

@media (max-width: 767px) {
    .gm-address-modern-modal .modal-dialog {
        width: 100vw !important;
        max-width: 100vw !important;
        height: 100dvh !important;
        max-height: 100dvh !important;
        border-radius: 0 !important;
    }

    .gm-address-flow {
        min-height: 100dvh;
    }

    .gm-address-map-stage {
        flex: 0 0 min(42dvh, 340px);
        min-height: 300px;
        max-height: 360px;
    }

    .gm-address-map-stage::after {
        background: linear-gradient(180deg, rgba(255, 255, 255, 0.1), transparent 52%) !important;
    }

    .gm-address-modern-modal .gm-address-searchbar {
        top: max(2rem, env(safe-area-inset-top));
        left: 0.85rem;
        right: 0.85rem;
        min-height: 52px;
        border-radius: 14px;
        padding: 0.46rem 0.5rem 0.46rem 0.72rem;
    }

    .gm-address-map-control {
        top: auto;
        bottom: 6rem;
        width: 46px;
        height: 46px;
    }

    .gm-address-map-back {
        left: 1rem;
        bottom: 6rem;
    }

    .gm-address-search-field span {
        display: none;
    }

    .gm-address-modern-modal #map-autocomplete-input.gm-address-search-input,
    .gm-address-modern-modal #map-autocomplete-input.gm-address-search-input::placeholder {
        font-size: 0.93rem !important;
    }

    .gm-address-modern-modal .gm-map-search-button {
        min-width: 56px !important;
        height: 38px !important;
    }

    .gm-address-location-button {
        right: 1rem;
        bottom: 6rem;
        width: 46px;
        height: 46px;
    }

    .gm-address-modern-modal .gm-map-search-results,
    .gm-address-modern-modal .gm-map-message {
        top: 4.85rem;
        left: 1rem;
        right: 1rem;
    }

    .gm-address-sheet {
        flex: 1 1 auto;
        min-height: 0;
        margin-top: 0;
        overflow-y: auto;
        border-left: 0;
        border-radius: 18px 18px 0 0;
        padding: 0.65rem 1rem calc(1rem + env(safe-area-inset-bottom));
        box-shadow: 0 -14px 34px rgba(18, 18, 18, 0.12);
    }

    .gm-address-sheet-handle {
        width: 40px;
        height: 4px;
        margin: 0 auto 0.75rem;
        background: #ded9cf;
    }

    .gm-address-sheet-head {
        position: sticky;
        top: 0;
        z-index: 3;
        margin-bottom: 0.75rem;
        background: #ffffff;
        padding-top: 0.15rem;
    }

    .gm-address-sheet-head h3 {
        font-size: 1.18rem;
    }

    .gm-address-sheet-close {
        width: 36px;
        height: 36px;
    }

    .gm-address-selected-card {
        margin-bottom: 0.55rem;
        padding: 0.7rem 0.8rem;
    }

    .gm-address-modern-modal .gm-address-line-input {
        min-height: 42px !important;
        font-size: 0.92rem !important;
        line-height: 1.34 !important;
    }

    .gm-address-modern-modal .gm-address-field input,
    .gm-address-modern-modal .gm-address-field textarea,
    .gm-address-modern-modal .gm-address-custom-label input {
        min-height: 46px !important;
        padding: 0.72rem 0.8rem !important;
        font-size: 0.92rem !important;
    }

    .gm-address-label-block {
        margin-bottom: 0.7rem;
    }

    .gm-address-labels {
        gap: 0.4rem;
    }

    .gm-address-labels button {
        min-height: 40px;
        border-radius: 12px;
        font-size: 0.78rem;
        gap: 0.32rem;
    }

    .gm-address-submit {
        position: sticky;
        bottom: 0;
        z-index: 2;
        min-height: 50px;
        margin-top: 0.75rem;
        border-radius: 12px;
    }
}

.gm-time-schedule-modal {
    z-index: 1300 !important;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    background: rgba(12, 12, 18, 0.52) !important;
    backdrop-filter: blur(2px);
}

.gm-time-schedule-modal.active {
    display: flex !important;
}

.gm-time-schedule-modal .modal-dialog {
    width: min(92vw, 520px) !important;
    max-width: min(92vw, 520px) !important;
    max-height: min(620px, calc(100dvh - 2rem)) !important;
    margin: 0 !important;
    overflow: hidden !important;
    border-radius: 24px !important;
    background: #ffffff !important;
    box-shadow: 0 28px 80px rgba(31, 31, 57, 0.32);
}

.gm-time-schedule-modal .data-tab {
    max-height: min(380px, calc(100dvh - 12rem));
    overflow-y: auto;
}

.gm-checkout-readiness {
    margin: -0.2rem 0 0.85rem;
    border: 1px solid rgba(217, 219, 233, 0.82);
    border-radius: 16px;
    background: rgba(247, 247, 252, 0.72);
    padding: 0.72rem 0.86rem;
    color: #747895;
    font-size: 0.78rem;
    font-weight: 400;
    line-height: 1.45;
}

.gm-storefront-content .py-6.p-4,
.gm-storefront-content form#formElem,
.gm-storefront-content .shadow-xs.rounded-2xl.bg-white {
    position: relative;
}

.gm-storefront-content .shadow-xs.rounded-2xl.bg-white {
    border: 1px solid rgba(226, 232, 240, 0.86) !important;
    box-shadow: 0 22px 58px rgba(31, 31, 57, 0.08) !important;
}

#cart {
    z-index: 120 !important;
}

#cart > div {
    max-height: 100dvh !important;
    padding-bottom: 6.2rem !important;
}

.chat-footer-data-input,
.header-search-field,
.indec-value,
#phone {
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.gm-storefront-content .chat-footer-data-input,
.gm-storefront-content .header-search-field,
.gm-storefront-content .indec-value,
.gm-storefront-content #phone {
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.gm-storefront-content input.chat-footer-data-input[type="text"],
.gm-storefront-content input.header-search-field,
.gm-storefront-content input.indec-value,
.gm-storefront-content input#phone[type="text"] {
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.gm-storefront-content .indec-group,
#cart .indec-group {
    overflow: hidden !important;
    border: 1px solid #e0e7f1 !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    box-shadow: 0 14px 30px rgba(34, 36, 61, 0.08) !important;
}

.gm-storefront-content .indec-minus,
.gm-storefront-content .indec-plus,
#cart .indec-minus,
#cart .indec-plus {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 0 !important;
    background: #c51d1d !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    box-shadow: none !important;
}

.gm-storefront-content .indec-minus:hover,
.gm-storefront-content .indec-plus:hover,
#cart .indec-minus:hover,
#cart .indec-plus:hover {
    background: #a91b1b !important;
    transform: translateY(-1px);
}

.gm-storefront-content .indec-minus :where(i, span),
.gm-storefront-content .indec-plus :where(i, span),
#cart .indec-minus :where(i, span),
#cart .indec-plus :where(i, span) {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-size: 1rem !important;
    font-weight: 500 !important;
    line-height: 1 !important;
}

#cart .xmark-btn,
.gm-storefront-content .xmark-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

#cart .xmark-btn i,
.gm-storefront-content .xmark-btn i {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

.gm-mobile-tabbar {
    z-index: 260 !important;
}

@media (max-width: 767px) {
    .db-header.gm-admin-header {
        min-height: 64px !important;
        height: 64px !important;
        padding-left: 0.8rem !important;
        padding-right: 0.8rem !important;
    }

    .gm-admin-header-subbar {
        height: 54px !important;
        min-height: 54px !important;
        gap: 0.55rem !important;
        padding: 0 0.8rem !important;
    }

    .db-main {
        padding-top: 118px !important;
    }

    .gm-admin-branch-button {
        min-width: 150px;
        min-height: 40px !important;
    }

    .gm-admin-square-action,
    .gm-admin-menu-toggle {
        height: 40px !important;
        min-width: 40px !important;
    }

    .gm-admin-profile > .dropdown-list {
        position: fixed !important;
        top: 74px !important;
        right: 12px !important;
        left: auto !important;
        width: min(360px, calc(100vw - 24px)) !important;
        max-height: calc(100dvh - 92px) !important;
    }

    .modal-dialog {
        max-height: calc(100dvh - 2rem) !important;
    }

    .modal-body {
        max-height: calc(100dvh - 8rem) !important;
    }
}

/* Gurmeat admin production polish layer. */
.db-main {
    --gm-admin-panel: #ffffff;
    --gm-admin-muted: #f7f8fc;
    --gm-admin-line: rgba(226, 232, 240, 0.92);
    --gm-admin-soft-line: rgba(226, 232, 240, 0.68);
    --gm-admin-text: #22233f;
    --gm-admin-subtle: #747792;
    --gm-admin-red: #b91c1c;
    --gm-admin-red-strong: #a82722;
    --gm-admin-red-soft: rgba(185, 28, 28, 0.075);
    color: var(--gm-admin-text);
    background:
        radial-gradient(circle at 0 0, rgba(185, 28, 28, 0.055), transparent 30rem),
        linear-gradient(180deg, #fbfbfd 0%, #f5f6fb 100%) !important;
}

.db-sidebar {
    width: 276px !important;
    padding: 1rem 0.82rem 1.4rem !important;
}

.db-sidebar-nav-list {
    margin-bottom: 0.08rem !important;
}

.db-sidebar-nav-title {
    margin: 0.95rem 0.72rem 0.42rem !important;
    color: #a0a6b8 !important;
    font-size: 0.66rem !important;
    font-weight: 900 !important;
    letter-spacing: 0.2em !important;
    line-height: 1 !important;
    text-transform: uppercase !important;
}

.db-sidebar-nav-menu {
    min-height: 42px !important;
    gap: 0.82rem !important;
    border: 1px solid transparent !important;
    border-radius: 14px !important;
    padding: 0.58rem 0.78rem !important;
    color: #757993 !important;
    font-size: 0.92rem !important;
    font-weight: 800 !important;
    letter-spacing: 0 !important;
}

.db-sidebar-nav-menu span {
    font-size: 0.93rem !important;
    line-height: 1.25 !important;
}

.db-sidebar-nav-menu:hover {
    border-color: rgba(185, 28, 28, 0.1) !important;
    background: rgba(185, 28, 28, 0.045) !important;
    color: var(--gm-admin-red) !important;
    transform: translateX(2px);
}

.db-sidebar-nav-menu.router-link-active,
.db-sidebar-nav-item.router-link-active .db-sidebar-nav-menu,
.db-sidebar-nav-item.active .db-sidebar-nav-menu {
    border-color: rgba(185, 28, 28, 0.16) !important;
    background: linear-gradient(135deg, rgba(185, 28, 28, 0.115), rgba(185, 28, 28, 0.055)) !important;
    color: var(--gm-admin-red) !important;
    box-shadow: inset 3px 0 0 var(--gm-admin-red);
}

.db-header.gm-admin-header {
    border-bottom: 1px solid var(--gm-admin-line) !important;
    background: rgba(255, 255, 255, 0.96) !important;
    box-shadow: 0 12px 36px rgba(31, 31, 57, 0.055) !important;
}

.db-header.gm-admin-header .gm-admin-branch-button,
.db-header.gm-admin-header .gm-admin-square-action,
.db-header.gm-admin-header .gm-admin-menu-toggle,
.db-header.gm-admin-header .gm-admin-profile-button {
    border: 1px solid var(--gm-admin-line) !important;
    background: #ffffff !important;
    box-shadow: 0 10px 26px rgba(31, 31, 57, 0.06) !important;
}

.db-header.gm-admin-header .gm-admin-branch-button,
.db-header.gm-admin-header .gm-admin-profile-button {
    border-radius: 17px !important;
}

.db-header.gm-admin-header .gm-admin-branch-button {
    min-height: 46px !important;
    min-width: 176px;
}

.db-header.gm-admin-header .gm-admin-square-action,
.db-header.gm-admin-header .gm-admin-menu-toggle {
    height: 44px !important;
    min-width: 44px !important;
    border-radius: 14px !important;
    color: var(--gm-admin-red) !important;
}

.db-header.gm-admin-header .gm-admin-profile-button {
    min-height: 48px !important;
    padding: 0.34rem 0.72rem !important;
}

.db-header.gm-admin-header .dropdown-list {
    border: 1px solid var(--gm-admin-line) !important;
    border-radius: 18px !important;
    background: rgba(255, 255, 255, 0.98) !important;
    box-shadow: 0 24px 64px rgba(31, 31, 57, 0.14) !important;
}

.db-card {
    overflow: hidden;
    border: 1px solid rgba(226, 232, 240, 0.84) !important;
    border-radius: 22px !important;
    background: rgba(255, 255, 255, 0.985) !important;
    box-shadow: 0 18px 56px rgba(31, 31, 57, 0.055) !important;
}

.db-card-header {
    min-height: 72px !important;
    gap: 1rem !important;
    border-bottom: 1px solid var(--gm-admin-line) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 252, 0.8)),
        radial-gradient(circle at 100% 0, rgba(185, 28, 28, 0.035), transparent 18rem) !important;
}

.db-card-title {
    color: var(--gm-admin-text) !important;
    font-size: clamp(1.05rem, 1vw, 1.25rem) !important;
    font-weight: 900 !important;
    letter-spacing: -0.01em !important;
}

.db-card-body {
    padding: clamp(1rem, 1.5vw, 1.55rem) !important;
}

.db-main .row {
    row-gap: 1.35rem;
}

.db-main .row > .col-12 > .p-4.rounded-lg.flex.items-center.gap-4,
.db-main .row > .col-12 > .flex.items-center.gap-4.p-4.rounded-lg {
    min-height: 118px;
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 22px !important;
    box-shadow: 0 18px 42px rgba(31, 31, 57, 0.12) !important;
}

.db-main .row > .col-12 > .flex.items-center.gap-4.p-4.rounded-lg.shadow-xs.bg-white {
    border: 1px solid var(--gm-admin-line);
    background: #ffffff !important;
    box-shadow: 0 12px 30px rgba(31, 31, 57, 0.055) !important;
}

.db-main .row > .col-12 > .flex.items-center.gap-4.p-4.rounded-lg.shadow-xs.bg-white h3 {
    color: var(--gm-admin-subtle) !important;
    font-weight: 750 !important;
}

.db-main .row > .col-12 > .flex.items-center.gap-4.p-4.rounded-lg.shadow-xs.bg-white h4 {
    color: var(--gm-admin-text) !important;
}

.gm-dashboard-empty-chart {
    display: flex;
    min-height: 188px;
    width: 100%;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.42rem;
    border: 1px dashed rgba(148, 163, 184, 0.42);
    border-radius: 18px;
    background:
        linear-gradient(135deg, rgba(248, 250, 252, 0.94), rgba(255, 255, 255, 0.98)),
        radial-gradient(circle at 50% 0, rgba(185, 28, 28, 0.045), transparent 15rem);
    color: var(--gm-admin-subtle);
    text-align: center;
}

.gm-dashboard-empty-chart-tall {
    min-height: 270px;
}

.gm-dashboard-empty-chart-icon {
    display: inline-flex;
    width: 44px;
    height: 44px;
    align-items: center;
    justify-content: center;
    border-radius: 14px;
    background: var(--gm-admin-red-soft);
    color: var(--gm-admin-red);
}

.gm-dashboard-empty-chart strong {
    color: var(--gm-admin-text);
    font-size: 0.96rem;
    font-weight: 900;
}

.gm-dashboard-empty-chart small {
    color: var(--gm-admin-subtle);
    font-size: 0.8rem;
}

.custom-datepicker {
    align-items: center !important;
}

.custom-datepicker > button:first-of-type {
    height: 44px !important;
    width: min(250px, 42vw) !important;
    border: 1px solid var(--gm-admin-line) !important;
    border-radius: 14px !important;
    background: #ffffff !important;
    box-shadow: 0 8px 24px rgba(31, 31, 57, 0.045) !important;
}

.custom-datepicker > button:last-of-type {
    width: 44px !important;
    height: 44px !important;
    border-radius: 14px !important;
    background: var(--gm-admin-red-soft) !important;
    color: var(--gm-admin-red) !important;
}

.custom-datepicker > div {
    border-radius: 16px !important;
    box-shadow: 0 22px 54px rgba(31, 31, 57, 0.16) !important;
}

.db-main input:not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="hidden"]):not(.chat-footer-data-input),
.db-main select,
.db-main textarea,
.db-main .db-field-control,
.db-main .db-multiple-field {
    min-height: 44px !important;
    border: 1px solid var(--gm-admin-line) !important;
    border-radius: 14px !important;
    background-color: #ffffff !important;
    color: var(--gm-admin-text) !important;
    box-shadow: inset 0 1px 0 rgba(31, 31, 57, 0.02) !important;
    outline: none !important;
}

.db-main input:not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="hidden"]):not(.chat-footer-data-input):focus,
.db-main select:focus,
.db-main textarea:focus,
.db-main .db-field-control:focus,
.db-main .db-field-control:focus-within,
.db-main .db-multiple-field:focus-within {
    border-color: rgba(185, 28, 28, 0.42) !important;
    box-shadow: 0 0 0 4px rgba(185, 28, 28, 0.075), 0 12px 28px rgba(31, 31, 57, 0.065) !important;
}

.db-main select,
.db-main select.db-field-control {
    appearance: none !important;
    background-image: url("data:image/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23747792' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") !important;
    background-position: right 1rem center !important;
    background-repeat: no-repeat !important;
    background-size: 18px 18px !important;
    padding-right: 3rem !important;
}

.db-main select option {
    background: #ffffff;
    color: var(--gm-admin-text);
}

.db-field-title {
    margin-bottom: 0.48rem !important;
    color: #5f647d !important;
    font-size: 0.75rem !important;
    font-weight: 900 !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
}

.db-main input[type="radio"],
.db-main input[type="checkbox"] {
    accent-color: var(--gm-admin-red);
}

.db-field-radio {
    border: 1px solid transparent !important;
    border-radius: 13px !important;
    background: #f7f8fc !important;
    color: var(--gm-admin-subtle);
    transition: border-color 160ms ease, background 160ms ease, box-shadow 160ms ease, color 160ms ease;
}

.db-field-radio.active,
.active-group .active {
    border-color: rgba(185, 28, 28, 0.18) !important;
    background: var(--gm-admin-red-soft) !important;
    color: var(--gm-admin-red) !important;
    box-shadow: 0 8px 22px rgba(185, 28, 28, 0.06);
}

.custom-radio-span {
    border-color: rgba(116, 121, 147, 0.34) !important;
    background: #ffffff !important;
}

.custom-radio-field:checked + .custom-radio-span {
    border-color: var(--gm-admin-red) !important;
    background: #ffffff !important;
}

.custom-radio-field:checked + .custom-radio-span::after {
    background: var(--gm-admin-red) !important;
}

.db-btn,
.db-btn-fill.primary,
.db-btn.bg-primary,
.db-main button.bg-primary,
.db-main a.bg-primary {
    min-height: 42px !important;
    border-radius: 14px !important;
    font-weight: 850 !important;
    letter-spacing: 0 !important;
    box-shadow: 0 14px 30px rgba(185, 28, 28, 0.14) !important;
}

.db-btn.bg-primary,
.db-btn-fill.primary,
.db-main button.bg-primary,
.db-main a.bg-primary {
    background: linear-gradient(135deg, var(--gm-admin-red), var(--gm-admin-red-strong)) !important;
    color: #ffffff !important;
}

.db-btn:hover,
.db-btn-fill.primary:hover,
.db-btn.bg-primary:hover,
.db-main button.bg-primary:hover,
.db-main a.bg-primary:hover {
    transform: translateY(-1px);
    box-shadow: 0 18px 38px rgba(185, 28, 28, 0.2) !important;
}

.db-btn-outline,
.modal-btn,
.db-table-action {
    display: inline-flex !important;
    min-height: 36px !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0.42rem !important;
    border: 1px solid var(--gm-admin-line) !important;
    border-radius: 12px !important;
    background: #ffffff !important;
    padding: 0.45rem 0.78rem !important;
    color: var(--gm-admin-text) !important;
    font-weight: 800 !important;
    line-height: 1.1 !important;
    box-shadow: 0 8px 18px rgba(31, 31, 57, 0.045) !important;
}

.db-btn-outline.sm {
    min-height: 34px !important;
    border-radius: 11px !important;
    padding: 0.4rem 0.7rem !important;
    font-size: 0.82rem !important;
}

.db-btn-outline i,
.db-table-action i,
.modal-btn i {
    min-width: auto !important;
    height: auto !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    padding: 0 !important;
    font-size: 0.9rem !important;
    line-height: 1 !important;
}

.db-btn-outline.primary,
.db-table-action.view {
    border-color: rgba(37, 99, 235, 0.14) !important;
    background: rgba(37, 99, 235, 0.055) !important;
    color: #2563eb !important;
}

.db-btn-outline.success,
.db-table-action.edit {
    border-color: rgba(22, 163, 74, 0.16) !important;
    background: rgba(22, 163, 74, 0.07) !important;
    color: #16a34a !important;
}

.db-btn-outline.danger,
.db-table-action.delete {
    border-color: rgba(220, 38, 38, 0.16) !important;
    background: rgba(220, 38, 38, 0.07) !important;
    color: #dc2626 !important;
}

.db-btn-outline:hover,
.modal-btn:hover,
.db-table-action:hover {
    transform: translateY(-1px);
    box-shadow: 0 14px 28px rgba(31, 31, 57, 0.08) !important;
}

.db-table-responsive {
    overflow: hidden !important;
    border: 1px solid var(--gm-admin-line) !important;
    border-radius: 18px !important;
    background: #ffffff !important;
    box-shadow: 0 14px 34px rgba(31, 31, 57, 0.045) !important;
}

.db-table,
.db-card table:not(.db-table) {
    width: 100%;
    border-collapse: separate !important;
    border-spacing: 0 !important;
}

.db-table-head,
.db-card table:not(.db-table) thead {
    border: 0 !important;
    background: linear-gradient(180deg, #f8fafc, #f3f5fa) !important;
}

.db-table-head-th,
.db-card table:not(.db-table) th {
    border-bottom: 1px solid var(--gm-admin-line) !important;
    padding: 0.92rem 1.05rem !important;
    color: #5f647d !important;
    font-size: 0.74rem !important;
    font-weight: 900 !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
}

.db-table-body-tr,
.db-card table:not(.db-table) tbody tr {
    border-bottom: 1px solid var(--gm-admin-soft-line) !important;
    transition: background 140ms ease;
}

.db-table-body-tr:hover,
.db-card table:not(.db-table) tbody tr:hover {
    background: rgba(248, 250, 252, 0.82) !important;
}

.db-table-body-td,
.db-card table:not(.db-table) td {
    padding: 0.92rem 1.05rem !important;
    color: #30334f !important;
    font-size: 0.92rem !important;
    line-height: 1.35 !important;
    vertical-align: middle !important;
}

.db-table-badge,
.badge,
.db-main .bg-green-100,
.db-main .bg-red-100 {
    border-radius: 999px !important;
    padding: 0.42rem 0.78rem !important;
    font-weight: 900 !important;
}

.db-card a[href*="page="].relative.inline-flex,
.db-card a[href*="per_page="].relative.inline-flex {
    min-height: 40px !important;
    border: 1px solid var(--gm-admin-line) !important;
    background: #ffffff !important;
    color: var(--gm-admin-subtle) !important;
    font-weight: 850 !important;
    box-shadow: none !important;
}

.db-card a[href*="page="].relative.inline-flex.bg-blue-50,
.db-card a[href*="per_page="].relative.inline-flex.bg-blue-50 {
    border-color: rgba(185, 28, 28, 0.24) !important;
    background: var(--gm-admin-red-soft) !important;
    color: var(--gm-admin-red) !important;
}

.db-card a[href*="page="].relative.inline-flex.pointer-events-none,
.db-card a[href*="per_page="].relative.inline-flex.pointer-events-none {
    color: #c5cad6 !important;
}

.db-card-filter {
    min-height: 54px;
    gap: 0.72rem !important;
}

.db-card-filter-btn {
    min-height: 42px !important;
    border: 1px solid var(--gm-admin-line) !important;
    border-radius: 14px !important;
    background: #ffffff !important;
    color: var(--gm-admin-text) !important;
    font-weight: 820 !important;
    box-shadow: 0 8px 20px rgba(31, 31, 57, 0.045) !important;
}

.db-card-filter-dropdown-list,
.dropdown-list {
    border: 1px solid var(--gm-admin-line) !important;
    border-radius: 16px !important;
    background: #ffffff !important;
    box-shadow: 0 18px 42px rgba(31, 31, 57, 0.13) !important;
}

.db-card-filter-dropdown-menu:hover,
.dropdown-list a:hover,
.dropdown-list button:hover {
    background: var(--gm-admin-red-soft) !important;
    color: var(--gm-admin-red) !important;
}

.db-card-body > ul.grid > li {
    overflow: hidden;
    border-color: var(--gm-admin-line) !important;
    border-radius: 16px !important;
    background: #ffffff;
    box-shadow: 0 10px 24px rgba(31, 31, 57, 0.045);
}

.db-card-body > ul.grid > li img {
    object-fit: cover;
}

.db-card-body > ul.grid > li h4,
.db-card-body > ul.grid > li h5,
.db-card-body > ul.grid > li h6 {
    color: var(--gm-admin-text);
}

.db-card-body > ul.grid > li p {
    font-weight: 900;
}

.db-pos-cartDiv {
    border: 1px solid var(--gm-admin-line) !important;
    border-radius: 24px 0 0 24px !important;
    box-shadow: -18px 0 64px rgba(31, 31, 57, 0.14) !important;
}

.db-pos-cartDiv .p-3.pt-2.rounded-lg,
.db-pos-cartDiv .p-3.rounded-lg {
    border-color: var(--gm-admin-line) !important;
    border-radius: 18px !important;
    background: #ffffff !important;
    box-shadow: 0 10px 24px rgba(31, 31, 57, 0.045);
}

.db-pos-cartDiv thead,
.db-pos-cartDiv table thead {
    background: #f7f8fc !important;
}

.db-pos-cartDiv th {
    padding: 0.7rem 0.8rem !important;
    color: #5f647d !important;
    font-weight: 900 !important;
    letter-spacing: 0.03em !important;
}

.db-pos-cartDiv td {
    padding: 0.8rem !important;
}

.db-pos-cartDiv .w-10.h-10.bg-primary {
    border-radius: 14px !important;
    box-shadow: 0 12px 24px rgba(185, 28, 28, 0.17) !important;
}

.db-pos-cartBtn {
    z-index: 60 !important;
}

.db-message-list {
    padding: 0 0.75rem 0.85rem !important;
}

.db-message-list li {
    margin-bottom: 0.35rem;
    border-radius: 15px;
}

.db-message-list li.active,
.db-message-list li:hover {
    background: var(--gm-admin-red-soft) !important;
}

.db-message-list img,
.chat-avatar {
    border-radius: 12px !important;
}

.chat-list.backend {
    min-height: 48vh;
    padding: 1.1rem !important;
    background:
        linear-gradient(180deg, #ffffff, #fbfbfd),
        radial-gradient(circle at 20% 0, rgba(185, 28, 28, 0.04), transparent 16rem) !important;
}

.chat-footer {
    margin: 0.9rem !important;
}

.chat-footer-data {
    min-height: 46px !important;
}

.db-main img[alt="Нет доступных данных"],
.db-main img[alt="Ничего не найдено"] {
    max-width: 250px;
    opacity: 0.86;
    filter: saturate(0.76);
}

#cart {
    z-index: 240 !important;
}

#cart > div {
    border-left: 1px solid var(--gm-admin-line);
    box-shadow: -22px 0 70px rgba(31, 31, 57, 0.18) !important;
}

@media (max-width: 767px) {
    .db-sidebar {
        width: min(86vw, 310px) !important;
    }

    .db-sidebar-nav-menu {
        min-height: 44px !important;
    }

    .db-card {
        border-radius: 18px !important;
    }

    .db-card-header {
        min-height: auto !important;
        padding: 1rem !important;
    }

    .db-card-body {
        padding: 1rem !important;
    }

    .custom-datepicker > button:first-of-type {
        width: min(220px, 58vw) !important;
    }

    .db-pos-cartDiv {
        border-radius: 0 !important;
    }
}

/* POS terminal: restore the original workstation layout. */
.db-main:has(#pos-cart) {
    --gm-pos-cart-width: clamp(360px, 30vw, 390px);
    --gm-pos-gap: 24px;
}

.admin-pos-search {
    min-height: 44px !important;
    border-radius: 16px !important;
    overflow: hidden;
    box-shadow: 0 10px 26px rgba(31, 31, 57, 0.045);
}

.admin-pos-search input {
    border: 0 !important;
    box-shadow: none !important;
}

.admin-pos-search button[type="submit"] {
    width: 52px !important;
}

.admin-pos-categories .menu-slides {
    overflow-x: auto;
    padding-bottom: 0.2rem;
}

.admin-pos-categories button > span {
    width: 136px !important;
    min-height: 116px !important;
    border: 1px solid transparent !important;
    border-bottom-width: 3px !important;
    border-radius: 18px !important;
    box-shadow: 0 14px 30px rgba(31, 31, 57, 0.055);
}

.admin-pos-categories .pos-group > span,
.admin-pos-categories button:hover > span {
    border-color: rgba(185, 28, 28, 0.22) !important;
    border-bottom-color: rgb(var(--primary)) !important;
    background: rgba(185, 28, 28, 0.06) !important;
}

.admin-pos-categories img {
    width: 54px !important;
    height: 42px !important;
    object-fit: contain;
}

.admin-pos-items-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)) !important;
    gap: 18px !important;
}

.admin-pos-items-grid .pos-card-height {
    min-height: 254px !important;
    overflow: hidden;
    border-radius: 20px !important;
    border-color: var(--gm-admin-line) !important;
    background: #ffffff !important;
    box-shadow: 0 14px 30px rgba(31, 31, 57, 0.06);
}

.admin-pos-items-grid .pos-card-height:hover {
    transform: translateY(-2px);
    box-shadow: 0 18px 42px rgba(31, 31, 57, 0.1);
}

.admin-pos-items-grid .pos-image-height {
    height: 160px !important;
    object-fit: cover;
}

.admin-pos-items-grid .pos-add-button {
    min-height: 34px !important;
    white-space: nowrap;
    border: 1px solid rgba(185, 28, 28, 0.08) !important;
    color: rgb(var(--primary)) !important;
    background: #ffffff !important;
    box-shadow: 0 10px 22px rgba(31, 31, 57, 0.06) !important;
}

.admin-pos-items-grid .pos-add-button i,
.admin-pos-items-grid .pos-add-button span {
    color: rgb(var(--primary)) !important;
    -webkit-text-fill-color: rgb(var(--primary)) !important;
}

.admin-pos-items-grid .pos-add-button:hover {
    transform: translateY(-1px);
    border-color: rgb(var(--primary)) !important;
    background: rgb(var(--primary)) !important;
    box-shadow: 0 14px 28px rgb(var(--primary) / 0.2) !important;
}

.admin-pos-items-grid .pos-add-button:hover i,
.admin-pos-items-grid .pos-add-button:hover span {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

#pos-cart.admin-pos-cart {
    color: #24243f;
}

#pos-cart.admin-pos-cart .p-4:first-child {
    padding-bottom: 0.85rem !important;
}

#pos-cart.admin-pos-cart #token {
    height: 42px !important;
    margin-bottom: 0.8rem !important;
    font-size: 0.82rem !important;
    font-weight: 600;
}

#pos-cart.admin-pos-cart #token::placeholder {
    color: #9a9db8;
    font-weight: 500;
}

#pos-cart.admin-pos-cart .db-field-radio-group {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 0.45rem !important;
}

#pos-cart.admin-pos-cart .db-field-radio {
    min-height: 54px !important;
    flex: 1 1 0 !important;
    justify-content: center;
    padding: 0.65rem 0.55rem !important;
}

#pos-cart.admin-pos-cart .db-field-label {
    font-size: 0.82rem !important;
    line-height: 1.2 !important;
    white-space: normal;
}

#pos-cart.admin-pos-cart table {
    table-layout: fixed;
    width: 100% !important;
}

#pos-cart.admin-pos-cart thead {
    background: #f7f8fc !important;
}

#pos-cart.admin-pos-cart thead tr {
    height: 42px !important;
}

#pos-cart.admin-pos-cart th {
    color: #6f728f !important;
    font-size: 0.76rem !important;
    font-weight: 800 !important;
    letter-spacing: 0 !important;
}

#pos-cart.admin-pos-cart tbody tr {
    border-bottom: 1px solid #eef0f6;
}

#pos-cart.admin-pos-cart tbody td {
    padding-top: 0.85rem !important;
    padding-bottom: 0.85rem !important;
    border-bottom: 0 !important;
}

#pos-cart.admin-pos-cart th:first-child,
#pos-cart.admin-pos-cart td:first-child {
    width: 32px;
    padding-left: 0.65rem !important;
    padding-right: 0.2rem !important;
}

#pos-cart.admin-pos-cart th:nth-child(2),
#pos-cart.admin-pos-cart td:nth-child(2) {
    width: auto;
    padding-left: 0.45rem !important;
    padding-right: 0.35rem !important;
}

#pos-cart.admin-pos-cart th:nth-child(3),
#pos-cart.admin-pos-cart td:nth-child(3) {
    width: 94px;
    padding-left: 0.2rem !important;
    padding-right: 0.2rem !important;
    text-align: center !important;
}

#pos-cart.admin-pos-cart th:nth-child(4),
#pos-cart.admin-pos-cart td:nth-child(4) {
    width: 78px;
    padding-left: 0.15rem !important;
    padding-right: 0.65rem !important;
    text-align: right !important;
    white-space: nowrap;
}

#pos-cart.admin-pos-cart tbody td:first-child button {
    width: 26px;
    height: 26px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: rgba(251, 78, 78, 0.08);
}

#pos-cart.admin-pos-cart td:nth-child(2) h3,
#pos-cart.admin-pos-cart td:nth-child(2) p,
#pos-cart.admin-pos-cart td:nth-child(2) span {
    overflow-wrap: normal;
    word-break: normal;
}

#pos-cart.admin-pos-cart td:nth-child(2) h3 {
    margin-bottom: 0.22rem !important;
    color: #24243f !important;
    font-size: 0.78rem !important;
    line-height: 1.25 !important;
    font-weight: 800 !important;
}

#pos-cart.admin-pos-cart td:nth-child(2) p,
#pos-cart.admin-pos-cart td:nth-child(2) li,
#pos-cart.admin-pos-cart td:nth-child(2) span {
    color: #6f728f !important;
    font-size: 0.67rem !important;
    line-height: 1.22 !important;
    font-weight: 600 !important;
}

#pos-cart.admin-pos-cart td:nth-child(2) p {
    max-width: 12.5rem;
}

#pos-cart.admin-pos-cart td:nth-child(4) {
    color: #24243f !important;
    font-size: 0.78rem !important;
    font-weight: 800 !important;
}

#pos-cart.admin-pos-cart .indec-group {
    justify-content: center;
    gap: 0.12rem !important;
    width: 86px;
    min-height: 38px !important;
    padding: 0.12rem !important;
    box-shadow: 0 10px 24px rgba(31, 31, 57, 0.08);
}

#pos-cart.admin-pos-cart .indec-minus,
#pos-cart.admin-pos-cart .indec-plus {
    width: 27px !important;
    height: 27px !important;
    min-width: 27px !important;
    font-size: 0.72rem !important;
    box-shadow: 0 8px 16px rgb(var(--primary) / 0.15);
}

#pos-cart.admin-pos-cart .indec-value {
    width: 28px !important;
    min-width: 28px !important;
    height: 30px !important;
    font-size: 0.9rem !important;
    line-height: 30px !important;
}

#pos-cart.admin-pos-cart .admin-pos-discount-row {
    display: grid !important;
    grid-template-columns: 108px minmax(0, 1fr) 92px;
    width: 100%;
    height: 42px !important;
    gap: 0;
}

#pos-cart.admin-pos-cart .admin-pos-discount-row select,
#pos-cart.admin-pos-cart .admin-pos-discount-row input,
#pos-cart.admin-pos-cart .admin-pos-discount-row button {
    width: 100% !important;
    min-width: 0 !important;
    height: 42px !important;
    font-size: 0.78rem !important;
    font-weight: 700 !important;
}

#pos-cart.admin-pos-cart .admin-pos-discount-row select {
    padding-left: 0.8rem !important;
    padding-right: 1.45rem !important;
    border-radius: 16px 0 0 16px !important;
    background-color: #ffffff !important;
    background-image: linear-gradient(45deg, transparent 50%, #777a98 50%), linear-gradient(135deg, #777a98 50%, transparent 50%);
    background-position: calc(100% - 16px) 50%, calc(100% - 10px) 50%;
    background-repeat: no-repeat;
    background-size: 6px 6px, 6px 6px;
    color: #24243f !important;
}

#pos-cart.admin-pos-cart .admin-pos-discount-row input {
    padding-left: 0.7rem !important;
    padding-right: 0.7rem !important;
    color: #24243f !important;
    font-weight: 600 !important;
}

#pos-cart.admin-pos-cart .admin-pos-discount-row input::placeholder {
    color: #a3a6bd;
}

#pos-cart.admin-pos-cart .admin-pos-discount-row button {
    border-radius: 0 16px 16px 0 !important;
    background: #0c8fb5 !important;
    box-shadow: none !important;
}

#pos-cart.admin-pos-cart .admin-pos-discount-row button:hover {
    background: #08789c !important;
}

#pos-cart.admin-pos-cart ul.flex.flex-col {
    gap: 0.45rem !important;
    margin-top: 1rem !important;
    margin-bottom: 1.2rem !important;
}

#pos-cart.admin-pos-cart ul.flex.flex-col li span {
    font-size: 0.86rem !important;
    line-height: 1.3 !important;
}

#pos-cart.admin-pos-cart ul.flex.flex-col li:last-child span {
    font-size: 0.98rem !important;
    font-weight: 900 !important;
}

#pos-cart.admin-pos-cart .p-4 > .flex.items-center.justify-center.gap-6 {
    gap: 0.75rem !important;
}

#pos-cart.admin-pos-cart .p-4 > .flex.items-center.justify-center.gap-6 button {
    min-height: 48px !important;
    border-radius: 18px !important;
    font-size: 0.94rem !important;
    font-weight: 900 !important;
    box-shadow: 0 16px 32px rgba(31, 31, 57, 0.08);
}

#pos-cart.admin-pos-cart .p-4 > .flex.items-center.justify-center.gap-6 button:hover {
    transform: translateY(-1px);
    filter: saturate(1.05);
}

.pos-item-choice-modal {
    z-index: 260 !important;
    background: rgba(10, 10, 18, 0.62) !important;
}

.pos-item-choice-modal.active .pos-item-choice-dialog {
    width: min(92vw, 980px) !important;
    max-width: min(92vw, 980px) !important;
    border-radius: 18px !important;
    box-shadow: 0 30px 70px rgba(15, 23, 42, 0.24) !important;
}

.pos-item-choice-modal .modal-header {
    padding: 1.25rem 1.5rem 0.75rem !important;
}

.pos-item-choice-modal .modal-body {
    padding: 0.75rem 1.5rem 1.5rem !important;
    max-height: calc(100dvh - 15rem) !important;
}

.pos-item-choice-modal .modal-header img {
    width: 92px !important;
    height: 92px !important;
}

.pos-item-choice-modal .modal-header h3 {
    font-size: 1.25rem !important;
    line-height: 1.55 !important;
}

.pos-item-choice-modal .modal-header p,
.pos-item-choice-modal .modal-body textarea::placeholder {
    color: #747899 !important;
}

.pos-item-choice-modal .size-tabs label,
.pos-item-choice-modal .extra,
.pos-item-choice-modal .addon {
    min-width: 180px !important;
    border-radius: 12px !important;
}

.pos-item-choice-modal .size-tabs label.active,
.pos-item-choice-modal .extra:has(input:checked),
.pos-item-choice-modal .addon.border-primary {
    background: #fff7f7 !important;
    border-color: var(--primary, #bd1f1f) !important;
}

.pos-item-choice-modal .addon-swiper .flex,
.pos-item-choice-modal .extra-swiper .flex,
.pos-item-choice-modal .size-tabs .flex {
    gap: 1rem !important;
}

.pos-item-choice-modal textarea {
    min-height: 74px !important;
}

.pos-item-choice-modal .bg-primary {
    box-shadow: 0 16px 34px rgba(189, 31, 31, 0.2) !important;
}

@media (min-width: 768px) {
    .db-main:has(#pos-cart) {
        overflow-x: hidden;
    }

    .admin-pos-catalog {
        width: calc(100% - var(--gm-pos-cart-width) - var(--gm-pos-gap)) !important;
        max-width: calc(100% - var(--gm-pos-cart-width) - var(--gm-pos-gap)) !important;
        padding-bottom: 1.5rem;
    }

    #pos-cart.admin-pos-cart {
        position: fixed !important;
        top: 84px !important;
        right: 20px !important;
        left: auto !important;
        width: var(--gm-pos-cart-width) !important;
        height: calc(100dvh - 104px) !important;
        max-height: calc(100dvh - 104px) !important;
        transform: none !important;
        z-index: 24 !important;
        border-radius: 24px !important;
        background: #ffffff !important;
    }

    #pos-cart.admin-pos-cart .max-h-\[calc\(100dvh_-_550px\)\] {
        max-height: calc(100dvh - 585px) !important;
        overflow-y: auto;
    }
}

@media (min-width: 1280px) {
    .db-main:has(#pos-cart) {
        --gm-pos-cart-width: 390px;
        --gm-pos-gap: 28px;
    }

    .admin-pos-items-grid {
        grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)) !important;
    }

    .admin-pos-items-grid .pos-card-height {
        min-height: 278px !important;
    }

    .admin-pos-items-grid .pos-image-height {
        height: 178px !important;
    }
}

@media (max-width: 767px) {
    .admin-pos-catalog {
        width: 100% !important;
        max-width: 100% !important;
    }

    .admin-pos-items-grid {
        grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)) !important;
        gap: 14px !important;
        padding-bottom: 4.25rem;
    }

    .admin-pos-items-grid .pos-image-height {
        height: 132px !important;
    }

    #pos-cart.admin-pos-cart {
        position: fixed !important;
        inset: 0 !important;
        width: 100vw !important;
        height: 100dvh !important;
        max-height: 100dvh !important;
        transform: translateX(105%) !important;
        z-index: 250 !important;
        border-radius: 0 !important;
        background: #ffffff !important;
    }

    #pos-cart.admin-pos-cart.active {
        transform: translateX(0) !important;
    }
}

/* Gurmeat admin production polish: tables, font, icons and dense controls. */
.db-main {
    --gm-admin-font: "Rubik", sans-serif;
    --gm-admin-table-border: #e5eaf3;
    --gm-admin-table-head: #f7f9fc;
    --gm-admin-table-row: #ffffff;
    --gm-admin-table-row-alt: #fbfcff;
    --gm-admin-table-text: #242640;
    --gm-admin-table-muted: #737894;
    font-family: var(--gm-admin-font) !important;
    color: var(--gm-admin-table-text);
}

.db-main :where(h1, h2, h3, h4, h5, h6, p, a, button, input, select, textarea, label, span, div, th, td):not(i):not([class^="lab-"]):not([class*=" lab-"]) {
    font-family: var(--gm-admin-font) !important;
}

.db-sidebar-nav-menu i[class*="lab-"] {
    width: 22px !important;
    min-width: 22px !important;
    color: currentColor;
    font-family: "Lab" !important;
    font-size: 1.05rem !important;
    line-height: 1 !important;
    text-align: center;
}

.db-sidebar-nav-menu:has(i[class*="lab-"]) {
    align-items: center !important;
}

.db-card {
    border: 1px solid var(--gm-admin-table-border) !important;
    border-radius: 24px !important;
    background: #ffffff !important;
    box-shadow: 0 24px 70px rgba(34, 36, 61, 0.065) !important;
}

.db-card-online {
    overflow: visible !important;
}

.db-card-header {
    gap: 1rem !important;
    padding: 1.15rem 1.35rem !important;
    border-bottom-color: var(--gm-admin-table-border) !important;
}

.db-card-title {
    color: var(--gm-admin-table-text) !important;
    font-size: clamp(1.05rem, 1.6vw, 1.35rem) !important;
    font-weight: 850 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
}

.db-card-filter {
    min-height: 48px !important;
    align-items: center !important;
    gap: 0.55rem !important;
    border: 1px solid rgba(225, 231, 241, 0.9) !important;
    border-radius: 18px !important;
    background: rgba(248, 250, 252, 0.74) !important;
    padding: 0.25rem !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.85) !important;
}

.db-card-filter-btn {
    min-height: 42px !important;
    border: 1px solid var(--gm-admin-table-border) !important;
    border-radius: 15px !important;
    background: #ffffff !important;
    padding: 0.58rem 0.9rem !important;
    color: var(--gm-admin-table-text) !important;
    font-size: 0.9rem !important;
    font-weight: 800 !important;
    letter-spacing: 0 !important;
    box-shadow: 0 10px 24px rgba(34, 36, 61, 0.05) !important;
}

.db-card-filter-btn:hover,
.db-card-filter-btn:focus-visible {
    border-color: rgba(185, 28, 28, 0.2) !important;
    background: #fffafa !important;
    color: var(--gm-admin-red, #b91c1c) !important;
}

.db-card-filter-dropdown-list,
.dropdown-list {
    overflow: hidden !important;
    border: 1px solid var(--gm-admin-table-border) !important;
    border-radius: 16px !important;
    background: #ffffff !important;
    box-shadow: 0 24px 58px rgba(34, 36, 61, 0.16) !important;
}

.db-card-filter-dropdown-menu {
    min-height: 42px !important;
    align-items: center !important;
    padding: 0.7rem 0.9rem !important;
    color: var(--gm-admin-table-text) !important;
    font-weight: 750 !important;
}

.db-table-responsive,
.db-card table:not(.db-table) {
    overflow-x: auto !important;
    overflow-y: visible !important;
    border: 1px solid var(--gm-admin-table-border) !important;
    border-radius: 22px !important;
    background: #ffffff !important;
    box-shadow: 0 18px 48px rgba(34, 36, 61, 0.055) !important;
}

.db-table,
.db-card table:not(.db-table) {
    min-width: 720px !important;
    width: 100% !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    background: #ffffff !important;
}

.db-table-head,
.db-card table:not(.db-table) thead {
    background: linear-gradient(180deg, #fbfcff 0%, var(--gm-admin-table-head) 100%) !important;
}

.db-table-head-th,
.db-card table:not(.db-table) th {
    border-bottom: 1px solid var(--gm-admin-table-border) !important;
    padding: 0.92rem 1rem !important;
    color: #626883 !important;
    font-size: 0.74rem !important;
    font-weight: 850 !important;
    letter-spacing: 0.045em !important;
    line-height: 1.1 !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
}

.db-table-body-tr,
.db-card table:not(.db-table) tbody tr {
    background: var(--gm-admin-table-row) !important;
    border-bottom: 1px solid rgba(229, 234, 243, 0.78) !important;
    transition: background 140ms ease, box-shadow 140ms ease;
}

.db-table.stripe .db-table-body-tr:nth-child(odd),
.db-card table:not(.db-table) tbody tr:nth-child(odd) {
    background: var(--gm-admin-table-row-alt) !important;
}

.db-table-body-tr:hover,
.db-card table:not(.db-table) tbody tr:hover {
    background: #fffafa !important;
    box-shadow: inset 3px 0 0 var(--gm-admin-red, #b91c1c) !important;
}

.db-table-body-td,
.db-card table:not(.db-table) td {
    border-bottom: 1px solid rgba(229, 234, 243, 0.78) !important;
    padding: 1rem !important;
    color: var(--gm-admin-table-text) !important;
    font-size: 0.92rem !important;
    font-weight: 650 !important;
    line-height: 1.35 !important;
    vertical-align: middle !important;
}

.db-table-body-tr:last-child .db-table-body-td,
.db-card table:not(.db-table) tbody tr:last-child td {
    border-bottom: 0 !important;
}

.db-table-badge,
.db-main .badge,
.db-main .bg-green-100,
.db-main .bg-red-100,
.db-main .bg-yellow-100,
.db-main .bg-blue-100 {
    display: inline-flex !important;
    min-height: 31px !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 999px !important;
    padding: 0.38rem 0.78rem !important;
    font-size: 0.82rem !important;
    font-weight: 850 !important;
    letter-spacing: 0 !important;
    line-height: 1 !important;
}

.db-main .bg-green-100 {
    background: #dcfce7 !important;
    color: #16a34a !important;
}

.db-main .bg-red-100 {
    background: #fee2e2 !important;
    color: #dc2626 !important;
}

.db-table-action {
    display: inline-flex !important;
    min-height: 38px !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0.42rem !important;
    border: 1px solid var(--gm-admin-table-border) !important;
    border-radius: 14px !important;
    background: #ffffff !important;
    padding: 0.54rem 0.72rem !important;
    color: var(--gm-admin-table-text) !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    box-shadow: 0 10px 22px rgba(34, 36, 61, 0.045) !important;
}

.db-table-action i {
    width: 1rem !important;
    min-width: 1rem !important;
    height: 1rem !important;
    margin: 0 !important;
    border: 0 !important;
    background: transparent !important;
    padding: 0 !important;
    font-size: 0.92rem !important;
    line-height: 1 !important;
}

.db-table-action.view {
    border-color: #d7e3ff !important;
    background: #f3f7ff !important;
    color: #2563eb !important;
}

.db-table-action.edit {
    border-color: #cfeedd !important;
    background: #f3fbf6 !important;
    color: #16a34a !important;
}

.db-table-action.delete {
    border-color: #ffd5d5 !important;
    background: #fff4f4 !important;
    color: #ef4444 !important;
}

.db-table-action:hover {
    transform: translateY(-1px);
    box-shadow: 0 16px 34px rgba(34, 36, 61, 0.08) !important;
}

.db-card a[href*="page="].relative.inline-flex,
.db-card a[href*="per_page="].relative.inline-flex {
    min-height: 40px !important;
    border-color: var(--gm-admin-table-border) !important;
    background: #ffffff !important;
    color: #8b90a6 !important;
    font-weight: 820 !important;
}

.db-card a[href*="page="].relative.inline-flex.bg-blue-50,
.db-card a[href*="per_page="].relative.inline-flex.bg-blue-50 {
    border-color: rgba(185, 28, 28, 0.28) !important;
    background: #fff5f5 !important;
    color: var(--gm-admin-red, #b91c1c) !important;
}

.db-main input,
.db-main select,
.db-main textarea {
    font-family: var(--gm-admin-font) !important;
    border-color: #dbe2ee !important;
    border-radius: 14px !important;
    color: var(--gm-admin-table-text) !important;
}

.db-main input:focus,
.db-main select:focus,
.db-main textarea:focus {
    border-color: rgba(185, 28, 28, 0.34) !important;
    box-shadow: 0 0 0 4px rgba(185, 28, 28, 0.08) !important;
    outline: none !important;
}

@media (max-width: 767px) {
    .db-card-header {
        align-items: flex-start !important;
    }

    .db-card-filter {
        width: 100% !important;
    }

    .db-table,
    .db-card table:not(.db-table) {
        min-width: 640px !important;
    }
}

/* Admin typography correction: keep the original lighter template feel. */
:root {
    --admin-font: "Public Sans", sans-serif;
}

.db-main {
    --gm-admin-font: "Public Sans", sans-serif;
    font-family: var(--gm-admin-font) !important;
    font-weight: 400 !important;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

.db-main :where(h1, h2, h3, h4, h5, h6, p, a, button, input, select, textarea, label, span, div, th, td):not(i):not([class^="lab-"]):not([class*=" lab-"]) {
    font-family: var(--gm-admin-font) !important;
}

.db-main .font-medium {
    font-weight: 500 !important;
}

.db-main .font-semibold,
.db-main .font-bold {
    font-weight: 600 !important;
}

.db-main .font-extrabold,
.db-main .font-black {
    font-weight: 700 !important;
}

.db-sidebar-nav-menu span {
    font-weight: 500 !important;
    letter-spacing: 0 !important;
}

.db-sidebar-nav-item.active .db-sidebar-nav-menu span {
    font-weight: 500 !important;
}

.db-sidebar-nav-title {
    font-weight: 500 !important;
    letter-spacing: 0.14em !important;
}

.db-breadcrumb,
.db-breadcrumb span,
.db-breadcrumb a {
    font-weight: 400 !important;
}

.db-card-title {
    font-weight: 600 !important;
}

.db-card-filter-btn,
.db-btn,
.db-btn-fill.primary,
.db-btn.bg-primary,
.db-main button.bg-primary,
.db-main a.bg-primary,
.db-btn-outline,
.modal-btn {
    font-weight: 600 !important;
}

.db-table-head-th,
.db-card table:not(.db-table) th {
    font-weight: 600 !important;
    letter-spacing: 0.1em !important;
}

.db-table-body-td,
.db-card table:not(.db-table) td {
    font-weight: 500 !important;
}

.db-table-badge,
.db-main .badge,
.db-main .bg-green-100,
.db-main .bg-red-100,
.db-main .bg-yellow-100,
.db-main .bg-blue-100 {
    font-weight: 600 !important;
}

.db-table-action {
    font-weight: 500 !important;
}

.db-card a[href*="page="].relative.inline-flex,
.db-card a[href*="per_page="].relative.inline-flex {
    font-weight: 500 !important;
}

#pos-cart.admin-pos-cart,
#pos-cart.admin-pos-cart :where(h1, h2, h3, h4, h5, h6, p, a, button, input, select, textarea, label, span, div, th, td):not(i):not([class^="lab-"]):not([class*=" lab-"]) {
    font-family: var(--gm-admin-font) !important;
}

#pos-cart.admin-pos-cart .font-bold,
#pos-cart.admin-pos-cart .font-extrabold,
#pos-cart.admin-pos-cart .font-black {
    font-weight: 600 !important;
}

#pos-cart.admin-pos-cart th,
#pos-cart.admin-pos-cart .admin-pos-discount-row button,
#pos-cart.admin-pos-cart .p-4 > .flex.items-center.justify-center.gap-6 button {
    font-weight: 600 !important;
}

#pos-cart.admin-pos-cart td,
#pos-cart.admin-pos-cart .admin-pos-discount-row select,
#pos-cart.admin-pos-cart .admin-pos-discount-row input {
    font-weight: 500 !important;
}

/* Final admin interaction polish: clean pagination and POS quantity controls. */
.gm-admin-menu-toggle {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.gm-admin-menu-toggle i {
    font-family: "Lab" !important;
    color: currentColor !important;
    line-height: 1 !important;
}

.db-card nav[aria-label="Пагинация"] {
    display: inline-flex !important;
    align-items: center !important;
    gap: 0.35rem !important;
    border: 1px solid #e4e9f2 !important;
    border-radius: 18px !important;
    background: #ffffff !important;
    padding: 0.25rem !important;
    box-shadow: 0 16px 34px rgba(34, 36, 61, 0.06) !important;
}

.db-card nav[aria-label="Пагинация"] a.relative.inline-flex {
    min-width: 42px !important;
    min-height: 38px !important;
    align-items: center !important;
    justify-content: center !important;
    margin-left: 0 !important;
    border: 0 !important;
    border-radius: 13px !important;
    background: transparent !important;
    padding: 0.56rem 0.82rem !important;
    color: #8f96aa !important;
    font-size: 0.9rem !important;
    font-weight: 500 !important;
    line-height: 1 !important;
    box-shadow: none !important;
    transition: background 160ms ease, color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.db-card nav[aria-label="Пагинация"] a.relative.inline-flex:hover {
    background: #f7f9fc !important;
    color: #242640 !important;
}

.db-card nav[aria-label="Пагинация"] a.relative.inline-flex.bg-blue-50,
.db-card nav[aria-label="Пагинация"] a.relative.inline-flex.text-primary {
    background: #fff2f2 !important;
    color: var(--gm-admin-red, #b91c1c) !important;
    box-shadow: inset 0 0 0 1px rgba(185, 28, 28, 0.2), 0 8px 18px rgba(185, 28, 28, 0.08) !important;
}

.db-card nav[aria-label="Пагинация"] a.relative.inline-flex.pointer-events-none {
    background: #f8fafc !important;
    color: #c1c7d4 !important;
    opacity: 1 !important;
}

#pos-cart.admin-pos-cart {
    overflow: hidden !important;
    border: 1px solid #e5eaf3 !important;
    background-clip: padding-box !important;
}

#pos-cart.admin-pos-cart .max-h-\[calc\(100dvh_-_550px\)\],
#pos-cart.admin-pos-cart .max-h-\[calc\(100dvh_-_600px\)\] {
    overflow-y: auto !important;
}

#pos-cart.admin-pos-cart .indec-group {
    overflow: hidden !important;
    border: 1px solid #e0e7f1 !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    box-shadow: 0 14px 30px rgba(34, 36, 61, 0.08) !important;
}

#pos-cart.admin-pos-cart .indec-minus,
#pos-cart.admin-pos-cart .indec-plus {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 0 !important;
    background: var(--gm-admin-red, #b91c1c) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

#pos-cart.admin-pos-cart .indec-minus:hover,
#pos-cart.admin-pos-cart .indec-plus:hover {
    background: #991b1b !important;
    transform: translateY(-1px);
}

#pos-cart.admin-pos-cart .indec-minus i {
    width: auto !important;
    min-width: 0 !important;
    height: auto !important;
    color: #ffffff !important;
    font-family: "Lab" !important;
    font-size: 0.82rem !important;
    line-height: 1 !important;
}

#pos-cart.admin-pos-cart .indec-minus span,
#pos-cart.admin-pos-cart .indec-plus span {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-size: 1.05rem !important;
    font-weight: 500 !important;
    line-height: 1 !important;
    transform: translateY(-1px);
}

/* Internal fallback for remaining legacy utility icon classes. */
.db-main :where(.fa-solid, .fa-regular, .fa) {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-family: var(--gm-admin-font) !important;
    font-style: normal !important;
    line-height: 1 !important;
}

.db-main .fa-xmark::before,
.db-main .fa-circle-xmark::before {
    content: "×";
    font-size: 1.15em;
    font-weight: 500;
}

.db-main .fa-chevron-down::before,
.db-main .fa-circle-chevron-down::before {
    content: "⌄";
    font-size: 1.1em;
    font-weight: 500;
}

.db-main .fa-chevron-up::before {
    content: "⌃";
    font-size: 1.1em;
    font-weight: 500;
}

.db-main .fa-check::before {
    content: "✓";
    font-size: 0.95em;
    font-weight: 600;
}

.db-main .fa-qrcode::before {
    content: "QR";
    font-size: 0.72em;
    font-weight: 600;
    letter-spacing: 0;
}

.db-main .fa-file-lines::before {
    content: "≡";
    font-size: 1.1em;
    font-weight: 500;
}

.db-main .fa-map-location-dot::before {
    content: "⌖";
    font-size: 1.05em;
    font-weight: 500;
}

.db-main .fa-bold::before {
    content: "B";
    font-size: 0.9em;
    font-weight: 700;
}

.db-main .fa-italic::before {
    content: "I";
    font-size: 0.9em;
    font-style: italic;
    font-weight: 500;
}

.db-main .fa-underline::before {
    content: "U";
    font-size: 0.9em;
    font-weight: 500;
    text-decoration: underline;
}

.db-main .fa-list-ul::before {
    content: "☰";
    font-size: 0.9em;
    font-weight: 500;
}

.db-main .fa-link::before {
    content: "↗";
    font-size: 0.95em;
    font-weight: 500;
}

.pos-item-choice-modal .indec-group {
    overflow: hidden !important;
    border: 1px solid #e0e7f1 !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    box-shadow: 0 14px 30px rgba(34, 36, 61, 0.08) !important;
}

.pos-item-choice-modal .indec-minus,
.pos-item-choice-modal .indec-plus {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 0 !important;
    background: var(--gm-admin-red, #b91c1c) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

.pos-item-choice-modal .indec-minus:hover,
.pos-item-choice-modal .indec-plus:hover {
    background: #991b1b !important;
    transform: translateY(-1px);
}

.pos-item-choice-modal .indec-minus span,
.pos-item-choice-modal .indec-plus span {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-size: 1rem !important;
    font-weight: 500 !important;
    line-height: 1 !important;
    transform: translateY(-1px);
}

.pos-add-button:hover :where(i, span),
.db-product-cart.pos-add-button:hover :where(i, span) {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

@media (max-width: 767px) {
    .banner-swiper {
        border-radius: 18px !important;
        background: #08080d !important;
    }

    .banner-swiper img {
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        aspect-ratio: auto !important;
        object-fit: contain !important;
        object-position: center center !important;
    }

    .gm-mobile-tabbar {
        grid-template-columns: minmax(0, 0.92fr) minmax(0, 0.9fr) 62px minmax(76px, 1.24fr) minmax(0, 0.92fr) !important;
        gap: 1px !important;
    }

    .gm-mobile-tab {
        padding-left: 2px !important;
        padding-right: 2px !important;
    }

    .gm-mobile-tab span {
        max-width: none !important;
        overflow: visible !important;
        font-size: 10.5px !important;
        font-weight: 600 !important;
        line-height: 1.05 !important;
        text-overflow: clip !important;
        white-space: nowrap !important;
    }
}

@media (max-width: 374px) {
    .gm-mobile-tabbar {
        grid-template-columns: minmax(0, 0.86fr) minmax(0, 0.86fr) 56px minmax(68px, 1.28fr) minmax(0, 0.86fr) !important;
    }

    .gm-mobile-tab span {
        font-size: 9.5px !important;
    }
}

/* Admin dashboard final polish. Scoped so POS, settings and resource tables keep their own behavior. */
.db-header.gm-admin-header .gm-admin-profile-button--compact {
    width: 68px !important;
    min-width: 68px !important;
    max-width: 68px !important;
    min-height: 48px !important;
    justify-content: center !important;
    gap: 0.35rem !important;
    padding: 0.28rem 0.48rem !important;
}

.db-header.gm-admin-header .gm-admin-profile-button--compact .gm-admin-profile-avatar {
    width: 38px !important;
    height: 38px !important;
    border-radius: 13px !important;
}

.db-header.gm-admin-header .gm-admin-profile-button--compact .lab-arrow-down {
    margin-left: 0 !important;
    color: #6f738f !important;
}

.gm-admin-dashboard {
    display: flex;
    flex-direction: column;
    gap: 1.35rem;
}

.gm-dashboard-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.25rem;
    margin-bottom: 0.35rem;
    padding: clamp(1.2rem, 2vw, 1.7rem);
    border: 1px solid rgba(226, 232, 240, 0.92);
    border-radius: 26px;
    background:
        radial-gradient(circle at 100% 0%, rgba(185, 28, 28, 0.08), transparent 18rem),
        linear-gradient(135deg, #ffffff 0%, #fbfcff 100%);
    box-shadow: 0 22px 58px rgba(31, 31, 57, 0.055);
}

.gm-dashboard-kicker {
    display: inline-flex;
    margin-bottom: 0.35rem;
    color: var(--gm-admin-red, #b91c1c);
    font-size: 0.78rem;
    font-weight: 650;
    letter-spacing: 0.08em;
    line-height: 1;
    text-transform: uppercase;
}

.gm-dashboard-head h1 {
    margin: 0;
    color: #22243d;
    font-size: clamp(1.55rem, 2.4vw, 2.15rem);
    font-weight: 720;
    letter-spacing: 0;
    line-height: 1.15;
}

.gm-dashboard-head p {
    max-width: 420px;
    margin: 0;
    color: #747895;
    font-size: 0.95rem;
    font-weight: 400;
    line-height: 1.55;
    text-align: right;
}

.gm-dashboard-section {
    margin-bottom: 1.45rem !important;
}

.gm-dashboard-section-head {
    flex-wrap: wrap;
    gap: 0.85rem;
}

.gm-dashboard-section-title {
    margin: 0 !important;
    color: #22243d !important;
    font-size: clamp(1.15rem, 1.45vw, 1.45rem) !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
    line-height: 1.25 !important;
}

.gm-dashboard-overview-card {
    position: relative;
    min-height: 116px !important;
    overflow: hidden;
    border: 0 !important;
    border-radius: 24px !important;
    padding: 1.15rem !important;
    box-shadow: 0 22px 42px rgba(34, 36, 61, 0.12) !important;
}

.gm-dashboard-overview-card::after {
    content: "";
    position: absolute;
    inset: auto -2.4rem -3.1rem auto;
    width: 8rem;
    height: 8rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.12);
}

.gm-dashboard-overview-icon {
    position: relative;
    z-index: 1;
    width: 54px !important;
    height: 54px !important;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.72);
}

.gm-dashboard-overview-card h3,
.gm-dashboard-overview-card h4 {
    position: relative;
    z-index: 1;
    margin: 0;
    letter-spacing: 0 !important;
}

.gm-dashboard-overview-card h3 {
    font-size: 0.94rem !important;
    font-weight: 560 !important;
    line-height: 1.35 !important;
    opacity: 0.94;
}

.gm-dashboard-overview-card h4 {
    margin-top: 0.25rem;
    font-size: clamp(1.35rem, 2vw, 1.7rem) !important;
    font-weight: 720 !important;
    line-height: 1.15 !important;
}

.gm-dashboard-stat-card {
    min-height: 92px !important;
    border: 1px solid rgba(226, 232, 240, 0.86) !important;
    border-radius: 20px !important;
    background: rgba(255, 255, 255, 0.98) !important;
    box-shadow: 0 14px 34px rgba(31, 31, 57, 0.05) !important;
}

.gm-dashboard-stat-card h3 {
    color: #747895 !important;
    font-size: 0.82rem !important;
    font-weight: 470 !important;
    line-height: 1.35 !important;
}

.gm-dashboard-stat-card h4 {
    color: #22243d !important;
    font-size: 1.22rem !important;
    font-weight: 680 !important;
    line-height: 1.2 !important;
}

.gm-admin-dashboard .db-card {
    border-radius: 24px !important;
    box-shadow: 0 22px 58px rgba(31, 31, 57, 0.055) !important;
}

.gm-admin-dashboard .db-card-header {
    min-height: 66px !important;
    padding: 1.05rem 1.25rem !important;
}

.gm-admin-dashboard .db-card-title {
    font-size: clamp(1.05rem, 1.35vw, 1.24rem) !important;
    font-weight: 690 !important;
    letter-spacing: 0 !important;
}

.gm-admin-dashboard .db-card-body {
    padding: clamp(1rem, 1.45vw, 1.45rem) !important;
}

.gm-admin-dashboard .custom-datepicker > button:first-of-type {
    width: min(238px, 55vw) !important;
    font-weight: 450 !important;
}

@media (max-width: 767px) {
    .db-header.gm-admin-header .gm-admin-profile-button--compact {
        width: 58px !important;
        min-width: 58px !important;
        max-width: 58px !important;
    }

    .db-header.gm-admin-header .gm-admin-profile-button--compact .gm-admin-profile-avatar {
        width: 34px !important;
        height: 34px !important;
    }

    .gm-dashboard-head {
        align-items: flex-start;
        flex-direction: column;
        border-radius: 22px;
    }

    .gm-dashboard-head p {
        max-width: none;
        text-align: left;
    }

    .gm-admin-dashboard .custom-datepicker {
        width: 100%;
    }

    .gm-admin-dashboard .custom-datepicker > button:first-of-type {
        width: 100% !important;
    }
}

/* Storefront account center: profile, addresses and password. */
.gm-account-page {
    padding: clamp(1.35rem, 3vw, 2.4rem) 0 clamp(5rem, 6vw, 6.5rem);
    background:
        radial-gradient(circle at 15% 0%, rgba(185, 28, 28, 0.05), transparent 20rem),
        linear-gradient(180deg, #f2f2f1 0%, #eeeeed 100%);
}

.gm-account-container {
    max-width: 980px !important;
}

.gm-account-card {
    min-height: 520px;
    border: 1px solid rgba(226, 232, 240, 0.82);
    border-radius: 22px;
    background: rgba(255, 255, 255, 0.98);
    padding: clamp(1rem, 2vw, 1.45rem);
    box-shadow: 0 24px 60px rgba(31, 31, 57, 0.08);
}

.gm-account-tabs {
    display: flex;
    align-items: center;
    gap: clamp(0.55rem, 2vw, 1.45rem);
    margin-bottom: clamp(1.25rem, 2.5vw, 1.9rem);
    overflow-x: auto;
    scrollbar-width: none;
}

.gm-account-tabs::-webkit-scrollbar {
    display: none;
}

.gm-account-tab {
    display: inline-flex;
    min-height: 34px;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    padding: 0.45rem 0.8rem;
    color: #25263f;
    font-size: 0.92rem;
    font-weight: 460;
    line-height: 1;
    white-space: nowrap;
    transition: background-color 0.18s ease, color 0.18s ease, box-shadow 0.18s ease;
}

.gm-account-tab:hover,
.gm-account-tab.active {
    background: rgba(160, 42, 36, 0.18);
    color: #1f2036;
}

.gm-account-identity {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: clamp(1.6rem, 3vw, 2.3rem);
}

.gm-account-avatar {
    width: 76px;
    height: 76px;
    flex: 0 0 auto;
    overflow: hidden;
    border-radius: 999px;
    background: #eef2f5;
    box-shadow: 0 14px 26px rgba(31, 31, 57, 0.1);
}

.gm-account-avatar img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

.gm-account-identity-text h1 {
    margin: 0 0 0.18rem;
    color: #23243d;
    font-size: 1.08rem;
    font-weight: 620;
    line-height: 1.2;
}

.gm-account-identity-text p {
    margin: 0 0 0.35rem;
    color: #8092b5;
    font-size: 0.86rem;
    font-weight: 430;
    line-height: 1.35;
}

.gm-account-photo-action {
    display: inline-flex;
    width: fit-content;
    align-items: center;
    gap: 0.34rem;
    color: #18a75b;
    cursor: pointer;
    font-size: 0.82rem;
    font-weight: 470;
    line-height: 1.2;
}

.gm-account-photo-action input {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    opacity: 0;
    pointer-events: none;
}

.gm-account-form {
    width: 100%;
}

.gm-account-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.15rem 1.25rem;
}

.gm-account-grid--password {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.gm-account-field {
    min-width: 0;
}

.gm-account-field--wide {
    grid-column: 1 / -1;
}

.gm-account-field label {
    display: block;
    margin-bottom: 0.55rem;
    color: #24243f;
    font-size: 0.82rem;
    font-weight: 470;
    line-height: 1.25;
}

.gm-account-field input,
.gm-account-field textarea,
.gm-account-phone {
    width: 100%;
    min-height: 48px;
    border: 1px solid rgba(185, 191, 206, 0.72) !important;
    border-radius: 13px !important;
    background: #ffffff !important;
    color: #25263f;
    font-size: 0.92rem;
    font-weight: 420;
    line-height: 1.35;
    box-shadow: inset 0 1px 0 rgba(31, 31, 57, 0.02) !important;
    transition: border-color 0.18s ease, box-shadow 0.18s ease;
}

.gm-account-field input,
.gm-account-field textarea {
    padding: 0.75rem 1rem;
}

.gm-account-field input::placeholder,
.gm-account-field textarea::placeholder {
    color: #9da8c2;
}

.gm-account-field input:focus,
.gm-account-field textarea:focus,
.gm-account-phone:focus-within {
    border-color: rgba(160, 42, 36, 0.42) !important;
    box-shadow: 0 0 0 4px rgba(160, 42, 36, 0.08) !important;
}

.gm-account-field .invalid,
.gm-account-phone.invalid {
    border-color: #fb4e4e !important;
}

.gm-account-phone {
    display: flex;
    align-items: center;
    padding: 0 1rem;
}

.gm-account-phone input {
    min-height: 46px !important;
    border: 0 !important;
    background: transparent !important;
    padding: 0 0 0 0.75rem !important;
    box-shadow: none !important;
}

.gm-account-actions {
    grid-column: 1 / -1;
    display: flex;
    justify-content: flex-start;
    padding-top: 0.65rem;
}

.gm-account-submit,
.gm-account-secondary-action {
    display: inline-flex;
    min-height: 48px;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: #9f2a24;
    color: #ffffff;
    padding: 0 2.1rem;
    font-size: 0.92rem;
    font-weight: 620;
    line-height: 1;
    box-shadow: 0 14px 28px rgba(159, 42, 36, 0.18);
    transition: background-color 0.18s ease, transform 0.18s ease, box-shadow 0.18s ease;
}

.gm-account-submit:hover,
.gm-account-secondary-action:hover {
    background: #84211d;
    color: #ffffff;
    transform: translateY(-1px);
    box-shadow: 0 18px 34px rgba(159, 42, 36, 0.22);
}

.gm-account-section-title {
    max-width: 620px;
    margin-bottom: 1.55rem;
}

.gm-account-section-title h1,
.gm-account-address-head h1 {
    margin: 0 0 0.35rem;
    color: #23243d;
    font-size: clamp(1.35rem, 2.4vw, 1.9rem);
    font-weight: 680;
    line-height: 1.18;
}

.gm-account-section-title p,
.gm-account-address-head p {
    margin: 0;
    color: #747895;
    font-size: 0.92rem;
    font-weight: 400;
    line-height: 1.55;
}

.gm-account-address-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1.4rem;
}

.gm-account-secondary-action {
    gap: 0.5rem;
    flex: 0 0 auto;
    min-height: 42px;
    padding: 0 1.25rem;
}

.gm-account-address-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.gm-account-address-card {
    height: 100%;
    border: 1px solid rgba(226, 232, 240, 0.92);
    border-radius: 18px;
    background: #f8fafc;
    padding: 1rem;
}

.gm-account-icon-action {
    display: inline-flex;
    width: 30px;
    height: 30px;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: rgba(159, 42, 36, 0.1);
    color: #9f2a24;
}

.gm-account-icon-action.danger {
    background: rgba(251, 78, 78, 0.11);
    color: #dc2626;
}

.gm-account-empty {
    grid-column: 1 / -1;
    padding: 1.5rem;
    text-align: center;
}

@media (max-width: 767px) {
    .gm-account-page {
        padding-top: 1rem;
    }

    .gm-account-container {
        max-width: 390px !important;
        padding-left: 1rem !important;
        padding-right: 1rem !important;
    }

    .gm-account-card {
        min-height: auto;
        border-radius: 18px;
        padding: 0.9rem;
    }

    .gm-account-tabs {
        gap: 0.5rem;
        margin-bottom: 1.35rem;
    }

    .gm-account-tab {
        min-height: 34px;
        padding: 0.45rem 0.72rem;
        font-size: 0.84rem;
    }

    .gm-account-identity {
        align-items: center;
        margin-bottom: 1.55rem;
    }

    .gm-account-avatar {
        width: 64px;
        height: 64px;
    }

    .gm-account-grid,
    .gm-account-grid--password,
    .gm-account-address-list {
        grid-template-columns: 1fr;
        gap: 1rem;
    }

    .gm-account-field--wide {
        grid-column: auto;
    }

    .gm-account-actions {
        justify-content: stretch;
    }

    .gm-account-submit {
        width: 100%;
    }

    .gm-account-address-head {
        flex-direction: column;
    }

    .gm-account-secondary-action {
        width: 100%;
    }
}

/* Modern icon-only mobile navigation polish. */
@media (max-width: 1023px) {
    .gm-mobile-tabbar {
        left: 50% !important;
        right: auto !important;
        bottom: calc(9px + env(safe-area-inset-bottom)) !important;
        width: min(390px, calc(100% - 24px)) !important;
        min-height: 50px !important;
        grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
        gap: 1px !important;
        padding: 4px 6px !important;
        border: 1px solid rgba(226, 232, 240, 0.78) !important;
        border-radius: 24px !important;
        background:
            linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(255, 255, 255, 0.88)) !important;
        box-shadow:
            0 14px 34px rgba(19, 24, 48, 0.14),
            0 1px 6px rgba(19, 24, 48, 0.06),
            inset 0 1px 0 rgba(255, 255, 255, 0.82) !important;
        backdrop-filter: blur(24px) saturate(170%) !important;
        transform: translateX(-50%) !important;
    }

    .gm-mobile-tab {
        position: relative !important;
        min-height: 40px !important;
        padding: 0 !important;
        border-radius: 18px !important;
        color: #737792 !important;
        transition:
            color 180ms ease,
            background-color 180ms ease,
            box-shadow 180ms ease,
            transform 180ms ease !important;
    }

    .gm-mobile-tab::before {
        display: none !important;
    }

    .gm-mobile-tab:hover,
    .gm-mobile-tab:focus-visible {
        color: #23243d !important;
        background: transparent !important;
        outline: none !important;
    }

    .gm-mobile-tab.active {
        color: #b91c1c !important;
        background: transparent !important;
        box-shadow: none !important;
    }

    .gm-mobile-tab.active::before {
        opacity: 1;
        transform: scale(1);
        background: #b91c1c !important;
        box-shadow: none !important;
    }

    .gm-mobile-tab.active .gm-mobile-tab-icon {
        color: #b91c1c !important;
    }

    .gm-mobile-tab.active::after {
        display: none !important;
    }

    .gm-mobile-tab-icon {
        position: relative !important;
        z-index: 1 !important;
        width: 20.5px !important;
        height: 20.5px !important;
        color: currentColor !important;
    }

    .gm-mobile-cart-tab {
        width: auto !important;
        height: 40px !important;
        min-height: 40px !important;
        margin-top: 0 !important;
        border-radius: 18px !important;
        color: #737792 !important;
        background: transparent !important;
        box-shadow: none !important;
        flex-direction: column !important;
        gap: 5px !important;
        padding: 0 !important;
        justify-self: auto !important;
        font-size: 11px !important;
        font-weight: 700 !important;
        line-height: 1 !important;
    }

    .gm-mobile-cart-tab:hover,
    .gm-mobile-cart-tab:focus-visible {
        outline: none !important;
        transform: none !important;
        box-shadow: none !important;
    }

    .gm-mobile-cart-tab.active {
        color: #b91c1c !important;
        box-shadow: none !important;
    }

    .gm-mobile-cart-tab.active .gm-mobile-cart-icon {
        color: #b91c1c !important;
    }

    body.gm-cart-drawer-open .gm-mobile-tab.active {
        color: #737792 !important;
    }

    body.gm-cart-drawer-open .gm-mobile-tab.active::before,
    body.gm-cart-drawer-open .gm-mobile-tab.active::after {
        opacity: 0 !important;
        transform: scale(0.86) !important;
    }

    body.gm-cart-drawer-open .gm-mobile-cart-tab {
        box-shadow: none !important;
    }

    .gm-mobile-cart-icon {
        width: 23px !important;
        height: 23px !important;
        stroke: currentColor !important;
    }

    .gm-mobile-cart-dot {
        top: 0px !important;
        right: 10px !important;
        width: 8px !important;
        height: 8px !important;
        border: 1.5px solid #ffffff !important;
        background: #ffdb1f !important;
        box-shadow: none !important;
    }
}

@media (max-width: 374px) {
    .gm-mobile-tabbar {
        width: calc(100% - 18px) !important;
        min-height: 48px !important;
        grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
        border-radius: 22px !important;
    }

    .gm-mobile-tab {
        min-height: 38px !important;
    }

    .gm-mobile-tab-icon {
        width: 19.5px !important;
        height: 19.5px !important;
    }

    .gm-mobile-cart-tab {
        width: auto !important;
        height: 38px !important;
        margin-top: 0 !important;
    }
}

/* Mobile storefront final polish: cart, account and menu as app screens. */
@media (max-width: 767px) {
    body.gm-cart-drawer-open .ff-header {
        pointer-events: none !important;
    }

    body.gm-cart-drawer-open .gm-mobile-tabbar {
        z-index: 280 !important;
    }

    #cart.gm-storefront-cart-screen {
        z-index: 240 !important;
        background: #ffffff !important;
    }

    #cart > div.gm-storefront-cart-panel {
        position: fixed !important;
        inset: 0 !important;
        width: 100vw !important;
        max-width: none !important;
        height: 100dvh !important;
        border-radius: 0 !important;
        background:
            linear-gradient(180deg, #ffffff 0%, #ffffff 64%, #fafafa 100%) !important;
        box-shadow: none !important;
    }

    .gm-storefront-cart-header {
        display: grid !important;
        grid-template-columns: 46px minmax(0, 1fr) 46px !important;
        align-items: center !important;
        gap: 0.65rem !important;
        min-height: 82px !important;
        padding: 12px 18px 10px !important;
        border-bottom: 1px solid rgba(226, 232, 240, 0.78) !important;
        background: rgba(255, 255, 255, 0.94) !important;
        backdrop-filter: blur(18px) saturate(160%) !important;
    }

    .gm-storefront-cart-header h3 {
        margin: 0 !important;
        color: #20213a !important;
        font-size: 1.45rem !important;
        font-weight: 650 !important;
        line-height: 1.05 !important;
        letter-spacing: 0 !important;
    }

    .gm-storefront-cart-header p {
        margin: 0.28rem 0 0 !important;
        color: #747895 !important;
        font-size: 0.9rem !important;
        font-weight: 430 !important;
        line-height: 1.25 !important;
    }

    .gm-storefront-cart-back,
    .gm-storefront-cart-close {
        display: inline-flex !important;
        width: 42px !important;
        height: 42px !important;
        align-items: center !important;
        justify-content: center !important;
        border: 1px solid rgba(226, 232, 240, 0.86) !important;
        border-radius: 999px !important;
        background: #f7f8fb !important;
        color: #22233d !important;
        box-shadow: 0 8px 18px rgba(31, 31, 57, 0.06) !important;
    }

    .gm-storefront-cart-body {
        padding: 16px 18px 18px !important;
    }

    .gm-storefront-cart-body .mb-5 {
        display: grid !important;
        gap: 0.85rem !important;
        margin-bottom: 0 !important;
    }

    .gm-storefront-cart-body .mb-5 > div {
        margin: 0 !important;
        padding: 0.9rem !important;
        border: 1px solid rgba(226, 232, 240, 0.82) !important;
        border-radius: 22px !important;
        background: #ffffff !important;
        box-shadow: 0 14px 34px rgba(31, 31, 57, 0.06) !important;
    }

    .gm-storefront-cart-body img.w-16 {
        width: 74px !important;
        height: 74px !important;
        border-radius: 18px !important;
        object-fit: cover !important;
    }

    .gm-storefront-cart-body a.text-sm {
        color: #20213a !important;
        font-size: 1rem !important;
        font-weight: 570 !important;
        line-height: 1.2 !important;
        text-transform: none !important;
    }

    .gm-storefront-cart-body p,
    .gm-storefront-cart-body li,
    .gm-storefront-cart-body h3 {
        color: #747895 !important;
        font-weight: 430 !important;
        line-height: 1.4 !important;
    }

    .gm-storefront-cart-body h3.text-xs {
        color: #20213a !important;
        font-size: 0.94rem !important;
        font-weight: 620 !important;
    }

    .gm-storefront-cart-body .indec-group {
        min-width: 104px !important;
        min-height: 40px !important;
        justify-content: space-between !important;
        border: 1px solid rgba(226, 232, 240, 0.9) !important;
        border-radius: 999px !important;
        background: #ffffff !important;
        box-shadow: 0 10px 26px rgba(31, 31, 57, 0.08) !important;
    }

    .gm-storefront-cart-body .indec-minus,
    .gm-storefront-cart-body .indec-plus {
        width: 34px !important;
        height: 34px !important;
        border: 0 !important;
        background: #c61b1b !important;
        color: #ffffff !important;
        font-size: 1.05rem !important;
        line-height: 1 !important;
    }

    .gm-storefront-cart-body .indec-value {
        width: 32px !important;
        border: 0 !important;
        background: transparent !important;
        color: #20213a !important;
        font-size: 1.04rem !important;
        font-weight: 620 !important;
    }

    .gm-storefront-cart-footer {
        padding: 12px 18px calc(78px + env(safe-area-inset-bottom)) !important;
        border-top: 1px solid rgba(226, 232, 240, 0.78) !important;
        background: rgba(255, 255, 255, 0.96) !important;
        box-shadow: 0 -16px 40px rgba(31, 31, 57, 0.08) !important;
        backdrop-filter: blur(18px) saturate(160%) !important;
    }

    .gm-storefront-cart-total {
        min-height: 52px !important;
        border-color: rgba(226, 232, 240, 0.86) !important;
        border-radius: 18px !important;
        background: #f8fafc !important;
    }

    .gm-storefront-cart-total h3,
    .gm-storefront-cart-total h4 {
        font-size: 0.98rem !important;
        font-weight: 590 !important;
    }

    .gm-storefront-cart-checkout {
        min-height: 54px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        border-radius: 22px !important;
        background: #b91c1c !important;
        font-size: 1rem !important;
        font-weight: 650 !important;
        letter-spacing: 0 !important;
        box-shadow: 0 16px 30px rgba(185, 28, 28, 0.18) !important;
    }

    .gm-storefront-content section.mb-16.mt-8 {
        margin-top: 0.75rem !important;
        margin-bottom: 5.75rem !important;
    }

    .gm-storefront-content section.mb-16.mt-8 > .container {
        padding-left: 0.85rem !important;
        padding-right: 0.85rem !important;
    }

    .gm-storefront-content .menu-swiper {
        margin-bottom: 0.85rem !important;
        padding: 0 0 0.45rem !important;
    }

    .menu-slides {
        overflow: visible !important;
    }

    .menu-slides a {
        width: 92px !important;
        min-height: 82px !important;
        gap: 0.42rem !important;
        padding: 0.62rem 0.45rem !important;
        border-radius: 18px !important;
        box-shadow: 0 8px 22px rgba(31, 31, 57, 0.055) !important;
    }

    .menu-slides img {
        width: 42px !important;
        height: 42px !important;
    }

    .menu-slides h3 {
        display: -webkit-box !important;
        overflow: hidden !important;
        color: #292a45 !important;
        font-size: 0.72rem !important;
        font-weight: 560 !important;
        line-height: 1.12 !important;
        -webkit-box-orient: vertical !important;
        -webkit-line-clamp: 2 !important;
    }

    .menu-category-active h3 {
        color: #ffffff !important;
    }

    .veg-navs {
        flex-wrap: nowrap !important;
        gap: 0.5rem !important;
        margin-bottom: 1rem !important;
        overflow-x: auto !important;
        scrollbar-width: none !important;
    }

    .veg-navs::-webkit-scrollbar {
        display: none !important;
    }

    .veg-navs button {
        min-height: 36px !important;
        flex: 0 0 auto !important;
        padding: 0.35rem 0.75rem !important;
        gap: 0.5rem !important;
    }

    .veg-navs button img {
        height: 22px !important;
    }

    .veg-navs button span {
        font-size: 0.78rem !important;
        font-weight: 500 !important;
    }

    .product-card-grid {
        border-radius: 18px !important;
        box-shadow: 0 10px 28px rgba(31, 31, 57, 0.055) !important;
    }

    .product-card-grid:hover {
        transform: none !important;
    }

    .product-card-grid-image {
        aspect-ratio: 1 / 0.82 !important;
        border-radius: 17px 17px 0 0 !important;
    }

    .product-card-grid-content-group {
        padding: 0.72rem !important;
    }

    .product-card-grid-header-group {
        margin-bottom: 0.38rem !important;
    }

    .product-card-grid-title {
        display: -webkit-box !important;
        overflow: hidden !important;
        max-width: 100% !important;
        color: #22233d !important;
        font-size: 0.9rem !important;
        font-weight: 560 !important;
        line-height: 1.18 !important;
        white-space: normal !important;
        -webkit-box-orient: vertical !important;
        -webkit-line-clamp: 2 !important;
    }

    .product-card-grid-describe {
        display: none !important;
    }

    .product-card-grid-price-current {
        color: #b91c1c !important;
        font-size: 0.98rem !important;
        font-weight: 680 !important;
        line-height: 1.2 !important;
    }

    .product-card-grid-cart-btn {
        min-width: 34px !important;
        width: 34px !important;
        height: 34px !important;
        padding: 0 !important;
    }

    .product-card-grid-cart-btn span {
        display: none !important;
    }

    .product-card-grid-cart-btn i {
        margin: 0 !important;
        color: currentColor !important;
    }

    .storefront-account-summary {
        gap: 1.15rem !important;
        padding: 1.65rem 1.45rem 1.1rem !important;
        margin-bottom: 0.35rem !important;
    }

    .storefront-account-avatar {
        width: 84px !important;
        height: 84px !important;
    }

    .storefront-account-name {
        color: #20213a !important;
        font-size: 1.38rem !important;
        font-weight: 560 !important;
        line-height: 1.15 !important;
    }

    .storefront-account-email {
        color: #747895 !important;
        font-size: 1rem !important;
        font-weight: 420 !important;
        line-height: 1.3 !important;
    }

    .storefront-account-balance {
        color: #20213a !important;
        font-size: 1.1rem !important;
        font-weight: 620 !important;
    }

    .storefront-account-links {
        padding: 0 1.35rem 1.2rem !important;
    }

    .storefront-account-link {
        min-height: 62px !important;
        gap: 1.05rem !important;
        padding: 0 !important;
        border-color: rgba(226, 232, 240, 0.92) !important;
    }

    .storefront-account-link-icon {
        width: 24px !important;
        height: 24px !important;
        color: #747895 !important;
    }

    .storefront-account-link-label {
        color: #20213a !important;
        font-size: 1.08rem !important;
        font-weight: 500 !important;
        line-height: 1.25 !important;
        text-transform: none !important;
    }

    .storefront-account-link:active {
        transform: scale(0.99) !important;
    }

    .container.max-w-3xl > .overflow-hidden.rounded-2xl {
        border-radius: 0 !important;
        background: #ffffff !important;
        box-shadow: none !important;
    }
}

/* Final Gurmeat typography layer: lighter, calmer app-wide text without touching icon fonts. */
:root {
    --gm-font-ui: "Public Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, Helvetica, sans-serif;
    --gm-font-display: "Public Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, Helvetica, sans-serif;
    --client-font: var(--gm-font-ui);
    --admin-font: var(--gm-font-ui);
    --gm-admin-font: var(--gm-font-ui);
}

html,
body {
    font-family: var(--gm-font-ui) !important;
    font-weight: 400;
    letter-spacing: 0;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

body :where(h1, h2, h3, h4, h5, h6, p, a, button, input, select, textarea, label, span, th, td):not(i):not([class^="lab-"]):not([class*=" lab-"]):not([class^="fa-"]):not([class*=" fa-"]) {
    font-family: var(--gm-font-ui) !important;
    letter-spacing: 0;
}

.font-client,
.font-rubik,
.placeholder\:font-rubik::placeholder {
    font-family: var(--gm-font-ui) !important;
}

body .font-light {
    font-weight: 300 !important;
}

body .font-normal {
    font-weight: 400 !important;
}

body .font-medium {
    font-weight: 500 !important;
}

body .font-semibold,
body .font-bold {
    font-weight: 560 !important;
}

body .font-extrabold,
body .font-black {
    font-weight: 620 !important;
}

body :where(h1, h2, h3, h4, h5, h6):not(i):not([class^="lab-"]):not([class*=" lab-"]) {
    font-family: var(--gm-font-display) !important;
    font-weight: 600;
    letter-spacing: 0;
}

.storefront-account-name,
.storefront-account-link-label,
.product-card-grid-title,
.gm-storefront-cart-header h3,
.gm-account-identity-text h1,
.gm-account-section-title h1,
.gm-account-address-head h1,
.gm-dashboard-head h1,
.gm-dashboard-section-title,
.db-card-title,
.kds-items-header h3,
.kds-column-title {
    font-weight: 560 !important;
}

.gm-section-title h1,
.item-details-title,
.product-card-grid-price-current,
.product-card-list-price-current,
.gm-storefront-cart-body h3.text-xs,
.gm-storefront-cart-total h3,
.gm-storefront-cart-total h4,
.storefront-account-balance,
.gm-dashboard-overview-card h4,
.gm-dashboard-stat-card h4 {
    font-weight: 600 !important;
}

.ff-header nav a,
.ff-header .dropdown-btn,
.ff-header a.bg-primary,
.ff-header span.bg-primary {
    font-weight: 500 !important;
}

.menu-slides h3,
.product-card-list-title,
.veg-navs button span {
    font-weight: 500 !important;
}

.product-card-grid-title,
.product-card-list-title,
.gm-section-title h1,
.storefront-auth-title,
.storefront-checkout-title {
    letter-spacing: 0 !important;
}

.db-table-head-th,
.db-card table:not(.db-table) th,
.db-table-badge,
.db-main .badge,
.db-main .bg-green-100,
.db-main .bg-red-100,
.db-main .bg-yellow-100,
.db-main .bg-blue-100,
.db-card-filter-btn,
.db-btn,
.db-table-action {
    font-weight: 520 !important;
}

.gm-primary-button,
.gm-add-button,
.gm-storefront-cart-checkout,
.gm-account-submit,
.gm-account-secondary-action,
.product-card-grid-cart-btn,
#pos-cart.admin-pos-cart .p-4 > .flex.items-center.justify-center.gap-6 button,
#pos-cart.admin-pos-cart .admin-pos-discount-row button {
    font-weight: 560 !important;
}

@media (max-width: 767px) {
    .storefront-account-name {
        font-weight: 540 !important;
    }

    .storefront-account-link-label,
    .gm-storefront-cart-body a.text-sm,
    .product-card-grid-title,
    .menu-slides h3 {
        font-weight: 500 !important;
    }

    .gm-storefront-cart-header h3,
    .gm-storefront-cart-checkout {
        font-weight: 580 !important;
    }
}



/* Center confirm-order modal vertically */
.confirm-order.modal {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.confirm-order.modal .modal-dialog {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

/* Minimal storefront pass: keep the customer UI calm, compact, and app-like. */
.gm-storefront-shell {
    background: #f8f7f5 !important;
}

.gm-premium-header.ff-header {
    border-bottom: 1px solid rgba(232, 228, 221, 0.9) !important;
    background: rgba(255, 255, 255, 0.92) !important;
    box-shadow: none !important;
    backdrop-filter: blur(14px) !important;
}

.gm-premium-header .storefront-brand-logo {
    width: 116px !important;
    max-height: 34px !important;
}

.storefront-language-corner .dropdown-btn {
    min-width: 0 !important;
    height: 30px !important;
    gap: 6px !important;
    border: 1px solid #e8e4dd !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    color: #171717 !important;
    padding: 0 10px !important;
    box-shadow: none !important;
    font-size: 12px !important;
    font-weight: 650 !important;
    text-transform: uppercase !important;
}

.storefront-language-corner .dropdown-btn img {
    width: 14px !important;
    height: 14px !important;
}

.storefront-search-shell.header-search-group {
    height: 38px !important;
    border: 1px solid #e8e4dd !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    box-shadow: none !important;
}

.storefront-search-shell.header-search-group:focus-within {
    border-color: #c52922 !important;
    box-shadow: none !important;
    transform: none !important;
}

.storefront-search-shell .header-search-submit,
.storefront-search-shell .header-search-field {
    color: #6f6f6a !important;
}

.storefront-search-shell .header-search-field {
    font-size: 14px !important;
}

.gm-page-heading {
    display: flex !important;
    align-items: flex-end !important;
    justify-content: space-between !important;
    gap: 14px !important;
    margin: 0 0 18px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.gm-page-heading h1 {
    margin: 0 !important;
    color: #171717 !important;
    font-size: clamp(26px, 3.2vw, 38px) !important;
    font-weight: 760 !important;
    line-height: 1.08 !important;
    letter-spacing: 0 !important;
}

.gm-page-heading p {
    margin: 6px 0 0 !important;
    color: #6f6f6a !important;
    font-size: 13px !important;
}

.gm-page-heading--with-actions {
    align-items: center !important;
}

.gm-menu-hero,
.gm-search-hero {
    margin-bottom: 18px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.gm-menu-hero__eyebrow,
.gm-search-hero > div > span {
    display: none !important;
}

.gm-menu-hero h1,
.gm-search-hero h1 {
    margin: 0 !important;
    color: #171717 !important;
    font-size: clamp(26px, 3.2vw, 38px) !important;
    font-weight: 760 !important;
    line-height: 1.08 !important;
    letter-spacing: 0 !important;
}

.gm-menu-hero__search,
.gm-search-hero__form {
    min-height: 42px !important;
    border: 1px solid #e8e4dd !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    box-shadow: none !important;
}

.gm-filter-chip,
.gm-view-toggle,
.gm-view-toggle button {
    box-shadow: none !important;
}

.gm-filter-chip.is-active,
.gm-view-toggle button.is-active {
    border-color: #171717 !important;
    background: #171717 !important;
    color: #ffffff !important;
}

.gm-storefront-content .gm-menu-card.product-card-grid,
.gm-storefront-content .gm-menu-card.product-card-list,
.gm-offer-grid .gm-offer-card {
    border: 1px solid #e8e4dd !important;
    border-radius: 10px !important;
    background: #ffffff !important;
    box-shadow: none !important;
}

.gm-storefront-content .gm-menu-card.product-card-grid:hover,
.gm-storefront-content .gm-menu-card.product-card-list:hover,
.gm-offer-grid .gm-offer-card:hover {
    border-color: #d8d2c8 !important;
    box-shadow: none !important;
    transform: none !important;
}

.gm-mobile-tabbar {
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100% !important;
    min-height: calc(58px + env(safe-area-inset-bottom)) !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: 0 !important;
    padding: 4px 8px calc(4px + env(safe-area-inset-bottom)) !important;
    border: 0 !important;
    border-top: 1px solid #e8e4dd !important;
    border-radius: 0 !important;
    background: rgba(255, 255, 255, 0.96) !important;
    box-shadow: none !important;
    backdrop-filter: blur(14px) !important;
    transform: none !important;
}

.gm-mobile-tab,
.gm-mobile-cart-tab {
    min-height: 48px !important;
    width: auto !important;
    height: auto !important;
    border-radius: 8px !important;
    background: transparent !important;
    color: #777772 !important;
    box-shadow: none !important;
    transform: none !important;
}

.gm-mobile-tab.active,
.gm-mobile-cart-tab.active,
.gm-mobile-cart-tab.has-items {
    background: transparent !important;
    color: #c52922 !important;
    box-shadow: none !important;
}

.gm-mobile-tab-icon,
.gm-mobile-cart-icon {
    width: 21px !important;
    height: 21px !important;
}

.gm-mobile-tab span,
.gm-mobile-cart-tab span {
    font-size: 10.5px !important;
    font-weight: 620 !important;
}

.gm-mobile-cart-dot {
    top: 8px !important;
    right: calc(50% - 16px) !important;
    width: 6px !important;
    height: 6px !important;
    border: 0 !important;
    background: #c52922 !important;
    box-shadow: none !important;
}

@media (max-width: 767px) {
    .gm-storefront-content {
        padding-bottom: 68px !important;
    }

    .gm-premium-header.ff-header .storefront-header-container {
        min-height: 104px !important;
        padding: 10px 16px 12px !important;
    }

    .gm-premium-header .storefront-brand-wrap {
        width: auto !important;
    }

    .gm-premium-header .storefront-brand-link {
        min-height: 32px !important;
    }

    .gm-premium-header .storefront-brand-logo {
        width: 112px !important;
        max-height: 32px !important;
    }

    .storefront-language-corner {
        top: 12px !important;
        right: 16px !important;
    }

    .storefront-language-corner .dropdown-btn {
        height: 28px !important;
        padding: 0 9px !important;
        font-size: 11px !important;
    }

    .storefront-header-actions {
        margin-top: 8px !important;
        gap: 0 !important;
    }

    .storefront-action-row {
        gap: 0 !important;
    }

    .storefront-action-row > a,
    .storefront-action-row > div:not(.storefront-search-shell):not(.storefront-language-corner),
    .storefront-action-row > .bg-primary,
    .storefront-action-row > span.bg-primary {
        display: none !important;
    }

    .storefront-search-shell.header-search-group {
        width: 100% !important;
        height: 40px !important;
    }

    .gm-offers-page {
        margin-top: 18px !important;
        margin-bottom: 84px !important;
    }

    .gm-menu-hero,
    .gm-search-hero,
    .gm-page-heading {
        margin-bottom: 16px !important;
    }

    .gm-menu-hero h1,
    .gm-search-hero h1,
    .gm-page-heading h1 {
        font-size: 28px !important;
        line-height: 1.1 !important;
    }

    .gm-search-hero p,
    .gm-page-heading p {
        font-size: 12px !important;
    }

    .gm-offer-grid .gm-offer-card {
        aspect-ratio: 2.4 / 1 !important;
    }

    .gm-offer-grid .gm-offer-card span {
        right: 10px !important;
        bottom: 10px !important;
        left: 10px !important;
        padding: 6px 10px !important;
        font-size: 12px !important;
        font-weight: 650 !important;
    }

    .gm-home-quickbar {
        display: none !important;
    }

    .gm-storefront-content .gm-home-section {
        margin-bottom: 34px !important;
    }

    .gm-section-heading {
        margin-top: 0 !important;
        margin-bottom: 14px !important;
    }

    .gm-section-heading h2 {
        font-size: 22px !important;
        line-height: 1.12 !important;
    }

    .gm-soft-link {
        background: transparent !important;
        color: #c52922 !important;
        padding: 0 !important;
        font-size: 12px !important;
        font-weight: 650 !important;
    }

    .menu-slides a {
        min-height: 76px !important;
        border: 1px solid #e8e4dd !important;
        border-radius: 10px !important;
        box-shadow: none !important;
    }

    .menu-slides h3 {
        color: #171717 !important;
        font-size: 11px !important;
        font-weight: 620 !important;
    }

    .menu-category-active h3 {
        color: #c52922 !important;
    }

    .gm-product-grid-premium {
        gap: 10px !important;
    }

    .gm-storefront-content .gm-menu-card.product-card-grid {
        min-height: 0 !important;
    }

    .gm-menu-card.product-card-grid .gm-menu-card__media {
        aspect-ratio: 1 / 0.76 !important;
    }

    .product-card-grid-image {
        aspect-ratio: auto !important;
        border-radius: 0 !important;
    }

    .gm-menu-card.product-card-grid .gm-menu-card__content,
    .product-card-grid-content-group {
        min-height: 96px !important;
        gap: 6px !important;
        padding: 9px !important;
    }

    .product-card-grid-header-group,
    .gm-menu-card__header {
        margin-bottom: 0 !important;
    }

    .gm-menu-card.product-card-grid .gm-menu-card__title,
    .product-card-grid-title {
        font-size: 12px !important;
        line-height: 1.2 !important;
        font-weight: 650 !important;
        -webkit-line-clamp: 2 !important;
    }

    .gm-menu-card.product-card-grid .gm-menu-card__description,
    .gm-menu-card.product-card-grid .gm-menu-card__meta,
    .product-card-grid-describe {
        display: none !important;
    }

    .gm-menu-card__badges {
        top: 7px !important;
        left: 7px !important;
        gap: 4px !important;
    }

    .gm-menu-card__badge {
        min-height: 18px !important;
        padding: 0 6px !important;
        font-size: 9px !important;
        font-weight: 650 !important;
    }

    .gm-menu-card__footer,
    .product-card-grid-footer-group {
        align-items: center !important;
        margin-top: auto !important;
    }

    .gm-menu-card__price h4,
    .product-card-grid-price-current {
        font-size: 13px !important;
        line-height: 1.1 !important;
        font-weight: 760 !important;
    }

    .product-card-grid-price-previous {
        font-size: 11px !important;
        line-height: 1 !important;
    }

    .gm-menu-card__add.product-card-grid-cart-btn,
    .product-card-grid-cart-btn {
        width: 32px !important;
        min-width: 32px !important;
        height: 32px !important;
        border-radius: 999px !important;
    }
}

.gm-storefront-shell > .footer-part {
    margin-top: 72px !important;
    padding: 28px 0 0 !important;
    border-top: 1px solid #e8e4dd !important;
    background: #ffffff !important;
    color: #171717 !important;
    box-shadow: none !important;
}

.gm-storefront-shell > .footer-part::before {
    display: none !important;
}

.gm-storefront-shell .storefront-footer-grid {
    display: grid !important;
    grid-template-columns: 1fr 1.4fr 1fr !important;
    align-items: start !important;
    gap: 28px !important;
    padding-bottom: 24px !important;
}

.gm-storefront-shell .footer-part img[alt="Логотип Gurmeat"] {
    width: 132px !important;
    filter: none !important;
}

.gm-storefront-shell .footer-part p,
.gm-storefront-shell .footer-part a,
.gm-storefront-shell .footer-part li,
.gm-storefront-shell .footer-part span,
.gm-storefront-shell .footer-part h3 {
    color: #555550 !important;
    text-shadow: none !important;
}

.gm-storefront-shell .storefront-footer-newsletter p {
    max-width: 360px !important;
    margin-bottom: 12px !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
}

.gm-storefront-shell .footer-part form {
    max-width: 360px !important;
    height: 42px !important;
    border: 1px solid #e8e4dd !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    box-shadow: none !important;
}

.gm-storefront-shell .footer-part form input {
    color: #171717 !important;
}

.gm-storefront-shell .footer-part button.bg-primary {
    min-height: 34px !important;
    background: #c52922 !important;
    box-shadow: none !important;
}

.gm-storefront-shell .footer-part ul li i {
    background: #f4f3f0 !important;
    color: #555550 !important;
}

.gm-storefront-shell .storefront-footer-contact span {
    color: #171717 !important;
    font-size: 14px !important;
}

.gm-storefront-shell .storefront-footer-bottom {
    margin-top: 0 !important;
    border-top: 1px solid #e8e4dd !important;
    padding: 14px 0 !important;
}

.gm-storefront-shell .storefront-footer-bottom p {
    color: #777772 !important;
    font-size: 12px !important;
}

@media (max-width: 767px) {
    .gm-storefront-shell > .footer-part {
        display: none !important;
    }
}

/* Checkout final pass: minimal, fast, and focused on order completion. */
.gm-checkout-page {
    padding: 28px 0 72px !important;
    background: #f8f7f5 !important;
}

.gm-checkout-container {
    width: min(1120px, calc(100% - 32px)) !important;
    margin: 0 auto !important;
}

.gm-checkout-container--narrow {
    width: min(560px, calc(100% - 32px)) !important;
}

.gm-checkout-back {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 0 0 14px !important;
    color: #55504a !important;
    font-size: 23px !important;
    font-weight: 650 !important;
    line-height: 1.15 !important;
    text-decoration: none !important;
}

.gm-checkout-back:hover {
    color: #c52922 !important;
}

.gm-checkout-head {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: end !important;
    gap: 24px !important;
    margin-bottom: 18px !important;
}

.gm-checkout-head--steps-only {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 0 !important;
    margin-bottom: 16px !important;
}

.gm-checkout-head p {
    margin: 0 0 6px !important;
    color: #c52922 !important;
    font-size: 11px !important;
    font-weight: 720 !important;
    line-height: 1.1 !important;
    text-transform: uppercase !important;
}

.gm-checkout-head h1 {
    margin: 0 !important;
    color: #171717 !important;
    font-size: clamp(28px, 4vw, 42px) !important;
    font-weight: 680 !important;
    line-height: 1.02 !important;
    letter-spacing: 0 !important;
}

.gm-checkout-head span {
    display: block !important;
    max-width: 520px !important;
    margin-top: 8px !important;
    color: #69645d !important;
    font-size: 14px !important;
    font-weight: 450 !important;
    line-height: 1.45 !important;
}

.gm-checkout-steps {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.gm-checkout-steps li {
    display: inline-flex !important;
    align-items: center !important;
    gap: 7px !important;
    min-height: 32px !important;
    padding: 0 10px !important;
    border: 1px solid #e8e4dd !important;
    border-radius: 999px !important;
    color: #77726a !important;
    background: #ffffff !important;
    font-size: 12px !important;
    font-weight: 560 !important;
    white-space: nowrap !important;
}

.gm-checkout-steps li span {
    display: grid !important;
    width: 18px !important;
    height: 18px !important;
    place-items: center !important;
    margin: 0 !important;
    border-radius: 50% !important;
    color: #77726a !important;
    background: #f4f3f0 !important;
    font-size: 11px !important;
    font-weight: 650 !important;
}

.gm-checkout-steps li em {
    font-style: normal !important;
}

.gm-checkout-steps li.is-complete,
.gm-checkout-steps li.is-active {
    border-color: #decfc4 !important;
    color: #171717 !important;
}

.gm-checkout-steps li.is-complete span,
.gm-checkout-steps li.is-active span {
    color: #ffffff !important;
    background: #171717 !important;
}

.gm-checkout-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(320px, 370px) !important;
    gap: 16px !important;
    align-items: start !important;
}

.gm-checkout-primary {
    display: grid !important;
    gap: 16px !important;
}

.gm-checkout-card,
.gm-checkout-empty-card {
    border: 1px solid #e8e4dd !important;
    border-radius: 8px !important;
    background: #ffffff !important;
    box-shadow: none !important;
}

.gm-checkout-card {
    padding: 18px !important;
}

.gm-checkout-empty-card {
    display: grid !important;
    gap: 10px !important;
    padding: 28px !important;
    text-align: center !important;
}

.gm-checkout-empty-card p {
    margin: 0 !important;
    color: #c52922 !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
}

.gm-checkout-empty-card h1 {
    margin: 0 !important;
    color: #171717 !important;
    font-size: 30px !important;
    font-weight: 680 !important;
    line-height: 1.08 !important;
}

.gm-checkout-empty-card span {
    color: #69645d !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
}

.gm-checkout-empty-action {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: fit-content !important;
    min-height: 44px !important;
    margin: 6px auto 0 !important;
    padding: 0 18px !important;
    border-radius: 999px !important;
    color: #ffffff !important;
    background: #171717 !important;
    font-size: 14px !important;
    font-weight: 620 !important;
}

.gm-checkout-card-head {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 14px !important;
    margin-bottom: 16px !important;
}

.gm-checkout-card-head h2 {
    margin: 0 !important;
    color: #171717 !important;
    font-size: 19px !important;
    font-weight: 650 !important;
    line-height: 1.15 !important;
    letter-spacing: 0 !important;
}

.gm-checkout-card-head p {
    margin: 4px 0 0 !important;
    color: #77726a !important;
    font-size: 13px !important;
    font-weight: 450 !important;
    line-height: 1.3 !important;
}

.gm-checkout-card-head > strong {
    color: #171717 !important;
    font-size: 17px !important;
    font-weight: 680 !important;
    line-height: 1.15 !important;
    white-space: nowrap !important;
}

.gm-checkout-lines {
    display: grid !important;
    gap: 0 !important;
}

.gm-checkout-line {
    display: grid !important;
    grid-template-columns: 72px minmax(0, 1fr) auto !important;
    gap: 14px !important;
    align-items: center !important;
    padding: 14px 0 !important;
    border-top: 1px solid #efebe5 !important;
}

.gm-checkout-line:first-child {
    padding-top: 0 !important;
    border-top: 0 !important;
}

.gm-checkout-line:last-child {
    padding-bottom: 0 !important;
}

.gm-checkout-line img {
    width: 72px !important;
    height: 72px !important;
    border-radius: 8px !important;
    object-fit: cover !important;
    background: #f4f3f0 !important;
}

.gm-checkout-line-body {
    min-width: 0 !important;
}

.gm-checkout-line-top {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 10px !important;
}

.gm-checkout-line-top h3 {
    margin: 0 !important;
    color: #171717 !important;
    font-size: 15px !important;
    font-weight: 620 !important;
    line-height: 1.22 !important;
    text-transform: none !important;
}

.gm-checkout-line-top span {
    flex: 0 0 auto !important;
    color: #77726a !important;
    font-size: 12px !important;
    font-weight: 620 !important;
}

.gm-checkout-line-body p,
.gm-checkout-line-body ul {
    margin: 5px 0 0 !important;
    color: #77726a !important;
    font-size: 12px !important;
    font-weight: 430 !important;
    line-height: 1.35 !important;
}

.gm-checkout-line-body ul {
    display: grid !important;
    gap: 3px !important;
    padding: 0 !important;
    list-style: none !important;
}

.gm-checkout-line-body li {
    display: flex !important;
    gap: 5px !important;
    min-width: 0 !important;
}

.gm-checkout-line-body li span {
    flex: 0 0 auto !important;
    color: #55504a !important;
    font-weight: 620 !important;
}

.gm-checkout-line-body li em {
    min-width: 0 !important;
    overflow-wrap: anywhere !important;
    font-style: normal !important;
}

.gm-checkout-line-actions {
    display: grid !important;
    justify-items: end !important;
    gap: 10px !important;
}

.gm-checkout-line-actions > strong {
    color: #171717 !important;
    font-size: 14px !important;
    font-weight: 680 !important;
    white-space: nowrap !important;
}

.gm-cart-quantity.indec-group,
#cart .gm-cart-quantity.indec-group {
    display: grid !important;
    grid-template-columns: 34px minmax(28px, 1fr) 34px !important;
    align-items: center !important;
    justify-items: center !important;
    width: 112px !important;
    min-width: 112px !important;
    height: 42px !important;
    overflow: hidden !important;
    border: 1px solid #e5dfd6 !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    box-shadow: none !important;
}

.gm-cart-quantity .indec-minus,
.gm-cart-quantity .indec-plus,
#cart .gm-cart-quantity .indec-minus,
#cart .gm-cart-quantity .indec-plus {
    display: grid !important;
    width: 34px !important;
    min-width: 34px !important;
    height: 34px !important;
    place-items: center !important;
    border: 0 !important;
    border-radius: 50% !important;
    color: #171717 !important;
    background: #f4f3f0 !important;
    box-shadow: none !important;
    font-size: 16px !important;
    font-weight: 760 !important;
    line-height: 1 !important;
    transform: none !important;
}

.gm-cart-quantity .indec-minus:hover,
.gm-cart-quantity .indec-plus:hover,
#cart .gm-cart-quantity .indec-minus:hover,
#cart .gm-cart-quantity .indec-plus:hover {
    color: #ffffff !important;
    background: #171717 !important;
}

.gm-storefront-content .gm-cart-quantity .indec-plus,
#cart .gm-cart-quantity .indec-plus {
    margin-right: 4px !important;
    color: #ffffff !important;
    background: #171717 !important;
}

.gm-storefront-content .gm-cart-quantity .indec-minus,
#cart .gm-cart-quantity .indec-minus {
    margin-left: 4px !important;
    border: 1px solid #ece6dc !important;
}

.gm-storefront-content .gm-cart-quantity .indec-minus :where(i, span),
.gm-storefront-content .gm-cart-quantity .indec-plus :where(i, span),
#cart .gm-cart-quantity .indec-minus :where(i, span),
#cart .gm-cart-quantity .indec-plus :where(i, span) {
    color: currentColor !important;
}

.gm-cart-quantity .indec-value,
#cart .gm-cart-quantity .indec-value {
    width: 100% !important;
    min-width: 28px !important;
    height: 100% !important;
    border: 0 !important;
    color: #171717 !important;
    background: transparent !important;
    font-size: 15px !important;
    font-weight: 680 !important;
    line-height: 42px !important;
    text-align: center !important;
}

.gm-checkout-order-type,
.gm-cart-order-type-switch {
    display: inline-flex !important;
    align-items: center !important;
    gap: 3px !important;
    padding: 3px !important;
    border: 1px solid #e8e4dd !important;
    border-radius: 999px !important;
    color: #55504a !important;
    background: #f4f3f0 !important;
}

.gm-checkout-order-type > div,
.gm-cart-order-type-switch > div {
    position: relative !important;
}

.gm-checkout-order-type input,
.gm-cart-order-type-switch input {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    opacity: 0 !important;
    cursor: pointer !important;
}

.gm-checkout-order-type label,
.gm-cart-order-type-option {
    display: inline-flex !important;
    min-height: 30px !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 12px !important;
    border-radius: 999px !important;
    color: #55504a !important;
    background: transparent !important;
    font-size: 12px !important;
    font-weight: 620 !important;
    line-height: 1 !important;
    text-transform: none !important;
    cursor: pointer !important;
}

.gm-checkout-order-type .cart-switch:checked + label,
.gm-cart-order-type-switch .cart-switch:checked + label {
    color: #ffffff !important;
    background: #171717 !important;
}

.gm-checkout-block {
    padding-top: 16px !important;
    border-top: 1px solid #efebe5 !important;
}

.gm-checkout-block + .gm-checkout-block {
    margin-top: 16px !important;
}

.gm-checkout-block-head {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    margin-bottom: 12px !important;
}

.gm-checkout-block-head h3 {
    margin: 0 !important;
    color: #171717 !important;
    font-size: 14px !important;
    font-weight: 650 !important;
    line-height: 1.25 !important;
}

.gm-checkout-block-head > div {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
}

.gm-checkout-block-head button {
    display: inline-flex !important;
    min-height: 32px !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 0 10px !important;
    border: 1px solid #e8e4dd !important;
    border-radius: 999px !important;
    color: #55504a !important;
    background: #ffffff !important;
    font-size: 12px !important;
    font-weight: 620 !important;
}

.gm-checkout-block-head button.is-primary {
    border-color: #171717 !important;
    color: #ffffff !important;
    background: #171717 !important;
}

.gm-checkout-branch-chips {
    display: flex !important;
    gap: 8px !important;
    margin-bottom: 12px !important;
    overflow-x: auto !important;
    scrollbar-width: none !important;
}

.gm-checkout-branch-chips::-webkit-scrollbar {
    display: none !important;
}

.gm-checkout-branch-chip {
    flex: 0 0 auto !important;
    min-height: 34px !important;
    padding: 0 12px !important;
    border: 1px solid #e8e4dd !important;
    border-radius: 999px !important;
    color: #55504a !important;
    background: #ffffff !important;
    font-size: 13px !important;
    font-weight: 560 !important;
}

.gm-checkout-branch-chip.active {
    border-color: #171717 !important;
    color: #ffffff !important;
    background: #171717 !important;
}

.gm-checkout-branch-map {
    height: 168px !important;
    margin-bottom: 12px !important;
    overflow: hidden !important;
    border-radius: 8px !important;
    background: #f4f3f0 !important;
}

.gm-checkout-branch-map img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}

.gm-checkout-branch-address {
    display: flex !important;
    align-items: flex-start !important;
    gap: 8px !important;
    color: #55504a !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
}

.gm-checkout-branch-address i {
    color: #c52922 !important;
    font-size: 16px !important;
    line-height: 1.2 !important;
}

.gm-checkout-addresses,
.gm-checkout-time-options {
    display: grid !important;
    gap: 8px !important;
}

.gm-checkout-addresses label,
.gm-checkout-choice {
    display: flex !important;
    width: 100% !important;
    min-height: 58px !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    padding: 12px !important;
    border: 1px solid #e8e4dd !important;
    border-radius: 8px !important;
    color: #171717 !important;
    background: #ffffff !important;
    text-align: left !important;
    cursor: pointer !important;
    transition: border-color 160ms ease, background 160ms ease !important;
}

.gm-checkout-addresses label.active,
.gm-checkout-choice.active {
    border-color: #171717 !important;
    background: #faf8f5 !important;
}

.gm-storefront-content .gm-checkout-addresses label.active,
.gm-storefront-content .gm-checkout-addresses label:has(input[type="radio"]:checked),
.gm-storefront-content .gm-checkout-choice.active,
.gm-storefront-content .gm-checkout-choice:has(input[type="radio"]:checked) {
    border-color: #171717 !important;
    background: #faf8f5 !important;
    box-shadow: none !important;
}

.gm-checkout-addresses label > i {
    flex: 0 0 auto !important;
    color: #c52922 !important;
    font-size: 17px !important;
}

.gm-checkout-addresses label > span:nth-of-type(1),
.gm-checkout-choice > span:nth-of-type(1) {
    display: grid !important;
    min-width: 0 !important;
    gap: 2px !important;
}

.gm-checkout-addresses strong,
.gm-checkout-choice strong {
    color: #171717 !important;
    font-size: 13px !important;
    font-weight: 650 !important;
    line-height: 1.25 !important;
}

.gm-checkout-addresses em,
.gm-checkout-choice em {
    color: #77726a !important;
    font-size: 12px !important;
    font-style: normal !important;
    font-weight: 430 !important;
    line-height: 1.35 !important;
    overflow-wrap: anywhere !important;
}

.gm-checkout-empty-note {
    padding: 12px !important;
    border: 1px dashed #e8e4dd !important;
    border-radius: 8px !important;
    color: #77726a !important;
    background: #fbfaf8 !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
}

.gm-checkout-summary-panel {
    position: sticky !important;
    top: 104px !important;
}

.gm-checkout-summary-card {
    display: grid !important;
    gap: 14px !important;
}

.gm-checkout-summary-card .gm-checkout-card-head {
    margin-bottom: 0 !important;
}

.gm-checkout-coupon,
.gm-checkout-loyalty {
    border: 1px solid #e8e4dd !important;
    border-radius: 8px !important;
    background: #fbfaf8 !important;
}

.gm-checkout-coupon {
    display: flex !important;
    width: 100% !important;
    min-height: 52px !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 11px 12px !important;
    color: #171717 !important;
    text-align: left !important;
}

.gm-checkout-coupon > i:first-child {
    color: #c52922 !important;
    font-size: 20px !important;
}

.gm-checkout-coupon > span {
    display: grid !important;
    min-width: 0 !important;
    flex: 1 1 auto !important;
    gap: 2px !important;
}

.gm-checkout-coupon strong,
.gm-checkout-loyalty strong {
    color: #171717 !important;
    font-size: 13px !important;
    font-weight: 650 !important;
    line-height: 1.25 !important;
}

.gm-checkout-coupon em,
.gm-checkout-loyalty em {
    color: #77726a !important;
    font-size: 12px !important;
    font-style: normal !important;
    line-height: 1.35 !important;
}

.gm-checkout-coupon > i:last-child {
    color: #77726a !important;
    font-size: 16px !important;
}

.gm-checkout-coupon--applied > i:first-child,
.gm-checkout-totals .is-success,
.gm-checkout-loyalty p strong {
    color: #177a45 !important;
}

.gm-checkout-coupon--applied button {
    color: #c52922 !important;
    font-size: 15px !important;
}

.gm-checkout-loyalty {
    display: grid !important;
    gap: 10px !important;
    padding: 12px !important;
}

.gm-checkout-loyalty > div {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
}

.gm-checkout-loyalty > div > span {
    display: grid !important;
    gap: 2px !important;
}

.gm-checkout-loyalty button {
    min-height: 34px !important;
    padding: 0 10px !important;
    border: 1px solid #e8e4dd !important;
    border-radius: 999px !important;
    color: #171717 !important;
    background: #ffffff !important;
    font-size: 12px !important;
    font-weight: 620 !important;
}

.gm-checkout-loyalty button:disabled {
    cursor: not-allowed !important;
    opacity: 0.5 !important;
}

.gm-checkout-loyalty input {
    min-width: 0 !important;
    flex: 1 1 auto !important;
    height: 40px !important;
    padding: 0 12px !important;
    border: 1px solid #e8e4dd !important;
    border-radius: 8px !important;
    color: #171717 !important;
    background: #ffffff !important;
    font-size: 14px !important;
}

.gm-checkout-loyalty p {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
    margin: 0 !important;
    color: #77726a !important;
    font-size: 12px !important;
}

.gm-checkout-totals {
    border: 1px solid #e8e4dd !important;
    border-radius: 8px !important;
    overflow: hidden !important;
}

.gm-checkout-totals ul {
    display: grid !important;
    gap: 8px !important;
    margin: 0 !important;
    padding: 12px !important;
    border-bottom: 1px dashed #e8e4dd !important;
    list-style: none !important;
}

.gm-checkout-totals li,
.gm-checkout-totals > div {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    color: #55504a !important;
    font-size: 13px !important;
    line-height: 1.3 !important;
}

.gm-checkout-totals li strong {
    color: #171717 !important;
    font-weight: 620 !important;
}

.gm-checkout-totals > div {
    padding: 13px 12px !important;
    color: #171717 !important;
    background: #fbfaf8 !important;
    font-size: 15px !important;
    font-weight: 650 !important;
}

.gm-checkout-totals > div strong {
    font-size: 20px !important;
    font-weight: 720 !important;
}

.gm-checkout-readiness {
    margin: 0 !important;
    padding: 10px 12px !important;
    border: 1px solid #eadfce !important;
    border-radius: 8px !important;
    color: #6b5736 !important;
    background: #fffaf0 !important;
    font-size: 12px !important;
    font-weight: 560 !important;
    line-height: 1.4 !important;
}

.gm-checkout-message {
    margin: 0 !important;
    padding: 10px 12px !important;
    border-radius: 8px !important;
    font-size: 12px !important;
    font-weight: 560 !important;
    line-height: 1.4 !important;
}

.gm-checkout-message-error {
    border: 1px solid #f0c7c0 !important;
    color: #9f1d18 !important;
    background: #fff4f2 !important;
}

.gm-checkout-message-success {
    border: 1px solid #bedfc9 !important;
    color: #177a45 !important;
    background: #f0fbf4 !important;
}

.gm-checkout-summary-actions {
    display: grid !important;
    gap: 8px !important;
}

.gm-checkout-submit,
.gm-checkout-clear {
    display: inline-flex !important;
    width: 100% !important;
    min-height: 48px !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 999px !important;
    font-size: 14px !important;
    font-weight: 650 !important;
    line-height: 1 !important;
    text-transform: none !important;
}

.gm-checkout-submit {
    color: #ffffff !important;
    background: #171717 !important;
}

.gm-checkout-submit:hover {
    background: #c52922 !important;
}

.gm-checkout-submit:disabled {
    cursor: progress !important;
    opacity: 0.62 !important;
}

.gm-checkout-clear {
    border: 1px solid #e8e4dd !important;
    color: #77726a !important;
    background: #ffffff !important;
}

#cart.gm-storefront-cart-screen {
    background: rgba(23, 23, 23, 0.24) !important;
}

#cart > div.gm-storefront-cart-panel {
    width: min(400px, 100vw) !important;
    border-left: 1px solid #e8e4dd !important;
    background: #ffffff !important;
    box-shadow: none !important;
}

.gm-storefront-cart-header {
    min-height: 72px !important;
    padding: 14px 16px !important;
    border-bottom: 1px solid #e8e4dd !important;
    background: #ffffff !important;
}

.gm-storefront-cart-header h3 {
    color: #171717 !important;
    font-size: 21px !important;
    font-weight: 680 !important;
    line-height: 1.1 !important;
}

.gm-storefront-cart-header p {
    margin-top: 4px !important;
    color: #77726a !important;
    font-size: 13px !important;
    font-weight: 450 !important;
}

.gm-storefront-cart-back,
.gm-storefront-cart-close {
    width: 38px !important;
    height: 38px !important;
    border: 1px solid #e8e4dd !important;
    border-radius: 50% !important;
    color: #171717 !important;
    background: #ffffff !important;
    box-shadow: none !important;
}

.gm-storefront-cart-body {
    padding: 14px 16px !important;
    background: #ffffff !important;
}

.gm-storefront-cart-body .mb-5 {
    display: grid !important;
    gap: 0 !important;
    margin-bottom: 0 !important;
}

.gm-cart-line-drawer {
    margin: 0 !important;
    padding: 12px 0 !important;
    border-bottom: 1px solid #efebe5 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.gm-storefront-cart-body .mb-5 > .gm-cart-line-drawer {
    margin: 0 !important;
    padding: 12px 0 !important;
    border: 0 !important;
    border-bottom: 1px solid #efebe5 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.gm-storefront-cart-body .mb-5 > .gm-cart-line-drawer:last-child {
    border-bottom: 0 !important;
}

.gm-cart-line-drawer:first-child {
    padding-top: 0 !important;
}

.gm-cart-line-drawer-main {
    align-items: flex-start !important;
    margin-bottom: 8px !important;
}

.gm-cart-line-drawer-image {
    width: 64px !important;
    height: 64px !important;
    border-radius: 8px !important;
    object-fit: cover !important;
}

.gm-cart-line-drawer-title {
    color: #171717 !important;
    font-size: 14px !important;
    font-weight: 620 !important;
    line-height: 1.25 !important;
    text-transform: none !important;
}

.gm-cart-line-drawer-price {
    color: #171717 !important;
    font-size: 13px !important;
    font-weight: 680 !important;
}

.gm-cart-line-drawer-options {
    margin: 0 !important;
    padding: 0 !important;
    color: #77726a !important;
    font-size: 12px !important;
    line-height: 1.35 !important;
}

.gm-cart-line-drawer-options h3 {
    color: #55504a !important;
    font-size: 12px !important;
    font-weight: 620 !important;
}

.gm-cart-line-drawer-options p,
.gm-storefront-cart-body p {
    color: #77726a !important;
}

.gm-storefront-cart-footer {
    padding: 12px 16px 16px !important;
    border-top: 1px solid #e8e4dd !important;
    background: #ffffff !important;
    box-shadow: none !important;
}

.gm-storefront-cart-total {
    min-height: 44px !important;
    margin-bottom: 10px !important;
    border-color: #e8e4dd !important;
    border-radius: 8px !important;
    background: #fbfaf8 !important;
}

.gm-storefront-cart-total h3,
.gm-storefront-cart-total h4 {
    color: #171717 !important;
    font-size: 14px !important;
    font-weight: 650 !important;
}

.gm-storefront-cart-checkout {
    min-height: 48px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 999px !important;
    color: #ffffff !important;
    background: #171717 !important;
    box-shadow: none !important;
    font-size: 14px !important;
    font-weight: 650 !important;
    text-transform: none !important;
}

.gm-storefront-cart-checkout:hover {
    background: #c52922 !important;
}

.gm-time-schedule-modal .modal-dialog,
.coupon-modal .modal-dialog {
    border: 1px solid #e8e4dd !important;
    border-radius: 8px !important;
    background: #ffffff !important;
    box-shadow: none !important;
}

.gm-time-schedule-modal .modal-dialog h3,
.coupon-modal .modal-dialog h3 {
    color: #171717 !important;
    font-weight: 650 !important;
    letter-spacing: 0 !important;
}

.gm-time-schedule-modal nav {
    border: 1px solid #e8e4dd !important;
    background: #f4f3f0 !important;
}

.gm-time-schedule-modal nav button {
    color: #55504a !important;
    background: transparent !important;
}

.gm-time-schedule-modal nav button.text-white,
.gm-time-schedule-modal nav button.bg-primary {
    color: #ffffff !important;
    background: #171717 !important;
}

.gm-time-schedule-modal li {
    border-color: #e8e4dd !important;
    border-radius: 999px !important;
    color: #171717 !important;
    background: #fbfaf8 !important;
}

@media (max-width: 1023px) {
    .gm-checkout-head,
    .gm-checkout-grid {
        grid-template-columns: 1fr !important;
    }

    .gm-checkout-summary-panel {
        position: static !important;
    }
}

@media (max-width: 767px) {
    .gm-checkout-page {
        padding: 14px 0 calc(96px + env(safe-area-inset-bottom)) !important;
    }

    .gm-checkout-container {
        width: min(100% - 24px, 1120px) !important;
    }

    .gm-checkout-head {
        gap: 14px !important;
        margin-bottom: 12px !important;
    }

    .gm-checkout-back {
        margin-bottom: 12px !important;
        font-size: 23px !important;
    }

    .gm-checkout-head h1 {
        font-size: 28px !important;
    }

    .gm-checkout-head span {
        font-size: 13px !important;
    }

    .gm-checkout-steps {
        width: 100% !important;
        overflow-x: auto !important;
        padding-bottom: 2px !important;
        scrollbar-width: none !important;
    }

    .gm-checkout-steps::-webkit-scrollbar {
        display: none !important;
    }

    .gm-checkout-card {
        padding: 14px !important;
    }

    .gm-checkout-card-head {
        align-items: center !important;
        gap: 12px !important;
    }

    .gm-checkout-card--fulfillment .gm-checkout-card-head {
        align-items: stretch !important;
        flex-direction: column !important;
    }

    .gm-checkout-card-head h2 {
        font-size: 17px !important;
    }

    .gm-checkout-line {
        grid-template-columns: 62px minmax(0, 1fr) !important;
        gap: 10px !important;
    }

    .gm-checkout-line img {
        width: 62px !important;
        height: 62px !important;
    }

    .gm-checkout-line-actions {
        grid-column: 2 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        width: 100% !important;
    }

    .gm-checkout-order-type {
        width: 100% !important;
    }

    .gm-checkout-order-type > div,
    .gm-checkout-order-type label {
        flex: 1 1 0 !important;
        width: 100% !important;
    }

    .gm-checkout-block-head {
        align-items: flex-start !important;
        flex-direction: column !important;
    }

    .gm-checkout-summary-actions {
        position: static !important;
        margin: 0 !important;
        padding: 0 !important;
        border-top: 0 !important;
        background: transparent !important;
        backdrop-filter: none !important;
    }

    body:has(.gm-checkout-page) .gm-mobile-tabbar {
        display: none !important;
    }

    body.gm-cart-drawer-open .gm-mobile-tabbar {
        display: none !important;
    }

    #cart.gm-storefront-cart-screen {
        background: #ffffff !important;
    }

    #cart > div.gm-storefront-cart-panel {
        inset: 0 !important;
        width: 100vw !important;
        max-width: none !important;
        height: 100dvh !important;
        border-left: 0 !important;
    }

    .gm-storefront-cart-header {
        min-height: 70px !important;
        padding: 12px 14px !important;
    }

    .gm-storefront-cart-header h3 {
        font-size: 21px !important;
    }

    .gm-storefront-cart-body {
        padding: 12px 14px !important;
    }

    .gm-cart-line-drawer-image {
        width: 62px !important;
        height: 62px !important;
    }

    .gm-storefront-cart-footer {
        padding: 10px 14px calc(16px + env(safe-area-inset-bottom)) !important;
    }
}

/* Gurmeat storefront product redesign layer. Scoped to the customer app. */
:root {
    --gm-app-bg: #f7f4ee;
    --gm-app-surface: #fffdf8;
    --gm-app-surface-raised: #ffffff;
    --gm-app-ink: #17120f;
    --gm-app-muted: #6f675e;
    --gm-app-soft: #ede5da;
    --gm-app-line: #ded2c3;
    --gm-app-brand: #a82a24;
    --gm-app-brand-strong: #7f1d1a;
    --gm-app-herb: #1f6f43;
    --gm-app-gold: #b6822b;
    --gm-app-danger: #b42318;
    --gm-app-radius: 8px;
    --gm-app-radius-lg: 12px;
    --gm-app-shadow: 0 18px 42px rgba(38, 28, 20, 0.08);
    --gm-app-shadow-tight: 0 10px 26px rgba(38, 28, 20, 0.07);
}

.gm-storefront-shell {
    min-height: 100dvh !important;
    background: var(--gm-app-bg) !important;
    color: var(--gm-app-ink) !important;
    font-family: "Public Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif !important;
}

.gm-storefront-shell :where(a, button, input, textarea, select) {
    letter-spacing: 0 !important;
}

.gm-storefront-shell :where(button, a, input, textarea, select):focus-visible {
    outline: 3px solid rgba(168, 42, 36, 0.24) !important;
    outline-offset: 3px !important;
}

.gm-storefront-shell .container {
    width: min(1188px, calc(100% - 32px)) !important;
    max-width: none !important;
    margin-inline: auto !important;
}

.gm-premium-header.ff-header {
    border-bottom: 1px solid rgba(222, 210, 195, 0.72) !important;
    background: rgba(255, 253, 248, 0.9) !important;
    box-shadow: 0 10px 28px rgba(38, 28, 20, 0.05) !important;
    backdrop-filter: blur(18px) saturate(142%) !important;
}

.gm-premium-header .storefront-header-container {
    min-height: 76px !important;
    gap: 18px !important;
}

.gm-premium-header .storefront-brand-logo {
    max-height: 42px !important;
    filter: saturate(1.02) contrast(1.03);
}

.storefront-desktop-nav .storefront-nav-link {
    min-height: 42px !important;
    border-radius: 999px !important;
    padding: 0 10px !important;
    color: var(--gm-app-muted) !important;
    font-size: 14px !important;
    font-weight: 650 !important;
}

.storefront-desktop-nav .storefront-nav-link::after {
    display: none !important;
}

.storefront-desktop-nav .storefront-nav-link:hover {
    color: var(--gm-app-ink) !important;
    background: rgba(168, 42, 36, 0.08) !important;
    transform: translateY(-1px) !important;
}

.storefront-search-shell.header-search-group {
    height: 44px !important;
    border-color: rgba(222, 210, 195, 0.9) !important;
    background: rgba(255, 255, 255, 0.72) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9) !important;
}

.storefront-search-shell.header-search-group:focus-within {
    border-color: rgba(168, 42, 36, 0.42) !important;
    background: #ffffff !important;
    box-shadow: 0 0 0 4px rgba(168, 42, 36, 0.08) !important;
    transform: none !important;
}

.gm-premium-header .webcart,
.gm-premium-header a.bg-primary,
.gm-premium-header span.bg-primary,
.gm-premium-header .dropdown-btn {
    min-height: 40px !important;
    border: 1px solid rgba(23, 18, 15, 0.08) !important;
    border-radius: 999px !important;
    background: var(--gm-app-ink) !important;
    color: #ffffff !important;
    box-shadow: none !important;
}

.storefront-language-corner .dropdown-btn {
    background: #ffffff !important;
    color: var(--gm-app-ink) !important;
}

.gm-home-hero {
    padding: 18px 0 8px !important;
}

.gm-home-hero__container {
    display: grid !important;
    gap: 12px !important;
}

.gm-home-hero__media {
    min-height: clamp(420px, 56vw, 620px) !important;
    border: 1px solid rgba(222, 210, 195, 0.72) !important;
    border-radius: 8px !important;
    background: #211711 !important;
    box-shadow: var(--gm-app-shadow) !important;
}

.gm-home-banner-shell--hero,
.gm-home-banner-shell--hero .banner-swiper,
.gm-home-banner-shell--hero .swiper,
.gm-home-banner-shell--hero .swiper-wrapper,
.gm-home-banner-shell--hero .swiper-slide {
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
}

.gm-home-banner-shell--hero .banner-swiper {
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
}

.gm-home-banner-shell--hero .banner-swiper img {
    width: 100% !important;
    height: 100% !important;
    min-height: clamp(420px, 56vw, 620px) !important;
    max-height: none !important;
    border-radius: 0 !important;
    object-fit: cover !important;
}

.gm-home-hero__overlay {
    max-width: 760px !important;
    padding: clamp(28px, 6vw, 72px) !important;
    background:
        linear-gradient(90deg, rgba(20, 12, 8, 0.94), rgba(20, 12, 8, 0.74) 46%, rgba(20, 12, 8, 0.1) 82%) !important;
}

.gm-home-hero__overlay span,
.gm-menu-hero__eyebrow,
.gm-search-hero > div > span {
    color: #f2c278 !important;
    font-size: 12px !important;
    font-weight: 820 !important;
    text-transform: uppercase !important;
}

.gm-menu-hero__eyebrow,
.gm-search-hero > div > span {
    color: var(--gm-app-brand) !important;
}

.gm-home-hero__overlay h1 {
    max-width: 680px !important;
    font-size: clamp(42px, 6.4vw, 82px) !important;
    font-weight: 860 !important;
    line-height: 0.94 !important;
}

.gm-home-hero__overlay p {
    max-width: 540px !important;
    color: rgba(255, 249, 238, 0.9) !important;
    font-size: clamp(15px, 1.4vw, 18px) !important;
}

.gm-home-hero__actions a,
.gm-home-quickbar a,
.gm-soft-link,
.gm-primary-button,
.gm-checkout-submit,
.gm-storefront-cart-checkout,
.gm-account-submit,
.gm-address-submit {
    transition: transform 180ms ease, background-color 180ms ease, color 180ms ease, border-color 180ms ease, box-shadow 180ms ease !important;
}

.gm-home-hero__actions a {
    min-height: 48px !important;
    border-color: rgba(255, 255, 255, 0.24) !important;
    background: rgba(255, 255, 255, 0.13) !important;
    font-size: 14px !important;
}

.gm-home-hero__actions a:first-child {
    border-color: #ffffff !important;
    background: #ffffff !important;
    color: var(--gm-app-ink) !important;
    box-shadow: 0 18px 34px rgba(0, 0, 0, 0.22) !important;
}

.gm-home-hero__actions a:hover,
.gm-home-quickbar a:hover,
.gm-menu-card__add:hover,
.gm-checkout-submit:hover,
.gm-storefront-cart-checkout:hover,
.gm-account-submit:hover,
.gm-address-submit:hover {
    transform: translateY(-1px) !important;
}

.gm-home-quickbar,
.gm-home-promise span,
.gm-menu-hero,
.gm-search-hero,
.gm-page-heading {
    border: 1px solid rgba(222, 210, 195, 0.78) !important;
    border-radius: var(--gm-app-radius) !important;
    background: rgba(255, 253, 248, 0.82) !important;
    box-shadow: none !important;
}

.gm-home-quickbar {
    min-height: 62px !important;
    padding: 12px !important;
}

.gm-home-quickbar p {
    color: var(--gm-app-muted) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
}

.gm-home-quickbar a:first-child {
    border-color: var(--gm-app-ink) !important;
    background: var(--gm-app-ink) !important;
}

.gm-home-promise {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.gm-home-promise span {
    min-height: 54px !important;
    color: var(--gm-app-ink) !important;
    font-weight: 760 !important;
}

.gm-section-heading h2,
.gm-page-heading h1,
.gm-menu-hero h1,
.gm-search-hero h1 {
    color: var(--gm-app-ink) !important;
    font-weight: 820 !important;
}

.gm-menu-hero,
.gm-search-hero {
    padding: clamp(18px, 3.4vw, 34px) !important;
}

.gm-menu-hero__search,
.gm-search-hero__form {
    min-height: 54px !important;
    border-color: rgba(222, 210, 195, 0.9) !important;
    background: #ffffff !important;
}

.gm-menu-hero__search:focus-within,
.gm-search-hero__form:focus-within {
    border-color: rgba(168, 42, 36, 0.42) !important;
    box-shadow: 0 0 0 4px rgba(168, 42, 36, 0.08) !important;
}

.gm-filter-chip {
    min-height: 42px !important;
    border-color: rgba(222, 210, 195, 0.9) !important;
    background: rgba(255, 253, 248, 0.9) !important;
    color: var(--gm-app-muted) !important;
    font-weight: 720 !important;
}

.gm-filter-chip:hover,
.gm-filter-chip.is-active {
    border-color: var(--gm-app-ink) !important;
    background: var(--gm-app-ink) !important;
    color: #ffffff !important;
}

.gm-product-grid-premium {
    grid-template-columns: repeat(auto-fill, minmax(224px, 1fr)) !important;
    gap: clamp(14px, 2vw, 22px) !important;
}

.gm-storefront-content .gm-menu-card.product-card-grid,
.gm-storefront-content .gm-menu-card.product-card-list,
.gm-offer-grid .gm-offer-card,
.gm-checkout-card,
.gm-checkout-empty-card,
.gm-account-card {
    border: 1px solid rgba(222, 210, 195, 0.82) !important;
    border-radius: var(--gm-app-radius) !important;
    background: var(--gm-app-surface-raised) !important;
    box-shadow: none !important;
}

.gm-storefront-content .gm-menu-card.product-card-grid:hover,
.gm-storefront-content .gm-menu-card.product-card-list:hover,
.gm-offer-grid .gm-offer-card:hover {
    border-color: rgba(168, 42, 36, 0.34) !important;
    box-shadow: var(--gm-app-shadow-tight) !important;
    transform: translateY(-2px) !important;
}

.gm-menu-card.product-card-grid .gm-menu-card__media {
    aspect-ratio: 1 / 0.82 !important;
}

.gm-menu-card__media {
    background: #eee5da !important;
}

.gm-storefront-content .gm-menu-card .product-card-grid-image,
.gm-storefront-content .gm-menu-card .product-card-list-image {
    transform-origin: center !important;
    transition: transform 260ms ease, filter 260ms ease !important;
}

.gm-storefront-content .gm-menu-card:hover .product-card-grid-image,
.gm-storefront-content .gm-menu-card:hover .product-card-list-image {
    filter: saturate(1.04) contrast(1.03) !important;
    transform: scale(1.035) !important;
}

.gm-menu-card__content {
    gap: 10px !important;
    padding: 14px !important;
}

.gm-menu-card__title {
    color: var(--gm-app-ink) !important;
    font-size: 16px !important;
    font-weight: 820 !important;
}

.gm-menu-card__description {
    color: var(--gm-app-muted) !important;
    font-size: 12.5px !important;
}

.gm-menu-card__badge {
    min-height: 24px !important;
    padding-inline: 9px !important;
    font-size: 10px !important;
    font-weight: 820 !important;
    backdrop-filter: blur(10px) !important;
}

.gm-menu-card__badge--sale {
    background: #fff7e4 !important;
    color: var(--gm-app-gold) !important;
}

.gm-menu-card__badge--chef {
    background: rgba(23, 18, 15, 0.92) !important;
}

.gm-menu-card__badge--veg {
    background: #e8f4ec !important;
    color: var(--gm-app-herb) !important;
}

.gm-menu-card__badge--spicy {
    background: #fff0ec !important;
    color: var(--gm-app-brand) !important;
}

.gm-menu-card__meta span {
    background: #f3ece2 !important;
    color: #6f5f4f !important;
}

.gm-menu-card__price h4,
.gm-storefront-content .product-card-grid-price-current,
.gm-storefront-content .product-card-list-price-current {
    color: var(--gm-app-ink) !important;
    font-size: 17px !important;
    font-weight: 860 !important;
}

.product-card-grid-price-previous {
    color: #9b8f82 !important;
}

.gm-menu-card__add.product-card-grid-cart-btn,
.gm-menu-card__add.product-card-list-cart-btn {
    min-width: 48px !important;
    height: 42px !important;
    border-radius: 999px !important;
    background: var(--gm-app-ink) !important;
    color: #ffffff !important;
}

.gm-menu-card__add.product-card-grid-cart-btn:hover,
.gm-menu-card__add.product-card-list-cart-btn:hover {
    background: var(--gm-app-brand) !important;
}

.modal.ff-modal {
    background: rgba(23, 18, 15, 0.42) !important;
    backdrop-filter: blur(10px) !important;
}

.modal.ff-modal .modal-dialog {
    border: 1px solid rgba(222, 210, 195, 0.84) !important;
    border-radius: var(--gm-app-radius-lg) !important;
    background: #fffdf8 !important;
    box-shadow: 0 30px 80px rgba(23, 18, 15, 0.22) !important;
}

.modal.ff-modal .modal-header,
.modal.ff-modal .modal-body {
    color: var(--gm-app-ink) !important;
}

.modal.ff-modal :where(input, textarea, select) {
    border-color: rgba(222, 210, 195, 0.9) !important;
    border-radius: 8px !important;
    background: #ffffff !important;
    color: var(--gm-app-ink) !important;
}

.modal.ff-modal :where(input, textarea, select):focus {
    border-color: rgba(168, 42, 36, 0.42) !important;
    box-shadow: 0 0 0 4px rgba(168, 42, 36, 0.08) !important;
    outline: 0 !important;
}

.gm-checkout-page,
.gm-account-page,
.storefront-static-page {
    background: var(--gm-app-bg) !important;
}

.gm-checkout-container,
.gm-account-container {
    width: min(1120px, calc(100% - 32px)) !important;
}

.gm-checkout-summary-panel {
    top: 96px !important;
}

.gm-checkout-submit,
.gm-storefront-cart-checkout,
.gm-account-submit,
.gm-address-submit,
.gm-checkout-block-head button.is-primary {
    background: var(--gm-app-ink) !important;
    color: #ffffff !important;
    box-shadow: none !important;
}

.gm-checkout-submit:hover,
.gm-storefront-cart-checkout:hover,
.gm-account-submit:hover,
.gm-address-submit:hover {
    background: var(--gm-app-brand) !important;
}

.gm-checkout-coupon,
.gm-checkout-loyalty,
.gm-checkout-totals,
.gm-checkout-empty-note,
.gm-storefront-cart-total,
.gm-account-address-card {
    border-color: rgba(222, 210, 195, 0.9) !important;
    background: #fbf7ef !important;
}

.gm-checkout-order-type,
.gm-cart-order-type-switch {
    border-color: rgba(222, 210, 195, 0.9) !important;
    background: #f0e7dc !important;
}

.gm-checkout-order-type .cart-switch:checked + label,
.gm-cart-order-type-switch .cart-switch:checked + label {
    background: var(--gm-app-ink) !important;
}

#cart.gm-storefront-cart-screen {
    background: rgba(23, 18, 15, 0.38) !important;
    backdrop-filter: blur(8px) !important;
}

#cart > div.gm-storefront-cart-panel {
    border-left: 1px solid rgba(222, 210, 195, 0.82) !important;
    background: #fffdf8 !important;
    box-shadow: -26px 0 70px rgba(23, 18, 15, 0.18) !important;
}

.gm-storefront-cart-header,
.gm-storefront-cart-footer {
    background: rgba(255, 253, 248, 0.96) !important;
}

.storefront-account-dropdown,
.storefront-account-summary {
    border-color: rgba(222, 210, 195, 0.82) !important;
    background: #fffdf8 !important;
}

.storefront-toast {
    border-radius: 8px !important;
    box-shadow: var(--gm-app-shadow) !important;
}

.storefront-static-page .container {
    max-width: 860px !important;
}

.storefront-static-page .ql-editor {
    border: 1px solid rgba(222, 210, 195, 0.82) !important;
    border-radius: var(--gm-app-radius) !important;
    background: #fffdf8 !important;
    color: var(--gm-app-ink) !important;
    padding: clamp(18px, 3vw, 28px) !important;
    line-height: 1.62 !important;
}

.footer-part {
    background: #17120f !important;
}

.gm-storefront-shell .footer-part::before {
    display: none !important;
}

@keyframes gm-rise-in {
    from { opacity: 0; }
    to { opacity: 1; }
}

.gm-home-hero,
.gm-home-section,
.gm-menu-experience,
.gm-search-experience,
.gm-offers-page,
.gm-offer-items,
.gm-checkout-page,
.gm-account-page,
.storefront-static-page {
    animation: gm-rise-in 420ms ease both;
}

@media (max-width: 1023px) {
    .gm-premium-header .storefront-header-container {
        min-height: 96px !important;
    }

    .gm-home-hero__media {
        min-height: 420px !important;
    }

    .gm-home-banner-shell--hero .banner-swiper img {
        min-height: 420px !important;
        object-fit: cover !important;
    }

    .gm-home-hero__overlay {
        background: linear-gradient(180deg, rgba(20, 12, 8, 0.18), rgba(20, 12, 8, 0.9)) !important;
        justify-content: flex-end !important;
    }

    .gm-product-grid-premium {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 12px !important;
    }

    .gm-menu-card__content {
        min-height: 124px !important;
    }

    .gm-menu-card__add.product-card-grid-cart-btn {
        min-width: 42px !important;
        width: 42px !important;
        padding: 0 !important;
    }

    .gm-menu-card__add.product-card-grid-cart-btn span {
        display: none !important;
    }
}

@media (max-width: 767px) {
    .gm-storefront-shell .container {
        width: min(100% - 24px, 1188px) !important;
    }

    .gm-storefront-content {
        padding-bottom: calc(76px + env(safe-area-inset-bottom)) !important;
    }

    .gm-premium-header.ff-header .storefront-header-container {
        min-height: 100px !important;
        padding: 10px 12px 12px !important;
    }

    .storefront-language-corner {
        top: 10px !important;
        right: 12px !important;
    }

    .gm-home-hero {
        padding-top: 12px !important;
    }

    .gm-home-hero__media {
        min-height: min(520px, calc(100dvh - 142px)) !important;
    }

    .gm-home-banner-shell--hero .banner-swiper img {
        min-height: min(520px, calc(100dvh - 142px)) !important;
    }

    .gm-home-hero__overlay {
        padding: 22px !important;
    }

    .gm-home-hero__overlay h1 {
        font-size: clamp(36px, 12vw, 54px) !important;
    }

    .gm-home-quickbar {
        display: none !important;
    }

    .gm-home-promise {
        grid-template-columns: 1fr !important;
    }

    .gm-menu-hero,
    .gm-search-hero,
    .gm-page-heading {
        border-radius: 8px !important;
        padding: 18px !important;
    }

    .gm-menu-toolbar,
    .gm-results-toolbar {
        gap: 10px !important;
    }

    .gm-product-grid-premium {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .gm-menu-card.product-card-grid .gm-menu-card__media {
        aspect-ratio: 1 / 0.9 !important;
    }

    .gm-menu-card__title {
        font-size: 13.5px !important;
        line-height: 1.18 !important;
    }

    .gm-menu-card__content {
        min-height: 116px !important;
        padding: 10px !important;
    }

    .gm-menu-card__footer {
        align-items: center !important;
    }

    .gm-mobile-tabbar {
        left: 50% !important;
        right: auto !important;
        bottom: calc(10px + env(safe-area-inset-bottom)) !important;
        width: min(392px, calc(100% - 24px)) !important;
        min-height: 58px !important;
        grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
        gap: 2px !important;
        padding: 6px !important;
        border: 1px solid rgba(222, 210, 195, 0.82) !important;
        border-radius: 999px !important;
        background: rgba(255, 253, 248, 0.92) !important;
        box-shadow: 0 18px 40px rgba(23, 18, 15, 0.16) !important;
        backdrop-filter: blur(22px) saturate(150%) !important;
        transform: translateX(-50%) !important;
    }

    .gm-mobile-tab,
    .gm-mobile-cart-tab {
        min-height: 46px !important;
        height: 46px !important;
        border-radius: 999px !important;
        color: #756b61 !important;
    }

    .gm-mobile-tab.active,
    .gm-mobile-cart-tab.active {
        background: var(--gm-app-ink) !important;
        color: #ffffff !important;
    }

    .gm-mobile-cart-tab.has-items:not(.active) {
        color: var(--gm-app-brand) !important;
    }

    .gm-mobile-cart-dot {
        top: 9px !important;
        right: calc(50% - 15px) !important;
        width: 7px !important;
        height: 7px !important;
        border: 1px solid #fffdf8 !important;
        background: var(--gm-app-brand) !important;
    }

    body:has(.gm-checkout-page) .gm-mobile-tabbar,
    body.gm-cart-drawer-open .gm-mobile-tabbar {
        display: grid !important;
    }

    .gm-checkout-page {
        padding-bottom: calc(24px + env(safe-area-inset-bottom)) !important;
    }

    .gm-checkout-summary-actions {
        position: sticky !important;
        bottom: calc(12px + env(safe-area-inset-bottom)) !important;
        z-index: 20 !important;
        margin: 4px -2px -2px !important;
        padding-top: 8px !important;
        background: linear-gradient(180deg, rgba(255, 253, 248, 0), #fffdf8 30%) !important;
    }

    #cart.gm-storefront-cart-screen {
        background: #fffdf8 !important;
        backdrop-filter: none !important;
    }

    #cart > div.gm-storefront-cart-panel {
        border-left: 0 !important;
        box-shadow: none !important;
    }

    .gm-storefront-cart-footer {
        padding-bottom: calc(18px + env(safe-area-inset-bottom)) !important;
    }

    .modal.ff-modal.active .modal-dialog {
        width: calc(100vw - 20px) !important;
        max-height: calc(100dvh - 20px) !important;
        border-radius: 14px !important;
    }
}

.gm-offers-page {
    min-height: calc(100dvh - 170px) !important;
    margin-top: clamp(18px, 2.4vw, 34px) !important;
}

.gm-offers-hero {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: end !important;
    gap: clamp(18px, 3vw, 42px) !important;
    margin-bottom: clamp(18px, 3vw, 34px) !important;
    padding: clamp(22px, 4vw, 46px) !important;
    border: 1px solid rgba(222, 210, 195, 0.82) !important;
    border-radius: var(--gm-app-radius) !important;
    background:
        linear-gradient(135deg, rgba(255, 253, 248, 0.94), rgba(248, 241, 231, 0.88)),
        radial-gradient(circle at 86% 8%, rgba(168, 42, 36, 0.12), transparent 30%) !important;
}

.gm-offers-hero__eyebrow {
    display: inline-flex !important;
    margin-bottom: 12px !important;
    color: var(--gm-app-brand) !important;
    font-size: 12px !important;
    font-weight: 820 !important;
    letter-spacing: 0 !important;
    text-transform: uppercase !important;
}

.gm-offers-hero h1 {
    margin: 0 !important;
    color: var(--gm-app-ink) !important;
    font-size: clamp(38px, 6vw, 78px) !important;
    font-weight: 860 !important;
    line-height: 0.96 !important;
    letter-spacing: 0 !important;
}

.gm-offers-hero p {
    max-width: 640px !important;
    margin: 16px 0 0 !important;
    color: var(--gm-app-muted) !important;
    font-size: clamp(15px, 1.25vw, 18px) !important;
    line-height: 1.55 !important;
}

.gm-offers-hero__cta,
.gm-offers-empty a {
    display: inline-flex !important;
    min-height: 46px !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 20px !important;
    border-radius: 999px !important;
    background: var(--gm-app-ink) !important;
    color: #ffffff !important;
    font-size: 14px !important;
    font-weight: 820 !important;
    transition: transform 180ms ease, background-color 180ms ease !important;
}

.gm-offers-hero__cta:hover,
.gm-offers-empty a:hover {
    background: var(--gm-app-brand) !important;
    transform: translateY(-1px) !important;
}

.gm-offer-grid {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 420px), 1fr)) !important;
    gap: clamp(16px, 2vw, 26px) !important;
}

.gm-offer-grid .gm-offer-card {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-height: clamp(230px, 26vw, 340px) !important;
    aspect-ratio: auto !important;
    overflow: hidden !important;
    border-radius: var(--gm-app-radius-lg) !important;
    background: var(--gm-app-ink) !important;
    isolation: isolate !important;
}

.gm-offer-grid .gm-offer-card::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: 1 !important;
    background:
        linear-gradient(90deg, rgba(23, 18, 15, 0.82), rgba(23, 18, 15, 0.36) 46%, rgba(23, 18, 15, 0.1)),
        linear-gradient(0deg, rgba(23, 18, 15, 0.42), transparent 58%) !important;
    pointer-events: none !important;
}

.gm-offer-grid .gm-offer-card img {
    width: 100% !important;
    height: 100% !important;
    min-height: inherit !important;
    object-fit: cover !important;
    transition: transform 520ms ease, filter 520ms ease !important;
}

.gm-offer-grid .gm-offer-card:hover img {
    transform: scale(1.035) !important;
    filter: saturate(1.05) contrast(1.02) !important;
}

.gm-offer-grid .gm-offer-card .gm-offer-card__badge,
.gm-offer-grid .gm-offer-card .gm-offer-card__title {
    position: absolute !important;
    z-index: 2 !important;
    right: auto !important;
    bottom: auto !important;
    left: clamp(18px, 3vw, 32px) !important;
    max-width: min(72%, 520px) !important;
    border-radius: 999px !important;
}

.gm-offer-grid .gm-offer-card .gm-offer-card__badge {
    top: clamp(18px, 2.4vw, 30px) !important;
    display: inline-flex !important;
    align-items: center !important;
    width: auto !important;
    padding: 7px 12px !important;
    background: rgba(255, 253, 248, 0.92) !important;
    color: var(--gm-app-brand) !important;
    font-size: 12px !important;
    font-weight: 820 !important;
    line-height: 1 !important;
}

.gm-offer-grid .gm-offer-card .gm-offer-card__title {
    bottom: clamp(18px, 3vw, 32px) !important;
    padding: 0 !important;
    background: transparent !important;
    color: #ffffff !important;
    font-size: clamp(24px, 3.4vw, 46px) !important;
    font-weight: 860 !important;
    line-height: 0.98 !important;
    letter-spacing: 0 !important;
    white-space: normal !important;
    text-shadow: 0 12px 32px rgba(0, 0, 0, 0.28) !important;
}

.gm-offers-empty {
    max-width: 520px !important;
    padding: 24px !important;
    border: 1px solid rgba(222, 210, 195, 0.82) !important;
    border-radius: var(--gm-app-radius) !important;
    background: var(--gm-app-surface-raised) !important;
}

.gm-offers-empty p {
    margin: 0 0 18px !important;
    color: var(--gm-app-muted) !important;
    font-size: 15px !important;
    line-height: 1.55 !important;
}

.gm-empty-state {
    display: flex !important;
    max-width: 520px !important;
    min-height: 280px !important;
    margin: clamp(28px, 6vw, 72px) auto !important;
    padding: clamp(24px, 4vw, 42px) !important;
    align-items: center !important;
    justify-content: center !important;
    flex-direction: column !important;
    text-align: center !important;
    border: 1px solid rgba(222, 210, 195, 0.82) !important;
    border-radius: var(--gm-app-radius) !important;
    background: rgba(255, 253, 248, 0.9) !important;
}

.gm-empty-state__mark {
    display: inline-flex !important;
    width: 64px !important;
    height: 64px !important;
    align-items: center !important;
    justify-content: center !important;
    margin-bottom: 18px !important;
    border: 1px solid rgba(168, 42, 36, 0.18) !important;
    border-radius: 999px !important;
    background: rgba(168, 42, 36, 0.08) !important;
    color: var(--gm-app-brand) !important;
    font-size: 28px !important;
    font-weight: 860 !important;
    line-height: 1 !important;
}

.gm-empty-state h2 {
    margin: 0 !important;
    color: var(--gm-app-ink) !important;
    font-size: clamp(24px, 3vw, 34px) !important;
    font-weight: 840 !important;
    line-height: 1.05 !important;
}

.gm-empty-state p {
    max-width: 360px !important;
    margin: 12px 0 22px !important;
    color: var(--gm-app-muted) !important;
    font-size: 15px !important;
    line-height: 1.55 !important;
}

.gm-empty-state a {
    display: inline-flex !important;
    min-height: 46px !important;
    min-width: 180px !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 20px !important;
    border-radius: 999px !important;
    background: var(--gm-app-brand) !important;
    color: #ffffff !important;
    font-size: 14px !important;
    font-weight: 820 !important;
    transition: transform 180ms ease, background-color 180ms ease !important;
}

.gm-empty-state a:hover {
    background: var(--gm-app-ink) !important;
    transform: translateY(-1px) !important;
}

@media (max-width: 767px) {
    .gm-offers-page {
        margin-top: 16px !important;
        margin-bottom: 92px !important;
    }

    .gm-offers-hero {
        grid-template-columns: 1fr !important;
        gap: 18px !important;
        padding: 22px !important;
        border-radius: 14px !important;
    }

    .gm-offers-hero h1 {
        font-size: 36px !important;
        line-height: 1 !important;
    }

    .gm-offers-hero p {
        font-size: 14px !important;
    }

    .gm-offers-hero__cta {
        width: 100% !important;
    }

    .gm-offer-grid {
        grid-template-columns: 1fr !important;
    }

    .gm-offer-grid .gm-offer-card {
        min-height: 226px !important;
        border-radius: 14px !important;
    }

    .gm-offer-grid .gm-offer-card .gm-offer-card__badge,
    .gm-offer-grid .gm-offer-card .gm-offer-card__title {
        left: 18px !important;
        max-width: calc(100% - 36px) !important;
    }

    .gm-offer-grid .gm-offer-card .gm-offer-card__title {
        font-size: 28px !important;
    }

    .gm-empty-state {
        min-height: 240px !important;
        margin: 24px auto 92px !important;
        padding: 24px 20px !important;
        border-radius: 14px !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .gm-home-hero,
    .gm-home-section,
    .gm-menu-experience,
    .gm-search-experience,
    .gm-offers-page,
    .gm-offer-items,
    .gm-checkout-page,
    .gm-account-page,
    .storefront-static-page {
        animation: none !important;
    }
}

/* Quiet modern refinement layer. */
:root {
    --gm-app-bg: #f8f7f4;
    --gm-app-surface: #fffefa;
    --gm-app-surface-raised: #ffffff;
    --gm-app-ink: #171412;
    --gm-app-muted: #6d6861;
    --gm-app-line: #e3dbcf;
    --gm-app-brand: #b3231e;
    --gm-app-radius: 12px;
    --gm-app-radius-lg: 16px;
    --gm-app-shadow: none;
    --gm-app-shadow-tight: none;
}

.gm-storefront-shell {
    background: var(--gm-app-bg) !important;
}

.gm-premium-header.ff-header {
    border-bottom-color: rgba(227, 219, 207, 0.88) !important;
    background: rgba(255, 254, 250, 0.92) !important;
    box-shadow: none !important;
}

.storefront-desktop-nav .storefront-nav-link:hover {
    background: transparent !important;
    color: var(--gm-app-ink) !important;
    transform: none !important;
}

.storefront-search-shell.header-search-group,
.gm-menu-hero__search,
.gm-search-hero__form {
    border-color: var(--gm-app-line) !important;
    background: rgba(255, 255, 255, 0.74) !important;
    box-shadow: none !important;
}

.gm-home-hero {
    padding: clamp(14px, 2vw, 24px) 0 4px !important;
}

.gm-home-hero__container {
    gap: 16px !important;
}

.gm-home-hero__media {
    min-height: clamp(430px, 50vw, 590px) !important;
    overflow: hidden !important;
    border-color: var(--gm-app-line) !important;
    border-radius: var(--gm-app-radius-lg) !important;
    background: #171412 !important;
    box-shadow: none !important;
}

.gm-home-banner-shell--hero .banner-swiper img {
    min-height: clamp(430px, 50vw, 590px) !important;
    filter: saturate(0.96) contrast(1.02) !important;
}

.gm-home-hero__overlay {
    max-width: 640px !important;
    padding: clamp(28px, 5vw, 64px) !important;
    background: linear-gradient(90deg, rgba(18, 15, 13, 0.78), rgba(18, 15, 13, 0.42) 58%, rgba(18, 15, 13, 0)) !important;
}

.gm-home-hero__overlay span,
.gm-menu-hero__eyebrow,
.gm-search-hero > div > span,
.gm-offers-hero__eyebrow {
    color: var(--gm-app-brand) !important;
    font-size: 11px !important;
    font-weight: 760 !important;
    letter-spacing: 0 !important;
}

.gm-home-hero__overlay span {
    color: rgba(255, 254, 250, 0.76) !important;
}

.gm-home-hero__overlay h1 {
    max-width: 560px !important;
    font-size: clamp(38px, 5.2vw, 68px) !important;
    font-weight: 820 !important;
    line-height: 1 !important;
}

.gm-home-hero__overlay p {
    max-width: 480px !important;
    color: rgba(255, 254, 250, 0.82) !important;
    font-size: clamp(14px, 1.2vw, 16px) !important;
    line-height: 1.55 !important;
}

.gm-home-hero__actions a,
.gm-home-hero__actions a:first-child,
.gm-home-quickbar a,
.gm-offers-hero__cta,
.gm-offers-empty a,
.gm-empty-state a {
    box-shadow: none !important;
}

.gm-home-hero__actions a:hover,
.gm-home-quickbar a:hover,
.gm-offers-hero__cta:hover,
.gm-offers-empty a:hover,
.gm-empty-state a:hover,
.gm-menu-card__add:hover,
.gm-checkout-submit:hover,
.gm-storefront-cart-checkout:hover,
.gm-account-submit:hover,
.gm-address-submit:hover {
    transform: none !important;
}

.gm-home-quickbar,
.gm-home-promise {
    display: none !important;
}

.gm-menu-hero,
.gm-search-hero,
.gm-page-heading,
.gm-offers-hero {
    margin-bottom: clamp(18px, 2.4vw, 28px) !important;
    padding: 6px 0 16px !important;
    border: 0 !important;
    border-bottom: 1px solid var(--gm-app-line) !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.gm-menu-hero h1,
.gm-search-hero h1,
.gm-page-heading h1,
.gm-offers-hero h1 {
    font-size: clamp(34px, 4.6vw, 56px) !important;
    font-weight: 820 !important;
    line-height: 1.02 !important;
}

.gm-menu-hero p,
.gm-search-hero p,
.gm-page-heading p,
.gm-offers-hero p {
    color: var(--gm-app-muted) !important;
    font-size: 15px !important;
}

.gm-offers-hero {
    align-items: end !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
}

.gm-offers-hero__cta {
    border: 1px solid var(--gm-app-line) !important;
    background: #ffffff !important;
    color: var(--gm-app-ink) !important;
}

.gm-offer-grid {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 340px), 1fr)) !important;
    gap: 16px !important;
}

.gm-offer-grid .gm-offer-card {
    display: flex !important;
    min-height: 0 !important;
    flex-direction: column !important;
    overflow: hidden !important;
    border-color: var(--gm-app-line) !important;
    border-radius: var(--gm-app-radius) !important;
    background: #ffffff !important;
    box-shadow: none !important;
}

.gm-offer-grid .gm-offer-card::before {
    display: none !important;
}

.gm-offer-grid .gm-offer-card img {
    display: block !important;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 2.65 / 1 !important;
    object-fit: contain !important;
    background: #111111 !important;
    transition: none !important;
}

.gm-offer-grid .gm-offer-card:hover img {
    transform: none !important;
    filter: none !important;
}

.gm-offer-grid .gm-offer-card .gm-offer-card__badge {
    display: none !important;
}

.gm-offer-grid .gm-offer-card .gm-offer-card__title {
    position: static !important;
    max-width: 100% !important;
    min-height: 76px !important;
    padding: 16px !important;
    background: transparent !important;
    color: var(--gm-app-ink) !important;
    font-size: 20px !important;
    font-weight: 760 !important;
    line-height: 1.12 !important;
    text-shadow: none !important;
}

.gm-storefront-content .gm-menu-card.product-card-grid,
.gm-storefront-content .gm-menu-card.product-card-list,
.gm-checkout-card,
.gm-checkout-empty-card,
.gm-account-card,
.gm-empty-state,
.gm-offers-empty {
    border-color: var(--gm-app-line) !important;
    border-radius: var(--gm-app-radius) !important;
    background: #ffffff !important;
    box-shadow: none !important;
}

.gm-storefront-content .gm-menu-card.product-card-grid:hover,
.gm-storefront-content .gm-menu-card.product-card-list:hover,
.gm-offer-grid .gm-offer-card:hover {
    border-color: #d5cabe !important;
    box-shadow: none !important;
    transform: none !important;
}

.gm-storefront-content .gm-menu-card:hover .product-card-grid-image,
.gm-storefront-content .gm-menu-card:hover .product-card-list-image {
    filter: none !important;
    transform: none !important;
}

.gm-menu-card__add.product-card-grid-cart-btn,
.gm-menu-card__add.product-card-list-cart-btn,
.gm-checkout-submit,
.gm-storefront-cart-checkout,
.gm-account-submit,
.gm-address-submit {
    background: var(--gm-app-ink) !important;
    color: #ffffff !important;
    box-shadow: none !important;
}

.gm-filter-chip {
    border-color: var(--gm-app-line) !important;
    background: #ffffff !important;
    color: var(--gm-app-muted) !important;
}

.gm-filter-chip.is-active {
    border-color: var(--gm-app-ink) !important;
    background: var(--gm-app-ink) !important;
    color: #ffffff !important;
}

.gm-item-detail-page {
    margin-top: clamp(18px, 2.4vw, 34px) !important;
}

.gm-item-detail-card {
    gap: clamp(18px, 3vw, 34px) !important;
    padding: clamp(10px, 1.6vw, 16px) !important;
    border: 1px solid var(--gm-app-line) !important;
    border-radius: var(--gm-app-radius-lg) !important;
    background: #ffffff !important;
    box-shadow: none !important;
}

.gm-item-detail-media {
    min-width: 0 !important;
}

.gm-item-detail-image {
    height: clamp(340px, 32vw, 460px) !important;
    border-radius: 12px !important;
}

.gm-item-detail-panel {
    min-width: 0 !important;
    padding: clamp(4px, 1.4vw, 18px) clamp(4px, 1.4vw, 18px) clamp(4px, 1.4vw, 18px) 0 !important;
}

.gm-item-detail-panel h1 {
    color: var(--gm-app-ink) !important;
    font-size: clamp(28px, 3vw, 42px) !important;
    font-weight: 820 !important;
    line-height: 1.03 !important;
}

.gm-item-detail-panel h2 {
    color: var(--gm-app-brand) !important;
}

.gm-item-detail-panel textarea,
.gm-item-detail-panel select {
    border-color: var(--gm-app-line) !important;
    border-radius: 12px !important;
    background: #fffefa !important;
}

.gm-item-buybar {
    border: 1px solid var(--gm-app-line) !important;
    border-radius: 14px !important;
    background: #f8f7f4 !important;
}

.gm-mobile-tabbar {
    box-shadow: none !important;
}

@media (max-width: 767px) {
    .gm-home-hero__media {
        min-height: min(460px, calc(100dvh - 158px)) !important;
        border-radius: 14px !important;
    }

    .gm-home-banner-shell--hero .banner-swiper img {
        min-height: min(460px, calc(100dvh - 158px)) !important;
    }

    .gm-home-hero__overlay {
        padding: 22px !important;
        background: linear-gradient(180deg, rgba(18, 15, 13, 0.04), rgba(18, 15, 13, 0.78)) !important;
    }

    .gm-home-hero__overlay h1 {
        font-size: clamp(32px, 9.4vw, 42px) !important;
        line-height: 1.03 !important;
    }

    .gm-home-hero__overlay p {
        font-size: 14px !important;
    }

    .gm-home-hero__actions a {
        min-height: 44px !important;
    }

    .gm-menu-hero,
    .gm-search-hero,
    .gm-page-heading,
    .gm-offers-hero {
        padding: 2px 0 16px !important;
        border-radius: 0 !important;
    }

    .gm-menu-hero h1,
    .gm-search-hero h1,
    .gm-page-heading h1,
    .gm-offers-hero h1 {
        font-size: 32px !important;
        line-height: 1.05 !important;
    }

    .gm-offers-hero {
        grid-template-columns: 1fr !important;
    }

    .gm-offers-hero__cta {
        width: 100% !important;
    }

    .gm-offer-grid .gm-offer-card {
        border-radius: 12px !important;
    }

    .gm-offer-grid .gm-offer-card .gm-offer-card__title {
        min-height: 64px !important;
        padding: 14px !important;
        font-size: 19px !important;
    }

    .gm-item-detail-page {
        margin-top: 16px !important;
        padding-bottom: 118px !important;
    }

    .gm-item-detail-card {
        gap: 18px !important;
        padding: 12px !important;
        border-radius: 16px !important;
    }

    .gm-item-detail-image {
        height: min(280px, 68vw) !important;
        border-radius: 12px !important;
    }

    .gm-item-detail-panel {
        padding: 0 !important;
    }

    .gm-item-detail-panel h1 {
        font-size: 26px !important;
    }

    .gm-item-buybar {
        position: fixed !important;
        right: 14px !important;
        bottom: calc(76px + env(safe-area-inset-bottom)) !important;
        left: 14px !important;
        z-index: 78 !important;
        min-height: 66px !important;
        margin: 0 !important;
        padding: 10px 12px !important;
        border-radius: 999px !important;
        background: rgba(255, 255, 255, 0.94) !important;
        backdrop-filter: blur(18px) saturate(150%) !important;
    }

    .gm-item-buybar p {
        display: none !important;
    }

    .gm-item-buybar h3 {
        font-size: 18px !important;
    }

    .gm-item-buybar .db-btn {
        min-width: 148px !important;
        height: 46px !important;
        border-radius: 999px !important;
        font-size: 13px !important;
        font-weight: 760 !important;
    }

    body.gm-cart-drawer-open .gm-item-buybar {
        display: none !important;
    }
}

.gm-home-hero__media--editorial {
    position: relative !important;
    display: flex !important;
    align-items: stretch !important;
    min-height: clamp(480px, 48vw, 620px) !important;
    overflow: hidden !important;
    background: #fffefa !important;
}

.gm-home-hero__media--editorial .gm-home-hero__visuals {
    position: absolute !important;
    inset: 0 !important;
    overflow: hidden !important;
}

.gm-home-hero__media--editorial .gm-home-hero__visuals::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: 1 !important;
    background: linear-gradient(90deg, #fffefa 0%, #fffefa 42%, rgba(255, 254, 250, 0.74) 58%, rgba(255, 254, 250, 0.1) 100%) !important;
    pointer-events: none !important;
}

.gm-home-hero__dish {
    position: absolute !important;
    display: block !important;
    overflow: hidden !important;
    border: 1px solid var(--gm-app-line) !important;
    border-radius: 18px !important;
    background: #ffffff !important;
}

.gm-home-hero__dish img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    filter: saturate(0.98) contrast(1.02) !important;
}

.gm-home-hero__dish--1 {
    top: 42px !important;
    right: clamp(28px, 5vw, 78px) !important;
    width: clamp(330px, 38vw, 520px) !important;
    height: clamp(250px, 28vw, 380px) !important;
}

.gm-home-hero__dish--2 {
    right: clamp(290px, 30vw, 430px) !important;
    bottom: 46px !important;
    width: clamp(190px, 21vw, 300px) !important;
    height: clamp(150px, 17vw, 220px) !important;
}

.gm-home-hero__dish--3 {
    right: clamp(42px, 8vw, 130px) !important;
    bottom: 34px !important;
    width: clamp(220px, 25vw, 340px) !important;
    height: clamp(150px, 17vw, 230px) !important;
}

.gm-home-hero__media--editorial .gm-home-hero__overlay {
    position: relative !important;
    z-index: 2 !important;
    display: flex !important;
    max-width: 620px !important;
    min-height: inherit !important;
    justify-content: center !important;
    flex-direction: column !important;
    padding: clamp(34px, 5vw, 70px) !important;
    background: transparent !important;
}

.gm-home-hero__media--editorial .gm-home-hero__overlay h1 {
    font-size: clamp(36px, 4.4vw, 60px) !important;
    line-height: 1.03 !important;
}

.gm-home-hero__media--editorial .gm-home-hero__overlay span {
    color: var(--gm-app-brand) !important;
}

.gm-home-hero__media--editorial .gm-home-hero__overlay h1 {
    color: var(--gm-app-ink) !important;
}

.gm-home-hero__media--editorial .gm-home-hero__overlay p {
    color: var(--gm-app-muted) !important;
}

.gm-home-hero__media--editorial .gm-home-hero__actions a {
    border-color: var(--gm-app-line) !important;
    background: #ffffff !important;
    color: var(--gm-app-ink) !important;
}

.gm-home-hero__media--editorial .gm-home-hero__actions a:first-child {
    border-color: var(--gm-app-ink) !important;
    background: var(--gm-app-ink) !important;
    color: #ffffff !important;
}

@media (max-width: 767px) {
    .gm-home-hero__media--editorial {
        min-height: 540px !important;
    }

    .gm-home-hero__media--editorial .gm-home-hero__visuals::before {
        background: linear-gradient(180deg, #fffefa 0%, rgba(255, 254, 250, 0.96) 48%, rgba(255, 254, 250, 0.2) 100%) !important;
    }

    .gm-home-hero__dish--1 {
        top: auto !important;
        right: 16px !important;
        bottom: 22px !important;
        width: 250px !important;
        height: 178px !important;
    }

    .gm-home-hero__dish--2 {
        right: auto !important;
        bottom: 78px !important;
        left: 16px !important;
        width: 142px !important;
        height: 112px !important;
    }

    .gm-home-hero__dish--3 {
        top: auto !important;
        right: 128px !important;
        bottom: 18px !important;
        width: 120px !important;
        height: 92px !important;
    }

    .gm-home-hero__media--editorial .gm-home-hero__overlay {
        min-height: 330px !important;
        justify-content: flex-start !important;
        padding: 28px 22px !important;
    }

    .gm-home-hero__media--editorial .gm-home-hero__actions {
        gap: 8px !important;
    }

    .gm-home-promise {
        display: none !important;
    }
}

/* Minimalist correction pass: quiet app, lighter type, no redundant mobile chrome. */
.gm-storefront-shell {
    --gm-app-ink: #1d1a17;
    --gm-app-muted: #6f6a63;
    --gm-app-brand: #b32621;
    --gm-app-line: #e4ddd3;
}

.gm-home-hero__media--editorial {
    min-height: clamp(430px, 42vw, 540px) !important;
}

.gm-home-hero__media--editorial .gm-home-hero__overlay h1,
.gm-menu-hero h1,
.gm-search-hero h1,
.gm-page-heading h1,
.gm-offers-hero h1 {
    font-weight: 700 !important;
    letter-spacing: 0 !important;
}

.gm-section-heading h2,
.gm-menu-card__title,
.gm-offer-grid .gm-offer-card .gm-offer-card__title,
.gm-item-detail-panel h1,
.gm-empty-state h2 {
    font-weight: 650 !important;
}

.gm-menu-card__price h4,
.product-card-grid-price-current,
.product-card-list-price-current,
.gm-item-detail-panel h2,
.gm-item-buybar h3 {
    font-weight: 700 !important;
}

.gm-home-hero__media--editorial .gm-home-hero__overlay h1 {
    font-size: clamp(34px, 4vw, 54px) !important;
}

.gm-menu-hero__search {
    display: none !important;
}

@media (max-width: 767px) {
    .gm-storefront-content {
        padding-bottom: calc(70px + env(safe-area-inset-bottom)) !important;
    }

    .gm-home-hero {
        padding-top: 10px !important;
    }

    .gm-home-hero__media--editorial {
        min-height: 0 !important;
        border-radius: 12px !important;
    }

    .gm-home-hero__media--editorial .gm-home-hero__visuals {
        display: none !important;
    }

    .gm-home-hero__media--editorial .gm-home-hero__overlay {
        min-height: 0 !important;
        padding: 22px !important;
    }

    .gm-home-hero__media--editorial .gm-home-hero__overlay h1 {
        max-width: 300px !important;
        font-size: 31px !important;
        line-height: 1.08 !important;
        font-weight: 680 !important;
    }

    .gm-home-hero__media--editorial .gm-home-hero__overlay p {
        max-width: 295px !important;
        margin-top: 12px !important;
        font-size: 13.5px !important;
        line-height: 1.55 !important;
    }

    .gm-home-hero__media--editorial .gm-home-hero__actions {
        margin-top: 18px !important;
    }

    .gm-home-hero__media--editorial .gm-home-hero__actions a {
        min-height: 40px !important;
        padding-inline: 16px !important;
        font-size: 13px !important;
        font-weight: 650 !important;
    }

    .gm-menu-experience {
        margin-top: 16px !important;
    }

    .gm-menu-hero {
        display: block !important;
        margin-bottom: 12px !important;
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
    }

    .gm-menu-hero__eyebrow {
        display: none !important;
    }

    .gm-menu-hero h1 {
        font-size: 29px !important;
        line-height: 1.12 !important;
        font-weight: 650 !important;
    }

    .menu-swiper {
        margin-bottom: 20px !important;
    }

    .menu-slides .gm-category-slide a {
        width: 92px !important;
        min-height: 94px !important;
        gap: 8px !important;
        padding: 10px 8px !important;
        border-radius: 10px !important;
        border-bottom-width: 1px !important;
        background: #ffffff !important;
    }

    .menu-slides .gm-category-slide img {
        height: 30px !important;
        filter: none !important;
    }

    .menu-slides .gm-category-slide h3 {
        font-size: 11px !important;
        line-height: 1.15 !important;
        font-weight: 560 !important;
    }

    .menu-slides .gm-category-slide .menu-category-active {
        border-color: rgba(179, 38, 33, 0.22) !important;
        background: #ffffff !important;
        color: var(--gm-app-brand) !important;
    }

    .gm-menu-toolbar {
        margin-bottom: 18px !important;
    }

    .gm-filter-chip {
        min-height: 38px !important;
        padding-inline: 14px !important;
        font-size: 13px !important;
        font-weight: 560 !important;
    }

    .gm-filter-chip.is-active {
        background: #1d1a17 !important;
        color: #ffffff !important;
    }

    .gm-mobile-tabbar {
        min-height: 58px !important;
        padding: 6px 10px !important;
        border-radius: 24px !important;
        background: rgba(255, 254, 250, 0.94) !important;
        box-shadow: none !important;
        backdrop-filter: blur(18px) saturate(140%) !important;
    }

    .gm-mobile-tab,
    .gm-mobile-cart-tab {
        min-height: 42px !important;
        height: 42px !important;
        border-radius: 14px !important;
        background: transparent !important;
        color: #817a72 !important;
        box-shadow: none !important;
    }

    .gm-mobile-tab.active,
    .gm-mobile-cart-tab.active,
    .gm-mobile-cart-tab.has-items {
        background: transparent !important;
        color: var(--gm-app-brand) !important;
        box-shadow: none !important;
    }

    .gm-mobile-tab.active::after,
    .gm-mobile-cart-tab.active::after {
        content: "" !important;
        position: absolute !important;
        right: 50% !important;
        bottom: 3px !important;
        width: 4px !important;
        height: 4px !important;
        border-radius: 999px !important;
        background: currentColor !important;
        transform: translateX(50%) !important;
    }

    .gm-mobile-tab-icon,
    .gm-mobile-cart-icon {
        width: 20px !important;
        height: 20px !important;
    }

    .gm-product-grid-premium {
        gap: 10px !important;
    }

    .gm-menu-card__title {
        font-size: 13px !important;
        font-weight: 600 !important;
    }

    .gm-menu-card__content {
        min-height: 104px !important;
        padding: 9px !important;
    }

    .gm-menu-card__price h4 {
        font-size: 17px !important;
        font-weight: 650 !important;
        color: var(--gm-app-ink) !important;
    }

    .gm-item-detail-panel h2 {
        font-size: 28px !important;
        font-weight: 650 !important;
        color: var(--gm-app-brand) !important;
    }

    .gm-item-buybar h3 {
        font-size: 17px !important;
        font-weight: 650 !important;
        color: var(--gm-app-brand) !important;
    }

    .gm-item-buybar .db-btn,
    .gm-menu-card__add.product-card-grid-cart-btn,
    .gm-menu-card__add.product-card-list-cart-btn {
        box-shadow: none !important;
    }

    .gm-menu-card__add.product-card-grid-cart-btn,
    .gm-menu-card__add.product-card-list-cart-btn {
        background: #1d1a17 !important;
    }
}

/* Final mobile minimalism pass: app-like rhythm, lighter hierarchy, no promo chrome. */
.gm-storefront-shell {
    --gm-app-bg: #fbfaf7;
    --gm-app-surface: #fffefa;
    --gm-app-surface-2: #ffffff;
    --gm-app-ink: #24201c;
    --gm-app-muted: #746f68;
    --gm-app-soft: #f3eee7;
    --gm-app-line: #e8e0d6;
    --gm-app-brand: #bd2420;
    --gm-app-brand-soft: #fbefed;
    color: var(--gm-app-ink) !important;
    background: var(--gm-app-bg) !important;
}

.gm-storefront-shell :where(h1, h2, h3, h4, h5, h6) {
    letter-spacing: 0 !important;
}

.gm-storefront-shell :where(.font-bold) {
    font-weight: 650 !important;
}

.gm-storefront-shell :where(.font-semibold) {
    font-weight: 600 !important;
}

.gm-premium-header,
.gm-storefront-content,
.footer-part {
    background-color: var(--gm-app-bg) !important;
}

.gm-premium-header {
    border-bottom: 1px solid rgba(232, 224, 214, 0.82) !important;
    box-shadow: none !important;
}

.storefront-search-shell {
    border-color: var(--gm-app-line) !important;
    background: var(--gm-app-surface-2) !important;
    box-shadow: none !important;
}

.storefront-search-shell:focus-within {
    border-color: rgba(189, 36, 32, 0.32) !important;
    background: #ffffff !important;
}

.storefront-nav-link {
    color: var(--gm-app-muted) !important;
    font-weight: 520 !important;
}

.storefront-nav-link:hover {
    color: var(--gm-app-brand) !important;
}

.gm-home-hero__media--editorial,
.gm-menu-hero,
.gm-offers-hero,
.gm-search-hero,
.gm-page-heading,
.gm-loyalty-card,
.gm-account-card,
.gm-storefront-cart-panel,
.gm-checkout-card,
.gm-empty-state,
.gm-modal-shell {
    box-shadow: none !important;
}

.gm-home-hero__media--editorial .gm-home-hero__overlay h1,
.gm-menu-hero h1,
.gm-search-hero h1,
.gm-offers-hero h1,
.gm-page-heading h1 {
    color: var(--gm-app-ink) !important;
    font-weight: 650 !important;
    letter-spacing: 0 !important;
}

.gm-home-hero__media--editorial .gm-home-hero__overlay span,
.gm-menu-hero__eyebrow,
.gm-offers-hero span,
.gm-search-hero span {
    color: var(--gm-app-brand) !important;
    font-weight: 650 !important;
    letter-spacing: 0.02em !important;
}

.gm-section-heading h2,
.gm-menu-card__title,
.gm-offer-card__title,
.gm-item-detail-panel h1,
.gm-cart-drawer-title,
.gm-checkout-page h1,
.gm-account-page h1 {
    color: var(--gm-app-ink) !important;
    font-weight: 620 !important;
    letter-spacing: 0 !important;
}

.gm-menu-card,
.gm-offer-card,
.gm-item-detail-shell,
.gm-cart-line,
.gm-checkout-card,
.gm-account-card,
.gm-loyalty-card,
.gm-empty-state {
    border-color: var(--gm-app-line) !important;
    background: var(--gm-app-surface-2) !important;
    box-shadow: none !important;
}

.gm-menu-card__badge,
.gm-menu-card__meta span,
.gm-filter-chip,
.gm-soft-link {
    font-weight: 560 !important;
    box-shadow: none !important;
}

.gm-menu-card__price h4,
.product-card-grid-price-current,
.product-card-list-price-current,
.gm-item-detail-panel h2,
.gm-item-buybar h3,
.gm-cart-line-drawer-price {
    color: var(--gm-app-ink) !important;
    font-weight: 650 !important;
    letter-spacing: 0 !important;
}

.gm-menu-card__add.product-card-grid-cart-btn,
.gm-menu-card__add.product-card-list-cart-btn,
.gm-item-buybar .db-btn {
    background: var(--gm-app-brand) !important;
    border-color: var(--gm-app-brand) !important;
    color: #ffffff !important;
    box-shadow: none !important;
}

.gm-menu-card__add.product-card-grid-cart-btn:hover,
.gm-menu-card__add.product-card-list-cart-btn:hover,
.gm-item-buybar .db-btn:hover {
    background: #a91f1c !important;
}

.gm-menu-card__add.product-card-grid-cart-btn {
    background: #000 !important;
    min-width: 40px !important;
    max-width: 40px !important;
    width: 40px !important;
    height: 40px !important;
}

@media (max-width: 767px) {
    .gm-storefront-content {
        padding-bottom: calc(62px + env(safe-area-inset-bottom)) !important;
    }

    .gm-premium-header {
        padding-bottom: 10px !important;
    }

    .storefront-header-container {
        gap: 8px !important;
        padding-top: 12px !important;
    }

    .storefront-brand-logo {
        width: 126px !important;
    }

    .storefront-header-actions {
        gap: 8px !important;
        margin-top: 0 !important;
    }

    .storefront-search-shell {
        height: 42px !important;
        border-radius: 999px !important;
    }

    .header-search-field {
        font-size: 13px !important;
    }

    .gm-home-hero {
        padding-top: 8px !important;
    }

    .gm-home-hero__container {
        padding-inline: 22px !important;
    }

    .gm-home-hero__media--editorial {
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
    }

    .gm-home-hero__media--editorial .gm-home-hero__overlay {
        padding: 18px 0 20px !important;
    }

    .gm-home-hero__media--editorial .gm-home-hero__overlay span {
        font-size: 10px !important;
        line-height: 1.2 !important;
        letter-spacing: 0.08em !important;
    }

    .gm-home-hero__media--editorial .gm-home-hero__overlay h1 {
        max-width: 316px !important;
        margin-top: 12px !important;
        font-size: 28px !important;
        line-height: 1.13 !important;
        font-weight: 620 !important;
    }

    .gm-home-hero__media--editorial .gm-home-hero__overlay p {
        max-width: 318px !important;
        margin-top: 10px !important;
        color: var(--gm-app-muted) !important;
        font-size: 13px !important;
        line-height: 1.52 !important;
    }

    .gm-home-hero__media--editorial .gm-home-hero__actions {
        margin-top: 16px !important;
        gap: 8px !important;
    }

    .gm-home-hero__media--editorial .gm-home-hero__actions a {
        min-height: 38px !important;
        padding-inline: 15px !important;
        border-radius: 999px !important;
        font-size: 12px !important;
        font-weight: 610 !important;
    }

    .gm-home-hero__media--editorial .gm-home-hero__actions a:first-child {
        border-color: var(--gm-app-brand) !important;
        background: var(--gm-app-brand) !important;
    }

    .gm-home-section {
        margin-bottom: 34px !important;
    }

    .gm-section-heading {
        margin-bottom: 14px !important;
    }

    .gm-section-heading h2 {
        font-size: 21px !important;
        line-height: 1.2 !important;
        font-weight: 620 !important;
        text-transform: none !important;
    }

    .gm-soft-link {
        background: transparent !important;
        color: var(--gm-app-brand) !important;
        padding-inline: 0 !important;
        font-size: 12px !important;
    }

    .gm-menu-experience {
        margin-top: 14px !important;
    }

    .gm-menu-hero {
        margin-bottom: 14px !important;
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
    }

    .gm-menu-hero h1,
    .gm-search-hero h1,
    .gm-offers-hero h1,
    .gm-page-heading h1 {
        font-size: 28px !important;
        line-height: 1.14 !important;
        font-weight: 620 !important;
    }

    .menu-swiper {
        margin-bottom: 18px !important;
    }

    .menu-slides {
        gap: 8px !important;
    }

    .menu-slides .gm-category-slide a {
        width: 78px !important;
        min-height: 76px !important;
        gap: 6px !important;
        padding: 8px 7px !important;
        border-radius: 9px !important;
        border-color: rgba(232, 224, 214, 0.92) !important;
        border-bottom-width: 1px !important;
        background: rgba(255, 255, 255, 0.72) !important;
        box-shadow: none !important;
    }

    .menu-slides .gm-category-slide img {
        height: 24px !important;
    }

    .menu-slides .gm-category-slide h3 {
        font-size: 10.5px !important;
        line-height: 1.12 !important;
        font-weight: 540 !important;
        letter-spacing: 0 !important;
    }

    .menu-slides .gm-category-slide .menu-category-active {
        border-color: rgba(189, 36, 32, 0.34) !important;
        color: var(--gm-app-brand) !important;
        background: var(--gm-app-surface-2) !important;
    }

    .gm-menu-toolbar {
        margin-bottom: 16px !important;
        gap: 10px !important;
    }

    .gm-menu-filters {
        gap: 8px !important;
    }

    .gm-filter-chip {
        min-height: 36px !important;
        padding-inline: 13px !important;
        border-color: var(--gm-app-line) !important;
        background: var(--gm-app-surface-2) !important;
        color: var(--gm-app-muted) !important;
        font-size: 12px !important;
        font-weight: 540 !important;
    }

    .gm-filter-chip.is-active {
        border-color: rgba(189, 36, 32, 0.28) !important;
        background: var(--gm-app-brand-soft) !important;
        color: var(--gm-app-brand) !important;
    }

    .gm-menu-viewbar span {
        color: #74708b !important;
        font-size: 13px !important;
        font-weight: 600 !important;
    }

    .gm-product-grid-premium {
        gap: 9px !important;
    }

    .gm-menu-card {
        border-radius: 10px !important;
        overflow: hidden !important;
    }

    .gm-menu-card__media {
        border-radius: 10px 10px 0 0 !important;
    }

    .product-card-grid-image {
        height: 145px !important;
    }

    .gm-menu-card__content {
        min-height: 96px !important;
        padding: 9px !important;
    }

    .gm-menu-card__title {
        font-size: 12.5px !important;
        line-height: 1.25 !important;
        font-weight: 580 !important;
    }

    .gm-menu-card__description,
    .gm-menu-card__meta {
        display: none !important;
    }

    .gm-menu-card__price h4,
    .product-card-grid-price-current,
    .product-card-list-price-current {
        font-size: 15.5px !important;
        line-height: 1.15 !important;
        font-weight: 620 !important;
    }

    .gm-menu-card__add.product-card-grid-cart-btn,
    .gm-menu-card__add.product-card-list-cart-btn {
        width: 34px !important;
        height: 34px !important;
        min-width: 34px !important;
        border-radius: 999px !important;
        background: var(--gm-app-brand) !important;
    }

    .gm-menu-card__add.product-card-grid-cart-btn {
        background: #000 !important;
    }

    .gm-menu-card__badge {
        border: 0 !important;
        border-radius: 999px !important;
        padding: 5px 8px !important;
        font-size: 10px !important;
        font-weight: 560 !important;
    }

    .gm-offers-hero,
    .gm-search-hero,
    .gm-page-heading {
        padding: 24px 0 18px !important;
        border: 0 !important;
        background: transparent !important;
    }

    .gm-offers-hero p,
    .gm-search-hero p,
    .gm-page-heading p {
        font-size: 13px !important;
        line-height: 1.5 !important;
    }

    .gm-offer-card {
        border-radius: 10px !important;
    }

    .gm-offer-card__title {
        font-size: 17px !important;
        line-height: 1.25 !important;
    }

    .gm-item-detail-shell {
        border-radius: 0 !important;
        border: 0 !important;
        background: transparent !important;
    }

    .gm-item-detail-panel h1 {
        font-size: 25px !important;
        line-height: 1.16 !important;
        font-weight: 620 !important;
    }

    .gm-item-detail-panel h2 {
        font-size: 24px !important;
        line-height: 1.12 !important;
        font-weight: 620 !important;
        color: var(--gm-app-brand) !important;
    }

    .gm-item-buybar {
        border-radius: 20px 20px 0 0 !important;
        border-inline: 0 !important;
        border-bottom: 0 !important;
        box-shadow: none !important;
    }

    .gm-item-buybar h3 {
        font-size: 16px !important;
        font-weight: 620 !important;
        color: var(--gm-app-brand) !important;
    }

    .gm-item-buybar .db-btn {
        min-width: 140px !important;
        height: 44px !important;
        font-size: 12px !important;
        font-weight: 620 !important;
    }

    .gm-storefront-cart-panel {
        border-radius: 18px 0 0 18px !important;
        border-color: var(--gm-app-line) !important;
        background: var(--gm-app-surface) !important;
    }

    .gm-cart-line {
        border-radius: 10px !important;
    }

    .gm-mobile-tabbar {
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        width: 100% !important;
        min-height: calc(58px + env(safe-area-inset-bottom)) !important;
        padding: 6px max(14px, env(safe-area-inset-left)) calc(6px + env(safe-area-inset-bottom)) max(14px, env(safe-area-inset-right)) !important;
        border-radius: 0 !important;
        border-width: 1px 0 0 !important;
        border-color: rgba(232, 224, 214, 0.92) !important;
        background: rgba(255, 254, 250, 0.96) !important;
        box-shadow: none !important;
        backdrop-filter: blur(18px) saturate(135%) !important;
    }

    .gm-mobile-tab,
    .gm-mobile-cart-tab {
        min-height: 42px !important;
        height: 42px !important;
        border-radius: 12px !important;
        background: transparent !important;
        color: #7c766e !important;
        box-shadow: none !important;
    }

    .gm-mobile-tab.active,
    .gm-mobile-cart-tab.active,
    .gm-mobile-cart-tab.has-items {
        background: transparent !important;
        color: var(--gm-app-brand) !important;
    }

    .gm-mobile-tab::before,
    .gm-mobile-cart-tab::before {
        display: none !important;
    }

    .gm-mobile-tab.active::after,
    .gm-mobile-cart-tab.active::after {
        bottom: 2px !important;
        width: 4px !important;
        height: 4px !important;
        background: currentColor !important;
    }

    .gm-mobile-tab-icon,
    .gm-mobile-cart-icon {
        width: 19px !important;
        height: 19px !important;
        stroke-width: 1.85 !important;
    }
}

/* Regression guard: old floating-tabbar rules must never clip the native mobile nav. */
@media (max-width: 767px) {
    .gm-mobile-tabbar {
        position: fixed !important;
        inset: auto 0 0 0 !important;
        display: grid !important;
        grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
        align-items: center !important;
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
        margin: 0 !important;
        transform: none !important;
        border-radius: 0 !important;
    }

    .gm-mobile-tab,
    .gm-mobile-cart-tab {
        position: relative !important;
        width: 100% !important;
        min-width: 0 !important;
        padding: 0 !important;
        justify-self: stretch !important;
    }

    .gm-empty-state {
        border: 0 !important;
        background: transparent !important;
        padding: 28px 20px !important;
    }

    .gm-empty-state__mark {
        display: none !important;
    }

    .gm-empty-state h2 {
        font-size: 22px !important;
        line-height: 1.2 !important;
        font-weight: 620 !important;
    }

    .gm-empty-state p {
        font-size: 13px !important;
        line-height: 1.5 !important;
    }

    .gm-empty-state a {
        min-height: 42px !important;
        border-radius: 999px !important;
        font-size: 13px !important;
        font-weight: 610 !important;
        box-shadow: none !important;
    }

    .gm-item-detail-page {
        margin-top: 18px !important;
    }

    .gm-item-detail-card {
        gap: 18px !important;
        margin-bottom: 28px !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
    }

    .gm-item-detail-media {
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
    }

    .gm-item-detail-image {
        height: 260px !important;
        border-radius: 13px !important;
    }

    .gm-item-detail-panel {
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
    }

    .gm-item-detail-panel h1 {
        margin-bottom: 4px !important;
        font-size: 25px !important;
        line-height: 1.18 !important;
        font-weight: 620 !important;
    }

    .gm-item-detail-panel h2,
    .gm-item-detail-panel .text-3xl {
        font-size: 25px !important;
        line-height: 1.12 !important;
        font-weight: 620 !important;
        color: var(--gm-app-brand) !important;
    }

    .gm-item-price-row {
        margin-bottom: 20px !important;
        gap: 10px !important;
    }

    .gm-item-price-previous {
        color: #8a849c !important;
        font-size: 15px !important;
        line-height: 1.2 !important;
    }

    .gm-item-price-current {
        color: var(--gm-app-brand) !important;
        font-size: 24px !important;
        line-height: 1.12 !important;
        font-weight: 610 !important;
    }

    .gm-item-option-chip {
        min-height: 32px !important;
        border-radius: 9px !important;
        background: var(--gm-app-surface-2) !important;
        color: var(--gm-app-ink) !important;
        border-color: var(--gm-app-line) !important;
        font-weight: 520 !important;
        box-shadow: none !important;
    }

    .gm-item-option-chip.bg-primary {
        background: var(--gm-app-brand-soft) !important;
        color: var(--gm-app-brand) !important;
        border-color: rgba(189, 36, 32, 0.28) !important;
    }

    .gm-item-detail-panel p {
        color: var(--gm-app-muted) !important;
    }

    .gm-item-detail-panel :where(label, h3, .text-heading) {
        color: var(--gm-app-ink) !important;
        font-weight: 560 !important;
    }

    .gm-item-detail-panel :where(select, textarea) {
        border-color: var(--gm-app-line) !important;
        background: var(--gm-app-surface-2) !important;
        box-shadow: none !important;
    }

    .gm-item-detail-panel :where(.indec-group) {
        background: var(--gm-app-soft) !important;
        box-shadow: none !important;
    }

    .gm-item-buybar {
        left: 0 !important;
        right: 0 !important;
        bottom: calc(58px + env(safe-area-inset-bottom)) !important;
        width: 100% !important;
        border-radius: 18px 18px 0 0 !important;
        border-color: var(--gm-app-line) !important;
        background: rgba(255, 254, 250, 0.97) !important;
        backdrop-filter: blur(18px) saturate(135%) !important;
    }

    .gm-storefront-content h2.gm-item-price-current.text-3xl,
    .gm-storefront-content .gm-item-detail-panel h2.gm-item-price-current {
        color: var(--gm-app-brand) !important;
        font-size: 24px !important;
        line-height: 1.12 !important;
        font-weight: 610 !important;
    }

    .gm-storefront-content .gm-item-detail-panel .gm-item-option-chip.bg-primary.text-white {
        background: var(--gm-app-brand-soft) !important;
        color: var(--gm-app-brand) !important;
        border-color: rgba(189, 36, 32, 0.28) !important;
    }
}

/* Final banner guard: the home page must have a real banner, but mobile stays compact. */
.gm-home-hero__media--has-banner {
    display: grid !important;
    grid-template-columns: minmax(0, 0.92fr) minmax(320px, 0.72fr) !important;
    align-items: center !important;
    gap: clamp(20px, 3vw, 42px) !important;
    min-height: clamp(360px, 38vw, 500px) !important;
    padding: clamp(24px, 3.6vw, 52px) !important;
    border: 1px solid rgba(232, 224, 214, 0.92) !important;
    border-radius: 14px !important;
    background: #fffefa !important;
    overflow: hidden !important;
}

.gm-home-hero__media--has-banner .gm-home-hero__visuals {
    display: none !important;
}

.gm-home-hero__media--has-banner .gm-home-hero__overlay {
    position: relative !important;
    z-index: 2 !important;
    max-width: 600px !important;
    min-height: 0 !important;
    padding: 0 !important;
}

.gm-home-hero__banner {
    position: relative !important;
    z-index: 1 !important;
    min-width: 0 !important;
}

.gm-home-banner-shell--inline,
.gm-home-banner-shell--inline .banner-swiper,
.gm-home-banner-shell--inline .swiper,
.gm-home-banner-shell--inline .swiper-wrapper,
.gm-home-banner-shell--inline .swiper-slide {
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
}

.gm-home-banner-shell--inline .banner-swiper {
    overflow: hidden !important;
    aspect-ratio: 2.8 / 1 !important;
    border: 1px solid rgba(232, 224, 214, 0.86) !important;
    border-radius: 12px !important;
    background: #ffffff !important;
    box-shadow: none !important;
}

.gm-home-banner-shell--inline .banner-swiper img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    border-radius: 0 !important;
    object-fit: cover !important;
}

.gm-home-banner-shell--inline .swiper-button-prev,
.gm-home-banner-shell--inline .swiper-button-next {
    width: 34px !important;
    height: 34px !important;
    border: 1px solid rgba(232, 224, 214, 0.9) !important;
    border-radius: 999px !important;
    background: rgba(255, 254, 250, 0.88) !important;
    color: var(--gm-app-ink) !important;
    box-shadow: none !important;
}

.gm-home-banner-shell--inline .swiper-button-prev::after,
.gm-home-banner-shell--inline .swiper-button-next::after {
    font-size: 12px !important;
    font-weight: 700 !important;
}

.gm-home-banner-shell--inline .swiper-pagination-bullet {
    width: 5px !important;
    height: 5px !important;
    background: rgba(36, 32, 28, 0.28) !important;
    opacity: 1 !important;
}

.gm-home-banner-shell--inline .swiper-pagination-bullet-active {
    width: 16px !important;
    border-radius: 999px !important;
    background: var(--gm-app-brand) !important;
}

@media (max-width: 767px) {
    .gm-home-hero__media--has-banner {
        grid-template-columns: 1fr !important;
        gap: 16px !important;
        min-height: 0 !important;
        padding: 18px 0 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
    }

    .gm-home-hero__media--has-banner .gm-home-hero__overlay {
        padding: 0 !important;
    }

    .gm-home-banner-shell--inline .banner-swiper {
        border-radius: 12px !important;
    }

    .gm-home-banner-shell--inline .banner-swiper img {
        height: 118px !important;
        object-fit: cover !important;
    }

    .gm-home-banner-shell--inline .swiper-button-prev,
    .gm-home-banner-shell--inline .swiper-button-next {
        display: none !important;
    }

    .gm-home-banner-shell--inline .swiper-pagination {
        bottom: 6px !important;
    }
}

/* Home hero product-first correction: make the first viewport a menu surface, not only a banner. */
.gm-home-hero__media--has-banner {
    grid-template-columns: minmax(0, 0.9fr) minmax(280px, 0.56fr) !important;
    gap: clamp(18px, 2.4vw, 34px) !important;
    min-height: clamp(390px, 35vw, 470px) !important;
    padding: clamp(22px, 3vw, 42px) !important;
}

.gm-home-hero__media--has-banner .gm-home-hero__overlay h1 {
    max-width: 540px !important;
    font-size: clamp(30px, 3.25vw, 44px) !important;
    line-height: 1.06 !important;
}

.gm-home-hero__media--has-banner .gm-home-hero__overlay p {
    max-width: 510px !important;
    margin-top: 12px !important;
    font-size: 16px !important;
    line-height: 1.55 !important;
}

.gm-home-hero__media--has-banner .gm-home-hero__actions {
    margin-top: 18px !important;
}

.gm-home-hero__picks {
    display: grid !important;
    gap: 10px !important;
    margin-top: 22px !important;
    max-width: 610px !important;
    text-transform: none !important;
}

.gm-home-hero__picks-title {
    display: block !important;
    color: var(--gm-app-muted) !important;
    font-size: 12px !important;
    font-weight: 650 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
}

.gm-home-hero__picks :where(span, strong, em, b, small) {
    letter-spacing: 0 !important;
    text-transform: none !important;
}

.gm-home-hero__media--editorial .gm-home-hero__overlay .gm-home-hero__picks,
.gm-home-hero__media--editorial .gm-home-hero__overlay .gm-home-hero__picks :where(span, strong, em, b, small) {
    letter-spacing: 0 !important;
    text-transform: none !important;
}

.gm-home-hero__media--editorial .gm-home-hero__overlay .gm-home-hero__picks-title {
    color: var(--gm-app-muted) !important;
    font-weight: 650 !important;
}

.gm-home-hero__picks-list {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 10px !important;
}

.gm-home-hero__pick {
    display: grid !important;
    grid-template-columns: 54px minmax(0, 1fr) !important;
    grid-template-areas:
        "media body"
        "media side" !important;
    gap: 6px 10px !important;
    min-width: 0 !important;
    padding: 8px !important;
    border: 1px solid rgba(232, 224, 214, 0.9) !important;
    border-radius: 12px !important;
    background: rgba(255, 255, 255, 0.78) !important;
    color: var(--gm-app-ink) !important;
    box-shadow: none !important;
    transition: border-color 180ms ease, transform 180ms ease, background 180ms ease !important;
}

.gm-home-hero__pick:hover {
    transform: translateY(-1px) !important;
    border-color: rgba(179, 38, 33, 0.28) !important;
    background: #ffffff !important;
}

.gm-home-hero__pick-media {
    grid-area: media !important;
    width: 54px !important;
    height: 54px !important;
    overflow: hidden !important;
    border-radius: 10px !important;
    background: #f7f2eb !important;
}

.gm-home-hero__pick-media img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}

.gm-home-hero__pick-body {
    grid-area: body !important;
    min-width: 0 !important;
}

.gm-home-hero__pick-body strong {
    display: block !important;
    overflow: hidden !important;
    color: var(--gm-app-ink) !important;
    font-size: 13px !important;
    font-weight: 680 !important;
    line-height: 1.2 !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

.gm-home-hero__pick-body em {
    display: -webkit-box !important;
    overflow: hidden !important;
    margin-top: 3px !important;
    color: var(--gm-app-muted) !important;
    font-size: 11.5px !important;
    font-style: normal !important;
    line-height: 1.3 !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
}

.gm-home-hero__pick-side {
    grid-area: side !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 6px !important;
    min-width: 0 !important;
}

.gm-home-hero__pick-side b {
    color: var(--gm-app-brand) !important;
    font-size: 13px !important;
    font-weight: 720 !important;
    line-height: 1 !important;
}

.gm-home-hero__pick-side small {
    color: var(--gm-app-muted) !important;
    font-size: 10.5px !important;
    font-weight: 620 !important;
    line-height: 1 !important;
}

.gm-home-banner-shell--inline .banner-swiper {
    aspect-ratio: 2.45 / 1 !important;
}

@media (max-width: 1023px) {
    .gm-home-hero__picks-list {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 767px) {
    .gm-home-hero__media--has-banner {
        grid-template-columns: 1fr !important;
        gap: 12px !important;
        padding: 10px 0 0 !important;
    }

    .gm-home-hero__media--has-banner .gm-home-hero__overlay,
    .gm-home-hero__picks,
    .gm-home-hero__picks-list {
        width: 100% !important;
        max-width: none !important;
    }

    .gm-home-hero__media--has-banner .gm-home-hero__overlay h1 {
        max-width: 100% !important;
        font-size: 28px !important;
        line-height: 1.08 !important;
    }

    .gm-home-hero__media--has-banner .gm-home-hero__overlay p {
        max-width: 100% !important;
        margin-top: 10px !important;
        font-size: 13px !important;
        line-height: 1.48 !important;
    }

    .gm-home-hero__media--has-banner .gm-home-hero__actions {
        margin-top: 14px !important;
    }

    .gm-home-hero__picks {
        margin-top: 16px !important;
    }

    .gm-home-hero__pick {
        grid-template-columns: 58px minmax(0, 1fr) auto !important;
        grid-template-areas: "media body side" !important;
        align-items: center !important;
        padding: 8px !important;
    }

    .gm-home-hero__pick-media {
        width: 58px !important;
        height: 58px !important;
    }

    .gm-home-hero__pick-side {
        flex-direction: column !important;
        align-items: flex-end !important;
        justify-content: center !important;
    }

    .gm-home-banner-shell--inline .banner-swiper img {
        height: 96px !important;
    }
}

/* Final home minimal guard: the first screen is a compact menu section, not a marketing hero. */
.gm-home-hero {
    padding: 10px 0 0 !important;
}

.gm-home-hero__media--has-banner {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    min-height: 0 !important;
    padding: 0 0 16px !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(232, 224, 214, 0.86) !important;
    border-radius: 0 !important;
    background: transparent !important;
}

.gm-home-hero__media--has-banner .gm-home-hero__overlay {
    width: 100% !important;
    max-width: none !important;
    padding: 0 !important;
}

.gm-home-hero__media--has-banner .gm-home-hero__overlay > span,
.gm-home-hero__media--has-banner .gm-home-hero__overlay > h1,
.gm-home-hero__media--has-banner .gm-home-hero__overlay > p,
.gm-home-hero__media--has-banner .gm-home-hero__actions {
    display: none !important;
}

.gm-home-hero__picks {
    gap: 10px !important;
    margin-top: 0 !important;
    max-width: none !important;
}

.gm-home-hero__media--editorial .gm-home-hero__overlay .gm-home-hero__picks-title {
    color: var(--gm-app-ink) !important;
    font-size: 22px !important;
    line-height: 1.18 !important;
    font-weight: 620 !important;
}

.gm-home-hero__picks-list {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 10px !important;
}

.gm-home-hero__pick {
    grid-template-columns: 50px minmax(0, 1fr) auto !important;
    grid-template-areas: "media body side" !important;
    align-items: center !important;
    min-height: 68px !important;
    padding: 8px !important;
    border-color: rgba(232, 224, 214, 0.9) !important;
    border-radius: 8px !important;
    background: #ffffff !important;
}

.gm-home-hero__pick-media {
    width: 50px !important;
    height: 50px !important;
    border-radius: 7px !important;
}

.gm-home-hero__pick-body strong {
    font-size: 14px !important;
    font-weight: 620 !important;
    line-height: 1.16 !important;
}

.gm-home-hero__pick-body em {
    margin-top: 3px !important;
    font-size: 12px !important;
    line-height: 1.25 !important;
    -webkit-line-clamp: 1 !important;
}

.gm-home-hero__pick-side {
    flex-direction: column !important;
    align-items: flex-end !important;
    justify-content: center !important;
    gap: 4px !important;
}

.gm-home-hero__pick-side b {
    font-size: 14px !important;
    font-weight: 650 !important;
}

.gm-home-hero__pick-side small {
    color: var(--gm-app-muted) !important;
    font-size: 11px !important;
    font-weight: 520 !important;
}

.gm-home-banner-shell--inline .banner-swiper {
    height: clamp(88px, 9vw, 118px) !important;
    aspect-ratio: auto !important;
    border-radius: 8px !important;
}

.gm-home-banner-shell--inline .banner-swiper img {
    height: 100% !important;
    object-fit: cover !important;
}

@media (max-width: 767px) {
    .gm-home-hero {
        padding-top: 8px !important;
    }

    .gm-home-hero__media--has-banner {
        gap: 10px !important;
        padding-bottom: 12px !important;
    }

    .gm-home-hero__media--editorial .gm-home-hero__overlay .gm-home-hero__picks-title {
        font-size: 17px !important;
        line-height: 1.2 !important;
    }

    .gm-home-hero__picks-list {
        grid-template-columns: 1fr !important;
        gap: 8px !important;
    }

    .gm-home-hero__pick {
        grid-template-columns: 48px minmax(0, 1fr) auto !important;
        min-height: 64px !important;
        padding: 7px !important;
    }

    .gm-home-hero__pick-media {
        width: 48px !important;
        height: 48px !important;
    }

    .gm-home-hero__pick-body strong {
        font-size: 13px !important;
    }

    .gm-home-hero__pick-body em {
        font-size: 11px !important;
    }

    .gm-home-hero__pick-side b {
        font-size: 12.5px !important;
    }

    .gm-home-hero__pick-side small {
        font-size: 10px !important;
    }

    .gm-home-banner-shell--inline .banner-swiper {
        height: 84px !important;
    }
}

.gm-home-hero--banner-only {
    padding: 10px 0 0 !important;
}

.gm-home-hero--banner-only .gm-home-hero__container {
    display: block !important;
}

.gm-home-hero--banner-only .gm-home-banner-shell--home-only,
.gm-home-hero--banner-only .gm-home-banner-shell--home-only .banner-swiper,
.gm-home-hero--banner-only .gm-home-banner-shell--home-only .swiper,
.gm-home-hero--banner-only .gm-home-banner-shell--home-only .swiper-wrapper,
.gm-home-hero--banner-only .gm-home-banner-shell--home-only .swiper-slide {
    width: 100% !important;
}

.gm-home-hero--banner-only .gm-home-banner-shell--home-only .banner-swiper {
    aspect-ratio: 2.8 / 1 !important;
    height: auto !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 8px !important;
    background: #ffffff !important;
    overflow: hidden !important;
}

.gm-home-hero--banner-only .gm-home-banner-shell--home-only img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    object-fit: contain !important;
    border-radius: 14px !important;
}

@media (max-width: 767px) {
    .gm-storefront-shell:has(.gm-home-hero--banner-only) .gm-premium-header {
        padding-bottom: 0 !important;
        border-bottom: 0 !important;
        box-shadow: none !important;
    }

    .gm-storefront-shell:has(.gm-home-hero--banner-only) .storefront-header-container,
    .gm-storefront-shell:has(.gm-home-hero--banner-only) .gm-premium-header.ff-header .storefront-header-container {
        min-height: 0 !important;
        padding-bottom: 0 !important;
    }

    .gm-home-hero--banner-only {
        padding-top: 0 !important;
    }

    .gm-home-hero--banner-only .gm-home-banner-shell--home-only .banner-swiper {
        aspect-ratio: 2.8 / 1 !important;
        height: auto !important;
    }
}

/* Final home rhythm guard: compact sections, no category card backplates. */
.gm-home-menu-section {
    margin-top: 12px !important;
    margin-bottom: 24px !important;
}

.gm-storefront-content .gm-home-menu-section {
    margin-bottom: 18px !important;
}

.gm-home-products-section,
.gm-home-popular-section {
    margin-bottom: 28px !important;
}

.gm-home-menu-section .gm-section-heading,
.gm-home-products-section .gm-section-heading,
.gm-home-popular-section .gm-section-heading {
    margin-top: 0 !important;
    margin-bottom: 14px !important;
}

.gm-home-menu-section .gm-section-heading h2,
.gm-home-products-section .gm-section-heading h2,
.gm-home-popular-section .gm-section-heading h2 {
    color: var(--gm-app-ink) !important;
    font-size: clamp(22px, 2.3vw, 28px) !important;
    line-height: 1.12 !important;
    font-weight: 620 !important;
    text-transform: none !important;
}

.gm-home-menu-section .gm-soft-link {
    padding: 0 !important;
    background: transparent !important;
    color: var(--gm-app-brand) !important;
    font-size: 15px !important;
    line-height: 1.2 !important;
    font-weight: 520 !important;
}

.gm-home-menu-section .menu-swiper {
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
}

.gm-home-menu-section .menu-slides {
    overflow: visible !important;
}

.gm-home-menu-section .menu-slides .swiper-wrapper {
    align-items: flex-start !important;
}

.gm-home-menu-section .gm-category-slide {
    width: auto !important;
    height: auto !important;
}

.gm-home-menu-section .menu-slides .gm-category-slide a {
    width: 128px !important;
    height: 72px !important;
    min-height: 66px !important;
    gap: 7px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    color: var(--gm-app-ink) !important;
}

.gm-home-menu-section .menu-slides .gm-category-slide a:hover {
    transform: none !important;
    background: transparent !important;
    box-shadow: none !important;
    color: var(--gm-app-brand) !important;
}

.gm-home-menu-section .menu-slides .gm-category-slide img {
    height: 34px !important;
    max-width: 56px !important;
    object-fit: contain !important;
    filter: none !important;
}

.gm-home-menu-section .menu-slides .gm-category-slide h3 {
    max-width: 118px !important;
    color: inherit !important;
    font-size: 14px !important;
    line-height: 1.14 !important;
    font-weight: 540 !important;
    letter-spacing: 0 !important;
}

@media (max-width: 767px) {
    .gm-home-menu-section {
        margin-top: 10px !important;
        margin-bottom: 22px !important;
    }

    .gm-storefront-content .gm-home-menu-section {
        margin-bottom: 16px !important;
    }

    .gm-home-products-section,
    .gm-home-popular-section {
        margin-bottom: 24px !important;
    }

    .gm-home-menu-section .gm-section-heading,
    .gm-home-products-section .gm-section-heading,
    .gm-home-popular-section .gm-section-heading {
        margin-bottom: 11px !important;
    }

    .gm-home-menu-section .gm-section-heading h2,
    .gm-home-products-section .gm-section-heading h2,
    .gm-home-popular-section .gm-section-heading h2 {
        font-size: 20px !important;
        line-height: 1.15 !important;
    }

    .gm-home-menu-section .gm-soft-link {
        font-size: 12.5px !important;
        font-weight: 520 !important;
    }

    .gm-home-menu-section .menu-slides .gm-category-slide a {
        width: 72px !important;
        height: 58px !important;
        min-height: 58px !important;
        gap: 5px !important;
    }

    .gm-home-menu-section .menu-slides .gm-category-slide img {
        height: 26px !important;
        max-width: 42px !important;
    }

    .gm-home-menu-section .menu-slides .gm-category-slide h3 {
        max-width: 70px !important;
        font-size: 10.5px !important;
        line-height: 1.1 !important;
        font-weight: 520 !important;
    }
}

/* Final home menu bar: premium navigation, not category tiles. */
.gm-home-menu-section {
    margin-top: 14px !important;
    margin-bottom: 20px !important;
}

.gm-storefront-content .gm-home-menu-section {
    margin-bottom: 20px !important;
}

.gm-home-menu-bar {
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 18px !important;
}

.gm-home-menu-bar h2 {
    margin: 0 !important;
    color: var(--gm-app-ink) !important;
    font-size: clamp(20px, 1.8vw, 24px) !important;
    line-height: 1.1 !important;
    font-weight: 600 !important;
    text-transform: none !important;
    white-space: nowrap !important;
}

.gm-home-menu-categories {
    min-width: 0 !important;
    overflow: hidden !important;
}

.gm-home-menu-categories .menu-slides,
.gm-menu-experience .menu-swiper .menu-slides {
    padding: 0 !important;
    overflow: visible !important;
}

.gm-home-menu-categories .menu-slides .swiper-wrapper,
.gm-menu-experience .menu-swiper .menu-slides .swiper-wrapper {
    align-items: flex-start !important;
}

.gm-home-menu-categories .gm-category-slide,
.gm-menu-experience .menu-swiper .gm-category-slide {
    width: clamp(122px, 12vw, 142px) !important;
    max-width: clamp(122px, 12vw, 142px) !important;
    flex: 0 0 clamp(122px, 12vw, 142px) !important;
    height: auto !important;
}

.gm-home-menu-categories .menu-slides .gm-category-slide a,
.gm-menu-experience .menu-swiper .menu-slides .gm-category-slide a {
    display: inline-flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 130px !important;
    min-width: 122px !important;
    min-height: 122px !important;
    gap: 9px !important;
    padding: 9px 5px 11px !important;
    border: 0 !important;
    border-radius: 12px !important;
    background: transparent !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    color: var(--gm-app-ink) !important;
    text-align: center !important;
}

.gm-home-menu-categories .menu-slides .gm-category-slide a:hover,
.gm-menu-experience .menu-swiper .menu-slides .gm-category-slide a:hover {
    color: var(--gm-app-brand) !important;
    transform: none !important;
    background: rgba(255, 255, 255, 0.56) !important;
    box-shadow: none !important;
}

.gm-home-menu-categories .menu-slides .gm-category-slide img,
.gm-menu-experience .menu-swiper .menu-slides .gm-category-slide img {
    flex: 0 0 auto !important;
    width: min(100%, 92px) !important;
    height: 66px !important;
    max-width: 92px !important;
    object-fit: contain !important;
    filter: none !important;
}

.gm-home-menu-categories .menu-slides .gm-category-slide h3,
.gm-menu-experience .menu-swiper .menu-slides .gm-category-slide h3 {
    display: -webkit-box !important;
    width: 100% !important;
    max-width: 100% !important;
    color: inherit !important;
    font-size: 15px !important;
    line-height: 1.15 !important;
    font-weight: 590 !important;
    letter-spacing: 0 !important;
    text-align: center !important;
    white-space: normal !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
}

.gm-menu-experience .menu-swiper {
    margin-bottom: 14px !important;
    padding: 0 !important;
}

.gm-menu-experience .menu-swiper .menu-category-active {
    color: var(--gm-app-brand) !important;
    background: rgba(168, 42, 36, 0.07) !important;
}

.gm-menu-experience .menu-swiper .menu-category-active h3 {
    color: var(--gm-app-brand) !important;
}

.gm-menu-experience .menu-swiper .menu-category-active img {
    filter: none !important;
}

.gm-home-menu-bar .gm-soft-link {
    justify-self: end !important;
    padding: 0 !important;
    background: transparent !important;
    color: var(--gm-app-brand) !important;
    font-size: 14px !important;
    line-height: 1 !important;
    font-weight: 520 !important;
    white-space: nowrap !important;
}

@media (max-width: 767px) {
    .gm-home-menu-section,
    .gm-storefront-content .gm-home-menu-section {
        margin-top: 12px !important;
        margin-bottom: 18px !important;
    }

    .gm-home-menu-bar {
        grid-template-columns: minmax(0, 1fr) auto !important;
        gap: 10px 12px !important;
    }

    .gm-home-menu-categories {
        grid-column: 1 / -1 !important;
        grid-row: 2 !important;
    }

    .gm-home-menu-bar h2 {
        grid-column: 1 !important;
        grid-row: 1 !important;
        font-size: 18px !important;
        line-height: 1.15 !important;
    }

    .gm-home-menu-bar .gm-soft-link {
        grid-column: 2 !important;
        grid-row: 1 !important;
        font-size: 12px !important;
        font-weight: 520 !important;
    }

    .gm-home-menu-categories .gm-category-slide,
    .gm-menu-experience .menu-swiper .gm-category-slide {
        width: 104px !important;
        max-width: 104px !important;
        flex-basis: 104px !important;
    }

    .gm-home-menu-categories .menu-slides .gm-category-slide a,
    .gm-menu-experience .menu-swiper .menu-slides .gm-category-slide a {
        min-width: 104px !important;
        height: 112px !important;
        min-height: 112px !important;
        gap: 7px !important;
        padding: 8px 4px 9px !important;
    }

    .gm-home-menu-categories .menu-slides .gm-category-slide img,
    .gm-menu-experience .menu-swiper .menu-slides .gm-category-slide img {
        width: min(100%, 78px) !important;
        height: 56px !important;
        max-width: 78px !important;
    }

    .gm-home-menu-categories .menu-slides .gm-category-slide h3,
    .gm-menu-experience .menu-swiper .menu-slides .gm-category-slide h3 {
        font-size: 13.5px !important;
        line-height: 1.14 !important;
        font-weight: 580 !important;
    }
}

.gm-home-menu-bar {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 0 !important;
}

.gm-home-menu-categories {
    grid-column: 1 !important;
    grid-row: auto !important;
    width: 100% !important;
}

@media (max-width: 767px) {
    .gm-home-menu-categories {
        grid-column: 1 !important;
        grid-row: 1 !important;
    }
}

/* Final offers guard: offers is an app section, not a giant landing hero. */
.gm-offers-page {
    margin-top: 0 !important;
    margin-bottom: 40px !important;
}

.gm-offers-hero {
    display: block !important;
    margin: 0 0 16px !important;
    padding: 14px 0 12px !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(232, 224, 214, 0.86) !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.gm-offers-hero__eyebrow,
.gm-offers-hero p,
.gm-offers-hero__cta {
    display: none !important;
}

.gm-offers-hero__eyebrow {
    margin-bottom: 9px !important;
    color: var(--gm-app-brand) !important;
    font-size: 11px !important;
    line-height: 1.1 !important;
    font-weight: 560 !important;
    letter-spacing: 0.08em !important;
    opacity: 0.9 !important;
}

.gm-offers-hero h1 {
    max-width: 640px !important;
    color: var(--gm-app-ink) !important;
    font-size: clamp(24px, 2.1vw, 30px) !important;
    line-height: 1.15 !important;
    font-weight: 620 !important;
    letter-spacing: 0 !important;
}

.gm-offers-hero p {
    max-width: 560px !important;
    margin-top: 10px !important;
    color: var(--gm-app-muted) !important;
    font-size: 15px !important;
    line-height: 1.45 !important;
    font-weight: 400 !important;
}

.gm-offers-hero__cta {
    min-height: 40px !important;
    padding: 0 16px !important;
    border: 1px solid var(--gm-app-line) !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    color: var(--gm-app-ink) !important;
    font-size: 13px !important;
    font-weight: 560 !important;
    box-shadow: none !important;
}

.gm-offer-grid {
    gap: 14px !important;
}

.gm-offer-grid .gm-offer-card {
    border-radius: 10px !important;
    box-shadow: none !important;
}

@media (max-width: 767px) {
    .gm-offers-page {
        margin-top: 0 !important;
    }

    .gm-offers-hero {
        margin-bottom: 14px !important;
        padding: 12px 0 10px !important;
    }

    .gm-offers-hero__eyebrow {
        margin-bottom: 8px !important;
        font-size: 10px !important;
        letter-spacing: 0.075em !important;
    }

    .gm-offers-hero h1 {
        font-size: 24px !important;
        line-height: 1.12 !important;
        font-weight: 620 !important;
    }

    .gm-offers-hero p {
        max-width: 320px !important;
        margin-top: 9px !important;
        font-size: 13px !important;
        line-height: 1.5 !important;
    }

    .gm-offers-hero__cta {
        width: fit-content !important;
        min-height: 36px !important;
        padding: 0 14px !important;
        font-size: 12px !important;
    }
}

/* Final quantity stepper guard: precise, quiet, aligned storefront controls. */
.gm-storefront-content .indec-group,
.ff-modal:not(.pos-item-choice-modal) .indec-group,
#cart .gm-cart-quantity.indec-group,
.gm-quantity-stepper {
    display: grid !important;
    grid-template-columns: 30px 34px 30px !important;
    align-items: center !important;
    justify-items: center !important;
    gap: 0 !important;
    width: 100px !important;
    min-width: 100px !important;
    height: 34px !important;
    min-height: 34px !important;
    overflow: hidden !important;
    padding: 2px !important;
    border: 1px solid var(--gm-app-line, #e8e0d6) !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    box-shadow: none !important;
}

.gm-storefront-content .indec-group .indec-minus,
.gm-storefront-content .indec-group .indec-plus,
.ff-modal:not(.pos-item-choice-modal) .indec-group .indec-minus,
.ff-modal:not(.pos-item-choice-modal) .indec-group .indec-plus,
#cart .gm-cart-quantity.indec-group .indec-minus,
#cart .gm-cart-quantity.indec-group .indec-plus,
.gm-quantity-stepper > button {
    display: grid !important;
    width: 28px !important;
    min-width: 28px !important;
    height: 28px !important;
    min-height: 28px !important;
    place-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: var(--gm-app-brand-soft, #fbefed) !important;
    color: var(--gm-app-brand, #bd2420) !important;
    -webkit-text-fill-color: var(--gm-app-brand, #bd2420) !important;
    box-shadow: none !important;
    font-size: 17px !important;
    font-weight: 520 !important;
    line-height: 1 !important;
    transform: none !important;
}

.gm-storefront-content .indec-group .indec-minus:hover,
.gm-storefront-content .indec-group .indec-plus:hover,
.ff-modal:not(.pos-item-choice-modal) .indec-group .indec-minus:hover,
.ff-modal:not(.pos-item-choice-modal) .indec-group .indec-plus:hover,
#cart .gm-cart-quantity.indec-group .indec-minus:hover,
#cart .gm-cart-quantity.indec-group .indec-plus:hover,
.gm-quantity-stepper > button:hover {
    background: var(--gm-app-brand, #bd2420) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    transform: none !important;
}

.gm-storefront-content .indec-group .indec-minus :where(i, span),
.gm-storefront-content .indec-group .indec-plus :where(i, span),
.ff-modal:not(.pos-item-choice-modal) .indec-group .indec-minus :where(i, span),
.ff-modal:not(.pos-item-choice-modal) .indec-group .indec-plus :where(i, span),
#cart .gm-cart-quantity.indec-group .indec-minus :where(i, span),
#cart .gm-cart-quantity.indec-group .indec-plus :where(i, span),
.gm-quantity-stepper > button :where(i, span) {
    display: block !important;
    color: currentColor !important;
    -webkit-text-fill-color: currentColor !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    line-height: 1 !important;
    transform: translateY(-0.5px) !important;
}

.gm-storefront-content .indec-group .indec-value,
.ff-modal:not(.pos-item-choice-modal) .indec-group .indec-value,
#cart .gm-cart-quantity.indec-group .indec-value,
.gm-quantity-stepper > :not(button) {
    display: grid !important;
    width: 34px !important;
    min-width: 34px !important;
    height: 30px !important;
    min-height: 30px !important;
    place-items: center !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: var(--gm-app-ink, #24201c) !important;
    box-shadow: none !important;
    font-size: 15px !important;
    font-weight: 560 !important;
    line-height: 30px !important;
    text-align: center !important;
}

/* Final category rail rhythm guard. */
.gm-storefront-shell .gm-storefront-content .gm-menu-experience .gm-menu-hero {
    margin-bottom: 16px !important;
}

.gm-storefront-shell .gm-storefront-content .gm-menu-experience .menu-swiper,
.gm-storefront-shell .gm-storefront-content .gm-menu-experience .menu-swiper.mb-8 {
    margin-bottom: 16px !important;
}

.gm-storefront-shell .gm-storefront-content .gm-menu-experience .gm-menu-toolbar {
    margin-top: 0 !important;
}

/* Final storefront search focus guard: one capsule ring, no inner input rectangle. */
.gm-storefront-shell .storefront-search-shell.header-search-group {
    overflow: visible !important;
}

.gm-storefront-shell .storefront-search-shell.header-search-group:focus-within {
    border-color: rgba(189, 36, 32, 0.34) !important;
    background: #ffffff !important;
    box-shadow: 0 0 0 4px rgba(189, 36, 32, 0.1) !important;
    transform: none !important;
}

.gm-storefront-shell .storefront-search-shell.header-search-group :where(input, button):focus,
.gm-storefront-shell .storefront-search-shell.header-search-group :where(input, button):focus-visible {
    outline: 0 !important;
    box-shadow: none !important;
}

.gm-storefront-shell .storefront-search-shell.header-search-group .header-search-field {
    border: 0 !important;
    box-shadow: none !important;
}

/* Final desktop header alignment guard. */
@media (min-width: 1024px) {
    .gm-premium-header .storefront-header-actions {
        width: auto !important;
        min-width: max-content !important;
        height: auto !important;
        flex: 0 0 auto !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: flex-end !important;
        gap: 10px !important;
        margin-left: auto !important;
        margin-top: 0 !important;
    }

    .gm-premium-header .storefront-brand-wrap {
        width: fit-content !important;
        flex: 0 0 auto !important;
    }

    .gm-premium-header .storefront-brand-link,
    .gm-premium-header .storefront-brand-logo {
        flex-shrink: 0 !important;
    }

    .gm-premium-header .storefront-action-row {
        order: 2 !important;
        width: auto !important;
        min-width: max-content !important;
        flex: 0 0 auto !important;
        align-items: center !important;
        gap: 10px !important;
    }

    .gm-premium-header .storefront-language-corner {
        position: relative !important;
        top: auto !important;
        right: auto !important;
        order: 0 !important;
        align-items: center !important;
        height: 44px !important;
    }

    .gm-premium-header .storefront-language-corner .dropdown-btn {
        height: 44px !important;
        min-height: 44px !important;
        min-width: 72px !important;
        padding: 0 14px !important;
    }

    .gm-premium-header .webcart,
    .gm-premium-header .dropdown-group > .dropdown-btn,
    .gm-premium-header a.bg-primary,
    .gm-premium-header span.bg-primary {
        height: 44px !important;
        min-height: 44px !important;
        padding-inline: 18px !important;
    }

    .gm-premium-header .storefront-search-shell.header-search-group {
        --gm-header-search-expanded: 168px;
        width: 52px !important;
        min-width: 52px !important;
        max-width: 52px !important;
        flex: 0 0 52px !important;
        height: 44px !important;
        justify-content: center !important;
        gap: 0 !important;
        overflow: hidden !important;
        padding: 0 !important;
        background: #ffffff !important;
        transition: width 220ms ease, max-width 220ms ease, background 160ms ease, border-color 160ms ease, box-shadow 160ms ease !important;
    }

    .gm-premium-header .storefront-search-shell.header-search-group:hover,
    .gm-premium-header .storefront-search-shell.header-search-group:focus-within {
        width: var(--gm-header-search-expanded) !important;
        max-width: var(--gm-header-search-expanded) !important;
        flex-basis: var(--gm-header-search-expanded) !important;
        justify-content: flex-start !important;
        gap: 8px !important;
        padding: 0 14px !important;
    }

    @media (min-width: 1200px) {
        .gm-premium-header .storefront-search-shell.header-search-group {
            --gm-header-search-expanded: 260px;
        }
    }

    @media (min-width: 1280px) {
        .gm-premium-header .storefront-search-shell.header-search-group {
            --gm-header-search-expanded: 340px;
        }
    }

    .gm-premium-header .storefront-search-shell .header-search-submit {
        width: 42px !important;
        height: 42px !important;
        flex: 0 0 42px !important;
    }

    .gm-premium-header .storefront-search-shell .header-search-field {
        width: 0 !important;
        min-width: 0 !important;
        flex: 0 0 0 !important;
        opacity: 0 !important;
        pointer-events: none !important;
        transition: opacity 160ms ease !important;
    }

    .gm-premium-header .storefront-search-shell:hover .header-search-field,
    .gm-premium-header .storefront-search-shell:focus-within .header-search-field {
        width: auto !important;
        flex: 1 1 auto !important;
        opacity: 1 !important;
        pointer-events: auto !important;
    }

    .gm-premium-header .storefront-account-trigger,
    .gm-premium-header .dropdown-group > .storefront-account-trigger.dropdown-btn {
        min-width: 78px !important;
        height: 44px !important;
        min-height: 44px !important;
        gap: 10px !important;
        border: 1px solid rgba(23, 18, 15, 0.08) !important;
        border-radius: 999px !important;
        background: #ffffff !important;
        color: var(--gm-app-ink, #24201c) !important;
        box-shadow: none !important;
        padding: 0 15px !important;
    }

    .gm-premium-header .storefront-account-trigger:hover,
    .gm-premium-header .dropdown-group > .storefront-account-trigger.dropdown-btn:hover {
        border-color: rgba(189, 36, 32, 0.24) !important;
        background: #fffaf6 !important;
    }

    .gm-premium-header .storefront-cart-trigger.webcart {
        min-width: 118px !important;
        height: 44px !important;
        min-height: 44px !important;
        gap: 10px !important;
        border: 1px solid rgba(23, 18, 15, 0.08) !important;
        border-radius: 999px !important;
        background: #ffffff !important;
        color: var(--gm-app-ink, #24201c) !important;
        box-shadow: none !important;
        padding: 0 16px !important;
    }

    .gm-premium-header .storefront-cart-trigger.webcart:hover {
        border-color: rgba(189, 36, 32, 0.24) !important;
        background: #fffaf6 !important;
        transform: none !important;
    }

    .gm-premium-header .storefront-cart-trigger.webcart > i {
        color: currentColor !important;
        font-size: 18px !important;
    }

    .gm-premium-header .storefront-account-trigger > i {
        color: currentColor !important;
        font-size: 20px !important;
    }

    .storefront-account-dots {
        display: inline-grid !important;
        grid-template-columns: repeat(3, 4px) !important;
        gap: 4px !important;
        align-items: center !important;
    }

    .storefront-account-dots span {
        width: 4px !important;
        height: 4px !important;
        border-radius: 999px !important;
        background: currentColor !important;
    }
}

/* Final storefront mobile header rhythm guard. */
@media (max-width: 1023px) {
    .gm-storefront-shell .gm-premium-header,
    .gm-storefront-shell .gm-premium-header.ff-header {
        border-bottom: 0 !important;
        box-shadow: none !important;
        padding-bottom: 0 !important;
    }
}

@media (max-width: 767px) {
    .gm-storefront-shell .gm-premium-header .storefront-header-container,
    .gm-storefront-shell .gm-premium-header.ff-header .storefront-header-container {
        min-height: 0 !important;
        padding-bottom: 0 !important;
    }

    .gm-storefront-shell .storefront-header-actions {
        margin-top: 8px !important;
    }

    .gm-storefront-shell .storefront-search-shell.header-search-group {
        height: 44px !important;
        margin-bottom: 0 !important;
    }

    .gm-storefront-shell .gm-storefront-content > :first-child {
        margin-top: 0 !important;
    }

    .gm-storefront-shell .gm-storefront-content > section.mb-16.mt-8:first-child,
    .gm-storefront-shell .gm-storefront-content > section.gm-menu-experience:first-child,
    .gm-storefront-shell .gm-storefront-content > section.gm-search-experience:first-child {
        margin-top: 0 !important;
    }
}

/* Final checkout payment and promo summary guard. */
.gm-checkout-summary-section {
    display: grid !important;
    gap: 10px !important;
}

.gm-checkout-summary-section > h3 {
    margin: 0 !important;
    color: var(--gm-app-ink, #171717) !important;
    font-size: 15px !important;
    font-weight: 680 !important;
    line-height: 1.2 !important;
}

.gm-checkout-promo-form {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 46px !important;
    min-height: 52px !important;
    overflow: hidden !important;
    border: 1px solid var(--gm-app-line, #e8e4dd) !important;
    border-radius: 8px !important;
    background: #ffffff !important;
}

.gm-checkout-promo-form:focus-within {
    border-color: rgba(189, 36, 32, 0.34) !important;
    box-shadow: 0 0 0 4px rgba(189, 36, 32, 0.08) !important;
}

.gm-checkout-promo-form.is-invalid {
    border-color: rgba(198, 40, 40, 0.42) !important;
}

.gm-checkout-promo-form input {
    min-width: 0 !important;
    width: 100% !important;
    height: 100% !important;
    padding: 0 16px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: var(--gm-app-ink, #171717) !important;
    font-size: 14px !important;
    font-weight: 520 !important;
    outline: 0 !important;
}

.gm-checkout-promo-form input::placeholder {
    color: #8c877f !important;
}

.gm-checkout-promo-form button {
    display: grid !important;
    place-items: center !important;
    width: 46px !important;
    height: 100% !important;
    color: #77726a !important;
    background: transparent !important;
    font-size: 18px !important;
}

.gm-checkout-promo-form button:not(:disabled):hover {
    color: var(--gm-app-brand, #c52922) !important;
}

.gm-checkout-promo-form button:disabled {
    cursor: not-allowed !important;
    opacity: 0.42 !important;
}

.gm-checkout-promo-error {
    color: var(--gm-danger, #c62828) !important;
    font-size: 12px !important;
    font-weight: 560 !important;
    line-height: 1.35 !important;
}

.gm-checkout-promo-catalog {
    width: fit-content !important;
    color: var(--gm-app-brand, #c52922) !important;
    background: transparent !important;
    font-size: 12px !important;
    font-weight: 650 !important;
    line-height: 1.3 !important;
}

.gm-checkout-payment-list {
    display: grid !important;
    gap: 0 !important;
    padding: 10px !important;
    border: 1px solid var(--gm-app-line, #e8e4dd) !important;
    border-radius: 8px !important;
    background: #fffdf8 !important;
}

.gm-checkout-payment-option {
    position: relative !important;
    display: grid !important;
    grid-template-columns: 28px 32px minmax(0, 1fr) !important;
    min-height: 50px !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 6px 8px !important;
    border-radius: 8px !important;
    color: var(--gm-app-ink, #171717) !important;
    cursor: pointer !important;
    transition: background 160ms ease, opacity 160ms ease !important;
}

.gm-checkout-payment-option:hover,
.gm-checkout-payment-option.active,
.gm-storefront-content .gm-checkout-payment-option.active,
.gm-storefront-content .gm-checkout-payment-option:has(input[type="radio"]:checked) {
    background: #fff6f2 !important;
    background-color: #fff6f2 !important;
}

.gm-checkout-payment-option.is-disabled {
    cursor: not-allowed !important;
    opacity: 0.42 !important;
}

.gm-checkout-payment-option input {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0 0 0 0) !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

.gm-checkout-payment-radio {
    display: grid !important;
    width: 22px !important;
    height: 22px !important;
    place-items: center !important;
    border: 2px solid #d8cec3 !important;
    border-radius: 999px !important;
}

.gm-checkout-payment-option.active .gm-checkout-payment-radio {
    border-color: var(--gm-app-brand, #c52922) !important;
}

.gm-checkout-payment-option.active .gm-checkout-payment-radio::after {
    content: "" !important;
    display: block !important;
    width: 10px !important;
    height: 10px !important;
    border-radius: 999px !important;
    background: var(--gm-app-brand, #c52922) !important;
}

.gm-checkout-payment-icon,
.gm-checkout-payment-sbp-mark {
    display: grid !important;
    width: 32px !important;
    height: 32px !important;
    place-items: center !important;
    font-size: 23px !important;
}

.gm-checkout-payment-icon--cash {
    color: var(--gm-app-brand, #c52922) !important;
}

.gm-checkout-payment-icon--card {
    color: #77726a !important;
}

.gm-checkout-payment-sbp-mark {
    overflow: visible !important;
}

.gm-checkout-payment-sbp-mark svg {
    display: block !important;
    width: 24px !important;
    height: 30px !important;
}

.gm-checkout-payment-option > span:last-child {
    min-width: 0 !important;
    color: var(--gm-app-ink, #171717) !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    line-height: 1.24 !important;
}

@media (max-width: 767px) {
    .gm-checkout-summary-section > h3 {
        font-size: 17px !important;
    }

    .gm-checkout-promo-form {
        min-height: 54px !important;
    }

    .gm-checkout-payment-list {
        padding: 12px !important;
    }

    .gm-checkout-payment-option {
        min-height: 52px !important;
    }
}

/* Final checkout mobile bottom rhythm guard. */
@media (max-width: 767px) {
    .gm-storefront-shell:has(.gm-checkout-page) {
        padding-bottom: calc(50px + env(safe-area-inset-bottom)) !important;
    }

    .gm-storefront-shell:has(.gm-checkout-page) .gm-storefront-content {
        min-height: auto !important;
        padding-bottom: 0 !important;
    }

    .gm-storefront-shell:has(.gm-checkout-page) .gm-checkout-page {
        padding-bottom: 0 !important;
    }

    .gm-storefront-shell:has(.gm-checkout-page) .gm-checkout-summary-actions {
        position: static !important;
        margin: 4px 0 0 !important;
        padding-top: 0 !important;
        background: transparent !important;
    }

    .gm-mobile-cart-icon.lab,
    .gm-mobile-cart-tab .lab-online-orders {
        display: inline-grid !important;
        width: 20px !important;
        height: 20px !important;
        place-items: center !important;
        font-family: "Lab" !important;
        font-size: 20px !important;
        font-style: normal !important;
        line-height: 1 !important;
    }

    .gm-storefront-cart-footer {
        padding: 12px 32px 16px !important;
    }

    #cart > div.gm-storefront-cart-panel,
    .gm-storefront-cart-panel {
        padding-bottom: calc(52px + env(safe-area-inset-bottom)) !important;
    }
}

/* Account summary edit profile links: keep the existing visual design intact. */
.storefront-account-avatar-link,
.storefront-account-summary-text {
    color: inherit !important;
    text-decoration: none !important;
}

/* Mobile menu screen header. */
.gm-menu-mobile-header {
    display: none;
}

@media (max-width: 767px) {
    .gm-menu-experience {
        margin-top: 0 !important;
    }

    .gm-menu-mobile-header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 16px;
        margin: 2px 0 14px;
        padding: 4px 0;
    }

    .gm-menu-mobile-header span {
        display: block;
        margin-bottom: 3px;
        color: var(--gm-app-muted, #6d6861);
        font-size: 12px;
        font-weight: 700;
        line-height: 1.2;
    }

    .gm-menu-mobile-header h1 {
        margin: 0;
        color: var(--gm-app-ink, #171412);
        font-size: 26px !important;
        font-weight: 760 !important;
        line-height: 1.05 !important;
        letter-spacing: 0 !important;
    }

    .gm-menu-mobile-header p {
        margin: 4px 0 0;
        color: var(--gm-app-muted, #6d6861);
        font-size: 13px;
        font-weight: 650;
        line-height: 1.25;
    }

    .gm-menu-mobile-header a {
        display: inline-flex;
        width: 46px;
        height: 46px;
        flex: 0 0 46px;
        align-items: center;
        justify-content: center;
        border: 1px solid rgba(23, 18, 15, 0.08);
        border-radius: 999px;
        background: #ffffff;
        color: var(--gm-app-ink, #171412);
    }

    .gm-menu-mobile-header a i {
        font-size: 22px;
    }

    .gm-menu-experience .gm-menu-hero {
        display: none !important;
    }
}

/* Override: round black add-to-cart button */
.product-card-grid-cart-btn {
    min-width: 34px !important;
    width: 34px !important;
    height: 34px !important;
    border-radius: 50% !important;
    background: #000 !important;
    border: none !important;
    box-shadow: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
}
.product-card-grid-cart-btn i {
    color: #fff !important;
}
.product-card-grid-cart-btn:hover {
    background: #333 !important;
    color: #fff !important;
    transform: none !important;
}
